Develop and Deploy IoT
Application
Demistified…
How the story begins...
What about
making a
monitoring
application which
can transfer data
over the cloud? I
mean temperature,
humidity, alarms...
Sounds
interesting, but I
always get
confused when
hear the word
“cloud”... Walter,
any suggestions?
Uhm...Basically you
needs two things:
- REST Server
- Lots of Beer
Should work after
the classic POC
curve
The POC Curve Theory
POC = Prove Of Concept
Concept
● Use a REST service on server side (dweet.io)
● Producer of data is an embedded board connected to
the cloud
● Application board connect various type of sensors using
different protocols
● Consumer could get data from the REST server and
present it with the preferred solution (web browser,
desktop app, mobile app, etc…)
Something like this...
Platform?
● The Platform, in this case, is the electronic object that
will embed our application
● IoT = Internet Of Things
● In many cases “Small Things”...
● Not much space… we have to make it as small as
possible
● Use a Microcontroller
What About TCP/IP Interface?
● TCP/IP is a pretty much complicated protocol
● It has been developed during ‘70 by a group of
engineers
● You don’t want to do it again...
● Use a specialized Module
● Wiznet W5100
HW Setup
Wiznet
Microcontroller
LEDs
Sensors
Looking for an Environment
● Lots of IDE for Microcontroller C code development
○ Not easy to use and understand
○ C language is pretty complex
● What about a Graphic Environment? It will reduce code
overhead and simplify application development :-)
○ Yes, it is scalable if you use it in the right way…
○ Yep, it could be debugged like a text based…
○ Yeah, it can be simulated as well…
Make it simple...
● We are going to use Flowcode
● Flowcode is a Graphic Integrated Development
Environment (or G-IDE)
● It looks like a flowchart, but allow you to program
Microcontrollers
Make it veeery simple...
Pretty Cool, Ah?Messy C code...
...simple flowchart
Using a Component
● Inside Flowcode a lot of complex problems could be
easily solved using a component
● A component is a set of APIs that allow you to interface
a complex peripheral inside your flowchart
● In Flowcode, CAN, USB, Ethernet are all components
● Besides APIs, components require also an initial
configuration, in the form of, so called, “extra properties”
● A component is added to a project simply
Dragging&Dropping it inside the project itself
Configure TCP/IP Component
GateWay Address
SubNet Mask
Our Node Address
Extra-Properties
Sw Architecture
Create TCP/IP connection
Send POST to dweet
MACRO
Our Things on Dweet
I think it could be
presented a bit
better...
Example of Data collection:
Freeboard
Amazing!!!
What do you
think?
References
Embedded Code:
● www.francescoficili.com
● www.vincenzogermano.com
FlowCode:
● http://www.matrixtsl.com/flowcode/
Freeboard Panel:
● https://freeboard.io/board/sC5AvM
Questions?
Grazie :-)

Cloud Conf 2015 - Develop and Deploy IOT Applications

  • 1.
    Develop and DeployIoT Application Demistified…
  • 2.
    How the storybegins... What about making a monitoring application which can transfer data over the cloud? I mean temperature, humidity, alarms... Sounds interesting, but I always get confused when hear the word “cloud”... Walter, any suggestions? Uhm...Basically you needs two things: - REST Server - Lots of Beer Should work after the classic POC curve
  • 3.
    The POC CurveTheory POC = Prove Of Concept
  • 4.
    Concept ● Use aREST service on server side (dweet.io) ● Producer of data is an embedded board connected to the cloud ● Application board connect various type of sensors using different protocols ● Consumer could get data from the REST server and present it with the preferred solution (web browser, desktop app, mobile app, etc…)
  • 5.
  • 6.
    Platform? ● The Platform,in this case, is the electronic object that will embed our application ● IoT = Internet Of Things ● In many cases “Small Things”... ● Not much space… we have to make it as small as possible ● Use a Microcontroller
  • 7.
    What About TCP/IPInterface? ● TCP/IP is a pretty much complicated protocol ● It has been developed during ‘70 by a group of engineers ● You don’t want to do it again... ● Use a specialized Module ● Wiznet W5100
  • 8.
  • 9.
    Looking for anEnvironment ● Lots of IDE for Microcontroller C code development ○ Not easy to use and understand ○ C language is pretty complex ● What about a Graphic Environment? It will reduce code overhead and simplify application development :-) ○ Yes, it is scalable if you use it in the right way… ○ Yep, it could be debugged like a text based… ○ Yeah, it can be simulated as well…
  • 10.
    Make it simple... ●We are going to use Flowcode ● Flowcode is a Graphic Integrated Development Environment (or G-IDE) ● It looks like a flowchart, but allow you to program Microcontrollers
  • 11.
    Make it veeerysimple... Pretty Cool, Ah?Messy C code... ...simple flowchart
  • 12.
    Using a Component ●Inside Flowcode a lot of complex problems could be easily solved using a component ● A component is a set of APIs that allow you to interface a complex peripheral inside your flowchart ● In Flowcode, CAN, USB, Ethernet are all components ● Besides APIs, components require also an initial configuration, in the form of, so called, “extra properties” ● A component is added to a project simply Dragging&Dropping it inside the project itself
  • 13.
    Configure TCP/IP Component GateWayAddress SubNet Mask Our Node Address Extra-Properties
  • 14.
  • 15.
  • 16.
    Send POST todweet MACRO
  • 17.
    Our Things onDweet I think it could be presented a bit better...
  • 18.
    Example of Datacollection: Freeboard Amazing!!! What do you think?
  • 19.
    References Embedded Code: ● www.francescoficili.com ●www.vincenzogermano.com FlowCode: ● http://www.matrixtsl.com/flowcode/ Freeboard Panel: ● https://freeboard.io/board/sC5AvM
  • 20.
  • 21.