Brief description and useful links:
Developed smart home automation project to measure your house's temperature and send it on your smartphone.
LinkedIn profile: https://www.linkedin.com/in/roberto-falconi
GitHub repository: https://github.com/RobertoFalconi/HouseTemperatureMonitoring
Hackster full description: https://www.hackster.io/Falkons/house-temperature-monitoring-using-aws-iot-and-raspberry-pi-3b6410
SlideShare presentation: https://www.slideshare.net/RobertoFalconi4/house-temperature-monitoring-using-aws-iot-and-raspberry-pi
YouTube video: https://www.youtube.com/watch?v=gQxOSbcN79s
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
House Temperature Monitoring using AWS IoT And Raspberry Pi
1. Roberto Falconi
Sapienza – University of Rome
House temperature monitoring using AWS IoT and Raspberry
Individual Presentation for Pervasive Systems (AY 2017/18)
2. Internet of Things
Internet of Things refers to the
connection of devices to the Internet; as
the Internet of Things surges in the
coming years, more devices will join it
3. Cloud Computing
Software as a Service (Saas):
Cloud-based applications run on
computers in the cloud
Platform as a service (PaaS): Cloud
houses everything necessary to
build and deliver cloud-based
applications
Infrastructure as a service (IaaS):
provides companies with servers,
networking and data centers on a
per-use basis
4. Internet of Things vs
Cloud Computing
• Both serve to increase efficiency
in our everyday tasks, and the
two have a complimentary
relationship
• IoT generates massive amounts
of data, cloud computing
provides a pathway for that data
to travel to its destination
6. AWS is a
growing global
network
As of 2017, AWS owns a dominant 34% of
all cloud and web services while the next
three competitors, Microsoft, Google, and
IBM have 11%, 8%, 6% respectively
Region of Availability
New Region (Coming Soon)
7. AWS IoT
AWS IoT is a managed
cloud platform that
lets connected devices
- cars, light bulbs,
sensor grids, etc. -
easily and securely
interact with cloud
applications and other
devices
8. AWS FreeRTOS
Amazon FreeRTOS is a IoT OS
that provides everything you
need to easily program
connected microcontroller-based
devices and collect data from
them for IoT applications
9. AWS Greengrass
AWS Greengrass works like a middleware and lets you build IoT solutions that connect different
types of devices with the cloud and each other – even when not connected to the internet
10. AWS IoT Device
Management
AWS IoT Device Management
makes it easy to securely
onboard, organize, monitor, and
remotely manage IoT devices at
scale
11. AWS IoT 1-Click
• AWS IoT 1-Click is a service that makes it
easy for simple devices to trigger AWS
Lambda functions that execute a specific
action
• AWS IoT Button is a device that uses AWS
IoT 1-Click
12. AWS IoT Button
• Based on the Amazon Dash Button
hardware, the AWS IoT Button is a
programmable Wi-Fi button, which is
perfect as a developer kit that can be
programmed to control internet-connected
devices and services like AWS IoT, AWS
Lambda, DynamoDB, Simple Notification
Service and other Amazon Web Services
• Eliminate the hassle of writing device-
specific code; code in the cloud to configure
your button’s single, double, and long clicks
16. AWS IoT
Dashboard
• Monitor allows you to view
metrics from your devices
• Onboard shows tutorials
• Manage (things); things are
representations of devices
• Secure communication
between devices and AWS IoT
are guaranteed through the
use of X.509 certificates
• Act tells AWS IoT what to do
• Test can simulate things
17. AWS Lambda
Dashboard
• Dashboard shows a summary of your
account's functions and related metrics
in the current region
• The functions view lists all your
functions in the current region
18. AWS Simple
Notification Service
(SNS) Dashboard
Amazon Simple Notification Service (SNS)
is a flexible, fully managed pub/sub
messaging and mobile notifications service
for coordinating the delivery of messages
to subscribing endpoints and clients
19. E-mail notification
• Manage the AWS IoT Button by linking it to AWS
Account and creating secure certificate, policy,
action rule and permission role
• Write the Lambda Function in a supported language
(Go, C#, Java, Python or Node.js)
• Create and subscribe an SNS Topic
21. Raspberry Pi 3
• Small and affordable
single-board computer
developed in the UK by
Raspberry Pi Foundation
• Supports Raspbian official
OS and many third parties
(Ubuntu Mate, Snappy
Ubuntu, Windows 10 IoT,
OSMC, Libreelec, Pinet,
Risc OS and IchigoJam)
22. IoT Communication Protocols
• HTTP: with AWS it’s possible to write
a proper Lambda function in a
supported language that calls require
and GET functions (or methods) to
perform an HTTP request to a server
• MQTT let user to wait for a
connection to be established with the
server and creates a link between the
nodes. Publish returns immediately to
the application thread after passing
the request to the MQTT client
23. Connect a device
to AWS IoT
• A device must be connected to a
Wi-Fi network to install required
files and send messages to AWS IoT
• All devices must install a device
certificate, private key and root CA
certificate in order to communicate
with AWS IoT
24. MQTT client
When a device is connected to
AWS IoT it becomes a “thing”, and
it doesn’t matter what type of
thing it is, because they are all
equal under AWS IoT: they can
communicate with each other and
can be emulated by another thing
25. Python code
Raspberry Pi 3 receive Callbacks from AWS IoT and executes functions
Full code available on GitHub
26. Hands-on Example
• Single-click on AWS IoT
Button to send an alert to
your housemates
• Double-click on AWS IoT
Button to switch on RPi’s
TMP102, allowing it to
gather information about
your house’s temperature
and send these info to all
connected devices via AWS
IoT; double-click again to
switch off the sensor
Watch the working demo in the next slide
27. • “As the Internet of things advances, the very
notion of a clear dividing line between reality
and virtual reality becomes blurred,
sometimes in creative ways” – Geoff Mulgan
Thank You!