Skip to content

ESP8266 Micropython MQtt Node Red Training Session

Alex Lennon edited this page Apr 21, 2017 · 1 revision

Placeholder for a proposed ESP8266 Micropython Tutorial

Q What would such a tutorial involve? Thoughts.

Overview

  • background to Micropython
  • detail on requirements (ram/flash/hardware)
  • supported platforms / who's using it
  • details on ESP8266 specifics for this tutorial

Installing Micropython on a board (ESP8266)

  • how to obtain a binary
  • which tools to use to flash binary on Windows / Linux (esptool.py etc.)
  • how to put the hardware into boot mode
  • connecting up the serial port / using a terminal emulator and anybaud to view boot-mode output text
  • troubleshooting: checksum failures, baud rates, programming modes, verify option
  • checking that micropython boots

Connecting the ESP8266 to a WiFi access point

  • script to automatically connect as a client.
  • use of AP mode.
  • use of WebRepl to access over WiFi.

Development environments and transferring scripts

  • options for different IDEs
  • use of PyMakr to connect to board, debug and transfer files

Real world example Temperature sensor + MQtt messaging + node-red

  • connecting up a one-wire DS18B20 temperature sensor
  • scripting: reading temperature values
  • scripting: sending values to a MQtt broker

Node-Red

  • configuration of an MQtt endpoint and workflow with Node-Red
  • publishing temperature values to Twitter

Data Visualisation

  • configuration of MQtt broker with websockets
  • data visualisation using FreeBoard (Javascript) pulling data from broker

Advanced: Building and Customising Micropython

  • use of esp-open-sdk for native ESP8266 builds
  • need to program a set of default values into the
  • following Micropython instructions for build with docker+vagrant
  • adding a demonstration module
  • flashing to board and testing new module function

☝️ Filter all pages above!
(Full search available on the top left of page)

WiFi: DoES Liverpool, password: decafbad00

or

Clone this wiki locally