What if your sensor could tell you not just the temperature, but how hot it feels?
This project transforms the Carenuity C3-Mini, an ultra-compact Wi-Fi + BLE MCU, into a heat index monitor. By integrating the SHT40 sensor (for accurate temperature and humidity) with a 0.96" OLED, we create a tiny yet powerful display that shows:
✅ Real temperature in °C
✅ Relative humidity in %
✅ Calculated heat index (feels-like temperature)
✅ ⚠️ Warning symbol when it’s dangerously hot
Ideal for weather stations, personal safety, greenhouse monitoring, and smart home dashboards.
🛠️ Components UsedCarenuity C3-Mini (ESP32-C3)A compact, cost-effective, Wi-Fi + BLE MCU designed for embedded and IoT applications.
Why it’s perfect for this project (and beyond):
✅ Native Wi-Fi & BLE for IoT readiness
✅ USB-C for easy plug-and-code
✅ Compatible with Arduino, ESP-IDF, ESPHome, and MicroPython
✅ Solder-friendly pinouts for breadboarding or production
✅ Low cost and low power — ideal for wearables or battery-powered sensing
✅ Supports OTA, Matter, MQTT, Bluetooth provisioning, and Web server flashing
🌡️ Sensirion SHT40 Sensor- Digital I2C sensor for temperature and humidity
- ±0.2 °C temp accuracy, ±1.8% RH accuracy
- Controlled using U8g2 graphics library
- High-contrast, low-power display
The Carenuity C3-Mini's I2C bus is flexible, and GPIOs can be reassigned via Wire.begin()
.
📃 Full Code (Arduino Compatible)// See full Arduino compatible code attached below in this article.
🧰 Setting Up Arduino IDE & Uploading CodeTo get this project running on your Carenuity C3-Mini using the Arduino IDE, follow these steps:
Install Board Support. Open the Arduino IDE, go to File > Preferences, and add this URL to the Additional Board URLs:
https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.json
- Install ESP32 Board: Go to Tools > Board > Boards Manager, search for "ESP32 by Espressif Systems" and install it.
Select the Right Board: Go to Tools > Board and selectLOLIN C3 Mini
orESP32C3 Dev Module
, depending on availability. Both are compatible with the Carenuity C3-Mini.
- Set the Port: Plug in your C3-Mini via USB-C and select the correct COM port under Tools > Port.
- Paste and Upload the Code. Use the example code provided in this article.
- Open Serial Monitor: Go to Tools > Serial Monitor and set the baud rate to
9600
. You’ll see live temperature, humidity, and heat index logs — helpful for debugging
Here’s a quick breakdown of how the sketch works:
Wire.begin(); initializes I2C communication using GPIO10 for SDA and GPIO8 for SCL.
resetSHT40(); sends a soft reset to ensure the SHT40 sensor is ready.
readSHT40() reads temperature and humidity in high-precision mode.
calculateHeatIndex() applies the NOAA formula to calculate heat index (converted to °C).
u8g2.drawStr() and u8g2.print() are used to render temperature, humidity, and heat index data on the OLED.
If the heat index exceeds 35 °C, a visual ⚠️ warning is displayed.
Optional debug logs are printed to the Serial Monitor at 9600 baud for validation.
🧪 What is Heat Index?Heat index = Feels-like temperature.It combines temperature and humidity because humans feel hotter in humid air.
This project uses the NOAA heat index formula, originally in Fahrenheit, and converts it to Celsius for global use.
📊 OLED Output ExampleSHT40 Readings
Temp: 31.87 °C
Humidity: 66.50%
HeatIdx: 37.20 °C
⚠ High Heat!
Real-time alerts help protect users from dangerous conditions.
- When heat index > 35 °C: ⚠ Warning symbol and message on OLED🔴 Icon ("!") drawn on screen
This project is ideal, and users can enhance it for IoT & cloud integration.
- Greenhouse monitoring
- Wearable comfort tracker
- Home weather station
- Industrial heat safety alert
Designed by developers for developers.🚀 Final Thoughts
With just three components, this project delivers a powerful micro-weather monitor using the C3-Mini. It’s a great way to learn environmental sensing, display control, and temperature awareness with real-world applications.
Whether you're building for fun, safety, or smart home automation, this project is a great place to start!
Comments