(Ro)Bot Software – Internet of Things
Class 1 – (5 March 2016)
What is this ESP8266 wifi chip?
Today we will play with its wifi functions from laptop PC.
Class 2 – (19 Mar 2016)
PC python script with ESP8266 (AT modem interpreter). The most basic working IoT website.
Class 3 – (26 March – ie Easter)
PC LUA script with ESP8266 (LUA interpreter). This time our primitive “web site” can also access some GPIO pins of the 8266.
Flashing (uploading) a new binary (“BIN”) firmware file takes merely a minute. I can reflash any ESP boards this week if you don’t wish to bother.
Class 4 – (9 Apr 2016)
Learning how to work comfortably with Lua.
We “back-step” from the ready-to-run script file of Class 3, and learn to manually talk (in Lua) to the ESP8266. A bit like we could manually talk “AT” instructions to the 8266 in Class 1, but more flexible. Besides controlling the wifi, we can now do input/output with the GPIO pins.
Class 5 – (23 Apr 2016)
A basic “LOGGER” station in Lua, with login to wifi AP, support for oled display, true timekeeping, event logging with timestamps, and simple access via web browser. A core “platform” ready to add whatever input or output devices your own project needs.
Class 6 – (7 May 2016)
Logger platform now at version LG3. Today, four alternative “project” files (project1.lua to project4.lua), using LG3:
- Simple 2 buttons, 2 leds, and logged report – same as last class
- WebIO-esp – control all GPIOs in/out high/low from browser (Remember webIOpi?)
- Scheduled/periodic logging of all GPIO inputs
- A demo of what display formats the oled is supporting
Class 7 – (21 May 2016)
Note: You DO NEED to be flashed with the later lua BIN file (2016-04-10). It runs at 115200.
project5: sonar device displaying on oled
project6: sonar device used as stormwater sump water level sensor, controlling pump on/off
project7: accessing the “interpreter” from web browser (“telnet”)
Class 8 – (4 June 2016)
Weather station (pressure, temperature & humidity) with BMP180 & DHT22.
Class 9 – (18 June 2016)
16 more GPIO pins using MCP23017 expander. (Dig in your “bits” box. We used the MCP23017 chip last year.) We will build an expanded “plus” version of week5’s WebIO-esp.
Files: Click Note this ZIP has
- bin (and flashing script) belonging in your BIN folder,
- today’s PPT,
- “project9” lua files (3 of them),
- and a couple of the LG3 files that have slight changes.
Class 10 – (9 July 2016)
Analog inputs. Single analog as supplied on ESP8266, and eight analog inputs using multiplexer.
Class 11 – (16 July 2016)
Firing up the little ESP-01.
No LUA “project” file this class? – Plug in the OLED to sda/scl = D3/D4 (ie GPIO0/GPIO2), and try project 4, oled demo.
Class 12 – (30 July 2016)
Firewalls and accessing your ESP from “outside”.
Class 13 – (6 Aug 2016)
Putting the ESP8266 to sleep. Zero current (nearly) means great battery savings.
… and then waking up again, checking/logging data as desired, and going back to sleep until next time.
Class 14 – (20 Aug 2016)
Batteries for portable/remote power. PDF file.
Class 15 – (27 Aug 2016)
Batteries for portable/remote power. Looking again at Deep Sleep to get battery usage very low.
Class 16: – (Sat 3 Sept)
Storing your logged data out to the cloud instead. Simply setting up MQTT account, and accessing via MQTT client on any of:
- smartphone APP
- Google MQTTlens APP on PC
- MQTTfx on PC
Class 17: – (17 Sept 2016)
ESP as MQTT client.
Publishes LDR analog
Led1, Led2, testButn, OledMsg – and has a GPIO response for each.
Watching/controlling ESP8266 at PC (MQTTlens?)
Class 18: – (Sat 24 Sept 2016)