Software Defined Radio Gets Physical Control

Software Defined Radio (SDR) is a great technology, but there’s something so satisfying about spinning a physical knob to cruise the airwaves. Wanting to restore that tactile experience, [Tysonpower] purchased a cheap USB volume knob and set out to get it working with his software. Unfortunately, getting it up and running took a lot more work than you’re probably expecting.

Programming the knob’s STM32

After verifying that the knob worked for volume control on his computer, [Tysonpower] decided to try and pull the firmware from the device’s STM32 microcontroller. Unfortunately, this is where things got tricky. It turned out the chip had Code Protection enabled, so when it was wired up to a programmer and put into DFU mode, the firmware got wiped. Oops.

That left [Tysonpower] with no choice but to write a new firmware from scratch, which naturally required reverse engineering the device’s hardware. Step one was reading up on STM32 development and getting the toolchain working, which paved the way to getting the knob’s LED to blink. A couple more hours worth of work and some multimeter poking later, and he was able to read the knob’s movement. He describes getting USB HID working as a nightmare due to lack of documentation, but eventually he got that sorted out as well.

The end result is a firmware allows the volume knob to mimic a mouse scroll wheel, which can be used for tuning in many SDR packages. But we think the real success story is the experience [Tysonpower] gained with reverse engineering and working with the STM32 platform. After all, sometimes the journey is just as important as the end result. Continue reading “Software Defined Radio Gets Physical Control”

Sleeper PlayStation Hides A Raspberry Pi 4

[Andreas Wilcox] wanted to get his brother a birthday gift that reflected their shared love for the early days of 3D gaming, but just handing him a second-hand original PlayStation lacked a certain style. So he decided to gut the classic system and replace its dated internals with a shiny new Raspberry Pi 4. But rather than taking the easy way out, he put in the time and effort to integrate the new hardware so seamlessly that the nearly 25 year old console still looks stock from the outside.

The fact that the front ports are functional and work with the original controllers really helps sell the stock look. [Andreas] found a USB to PlayStation controller adapter, liberated the PCB, and soldered it to the back of the system’s ports. Even the memory card slots got in on the action, thanks to female USB connectors installed where the original connector went. It was a tight fit, but the final result was well worth it.

We also love the GPIO-controlled cooling fan complete with a duct designed to blow across the notoriously toasty Pi, and check out that carefully designed holder for the power and reset buttons. This entire project is really a fantastic example of how 3D printed parts can give your projects a far cleaner and more professional look than the hacker’s old standby of hot glue; though of course it demands a considerable time investment.

This isn’t the first time we’ve seen a Raspberry Pi shoehorned into a classic video game console, but it’s absolutely one of the cleanest examples we’ve ever seen. Though if we lump Raspberry Pi portables into the running, the competition is considerably fiercer.

Reverse Engineering An Old Bus Display

When his makerspace was gifted a pair of Luminator LED signs of the sort you might see on the front of a bus, [PWalsh] decided to pull one apart to see what made it tick. Along the way, he managed to reverse engineer its control protocol and replace its original control board with a WiFi-connected Raspberry Pi. Now they can use the LED signs to show whatever they want; no bus required.

As they were designed for automotive use, the signs were wired for 12 volts DC. So the first order of business was fitting it with an AC/DC converter so it could be plugged into the wall. After he measured the display’s current consumption, [PWalsh] estimated it’s maximum energy consumption and determined an old ATX computer power supply was more than up to the task.

With the sign happily running battery-free, he could begin figuring out how to talk to it. Noticing a MAX485 RS-485 converter on the PCB, gave a pretty good idea of what language it was speaking, and with the aid of his trusty oscilloscope, he was able to suss out the baud rate. A cheap USB to RS-485 converter was then wired in between the sign and its control board so he could sniff the data passing over the line.

From there, the final piece of the puzzle was studying the captured data and figuring out the protocol. [PWalsh] was able to identify packet headers and ASCII characters, and pretty soon knew enough about how the sign communicated that he was able to remove the control board entirely and just push text and images to it right from the Pi. He’s even made his framework available for anyone else who might have a similar piece of bus-signage laying around.

Even if you’re not looking to add one of these signs to your lab, this project is a fantastic example of protocol reverse engineering with low-cost tools and simple techniques. We always love to see the process broken down step by step like this, and our hat’s off to [PWalsh] for delivering the goods in a big way.

This isn’t the first time we’ve seen these sort of LED signs get the “Internet of Things” treatment, and if you’re content with a somewhat scaled down version, you could always just build your own display rather than waiting on the local public transit vehicle to get parted out.

Stackable Open Source 3D Printer Enclosure

One of the unfortunate realities of desktop FDM 3D printing is that environmental factors such as ambient temperature and humidity can have a big impact on your results. Even with the exact same settings, a part that printed beautifully in the summer can warp right off the bed during the winter months. The solution is a temperature-controlled enclosure, but that can be a daunting project without some guidance. Luckily, [Jay Doscher] has spent the last few months designing a very impressive enclosure that he’s released to the community as open source.

While we’ve seen no shortage of DIY printer enclosures over the years, they tend to be fairly lightweight. But that’s not the case here. Obviously not wanting to leave anything to chance, [Jay] designed this enclosure with 2020 extrusion and aluminum side panels. You could probably sit on the thing with no ill-effects, which is good, since he also designed the enclosure to be stackable should your print farm need to expand vertically.

Of course, there’s more to this enclosure than just an aluminum box. It’s packed with features like an integrated Raspberry Pi for running Octoprint, internal and external environmental monitoring with the Adafruit SHT31-D, and a Logitech Brio 4K video camera to watch the action. While not currently implemented, [Jay] says he’s also working on an internal fire suppression system and a fan controller system which will circulate air inside the enclosure should things get a little too toasty.

The enclosure has been designed around the ever-popular Prusa i3 MK3/S, even going so far as to relocate the printer’s display to the outside so you don’t have to open the door to fiddle with the settings. But adapting it to whatever rig you happen to be running shouldn’t be a problem. Though admittedly, perhaps not as easy as adjusting an enclosure made out of metal shelving.

Continue reading “Stackable Open Source 3D Printer Enclosure”

Angela Sheehan Is Developing Wearable Tech With Whimsy

As a concept, wearable technology excites many of us, but in practice, it’s been hard to nail down. Up to this point, the most high-tech thing the average person might reasonably wear has been a wrist watch. Devices like Google Glass tried to push the state-of-the-art, but it arguably raised more questions than it answered. It demonstrated in a very public way that developing wearable technology that’s simultaneously visually appealing, useful, and robust enough to handle daily life is exceptionally difficult. If Google couldn’t pull it off, what hope do we lowly hackers have?

But maybe we’ve been going about things the wrong way. Compelling as the end result may seem, the move from wrist watches to head-mounted computers is simply too large of a technical and psychological leap to make. To help develop the skills and techniques necessary to build practical wearable electronics, it might help to take a slightly more fanciful approach.

It seems to be working pretty well for Angela Sheehan, at least. In her talk “Building Whimsical Wearables: Leveling Up Through Playful Prototyping” at the 2019 Hackaday Superconference, she went over some of the things she’s learned while developing her Color Stealing Fairy costume. The product of several years of iterative design, the costume is able to mimic colors seen in the environment through the use of a wireless sensor wand, and features a number of design elements that are critical to any successful wearable project.

Even if a custom RGB Fairy costume isn’t on your short list of projects, there’s information in this talk that will surely be of interest to anyone who’s even contemplated a wearable project. From technical aspects like battery placement to logistical considerations such as making adjustments for multiple wearers, Angela’s make-believe creation has become a testbed for real-world considerations.

Continue reading “Angela Sheehan Is Developing Wearable Tech With Whimsy”

Chaining Together A 16×2 Bubble LED Display

We’ve recently noticed an uptick of interest in so-called “bubble displays”: vintage alphanumeric LEDs which are probably best remembered as being used in watches and calculators before the LCD took over. Today they’re available as surplus or even salvage for literally pennies, but unfortunately they only provide four or five characters to work with. Or rather they did, until [sjm4306] built a board that chains them into a 16×2 array.

For the princely sum of 71 cents each, [sjm4306] picked up ten HPDL-1414 displays, each capable of showing four characters. He then designed a PCB that would accept eight of the displays at once, and even thought ahead to use headers so they could be pulled out and swapped as needed. Of course mounting them is only half the battle, you still need to drive the things.

Each display has its own dedicated driver chip on board, but trying to address each one individually would take far too many pins. So [sjm4306] opted to use a trio of 74HC595 shift registers, allowing him to toggle the three dozen pins necessary over SPI from a microcontroller. He’s even written up a little library and some example code that you can grab on the project’s Hackaday.io page.

Unfortunately, after all his hard work, tragedy struck. As these displays were a couple decades old given their date code, [sjm4306] thought he would clean them up with a bit of alcohol before their big video debut. But whatever plastic the clear panels are made of didn’t take kindly to the IPA, and they all shattered. They still work, but it’s definitely a quirk to keep in mind if you pick up some of these vintage displays to play with yourself.

In the past we’ve seen a much smaller PCB that allowed similar displays to more easily be interfaced with modern microcontrollers; perfect if you just want to bang out a few retro LED characters with a minimum of fuss.

Continue reading “Chaining Together A 16×2 Bubble LED Display”

Generating Random Numbers With A Fish Tank

While working towards his Computing and Information Systems degree at the University of London, [Jason Fenech] submitted an interesting proposal for generating random numbers using nothing more exotic than an aquarium and a sufficiently high resolution camera. Not only does his BubbleRNG make a rather relaxing sound while in operation, but according to tools such as ENT, NIST-STS, and DieHard, appears to be a source of true randomness.

If you want to build your own BubbleRNG, all you need is a tank of water and some air pumps to generate the bubbles. A webcam looking down on the surface of the water captures the chaos that ensues when the columns of bubbles generated by each pump collide. In the video after the break [Jason] uses two pumps, but considering they’re cheaper than lava lamps, we’d probably chuck a few more into the mix. To be on the safe side, he mentions that the placement and number of pumps should be arbitrary and not repeated on subsequent installations.

To turn this tiny maelstrom into a source of random numbers, OpenCV is first used to identify the bubbles in the video stream that are between a user-supplied minimum and maximum radius. The software then captures the X and Y coordinates of each bubble, and the resulting values are shuffled around and XOR’d until a stream of random numbers comes out the other end. What you do with this cheap source of infinite improbability is, of course, up to you.

While this project has been floating around (no pun intended) the Internet for a few years now, it seems to have gone largely overlooked, and was only just brought to our attention thanks to a tip from one of our illustrious readers. An excellent reminder that if you see something interesting out there, we’d love to hear about it.

Continue reading “Generating Random Numbers With A Fish Tank”