Post on 29-Nov-2014
description
The Internet of Things (IoT)
Jason Kanaris
jasonkanaris@gmail.com
@phantomtypist
Agenda
• What is the Internet of Things?
• Introduction to Basic Microelectronics
• The .NET Micro Framework (NETMF)
• Coding with NETMF (demos)
• Connecting your devices to the Internet
• Interactive Demo
What is the Internet of Things (IoT)?
• There is no clear definition of what the “things” are.• Billions and billions of devices by 2020.• Predicted $8+ trillion dollar market by 2020.
Examples of IoT
Nest Thermostat Nest Smoke Detector
Examples of IoT
Samsung Refrigerator Global Radiation Monitoring
Introduction to Basic Microelectronics
Don’t burn down your house!
Basic components
Datasheets• How to Read Datasheets: https://www.sparkfun.com/tutorials/223
Analog vs. Digital Signals
Analog
Digital
Interfacing with the Physical World
• GPIO (General Purpose Input / Output)
• Digital I/O
• Interrupts
• Analog Input
• PWM (Pulse Width Modulation)
• Communications Protocols/Interfaces
• SPI (Serial Peripheral Interface) – 3 to 4 wires
• I2C (Inter-Integrated Circuit) – 2 wires
• CAN (Controller Area Network)
• One Wire – 1 wire
• UART – 2 wires
Arduino
http://www.arduino.cc/
Shields
http://shieldlist.org/
The Importance of Watchdog Timers
SECURE
and
ENCRYPT
ALL communications!
The .NET Micro Framework Origins
• Microsoft Research created the Smart Personal Object Technology (SPOT) between 2001 and 2004.• First products used in:
The .NET Micro Framework (NETMF)
• NETMF was released in 2009.
• Free and open-source.
• Consists of a subset of the .NET Framework.
• Versions NOT in sync with the other .NET Framework versions.
• Garbage collection
• Threading
Working with NETMF
• You can use either C# or VB.NET.
• Support for Visual Studio 2010 and 2012.
• Beta support for Visual Studio 2013.
• Debugging on hardware (breakpoints, stepping into code, etc.)
• The runtime itself fits in as little as 64KB.
• Working within tight constraints:
• Available code storage (flash memory) as little as 64KB.
• Available RAM as little as 42KB.
NETMF Hardware Types (Arduino form-factor)
Netduino Plus 2FEZ Cerbduino
NETMF Hardware Types (Gadgeteer / GoBus)
Netduino GoFEZ Cerberus
NETMF Hardware Manufacturers
• GHI Electronics (https://www.ghielectronics.com/)
• The Mountaineer Group (http://www.mountaineer.org/)
• Secret Labs (http://netduino.com/)
Coding with NETMF
DEMO
Connecting Your Devices
to the Internet
Sample Architecture
GatewayDevice
IoT Devices
Internet IoT Back-end
Possible Gateway Devices
• PC or Server• Raspberry Pi
• Mono• NodeJS• Python
• Intel Galileo• Intel Edison
Interactive Demo
Resources (Learning Microelectronics)
• SparkFun:
• https://learn.sparkfun.com/
• https://learn.sparkfun.com/tutorials/tags/concepts
• Adafruit: https://learn.adafruit.com/
• All About Circuits: http://www.allaboutcircuits.com
• How to Solder: http://www.aaroncake.net/electronics/solder.htm
• Bildr: http://bildr.org/
Resources (Starter Kits)
• SparkFun Inventor’s Kit• https://www.sparkfun.com/products/12001
• Adafruit Arduino Starter Kit• http://www.adafruit.com/products/68
Resources (Hardware)
• SparkFun Electronics: www.sparkfun.com• Adafruit Industries: www.adafruit.com• Digi-Key: www.digikey.com• Arduino Shield List: www.shieldlist.org• Mouser: www.mouser.com• Jameco: www.jameco.com• TinyCLR: www.tinyclr.com/hardware• Solarbotics: www.solarbotics.com• DFRobot: www.dfrobot.com• Parallax: www.parallax.com• Arduino: www.arduino.cc
Questions?