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.
Contents
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
developmentIt 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.
| Taste | Version | Date | Install |
|---|---|---|---|
| TTGO_TDISPLAY_SANDWICH | 0.16.014-beta | 02-07-2026 | |
| TTGO_TDISPLAY | 0.16.014-beta | 02-07-2026 | |
| TDISPLAY_S3 | 0.16.014-beta | 02-07-2026 | |
| esp32dev_OLED | 0.16.014-beta | 02-07-2026 | |
| esp32dev | 0.16.014-beta | 02-07-2026 | |
| esp32dev_ST7789_240x320 | 0.16.014-beta | 02-07-2026 | |
| ttgo-t5-EINKBOARDGDEM0213B74 | 0.16.014-beta | 02-07-2026 | |
| ttgo-t5-EINKBOARDDEPG0213BN | 0.16.014-beta | 02-07-2026 | |
| ttgo-t5-EINKBOARDGDEW0213M21 | 0.16.014-beta | 02-07-2026 | |
| ttgo-t7-EINKBOARDGDEM029T94 | 0.16.014-beta | 02-07-2026 | |
| ttgo-t7-WEACT_GDEH0154D67 | 0.16.014-beta | 02-07-2026 | |
| ttgo-t7-WEACT_DEPG0213BN | 0.16.014-beta | 02-07-2026 | |
| ttgo-t7-WEACT_GxEPD2_290_BS | 0.16.014-beta | 02-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.
| Taste | Version | Date | Install |
|---|---|---|---|
| TTGO_TDISPLAY_SANDWICH | v0.014.006 | 09-06-2024 | |
| TTGO_TDISPLAY | v0.014.006 | 09-06-2024 | |
| TDISPLAY_S3 | v0.014.006 | 09-06-2024 | |
| esp32dev_OLED | v0.014.006 | 09-06-2024 | |
| esp32dev | v0.014.006 | 09-06-2024 | |
| esp32dev_ST7789_240x320 | v0.014.006 | 09-06-2024 | |
| ttgo-t5-EINKBOARDGDEM0213B74 | v0.014.006 | 09-06-2024 | |
| ttgo-t5-EINKBOARDDEPG0213BN | v0.014.006 | 09-06-2024 | |
| ttgo-t5-EINKBOARDGDEW0213M21 | v0.014.006 | 09-06-2024 | |
| ttgo-t7-EINKBOARDGDEM029T94 | v0.014.006 | 09-06-2024 | |
| ttgo-t7-WEACT_GDEH0154D67 | v0.014.006 | 09-06-2024 | |
| ttgo-t7-WEACT_DEPG0213BN | v0.014.006 | 09-06-2024 | |
| ttgo-t7-WEACT_GxEPD2_290_BS | v0.014.006 | 09-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.