Parts of the automated soil moisture monitoring station

Solar Stevenson Screen For Smart Sprinkler

It’s not infrequent that we see the combination of moisture sensors and water pumps to automate plant maintenance. Each one has a unique take on the idea, though, and solves problems in ways that could be useful for other applications as well. [Emiliano Valencia] approached the project with a few notable technologies worth gleaning, and did a nice writeup of his “Autonomous Solar Powered Irrigation Monitoring Station” (named Steve Waters as less of a mouthful).

Of particular interest was [Emiliano]’s solution for 3D printing a threaded rod; lay it flat and shave off the top and bottom. You didn’t need the whole thread anyway, did you? Despite the relatively limited number of GPIO pins on the ESP8266, the station has three analog sensors via an ADS1115 ADC to I2C, a BME280 for temperature, pressure, and humidity (also on the I2C bus), and two MOSFETs for controlling valves. For power, a solar cell on top of the enclosure charges an 18650 cell. Communication over wireless goes to Thingspeak, where a nice dashboard displays everything you could want. The whole idea of the Stevenson Screen is clever as well, and while this one is 3D printed, it seems any kind of stacking container could be modified to serve the same purpose and achieve any size by stacking more units. We’re skeptical about bugs getting in the electronics, though.

We recently saw an ESP32-based capacitive moisture sensor on a single PCB sending via MQTT, and we’ve seen [Emiliano] produce other high quality content etching PCBs with a vinyl cutter.

Fan-tastic Misuse Of Raspberry Pi GPIO

[River] is a big fan of home automation. After moving into a new house, he wanted to assimilate two wirelessly controlled fan lights into his home automation system. The problem was this: although the fans were wireless, their frequency and protocol were incompatible with the home automation system.

Step one was to determine the frequency the fan’s remote used. Although public FCC records will reveal the frequency of operation, [River] thought it would be faster to use an inexpensive USB RTL-SDR with the Spektrum program to sweep the range of likely frequencies, and quickly found the fans speak 304.2 MHz.

Next was to reverse-engineer the protocol. Universal Radio Hacker is a tool designed to make deciphering unknown wireless protocols relatively painless using an RTL-SDR. [River] digitized a button press with it and immediately recognized it as simple on-off keying (OOK). With that knowledge, he digitized the radio commands from all seven buttons and was quickly able to reverse-engineer the entire protocol.

[River] wanted to use a Raspberry Pi to bring the fans into his home automation system, but the Raspberry Pi doesn’t have a 304.2 MHz radio. What it does have is user-programmable GPIO and the rpitx package, which converts a GPIO pin into a basic radio transmitter. Of course, the Pi’s GPIO pin’s aren’t long enough to efficiently transmit at 304.2 MHz, so [River] added a proper antenna, as well as a low-pass filter to clean up the transmitted signal. The rpitx package supports OOK out of the box, so [River] was quickly able get the Pi controlling his fan in no time!

If you’d like to do some more low-cost home automation, check out this approach to using a Raspberry Pi to control some bargain-bin smart plugs.

Roomba Gets Alexa Support With An ESP8266 Stowaway

The modern home is filled with plenty of “smart” devices, but unfortunately, they don’t always speak the same language. The coffee maker and the TV might both be able to talk to your phone through their respective apps, but that doesn’t necessarily mean the two appliances can work together to better coordinate your morning routine. Which is a shame, since if more of these devices could communicate with each other, we’d be a lot closer to living that Jetsons life we were promised.

Luckily, as hardware hackers we can help get our devices better acquainted with one another. A recent post by [MyHomeThings] shows how the ESP8266 can bridge the gap between a Roomba and Amazon’s Alexa assistant. This not only allows you to cheaply and easily add voice control to the robotic vacuum, but makes it compatible with the Amazon’s popular home automation framework. This makes it possible to chain devices together into complex conditional routines, such as turning off the lights and activating the vacuum at a certain time each night.

The hack depends on the so-called Roomba Open Interface, a seven pin Mini-DIN connector that can be accessed by partially disassembling the bot. This connector provides power from the Roomba’s onboard batteries as well as a two-way serial communications bus to the controller.

By connecting a MP1584EN DC-DC converter and ESP8266 to this connector, it’s possible to send commands directly to the hardware. Add a little glue code to combine this capability with a library that emulates a Belkin Wemo device, and now Alexa is able to stop and start the robot at will.

We’ve seen this sort of trick used a few times before to add backdoor Alexa support to various gadgets, and it’s always interesting to see what kind of unusual hardware folks are looking to make an integral part of their smart home.

Minimal MQTT With Micropython

I have been meaning to play around with MQTT for some time now, and finally decided to take the plunge one evening last week. I had three cheap home temperature and humidity sensors, and was bothered that they often didn’t agree. Surprisingly, while the analog one had a calibration adjustment in the back, I have no idea how to calibrate the two digital ones. I took this as a sign that it was time to learn MQTT and be able to install my own, accurate sensors. Of course, I began by ordering the cheapest sensors I could find, but I can always upgrade later on.

Three Cheap Sensors

While we have written quite a bit about MQTT in Hackaday, I had to go all the way back to 2016 to find this introductory four-part series by Elliot Williams. Five years is a long time in the tech world, but I decided to give it a try anyway. Continue reading “Minimal MQTT With Micropython”

Automating Your Car With A Spare Fob And An ESP8266

Despite the name, home automation doesn’t have to be limited to only the devices within your home. Bringing your car into the mix can open up some very interesting possibilities, such as automatically getting it warmed up in the morning if the outside air temperature drops below a certain point. The only problem is, not everyone is willing to start hacking their ride’s wiring to do it.

Which is exactly why [Matt Frost] went the non-invasive route. By wiring up an ESP8266 to a cheap aftermarket key fob for his Chevrolet Suburban, he’s now able to wirelessly control the door locks and start the engine without having to make any modifications to the vehicle. He was lucky that the Chevy allowed him to program his own fob, but even if you have to spend the money on getting a new remote from the dealer, it’s sure to be cheaper than the repair bill should you cook something under the dash with an errant splice or a misplaced line of code.

The hardware for this project is about as simple as it gets. The fob is powered by the 3.3 V pin on the Wemos D1 Mini, and the traces for the buttons have been hooked up to the GPIO pins. By putting both boards into a custom 3D printed enclosure, [Matt] came up with a tidy little box that he could mount in his garage and run off of a standard USB power supply.

On the software side of things [Matt] has the device emulating a smart light so it can easily be controlled by his Alexa, with a few helpful routines sprinkled in that allow him to avoid the awkward phraseology that would be required otherwise. There’s also a minimal web server running on the microcontroller that lets him trigger various actions just by hitting the appropriate URLs, which made connecting it to Home Assistant a snap. One downside of this approach is that there’s no acknowledgement from the vehicle that the command was actually received, but you can always send a command multiple times to be sure.

This isn’t the first time we’ve seen an ESP8266 used to “push” buttons on a remote. If you’ve got a spare fob for your device, or can get one, it’s an excellent way to automate it on the cheap.

Making Smart Bulbs Smarter With The Power Of MQTT

What’s the point of smart home automation? To make every day tasks easier, of course! According to [Tomasz Cybulski], that wasn’t the case when he installed IKEA smart lights in his closet. It’s handy to have them in a common switch, in this case a remote control, but having to look for it every time he needed the lights could use some improvement. Enter his project to make smart bulbs smarter, through the use of a simple ESP8266.

While hooking a door switch to the lights’ power supply could provide a quick solution, [Tomasz]’s wife wanted to keep the functionality of the remote control, so he had to look elsewhere. These light bulbs use the simple Zigbee protocol, so arranging for other devices was rather trivial. A USB dongle to interface with the protocol was configured for his existing Raspberry Pi automation controller, while an ESP8266 served as the real-world sensor by connecting it to reed switches installed in the closet doors.

With all the hardware sorted out, it’s a simple matter of making it all talk to each other. The ESP8266, using the Tasmota firmware, sends a signal to an MQTT server running on the Raspberry Pi, which in turn translates it to a remote trigger on the Zigbee frequency with the dongle. The lights turn on when the door opens, and off again once it closes. And since there were no further modifications to the lights themselves, the original IKEA controller still works as expected, which we’re sure [Tomasz]’s wife appreciates!

MQTT can be an interesting piece of software that goes beyond just home automation though, and if you already have a server in your home you can use it to transfer your clipboard’s contents to another device. If you are using it for home automation though, here’s an inspiration for a rather unusual dashboard to keep things interesting. Check out this hack in action after the break.

Continue reading “Making Smart Bulbs Smarter With The Power Of MQTT”

DIY ESP32 Video Doorbell Locks Out Big Brother

There’s no question that being able to see who’s at your front door from your computer or mobile device is convenient, which is why the market is currently flooded with video doorbells. Unfortunately, it’s not always clear who else has access to the images these devices capture. Organizations such as the Electronic Frontier Foundation have argued that by installing one of these Internet-connected cameras on their front door, consumers are unwittingly contributing to a mass surveillance system that could easily be turned against them.

Luckily, there’s a solution. As [Sebastian] shows in his latest project, you can build your own video doorbell that replicates the features of the commercial offerings while ensuring you’re the only one who has access to the data by leveraging open source, community developed projects such as ESPHome and Home Assistant. At the same time, modern manufacturing techniques like desktop 3D printing and low-cost PCB fabrication mean your DIY doorbell doesn’t have to look like you made it yourself.

The project starts with a custom PCB that combines the ESP32, a camera module, a capacitive touch sensor, a relay to optionally trigger an electronic door lock, and a DC-DC converter that will let you power the device from a wide range of input voltages. The board even has a spot where you can solder on an additional 8 MB of external PSRAM for the ESP32, which will enable the chip to capture higher resolution video.

The electronics are housed in a minimalistic 3D printed enclosure that would fit right in alongside similar gadgets from the likes of Ring and Arlo; especially if you have access to a CNC and can cut the front panel out of acrylic. The lighted touch sensor looks phenomenal, and really gives the device a professional feel. That said, it doesn’t look like the case would last very long if exposed to harsh weather and there are some obvious physical security issues with this approach. But to be fair, we’ve seen the same problem with commercial hardware.

Naturally with a project like this, the hardware is only half of the story. It takes a considerable amount of software poking and prodding to get things like mobile device notifications working, and as a special added annoyance, the process is different depending on which MegaCorp produced the OS your gadget is running. [Sebastian] has documented the bulk of the process in the video after the break, but the finer points will likely need some adjustment depending on how you want to set things up.

This is an exceptionally impressive project for sure, but if the whole slick futuristic look isn’t your style, you could always opt to go with the DIY video door bell that looks like it came from an alternate reality version of 1986.

Continue reading “DIY ESP32 Video Doorbell Locks Out Big Brother”