/wififirmware: Last updated 2022-01-21 21:16:00 by Conrad Wood

Wifi Firmware

Normally the wifi firmware is as-is and requires little or no attention. This information is provided as background information for developers who wish to extend the wifi or bluetooth functionality of singingcat modules.

The Wifi Chip in use is an ESP32 (or on older models an ESP8266). The chip is made by EspressIF.

The Firmware of the chip is developed with the EspressIF SDK.

Once flashed on to the chip, the firmware will update itself over the air.

The first firmware (or if for whatever reason the firmware is removed) must be flashed using the “esptool.py” from EspressIF. The esptool.py requires a serial-port connection to the ESP32 chip and a 3.3V serialport. EspressIF suggests to use special hardware to connect to computers.

Typically like so: computer -> usb-ttl-converter -> esp32

For singingcat boards, the ESP32 serial-port is internally connected to the SingingCat module main microcontroller. The microcontroller exposes a USB connection, which is compatible out-of-the box with most modern computers. The microcontroller can bridge the ESP32’s serialport to the USB-port. This means the esptool.py can be used directly on the usb port and no extra hardware is required.

Connect it like so: computer -> usb-cable -> singingcat (-> esp32)

To enable the bridging and flashing mode:

connect with a terminal to the singingcat usb port, e.g.

minicom -D /dev/singingcat-m-[moduleid] -b 115200

then enable the flash mode by typing “startusbflash”. The module will respond with “[BRIDGE ACTIVE]”

now close the terminal and run esptool.py as described in EspressIF documentation.