ESP32-C3 Super Mini — SCD4x CO₂ + AHT20 + BMP280 + OLED Enclosure (remix)





Description
The original case holes didn't line up with my OLED module (https://es.aliexpress.com/item/1005006365881525.html), so I remixed it to fit. While I was at it, I added a cutout for the rotary encoder board (https://es.aliexpress.com/item/1005008796691020.html) too.
Github: https://github.com/evaristorivi/esp32-esphome-homeassistant-lab
ESP32-C3 placement
The ESP32-C3 Super Mini sits on top of the case. Two reasons — it runs cooler with nothing blocking airflow, and the WiFi signal is noticeably better. With the board buried inside the case the PCB antenna gets shielded and the connection suffers.
Assembly notes
To attach the OLED to the lid you'll need 4x M2×8 screws and M2 nuts
Use double-sided tape (https://es.aliexpress.com/item/1005006926453576.html) to secure the boards inside the case. It's also worth taping down the Dupont connectors — they can work loose during assembly and are annoying to reseat once everything is closed up.
WiFi tip — if you get connection drops or auth errors
Even with the antenna exposed, some builds still see instability — likely from nearby cables acting as a shield around the antenna. Counter-intuitively, lowering the TX power helps. Add this to your ESPHome YAML:
wifi:
output_power: 10dB
The default is 20 dB. Dropping it to 10 dB reduces reflections between the TX signal and the cables, and in my case it solved the problem completely.
Encoder / display glitches
If your build uses a rotary encoder with button inputs, you may occasionally see screen glitches or I2C timeouts when the cables are bunched together. A few things that help:
Route the encoder cables away from the I2C lines (OLED SDA/SCL) as much as the space allows.
Add a small ceramic capacitor (100 nF) between each encoder pin and GND — this debounces the signal and reduces noise pickup.
Twisting the encoder cable pairs together also helps reduce interference.
Print Settings
Printer: Anet A8
Filament: PLA Crystal Smartfil Red
Rafts: No
Supports: Yes
Resolution: 0.20 mm
Infill: 15%



