SlideShare a Scribd company logo
1 of 28
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

More Related Content

What's hot

Embedded system programming using Arduino microcontroller
Embedded system programming using Arduino microcontrollerEmbedded system programming using Arduino microcontroller
Embedded system programming using Arduino microcontrollerArun Kumar
 
Introduction to Arduino Hardware and Programming
Introduction to Arduino Hardware and ProgrammingIntroduction to Arduino Hardware and Programming
Introduction to Arduino Hardware and ProgrammingEmmanuel Obot
 
Microcontroller
MicrocontrollerMicrocontroller
MicrocontrollerSpitiq
 
project report on embedded system
project report on embedded systemproject report on embedded system
project report on embedded systemram avtar
 
Introduction to arduino!
Introduction to arduino!Introduction to arduino!
Introduction to arduino!Makers of India
 
microcontroller and embedded system
microcontroller and embedded systemmicrocontroller and embedded system
microcontroller and embedded systempradeep rana
 
Basics of open source embedded development board (
Basics of open source embedded development board (Basics of open source embedded development board (
Basics of open source embedded development board (Dhruwank Vankawala
 
Arduino by yogesh t s'
Arduino by yogesh t s'Arduino by yogesh t s'
Arduino by yogesh t s'tsyogesh46
 
Presentation on Embedded system using micro controller by PARAS JHA
Presentation on Embedded system using micro controller  by PARAS JHAPresentation on Embedded system using micro controller  by PARAS JHA
Presentation on Embedded system using micro controller by PARAS JHAParas Jha
 
Microcontroller from basic_to_advanced
Microcontroller from basic_to_advancedMicrocontroller from basic_to_advanced
Microcontroller from basic_to_advancedImran Sheikh
 
Introduction to Arduino Microcontroller
Introduction to Arduino MicrocontrollerIntroduction to Arduino Microcontroller
Introduction to Arduino MicrocontrollerMujahid Hussain
 
02 General Purpose Input - Output on the Arduino
02   General Purpose Input -  Output on the Arduino02   General Purpose Input -  Output on the Arduino
02 General Purpose Input - Output on the ArduinoWingston
 
Touch Switch (Smart Switches) by arduino Project report file
Touch Switch (Smart Switches) by arduino  Project  report fileTouch Switch (Smart Switches) by arduino  Project  report file
Touch Switch (Smart Switches) by arduino Project report fileimkanhaiyalal
 
Introduction to arduino
Introduction to arduinoIntroduction to arduino
Introduction to arduinoAhmed Sakr
 
Embedded &amp; pcb design
Embedded &amp; pcb designEmbedded &amp; pcb design
Embedded &amp; pcb designTanveer Behl
 

What's hot (20)

Embedded system programming using Arduino microcontroller
Embedded system programming using Arduino microcontrollerEmbedded system programming using Arduino microcontroller
Embedded system programming using Arduino microcontroller
 
Introduction to Arduino Hardware and Programming
Introduction to Arduino Hardware and ProgrammingIntroduction to Arduino Hardware and Programming
Introduction to Arduino Hardware and Programming
 
Microcontroller
MicrocontrollerMicrocontroller
Microcontroller
 
project report on embedded system
project report on embedded systemproject report on embedded system
project report on embedded system
 
Introduction to arduino!
Introduction to arduino!Introduction to arduino!
Introduction to arduino!
 
microcontroller and embedded system
microcontroller and embedded systemmicrocontroller and embedded system
microcontroller and embedded system
 
Basics of open source embedded development board (
Basics of open source embedded development board (Basics of open source embedded development board (
Basics of open source embedded development board (
 
Arduino by yogesh t s'
Arduino by yogesh t s'Arduino by yogesh t s'
Arduino by yogesh t s'
 
Visitor counter
Visitor counterVisitor counter
Visitor counter
 
Presentation on Embedded system using micro controller by PARAS JHA
Presentation on Embedded system using micro controller  by PARAS JHAPresentation on Embedded system using micro controller  by PARAS JHA
Presentation on Embedded system using micro controller by PARAS JHA
 
Microcontroller from basic_to_advanced
Microcontroller from basic_to_advancedMicrocontroller from basic_to_advanced
Microcontroller from basic_to_advanced
 
Magnetic door lock
Magnetic door lockMagnetic door lock
Magnetic door lock
 
Introduction to Arduino Microcontroller
Introduction to Arduino MicrocontrollerIntroduction to Arduino Microcontroller
Introduction to Arduino Microcontroller
 
Project
ProjectProject
Project
 
Iot Workshop NITT 2015
Iot Workshop NITT 2015Iot Workshop NITT 2015
Iot Workshop NITT 2015
 
02 General Purpose Input - Output on the Arduino
02   General Purpose Input -  Output on the Arduino02   General Purpose Input -  Output on the Arduino
02 General Purpose Input - Output on the Arduino
 
8 bit microcontroller
8 bit microcontroller8 bit microcontroller
8 bit microcontroller
 
Touch Switch (Smart Switches) by arduino Project report file
Touch Switch (Smart Switches) by arduino  Project  report fileTouch Switch (Smart Switches) by arduino  Project  report file
Touch Switch (Smart Switches) by arduino Project report file
 
Introduction to arduino
Introduction to arduinoIntroduction to arduino
Introduction to arduino
 
Embedded &amp; pcb design
Embedded &amp; pcb designEmbedded &amp; pcb design
Embedded &amp; pcb design
 

Viewers also liked

Arduino sin cables: usando Bluetooth
Arduino sin cables: usando BluetoothArduino sin cables: usando Bluetooth
Arduino sin cables: usando BluetoothJorge Zaccaro
 
Introducción a la planificación de proyectos
Introducción a la planificación de proyectosIntroducción a la planificación de proyectos
Introducción a la planificación de proyectosJonathan Ruiz de Garibay
 
Android + Bluetooth + Arduino
Android + Bluetooth + ArduinoAndroid + Bluetooth + Arduino
Android + Bluetooth + ArduinoJonathan Alvarado
 
Communication entre android et arduino via bluetooth
Communication entre android et arduino via bluetoothCommunication entre android et arduino via bluetooth
Communication entre android et arduino via bluetoothBedis ElAchèche
 

Viewers also liked (20)

Introduccion a la Programación
Introduccion a la ProgramaciónIntroduccion a la Programación
Introduccion a la Programación
 
Arduino sin cables: usando Bluetooth
Arduino sin cables: usando BluetoothArduino sin cables: usando Bluetooth
Arduino sin cables: usando Bluetooth
 
P01.Desarrollo de aplicaciones con mplab
P01.Desarrollo de aplicaciones con mplabP01.Desarrollo de aplicaciones con mplab
P01.Desarrollo de aplicaciones con mplab
 
01.Puntos Clave de una Presentación Oral
01.Puntos Clave de una Presentación Oral01.Puntos Clave de una Presentación Oral
01.Puntos Clave de una Presentación Oral
 
Práctica09.Librerías
Práctica09.LibreríasPráctica09.Librerías
Práctica09.Librerías
 
02.El Soporte Visual
02.El Soporte Visual02.El Soporte Visual
02.El Soporte Visual
 
Práctica05.Interrupciones en Arduino
Práctica05.Interrupciones en ArduinoPráctica05.Interrupciones en Arduino
Práctica05.Interrupciones en Arduino
 
02d.Circuito oscilador
02d.Circuito oscilador02d.Circuito oscilador
02d.Circuito oscilador
 
Práctica04.Programando Arduino
Práctica04.Programando ArduinoPráctica04.Programando Arduino
Práctica04.Programando Arduino
 
Introducción a la planificación de proyectos
Introducción a la planificación de proyectosIntroducción a la planificación de proyectos
Introducción a la planificación de proyectos
 
Práctica01.Sistemas de Entrada Salida
Práctica01.Sistemas de Entrada SalidaPráctica01.Sistemas de Entrada Salida
Práctica01.Sistemas de Entrada Salida
 
Programación Basada en Autómatas
Programación Basada en AutómatasProgramación Basada en Autómatas
Programación Basada en Autómatas
 
Práctica08.Comunicaciones
Práctica08.ComunicacionesPráctica08.Comunicaciones
Práctica08.Comunicaciones
 
Android + Bluetooth + Arduino
Android + Bluetooth + ArduinoAndroid + Bluetooth + Arduino
Android + Bluetooth + Arduino
 
Amplificación de señal con BJT
Amplificación de señal con BJTAmplificación de señal con BJT
Amplificación de señal con BJT
 
Trabajo en equipo
Trabajo en equipoTrabajo en equipo
Trabajo en equipo
 
Introducción a machine learning
Introducción a machine learningIntroducción a machine learning
Introducción a machine learning
 
Práctica06.Controlando Motores
Práctica06.Controlando MotoresPráctica06.Controlando Motores
Práctica06.Controlando Motores
 
Configuraciones con transistores BJT
Configuraciones con transistores BJTConfiguraciones con transistores BJT
Configuraciones con transistores BJT
 
Communication entre android et arduino via bluetooth
Communication entre android et arduino via bluetoothCommunication entre android et arduino via bluetooth
Communication entre android et arduino via bluetooth
 

Similar to Codesign-Oriented Platform for Agile Internet of Things Prototype Development

IRJET- Wi-Fi Control First Person View Robot (FPV)
IRJET- Wi-Fi Control First Person View Robot (FPV)IRJET- Wi-Fi Control First Person View Robot (FPV)
IRJET- Wi-Fi Control First Person View Robot (FPV)IRJET Journal
 
A SOFTWARE DEFINED RADIO BASED
A SOFTWARE DEFINED RADIO BASEDA SOFTWARE DEFINED RADIO BASED
A SOFTWARE DEFINED RADIO BASEDANGELIN JOHN
 
Chapter-1.doc
Chapter-1.docChapter-1.doc
Chapter-1.docvenui2
 
IoT Based home automation system using Arduino board
IoT Based home automation system using Arduino boardIoT Based home automation system using Arduino board
IoT Based home automation system using Arduino boardIRJET Journal
 
Home Automation using Internet of Things
Home Automation using Internet of ThingsHome Automation using Internet of Things
Home Automation using Internet of ThingsIRJET Journal
 
Internet of Things Presentation (IoT).pptx
Internet of Things Presentation (IoT).pptxInternet of Things Presentation (IoT).pptx
Internet of Things Presentation (IoT).pptxErYashwantJagtap
 
IRJET- Multi Plug Control using Internet of Things
IRJET- Multi Plug Control using Internet of ThingsIRJET- Multi Plug Control using Internet of Things
IRJET- Multi Plug Control using Internet of ThingsIRJET Journal
 
Ethernet Enabled Digital I/O Control in Embedded Systems
Ethernet Enabled Digital I/O Control in Embedded SystemsEthernet Enabled Digital I/O Control in Embedded Systems
Ethernet Enabled Digital I/O Control in Embedded SystemsIOSR Journals
 
A Survey on System-On-Chip Bus Protocols
A Survey on System-On-Chip Bus ProtocolsA Survey on System-On-Chip Bus Protocols
A Survey on System-On-Chip Bus ProtocolsIRJET Journal
 
IRJET- BSIOTR IT SMART LAB using IOT
IRJET- BSIOTR IT SMART LAB using IOTIRJET- BSIOTR IT SMART LAB using IOT
IRJET- BSIOTR IT SMART LAB using IOTIRJET Journal
 
Controlling Home Appliances by using Universal Remote Control System (IoT and...
Controlling Home Appliances by using Universal Remote Control System (IoT and...Controlling Home Appliances by using Universal Remote Control System (IoT and...
Controlling Home Appliances by using Universal Remote Control System (IoT and...IRJET Journal
 
Arrow IoT Quadro Wifi Kit
Arrow IoT Quadro Wifi KitArrow IoT Quadro Wifi Kit
Arrow IoT Quadro Wifi KitAspenCore
 
Smart invocation.pptx
Smart invocation.pptxSmart invocation.pptx
Smart invocation.pptxJagadeepVinay
 
Smart invocation.pptx
Smart invocation.pptxSmart invocation.pptx
Smart invocation.pptxJagadeepVinay
 
IRJET- Smart Power Optimization with IoT
IRJET-  	  Smart Power Optimization with IoTIRJET-  	  Smart Power Optimization with IoT
IRJET- Smart Power Optimization with IoTIRJET Journal
 
Dusun Gateway Hardware For Developer White Paper.pdf
Dusun Gateway Hardware For Developer White Paper.pdfDusun Gateway Hardware For Developer White Paper.pdf
Dusun Gateway Hardware For Developer White Paper.pdfYongxiaoCheng
 

Similar to Codesign-Oriented Platform for Agile Internet of Things Prototype Development (20)

IRJET- Wi-Fi Control First Person View Robot (FPV)
IRJET- Wi-Fi Control First Person View Robot (FPV)IRJET- Wi-Fi Control First Person View Robot (FPV)
IRJET- Wi-Fi Control First Person View Robot (FPV)
 
Report
ReportReport
Report
 
A SOFTWARE DEFINED RADIO BASED
A SOFTWARE DEFINED RADIO BASEDA SOFTWARE DEFINED RADIO BASED
A SOFTWARE DEFINED RADIO BASED
 
Smart home automation system
Smart home automation systemSmart home automation system
Smart home automation system
 
Chapter-1.doc
Chapter-1.docChapter-1.doc
Chapter-1.doc
 
IoT Based home automation system using Arduino board
IoT Based home automation system using Arduino boardIoT Based home automation system using Arduino board
IoT Based home automation system using Arduino board
 
Home Automation using Internet of Things
Home Automation using Internet of ThingsHome Automation using Internet of Things
Home Automation using Internet of Things
 
Internet of Things Presentation (IoT).pptx
Internet of Things Presentation (IoT).pptxInternet of Things Presentation (IoT).pptx
Internet of Things Presentation (IoT).pptx
 
IRJET- Multi Plug Control using Internet of Things
IRJET- Multi Plug Control using Internet of ThingsIRJET- Multi Plug Control using Internet of Things
IRJET- Multi Plug Control using Internet of Things
 
Ethernet Enabled Digital I/O Control in Embedded Systems
Ethernet Enabled Digital I/O Control in Embedded SystemsEthernet Enabled Digital I/O Control in Embedded Systems
Ethernet Enabled Digital I/O Control in Embedded Systems
 
A Survey on System-On-Chip Bus Protocols
A Survey on System-On-Chip Bus ProtocolsA Survey on System-On-Chip Bus Protocols
A Survey on System-On-Chip Bus Protocols
 
IRJET- BSIOTR IT SMART LAB using IOT
IRJET- BSIOTR IT SMART LAB using IOTIRJET- BSIOTR IT SMART LAB using IOT
IRJET- BSIOTR IT SMART LAB using IOT
 
Pradeep_Embedded
Pradeep_EmbeddedPradeep_Embedded
Pradeep_Embedded
 
Controlling Home Appliances by using Universal Remote Control System (IoT and...
Controlling Home Appliances by using Universal Remote Control System (IoT and...Controlling Home Appliances by using Universal Remote Control System (IoT and...
Controlling Home Appliances by using Universal Remote Control System (IoT and...
 
Arrow IoT Quadro Wifi Kit
Arrow IoT Quadro Wifi KitArrow IoT Quadro Wifi Kit
Arrow IoT Quadro Wifi Kit
 
Smart invocation.pptx
Smart invocation.pptxSmart invocation.pptx
Smart invocation.pptx
 
Smart invocation.pptx
Smart invocation.pptxSmart invocation.pptx
Smart invocation.pptx
 
IRJET- Smart Power Optimization with IoT
IRJET-  	  Smart Power Optimization with IoTIRJET-  	  Smart Power Optimization with IoT
IRJET- Smart Power Optimization with IoT
 
Dusun Gateway Hardware For Developer White Paper.pdf
Dusun Gateway Hardware For Developer White Paper.pdfDusun Gateway Hardware For Developer White Paper.pdf
Dusun Gateway Hardware For Developer White Paper.pdf
 
IOT_PPT.pptx
IOT_PPT.pptxIOT_PPT.pptx
IOT_PPT.pptx
 

More from Jonathan Ruiz de Garibay (16)

Vocaciones STEM
Vocaciones STEMVocaciones STEM
Vocaciones STEM
 
Amplificadores Multietapa
Amplificadores MultietapaAmplificadores Multietapa
Amplificadores Multietapa
 
Recta de carga para señal
Recta de carga para señalRecta de carga para señal
Recta de carga para señal
 
Fundamentos de los Microcontroladores
Fundamentos de los MicrocontroladoresFundamentos de los Microcontroladores
Fundamentos de los Microcontroladores
 
Polarización de los Transistores
Polarización de los TransistoresPolarización de los Transistores
Polarización de los Transistores
 
Programación en Arduino
Programación en ArduinoProgramación en Arduino
Programación en Arduino
 
Introducción a arduino
Introducción a arduinoIntroducción a arduino
Introducción a arduino
 
Fundamentos de los Transistores
Fundamentos de los TransistoresFundamentos de los Transistores
Fundamentos de los Transistores
 
Transistor Bipolar
Transistor BipolarTransistor Bipolar
Transistor Bipolar
 
Introducción a la Tecnología Electrónica
Introducción a la Tecnología ElectrónicaIntroducción a la Tecnología Electrónica
Introducción a la Tecnología Electrónica
 
Semiconductores
SemiconductoresSemiconductores
Semiconductores
 
Teoría de Diodos
Teoría de DiodosTeoría de Diodos
Teoría de Diodos
 
Fuentes de Alimentación
Fuentes de AlimentaciónFuentes de Alimentación
Fuentes de Alimentación
 
IoT: Objetos conectados a internet
IoT: Objetos conectados a internetIoT: Objetos conectados a internet
IoT: Objetos conectados a internet
 
Time Management Tool Based on New Interaction Paradigms with RFID Technology
Time Management Tool Based on New Interaction Paradigms with RFID TechnologyTime Management Tool Based on New Interaction Paradigms with RFID Technology
Time Management Tool Based on New Interaction Paradigms with RFID Technology
 
WebTag: Smart Tag with Embedded Web Server
WebTag: Smart Tag with Embedded Web ServerWebTag: Smart Tag with Embedded Web Server
WebTag: Smart Tag with Embedded Web Server
 

Recently uploaded

Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfRankYa
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clashcharlottematthew16
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfPrecisely
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionDilum Bandara
 
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo DayH2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo DaySri Ambati
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piececharlottematthew16
 

Recently uploaded (20)

Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdf
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clash
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An Introduction
 
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo DayH2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piece
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 

Codesign-Oriented Platform for Agile Internet of Things Prototype Development

  • 1. 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
  • 2. Extending Seamlessly to the Internet of Things 2014 Table of Contents  Introduction  Architecture Proposal  Use Case: THOFU Project  Future Work  Conclusions
  • 3. 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
  • 4. 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
  • 5. 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.
  • 6. 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.
  • 7. 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.
  • 8. 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
  • 9. 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.
  • 10. 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.
  • 11. 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
  • 12. 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.
  • 13. 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.
  • 14. 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.
  • 15. 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.
  • 16. 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
  • 17. 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
  • 18. 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
  • 19. 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
  • 20. 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
  • 21. 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
  • 22. 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
  • 23. 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.
  • 24. 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
  • 25. 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.
  • 26. 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.
  • 27. Tecnología Electrónica Thank you!!! Questions? Jonathan Ruiz-de-Garibay <jonathan.garibay@deusto.es>
  • 28. 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