An infrared thermometer is an essential tool for rapid, accurate, and contactless temperature measurements. I used this tech to create a DIY smart coaster. That project inspired me to build a wearable infrared thermometer ring.
As the name suggests it is an infrared thermometer that can be worn like a ring on the finger. The thermometer has an infrared temperature sensor under the ring, and the temperature reading is displayed on an OLED screen on top of the ring. For this project, I used the Xiao esp32c3 microcontroller, and I incorporated a built-in BMS for recharging the battery. Additionally, I used the MLX90614 Non-Contact Precision Thermometer Module, which provides fast temperature readings ranging from -70°C (-94°F) to +380°C (+720°F).The sensor does not need to have contact with the subject to measure the temperature. You can get a reliable measurement from 2cm to 5cm away from the subject.
I thought this would be useful for restaurant or food truck workers. With this setup, the worker can still take readings while handling food or drinks for the customer. No need to grab another thermometer and use it. This can save time on the order because the worker can do other tasks while wearing this. It is a great use case for this project
This tool can be customized by changing a few lines of code. For example, you can pre-set different temperature values or ranges and display a message if the sensor reaches these readings. This customization can be helpful for various purposes like baby food motoring, baking, scientific analysis, manufacturing, etc. I can guide you on how to edit the program to fit your specific needs in Step 3
so let's start the build
Note: Please wait a moment for all the GIFs on the web page to load.
Supplies
Parts
Click the part name to open the purchase link (Just experimenting with new ways of presenting on Instructables.)
- Soldering kit
- Soldering helping hand
- Tweezer
- Wire cutter
- Utility knife
- 3d printer
3D Printing
I used my Anycubic Kobra to 3D print all the files. I printed them in PLA+. I also designed all the parts with 3D printing in mind, so none of the parts are challenging to 3D print.
Customizing the Code
As an example, we will configure it to find the right serving temperature for the food item
The parameters we need are as follows:
- If the measured food temperature is lower than 122F, we need to display a "Low serve temperature" warning.
- If it is between 122F and 140F, we need to show a "Good serve temperature" message.
- If it is higher than 140F, we need to display a "High serve temperature" warning.
Now let's look at how to modify the code to achieve our speciation
To set the low temperature
Edit the value in the line number 20
if (foodTTemperature < 122) // Put the minimum temp
Also, the message that needs to be displayed can be added in line number 24
display.print("LOW SERVE TEMP<122F");
To set a good temperature range
Edit the value in the line number 25
else if (foodTTemperature >= 122 && foodTTemperature <= 140)
Also, the message that needs to be displayed can be added in line number 30
display.print("GOOD SERVE TEMP>122F");
To set the high temperature
If the value range configured in line number 25 surpasses 140F we can display the message through line number 36
display.print("HIGH SERVE TEMP>140F");
Here is the completed code for a quick look. I attached this.ino file in this step
I also include a Celsius version of it Infrared_Temp_Ring_C_Food.ino
Uploading Code to XIAO ESP32C3
I always like to upload the code to the microcontroller before assembly. I am using Arduino IDE to flash the code. follow these tutorials for setting up IDE for Seeed Studio XIAO esp32c3 and learn more about this board
Please download and install the Adafruit_MLX90614.h library before compiling
How to install library tutorial video link
After this, I...
Read more »