SlideShare a Scribd company logo
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
AWS re:INVENT
Building an AWS IoT-Enabled Drink
Dispenser
A n t o n S h m a g i n , A W S – P a r t n e r S o l u t i o n s A r c h i t e c t
G a v i n A d a m s , A W S – S o l u t i o n s A r c h i t e c t
I O T 3 2 8
N o v e m b e r 2 7 , 2 0 1 7
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Workshop Checklist
• Please refer to Getting Started sheet
• Team up if missing a minimum requirement
• AWS Staff
• Gavin, Anton, Thomas, Rudy, Chris, and Tim
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Workshop Objectives
• Team Event
• Get comfortable working with hardware
• Understanding secure authentication and authorization to AWS IoT
• Testing and debugging local code
• Familiarity with serverless services for fully integrated IoT solutions
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Our Connected Dispenser
+ =
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Dispenser and system features
• Dispenser features
• Vend drink via air pump motor
• Toggle LED
• Connect to AWS IoT
• System features
• Web application for dispenser control
• AuthN/AuthZ (scoped access)
• Dispense to your device
• Send credits to other “production” dispensers
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Services Used
Dispenser
AWS IoT
Dispenser
shadow
User
policy
action: update
Amazon
Cognito
Amazon API
Gateway
dispenser
Status
Amazon
S3
DispenserApp
Device
policy
setLed
updateStats
dispense
$aws/shadow/#
Web app
addCredit
dispenser
Events
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Services Used
Dispenser
AWS IoT
Dispenser
shadow
User
policy
action: update
Amazon
Cognito
Amazon API
Gateway
dispenser
Status
Amazon
S3
DispenserApp
Device
policy
setLed
updateStats
dispense
$aws/shadow/#
Web app
addCredit
dispenser
Events
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Workshop Activities
1.Build the dispenser
2.Deploy code and test locally
3.Connect to AWS IoT and test
remotely
4.Production setup of code
5.Log in and become familiar with the
Web application
6.Send credits and share the love
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Activity 1 – Build the dispenser
• Build Enclosure
• Power unit and verify LED active and button activates motor
• Now load drink bottle
• COMPLETED: Physically assembled
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Activity 2 – Test locally
• Configure serial connection and flash ESP32 with Mongoose OS app1
which enables local testing
• Place cup under dispenser and press on-board button to dispense drink
• Based on output, change timing in code, rebuild/deploy and test again
• COMPLETED: drink properly dispensed
• Tips
• Have a cup under hose at all times – things can go wrong at this point
• For this test, you can use the Mongoose OS browser UI to change the
timing variables, then retest
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Activity 3 – Configure and test remotely
• From your zip file, move the certificate files to the Mongoose OS app2 directory
• Update code with Wi-Fi credentials, build/deploy code
• Log into AWS IoT Console and subscribe to shadow topics
• Publish shadow update (dispense=DISPREQ)
• Verify message echoed on serial debug port for device
• Publish shadow update to clear request (dispense=null)
• COMPLETED: Ability to publish message to dispenser and see result in
device logs
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Activity 4 – Production setup
• Verify dispenser shadow attributes
• Copy certificates to Mongoose OS app3 directory, update Wi-Fi, and
deploy
• Subscribe to device shadow
• From AWS IoT Console publish shadow update to toggle the LED:
• Desired state: led=on
• Desired state: led=off
• COMPLETED: “LED” commands executed and dispenser status update
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Activity 5 – Log in to Web application
• Enter username and password to log in to Web application
• Verify your dispenser details and credit (should be $1.00) appear
correctly and dispense button is green
• Verify led status matches dispenser (toggle or set if needed)
• Press the green ”Dispense” button and verify drink is dispensed, and the
amount is debited by $1.00
• COMPLETED: Drink dispensed from application
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Activity 6 – Send credits & share the love
• For other completed dispensers, enter the dispenser number and press
the “Give Credit” button in the app
• Verify they see their credit balance increase by $0.25
• Do this until then have a green dispense button and that it works
• Walk around the room and buy the world a drink
• COMPLETED: Credits given to another attendee’s dispenser
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Getting Started
• Open your envelope! It contains:
• Your unique dispenser ID
• A unique short URL to a zip file containing:
• Certificate, private key, rootCA
• Mongoose OS application code for dispenser
• AWS console login URL and credentials
• Lab guide helpful links
• Web application URL
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Getting Started
• Cat... Parrot... Dog... What?
• Checkpoints and stretch goals
• For questions, collaboration is key
• For additional assistance, ask any AWS staff in the room
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Let’s Get Started!
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Workshop Summary
• What was covered
• Working with IoT hardware
• Building on AWS complete workloads
• Behind the scenes to monitor and troubleshoot
• Takeaways in the future
• Be on the lookout: Connected Drink Dispenser
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Thank you!
P L E A S E R E M E M B E R T O F I L L O U T Y O U R S U R V E Y !

More Related Content

What's hot

CON318_Interstella 8888 Monolith to Microservices with Amazon ECS
CON318_Interstella 8888 Monolith to Microservices with Amazon ECSCON318_Interstella 8888 Monolith to Microservices with Amazon ECS
CON318_Interstella 8888 Monolith to Microservices with Amazon ECS
Amazon Web Services
 
SRV310_Designing Microservices with Serverless
SRV310_Designing Microservices with ServerlessSRV310_Designing Microservices with Serverless
SRV310_Designing Microservices with Serverless
Amazon Web Services
 
LFS309-High-Throughput Genomics on AWS.pdf
LFS309-High-Throughput Genomics on AWS.pdfLFS309-High-Throughput Genomics on AWS.pdf
LFS309-High-Throughput Genomics on AWS.pdf
Amazon Web Services
 
NEW LAUNCH! Amazon FreeRTOS: IoT Operating System for Microcontrollers - IOT2...
NEW LAUNCH! Amazon FreeRTOS: IoT Operating System for Microcontrollers - IOT2...NEW LAUNCH! Amazon FreeRTOS: IoT Operating System for Microcontrollers - IOT2...
NEW LAUNCH! Amazon FreeRTOS: IoT Operating System for Microcontrollers - IOT2...
Amazon Web Services
 
Enabling Big Data Computing at Pfizer with AWS Service Catalog and AWS Lambda...
Enabling Big Data Computing at Pfizer with AWS Service Catalog and AWS Lambda...Enabling Big Data Computing at Pfizer with AWS Service Catalog and AWS Lambda...
Enabling Big Data Computing at Pfizer with AWS Service Catalog and AWS Lambda...
Amazon Web Services
 
IOT326_Developing Predictive Applications Using
IOT326_Developing Predictive Applications UsingIOT326_Developing Predictive Applications Using
IOT326_Developing Predictive Applications Using
Amazon Web Services
 
The IoT Offering Explained in Plain English - IOT201 - re:Invent 2017
The IoT Offering Explained in Plain English - IOT201 - re:Invent 2017The IoT Offering Explained in Plain English - IOT201 - re:Invent 2017
The IoT Offering Explained in Plain English - IOT201 - re:Invent 2017
Amazon Web Services
 
GPSBUS211-Edge Intelligence for IoT Applications
GPSBUS211-Edge Intelligence for IoT ApplicationsGPSBUS211-Edge Intelligence for IoT Applications
GPSBUS211-Edge Intelligence for IoT Applications
Amazon Web Services
 
DevOps for a Mobile World: Building an iOS or Android Mobile App in the Cloud...
DevOps for a Mobile World: Building an iOS or Android Mobile App in the Cloud...DevOps for a Mobile World: Building an iOS or Android Mobile App in the Cloud...
DevOps for a Mobile World: Building an iOS or Android Mobile App in the Cloud...
Amazon Web Services
 
An Introduction to AWS IoT - Web Summit Lisbon
An Introduction to AWS IoT - Web Summit LisbonAn Introduction to AWS IoT - Web Summit Lisbon
An Introduction to AWS IoT - Web Summit Lisbon
Boaz Ziniman
 
NEW LAUNCH! AWS Greengrass and Amazon FreeRTOS: Connectivity and Security at ...
NEW LAUNCH! AWS Greengrass and Amazon FreeRTOS: Connectivity and Security at ...NEW LAUNCH! AWS Greengrass and Amazon FreeRTOS: Connectivity and Security at ...
NEW LAUNCH! AWS Greengrass and Amazon FreeRTOS: Connectivity and Security at ...
Amazon Web Services
 
How to Handle PCI and HIPAA Compliance with Serverless Architecture( SRV214)
How to Handle PCI and HIPAA Compliance with Serverless Architecture( SRV214)How to Handle PCI and HIPAA Compliance with Serverless Architecture( SRV214)
How to Handle PCI and HIPAA Compliance with Serverless Architecture( SRV214)
Amazon Web Services
 
GPSMKT201-Expanding Channel Opportunities Using AWS Marketplace as a Fulfillm...
GPSMKT201-Expanding Channel Opportunities Using AWS Marketplace as a Fulfillm...GPSMKT201-Expanding Channel Opportunities Using AWS Marketplace as a Fulfillm...
GPSMKT201-Expanding Channel Opportunities Using AWS Marketplace as a Fulfillm...
Amazon Web Services
 
EUT303_Modernizing the Energy and Utilities Industry with IoT Moving SCADA to...
EUT303_Modernizing the Energy and Utilities Industry with IoT Moving SCADA to...EUT303_Modernizing the Energy and Utilities Industry with IoT Moving SCADA to...
EUT303_Modernizing the Energy and Utilities Industry with IoT Moving SCADA to...
Amazon Web Services
 
CON320_Monitoring, Logging and Debugging Containerized Services
CON320_Monitoring, Logging and Debugging Containerized ServicesCON320_Monitoring, Logging and Debugging Containerized Services
CON320_Monitoring, Logging and Debugging Containerized Services
Amazon Web Services
 
GPSWKS404-GPS Game Changing C2S Services To Transform Your Customers Speed To...
GPSWKS404-GPS Game Changing C2S Services To Transform Your Customers Speed To...GPSWKS404-GPS Game Changing C2S Services To Transform Your Customers Speed To...
GPSWKS404-GPS Game Changing C2S Services To Transform Your Customers Speed To...
Amazon Web Services
 
What's New in Serverless - SRV305 - re:Invent 2017
What's New in Serverless - SRV305 - re:Invent 2017What's New in Serverless - SRV305 - re:Invent 2017
What's New in Serverless - SRV305 - re:Invent 2017
Amazon Web Services
 
Introduction to AWS Fargate & Amazon Elastic Container Service for Kubernetes
Introduction to AWS Fargate & Amazon Elastic Container Service for KubernetesIntroduction to AWS Fargate & Amazon Elastic Container Service for Kubernetes
Introduction to AWS Fargate & Amazon Elastic Container Service for Kubernetes
Amazon Web Services
 
Digital Transformation - ARC219 - re:Invent 2017
Digital Transformation - ARC219 - re:Invent 2017Digital Transformation - ARC219 - re:Invent 2017
Digital Transformation - ARC219 - re:Invent 2017
Amazon Web Services
 
CON202-Getting Started with Docker and Amazon ECS
CON202-Getting Started with Docker and Amazon ECSCON202-Getting Started with Docker and Amazon ECS
CON202-Getting Started with Docker and Amazon ECS
Amazon Web Services
 

What's hot (20)

CON318_Interstella 8888 Monolith to Microservices with Amazon ECS
CON318_Interstella 8888 Monolith to Microservices with Amazon ECSCON318_Interstella 8888 Monolith to Microservices with Amazon ECS
CON318_Interstella 8888 Monolith to Microservices with Amazon ECS
 
SRV310_Designing Microservices with Serverless
SRV310_Designing Microservices with ServerlessSRV310_Designing Microservices with Serverless
SRV310_Designing Microservices with Serverless
 
LFS309-High-Throughput Genomics on AWS.pdf
LFS309-High-Throughput Genomics on AWS.pdfLFS309-High-Throughput Genomics on AWS.pdf
LFS309-High-Throughput Genomics on AWS.pdf
 
NEW LAUNCH! Amazon FreeRTOS: IoT Operating System for Microcontrollers - IOT2...
NEW LAUNCH! Amazon FreeRTOS: IoT Operating System for Microcontrollers - IOT2...NEW LAUNCH! Amazon FreeRTOS: IoT Operating System for Microcontrollers - IOT2...
NEW LAUNCH! Amazon FreeRTOS: IoT Operating System for Microcontrollers - IOT2...
 
Enabling Big Data Computing at Pfizer with AWS Service Catalog and AWS Lambda...
Enabling Big Data Computing at Pfizer with AWS Service Catalog and AWS Lambda...Enabling Big Data Computing at Pfizer with AWS Service Catalog and AWS Lambda...
Enabling Big Data Computing at Pfizer with AWS Service Catalog and AWS Lambda...
 
IOT326_Developing Predictive Applications Using
IOT326_Developing Predictive Applications UsingIOT326_Developing Predictive Applications Using
IOT326_Developing Predictive Applications Using
 
The IoT Offering Explained in Plain English - IOT201 - re:Invent 2017
The IoT Offering Explained in Plain English - IOT201 - re:Invent 2017The IoT Offering Explained in Plain English - IOT201 - re:Invent 2017
The IoT Offering Explained in Plain English - IOT201 - re:Invent 2017
 
GPSBUS211-Edge Intelligence for IoT Applications
GPSBUS211-Edge Intelligence for IoT ApplicationsGPSBUS211-Edge Intelligence for IoT Applications
GPSBUS211-Edge Intelligence for IoT Applications
 
DevOps for a Mobile World: Building an iOS or Android Mobile App in the Cloud...
DevOps for a Mobile World: Building an iOS or Android Mobile App in the Cloud...DevOps for a Mobile World: Building an iOS or Android Mobile App in the Cloud...
DevOps for a Mobile World: Building an iOS or Android Mobile App in the Cloud...
 
An Introduction to AWS IoT - Web Summit Lisbon
An Introduction to AWS IoT - Web Summit LisbonAn Introduction to AWS IoT - Web Summit Lisbon
An Introduction to AWS IoT - Web Summit Lisbon
 
NEW LAUNCH! AWS Greengrass and Amazon FreeRTOS: Connectivity and Security at ...
NEW LAUNCH! AWS Greengrass and Amazon FreeRTOS: Connectivity and Security at ...NEW LAUNCH! AWS Greengrass and Amazon FreeRTOS: Connectivity and Security at ...
NEW LAUNCH! AWS Greengrass and Amazon FreeRTOS: Connectivity and Security at ...
 
How to Handle PCI and HIPAA Compliance with Serverless Architecture( SRV214)
How to Handle PCI and HIPAA Compliance with Serverless Architecture( SRV214)How to Handle PCI and HIPAA Compliance with Serverless Architecture( SRV214)
How to Handle PCI and HIPAA Compliance with Serverless Architecture( SRV214)
 
GPSMKT201-Expanding Channel Opportunities Using AWS Marketplace as a Fulfillm...
GPSMKT201-Expanding Channel Opportunities Using AWS Marketplace as a Fulfillm...GPSMKT201-Expanding Channel Opportunities Using AWS Marketplace as a Fulfillm...
GPSMKT201-Expanding Channel Opportunities Using AWS Marketplace as a Fulfillm...
 
EUT303_Modernizing the Energy and Utilities Industry with IoT Moving SCADA to...
EUT303_Modernizing the Energy and Utilities Industry with IoT Moving SCADA to...EUT303_Modernizing the Energy and Utilities Industry with IoT Moving SCADA to...
EUT303_Modernizing the Energy and Utilities Industry with IoT Moving SCADA to...
 
CON320_Monitoring, Logging and Debugging Containerized Services
CON320_Monitoring, Logging and Debugging Containerized ServicesCON320_Monitoring, Logging and Debugging Containerized Services
CON320_Monitoring, Logging and Debugging Containerized Services
 
GPSWKS404-GPS Game Changing C2S Services To Transform Your Customers Speed To...
GPSWKS404-GPS Game Changing C2S Services To Transform Your Customers Speed To...GPSWKS404-GPS Game Changing C2S Services To Transform Your Customers Speed To...
GPSWKS404-GPS Game Changing C2S Services To Transform Your Customers Speed To...
 
What's New in Serverless - SRV305 - re:Invent 2017
What's New in Serverless - SRV305 - re:Invent 2017What's New in Serverless - SRV305 - re:Invent 2017
What's New in Serverless - SRV305 - re:Invent 2017
 
Introduction to AWS Fargate & Amazon Elastic Container Service for Kubernetes
Introduction to AWS Fargate & Amazon Elastic Container Service for KubernetesIntroduction to AWS Fargate & Amazon Elastic Container Service for Kubernetes
Introduction to AWS Fargate & Amazon Elastic Container Service for Kubernetes
 
Digital Transformation - ARC219 - re:Invent 2017
Digital Transformation - ARC219 - re:Invent 2017Digital Transformation - ARC219 - re:Invent 2017
Digital Transformation - ARC219 - re:Invent 2017
 
CON202-Getting Started with Docker and Amazon ECS
CON202-Getting Started with Docker and Amazon ECSCON202-Getting Started with Docker and Amazon ECS
CON202-Getting Started with Docker and Amazon ECS
 

Similar to IOT328_Building an AWS IoT-Enabled Drink Dispenser

MCL306_Making IoT Smarter with AWS Rekognition.pdf
MCL306_Making IoT Smarter with AWS Rekognition.pdfMCL306_Making IoT Smarter with AWS Rekognition.pdf
MCL306_Making IoT Smarter with AWS Rekognition.pdf
Amazon Web Services
 
MCL306_Making IoT Smarter with AWS Rekognition
MCL306_Making IoT Smarter with AWS RekognitionMCL306_Making IoT Smarter with AWS Rekognition
MCL306_Making IoT Smarter with AWS Rekognition
Amazon Web Services
 
End-User Computing on AWS with Amazon WorkSpaces and Amazon AppStream 2.0 - E...
End-User Computing on AWS with Amazon WorkSpaces and Amazon AppStream 2.0 - E...End-User Computing on AWS with Amazon WorkSpaces and Amazon AppStream 2.0 - E...
End-User Computing on AWS with Amazon WorkSpaces and Amazon AppStream 2.0 - E...
Amazon Web Services
 
How Chick-fil-A Embraces DevSecOps on AWS - SID306 - re:Invent 2017
How Chick-fil-A Embraces DevSecOps on AWS - SID306 - re:Invent 2017How Chick-fil-A Embraces DevSecOps on AWS - SID306 - re:Invent 2017
How Chick-fil-A Embraces DevSecOps on AWS - SID306 - re:Invent 2017
Amazon Web Services
 
DEV305_Manage Your Applications with AWS Elastic Beanstalk.pdf
DEV305_Manage Your Applications with AWS Elastic Beanstalk.pdfDEV305_Manage Your Applications with AWS Elastic Beanstalk.pdf
DEV305_Manage Your Applications with AWS Elastic Beanstalk.pdf
Amazon Web Services
 
IOT311_Customer Stories of Things, Cloud, and Analytics on AWS
IOT311_Customer Stories of Things, Cloud, and Analytics on AWSIOT311_Customer Stories of Things, Cloud, and Analytics on AWS
IOT311_Customer Stories of Things, Cloud, and Analytics on AWS
Amazon Web Services
 
Introduction to the Serverless Cloud
Introduction to the Serverless CloudIntroduction to the Serverless Cloud
Introduction to the Serverless Cloud
Amazon Web Services
 
Design, Build, and Modernize Your Web Applications with AWS
Design, Build, and Modernize Your Web Applications with AWSDesign, Build, and Modernize Your Web Applications with AWS
Design, Build, and Modernize Your Web Applications with AWS
Irene Luong
 
NEW LAUNCH! Rapidly Build IoT applications - IOT216 - re:Invent 2017
NEW LAUNCH! Rapidly Build IoT applications - IOT216 - re:Invent 2017NEW LAUNCH! Rapidly Build IoT applications - IOT216 - re:Invent 2017
NEW LAUNCH! Rapidly Build IoT applications - IOT216 - re:Invent 2017
Amazon Web Services
 
DevOps on AWS
DevOps on AWSDevOps on AWS
DevOps on AWS
Amazon Web Services
 
DevOps on AWS
DevOps on AWSDevOps on AWS
DevOps on AWS
Amazon Web Services
 
NEW LAUNCH! AWS PrivateLink: Bringing SaaS Solutions into Your VPCs and Your ...
NEW LAUNCH! AWS PrivateLink: Bringing SaaS Solutions into Your VPCs and Your ...NEW LAUNCH! AWS PrivateLink: Bringing SaaS Solutions into Your VPCs and Your ...
NEW LAUNCH! AWS PrivateLink: Bringing SaaS Solutions into Your VPCs and Your ...
Amazon Web Services
 
Automate and Scale Configuration Management with AWS OpsWorks - DEV331 - re:I...
Automate and Scale Configuration Management with AWS OpsWorks - DEV331 - re:I...Automate and Scale Configuration Management with AWS OpsWorks - DEV331 - re:I...
Automate and Scale Configuration Management with AWS OpsWorks - DEV331 - re:I...
Amazon Web Services
 
DEV326_DevOps Essentials An Introductory Workshop on CICD Practices
DEV326_DevOps Essentials An Introductory Workshop on CICD PracticesDEV326_DevOps Essentials An Introductory Workshop on CICD Practices
DEV326_DevOps Essentials An Introductory Workshop on CICD Practices
Amazon Web Services
 
SID301_Using AWS Lambda as a Security Team
SID301_Using AWS Lambda as a Security TeamSID301_Using AWS Lambda as a Security Team
SID301_Using AWS Lambda as a Security Team
Amazon Web Services
 
Intro To AWS for Mobile Developers: Collision 2018
Intro To AWS for Mobile Developers: Collision 2018Intro To AWS for Mobile Developers: Collision 2018
Intro To AWS for Mobile Developers: Collision 2018
Amazon Web Services
 
Continuous Integration Best Practices (DEV319-R1) - AWS re:Invent 2018
Continuous Integration Best Practices (DEV319-R1) - AWS re:Invent 2018Continuous Integration Best Practices (DEV319-R1) - AWS re:Invent 2018
Continuous Integration Best Practices (DEV319-R1) - AWS re:Invent 2018
Amazon Web Services
 
DEV203_Launch Applications the Amazon Way
DEV203_Launch Applications the Amazon WayDEV203_Launch Applications the Amazon Way
DEV203_Launch Applications the Amazon Way
Amazon Web Services
 
Move Your Virtualized Desktop Apps to the Cloud with Amazon AppStream 2.0 - B...
Move Your Virtualized Desktop Apps to the Cloud with Amazon AppStream 2.0 - B...Move Your Virtualized Desktop Apps to the Cloud with Amazon AppStream 2.0 - B...
Move Your Virtualized Desktop Apps to the Cloud with Amazon AppStream 2.0 - B...
Amazon Web Services
 
DEV322_Continuous Integration Best Practices for Software Development Teams
DEV322_Continuous Integration Best Practices for Software Development TeamsDEV322_Continuous Integration Best Practices for Software Development Teams
DEV322_Continuous Integration Best Practices for Software Development Teams
Amazon Web Services
 

Similar to IOT328_Building an AWS IoT-Enabled Drink Dispenser (20)

MCL306_Making IoT Smarter with AWS Rekognition.pdf
MCL306_Making IoT Smarter with AWS Rekognition.pdfMCL306_Making IoT Smarter with AWS Rekognition.pdf
MCL306_Making IoT Smarter with AWS Rekognition.pdf
 
MCL306_Making IoT Smarter with AWS Rekognition
MCL306_Making IoT Smarter with AWS RekognitionMCL306_Making IoT Smarter with AWS Rekognition
MCL306_Making IoT Smarter with AWS Rekognition
 
End-User Computing on AWS with Amazon WorkSpaces and Amazon AppStream 2.0 - E...
End-User Computing on AWS with Amazon WorkSpaces and Amazon AppStream 2.0 - E...End-User Computing on AWS with Amazon WorkSpaces and Amazon AppStream 2.0 - E...
End-User Computing on AWS with Amazon WorkSpaces and Amazon AppStream 2.0 - E...
 
How Chick-fil-A Embraces DevSecOps on AWS - SID306 - re:Invent 2017
How Chick-fil-A Embraces DevSecOps on AWS - SID306 - re:Invent 2017How Chick-fil-A Embraces DevSecOps on AWS - SID306 - re:Invent 2017
How Chick-fil-A Embraces DevSecOps on AWS - SID306 - re:Invent 2017
 
DEV305_Manage Your Applications with AWS Elastic Beanstalk.pdf
DEV305_Manage Your Applications with AWS Elastic Beanstalk.pdfDEV305_Manage Your Applications with AWS Elastic Beanstalk.pdf
DEV305_Manage Your Applications with AWS Elastic Beanstalk.pdf
 
IOT311_Customer Stories of Things, Cloud, and Analytics on AWS
IOT311_Customer Stories of Things, Cloud, and Analytics on AWSIOT311_Customer Stories of Things, Cloud, and Analytics on AWS
IOT311_Customer Stories of Things, Cloud, and Analytics on AWS
 
Introduction to the Serverless Cloud
Introduction to the Serverless CloudIntroduction to the Serverless Cloud
Introduction to the Serverless Cloud
 
Design, Build, and Modernize Your Web Applications with AWS
Design, Build, and Modernize Your Web Applications with AWSDesign, Build, and Modernize Your Web Applications with AWS
Design, Build, and Modernize Your Web Applications with AWS
 
NEW LAUNCH! Rapidly Build IoT applications - IOT216 - re:Invent 2017
NEW LAUNCH! Rapidly Build IoT applications - IOT216 - re:Invent 2017NEW LAUNCH! Rapidly Build IoT applications - IOT216 - re:Invent 2017
NEW LAUNCH! Rapidly Build IoT applications - IOT216 - re:Invent 2017
 
DevOps on AWS
DevOps on AWSDevOps on AWS
DevOps on AWS
 
DevOps on AWS
DevOps on AWSDevOps on AWS
DevOps on AWS
 
NEW LAUNCH! AWS PrivateLink: Bringing SaaS Solutions into Your VPCs and Your ...
NEW LAUNCH! AWS PrivateLink: Bringing SaaS Solutions into Your VPCs and Your ...NEW LAUNCH! AWS PrivateLink: Bringing SaaS Solutions into Your VPCs and Your ...
NEW LAUNCH! AWS PrivateLink: Bringing SaaS Solutions into Your VPCs and Your ...
 
Automate and Scale Configuration Management with AWS OpsWorks - DEV331 - re:I...
Automate and Scale Configuration Management with AWS OpsWorks - DEV331 - re:I...Automate and Scale Configuration Management with AWS OpsWorks - DEV331 - re:I...
Automate and Scale Configuration Management with AWS OpsWorks - DEV331 - re:I...
 
DEV326_DevOps Essentials An Introductory Workshop on CICD Practices
DEV326_DevOps Essentials An Introductory Workshop on CICD PracticesDEV326_DevOps Essentials An Introductory Workshop on CICD Practices
DEV326_DevOps Essentials An Introductory Workshop on CICD Practices
 
SID301_Using AWS Lambda as a Security Team
SID301_Using AWS Lambda as a Security TeamSID301_Using AWS Lambda as a Security Team
SID301_Using AWS Lambda as a Security Team
 
Intro To AWS for Mobile Developers: Collision 2018
Intro To AWS for Mobile Developers: Collision 2018Intro To AWS for Mobile Developers: Collision 2018
Intro To AWS for Mobile Developers: Collision 2018
 
Continuous Integration Best Practices (DEV319-R1) - AWS re:Invent 2018
Continuous Integration Best Practices (DEV319-R1) - AWS re:Invent 2018Continuous Integration Best Practices (DEV319-R1) - AWS re:Invent 2018
Continuous Integration Best Practices (DEV319-R1) - AWS re:Invent 2018
 
DEV203_Launch Applications the Amazon Way
DEV203_Launch Applications the Amazon WayDEV203_Launch Applications the Amazon Way
DEV203_Launch Applications the Amazon Way
 
Move Your Virtualized Desktop Apps to the Cloud with Amazon AppStream 2.0 - B...
Move Your Virtualized Desktop Apps to the Cloud with Amazon AppStream 2.0 - B...Move Your Virtualized Desktop Apps to the Cloud with Amazon AppStream 2.0 - B...
Move Your Virtualized Desktop Apps to the Cloud with Amazon AppStream 2.0 - B...
 
DEV322_Continuous Integration Best Practices for Software Development Teams
DEV322_Continuous Integration Best Practices for Software Development TeamsDEV322_Continuous Integration Best Practices for Software Development Teams
DEV322_Continuous Integration Best Practices for Software Development Teams
 

More from Amazon Web Services

Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Amazon Web Services
 
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Amazon Web Services
 
Esegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS FargateEsegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS Fargate
Amazon Web Services
 
Costruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWSCostruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWS
Amazon Web Services
 
Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot
Amazon Web Services
 
Open banking as a service
Open banking as a serviceOpen banking as a service
Open banking as a service
Amazon Web Services
 
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Amazon Web Services
 
OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...
Amazon Web Services
 
Microsoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows WorkloadsMicrosoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows Workloads
Amazon Web Services
 
Computer Vision con AWS
Computer Vision con AWSComputer Vision con AWS
Computer Vision con AWS
Amazon Web Services
 
Database Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatareDatabase Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatare
Amazon Web Services
 
Crea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJSCrea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJS
Amazon Web Services
 
API moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e webAPI moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e web
Amazon Web Services
 
Database Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatareDatabase Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatare
Amazon Web Services
 
Tools for building your MVP on AWS
Tools for building your MVP on AWSTools for building your MVP on AWS
Tools for building your MVP on AWSAmazon Web Services
 
How to Build a Winning Pitch Deck
How to Build a Winning Pitch DeckHow to Build a Winning Pitch Deck
How to Build a Winning Pitch DeckAmazon Web Services
 
Building a web application without servers
Building a web application without serversBuilding a web application without servers
Building a web application without serversAmazon Web Services
 
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...Amazon Web Services
 
Introduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container ServiceIntroduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container Service
Amazon Web Services
 

More from Amazon Web Services (20)

Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
 
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
 
Esegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS FargateEsegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS Fargate
 
Costruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWSCostruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWS
 
Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot
 
Open banking as a service
Open banking as a serviceOpen banking as a service
Open banking as a service
 
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
 
OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...
 
Microsoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows WorkloadsMicrosoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows Workloads
 
Computer Vision con AWS
Computer Vision con AWSComputer Vision con AWS
Computer Vision con AWS
 
Database Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatareDatabase Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatare
 
Crea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJSCrea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJS
 
API moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e webAPI moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e web
 
Database Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatareDatabase Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatare
 
Tools for building your MVP on AWS
Tools for building your MVP on AWSTools for building your MVP on AWS
Tools for building your MVP on AWS
 
How to Build a Winning Pitch Deck
How to Build a Winning Pitch DeckHow to Build a Winning Pitch Deck
How to Build a Winning Pitch Deck
 
Building a web application without servers
Building a web application without serversBuilding a web application without servers
Building a web application without servers
 
Fundraising Essentials
Fundraising EssentialsFundraising Essentials
Fundraising Essentials
 
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
 
Introduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container ServiceIntroduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container Service
 

IOT328_Building an AWS IoT-Enabled Drink Dispenser

  • 1. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. AWS re:INVENT Building an AWS IoT-Enabled Drink Dispenser A n t o n S h m a g i n , A W S – P a r t n e r S o l u t i o n s A r c h i t e c t G a v i n A d a m s , A W S – S o l u t i o n s A r c h i t e c t I O T 3 2 8 N o v e m b e r 2 7 , 2 0 1 7
  • 2. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Workshop Checklist • Please refer to Getting Started sheet • Team up if missing a minimum requirement • AWS Staff • Gavin, Anton, Thomas, Rudy, Chris, and Tim
  • 3. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Workshop Objectives • Team Event • Get comfortable working with hardware • Understanding secure authentication and authorization to AWS IoT • Testing and debugging local code • Familiarity with serverless services for fully integrated IoT solutions
  • 4. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Our Connected Dispenser + =
  • 5. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Dispenser and system features • Dispenser features • Vend drink via air pump motor • Toggle LED • Connect to AWS IoT • System features • Web application for dispenser control • AuthN/AuthZ (scoped access) • Dispense to your device • Send credits to other “production” dispensers
  • 6. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Services Used Dispenser AWS IoT Dispenser shadow User policy action: update Amazon Cognito Amazon API Gateway dispenser Status Amazon S3 DispenserApp Device policy setLed updateStats dispense $aws/shadow/# Web app addCredit dispenser Events
  • 7. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Services Used Dispenser AWS IoT Dispenser shadow User policy action: update Amazon Cognito Amazon API Gateway dispenser Status Amazon S3 DispenserApp Device policy setLed updateStats dispense $aws/shadow/# Web app addCredit dispenser Events
  • 8. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Workshop Activities 1.Build the dispenser 2.Deploy code and test locally 3.Connect to AWS IoT and test remotely 4.Production setup of code 5.Log in and become familiar with the Web application 6.Send credits and share the love
  • 9. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Activity 1 – Build the dispenser • Build Enclosure • Power unit and verify LED active and button activates motor • Now load drink bottle • COMPLETED: Physically assembled
  • 10. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Activity 2 – Test locally • Configure serial connection and flash ESP32 with Mongoose OS app1 which enables local testing • Place cup under dispenser and press on-board button to dispense drink • Based on output, change timing in code, rebuild/deploy and test again • COMPLETED: drink properly dispensed • Tips • Have a cup under hose at all times – things can go wrong at this point • For this test, you can use the Mongoose OS browser UI to change the timing variables, then retest
  • 11. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Activity 3 – Configure and test remotely • From your zip file, move the certificate files to the Mongoose OS app2 directory • Update code with Wi-Fi credentials, build/deploy code • Log into AWS IoT Console and subscribe to shadow topics • Publish shadow update (dispense=DISPREQ) • Verify message echoed on serial debug port for device • Publish shadow update to clear request (dispense=null) • COMPLETED: Ability to publish message to dispenser and see result in device logs
  • 12. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Activity 4 – Production setup • Verify dispenser shadow attributes • Copy certificates to Mongoose OS app3 directory, update Wi-Fi, and deploy • Subscribe to device shadow • From AWS IoT Console publish shadow update to toggle the LED: • Desired state: led=on • Desired state: led=off • COMPLETED: “LED” commands executed and dispenser status update
  • 13. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Activity 5 – Log in to Web application • Enter username and password to log in to Web application • Verify your dispenser details and credit (should be $1.00) appear correctly and dispense button is green • Verify led status matches dispenser (toggle or set if needed) • Press the green ”Dispense” button and verify drink is dispensed, and the amount is debited by $1.00 • COMPLETED: Drink dispensed from application
  • 14. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Activity 6 – Send credits & share the love • For other completed dispensers, enter the dispenser number and press the “Give Credit” button in the app • Verify they see their credit balance increase by $0.25 • Do this until then have a green dispense button and that it works • Walk around the room and buy the world a drink • COMPLETED: Credits given to another attendee’s dispenser
  • 15. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Getting Started • Open your envelope! It contains: • Your unique dispenser ID • A unique short URL to a zip file containing: • Certificate, private key, rootCA • Mongoose OS application code for dispenser • AWS console login URL and credentials • Lab guide helpful links • Web application URL
  • 16. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Getting Started • Cat... Parrot... Dog... What? • Checkpoints and stretch goals • For questions, collaboration is key • For additional assistance, ask any AWS staff in the room
  • 17. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Let’s Get Started!
  • 18. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Workshop Summary • What was covered • Working with IoT hardware • Building on AWS complete workloads • Behind the scenes to monitor and troubleshoot • Takeaways in the future • Be on the lookout: Connected Drink Dispenser
  • 19. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Thank you! P L E A S E R E M E M B E R T O F I L L O U T Y O U R S U R V E Y !