Firmware

Photo of ESPARGOS

Below, you can download the firmware for the current hardware revision of ESPARGOS (device looks as shown in picture). Firmware is regularly updated!

Downloads
Sensor Firmware: Channels
Latest
2026-01-20 17:04 UTC · a4c3177
Stable
2026-01-16 10:16 UTC · 7c7aaeb
Sensor board icon
Sensor Firmware App
Update first. Distributed to all sensor MCUs by the controller.
Sensor board icon
Sensor Recovery Partition
Only needed for recovery / factory reflashing.
Controller Firmware: Channels
Latest
2026-01-22 17:57 UTC · 5224dda
Stable
2026-01-16 10:52 UTC · bc0cf47
Controller Firmware App
Update second (after sensors). Implements controller functionality.
Web Assets
Update third. Contains the web UI served by the controller.
Controller Recovery Image
Only needed for recovery / factory reflashing.

Photo of ESPARGOS

If you still have an older prototype version of ESPARGOS, please note that this hardware is no longer supported. You can, however, still download the last available firmware versions for this prototype hardware below. Prototype firmware is not updated anymore!

Update Instructions

Web Browser
  • Go to the web interface of your ESPARGOS device. See Setup to learn how.
  • One after the other, select and flash the firmware files for
    • sensor firmware,
    • controller firmware and
    • controller web assets.
    ESPARGOS will reboot after every firmware update.
Command Line
# Download latest firmware files from espargos.net
cd /tmp
wget https://espargos.net/firmware/latest/espargos-sensor-firmware.bin
wget https://espargos.net/firmware/latest/espargos-controller-firmware.bin
wget https://espargos.net/firmware/latest/espargos-controller-assets.bin

# Upload firmware to ESPARGOS:
# * Change ESPARGOS_HOST to the IP address / hostname of your ESPARGOS device.
# * Make sure the update succeeded after every step. Otherwise, reboot ESPARGOS.
ESPARGOS_HOST=192.168.1.2
curl -# "http://$ESPARGOS_HOST/update_sensor_application" --compressed -H "Content-Type: application/octet-stream" --data-binary @espargos-sensor-firmware.bin | tee /dev/null
curl -# "http://$ESPARGOS_HOST/update_firmware" --compressed -H "Content-Type: application/octet-stream" --data-binary @espargos-controller-firmware.bin | tee /dev/null
curl -# "http://$ESPARGOS_HOST/upload_partition?partition=web" --compressed -H "Content-Type: application/octet-stream" --data-binary @espargos-controller-assets.bin | tee /dev/null

Sensor Update Behavior

The ESPARGOS controller takes care of distributing the firmware update to all sensor microcontrollers.
  • While the update is being distributed, the sensors will quickly alternate between green and red.
  • In the end, the sensors will flash both red and green LEDs simultaneously to indicate that the update was succesful.

Recovery Instructions

Recovery images are only needed in case your ESPARGOS device is not functioning properly after a failed update. This way, you can always restore your device to a working state even if something goes wrong during the update process. You cannot "brick" ESPARGOS by due to firmware issues.

Recovery is only possible with the current hardware revision, prototype boards do not support this recovery method!

Controller Firmware Recovery

From a WebUSB-enabled Browser

With a WebUSB-enabled browser (e.g., Google Chrome), connect ESPARGOS to your computer via USB and click the appropriate button for your chosen channel to flash the recovery firmware directly from your browser. Note that this method is quite slow (can take around 10 minutes):

ChannelBuildInstall
Latest2026-01-22 17:57 UTC · 5224dda
Stable2026-01-16 10:52 UTC · bc0cf47
Manual Recovery with esptool

  • Make sure to install esptool. It is included in ESP-IDF, but full installation of ESP-IDF is not required.
  • Connect ESPARGOS to your computer via USB. It will appear as a USB serial device, assumed to be named /dev/ttyUSB0 in the following.
  • Execute the following command to flash the recovery image. This will reset ESPARGOS to factory settings:
  • wget https://espargos.net/firmware/latest/espargos-controller-recovery.bin
    esptool --chip esp32 -b 2000000 --before default-reset --after hard-reset write-flash --flash-mode dio --flash-size 16MB --flash-freq 40m 0x0000 espargos-controller-recovery.bin

Sensor Firmware Recovery

  • Download the sensor recovery partition from the link above, and upload it to ESPARGOS using the web interface.
  • Click the "Provision All Sensors" button on the web interface. Be very patient, this will take up to ten minutes.