October 9, 2025
Description
Who needs a thermometer that is accurate to +-0.1°C and a hygrometer that is accurate to +-0.5% on relative humidity? I cannot answer that question, but I know that some years ago such a devices would have been insanely expensive and totally out of reach for the private hobbyist. That alone was reason enough for me to build this device and design a 3D printed housing that strictly isolates the sensor from the heat of the users hand or the heat of the processeing electronics, to use it's full potential.
The electronics is actually very easy to copy for everyone that has every used an soldering iron. Get the sensor on a prototype board, get an ESP32C3 Supermini board and get the needed OLED display. All these components were easy to get for me here in Germany and I would guess that it should not be to hard in most other countries.
Wiring is very simply. Just connect the 3.3V supply and the ground pin from the ESP32C3 board both to the display and the sensor. Only two more wires are needed then to connect display and sensor to the I2C bus of the ESP32C3. That is it. Load the Arduino sketch (that can be found in the attached .zip file) into the Arduino IDE. All needed libraries can be found in the Arduino library manager. Compile, download, enjoy ;-)
The “schematic”, i.e. the exact wiring instructions (which pin of which board needs to be wired to which other board) can be found in the comments at the top of the source code (in the .zip file).
I am not associated in any way with these links. I just provide them for reference. I am sure you can get these boards somewhere else as well.
1,3 Zoll OLED Display I2C SSH1106 Chip 128 x 64 Pixel I2C
ESP32-C3 Supermini processor board
Adafruit HDC3021 precision temperature humidity sensor
Printing of the housing parts is very simple. Just print them in the uploaded orientation. No supports are needed. Printing parameters are not critical. I have used PETG, but I would guess that PLA should work fine as well.
You need 5 pieces of short M2.5 screws. I have used countersunk M2.5x6, but a bit longer or shorter might work as well.
The electronic boards can simply be fixed with a drop of hot glue inside their cut-out spaces or on their pins respectively.
The path for the wires to the sensor is intentionally very small, to avoid air convection from the ESP32/Display part of the housing to the sensor. If you should not have appropriately thin wires, simply use a negative volume in PrusaSlicer to make that canal as big as you need it.
Simply connect power via the USB connector at the bottom of the device. Typically I used a power bank to be portable. The device uses very little power, so your power bank will last for a long time. I have intentionally avoided to add a battery, as this would have added complexity and another source of heat dissipation that would have affected the accuracy.
Your satisfaction is my reward. Please give this design a like if you like it, or even better, post a make of your print.
Happy printing!
License:
Creative Commons — Attribution — Noncommercial — NoDerivatives
10