How the dryer sensor works
Discover the simple ingenuity behind our dryer sensor, designed to make your laundry routine effortless. We'll explain how it detects your laundry's readiness and keeps you notified.
View it in TinkerCad!
How to Assemble and Set Up Your Dryer Sensor
Welcome! If you’re ready to set up your dryer sensor, you’re in the right place. This guide will walk you through the assembly and installation process step-by-step. A dryer sensor helps optimize your drying cycles, ensuring your clothes are perfectly dried while conserving energy. Let's get started!
What You’ll Need
Personal Items:
- Clear, open workspace
- Phone for hotspot
The Dryer Sensor Kit that consists of the following components:
- Microcontroller: Arduino Nano
- Temperature Sensor: NTC Thermistor probe
- Resistor: Fixed resistor (used for voltage divider, use 10kΩ typical)
- Breadboard: For circuit assembly
- Jumper wires: For electrical connections
- USC cord: This connects the sensor to a power outlet
- Extended Probe Wiring: Which allows sensor placement close to hot vents on dryer
- LCD: Screen that displays the temperature and when the email is sent
Part 1: Unboxing
Begin by carefully unboxing your dryer sensor kit. Check the contents against the instruction manual to ensure all parts are included. Make sure you also have a laptop and cleared working space.
Part 2: Print Your enclosure
Before assembling the circuit, you will need to 3D print the enclosure that houses the sensor components. Download the CAD file below and send it to a 3D printer. Standard PLA filament works fine. Print time is approximately 3 hours depending on your printer settings."
[Link to CAD file]
Part 3: Wiring
Now, you will need three things: your Arduino board, a thermistor (the temperature sensor), and a 10kΩ resistor.
Step 1 — Connect the thermistor to power Take one leg of the thermistor and plug it into the 5V pin on your Arduino. This gives the sensor its power supply.
Step 2 — Connect the thermistor to the Arduino input Take the other leg of the thermistor and connect it to pin A0 on your Arduino. This is the pin the Arduino will use to actually read the temperature.
Step 3 — Connect the resistor Take your 10kΩ resistor and connect one end to the same leg of the thermistor that's going to A0. The other end of the resistor goes to GND (ground) on your Arduino.
Step 4 - Connect LED The LED has 4 pins that need to be connected to the following ports:
GND (Green): Plug into the Ground Port
VCC (Blue): Plug into the VIN port (Bottom Right of Arduino)
SDA (Purple): Plug into A4
SCL (Grey) Plug into A5
What it should look like when done: 5V → Thermistor → A0 + Resistor → GND
A few tips for first timers:
- It does not matter which leg of the thermistor goes to 5V and which goes to A0 — thermistors work both ways
- Make sure your resistor is 10kΩ — the color bands should be Brown, Black, Orange
- Double check that nothing is connected directly from 5V to GND without going through the thermistor and resistor first, as this can damage your Arduino
Part 4: Microcontroller Setup:
Now that the circuit is wired, you need to load the code onto your Arduino Nano. This is what makes it actually read the temperature and detect when the dryer is done.
4.1 Install the Arduino IDE
If you do not already have it, download and install the Arduino IDE from arduino.cc/en/software. This is the program you will use to write and upload code to your Arduino Nano.
4.2 Connect Your Arduino
Plug your Arduino Nano into your laptop using the USB cable. Your laptop should recognize it automatically. In the Arduino IDE, go to Tools > Board and select Arduino Nano. Then go to Tools > Port and select the port that your Arduino is connected to.
4.3 Upload the Arduino Sketch
Copy the code below exactly into a new sketch in the Arduino IDE, then click the Upload button (the arrow icon). Wait for it to say Done uploading before moving on.
https://gist.github.com/cookem23/17c4c4e7576df5581695c80a2b25e4ef
4.4 Install Proper Libraries
This code is dependent on two libraries, ESP Mail Client (to send the email) and Liquid Crystal_I2C (to configurate the LED). These Libraries can be found by pressing the tab resembling the folder on the left hand side of the Arduino IDE > Search > Insert name of Libraries.
4.5 Insert Hot Spot Information
In the code, insert your Hotspot name and password in the designate spots. Lines (11-12)
* Hotspot must be a single word, any spaces or (') will cause the code to malfunction! If on iPhone, this can be accomplished by changing the device name!
5: Set Up Gmail App Password
The script sends email through Gmail. You will need to generate a Gmail App Password to allow this. Go to your Google Account > Security > 2-Step Verification > App Passwords and generate one. Copy the password it gives you.
5.1 Insert Gmail App Password and Email into Arduino Sketch
Once you have your app password, insert the recipient email, author email, and app password into the code (lines 17-19)
Part 6: Test Your System
Now that everything is set up, it is time to test it. Follow these steps to confirm everything is working before attaching the sensor to a real dryer.
- Make sure your Arduino is still plugged into your laptop via USB.
- Open the Arduino IDE Serial Monitor (Tools > Serial Monitor) to see live temperature readings.
- Gently warm the thermistor with your hand or a warm object and watch the temperature rise in the Serial Monitor.
- When the temperature rises above 80F the system will show RUNNING. When it cools back down it will show Cooling, then DONE.
- Check your email — you should receive the Dryer Finished notification.
* Once testing is finished, you can remove the device from the USB and plug directly into a Wall or Battery adapter.
Part 7:
Tips for First Timers
- If you do not receive an email, double check your Gmail App Password and make sure Less Secure App Access is not blocking the connection.
- If the Serial Monitor shows no data, make sure the correct Port is selected under Tools > Port in the Arduino IDE.
Final Thoughts
Congratulations! You’ve successfully assembled and set up your dryer sensor. With this device, you'll enjoy more efficient drying cycles and save on energy costs. If you have any further questions or need assistance, don’t hesitate to reach out to customer service for your dryer brand
Common Issues & How We Fixed Them
1. Wrong COM Port The Arduino could not be found by the Arduino IDE because the port was set to COM3 but the laptop assigned it a different port. Fix: go to Device Manager on Windows or System Preferences on Mac to find the correct port and update SERIAL_PORT in the script.
2. Garbled Serial Data When the Arduino first connects it sends garbage characters before settling. Fix: the time.sleep(2) and ser.reset_input_buffer() lines in the Python script clear this out on startup.
3. False "Done" Triggers Early testing showed the system declaring the dryer done during brief mid-cycle temperature dips. Fix: the doneDelay timer requires the temperature to stay in the cooling range for 5 full seconds before triggering.
4. Email Not Sending Gmail blocked the script from sending. Fix: a Gmail App Password is required instead of your regular password since Google does not allow direct login from third party scripts.
5. Thermistor Reading Wild Numbers Getting temperatures like 900°F or -200°F. Fix: double check that the resistor is exactly 10kΩ and that the wiring matches 5V → thermistor → A0 + resistor → GND.
References
Arduino. (2024). Arduino Nano documentation. https://docs.arduino.cc/hardware/nano/
PySerial Development Team. (2024). PySerial documentation. https://pyserial.readthedocs.io
Arduino. (2024). Arduino IDE download. https://arduino.cc/en/software