10. Raspberry Pi 3* Raspberry Pi 2 MinnowBoard
MAX
DragonBoard 410c Intel Joule
$35 $35 $99 $75 $315
Broadcom BCM2837 Broadcom
BCM2836
Intel Atom (x86) Qualcomm Snap
Dragon 410
Intel Atom (x86)
900MHz Quad-Core
ARM Cortex A53
900MHz Quad-Core
ARM Cortex A7
1.91GHz Atom
E3845
900MHz Quad-Core
ARM Cortex A7
1.7 GHz Quad-Core
Atom
On-board WiFi** &
Bluetooth**
Firmware TPM On-board WiFi* &
Bluetooth & GPS
WiFi
IoT Core Boards
11. • System On Chip
• Operating System (Multitasking)
• USB (Mouse, Keyboard)
• HDMI / GPU
• Internet Connected
Arduino
• Microcontroller
• Single Program
• ~$2
Raspberry Pi
12. Linux vs Windows IoT
• Automatic Updates
• Identity Protection
• Trusted Platform
Module (TPM)*
• Native UEFI*
• BitLocker*
• Enterprise Data
Protection
• Azure IoT Hub
• Azure Iot Suite
• SignalR
• AllJoyn
• Http
• Visual Studio
• UWP
• Remote Desktop
• Language Support
• C#
• Python
• JavaScript
• Arduino C + Arduino
Libraries
• Learning Curve
Security Connectivity Ecosystem
*Only on MinnowBoard Max and Qualcomm DragonBoard
26. Part 2: How
• Stuff You Need
• Device Setup
• Dev Environment Setup
• Hello World
27. Things To Install
• Visual Studio (Any Edition)
• Universal Windows App Development Tools
• Windows IoT Core Project Templates
• https://visualstudiogallery.msdn.microsoft.com/55b35
7e1-a533-43ad-82a5-a88ac4b01dec
• Enable Developer Mode
33. AllJoyn
• P2P, Discoverable
• Open Source Standard
• Core component in Windows 10
• https://allseenalliance.org/
AllJoyn
Consumer
Discoverability
2-way Communication
AllJoyn
Producer
34. Web Browser
or Any App
HTTP
Web Server on Pi
• P2P Communication
• Headless
• Also available via Node
Background
App
37. Web Server Demo
• Headless Background Task
• Open Firewall
• Log in with Powershell
http://ms-iot.github.io/content/en-US/win10/samples/PowerShell.htm
• netsh advfirewall firewall add rule name=[Any name
to identify rule] dir=in action=allow protocol=TCP
localport=[Port number]
38. PWM
See Also: How to Fade an LED with PWM at http://blog.infernored.com or http://www.leerichardson.com
39. 1. Lightning Driver
2. Lightning SDK (Microsoft.Iot.Lightning)
3. Permissions
xmlns:iot="http://schemas.microsoft.com/
appx/manifest/iot/windows10"
<iot:Capability Name="lowLevelDevices" />
<DeviceCapability Name="109b86ad-f53d-4b76-aa5f-821e2ddf2141"/>
if (LightningProvider.IsLightningEnabled) {
LowLevelDevicesController.DefaultProvider =
LightningProvider.GetAggregateProvider();
var pwmControllers =
await PwmController.GetControllersAsync(LightningPwmProvider.GetPwmProvider());
var pwmController = pwmControllers[1]; // use the on-device controller
pwmController.SetDesiredFrequency(50); // try to match 50Hz
_pin = pwmController.OpenPin(22);
_pin.SetActiveDutyCyclePercentage(.25);
_pin.Start();
}
4. Code
40. Part 5: RC Car
• Prototyped
• 3D Printed Components
• Custom PCB Board
• Designed with Eagle -
http://www.cadsoftusa.com/
• Printed at OSH Park -
https://oshpark.com/
• Plans on Github
• http://www.github.com/lprichar/IotRcCar
Hi, I’m Lee Richardson. I’ve been developing and consulting in the DC area for nearly 2 decades now. I’m going to open with a secret.
I love .Net. I’ve been developing with it since it was released in 2001 and have been watching with pride as it has grown and gotten more and more awesome.
As much as I like TypeScript and F# .Net is my first love.
Which is why I love my day job which is consulting for Inferno Red, writing cross platform iOS and Androids apps in Xamarin. I get to work from home and annually they pay to send the entire company to Build. It’s a great company, they’re a gold sponsor, and they’re always looking for great talent.
However, I’m also a maker. That’s my second love. In my spare time I like to fiddle with things that interact with the real world.
For instance I make and sell sirens.
You connect them up to your build server, and when the build breaks the lights flash and the speaker goes: wah wah wah. That’s Siren of Shame and it’s powered by an Atmel chip which is what runs Arduinos.
And this is what I love about Windows IoT. It combines two things that don’t traditionally work very well together.
The motor shown here, btw they showed at build this year. It’s a closed loop motor that will increase power to maintain RPM’s. It’s written in Windows IoT and .Net, which is really cool.
Windows IoT is an operating system. It comes in 3 editions ^.
The one most people will care about is Iot Core because it’s free.
Cost: you’re probably thinking it’s free right up until you start making money or something. Not so, you can
So if you aren’t being forced to, why would you pay money?
The better shell; and
Deferrable updates
I’ve highlighted some of the reasons you might want to use different boards.
You may notice there’s one board conspicuously absent. Where’s the Arduino?
Windows IoT doesn’t run on Arduino because Arduino doesn’t run an operating system.
You can get a case if you want to, but …
Because if you can’t laugh at yourself, then that just means people are laughing at you.
The latest Windows IoT bits do not have a driver for Raspberry Pi 3’s built in wifi or Bluetooth. They promise they will soon.
Hi, I’m Lee Richardson. I’ve been developing and consulting in the DC area for nearly 2 decades now. I’m going to open with a secret.