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.

Surprisingly Stomp-able Soft Switches

Competition sure brings out the brute in people, doesn’t it? So what do you do when you need a bunch of switches you can let people fist-pound or stomp on repeatedly without them taking damage? You could look to the guitar pedal industry and their tough latching switches, or you could simply build your own smash-resistant buttons as [wannabemadsci] has done.

The main thing about these switches is that they aren’t easily destroyed by shoes or angry fists. That’s because the shiny red push-me part of the button is made by cutting a foam ball in half.

Not easily crush-able Styrofoam, mind you — squishy, coated foam like an indoor football. This is mounted to the top of a sandwich made of hardboard and a couple pieces of easily-compressible foam from craft paintbrushes.

A brass washer is mounted to the middle of both pieces of hardboard, and these have wires soldered to them to read button presses. Then it’s just a matter of hooking it to a microcontroller like any other momentary.

There are all kinds of things you could cut in half for the top, like maybe tennis balls. Or, do what [Sprite_TM] did and use inverted plastic bowls.

Capacitive Touch Controller For FPGAs

Most projects that interface with the real world need some sort of input device. Obviously this article is being written from a standardized “human interface device” but when the computers become smaller the problem can get more complicated. We can’t hook up a USB keyboard to every microcontroller since we often only need a few buttons, but even buttons can be a little bit too cumbersome for some applications. For something even simpler, we would like to turn your attention to capacitive touch controllers.

Granted, these devices are really only simpler from a hardware perspective. Rather than a switch that can be prone to failure either when its moving parts break or its contacts become corroded, a capacitive touch button only needs a certain conductive area on something like a PCB, along with a few passive components, to work. The real difficulty is in the software, so this project aims to make it simpler to bring these sort of devices to any FPGA that needs some sort of interface like this. It can operate in stand-alone mode or in a custom user interface, and was written to be platform-independent in VHDL without the need for any dependencies or macros.

The project’s page goes into a great amount of detail on how capacitive touch sensors like these work in general, and describes the operation of this specific code as well. Everything is open source, so it’s ready to be put to work right away. If you need capacitive touch capabilities on something like a microcontroller, though, take a look at this tiny Atmel-powered musical instrument instead.

Buttonpusher Automates Animal Crossing Tasks

Press button, wait, press button again, repeat. There must be a better way! If that kind of interaction drives you nuts, you’ll probably appreciate [Tommy]’s buttonpusher, which has only one job: automate away some of the more boring parts of Nintendo’s Animal Crossing. On one hand the job the device does is very simple: press a button on the Nintendo joy-con in a preprogrammed pattern. There’s no feedback loop, it just dumbly presses and waits. But there are still quite a few interesting bits to this build.

Rigid mounting combined with interfacing the actuator to the servo horn (instead of to the servo shaft) were the keys to reliable button pushing.

For one thing, [Tommy] discovered that the little 9g RC servo can reliably exert enough force to press the button on the joy-con with the right adapter. He had assumed the servo would be too weak to do the job without a greater mechanical advantage, but a simple hammer-style actuator that attaches to the servo horn easily does the job. Well, it does as long as the servo and joy-con are held rigidly; his first version allowed a little too much wiggle in how well the parts were held, and button presses didn’t quite register. With a 3D-printed fixture to rigidly mount both the servo and the joy-con, things were fine.

In the process of making buttonpusher, which uses CircuitPython, [Tommy] created a tool to automate away another pesky task he was running into: circuitpython_tools was created to automatically watch for code changes, convert the .py files into (smaller) MicroPython bytecode .mpy files, then automatically deploy to the board. This saved [Tommy] a lot of time and hassle during development, but it was only necessary because he quickly ran out of memory on his M0 Metro Express board, and couldn’t fit his code in any other way.

Still, it’s a good example of how one project can sometimes spawn others, and lead to all kinds of lessons learned. You can see buttonpusher automate the crafting process in Animal Crossing in the video, embedded below.

Continue reading “Buttonpusher Automates Animal Crossing Tasks”

Add Scroll Wheels And Buttons To Smartphones With 3D-Printed Widgets Read By Accelerometer

The first LED digital wristwatches hit the market in the 1970s. They required a button push to turn the display on, prompting one comedian to quip that giving one to a one-armed man would be in poor taste. While the UIs of watches and other wearables have improved since then, smartphones still present some usability challenges. Some of the touch screen gestures needed to operate a phone, like pinching, are nigh impossible when one-handing the phone, and woe unto those with stubby thumbs when trying to take a selfie.

You’d think that the fleet of sensors and the raw computing power on board would afford better ways to control phones. And you’d be right, if the modular mechanical input widgets described in a paper from Columbia University catch on. Dubbed “Vidgets” by [Chang Xiao] et al, the haptic devices are designed to create characteristic acceleration profiles on a phone’s inertial measurement unit (IMU) when actuated. Vidgets take various forms, from push buttons to scroll wheels, each of a similar size and shape and designed to dock into one of eight positions on the back of a 3D-printed phone case. Once trained, the algorithm watches for the acceleration signature caused by actuating a Vidget, and sends commands to the phone to mimic the corresponding gestures. The video below demonstrates a couple of use cases, of which the virtual saxophone is our favorite.

This is really clever stuff, and ventures deep into “Why didn’t I think of that?” territory. Need to get ahead of the curve on IMUs to capitalize on what they can do? You could start with [Al Williams]’ primer on micro-electromechanical systems, or MEMS.

Continue reading “Add Scroll Wheels And Buttons To Smartphones With 3D-Printed Widgets Read By Accelerometer”

A Nurse Call System Becomes Turing Complete

George Mallory, a famous English mountaineer, once suggested that it was of no use to climb mountains. Instead, he posited, the only reason to climb a mountain is because it is there. Likewise, when you become an expert in nurse call systems like those found in hospitals, you may find that you do things with them that are of similar use. Making a Turing-complete nurse call system is something you do because you can.

[Erik] has been working on this particular call system, known as Netrix, and used Wireshark to sniff out all of its protocols. With this information he realized that it would be possible to use the system’s routing features to perform all of the tasks that any Turing complete system can do: conditional branching and memory access. He set up a virtual machine and set about implementing all of these tasks using the nurse call system’s features.

The setup for this project is impressive, and belies an extensive knowledge of this one proprietary system but also of computer science in general. It’s interesting to see how something can be formed into a working computer system from parts that otherwise might not be used that way. Even things that aren’t electronic can be used as Turing-complete computers.

Photo via Wikimedia Commons

Building A Semiautomatic Swag Launcher

Regular readers of Hackaday have certainly seen the work of [Jeremy Cook] at this point. Whether you remember him from his time as a writer for this fine online publication, or recognize the name from one of his impressive builds over the last few years, he’s a bona fide celebrity around these parts. In fact, he’s so mobbed with fans at events that he’s been forced to employ a robotic companion to handle distributing his personalized buttons for his own safety.

Alright, that might be something of a stretch. But [Jeremy] figured it couldn’t hurt to have an interesting piece of hardware handing out his swag at the recent Palm Bay Mini Maker Faire. Anyone can just put some stickers and buttons in a bowl on a table, but that’s hardly the hacker way. In the video after the break, he walks viewers through the design and construction of this fun gadget, which takes a couple unexpected turns and has contains more than a few useful tips which are worth the cost of admission alone.

Outwardly the 3D printed design is simple enough, and reminds us of those track kits for Matchbox cars. As you might expect, getting the buttons to slide down a printed track was easy enough. Especially when [Jeremy] filed the inside smooth to really get them moving. But the goal was to have a single button get dispensed each time the device was triggered, but that ended up being easier said than done.

The first attempt used magnets actuated by two servos, one to drop the button and the other to hold up the ones queued above it. This worked fine…at first. But [Jeremy] eventually found that as he stacked more buttons up in the track, the magnets weren’t strong enough to hold them back and they started “leaking”. This is an excellent example of how a system can work perfectly during initial testing, but break down once it hits the real world.

In this case, the solution ended up being relatively simple. [Jeremy] kept the two servos controlled by an Arduino and a capacitive sensor, but replaced the magnets with physical levers. The principle is the same, but now the system is strong enough to hold back the combined weight of the buttons in the chute. It did require him to cut into the track after it had already been assembled, but we can’t blame him for not wanting to start over.

Just like the arcade inspired candy dispenser, coming up with a unique way of handing out objects to passerby is an excellent way to turn the ordinary into a memorable event. Maybe for the next iteration he can make it so getting a button requires you to pass a hacker trivia test. Really make them work for it.

Continue reading “Building A Semiautomatic Swag Launcher”