We have two problems: our memory, and our washing machine is a picky machine. We often forget when washing a load is done as we don't hear the audible beep. The washing machine will stop midway through a cycle if the load is uneven. We have had issues for a few years trying to balance it, level it, and trying different size loads, but we still have an issue.
What usually ends up happening is that a load finishes fully, or it stops uneven, and we don't hear the beeps leaving a really soggy pile of wet laundry. We often have to re-wash the load completely resulting in a waste of water/power/detergent. I built this little ESP8266 assembly to email us when the machine has stopped.
I plan to design a PCB and make a little enclosure to make this look more professional.
Get a Thinger.io AccountSign up to Thinger.io to create an account. https://hackaday.io/project/6329-open-source-iot-platform-thingerio
Add a DeviceOnce you've activated your thinger.io account, login and proceed to the Devices section in your console and click Add a device.
Enter a name for your device in the Device ID section. Enter a description for the device in the description section. Enter the desired credentials in the credentials section. I used the random generator for my project.
Click Endpoints to proceed to the endpoint section. Add endpoint. Add an endpoint to your thinger.io account.
Enter a name for your endpoint in the Endpoint Identifier section. Enter a description for the endpoint in the description section. Choose Email for endpoint type to send an email when this endpoint is called out in your program. Enter the desired email address, subject and body for the email you wish to send.
Build your ESP8266 sensor.
You can use whichever dev board you desire that can be flashed using the Arduino IDE. I had some breadboard adapter boards from Baoshi as shown here. I built the board (this was my first time ever soldering SMD components) and used a mini breadboard as the prototype for this project.
I used this tutorial as a starting point for setting up the sensor. The LDR is connected to the VCC and A0 pins on my ESP-12E. There is a 10k resistor between the LDR and A0 Pin connected to ground. I plan to add a Fritzing diagram shortly.
I used a micro USB breakout board to power the sensor module. The Baoshi board accepts 5V which make it great for connecting to a standard USB plug adapter.
Flash the ESPUsing the Laundresp.ino file provided below, and your WiFi and Thinger credentials, flash the ESP module.
Mount Your SensorMount the LDR to a location that has an LED which turns on when a load is started, and turns off when the machine stops. For my machine, there's a single red light that indicates the laundry machine cover/door is locked. It turns on when a cycle starts and turns off when it stops.
Tape around the LDR to prevent additional light from setting it off. Power the board and test the washing machine to see if you are successful.
Depending on the LDR and the light levels emitted from the LED you may need to adjust the analog input thresholds in the Arduino code. You can view the analog output in the device API in your Thinger console.
Next StepsIt has been working for a few days now with no issues. I want to program the ESP8266 using a Pogo pin programmer board, and then design a tiny board that can be mounted permanently. I need to learn how to design a PCB now.
FilesLaundrEspV2.2.brd: I'm not an electrical engineer. Use at your own risk.
LaundrEspV2.2.sch: I'm not an electrical engineer. Use at your own risk.
laundresp_top.stl: Enclosure Top: May require some trimming on the legs.
laundresp_main.stl: Enclosure Body.
Comments
Please log in or sign up to comment.