Did you know that Windows 10 can run on a $35 Raspberry Pi 2 (or 3) single-board computer? Makers have taken the world by storm, creating countless gadgets and automated systems, connecting everything around them. This session is for makers – neophytes and veterans alike – who want to explore the capabilities of Windows 10 IoT Core to build hacks based on the Universal Windows Platform (UWP), basically attaching electronic sensors and outputs to their Windows 10 apps. We’ll learn about the tools, how to get started, what hardware you’ll need, and how to build your first Windows hardware project on the Raspberry Pi. Take your maker projects to the next level, and come learn valuable skills to prepare and extend your developer skills for the Internet of Things (IoT).
Exploring the Future Potential of AI-Enabled Smartphone Processors
Hacking with the Raspberry Pi and Windows 10 IoT Core
1. HACKING WITH THE
RASPBERRY PI AND
WINDOWS 10 IOT CORE
B u i l d i n g U n i v e r s a l W i n d o w s A p p s &
G a d g e t s f o r t h e I n t e r n e t o f T h i n g s
Nick Landry
Senior Technical Evangelist - Microsoft
AgeofMobility.com
github.com/ActiveNick
@ActiveNick
2. A G E N D A
• Quick Recap: What is the Internet of Things?
• Hardware: Raspberry Pi Overview
• Windows 10 IoT Core
• Universal Windows Platform (UWP)
• Live demos!
• Cloud connectivity & Azure IoT Hubs
• Tons of resource links to get you started
• Open discussion
8. R A S P B E R R Y P I
• Full single-board computer with SoC
• Average cost: $30 to $45
• Model A, A+, B, B+ and Raspberry Pi 2 & 3
• Runs Linux – flavor of Debian
called Raspbian
• http://www.raspbian.org
• Huge accessory selection
• Programmable
• Python
• C# (Mono), etc.
• 5+ million units sold in first 3 years
of manufacture, technically the
largest computer manufacturer in UK!
9. N E W W I N D O W S , N E W D E V I C E S
• Windows 10 IoT Core on the Raspberry Pi 2 & 3 (and other devices)
• http://dev.windows.com/iot
10. T H E J O U R N E Y T O O N E W I N D O W S …
IoT
HoloLens
Surface Hub
Windows Desktop
Windows Phone
Xbox
ONE CORE OS
ONE APP PLATFORM
ONE STOREWindows 10
11. O N A F U L L R A N G E O F D E V I C E S …
Windows 10
Phone Small Tablet
2-in-1s
(Tablet or Laptop)
Desktops
& All-in-OnesPhablet Large Tablet
Classic
Laptop
Xbox
IoT
Surface Hub
Holographic
12. T U N E D T O E A C H F O R M FA C T O R …
One Core OS
Base OS
App and Device platform
Runtimes and frameworks
Windows
for …
Form factor–appropriate
shell experience
Device-specific scenario
support
Windows
for phones
Familiar mobile shell
Rich telephony
Windows phone app
compatibility
Windows
for PCs
Familiar desktop shell
Broad hardware ecosystem
Windows desktop application
compatibility
Windows
on Xbox
10’ shell experience
Shared gaming experiences
Xbox One
game and app compatibility
13. W I T H A U N I V E R S A L A P P P L AT F O R M . . .
Languages
• C++ /CX
• C#, VB
• JS
• More
APIs
• WinRT/UWP
• Win32
• .NET
• Wiring
Deployment and
Execution
• APPX
• Xcopy
• App Isolation
UI Frameworks
• HTML
• Xaml
• DirectX
14. A N D S O M E P R E T T Y C O O L D E V I C E S …
15. … A N D O P T I O N S T O G R O W / E X PA N DWindows10IoTCore
• UWP
• Headed or
Headless
• Single user
• Single app
Windows10IoTCorePro
• Same as
IoT Core
• For OEMs
& ODMs
• Defer
updates
Windows10IoTMobile
• UWP
• Handheld
• Roles and
identities
• Multiple
apps
Windows10IoTEnterprise
• UWP
• Win32
• Headed or
Headless
• Roles and
identities
• Multiple
Win32 and
UWP apps
Additional
• .Net Micro
Framework
• Windows
Embedded
Compact
16. U N I V E R S A L W I N D O W S P L AT F O R M
( U W P )
• One Operating System
• One Windows core for all devices
• One App Platform
• Apps run across every family
• One Dev Center
• Single submission flow and dashboard
• http://dev.windows.com
• One Store
• Global reach, local monetization
Consumers, Business & Education
17. W I N D O W S C O R E
• The refactored common core
• One hardware platform
• Universal hardware driver
• Standard network and I/O
• 86% of all UWP APIs shared
across all Windows 10 SKUs
Phone
Device
IoT
Device
Desktop
Device
Windows Core
Desktop
SKU
Phone
SKU
IoT
SKU
18. Windows 10
Operating System
Bridging technologies
Win32
desktop
Web
hosted
Obj.C
iOS
Universal Windows Platform
WinJSC++
& CX
.Net
languages
HTML
DirectX
XAML
C++
.Net
languages
MFCWFWPF
.Net
runtime
19. I N S TA L L I N G W I N D O W S 1 0 O N A
R A S P B E R R Y P I
• Watch Episode 5 of The Maker Show
• https://channel9.msdn.com/Shows/themakershow/5
• Full video walkthrough with Kenny Spade
21. SPI: Higher speed, fewer available
I2C: Lower speed, more available
GPIO: DIY communication
E L E C T R I C A L E N G I N E E R I N G F O R
S O F T W A R E E N G I N E E R S
22. R A S P B E R R Y P I 2 ( & 3 ) P I N M A P P I N G
23. G P I O
• General Purpose Input Output
• Pin that can be controlled by the user
• Can be set to input or output
• Input can be things like temperature sensors, buttons, IR etc
• Output can be LEDs, Motors, LCDs etc
24. A N A L O G V S . D I G I TA L
• Computers understand digital signals
• Analog needs to be converted (ADC)
• Analog input covers voltage levels into a digital value within a
defined range
• Digital is counted in fixed units, not measured.
• PWM – Pulse Width Modulation – to “fake”analog
• Serial Communication with Rx/Tx
25. L E D S
Long Leg Short Leg
Small Post Big Post
Flat Edge
Vcc (+) GND
Anode (+) Cathode (-)
26. B R E A D B O A R D S
Breadboards offer a great way to
prototype circuits. The provide a
number of “buses” for connecting
both power and components.
Power buses run the entire
horizontal length
Component buses give you easy
ways to connect pins together
28. A B O U T T H E F E Z H AT
• On-Board Analog Input and PWM
chips
• Two DC Motor Drivers, suitable for
building small robots
• Terminal Blocks for wiring in DC
motors without the need for
soldering
• Two Servo Motor Connections
• Single Red LED
• Two Multi Color LEDs, connected
to PWM for thousands of colors
• Light Sensor
• Accelerometer
• Temperature Sensor
• Two user buttons
• Terminal block with 2x Analog, 2x
Digital I/O, 2x PWM and power
• Female headers with SPI, I2C, 3x
Analog, 3x PWM
• Dedicated power input for driving
the servo motors and DC motors
https://www.ghielectronics.com/catalog/product/500
29. DEMO
Hacking UWP Apps with the Raspberry Pi
FEZ HAT
https://www.ghielectronics.com/catalog/product/500
30. HOW DO I MAKE A
CONNECTED GADGET?
What are the networking protocols and
standards that make this work?
Where should I save all the data I collect?
31. C O N N E C T I N G T H I N G S T O T H E C L O U D
32. M I C R O S O F T A Z U R E I O T S E R V I C E S
Devices Device Connectivity Storage Analytics Presentation & Action
Event Hub SQL Database
Machine
Learning
App Service
IoT Hub
Table/Blob
Storage
Stream Analytics Power BI
Service Bus DocumentDB HDInsight
Notification
Hubs
External Data
Sources
3rd party
Databases
Data Factory Mobile Services
Data Lake BizTalk Services
{ }
33. C U S T O M I Z E P R E - C O N F I G U R E D A Z U R E
I O T S U I T E S O L U T I O N S
Finish with your Internet of Your Things solutionStart quickly with pre-configured solutions
Modify existing rules and alerts
Fine-tuned to specific assets and processes
Integrate with back-end systems
Highly visual for your real-time operational data
Get started in minutes
Add your devices and begin trailering to your needs
34. M I C R O S O F T A Z U R E I O T S U I T E
C O M P O N E N T S
Azure IoT Suite
IoT Hub
Devices &
Gateways
Add-On Services
Event Hubs Worker role Storage blob
DocumentDB
Notification
Hubs
Web/Mobile App
Stream Analytics
Logic App
Azure
Active Directory
Azure Key Vault
BizTalk Services
Power BI
ASA Anomaly
Detection
Machine
Learning
HDInsight
Advanced Analytics Services
35. RESOURCES
How do I get started? What should I buy? Any good tutorials out there?
36. T H E M A K E R S H O W
Weekly Channel 9 show makers, hackers,
builders and disassemblers
Hands-on demos and know-how,
by makers for makers
http://themakershow.io
Follow @TheMakerShow
37. W H E R E T O B U Y M A K E R S T U F F ?
• Sparkfun (www.sparkfun.com)
• Adafruit (www.adafruit.com)
• Maker Shed (www.makershed.com)
• Mouser Electronics (www.mouser.com)
• Netgate (www.netgate.com)
• Amazon (www.amazon.com)
• Radio Shack (www.radioshack.com)
• The retail stores are perfect when you need parts urgently
38. M A K E M A G A Z I N E
• Makezine.com
• Print & Digital
40. M A K E R R E S O U R C E S
• MS IoT GitHub (https://github.com/ms-iot/samples)
• Hackster (https://microsoft.hackster.io)
• HackADay (www.hackaday.com)
• Instructables (www.instructables.com)
• CreativeApplications (www.creativeapplications.net)
• Watch Episode 0 of The Maker Show:
”Meet Your Makers”
• http://themakershow.io
41. M A K E R C O M M U N I T I E S
• Reddit
• https://www.reddit.com/r/maker
• https://www.reddit.com/r/DIY
• Stack Exchange – Electronics
• http://electronics.stackexchange.com
42. M A K E R B O O K S ?
Maker Media (O’Reilly)
http://shop.oreilly.com/category/publishers/make.do
Packt Publishing
https://www.packtpub.com/hardware-and-creative
43. A R D U I N O P R O J E C T H A N D B O O K
• https://arduinohandbook.wordpress.com
44. F R I T Z I N G : E L E C T R O N I C D I A G R A M M I N G
• http://fritzing.org
• Open-source hardware initiative
that makes electronics accessible
as a creative material for anyone
• Software tool
• Community website
• Services
• Foster a creative ecosystem
• Allow user to document their
prototypes & share with others
• Teach electronics in classrooms
• Layout and manufacture
professional pcbs
45. M I C R O S O F T V I R T U A L A C A D E M Y
• Programming Robotic Systems with Visual Studio
• With Chris Howd & Paul Pardi, Microsoft
• Course Outline
• 01 | Embedded Systems, Robotics, and this MVA Training Series
• 02 | Getting Started with Arduino
• 03 | Creating Your First Arduino Robot
• 04 | Controlling a Robotic Arm
• 05 | Integrating Advanced Sensors and Shields
• 06 | Mapping Areas and Detecting Objects
• 07 | Integrating Wireless Control and Communication
• 08 | Looking Ahead
• http://www.microsoftvirtualacademy.com/training-courses/programming-
robotic-systems-with-visual-studio
46. M I C R O S O F T D X I O T R E S O U R C E L I N K S
• Bret Stateham
• https://github.com/bretstateham/iot
• Jeremy Foster: Intel Edison
• http://codefoster.com/edison
• Stacey Mulcahy
• http://thebitchwhocodes.com/blog
• Paul de Carlo
• http://pjdecarlo.com
• Nick Landry
• http://AgeofMobility.com
47. I O T PA N E L AT T H I N G S E X P O 2 0 1 4
• Microsoft, IBM, Kaazing, Xively/LogMeIn & Aria
• http://aka.ms/iotpanel2014
50. T H A N K Y O U !
Slides are posted on Slideshare. Demos are on GitHub.
Please fill out an evaluation. Your feedback is important and appreciated.
Slideshare: www.slideshare.net/ActiveNick
Blog: www.AgeofMobility.com
Twitter: @ActiveNick
Mobile Apps: www.bigbaldapps.com
LinkedIn: www.linkedin.com/in/activenick
GitHub: github.com/ActiveNick
Email: nick.landry@microsoft.com