Updating the firmware on an ESP-01 is done using the Arduino IDE. It took several attempts before I got it, but eventually I was successful. I followed this Instructables guide in order to make sure I got it right.
In order to enable it, you have to do some extrenely precise soldering between a pin on one of the ICs and the reset pin of the board. However, like I said, it isn't supported natively out of the box. You can get literal years out of these on a single charge if your battery will allow for it and its done right. This is a mode you can put the ESP-01 into where it uses an extremely low amount of power, wakes itself up periodically to perform a task, and goes back to sleep. One problem with the ESP-01 is that it doesn't natively support deep sleep. I also added some comformal coating to the PCB just in case moisture gets in. I added some pins for easy programming in case I needed to reflash the firmware. Here is the first version of the PCB finished.
#YNAB 4 PIRATE HOW TO#
I am a novice when it comes to creating electronics so there was a bit of a learning curve here with regards to how to wire everything together, but I figured it all out pretty quick. I used a small amount of sealant around the probe, but it was mostly sealed due to the tolerances between the probe and the float. As opposed to the bare DS18B20 that can be mounted direcetly to a PCB, the water-proof version comes within a sealed steel sleeve that fits nicely at the end of the probe. In order to measure temperature, I used a simple water-proof version of the DS18B20 temperature sensor. It too would need its voltage regulated down to a safe 3.3 volts, which I did with a MCP1700 voltage regulator. I decided to go with a 6V 2400 mAh NiMh battery since it's safer to use in the water as opposed to lithium ion. Besides, if I can get the battery usage low enough it can run for months and in some cases years on a single charge, battery characteristics being the major wildcard in that calculus. I considered using solar to charge a battery, but decided to keep version one simple. Some people say you can use 5 volts and get away with it, but I'd rather not risk it.
#YNAB 4 PIRATE SERIAL#
This version of the ESP8266 does not have UART, so you will need a USB to Serial adapter and a way of regulating the voltage down from the 5 volts USB provides to the 3.3 volts the ESP-01 requires. I needed this project to be super low-power, so I opted to use a variant of the ESP8266 that is designed with low power applications in mind: the ESP-01. After testing whether it would actually float the way I wanted it to (it did), I started working on the electronics Electronics A screw cap would be sealed to the top to keep water out.Īs you can see in the pictures, the probe sticks out of the tip and the wire runs inside the cavity past the NiMh battery to where the circuit board will be mounted to a mounting plate. The electronics would sit at the top, above the battery and temperature probe. This way, it would float due to the ballast at the top and the temperature probe would always be in the water since the battery weight would be in the cone. I eventually landed on a conical shape with the probe sticking out of the tip of the cone. The second and third options both seemed viable but I preferred the float approach.Īfter getting the 3d printer dialed in and learning the basics of Meshmixer and Cura, I set about creating some prototypes. The first option scared me since it required drilling a hole into our piping. I've had several ideas about how to do this, including inserting a temperature probe in our post-pump piping, inserting one in the strainer basket, and creating a floating temperature probe. A good price on a Sovol SV-01 popped up one day and we jumped on it. Other than woodworking, I really didn't have the means to create something that I felt was both safe and didn't look like total garbage.Ī close friend of ours, who is really into 3d printing, knew we were interested in getting a 3d printer at some point and was keeping an eye on deals for us. Just being able to see if the pool is warm enough for swimming would be worth it alone, but a ton of other automations could follow.Īfter searching for existing products, for which there were none, I had to fall back to crafting my own solution. It's been on my mind since we moved into our new home that I wanted to somehow add our pool's temperature to HomeKit.