A Hacker’s Guide To JTAG

If you’re reading Hackaday, you’ve almost certainly heard of JTAG. There’s an excellent chance you’ve even used it once or twice to reflash an unruly piece of hardware. But how well do you actually know JTAG? More specifically, do you know how useful it can be when reverse engineering hardware?

Whether you’re a JTAG veteran or a novice, this phenomenal guide written by [wrongbaud] is sure to teach you a thing or two. Starting with a low-level explanation of how the interface actually works, the guide takes you though discovering JTAG ports on unknown targets, the current state-of-the-art in open source tools to interact with the device, and finally shows a real-world example of pulling and analyzing a gadget’s firmware.

There’s no way to do his write-up justice with a breakdown or a summary, so we won’t even try. Just get comfortable, maybe grab a drink, and dive in. It’s certainly not a short read, but there isn’t a wasted word on the page. Every piece of the puzzle, from how to figure out an unlabeled pinout to determining the instruction length, is explained in exactly the amount of detail you’re looking for. This is a guide for hackers written by a hacker, and it shows.

It will probably come as no surprise to find this isn’t the first time [wrongbaud] has done a deep dive like this. Over the last few months we’ve been covering his series of practical reverse engineering guides, and each one has been an invaluable resource. Perfect study guides for when a global pandemic has you stuck in the house.

Subwoofer Gets Arduino Brain Transplant

The Samsung PS-WTX500 subwoofer is designed to be used as part of a 5.1 channel home theater system, but not just any system. It contains the amplifiers for all the channels, but they’ll only function when the subwoofer is connected to the matching receiver. [Alejandro Zarate] figured there must be some way to unlock the system’s full functionality without being limited to the original receiver, he just needed to reverse engineer how the subwoofer worked.

All the wires tuck underneath the Arduino

The result is a fantastically well documented write-up that covers the whole process, starting with how [Alejandro] identified and researched the Pulsus PS9829B Digital Audio Processor (DAP). Documentation for this particular chip seems hard to come by, but he was able to find a similar chip from the same manufacturer that was close enough to put him on the right track. From there, he started studying the SPI communications between the DAP and the subwoofer’s S3P70F4 microcontroller.

After analyzing the communication between the two chips, [Alejandro] pulled the S3P70F4 off the board and wired an Arduino Pro Mini 328 in its place. The Arduino was quite a bit larger than the original microcontroller, but with some careful wiring, he manged a very professional looking installation. Short of coming up with a custom PCB adapter, we don’t think it could look much better.

With some relatively straightforward code and a listing of the captured byte sequences, the Arduino was able to power up the PS-WTX500’s amplifiers and handle the incoming audio signal as a stand-alone device.

In the past we’ve seen a similar trick done with the ESP8266, which had the added benefit of enabling WiFi control of the speakers. We’re all for adding modern functionality to older hardware, even if you’ve got to hang it off the back as an external module.

Continue reading “Subwoofer Gets Arduino Brain Transplant”

Getting To Space Is Even Harder During A Pandemic

At this point, most of us are painfully aware of the restrictions that COVID-19 social distancing protocols have put on our daily lives. Anyone who can is working from home, major events are canceled, non-essential businesses are closed, and travel is either strongly discouraged or prohibited outright. In particularly hard hit areas, life and commerce has nearly ground to a halt with no clear end date in sight.

Naturally, there are far reaching consequences for this shutdown beyond what’s happening on the individual level. Large scale projects are also being slowed or halted entirely, as there’s only so much you can do remotely. That’s especially true when the assembly of hardware is concerned, which has put some industries in a particularly tight spot. One sector that’s really feeling the strain is aerospace. Around the world, space agencies are finding that their best laid plans are suddenly falling apart in the face of COVID-19.

In some cases it’s a minor annoyance, requiring nothing more than some tweaks to procedures. But when the movements of the planets are concerned, a delay of weeks or months changes everything. While things are still changing too rapidly to make an exhaustive list, we already know of a few missions that are being impacted in these uncertain times.

Continue reading “Getting To Space Is Even Harder During A Pandemic”

Put An Open Source Demon In Your Pocket

Back in 1996, the Tamagotchi was a triumph of hardware miniaturization. Nearly 25 years later, our expectations for commercially designed and manufactured gadgets are naturally quite a bit higher. But that doesn’t mean we can’t be impressed when somebody pulls off a similar feat in the DIY space.

The Xling by [dsl] follows the classic Tamagotchi concept. A little creature, apparently inspired by the demon from Netflix’s Disenchantment, lives in your pocket and needs occasional attention to remain healthy. The user pushes a few buttons to interact with the creature displayed on the display to do…whatever it is you do with a pet demon. Feed it souls and what have you.

But unlike the iconic 90s toy, both the hardware and software for the Xling are open source. The CERN-OHL-W licensed PCB was designed in KiCad and features an ATmega1284P microcontroller and SH1106G controller for the 128 x 64 OLED display.

Power is provided by an AP3401 DC-DC converter, MCP73831 charge controller, and a 400 mAh 3.7 V battery. Everything fits inside of a 3D printed case that looks like it could easily hang off of a keyring.

While the hardware is admirable enough, the software side of things is quite interesting as well. The Xling is running on a FreeRTOS kernel ported to the ATmega, but the GPLv3 licensed firmware sill needs some work. Right now only a few core functions are implemented, and [dsl] is hoping to get some ideas and feedback from the community so his dream of a fully open source demonic Tamagotchi can finally be realized.

Build enough of them, and you might even be able to implement another virtual pet Singularity. But to be safe, maybe you shouldn’t.

Continue reading “Put An Open Source Demon In Your Pocket”

Global Status Board Keeps Eye On COVID-19 Situation

When it comes to keeping abreast of the COVID-19 pandemic, there are basically two schools of thought. Some people would rather not hear the number of confirmed cases or deaths, and just want to focus on those who recovered. That’s fair enough. But others want to have all of the available data at their disposal so they can form their own conclusions about what’s happening with this virus on a global scale. Looking at this incredible COVID-19 status board, we’ll give you one guess which category [Reuben] falls into.

Note the laser engraved component labels

Constructed out of 2020 extrusion with both 3D printed and laser cut parts, this wall-mounted display is built to last. Clearly [Reuben] believes we’re in this one for the long haul, and taking a peek at the plethora of data points this device can show at once, it’s not hard to see why.

Stats are pulled down every hour from a JSON API by an ESP32 and stored on an SD card. A running total of confirmed cases, deaths, and recoveries are shown on several TFT displays located behind the face of the display. On the right, the relative severity of the infection in 32 different countries is visualized with LEDs of varying brightness.

Perhaps the most visually striking element of the display is the large annunciator panel on the left side, which lights up to show various conditions all over the world. We appreciate that [Reuben] has thought ahead and added a light that can be used once a vaccine is deployed for COVID-19, but the inclusion of a “MARTIAL LAW” indicator certainly doesn’t help us shake the feeling we’ve all found ourselves in a proper dystopia.

For those who’d would rather get their information from the source rather than have it filtered through the media, we’ve recently covered a few APIs that will allow you to pull your own up-to-date COVID-19 stats. Whether you’re looking to build something as elaborate as this display, or just want to echo it out to the terminal, making sure you’re seeing accurate data is key to identifying the turning point.

Continue reading “Global Status Board Keeps Eye On COVID-19 Situation”

R/C Toilet Paper Roll Is The Hero We Deserve

For reasons that most rational consumers can’t fathom, a not inconsiderable segment of the population believes the key to their continued survival during a pandemic unprecedented in modern times is to stockpile toilet paper. This leaves those of us not compelled to act based on the whims of our bowels looking at bare racks in the paper product aisle more often than not.

Which makes it the perfect time for [Ariel Yahni] to develop his remote controlled toilet paper roll. With this gadget deployed, you just might have a chance at drawing the Karens away from all the rolled gold long enough to grab yourself a pack. Even if it doesn’t distract the other competitors shoppers, you can at least enjoy the looks on their faces as it scurries by.

The project starts with, of all things, popsicle sticks. These are used to make a reinforced platform to which the two motors, radio receiver, speed controller, and battery are mounted. With some clever packing, [Ariel] is able to (tightly) fit it inside of a cardboard tube with just the bottoms of the two wheels protruding through cutouts. A careful wrapping with toilet paper is then used to give it the look of a partially used roll, including a trailing “tail” that flutters in its wake.

In the video after the break, you can see [Ariel] take his roll of motorized TP through a local mall for a test drive. We’re sorry to say that nobody appears to make a wild dive for it during the test. But that could be because the video was recorded back in December before people had resorted to fighting over toiletries. It also explains why he was able to get into a mall in the first place.

Just think, if we had embraced the high-tech toilets of the future back when we had a chance, we could have avoided this whole thing. As far as dystopias go, this one is shaping up to be pretty weird.

Continue reading “R/C Toilet Paper Roll Is The Hero We Deserve”

An Adapter To Solve Your ESP-01 Breadboard Woes

The ESP-01 launched the ESP8266 revolution back in 2014, and while today you’re far more likely to see somebody use a later version of the chip in a Wemos or NodeMCU development board, there are still tasks the original chip is well suited for. Unfortunately, they can be tricky to use while prototyping because they aren’t very breadboard friendly, but this adapter developed by [Miguel Reis] can help.

Of course, the main issue is the somewhat unusual pinout of the ESP-01. Since it was designed as a daughter board to plug into another device, the header is too tight to fit into a breadboard. The adapter that [Miguel] has come up with widens that up to the point you can put it down the centerline of your breadboard and have plenty of real estate around it.

The second issue is that the ESP-01 is a 3.3 V device, which can be annoying if everything else in the circuit is running on 5 V. To get around this, the adapter includes an SPX3819 regulator and enough capacitors that the somewhat temperamental chip gets the steady low-voltage supply it needs to be happy.

[Miguel] has released the schematics and board files so you can spin up your own copy of the adapter, but they’re also available for around $3 USD from his Tindie store.