Minimalist USB thermometer with ESP32 – the idea

Posted by

New project alert!. This time is a minimalist USB thermometer with ESP32, a simple thermometer which will send data to the internet. Also it may feature a LED display (actually 6 LEDs) for showing temperature in binary.

Edit: official product page here.

usb thermometer pcb
USB thermometer idea – first iteration

The printed circuit board above and schematic below use a Xiao ESP32-C6 from Seeedstudio as the controller. It also has a built-in USB-A connector and four pin connector for a i2c temperature sensor. The original idea was to use a NTC thermistor in SMD format (0805), but I then decided to use a more complete integrated version.

Thermometer schematic diagram

I settled with the AHT10 temperature and humidity sensor, readily available from Aliexpress. It works with 3,3V and communicates via i2c. But since I am breaking SDA and SCL + 3,3V and GND, any i2c sensor would work.

AHT10 i2c sensor
AHT10 i2c sensor

The intention of the project is to be a thermometer connected to a USB port (receiving power from it) and sending data to the internet.

LED display

There may exist a LED display in the circuit board, similar to the one seen here, but with SMD LEDs. I would then show the environment temperature in Celsius in 6 LEDs, in binary format. Every LED would have a “weight”: the first one means 1, the third means 4 and the 6th means 32.

The microcontroller

I had initially thought about using an ATtiny85 for the job, similar to what I had done before. But then I decided to go with a WiFi-capable microcontroller, so that I can send information to the internet. An ESP32 DevKit is too big of a board, I decided against it; then I reminded myself I have a couple of SeeedStudio Xiao ESP32-C6 around.

I have used such board in my dev board project, successfully implementing a fully functioning development board based on the ESP32-C6. This little board is perfect for the job, you can supply it directly with 5V from USB and nothing else is needed.

Next steps

Now that I have settled that I will be supplying it with USB and decided the microcontroller to be used, I have still to define wether there will be a LED display to it. The other option is the temperature being sent to the internet directly, without any physical human-machine interface. See you next time.

One response

Leave a Reply

Your email address will not be published. Required fields are marked *