introduction to internet of things hardware

36
Introduction to IoT Hardware 2015, Daniel Eichhorn http://blog.squix.ch

Upload: daniel-eichhorn

Post on 18-Jul-2015

666 views

Category:

Engineering


3 download

TRANSCRIPT

Page 1: Introduction to Internet of Things Hardware

Introduction to

IoT Hardware

2015, Daniel Eichhorn

http://blog.squix.ch

Page 2: Introduction to Internet of Things Hardware

Today’s Goals

You know...

● what IoT stands for

● that Raspberry Pi is sweet but not a cake;-)

● where to start to build your own smart things

Page 3: Introduction to Internet of Things Hardware

Internet of Things = Smart Things?

Page 4: Introduction to Internet of Things Hardware

„Internet of Things“ von SRI Consulting Business Intelligence/National Intelligence Council - Apendix F of Disruptive Technologies Global Trends 2025 page

1 Figure 15 (Background: The Internet of Things).

Page 5: Introduction to Internet of Things Hardware

Cool future!

But what about today?

Page 6: Introduction to Internet of Things Hardware

IoT Hardware - Components

● Microcontroller (MCU, CPU)

● Storage (flash, EEPROM, ...)

● Power supply (batteries, adapter, solar)

● I/O: interface to the world○ General Purpose Input Output (GPIO)

○ Analog/ Digital converter (ADC)

● Connectivity (serial, ethernet, wifi…)

Page 7: Introduction to Internet of Things Hardware

IoT - Periphery

Sensors

Actors

Complex

Acoustic/ Visual

Page 8: Introduction to Internet of Things Hardware

Arduino Platform

● Born in 2005

● Combines SW/HW

● Great for prototyping

● Popular for artists

● Italian origin

Page 9: Introduction to Internet of Things Hardware

Popularity - Italian exports compared

Source: Google Trends

Page 10: Introduction to Internet of Things Hardware

Arduino Hardware

● Atmel AVR MCU

● Open-Source

HW/SW

● Digital I/O, ADC

● Std. Form factor:

extensions (shields)

● Easy programming

Page 11: Introduction to Internet of Things Hardware

Arduino Hardware - Flavours

Page 12: Introduction to Internet of Things Hardware

Arduino - Common denominator

● Family of MCUs

● Programmable

● ~$2

● DIL, SMD

Page 13: Introduction to Internet of Things Hardware

Arduino - Shields

● Wifi

● Displays

● Prototyping

● Motor drivers

● Build your own...

Page 14: Introduction to Internet of Things Hardware

Arduino Programming

● C/C++

● Many libraries for I/O

● 1 Click compile/upload

● Java based IDE

Page 15: Introduction to Internet of Things Hardware

Arduino.cc - Starting point

Page 16: Introduction to Internet of Things Hardware

Summary Arduino

Con:

● Wireless

Connectivity

● Limited processing

power

Pro:

● Relatively Cheap

● Easy to programm

● Good I/O Interface

● Standard formfactor

● Good for prototyping

● Many extensions available (shields)

Page 17: Introduction to Internet of Things Hardware

Raspberry Pi

● Single Board PC

● ARM based

● Var. Linux Distribs

● HDMI, Composite,

USB, GPIO, Audio

● ~$35

● System on SD Card

Page 18: Introduction to Internet of Things Hardware

Popularity - British exports compared

Source: Google Trends

Page 19: Introduction to Internet of Things Hardware

Raspberry Pi - Applications

Multimedia PC - Kodi Retro Game Console - Aracade Pi Schools - Scratch

Processing Cluster

(Lego frame)ADS-B Flight Tracker - PiAware “Wearable” Computing”

Page 20: Introduction to Internet of Things Hardware

Raspberry Pi - Programming

● Python

● Java 7/8

● C/C++

● Libs for HW

● “In situ”

programming

Page 21: Introduction to Internet of Things Hardware

RPi - I/O Interface

● Many GPIOs

● No ADC

● No onboard

Wifi

Page 22: Introduction to Internet of Things Hardware

Raspberry Pi - Summary

Pros:

● Almost normal PC

● Processing Power

● Price & Size (for a PC)

● Programming

● # of GPIO pins

● Complete OS

● Huge SW repo

Cons:

● Energy consumption

● Price (for IoT)

● No ADC

Page 23: Introduction to Internet of Things Hardware

ESP8266 - NKOTB

Page 24: Introduction to Internet of Things Hardware

ESP8266 - System on a Chip (SoC)

● ~$3

● 10 GPIO, 1 ADC

● Wifi (WEP, WPA(2))

● programmable

(C/C++, Lua)

● 3.3V

● UART

Page 25: Introduction to Internet of Things Hardware

ESP8266 - Popularity

Source: Google Trends

July 2014

Page 26: Introduction to Internet of Things Hardware

ESP8266 - Compared

Source: Google Trends

Page 27: Introduction to Internet of Things Hardware

ESP8266 - Variations

● > 12 HW

versions

● Not all pins

accessible on

all boards

Page 28: Introduction to Internet of Things Hardware

ESP8266 - Firmwares - C++ SDK

● SDK available from Espressif

● Dockerfile tool chain:https://github.com/squix78/esp8266-docker-buildbox

● Alternative: RTOS SDK

Page 29: Introduction to Internet of Things Hardware

ESP8266 - Firmwares - NodeMCU

● Lua API

● ESPlorer IDE

● Serial-To-USB

Transfer

● Open-Sourced

Page 30: Introduction to Internet of Things Hardware

ESP8266 - Firmwares - NodeLua

● Lua

● WebIDE

● Log output to

browser

● FW open-sourced

● WebIDE closed

source

Page 31: Introduction to Internet of Things Hardware

ESP8266 - Summary

Pros:

● Low price

● Connectivity

● Small

Cons:

● Periphery support

(Sensors, displays,..)

● Power supply

Page 32: Introduction to Internet of Things Hardware

Comparison

ESP8266 Arduino Raspberry Pi

Cost ~$3 $3-$30 ~$35

Wifi Built-in Shield ($60) or

ESP8266

USB Dongle

Programming C++/Lua C++ Python/Java/C++

Code distribution Serial/ OTA USB/ SPI/ Serial In-Situ

Storage Built-In Built-In SD-Card

I/O 10 GPIO/ 1 ADC Arduino Uno:

13 GPIO/ 6 ADC

17 GPIO

Page 33: Introduction to Internet of Things Hardware

How to get started? Starter Kits

Many options available.

Just pick one;-)

Page 34: Introduction to Internet of Things Hardware

Where to buy?

http://www.seeedstudio.com/ http://www.aliexpress.com/ http://www.banggood.com/

Page 35: Introduction to Internet of Things Hardware

Q&A

Page 36: Introduction to Internet of Things Hardware

Breadboards

● For Easy

prototyping

● various sizesConnected but not crossing the

the gap

sometimes power rail on top

and bottom