Codesign-Oriented Platform for Agile
Internet of Things Prototype
Development
Jonathan Ruiz-de-Garibay, Aitor Almeida, Szilárd A. Kados,
Adolfo García-Corcuera and Diego López-de-Ipiña
Extending Seamlessly to the Internet of Things 2014
Table of Contents
 Introduction
 Architecture Proposal
 Use Case: THOFU Project
 Future Work
 Conclusions
Extending Seamlessly to the Internet of Things 2014
Introduction
 IoT includes different paradigms:
 Wireless Sensor Networks
 Communication technologies
 Energy efficiency
 Tracking technologies
 Indoor location
 Several actuators
With the increasing complexity of the system designs
and the added pressure to reduce the time-to-market,
it is essential to be able to quickly and efficiently create
the first functional prototypes of their products
Extending Seamlessly to the Internet of Things 2014
Introduction
 Embedded systems require more than a simple
software development process.
 They are products “consisting of mechanics, electric and
electronics, and software”.
 Typical embedded system development cycles:
 Hardware and software have separated design
processes
 Implemented independently, integrated afterwards
Hardware and software codesign reduces the costs
and maximizes profits but developers need
methodologies and tools to help them during the process
Extending Seamlessly to the Internet of Things 2014
Introduction
 Agile IoT development:
 Work with a higher-level of abstraction, both at
hardware and software, describing functional components
and their interactions.
 Components have to be composed by hardware and software.
 Create a set of tools, hardware architectures,
methodologies, code generators an so on, for defining
the system functionality independently of the
implementation.
 Apply the Model Driven Engineering approach.
Extending Seamlessly to the Internet of Things 2014
Introduction
 In our experience, an IoT device is a type of embedded
system with some defining characteristics:
 Identification. The real world objects are represented in the
computational space, using identification systems like RFID.
 User interaction. Devices are not simple embedded systems
that capture sensor information. There is an important user-
interaction component.
 Communication. These gadgets have to consume Internet
services. Communication capabilities, through 6LowPAN or
WiFi, are one of the IoT defining characteristics.
 Specialized platform. The diversity of hardware components
(microcontrollers, RFID readers, communication transceivers,
etc.) results in a wide variety of devices.
Extending Seamlessly to the Internet of Things 2014
Proposed architecture
 Main characteristics:
 Modular architecture.
 Self-contained functional components that favour reusability.
 Standard and open interface.
 Modular interfaces and open protocols for an easier integration
of existing components .
 Scalable architecture.
 Scale horizontally to be able to add more peripherals.
 Scale vertically to be able to increment the application
controller functionality.
 Flexible communication system.
 Focus should be the functionality, not the details of
communication.
Extending Seamlessly to the Internet of Things 2014
Architecture Proposal
 Architecture is divided in two levels:
 Infrastructure level. Makes easier the access to a large
collection of peripherals.
 Domain or specific application level. It allows complete freedom
to the developer with complete access to the peripherals in the
infrastructure level.
Controller
Slave 1 Slave 2 Slave n
Transceiver
Controller
IO device 1 IO device 2 IO device n
I2C bus
…
…
ApplicationInfrastructure
UART (1) I2C (2)
Peripherals
Extending Seamlessly to the Internet of Things 2014
Standard Interfaces: UART interface (1)
 Included in most microcontrollers.
 Takes bytes of data and transmits the payload
sequentially between a start bit and one to three
ending bits: parity bit (optional) and one or two stop
bits (configurable).
 Three different modes:
 Simplex mode. Monodirectional.
 Half-duplex mode. Devices take turns transmitting and
receiving through a unique wire.
 Full-duplex mode. Both devices can send and receive at
the same time through different wires.
Extending Seamlessly to the Internet of Things 2014
Standard Interfaces: UART interface (1)
 In the propossed architecture:
 Full-duplex asynchronous mode with two lines:
transmission (TX) and reception (RX).
 8 bit data and 9600 baud.
 We have defined our own protocol based on the AT
command set, commonly known as AT commands.
Extending Seamlessly to the Internet of Things 2014
Standard Interfaces: I2C bus (2)
 Is used for communications between integrated
circuits, especially for slow communications with
on-board peripherals.
 Uses only two wires (SDL for clock and SDA for
data) to connect all the peripherals with a serial half-
duplex protocol based on a master-slave model.
 Each slave has a unique direction.
µC
Master
µC
Slave
µC
Slave
µC
Slave
VDD
SDA
SDL
Rp
Extending Seamlessly to the Internet of Things 2014
Infrastructure Level: Controller
 The infrastructure controller can be a very simple
controller.
 Main functions:
 Initializing the I2C bus and their devices (if necessary).
 Establish and support the connection through the
transceiver.
 The firmware of this microcontroller can be updated to
add secondary functions such as power controlling.
 I2C has a multi-master configuration and both
controllers can use it.
 By default, the infrastructure controller only uses it for
initializing tasks but it is possible for extra functionalities to
interact with any of the peripherals.
Extending Seamlessly to the Internet of Things 2014
Infrastructure Level: Transceiver
 Our architecture supports any kind of wired or
wireless communication.
 The specific protocol must be known only by the
infrastructural microcontroller.
 The transparent access to the transceiver by the
application developer is one of the main goals of our
architecture.
 The developer only has to interact with a standard AT
commands protocol.
 The microcontroller is responsible for establishing
the connection and for resubmitting the messages
from the application to the controller and vice versa.
Extending Seamlessly to the Internet of Things 2014
Infrastructure Level: I2C Peripheals
 We offer several I2C peripherals to ease the
prototype development.
 Three possible models:
 A component that implements I2C protocol.
 It can be included directly in the platform.
 A component that does not implement I2C protocol.
 E.g. a I2C to specific protocol adapter.
 Multiple component that does not implement I2C protocol.
 E.g. a firmware that controls all component and implements an
I2C adapter.
Extending Seamlessly to the Internet of Things 2014
Application Level
 The developer sees
 the infrastructure controller like a typical transceiver
 and I2C peripherals are like any other I2C device.
 Main advantages:
 The developer can use any microcontroller because the
architecture only uses standard interfaces and a
defined UART protocol.
 The developer can include other device directly
connected to application controller or he can create a new
I2C peripheral that includes an I2C transceiver.
Extending Seamlessly to the Internet of Things 2014
Use Case: THOFU Project
 The proposed architecture has been used in the
THOFU (Technologies for the HOtel of the FUture)
project.
 The proposed agile prototyping architecture has been
used to develop Internet-capable games for the children
staying in the hotels.
 This architecture has been used to create a common
base that is used by several games and provides several
hardware capabilities (WiFi, RFID, sound, buttons, a
display…) and two board game prototypes
Extending Seamlessly to the Internet of Things 2014
Use Case: THOFU Project
 Specific architecture for THOFU Project.
 Infrastructure level includes power management, some
status light, a WiFi transceiver and three I2C peripherals.
 Application level are composed by interchanged games.
Controller
RFID Reader Screen +
Buttons
Audio Player
WiFi Transceiver
Game
I2C bus
UART I2C
Status Lights
Battery
Monitor
BATTERY
IO
AD
UART
Extending Seamlessly to the Internet of Things 2014
Use Case: THOFU Project
 Infrastructure controller
 initializes I2C bus,
 manages WiFi transceiver and messages between games
and the remote server,
 establishes and controls the power system,
 and use 3 lights to show its state.
Schematic, Board and Firmware in
https://github.com/joruiz/wireless-basedgames
Extending Seamlessly to the Internet of Things 2014
I2C peripherals: RFID Reader
 Based on SM125-IC by SonMicro;
 it implements I2C protocol by itself.
Arduino Library in https://github.com/joruiz/SM125
Schematic and Board in https://github.com/joruiz/ap2-rfidreader
Extending Seamlessly to the Internet of Things 2014
I2C peripherals: Sound Player
 Based on SOMO-14D by 4D Systems;
 This component does not implement I2C capabilities so;
includes an I2C to specific protocol adapter.
Schematic, Board, Firmware and Arduino Library
in https://github.com/joruiz/ap2-soundplayer
Extending Seamlessly to the Internet of Things 2014
I2C peripherals: Display + Buttons
 Based on one µOLED display, by 4D Systems, and
five buttons.
 Any device implements I2C protocol;
 A microcontroller manages all devices and implements
the I2C protocol.
Schematic, Board, Firmware and Arduino Library
in https://github.com/joruiz/ap2-graphicdisplay
Extending Seamlessly to the Internet of Things 2014
Use Case: THOFU Project
 The base of the prototype includes all the
infrastructure level.
RFID reader
Controller and
WiFi transceiver
Sound Player
Display + Buttons
I2C bus + power
Connector to Games
Power + I2C bus + UART
Extending Seamlessly to the Internet of Things 2014
TicTacToe
 This game is composed by nine individual squares
and a main PCB with the microcontroller.
 The game board can access the peripherals of the base
board (the RFID reader, the display and the WiFi
transceiver) using the I2C interface.
Extending Seamlessly to the Internet of Things 2014
Final prototype with Tic Tac Toe
Schematic, Board and Firmware in
https://github.com/aitoralmeida/wireless-tictactoe
Extending Seamlessly to the Internet of Things 2014
Future Work
 We have developed others games:
 The game of the goose.
 An educational game for children.
 The platform will be available to several last year
students in the engineering program
 One of the students will integrate a Microchip
microcontroller in the architecture.
Extending Seamlessly to the Internet of Things 2014
Conclusions
 Main advantages of the architecture presented:
 Use standard and open interfaces.
 Modular.
 Scalable.
 Flexible and easy communication system.
 The work presented is the first stage for creation of
methodologies and tools to help developers to create
prototypes quickly.
Tecnología Electrónica
Thank you!!!
Questions?
Jonathan Ruiz-de-Garibay
<jonathan.garibay@deusto.es>
This presentation is subject to license Creative Commons
Recognition whereby copying, distribution, public
communication and the creation of derivative works without
restriction is permitted provided the author is acknowledged
and the license notice is maintained.
© 2014, Jonathan Ruiz de Garibay
Some rights reserved

Codesign-Oriented Platform for Agile Internet of Things Prototype Development

  • 1.
    Codesign-Oriented Platform forAgile Internet of Things Prototype Development Jonathan Ruiz-de-Garibay, Aitor Almeida, Szilárd A. Kados, Adolfo García-Corcuera and Diego López-de-Ipiña
  • 2.
    Extending Seamlessly tothe Internet of Things 2014 Table of Contents  Introduction  Architecture Proposal  Use Case: THOFU Project  Future Work  Conclusions
  • 3.
    Extending Seamlessly tothe Internet of Things 2014 Introduction  IoT includes different paradigms:  Wireless Sensor Networks  Communication technologies  Energy efficiency  Tracking technologies  Indoor location  Several actuators With the increasing complexity of the system designs and the added pressure to reduce the time-to-market, it is essential to be able to quickly and efficiently create the first functional prototypes of their products
  • 4.
    Extending Seamlessly tothe Internet of Things 2014 Introduction  Embedded systems require more than a simple software development process.  They are products “consisting of mechanics, electric and electronics, and software”.  Typical embedded system development cycles:  Hardware and software have separated design processes  Implemented independently, integrated afterwards Hardware and software codesign reduces the costs and maximizes profits but developers need methodologies and tools to help them during the process
  • 5.
    Extending Seamlessly tothe Internet of Things 2014 Introduction  Agile IoT development:  Work with a higher-level of abstraction, both at hardware and software, describing functional components and their interactions.  Components have to be composed by hardware and software.  Create a set of tools, hardware architectures, methodologies, code generators an so on, for defining the system functionality independently of the implementation.  Apply the Model Driven Engineering approach.
  • 6.
    Extending Seamlessly tothe Internet of Things 2014 Introduction  In our experience, an IoT device is a type of embedded system with some defining characteristics:  Identification. The real world objects are represented in the computational space, using identification systems like RFID.  User interaction. Devices are not simple embedded systems that capture sensor information. There is an important user- interaction component.  Communication. These gadgets have to consume Internet services. Communication capabilities, through 6LowPAN or WiFi, are one of the IoT defining characteristics.  Specialized platform. The diversity of hardware components (microcontrollers, RFID readers, communication transceivers, etc.) results in a wide variety of devices.
  • 7.
    Extending Seamlessly tothe Internet of Things 2014 Proposed architecture  Main characteristics:  Modular architecture.  Self-contained functional components that favour reusability.  Standard and open interface.  Modular interfaces and open protocols for an easier integration of existing components .  Scalable architecture.  Scale horizontally to be able to add more peripherals.  Scale vertically to be able to increment the application controller functionality.  Flexible communication system.  Focus should be the functionality, not the details of communication.
  • 8.
    Extending Seamlessly tothe Internet of Things 2014 Architecture Proposal  Architecture is divided in two levels:  Infrastructure level. Makes easier the access to a large collection of peripherals.  Domain or specific application level. It allows complete freedom to the developer with complete access to the peripherals in the infrastructure level. Controller Slave 1 Slave 2 Slave n Transceiver Controller IO device 1 IO device 2 IO device n I2C bus … … ApplicationInfrastructure UART (1) I2C (2) Peripherals
  • 9.
    Extending Seamlessly tothe Internet of Things 2014 Standard Interfaces: UART interface (1)  Included in most microcontrollers.  Takes bytes of data and transmits the payload sequentially between a start bit and one to three ending bits: parity bit (optional) and one or two stop bits (configurable).  Three different modes:  Simplex mode. Monodirectional.  Half-duplex mode. Devices take turns transmitting and receiving through a unique wire.  Full-duplex mode. Both devices can send and receive at the same time through different wires.
  • 10.
    Extending Seamlessly tothe Internet of Things 2014 Standard Interfaces: UART interface (1)  In the propossed architecture:  Full-duplex asynchronous mode with two lines: transmission (TX) and reception (RX).  8 bit data and 9600 baud.  We have defined our own protocol based on the AT command set, commonly known as AT commands.
  • 11.
    Extending Seamlessly tothe Internet of Things 2014 Standard Interfaces: I2C bus (2)  Is used for communications between integrated circuits, especially for slow communications with on-board peripherals.  Uses only two wires (SDL for clock and SDA for data) to connect all the peripherals with a serial half- duplex protocol based on a master-slave model.  Each slave has a unique direction. µC Master µC Slave µC Slave µC Slave VDD SDA SDL Rp
  • 12.
    Extending Seamlessly tothe Internet of Things 2014 Infrastructure Level: Controller  The infrastructure controller can be a very simple controller.  Main functions:  Initializing the I2C bus and their devices (if necessary).  Establish and support the connection through the transceiver.  The firmware of this microcontroller can be updated to add secondary functions such as power controlling.  I2C has a multi-master configuration and both controllers can use it.  By default, the infrastructure controller only uses it for initializing tasks but it is possible for extra functionalities to interact with any of the peripherals.
  • 13.
    Extending Seamlessly tothe Internet of Things 2014 Infrastructure Level: Transceiver  Our architecture supports any kind of wired or wireless communication.  The specific protocol must be known only by the infrastructural microcontroller.  The transparent access to the transceiver by the application developer is one of the main goals of our architecture.  The developer only has to interact with a standard AT commands protocol.  The microcontroller is responsible for establishing the connection and for resubmitting the messages from the application to the controller and vice versa.
  • 14.
    Extending Seamlessly tothe Internet of Things 2014 Infrastructure Level: I2C Peripheals  We offer several I2C peripherals to ease the prototype development.  Three possible models:  A component that implements I2C protocol.  It can be included directly in the platform.  A component that does not implement I2C protocol.  E.g. a I2C to specific protocol adapter.  Multiple component that does not implement I2C protocol.  E.g. a firmware that controls all component and implements an I2C adapter.
  • 15.
    Extending Seamlessly tothe Internet of Things 2014 Application Level  The developer sees  the infrastructure controller like a typical transceiver  and I2C peripherals are like any other I2C device.  Main advantages:  The developer can use any microcontroller because the architecture only uses standard interfaces and a defined UART protocol.  The developer can include other device directly connected to application controller or he can create a new I2C peripheral that includes an I2C transceiver.
  • 16.
    Extending Seamlessly tothe Internet of Things 2014 Use Case: THOFU Project  The proposed architecture has been used in the THOFU (Technologies for the HOtel of the FUture) project.  The proposed agile prototyping architecture has been used to develop Internet-capable games for the children staying in the hotels.  This architecture has been used to create a common base that is used by several games and provides several hardware capabilities (WiFi, RFID, sound, buttons, a display…) and two board game prototypes
  • 17.
    Extending Seamlessly tothe Internet of Things 2014 Use Case: THOFU Project  Specific architecture for THOFU Project.  Infrastructure level includes power management, some status light, a WiFi transceiver and three I2C peripherals.  Application level are composed by interchanged games. Controller RFID Reader Screen + Buttons Audio Player WiFi Transceiver Game I2C bus UART I2C Status Lights Battery Monitor BATTERY IO AD UART
  • 18.
    Extending Seamlessly tothe Internet of Things 2014 Use Case: THOFU Project  Infrastructure controller  initializes I2C bus,  manages WiFi transceiver and messages between games and the remote server,  establishes and controls the power system,  and use 3 lights to show its state. Schematic, Board and Firmware in https://github.com/joruiz/wireless-basedgames
  • 19.
    Extending Seamlessly tothe Internet of Things 2014 I2C peripherals: RFID Reader  Based on SM125-IC by SonMicro;  it implements I2C protocol by itself. Arduino Library in https://github.com/joruiz/SM125 Schematic and Board in https://github.com/joruiz/ap2-rfidreader
  • 20.
    Extending Seamlessly tothe Internet of Things 2014 I2C peripherals: Sound Player  Based on SOMO-14D by 4D Systems;  This component does not implement I2C capabilities so; includes an I2C to specific protocol adapter. Schematic, Board, Firmware and Arduino Library in https://github.com/joruiz/ap2-soundplayer
  • 21.
    Extending Seamlessly tothe Internet of Things 2014 I2C peripherals: Display + Buttons  Based on one µOLED display, by 4D Systems, and five buttons.  Any device implements I2C protocol;  A microcontroller manages all devices and implements the I2C protocol. Schematic, Board, Firmware and Arduino Library in https://github.com/joruiz/ap2-graphicdisplay
  • 22.
    Extending Seamlessly tothe Internet of Things 2014 Use Case: THOFU Project  The base of the prototype includes all the infrastructure level. RFID reader Controller and WiFi transceiver Sound Player Display + Buttons I2C bus + power Connector to Games Power + I2C bus + UART
  • 23.
    Extending Seamlessly tothe Internet of Things 2014 TicTacToe  This game is composed by nine individual squares and a main PCB with the microcontroller.  The game board can access the peripherals of the base board (the RFID reader, the display and the WiFi transceiver) using the I2C interface.
  • 24.
    Extending Seamlessly tothe Internet of Things 2014 Final prototype with Tic Tac Toe Schematic, Board and Firmware in https://github.com/aitoralmeida/wireless-tictactoe
  • 25.
    Extending Seamlessly tothe Internet of Things 2014 Future Work  We have developed others games:  The game of the goose.  An educational game for children.  The platform will be available to several last year students in the engineering program  One of the students will integrate a Microchip microcontroller in the architecture.
  • 26.
    Extending Seamlessly tothe Internet of Things 2014 Conclusions  Main advantages of the architecture presented:  Use standard and open interfaces.  Modular.  Scalable.  Flexible and easy communication system.  The work presented is the first stage for creation of methodologies and tools to help developers to create prototypes quickly.
  • 27.
    Tecnología Electrónica Thank you!!! Questions? JonathanRuiz-de-Garibay <jonathan.garibay@deusto.es>
  • 28.
    This presentation issubject to license Creative Commons Recognition whereby copying, distribution, public communication and the creation of derivative works without restriction is permitted provided the author is acknowledged and the license notice is maintained. © 2014, Jonathan Ruiz de Garibay Some rights reserved