Upgrade to Pro — share decks privately, control downloads, hide ads and more …

ESPlant Workshop Firmware Overview and Demos

Ebf974e0dbcfe88c508df6f395661a4b?s=47 Mark Wolfe
February 02, 2016

ESPlant Workshop Firmware Overview and Demos

Hardware Miniconf Talk at Linuxconf 2016

Ebf974e0dbcfe88c508df6f395661a4b?s=128

Mark Wolfe

February 02, 2016
Tweet

Transcript

  1. ESPlant Workshop Firmware Overview and Demos By Mark Wolfe

  2. Building Firmware • Install Arduino IDE 1.6.5 • Enter http://arduino.esp8266.com/staging/

    package_esp8266com_index.json into Additional Board Manager URLs field. • Copy libraries to your Arduino Libraries folder: • ~/Documents/Arduino/libraries (OSX and Linux) • My Documents\Arduino\libraries (windows) • Hit Compile!
  3. Aims • Illustrate how to build a very basic IoT

    product, serial could be printed on a screen. • No hard coded SSID / Password • No hard coded MQTT URL and credentials. • Simple • Encapsulate some of the hard stuff
  4. Testing the ESPlant • Connect to the ESPlant using USB

    • Open the Arduino Serial Monitor • Copy the Access Token and note the name of your AP! • Connect to your AP • Connect the device to wifi using the following command • curl -v -H "Authorization: Token access_token_here“ 'http:// 192.168.4.1:9000/wifiSetup?ssid=xxx&pass=xxx'
  5. Testing Continued. • Install mosquitto (MQTT client and server) •

    Find out your IP and configure the ESPlant to send messages to your system using the following command. • The IP address of your ESPlant is printed to the console once it reboots and connects to wifi. • Also you need your IP address of course. • curl -v -H "Authorization: Token access_token_here" ‘http://X.X.X.X:9000/ mqttSetup?mqtt_url=mqtt://test@x.x.x.x' • mosquitto_sub -v -t '#'
  6. References • https://www.arduino.cc/en/Reference/HomePage • https://github.com/esp8266/Arduino/blob/master/doc/libraries.md • http://espressif.com/new-sdk-release/

  7. For the Adventurous • Add support for the Neopixels provided

    in the kit • Add support for the motion sensor • Upgrade the on boarding to use https://github.com/tzapu/ WiFiManager
  8. Graphs • Grafana • InfluxDB • mqforward • mosquitto •

    Entire stack built using Docker with Ansible on Github!
  9. About Me • wolfeidau on github • wolfeidau on twitter

    • mark@wolfe.id.au • Engineer at Versent