Windows for Makers: Raspberry Pi, Arduino & IoT
Transcript of Windows for Makers: Raspberry Pi, Arduino & IoT
Visual Studio Live! Redmond 2016
W03 - Windows for Makers: Raspberry Pi, Arduino & IoT - Nick Landry
Windows for Makers:
Raspberry Pi, Arduino & IoT
Nick Landry
Senior Technical Evangelist - Microsoft
AgeofMobility.com
github.com/ActiveNick
@ActiveNick
AGENDA
• Quick Recap on the Internet of Things (IoT)
• Quick Recap on Universal Windows Platform (UWP)
• Electronics Fundamentals for Software Engineers
• Live demos: Windows 10 IoT Core on Raspberry Pi
• Tons of resource links to get you started
• Questions
Visual Studio Live! Redmond 2016
W03 - Windows for Makers: Raspberry Pi, Arduino & IoT - Nick Landry
IOT MARKET RECAPWhy should you care about all of this?
I O T 2 0 1 0
Visual Studio Live! Redmond 2016
W03 - Windows for Makers: Raspberry Pi, Arduino & IoT - Nick Landry
I O T 2 0 1 6
I O T M A R K E T G R O W T H
Explosion in Devices and Data
1 ISS Connected Device Market Sizing. Analyst estimates range from 22-75B connected devices by 2020.2 Digital Universe Forecast. IDC, April 2014
Worldwide Connected Devices Worldwide Data Created
Visual Studio Live! Redmond 2016
W03 - Windows for Makers: Raspberry Pi, Arduino & IoT - Nick Landry
1970 1980 1990 2000 2010
10,000,000,000
1,000,000,000
100,000,000
10,000,000
1,000,000
100,000
10,000
1,000
Transistors
Moore’s LawMoore’s LawMoore’s LawMoore’s Law Metcalf‘s LawMetcalf‘s LawMetcalf‘s LawMetcalf‘s Law
D I S R U P T I V E F O R C E S
And more importantly: What can you do by combining and analyzing signals from all of these IoT devices?
Koomey’sKoomey’sKoomey’sKoomey’s LawLawLawLaw
1.E+14
1.E+12
1.E+10
1.E+08
1.E+06
1.E+04
1.E+02
1.E+00
Computations per KWh
1940 20101975
I O T I S T H E N E X T R E V O L U T I O N
Connectivity is Pervasive
Development is Easy
Hardware is Cheap
New Innovative Scenarios
Visual Studio Live! Redmond 2016
W03 - Windows for Makers: Raspberry Pi, Arduino & IoT - Nick Landry
M I C R O S O F T I OT
Comprehensive solutions from device to cloud
IoT Editions Power IoT Editions Power IoT Editions Power IoT Editions Power a Broad Range of Devicesa Broad Range of Devicesa Broad Range of Devicesa Broad Range of Devices
25 years of history in embedded devices
One Windows platform for all devices
Enterprise-ready, OEM-ready, Maker-friendly
Designed for today’s IoT environments
Scalable solutions from free Windows IoT Core to
Windows IoT Enterprise on PC-Like Devices
CloudCloudCloudCloud----Based IoT Services & SolutionsBased IoT Services & SolutionsBased IoT Services & SolutionsBased IoT Services & Solutions
Easy to provision, use and manage
Pay as you go, scale as you need
Global reach, hyper scale
End-to-end security & privacy
Windows, Mbed, Linux, iOS, Android, RTOS support
Azure IoT
A Z U R E I O T S U I T E
Business Business Business Business ProcessProcessProcessProcess
ERP/CRMEvent Hub
Storage Blobs DocumentDB
Web App
Stream Analytics Logic Apps
Azure
Active Directory
IoT Hub Web Jobs
DevicesDevicesDevicesDevicesAzure IoT SDK (OSS)
Linux, RTOS, mBed, Windows, Android, iOS
Visual Studio Live! Redmond 2016
W03 - Windows for Makers: Raspberry Pi, Arduino & IoT - Nick Landry
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 yearsof manufacture, technically thelargest computer manufacturer in UK!
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
Visual Studio Live! Redmond 2016
W03 - Windows for Makers: Raspberry Pi, Arduino & IoT - Nick Landry
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
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 TabletClassic
Laptop
Xbox
IoT
Surface Hub
Holographic
Visual Studio Live! Redmond 2016
W03 - Windows for Makers: Raspberry Pi, Arduino & IoT - Nick Landry
T U N E D T O E A C H F O R M F A C T O R …
One Core OS
Base OS
App and Device platform
Runtimes and frameworks
Windows
for …
Form factor–appropriateshell experience
Device-specific scenario support
Windows
for phonesFamiliar 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
W I T H A U N I V E R S A L A P P P L AT F O R M . . .
LanguagesLanguagesLanguagesLanguages
• C++ /CX
• C#, VB
• JS
• More
APIsAPIsAPIsAPIs
• WinRT/UWP
• Win32
• .NET
• Wiring
Deployment and Deployment and Deployment and Deployment and ExecutionExecutionExecutionExecution
• APPX
• Xcopy
• App Isolation
UI FrameworksUI FrameworksUI FrameworksUI Frameworks
• HTML
• Xaml
• DirectX
Visual Studio Live! Redmond 2016
W03 - Windows for Makers: Raspberry Pi, Arduino & IoT - Nick Landry
A N D S O M E P R E T T Y C O O L D E V I C E S …
… A N D O P T I O N S T O G R O W / E X PA N D
Windows 10 IoT Core • UWP
• Headed or
Headless
• Single user
• Single app
Windows 10 IoT Core Pro • Same as
IoT Core
• For OEMs
& ODMs
• Defer
updates
Windows 10 IoT M
obile
• UWP
• Handheld
• Roles and
identities
• Multiple apps
Windows 10 IoT Enterprise • UWP
• Win32
• Headed or
Headless
• Roles and
identities
• Multiple Win32 and
UWP apps
Additional
• .Net Micro
Framework
• Windows
Embedded
Compact
Visual Studio Live! Redmond 2016
W03 - Windows for Makers: Raspberry Pi, Arduino & IoT - Nick Landry
U N I V E R S A L W I N D O W S P L AT F O R M
( UWP )
• 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
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
DesktopDevice
Windows Core
DesktopSKU
PhoneSKU
IoTSKU
Visual Studio Live! Redmond 2016
W03 - Windows for Makers: Raspberry Pi, Arduino & IoT - Nick Landry
Windows 10
Operating System / Kernel
Bridging technologies
Win32
Desktop
aka
“Centennial”
Web
Hosted
aka
“Westminster”
Obj.CiOS
aka
“Islandwood”
Universal Windows Platform
WinJSC++
& CX
.Net
languages
HTML
DirectX
XAML
C++
.Net
languages
MFCWFWPF
.Net
runtime
Win32
W I N D O W S 1 0 I O T C O R E
App owns the whole user interface. Optimized for embedded use.
Deployment and debugging in Visual Studio.
Development-time management through web site, PowerShell, SSH, and more.
Visual Studio Live! Redmond 2016
W03 - Windows for Makers: Raspberry Pi, Arduino & IoT - Nick Landry
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
Visual Studio Live! Redmond 2016
W03 - Windows for Makers: Raspberry Pi, Arduino & IoT - Nick Landry
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
R A S P B E R R Y P I 2 ( & 3 ) P I N M A P P I N G
Visual Studio Live! Redmond 2016
W03 - Windows for Makers: Raspberry Pi, Arduino & IoT - Nick Landry
DEMOHello World Hello World Hello World Hello World –––– Maker Edition withMaker Edition withMaker Edition withMaker Edition with
Windows 10 IoT CoreWindows 10 IoT CoreWindows 10 IoT CoreWindows 10 IoT Core
D E M O S E T U P
Direct wired Ethernet
for Deploy/DebugWiFi for cloud
connectivity to Azure (optional)
Visual Studio Live! Redmond 2016
W03 - Windows for Makers: Raspberry Pi, Arduino & IoT - Nick Landry
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
DEMOHacking UWP Apps with the Raspberry PiHacking UWP Apps with the Raspberry PiHacking UWP Apps with the Raspberry PiHacking UWP Apps with the Raspberry Piand the FEZ HAT from GHI Electronicsand the FEZ HAT from GHI Electronicsand the FEZ HAT from GHI Electronicsand the FEZ HAT from GHI Electronics
https://www.ghielectronics.com/catalog/product/500
Visual Studio Live! Redmond 2016
W03 - Windows for Makers: Raspberry Pi, Arduino & IoT - Nick Landry
A R D U I N O A N D W I N D O W S 1 0
• Arduino and Windows 10 work together to help you make amazing projects
• Support for Arduino Uno and Mega, as well as the new Arduino 101
• https://developer.microsoft.com/en-us/windows/iot/win10/arduinoandwindows10
RESOURCESHow do I get started? What should I buy? Any good tutorials out there?
Visual Studio Live! Redmond 2016
W03 - Windows for Makers: Raspberry Pi, Arduino & IoT - Nick Landry
B U I L D I O T L A B M O D U L E S
(concurrent with Module 3)
(concurrent with Module 2)
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
Visual Studio Live! Redmond 2016
W03 - Windows for Makers: Raspberry Pi, Arduino & IoT - Nick Landry
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
A Z U R E I O T S TA R T E R K I T S
http://azure.com/iotstarterkits
Visual Studio Live! Redmond 2016
W03 - Windows for Makers: Raspberry Pi, Arduino & IoT - Nick Landry
M A K E M A G A Z I N E
• Makezine.com
• Print & Digital
www.windowsondevices.com
Projects powered by hackster.io https://microsoft.hackster.io
Check out the MS IoT GitHub for
more Windows IoT Core samples:https://github.com/ms-iot/samples
2 5 0 + M A K E R P R O J E C T S T O T R Y O U T
Visual Studio Live! Redmond 2016
W03 - Windows for Makers: Raspberry Pi, Arduino & IoT - Nick Landry
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
M A K E R C O M M U N I T I E S
• https://www.reddit.com/r/maker
• https://www.reddit.com/r/DIY
• Stack Exchange – Electronics
• http://electronics.stackexchange.com
Visual Studio Live! Redmond 2016
W03 - Windows for Makers: Raspberry Pi, Arduino & IoT - Nick Landry
M A K E R B O O K S ?
Maker Media (O’Reilly)Maker Media (O’Reilly)Maker Media (O’Reilly)Maker Media (O’Reilly)http://shop.oreilly.com/category/publishers/make.do
Packt PublishingPackt PublishingPackt PublishingPackt Publishinghttps://www.packtpub.com/hardware-and-creative
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
Visual Studio Live! Redmond 2016
W03 - Windows for Makers: Raspberry Pi, Arduino & IoT - Nick Landry
F R I T Z ING : 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
M I C R O S O F T V I R T U A L A C A D E M Y
• Getting Started with the Internet of Things (IoT)• With Pete Brown, Tony Goodhew, Mat Velleso – Microsoft
• Course Outline
• 01 | Introduction to IoT• 02 | Windows 10 and Universal Windows Platform Apps• 03 | Introduction to Windows 10 IoT Core• 04 | Introduction to Azure Services for IoT • 05 | Azure IoT Hub and Device Communications• 06 | Running Arduino Wiring Code on Windows 10 IoT Core• 07 | Creating Node.js Apps for Windows 10 IoT Core• 08 | Windows Remote Arduino and Virtual Shields
• https://mva.microsoft.com/en-US/training-courses/getting-started-with-the-internet-of-things-iot-16170
Visual Studio Live! Redmond 2016
W03 - Windows for Makers: Raspberry Pi, Arduino & IoT - Nick Landry
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
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
Visual Studio Live! Redmond 2016
W03 - Windows for Makers: Raspberry Pi, Arduino & IoT - Nick Landry
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
HAVE FUN!Go build something…
Visual Studio Live! Redmond 2016
W03 - Windows for Makers: Raspberry Pi, Arduino & IoT - Nick Landry
P L E A S E H A C K S A F E L Y !
T H A N K Y O U !
Slides are posted in the conference repository. Demos are on GitHub.Please fill out an evaluation. Your feedback is important and appreciated.
Slideshare:Slideshare:Slideshare:Slideshare: www.slideshare.net/ActiveNick
BlogBlogBlogBlog:::: www.AgeofMobility.com
Twitter:Twitter:Twitter:Twitter: @ActiveNick
Mobile Apps: Mobile Apps: Mobile Apps: Mobile Apps: www.bigbaldapps.com
LinkedIn: LinkedIn: LinkedIn: LinkedIn: www.linkedin.com/in/activenick
GitHubGitHubGitHubGitHub: : : : github.com/ActiveNick
Email: Email: Email: Email: [email protected]