CO2 Gadget Installation Guide: Web Installer, Binaries and Compilation

Last modified 5 days

Installing CO2 Gadget on your ESP32 board is a one-click process thanks to the web-based installer powered by ESP Web Tools: compatible with Chrome, Edge and Chromium-based browsers, with no need to install anything on your computer. Here you’ll find the 13 supported board models, the flashing instructions, the binary table and the guide to compiling from source code.


Which version should I install?

There are two versions available. Choose the one that best suits your needs:

  • Beta (recommended): includes the latest features — BTHome v2, low-power binary mode, improved MQTT Discovery, charts with CSV/JSON export, web-based calibration, screenshots via HTTP, and over 40 REST endpoints. The branch development It is compiled and published every time a change is made. If you encounter any problems, please report them at GitHub or in the Telegram group.
  • Stable release: a version tested about two years ago (v0.14.006). It only makes sense if you need maximum stability for a critical deployment and the new features do not add any value for you. If you’re using it for personal, home or educational purposes, the Beta is the better option.

Beta installation (recommended)

Click INSTALL in the row corresponding to your board. Connect your ESP32 via USB and select the port when the browser dialogue box opens. In a few seconds, the beta firmware will be loaded onto your device.

Documentation is currently being updated. We are currently reviewing and improving all our pages. You may come across a broken link or some content that hasn’t been finalised yet. If you spot anything that isn’t quite right, please help us fix it at GitHub.
TasteVersionDateInstall
TTGO_TDISPLAY_SANDWICH 0.16.014-beta02-07-2026
TTGO_TDISPLAY 0.16.014-beta02-07-2026
TDISPLAY_S3 0.16.014-beta02-07-2026
esp32dev_OLED 0.16.014-beta02-07-2026
esp32dev 0.16.014-beta02-07-2026
esp32dev_ST7789_240x320 0.16.014-beta02-07-2026
ttgo-t5-EINKBOARDGDEM0213B74 0.16.014-beta02-07-2026
ttgo-t5-EINKBOARDDEPG0213BN 0.16.014-beta02-07-2026
ttgo-t5-EINKBOARDGDEW0213M21 0.16.014-beta02-07-2026
ttgo-t7-EINKBOARDGDEM029T94 0.16.014-beta02-07-2026
ttgo-t7-WEACT_GDEH0154D67 0.16.014-beta02-07-2026
ttgo-t7-WEACT_DEPG0213BN 0.16.014-beta02-07-2026
ttgo-t7-WEACT_GxEPD2_290_BS 0.16.014-beta02-07-2026

First time? Tick the «Erase device» box in the installer to clear the previous configuration (recommended if you’re switching from a different firmware).

Installation of the stable release version

If you prefer the stable version, you can also install it directly from your browser. The procedure is the same: find your motherboard in the table, click INSTALL, connect via USB and wait.

TasteVersionDateInstall
TTGO_TDISPLAY_SANDWICH v0.014.00609-06-2024
TTGO_TDISPLAY v0.014.00609-06-2024
TDISPLAY_S3 v0.014.00609-06-2024
esp32dev_OLED v0.014.00609-06-2024
esp32dev v0.014.00609-06-2024
esp32dev_ST7789_240x320 v0.014.00609-06-2024
ttgo-t5-EINKBOARDGDEM0213B74 v0.014.00609-06-2024
ttgo-t5-EINKBOARDDEPG0213BN v0.014.00609-06-2024
ttgo-t5-EINKBOARDGDEW0213M21 v0.014.00609-06-2024
ttgo-t7-EINKBOARDGDEM029T94 v0.014.00609-06-2024
ttgo-t7-WEACT_GDEH0154D67 v0.014.00609-06-2024
ttgo-t7-WEACT_DEPG0213BN v0.014.00609-06-2024
ttgo-t7-WEACT_GxEPD2_290_BS v0.014.00609-06-2024

Choose the flavour you want to install and follow the instructions.

  • TTGO_TDISPLAY_SANDWICH: TTGO T-Display board with I2C sensor on alternate pins (SDA on 21 and SCD on 22)
  • TTGO_TDISPLAY: TTGO T-Display board with I2C sensor on normal pins (SDA on 21 and SCD on 22)
  • TDISPLAY_S3: T-Display S3 board with I2C sensor on normal pins (SDA on 42 and SCD on 43). Available soon.
  • esp32dev_OLED: Generic ESP32 board with OLED display (SH1106 128X64)
  • esp32dev: Generic ESP32 board without display
  • esp32dev_ST7789_240×320: Generic board with 240×320 TFT display and ST7789 controller
  • ttgo-t5-EINKBOARDGDEM0213B74: Lilygo TTGO T5 with e-Ink display with panel GDEM0213B74
  • ttgo-t5-EINKBOARDDEPG0213BN: Lilygo TTGO T5 with e-Ink display with DEPG0213BN panel
  • ttgo-t5-EINKBOARDGDEW0213M21: Lilygo TTGO T5 with e-Ink display with panel GDEW0213M21
  • ttgo-t7-EINKBOARDGDEM029T94: Generic ESP32 board with e-Ink display GDEM029T94
  • ttgo-t7-WEACT_GDEH0154D67: Generic ESP32 board with WeAct Studio e-Ink display GDEH0154D67
  • ttgo-t7-WEACT_DEPG0213BN: Generic ESP32 board with WeAct Studio e-Ink display DEPG0213BN
  • ttgo-t7-WEACT_GxEPD2_290_BS: Generic ESP32 board with WeAct Studio e-Ink display GDEM029T94 BS

Optional, clear the memory:

When uploading the firmware you have the option to select "Erase device", which will first erase the ESP32 memory and reset all settings. Recommended when installing CO2 Gadget for the first time.

This version does not include BTHome, low-power binary mode or the latest MQTT improvements.

Download binaries

All the binaries are available at GitHub Releases. Download the file for your board and flash it using any ESP32-compatible tool.

Compiling from source code

For developers: clone the repository, install PlatformIO and compile for your board:

git clone https://github.com/melkati/CO2-Gadget.git
cd CO2-Gadget
pio run -e TTGO_TDISPLAY --target upload

Plate models

CO2 Gadget supports 13 different boards. The most popular ones are:

  • TTGO_TDISPLAY — 240×135 TFT, the most commonly used
  • TDISPLAY_S3 — ESP32-S3 with a 320×170 TFT display
  • esp32dev_OLED — Generic board with OLED
  • esp32dev — No screen, headless
  • ttgo-t5-* — E-Ink 2.13
  • ttgo-t7-* — E-Ink 2.9 and 1.54

First start-up

When you switch it on for the first time, BLE is enabled and Wi-Fi is disabled. Use the MyAmbiance app to set up Wi-Fi or connect to the captive portal. All default settings are optimised so that the meter works as soon as you switch it on.

Notes

  • Use a good USB cable: charging cables do not always transfer data
  • If you’re having connection problems, try ‘Erase device’ before flashing
  • The Arduino IDE is not officially supported: use PlatformIO
  • After flashing, wait 30 seconds before disconnecting the USB cable

Did you find this useful? Share this article. Also have a look at the Menu Guide. Any questions? Ask on the Telegram group.

Leave a comment