A high level pictorial schematic of the basement monitor.

Making Sure The Basement Stays Dry With An ESP8266

The hack we have for you today is among our most favorite types of hack: a good, honest, simple, and well documented implementation that meets a real need. Our hacker [Solo Pilot] has sent in a link to their basement monitor.

The documentation is quite good. It’s terse but comprehensive with links to related information. It covers the background, requirements, hardware design, sensors, email and SMS alerts, software details, and even has some credits at the end.

Implementing this project would be a good activity for someone who has already made an LED flash and wants to take their skills to the next level by sourcing and assembling the hardware and then configuring, compiling, deploying, and testing the software for this real-world project.

To make this project work you will need to know your way around the Arduino IDE in order to build the software from the src.zip file included with the documentation (hint: extract the files from src.zip into a directory called AHT20_BMP280 before opening AHT20_BMP280.ino and make sure you add necessary boards and libraries).

One feature of the basement monitor that we would like to see is a periodic “everything’s okay” signal from the device, just so we can confirm that the reason we’re not getting an alarm about flooding in the basement is because there is no flood, and not because the battery ran dead or the WiFi went offline.

If you’ve recently started on your journey into where electronics meets software a project such as this one is a really great place to go next. And of course once you are proficient with the ESP8266 there are a thousand such projects here at Hackaday that you can cut your teeth on. Such as this clock and this fault injection device.

Atomic Clock Trades Receiver For An ESP8266

The advantage of a radio-controlled clock that receives the time signal from WWVB is that you never have to set it again. Whether it’s a little digital job on your desk, or some big analog wall clock that’s hard to access, they’ll all adjust themselves as necessary to keep perfect time. But what if the receiver conks out on you?

Well, you’d still have a clock. But you’d have to set it manually like some kind of Neanderthal. That wasn’t acceptable to [jim11662418], so after he yanked the misbehaving WWVB receiver from his clock, he decided to replace it with an ESP8266 that could connect to the Internet and get the current time via Network Time Protocol (NTP).

Continue reading “Atomic Clock Trades Receiver For An ESP8266”

Using The ESP8266 For Low-Cost Fault Injection

As a general concept, fault injection is a technique that studies how a system reacts to unusual or unexpected external forces. The idea is that, if you can trigger a glitch at the precise moment, you might be able to use that to your advantage in disabling security features or otherwise gaining further access to the device in question. In the hardware world, this could be achieved by fiddling with the power going into the device, or subjecting it to extreme temperatures.

We’ve covered voltage glitching attacks on these pages in the past, but most of the tools used are fairly expensive if you’re not doing this kind of thing professionally. Luckily for us, [Aditya Patil] has developed a fault injection tool that can run on a standard ESP8266 development board. Obviously it’s not as capable as a bespoke device costing hundreds of dollars, but if you just want to experiment with the concept, it’s a fantastic way to wrap your head around it all.

Continue reading “Using The ESP8266 For Low-Cost Fault Injection”

ESP8266 Keeps Tabs On Wood Stove Temperature

Wood heat offers unique advantages compared to more modern heating systems, especially in remote areas. But it also comes with its own challenges, namely, keeping the fire going at the optimum temperature. If it’s too cold you risk buildup in the chimney, but if you’ve got it stoked up more than necessary, you’ll end up burning through your wood faster.

To keep the fire in that sweet spot, [Jay] decided to put an ESP8266 and a thermocouple to work. Now, this might seem like an easy enough job at first, but things are complicated by the fact that the flue temperature above the stove lags considerably behind the temperature inside the stove. There’s also the fact that the top of the chimney will end up being much colder than the bottom.

Mounting the thermocouple in the flue pipe.

In an effort to get a more complete view of what’s happening, [Jay] plans on putting at least two thermocouples in the chimney. But as getting on the roof in December isn’t his idea of fun, for now, he’s starting with the lower one that’s mounted right above the stove. He popped a hole in the pipe to screw in a standard K-type probe, and tapped it a few times with the welder to make sure it wasn’t going anywhere.

From there, the thermocople connects to a MAX6675 amplifier, and then to the WeMos D1 Mini development board that’s been flashed with ESPHome. [Jay] provides the configuration file that will get the flue temperature into Home Assistant, as well as set up notifications for various temperature events. The whole thing goes into a 3D printed box, and gets mounted behind the stove.

This project is a great example on how you can get some real-world data into Home Assistant quickly and easily. In the future, [Jay] not only wants to add that second thermocouple, but also look into manipulating the stove’s air controls with a linear actuator. Here’s hoping we get an update as his woodstove learns some new tricks.

Be Your Own DJ With QN8066 And An Arduino Library

The QN8066 is a fun little FM transmitter chip. It covers the full FM broadcast band and has built-in DSP. You would find this sort of part in car cell phone adapters before every vehicle included Bluetooth or an AUX port.  [Ricardo] has created an Arduino library to bring the QN8066 to the masses.

The chip is rather easy to use – control is handled with a common I2C interface. All the complex parts – Phase Locked Loop (PLL), RF front end, power management, and audio processing are all hidden inside. [Ricardo’s] library makes it even easier to use. One of the awesome features of the 8066 is the fact that it handles Radio Data System (RDS). RDS is the subcarrier datastream that allows FM stations to inject information like song title and artist into the signal. The data is then displayed on your radio screen.

You can find the source to [Ricardo’s] library on GitHub. Using it is as simple as picking it up from the Arduino IDE.

If you are looking for an RDS-enabled radio to test out your QN8066 design, you wouldn’t do too bad with this Gameboy cartridge receiver.

Click through the break for a video from [Ricardo] explaining his QN8066 design. Continue reading “Be Your Own DJ With QN8066 And An Arduino Library”

Hackaday Podcast Episode 266: A Writer’s Deck, Patching Your Battleship, And Fact-Checking The Eclipse

Before Elliot Williams jumps on a train for Hackaday Europe, there was just enough time to meet up virtually with Tom Nardi to discuss their favorite hacks and stories from the previous week. This episode’s topics include the potential benefits of having a dual-gantry 3D printer, using microcontrollers to build bespoke note taking gadgets, the exciting world of rock tumbling, and the proper care and maintenance required to keep your World War II battleship in shape. They’ll also go over some old school keyboard technologies, DIP chip repairs, and documenting celestial events with your home solar array. By the end you’ll hear about the real-world challenges of putting artificial intelligence to work, and how you can safely put high-power lithium batteries to work in your projects without setting your house on fire.

Check out the links below if you want to follow along, and as always, tell us what you think about this episode in the comments!

Direct download for off-line listening.

Continue reading “Hackaday Podcast Episode 266: A Writer’s Deck, Patching Your Battleship, And Fact-Checking The Eclipse”

FLOSS Weekly Episode 766: WebRTC — The Hack That Connects Everyone To Everything

This week Jonathan Bennett and Dan Lynch talk with Sean DuBois, WebRTC wizard, all about the crazy feats the Pion Go server is capable of, how WebRTC is about to change OBS, and what it looks like to build a successful Open Source Career.

WebRTC is for more than video. The TOR Snowflake project uses Pion to sneak TOR traffic through firewalls even with Deep Packet Inspection (DPI) at play. Since nobody wants to block web conferencing, TOR and even Wireguard can use this to slip though.

Sean is also working on some game-changing patches for OBS Studio, including WHEP support to go along with the newly introduced WHIP feature. This enables direct connections to another OBS client, as well as connection to another WebRTC client like vdo.ninja without running an embedded browser to make it work.

And then there’s WebRTC For The Curious, a free CC0 e-book all about the nuts and bolts of WebRTC. And Broadcast Box, a ready-to-run WebRTC one-to-many broadcasting solution that lets you run your own streaming service. You can connect with Sean at the Real-time Broadcast Discord server for information about all of the projects listed here and more!

Continue reading “FLOSS Weekly Episode 766: WebRTC — The Hack That Connects Everyone To Everything”