Running Way More LED Strips On A Raspberry Pi With DMA

The Raspberry Pi is a powerful computer in a compact form factor, making it highly useful for all manner of projects. However, it lacks some of the IO capabilities you might find on a common microcontroller. This is most apparent when it comes to running addressable LED strings. Normally, this is done using the Pi’s PWM or audio output, and is limited to just a couple of short strings. However, [Jeremy P Bentham] has found a way to leverage the Pi’s hardware to overcome these limitations.

The trick is using the Raspberry Pi’s little-documented Secondary Memory Interface. The SMI hardware allows the Pi to shift out data to 8 or 16 I/O pins in parallel using direct memory access (DMA), with fast and accurate timing. This makes it perfect for generating signals such as those used by WS2812B LEDs, also known as NeoPixels.

With [Jeremy]’s code and the right supporting hardware, it’s possible to run up to 16 LED strips of arbitrary length from the Raspberry Pi. [Jeremy] does a great job outlining how it all works, covering everything from the data format used by WS2812B LEDs to the way cache needs to be handled to avoid garbled data. The hack works on all Pis, from the humble Pi Zero to the powerful Pi 4. Thanks to using DMA, the technique doesn’t overload the CPU, so performance should be good across the board.

Of course, there are other ways to drive a ton of LEDs; we’ve seen 20,000 running on an ESP32, for example.

[Thanks to Petiepooo for the tip!]

HALWOP Recreates Retro Style With The Raspberry Pi

Modern computers are incredible feats of engineering, but there are many that still yearn for the simpler times. When keyboards clacked and a desktop computer quite literally dominated the top of your desk. There’s a whole community of folks who scratch that itch by restoring vintage computers, but not everyone has the time, money, or skill for such pursuits. Plus, even the most lovingly cared for Apple II isn’t going to help you watch YouTube.

Those who wish to recreate the look and feel of a vintage computer with modern internals will certainly be interested in the HALWOP by [Maz_Baz]. While its 3D printed case isn’t a replica of any one computer, it does draw inspiration from iconic machines like the Apple Lisa and IBM XT. It’s an amalgamation of design ideas that seemed like a good idea circa 1982 or so, with plenty of 90° angles and air vents to go around.

Considering the size of the Raspberry Pi 4 that powers the HALWOP, most of the case is just hollow plastic. But of course, the whole idea depends on it being almost comically large. On the plus side, [Maz_Baz] says you can use one of those empty compartments to hold a Anker PowerCore 26800 battery pack. At least in theory that makes it a “luggable” computer, though good luck trying to move it around.

In addition to the Pi 4 and battery pack, the HALWOP also uses a seven-inch touch LCD and Keychron K2 Bluetooth mechanical keyboard. Since everything is so modular, assembly is about as simple as it gets. Outside of the USB cables that power everything, you just need a long enough ribbon cable to connect the LCD to the Pi.

We know the purists don’t like the idea of a “retro” computer based on the Raspberry Pi, but of course, such projects aren’t about maintaining historical accuracy. They are a way to bridge the gap between modern technology and the unique aesthetics of a bygone era. Designs like the HALWOP allow a new generation to experience a taste of what computing was like in the early days, without giving up the ground that’s been gained in the intervening years.

Lo-Fi Art On A 32×32 Matrix

Display technology has improved by leaps and bounds over the last few years, thanks in no small part to the smartphone revolution. High-resolution LCD panels are dirt cheap and easy to interface with. There’s absolutely no logical reason to try and show images on a 32×32 array of RGB LEDs. But that didn’t stop [Felix Spöttel] from doing it anyway.

The project, which he calls thirtytwopixels, was designed to work in conjunction with MPD (Music Player Daemon) to show the album art for whatever is currently playing. The ultra-low resolution display added a certain element of abstractness to the artwork, which [Felix] said made it an interesting conversation starter. Guests would try and guess what the album art was depicting given the sparse rendition shown on the matrix.

[Felix] gives an excellent explanation of how to get the server and client-side software up and running should you want to recreate his setup, but his Python scripts also have a function where you can push an arbitrary image to the display if you don’t want to connect everything up to the MPD backend.

On the hardware side, thirtytwopixels uses the Raspberry Pi Zero W, a Adafruit RGB Matrix Bonnet, and a 32×32 LED matrix that uses the HUB75 interface. Even a relatively small LED matrix like this can get pretty thirsty, so [Felix] is using a 5 volt power supply that can deliver 4 amps to keep the electronics happy.

If you wanted to keep the low resolution aesthetic but make the display larger, we’ve seen WS2812B LED strips and 3D printed frames used to make a custom jumbo matrix which could surely be adapted for this concept.

Procedural Barcode Synth Is As Simple As Black And White

We are no stranger to peculiar and wonderful musical instruments here at Hackaday. [James Bruton] has long been fascinated with barcode scanners as an input source for music and now has a procedural barcode-powered synth to add to his growing collection of handmade instruments. We’ve previously covered his barcode guitar, which converts a string of numbers from the PS/2 output to pitches. This meant having a large number of barcodes printed as each pitch required a separate barcode. As you can imagine, this makes for a rather unwieldy and large instrument.

Rather than looking at the textual output of the reader, [James] cracked it open and put it to the oscilloscope. Once inside, he found a good source that outputs a square wave corresponding to the black and white lines that the barcode sees. Since the barcodes [James] is using don’t have the proper start and stop codes, the barcode reader continuously scans.  Normally it would stop the laser to send the text over the USB or PS/2 connection. A simple 5v to 3.3v level shifter feeds that square wave into a Teensy board, which outputs the audio.

A video showcasing a similar technique inspired [James] with this project. The creators of that video have a huge wall of different patterns of black and white lines. [James’s] next stroke of brilliance was to have a small HDMI display to generate the barcodes on the fly. A Raspberry Pi 4 reads in various buttons via GPIO and displays the resulting barcode on the screen. A quick 3d printed shell rounds out the build nicely, keeping things small and compact. All the code and CAD files are up on GitHub.

Continue reading “Procedural Barcode Synth Is As Simple As Black And White”

3D Printed Mini MacBook With A Raspberry Pi Heart

Do you like the sleek look of Apple’s laptops? Are you a fan of the Raspberry Pi? Have a particular affinity for hot glue and 3D printed plastic? Then you’re in luck, because this tiny “MacBook” built by serial miniaturizer [Michael Pick] features all of the above (and a good bit more) in one palm-sized package. (Video link, embedded below.)

Getting the LCD panel and Raspberry Pi 4 to fit into the slim 3D printed case took considerable coaxing. In the video after the break, you can see [Michael] strip off any unnecessary components that would stand in his way. The LCD panel had to lose its speakers and buttons, and the Pi has had its Ethernet and USB ports removed. While space was limited, he did manage to squeeze an illuminated resin-printed Apple logo into the lid of the laptop to help sell the overall look.

The bottom half of the machine has a number of really nice details, like the fan grill cut from metal hardware cloth and a functional “MagSafe” connector made from a magnetic USB cable. The keyboard PCB and membrane was liberated from a commercially available unit, all [Michael] needed to do was model in the openings for the keys. Since the keyboard already came with its own little trackpad, the lower one is just there for looks.

Speaking of which, to really drive home the Apple aesthetic, [Michael] made the bold move of covering up all the screws with body filler after assembly. It’s not a technique we’d necessarily recommend, but gluing it shut would probably have made it even harder to get back into down the line.

We’ve previously seen [Michael] create a miniature rendition of the iMac and an RGB LED equipped “gaming” computer using many of the same parts and techniques. He’ll have to start branching off into less common machines to replicate soon, which reminds us that we’re about due for another tiny Cray X-MP.

Continue reading “3D Printed Mini MacBook With A Raspberry Pi Heart”

Raspberry Pi Crazy Guitar Rig Turns You Into A Hard ‘N Heavy One-Man Band

It’s a common problem: you’re at a party, there’s a guitar, and your plan to impress everyone with your Wonderwall playing skills is thwarted by the way too loud overall noise level. Well, [Muiota betarho] won’t have that issue ever again, and is going to steal the show anywhere he goes from now on with his Crazy Guitar Rig 2.0, an acoustic guitar turned electric — and so much more — that he shows off in three-part video series on his YouTube channel. For the impatient, here’s video 1, video 2, and video 3, but you’ll also find them embedded after the break.

To start off the series, [Muiota betarho] adds an electric guitar pickup, a set of speakers, and an amplifier board along with a battery pack into the body of a cheap acoustic guitar. He then dismantles a Zoom MS-50G multi-effect pedal and re-assembles it back into the guitar itself with a 3D-printed cover. Combining a guitar, effect pedal, amp and speaker into one standalone instrument would make this already an awesome project as it is, but this is only the beginning.

Touch screen and controls closeup
RPi touch screen running SunVox, plenty of buttons, and integrated multi-effect pedal on the left

So, time to add a Raspberry Pi running SunVox next, and throw in a touch screen to control it on the fly. SunVox itself is a free, but unfortunately not open source, cross-platform synthesizer and tracker that [Muiota betarho] uses to add drum tracks and some extra instruments and effects. He takes it even further in the final part when he hooks SunVox up to the Raspberry Pi’s GPIO pins. This allows him to automate things like switching effects on the Zoom pedal, but also provides I/O connection for external devices like a foot switch, or an entire light show to accompany his playing.

Of course, adding a magnetic pickup to an acoustic guitar, or generally electrifying acoustic instruments like a drum kit for example, isn’t new. Neither is using a single-board computer as effect pedal or as an amp in your pocket. Having it all integrated into one single device on the other hand rightfully earns this guitar its Crazy Guitar Rig name.

(Thanks for the tip, [alex]!)

Continue reading “Raspberry Pi Crazy Guitar Rig Turns You Into A Hard ‘N Heavy One-Man Band”

Toddler Arcade Cabinet Is A Stand-Up Job

A few years ago, [Mark] built an arcade cabinet into a low table. But once his new gaming buddy [Grayson] came along and started crawling, it wasn’t practical to have a low, pointy table around. Trouble is, [Mark] had already given [Grayson] his first taste with a Thomas the Tank Engine game. Since the kid was hooked, [Mark] rebuilt the table arcade into a toddler-sized arcade cabinet that they can both use.

The brain — a Raspberry Pi running RetroPie — should be familiar to most of our readers. [Mark] found the perfect crappy old monitor when they were upgrading at his office, and found some nice speakers to give it good bass. We love the details like the chrome edging, and especially the kick bar/footrest along the bottom. It can be difficult to decide how to decorate a multi-arcade cabinet, so [Mark] went the sticker bomb route with 700 of them randomly distributed and safe from toddler wear and tear under five coats of clear wood varnish.

We think this looks great, especially since [Mark] doesn’t have a workshop and cut all that MDF by hand on a jigsaw in the kitchen. Check out the happy train engineer after the break.

Maybe once [Grayson] is old enough to break tablets, [Mark] can build a gaming tab-inet out of it. Just sayin’.

Continue reading “Toddler Arcade Cabinet Is A Stand-Up Job”