Arduino Cable Tracer Helps Diagnose Broken USB Cables

We’ve all found ourselves swimming amongst too many similar-looking USB cables over the years. Some have all the conductors and functionality, some are weird power-only oddballs, and some charge our phones quickly while others don’t. It’s a huge headache and one that [TechKiwiGadgets] hopes to solve with the Arduino Cable Tracer.

The tracer works with USB-A, Mini-USB, Micro-USB, and USB-C cables to determine whether connections are broken or not and also to identify wiring configurations. It’s built around the Arduino Mega 2560, which is ideal for providing a huge amount of GPIO pins that are perfect for such a purpose. Probing results are displayed upon the 2.8″ TFT LCD display that makes it easy to figure out which cables do what.

It’s a tidy build, and one that we could imagine would be very useful for getting a quick go/no-go status on any cables dug out of a junk box somewhere. Just remember to WIDLARIZE any bad cables you find so they never trouble you again. Video after the break.

Continue reading “Arduino Cable Tracer Helps Diagnose Broken USB Cables”

PNG Image Decoding Library Does It With Minimal RAM

Want to display a PNG file on a display attached to an Arduino or other microcontroller board? You’ll want to look at [Larry Bank]’s PNGdec, the Arduino-friendly PNG decoder library which makes it much easier to work with PNG files on your chosen microcontroller.

The PNG image format supports useful features like lossless compression, and was generally developed as an improved (and non-patented) alternative to GIF files. So far so great, but it turns out that decoding PNG files on a microcontroller is a challenge due to the limited amount of memory compared to desktop machines. When the PNG specification was developed in the 90s, computers easily had megabytes of memory to work with, but microcontrollers tend to have memory measured in kilobytes, and lack high-level memory management. [Larry]’s library addresses these issues.

PNGdec is self-contained and free from external dependencies, and also has some features to make converting pixel formats for different display types easy. It will run on any microcontroller that can spare at least 48 K of RAM, so if that sounds useful then check out the GitHub repository for code and examples.

We’ve seen [Larry]’s wonderful work before on optimizing GIF playback as well as rapid JPEG decoding, and these libraries have increasing relevance as hobbyists continue to see small LCD and OLED-based displays become ever more accessible and affordable.

[PNG logo: PNG Home Site]

DIY PECS Board Uses Pictures To Communicate

One way of communicating with autistic and non-verbal people is through the use of a Picture Exchange Communication System or PECS board, which they can use to point out what they need or want throughout the day. However, the commercial versions of these boards have their share of problems — they’re expensive, and they’re fairly rigid as far as the pictures go. [Alain Mauer] has created an open-source PECS board that is far more personalized, and has audio to boot.

The number one requisite here is sturdiness, as [Alain]’s son [Scott] has already smashed two smartphones and a tablet. [Alain] went with a laser-cut MDF enclosure that should last quite a while. Inside is an Arduino Pro Mini and a DF Player Mini that plays corresponding clips from a micro SD card whenever [Scott] presses a button on the 16-key copper foil capacitive keypad. This PECS board is smart, too — it will sound a turn-me-off reminder after a few minutes of inactivity, and issue audible low battery warnings.

So far, [Scott] is responding better to photographs of objects than to drawings. Watch him interact with the board after the break.

This is far from the first thing [Alain] has built to help [Scott]. Be sure to check out this Pi-based media player built to engage and not enrage. Continue reading “DIY PECS Board Uses Pictures To Communicate”

Home Automation For Fans Of Quick-and-Dirty Solutions

At Hackaday, we celebrate all kinds of projects, but we’ll have to admit that the polished and professional-looking builds tend to catch our eye a lot more than perhaps they should. There’s plenty of love to be had for the rougher builds, though, of which this quick-and-dirty home automation system is a perfect example.

Before anyone rushes to state the obvious with, “Should have used some relays,” consider that [MAKE_IT_WITH_ME]’s stated goal was to get the basics of a home automation system built with pretty much nothing but what can be found in one of those Arduino starter kits. And further, consider that landlords might not look kindly on tenants who wire a bunch of SSRs or Sonoff switches into the walls of their building. So this minimalist build is perfect for certain use cases. Its interface to the building’s electrical system is 100% mechanical, via a servo that travels along the bank of switches on a stepper-driven leadscrew. The servo has a modified horn to properly flick the rocker-style switches, and although changing from switch to switch is a bit slow, it works surprisingly well. The video below shows it in action.

While we can see it possibly working as-is for Decora-style switches that are seen in some markets, we’d think some mods would be in order for the more standard toggle-style switch — perhaps a finger extending out from the horn, along with a second servo to tilt the whole assembly away from the wall to allow it to clear the switch bats.

Continue reading “Home Automation For Fans Of Quick-and-Dirty Solutions”

Hamster Trades Crypto Better Than You

The inner machinations of the mind of cryptocurrency markets are an enigma. Even traditional stock markets often seem to behave at random, to the point that several economists seriously suggest that various non-human animals might outperform one market or another just by random chance alone. The classic example is a monkey picking stocks at random, but in the modern world the hamster [Mr Goxx] actively trades crypto from inside his hamster cage.

[Mr Goxx]’s home comprises a normal apartment and a separate office where he can make his trades. The office contains an “intention wheel” where he can run in order to select a currency to trade, and two tunnels that [Mr Goxx] can use to declare his intention to buy or sell the currency he selected with the wheel. The wheel is connected to an Arduino Nano with an optical encoder, and the Nano also detects the hamster’s presence in the “buy” or “sell” tunnel and lights up status LEDs when he wants to execute a trade. The Nano also communicates with an intricate Java program which overlays information on the live video feed and also executes the trades in real life with real money.

Live updates are sent directly both on Twitter and Reddit, besides the live Twitch stream of [Mr Goxx] we linked above. The stream only shows his office and not his apartment, and he’s mostly active at night (Berlin time). But we can’t wait for his random walks to yield long-term results which can be analyzed for years to come. In the meantime we’ll see if others have been able to make any profits in crypto with any less-random methods.

Drink Water On Schedule Or Else Flood Your Desk

How much water have you had to drink today? We would venture to guess that the answer is somewhere between ‘absolutely none’ and ‘not not nearly enough’. You can go ahead and blame poor work/life balance — that’s our plan, anyway — and just try to do better. All this working from home means the bathroom situation is now ideal, so why not drink as much water as you can?

But how? Well, you’re human, so you’ll need to make it as easy as possible to drink the water throughout the day. You could fill up one big jug and hoist it to your mouth all day long (or use a straw), but facing that amount of water all at once can be intimidating. The problem with using a regular-sized vessel is that you have to get up to refill it several times per day. When hyper-focus is winning the work/life tug-of-war, you can’t always just stop and go to the kitchen. What you need is an automatic water dispenser, and you need it right there on the desk.

[Javier Rengel]’s water pomodoro makes it as easy as setting your cup down in front of this machine and leaving it there between sips. As long as the IR sensor detects your cup, it will dispense water every hour. This means that if you don’t drink enough water throughout the day, you’re going to have it all over the desk at some point. [Javier] simply connected an Arduino UNO to a water pump and IR sensor pair and repurposed the milk dispenser from a coffee machine. Check it out in action after the break.

Of course, if you aren’t intimidated by the big jug approach, you could keep tabs on your intake with the right kind of straw.

Continue reading “Drink Water On Schedule Or Else Flood Your Desk”

Understanding Custom Signal Protocols With Old Nintendos

For retro gaming, there’s really no substitute for original hardware. As it ages, though, a lot of us need to find something passable since antique hardware won’t last forever. If a console isn’t working properly an emulator can get us some of the way there, but using an original controller is still preferred even when using emulators. To that end, [All Parts Combined] shows us how to build custom interfaces between original Nintendo controllers and a PC.

The build starts by mapping out the controller behavior. Buttons on a SNES controller don’t correspond directly to pins, rather a clock latches all of the button presses at a particular moment all at once during each timing event and sends that information to the console. To implement this protocol an Adafruit Trinket is used, and a thorough explanation of the code is given in the video linked below. From there it was a simple matter of building the device itself, for which [All Parts Combined] scavenged controller ports from broken Super Nintendos and housed everything into a tidy box where it can be attached via USB to his PC.

While it might seem like a lot of work to get a custom Nintendo controller interface running just because he had lost his Mega Man cartridge, this build goes a long way to understanding a custom controller protocol. Plus, there’s a lot more utility here than just playing Mega Man; a method like this could easily be used to interface other controllers as well. We’ve even seen the reverse process where USB devices were made to work on a Nintendo 64.

Continue reading “Understanding Custom Signal Protocols With Old Nintendos”