Skip to content

ESP devices

Julian Todd edited this page Jun 28, 2019 · 3 revisions

There are a number of ESP8266 and ESP32 devices in operation connecting to the MQTT network. This page is to keep track on where they are and what code is loaded on them.

Device name mac-address ipnumber sensor location code date
whitesp IR temp Room 29 JMDN/P/IR 2019-05-01
esp8266LOLIN 2C:3A:E8:0F:1D:C7 10.0.31.229 LED ticker Room1 main window JMDN/P/LED 2019-06-24
esp32co2 B4:E6:2D:8C:1F:B1 10.0.37.127 CO2 ppm Room1 TV wall JMDN/SK/Main 2019-06-22
esp8266B EC:FA:BC:A7:A8:07 10.0.35.194 Temp strng Room1-29 window JMDN/SK/esp8266_Main 2019-06-28
esp32powflash Electric use Meter room JMDN/SK/esp8266_Main 2019-06-24

Most of these devices are commissioned and uploaded using the Jupyter Micropython Kernel with code pulled in from the Jupyter Micropython Developer Notebooks.

The all-in-one ESP32 based sensor identification and display code is at: "Sensor_Kennel/Main"

You can get the ip-numbers of all these devices with the command: mosquitto_sub -v -h mqtt.local -t "+/ip". See all the data from a device with: mosquitto_sub -v -h mqtt.local -t "esp32co2/#". Send a message to be displayed on a device with: mosquitto_sub -h mqtt.local -t "esp32co2/message" -m "Hi there".

ESP32 implementations

Most of the code uses a forked MQTT asynchronous driver that implements mDNS. The code in a minimal mDNS implementation used just to convert "mqtt.local" into an ipnumber.

The all-in-one code that handles many I2C sensors wired onto an ESP32 is at: https://github.com/goatchurchprime/jupyter_micropython_developer_notebooks/blob/master/Sensor_Kennel/Main.ipynb This can run an OLED screen (if it exists), connect to the MQTT server. The code is based on an adaptation of the asynchronous MQTT library with mDNS implemented.

ESP8266 implementations

The ESP8266 has a WebREPL command line system that uses a socket by pasting in the ipnumber in place of 192.168.4.1, clicking on "Connect" and using the password "wpass". (The WebREPL system on the ESP32 only works when there is no program running, and so it is almost useless.)

The minimal mDNS implementation does not work, so the ipnumber of the mqttbroker have to be hard-coded.

The ipnumber of the mqttbroker is 10.0.30.194 (when on ethernet wire) or 10.0.30.130 when working from wifi.

Clone this wiki locally
You can’t perform that action at this time.