home automation by esp8266 #iotconfua

31
HOME AUTOMATION BY ESP8266 GLEB VINNIKOV

Upload: andy-shutka

Post on 15-Apr-2017

163 views

Category:

Engineering


3 download

TRANSCRIPT

HOME AUTOMATION BY

ESP8266

GLEB VINNIKOV

I AM

• Many years in IT :)

• FullStack Developer

• JavaScript, NodeJS, AngularJS, etc …

• Independent contractor/IT Expert/CTO

• Pet projects: IoT, Arduino, Hardware, etc …

PLAN

• already finished

• habits

• standard tasks

PRODUCTION

• a lot of communications

• constant changes

• interference

???

• beginners

• documentations

• examples on github/stackoverflow

• ready projects

• easy toolchains, IDE

• large community

• cheap

• wide specifications

• flexible

ESP8266

• http://espressif.com

• http://bbs.espressif.com/

• CPU: Tensilica L106 32-bit micro controller

• Operating Voltage: 3.0 ~ 3.6V

• Operating Current: ~80mA

ESP8266 FAMILY

• ESP01 - 12

• Form factors

• Diff. antennas

• Flash memory 512K-4M

WI-FI

• Wi-Fi: 802.11 b/g/n

• Wi-Fi mode: station/softAP/SoftAP+station, WPA/WPA2, WEP/TKIP/AES

• Types of Antenna: PCB Trace, External, IPEX Connector, Ceramic Chip

NETWORK PROTOCOLS

• IPv4

• TCP

• UDP

• HTTP

• FTP

PERIPHERAL BUS

• UART

• SDIO

• SPI

• I2C

• I2S

• GPIO

• ADC

• PWM

FIRMWARE UPGRADE

• UART Download

• OTA (via network)

FLASH TOOLS

• esptool.py

• ArduinoIDE

• https://github.com/nodemcu/nodemcu-flasher

• Espressif

ESPRESSIF

FIRMWARES

• http://bbs.espressif.com

• AT commands

• SDK> AT > OK

> AT+GMR > AT version:0.60.0.0(Feb 2 2016 18:43:31) SDK version:1.5.2(80914727) compile time:Feb 2 2016 18:59:50 OK

NODEMCU

FIRMWARES

• http://nodemcu.com/

• LUA

• NodeMCU DevKit

• http://esp8266.ru/esplorer/

• Libs <

• need much more memory

• upload by file

ARDUINO

FIRMWARES

• Arduino IDE

• C/C++

• Libs >

• https://github.com/esp8266/Arduino

• gitter community!

• load common bundle

FIRMWARES

• MicroPython

• https://github.com/micropython/micropython

• smart.js

PLATFORMIO

• http://platformio.org/

• ATOM IDE

• PlatformIO CLI tool

• Lint

• Multiple platforms

• Boards 200+

DEV BOARDS

• ready dev boards

• adapters

• FDTI

COMMUNICATION

MQTT

• MQ Telemetry Transport

• Lightweight

• PubSub

• QoS

• TCP based

HTTP VS MQTT

HTTP

• Overhead

• No QoS

MQTT

• Lightweight

• QoS

• TCP based

http://stephendnicholas.com/posts/power-profiling-mqtt-vs-https

MQTT SOFT

• Mosquitto - Open Source MQTT

• Clients for all langs

• Mob. apps

• Browser extensions`

• cloudmqtt.com

• https://thingmq.com/

WHAT’S NEXT?

• create IoT network

• home-assistant.io

• openhab.org

• http://freedomotic.com/

HOME ASSISTANT

• http://home-assistant.io

• Opensource

• Python

• Win, Mac, Ubuntu, RPI, …

• Components >

• Mobile, Desktop

• Automate

THE INTERNET OF BEES

HTTP://MAKEZINE.COM/PROJECTS/BEES-SENSORS-MONITOR-HIVE-HEALTH/

SOLAR POWERED ESP8266

HTTPS://HACKADAY.IO/PROJECT/9302-HOT-WATER-SOLAR-POWERED-ESP8266-WITH-A -THERMISTOR

CONTROL AN IRRIGATION SYSTEM

HTTP://MAKEZINE.COM/PROJECTS/WIFI-WATER-VALVE/

VNC CLIENT

HTTPS://GITHUB.COM/LINKS2004/ARDUINOVNC

ESP8266-BASED QUADCOPTER

HTTPS://GITHUB.COM/CNLOHR/WIFLIER

ESP8266 DASH BUTTON

HTTPS://GITHUB.COM/DEQINGSUN/ESP8266-DASH-BUTTON

THANKS!

• http://www.slideshare.net/glebvinnikov

[email protected]