The original Game Boy was the greatest selling handheld video game system of all time, only to be surpassed by one of its successors. It still retains the #2 position by a wide margin, but even so, they’re getting along in years now and finding one in perfect working condition might be harder than you think. What’s more likely is you find one that’s missing components, has a malfunctioning screen, or has had its electronics corroded by the battery acid from a decades-old set of AAs.
That latter situation is where [Taylor] found himself and decided on performing a full restoration on this classic. To get started, he removed all of the components from the damaged area so he could see the paths of the traces. After doing some cleaning of the damage and removing the solder mask, he used 30 gauge wire to bridge the damaged parts of the PCB before repopulating all of the parts back to their rightful locations. A few needed to be replaced, but in the end the Game Boy was restored to its former 90s glory.
This build is an excellent example of what can be done with a finely tipped soldering iron while also being a reminder not to leave AA batteries in any devices for extended periods of time. The AA battery was always a weak point for the original Game Boys, so if you decide you want to get rid of batteries of any kind you can build one that does just that.
Continue reading “Acid-Damaged Game Boy Restored” →
There are millions of tiny bugs all around us, in everything from our desktop applications to the appliances in the kitchen. Hidden, arbitrary conditions that cause unintended outputs and behaviors. There are many ways to find these bugs, but one way we don’t hear about very often is finding a bug in your own code, only to realize someone else made the same mistake. For example, [David Buchanan] found a bug in his multi-threaded PNG decoder and realized that the Apple PNG decoder had the same bug.
PNG (Portable Network Graphics) is an image format just like JPEG, WEBP, or TIFF designed to replace GIFs. After a header, the rest of the file is entirely chunks. Each chunk is prepended by a four-letter identifier, with a few chunks being critical chunks. The essential sections are IHDR (the header), IDAT (actual image data), PLTE (the palette information), and IEND (the last chunk in the file). Compression is via the DEFLATE method used in zlib, which is inherently serial. If you’re interested, there’s a convenient poster about the format from a great resource we covered a while back.
Continue reading “Parsing PNGs Differently” →
[Dries Depoorter] has a knack for highly technical projects with a solid artistic bent to them, and this piece is no exception. The Flemish Scrollers is a software system that watches live streamed sessions of the Flemish government, and uses Python and machine learning to identify and highlight politicians who pull out phones and start scrolling. The results? Pushed out live on Twitter and Instagram, naturally. The project started back in July 2021, and has been dutifully running ever since, so by now we expect that holding one’s phone where the camera can see it is probably considered a rookie mistake.
This project can also be considered a good example of how to properly handle confidence in results depending on the application. In this case, false negatives (a politician is using a phone, but the software doesn’t detect it properly) are much more acceptable than false positives (a member gets incorrectly identified, or is wrongly called-out for using a mobile device when they are not.)
Keras, an open-source software library, is used for the object detection and facial recognition (GitHub repository for Keras is here.) We’ve seen it used in everything from bat detection to automatic trash sorting, so if you’re interested in machine learning applications, give it a peek.
[Caleb] shares a problem with most dog owners. Dogs leave their… byproducts…all over your yard. Some people pick it up right away and some just leave it. But what if your dog has run of the yard? How do you know where these piles are hiding? A security camera and AI image detection is the answer, but probably not the way that you think.
You might think as we did that you could train the system to recognize the–um–piles. But instead, [Caleb] elected to have the AI do animal pose estimation to detect the dog’s posture while producing the target. This is probably easier than recognizing a nondescript pile and then it doesn’t matter if it is, say, covered with snow.
Continue reading “AI Camera Knows Its S**t” →
Raspberry Pi has just announced that they’ll be selling their RP2040 microcontroller chips by the reel, directly to you, at a decent discount.
About a year ago, Raspberry Pi released its first piece of custom silicon, the RP2040 microcontroller. They’ve have been selling these chips in bulk to selected customers directly, but have decided to open up the same deals to the general public. If you’re looking for 500 chips or more, you can cut out the middleman and save some serious dough.
Because the RP2040 was a clean-slate design, it uses a relatively modern production process that yields many more processors per silicon wafer, and it has been essentially spared from the chip crisis of 2020-2021. According to CEO Eben Upton, they’ve sold 1.5 million in a year, and have wafers in stock for 20 million more. You do the math, but unless you’re predicting the chip shortage to last in excess of 12 years, they’re looking good.
Join us on Wednesday, January 19 at noon Pacific as we kick off the 2022 Hack Chat season with the Electromyography Hack Chat with hut!
It’s one of the simplest acts most people can perform, but just wiggling your finger is a vastly complex process under the hood. Once you consciously decide to move your digit, a cascade of electrochemical reactions courses from the brain down the spinal cord and along nerves to reach the muscles fibers of the forearm, where still more reactions occur to stimulate the muscle fibers and cause them to contract, setting that finger to wiggling.
The electrical activity going on inside you while you’re moving your muscles is actually strong enough to make it to the skin, and is detectable using electromyography, or EMG. But just because a signal exists doesn’t mean it’s trivial to make use of. Teasing a usable signal from one muscle group amidst the noise from everything else going on in a human body can be a chore, but not an insurmountable one, even for the home gamer.
To make EMG a little easier, our host for this Hack Chat, hut, has been hard at work on PsyLink, a line of prototype EMG interfaces that can be used to detect muscle movements and use them to control whatever you want. In this Hack Chat, we’ll dive into EMG in general and PsyLink in particular, and find out how to put our muscles to work for something other than wiggling our fingers.
Our Hack Chats are live community events in the Hackaday.io Hack Chat group messaging. This week we’ll be sitting down on Wednesday, January 19 at 12:00 PM Pacific time. If time zones have you tied up, we have a handy time zone converter.
Continue reading “Electromyography Hack Chat” →
We like projects where old gear is given a new life. [Splashdust] has a twenty-year old business firewall that’s build like a tank. He cracks it open and finds a complete x86 embedded motherboard inside, and sets off to restore it and turn it into a retro gaming computer (see the video from his Odd & Obsolete YouTube channel below the break).
This business firewall and router box is from a small Swedish firm Clavister, part of their S-Series from the early 2000s. The motherboard appears to be a generic one used in other equipment, and is powered by a VIA Eden ESP 4000 running at 400 MHz. The Eden line of x86 processors were low-power chips targeting embedded applications. The graphics chip is a Twister T by S3 Graphics which was purchased by VIA in 2000. After replacing the electrolytic capacitors, and making a few cables, [Splashdust] pops in a PCI sound card and boots up into Windows 98 from a CF card (we like the compact PCB vise he uses).
In two follow-up videos (here and here), he builds an enclosure (instructions on Thingiverse) and tries out several other operating systems. He was able to get the Tiny Core Linux distribution running with the NetSurf browser, but failed to get Windows 2000 or XP to work. Returning to Windows 98, he tweaks drivers and settings and eventually has a respectable retro-gaming computer for his efforts. The next time you’re cleaning out your junk bins, have a peek inside those pizza-box gadgets first — you may find a similar gem.
Continue reading “Old Firewall Reborn As Retro PC” →