Pie Stop For Emergency DNS Needs

The war on Internet ads rages on, as the arms race between ad blockers and ad creators continues to escalate. To make a modern Internet experience even remotely palatable, plenty of people are turning to DNS-level filters to stop the ads from coming into the network at all. This solution isn’t without its collateral damage though, as the black lists available sometimes filter out something that should have made it to the user. For those emergencies, [Kristopher] created the Pie Stop, a physical button to enact a temporary passthrough on his Pi-Hole.

While [Kristopher] is capable of recognizing a problem and creating the appropriate white list for any of these incidents, others in his household do not find this task as straighforward. When he isn’t around to fix the problems, this emergency stop can be pressed by anyone to temporarily halt the DNS filtering and allow all traffic to pass through the network. It’s based on the ESP-01S, a smaller ESP8266 board with only two GPIO pins. When pressed, it sends a custom command to the Pi-Hole to disable the ad blocking. A battery inside the case allows it to be placed conveniently anywhere near anyone who might need it.

With this button deployed, network snafus can be effectively prevented even with the most aggressive of DNS-level ad blocking. If you haven’t thought about deploying one of these on your own network, they’re hard to live without once you see how powerful they are. Take a look at this one which also catches spam.

ESP8266 Web Server Saves 60% Power With A 1 Ms Delay

Arduino has a library for quickly and easily setting up a simple web server on an ESP8622-based board, and [Tomaž] found that power consumption on an ESP-01 can be reduced a considerable amount by simply inserting a 1 ms delay in the right place. The reason this works isn’t because of some strange bug or oddball feature — it’s really just a side effect of how the hardware operates under the hood.

[Tomaž] uses the “hello world” example from ESP8266WebServer to explain. In it, the main loop essentially consists of calling server.handleClient() forever. That process checks for incoming HTTP connections, handles them, sends responses, exits — and then does it all over again. A simple web server like this one spends most of its time waiting.

A far more efficient way to handle things would be to launch server.handleClient() only when an incoming network connection calls for it, and put the hardware to sleep whenever that is not happening. However, that level of control just isn’t possible in the context of the Arduino’s ESP8266WebServer library.

So what’s to be done? The next best thing turns out to be a simple delay(1) statement right after each server.handleClient() call in the main loop.

Why does this work? Adding delay(1) actually causes the CPU to spend the vast majority of its time in that one millisecond loop. And counting microseconds turns out to be a far less demanding task, power-wise, than checking for incoming network requests about a hundred thousand times per second. In [Tomaž]’s tests, that one millisecond delay reduced idle power consumption at 3.3 V from roughly 230 mW to around 70 mW — about 60% — while only delaying the web server’s response times by 6-8 milliseconds.

For simple web server applications, this is is for sure a good trick to keep in mind. There are also much more advanced techniques for saving power on ESP8266-based boards; from boards that barely sip a single microamp while sleeping, to coin-cell powered boards that go so far as to modify the TCP/IP stack to help squeeze every bit of power savings possible.

Front Door Keys Hidden In Plain Sight

If there’s one thing about managing a bunch of keys, whether they’re for RSA, SSH, or a car, it’s that large amounts of them can be a hassle. In fact, anything that makes life even a little bit simpler is a concept we often see projects built on to of, and keys are no different. This project, for example, eliminates the need to consciously carry a house key around by hiding it in a piece of jewelry.

This project sprang from [Maxime]’s previous project, which allowed the front door to be unlocked with a smartphone or tablet. This isn’t much better than carrying a key, since the valuable piece of electronics must be toted along in place of one. Instead, this build eschews the smartphone for a ring which can be worn and used to unlock the door with the wave of a hand. The ring contains an RFID which is read by an antenna that’s monitored by a Wemos D1 Mini. When it sees the ring, a set of servos unlocks the door.

The entire device is mounted on the front of the door about where a peephole would normally be, with the mechanical actuators on the inside. It seems just as secure (if not more so) than carrying around a metal key, and we also appreciate the aesthetic of circuit boards shown off in this way, rather than hidden inside an enclosure. It’s an interesting build that reminds us of some other unique ways of unlocking a door.

Continue reading “Front Door Keys Hidden In Plain Sight”

Animated LED Arrows Point The Way

Visitors at the Garden D’Lights in Bellevue, Washington had a problem. While touring the holiday lights show, they kept straying off the path. The event organizers tried some simple LED arrows, but they were just more points of light among a sea filled with them. This is when [Eric Gunnerson] was asked to help out. He’s apparently had some experience with LED animations, even cooking up a simple descriptor language for writing animations driven by an ESP32. To make the intended path obvious, he turned to a PVC board with 50 embedded WS2812 pixels –RGB controllable LEDs. The control box was a USB power adapter and an ESP8266, very carefully waterproofed and connected to the string of pixels. The backer board is painted black, to complete the hardware. Stick around after the inevitable break, to get a look at the final

The description of the build process is detailed and contains some great tips, but without a clever LED animation, it’s still of questionable utility. The pattern chosen is great, with the LEDs being blue most of the time, and a flame-like gradient chasing through the arrow every couple seconds. It’s obviously different from the lights of the show, and seems to be a real winner. [Eric] has published his code, with the sheepish caveat that he had to reinvent the wheel once again, and couldn’t reuse any of his previous LED animation work on this one. It’s a simple hack, but a great build log, and an effective solution to a subtle problem. And if addressable LEDs are your thing, check out our other hacks!

Continue reading “Animated LED Arrows Point The Way”

Wireless Water Detector Hooks Up To Home Assistant

Water damage can quickly make even the nicest buildings unliveable. [Andres Leon] suffered a small flood from an air conditioning unit, and wanted to avoid such issues in future. Thus, he built a wireless monitor to solve the problem.

The device is based on the ESP8266, allowing it to wirelessly communicate with Home Assistant. Thus, if it detects water via its rust-proof probes, it can notify Home Assistant via an MQTT message. From there, Home Assistant can advise the home owner remotely via phone and email. Plus, just for completeness, there’s a loud buzzer in the unit that goes off when water is detected, too. Thanks to a 2500 mAh lithium-polymer battery on board, the device can run for up to 5 months between recharges.

Integrating warning systems into one’s smart home system can be particularly useful when one is away for long periods. Things like water leaks tend to do damage over time when we’re not paying attention, so any IoT device that can assist in this regard is helpful. If you want to investigate the cause of a difficult leak, though, this other project may help. Video after the break.

Continue reading “Wireless Water Detector Hooks Up To Home Assistant”

Digital Light Pipes Clock various view of seven-segment display using illuminated light-pipes

LED Clock Has Its Pipes On Display

For most hackers and makers, building a clock is a rite of passage. Few, though, will be as unusual and engaging as this design by [TerraG2].

By combining addressable LEDs, light pipes and 7-segment displays, [TerraG2] has built a timepiece that looks great and will surely be a great conversation starter as well. It’s packed full of features such as automatic brightness control, an accelerometer controlled user interface, and WiFi to make sure it’s always accurate.

partial rear view of the clock showing illuminated light pipes
Partial rear view of the clock showing illuminated light pipes

The decision to leave the light pipes visible behind the main display really makes the project stand out from other clock builds, and the methods [TerraG2] has used to achieve this look will no doubt be transferable to a host of other projects.

The LEDs are courtesy of a standard 8×8 RGB matrix, with a custom 3D-printed shroud to hold the light pipes in place and a clever connector at the other end to illuminate the segments. With two LEDs per segment, seven segments per digit, and four digits, there’s even room for some extra features down the line if you can think of a use for those eight spare LEDs.

The brain of the project is an ESP8266 D1 with an MPU6050 inertial measurement unit (IMU) to detect when it’s flipped over to change the color scheme.

Full documentation is on Github, and a video of the clock in use is after the break.

Light pipes have been used to great effect in some other clock projects we’ve seen, such as this modern Nixie clock and this “clock of clocks”, as well as in this light organ that we showed recently.

Continue reading “LED Clock Has Its Pipes On Display”

A Pill Dispenser For The Person With Everything

Sorting out pills is a mildly tedious task, and one that’s ripe for a bit of automation. It’s a task that [Mellow] has taken on enthusiastically, with the result of an extremely well-designed dispenser that has a stack of hoppers with servos controlled by an ESP8266 that dispense the pills required on time.

There are a series of videos of which we’ve put the latest below the break, showing the various iterations of this project. Earlier versions used multiple microcontrollers rather than the single ESP, and his sensor choice is both simple and ingenious. A single vibration sensor detects the pills falling upon it, resulting on an extremely compact electronics set-up and the base of the 3D printed stack.

We’re struck by this design, by its simplicity, ingenuity, and its pleasing aesthetics with the use of a piece of perfboard and a load of heatshrink to make an extremely tidy wiring loom. We’re not sure we’ll ever need a pill dispenser like it, but if we did we don’t think we could come up with a better design.

You might be surprised to find that pill dispensers have appeared here before.

Continue reading “A Pill Dispenser For The Person With Everything”