A Feature-Rich Amplifier Module For 3-Way Speaker Builds

There’s something rewarding about building your own DIY audio hardware. Knowing you put it together yourself gives you faith in the construction, and psychosomatically makes the music sound all that much sweeter. If you’re into that kind of thing, you might like to give [Eric Sorensen’s] Denmark amplifier module a look.

The amplifier is intended to be used in a 3-way system, running a subwoofer, woofer, and tweeter. It uses a 1000 W ICEpower module to run the subwoofer, with a pair of 500W ICEpower modules to run the woofer and tweeter respectively. Meanwhile, a MiniDSP 2x4HD is used to accept optical audio input. It also offers digital signal processing and serves as a crossover to split the signal across the three speakers. An STM32F401 is used to run the show, controlling all the various modules and the necessary status LEDs. It’s a feature-rich build, too, with overtemperature monitoring, fan control, and clipping warnings built in.

The whole setup is built on to a sturdy aluminium backplate. The CNC-machined panel has simple tactile buttons for control. There’s also a nifty use of clear PETG 3D printer filament as a light pipe for LEDs. It’s effective, and it looks great. The whole module is designed to slide into the bottom of a 3-way speaker housing like a drawer.

Overall, if you’re building a big set of 3-way speakers, you might find the Denmark amplifier module is perfect for your needs. Alternatively, you could experiment with a different kind of speaker entirely. Video after the break.

Continue reading “A Feature-Rich Amplifier Module For 3-Way Speaker Builds”

Ploopy Builds Open Source RP2040-Powered Headphones And You Can Too!

We’ve seen many DIY headphones projects on these fair pages over the years, but not many that are quite as DIY as the Ploopy Headphones. What makes this project interesting is the sheer depth of the construction, with every single part being made from what we might call base materials. Materials such as 3D printer filament, foam and felt, and the usual metallic vitamins.

The electronics are fairly straightforward, with an RP2040 functioning as the USB audio interface and equalizer function. Audio samples are emitted as I2S into a PCM3050 24-bit stereo codec which generates a pair of differential output audio signals. These are then converted from differential to single-ended signals and passed on to the coil drivers. The coil drivers consist of no fewer than eight-paralleled opamps per channel. All of this is powered by the USB-C connection to the host computer. Whilst a kit of parts is available for this, you can make your own if you wish, as the full source (Altium designer needed for tweaks) is available on the Ploopy headphone GitHub.

A pretty ploopy response

Many DIY headphone builds would likely be using off-the-shelf speaker units, with large parts of the ear cups being taken from spare parts kits for commercial offerings. But not the Ploopy. The drivers are constructed from flex PCB coils with a standard TRRS jack on each side. Magnets for these coils to react against are held in a 3D-printed frame that is attached to the outer cover. The coils are aligned with a special jig and bonded to the ‘driver foam’ with some 3M VHB tape.

The ear cups are constructed with some 3D printed rings, foam pieces, and simple woven material. The resonator plates push into the inner side of the cup, and the assembly simply screws to the driver assembly. The incredibly detailed assembly wiki makes it look easy, but we reckon there are a few tricky steps in there to trip the unwary. The headband again consists of printed spring sections, some woven material, and foam with a few metallic vitamins thrown in. That makes it sounds simple, but it isn’t.

On the whole the build looks fantastic, but what does it sound like? The Ploopy team has tested them against a pair of Sennheiser HDRXX giving a broadly comparable response, but we’re no audio experts, and the proof, as always, is in the wearing. This project seems to be the ultimate in audio tweakability, with the punchy RP2040 capable of running six audio filters at the full 48 KHz, 16-bit audio, though, the PCM3050 is capable of more.

Want to build some headphones, but need a Bluetooth interface? We got you covered. Can 3D printed headphones ever compare to the big names? We’ll see.

An Open Hardware Eurorack Compatible Audio FPGA Front End

[Sebastian Holzapfel] has designed an audio frontend (eurorack-pmod) for FPGA-based audio applications, which is designed to fit into a standard Eurorack enclosure. The project, released under CERN Open-Hardware License V2, is designed in KiCAD using the AK4619VN four-channel audio codec by Asahi Kasei microdevices. (And guess what folks, there’s plenty of those in stock!) Continue reading “An Open Hardware Eurorack Compatible Audio FPGA Front End”

Count Leading Zeros For Efficient Logarithms

[Ihsan Kehribar] points out a clever trick you can use to quickly and efficiently compute the logarithm of a 32-bit integer. The technique relies on the CLZ instruction which counts the number of leading zeros in a machine word and is available in many modern processors. Typical algorithms used to compute logarithms are not quick and have a variable execution time depending on the input value. The technique [Ihsan] is using is both fast and has a constant run time.

The above equation summarized the math behind the algorithm. We get the first term easily using the CLZ instruction. Using the remainder and a pre-computed lookup table, it is possible to get the second term to various degrees of accuracy, depending on how big you make the table and whether or not you take the performance hit of interpolation or not — those of a certain age will no likely groan at the memory of doing interpolation by hand from logarithm tables in high school math class. [Ihsan] has posted an MIT-licensed implementation of this technique in his GitHub repository, which includes both the C-language algorithm and Python tools to generate the lookup table and evaluate the errors.

Why would you do this? Our first thought was real-time streaming DSP operations, where you want fast and deterministic calculations, and [Ihsan]’s specifically calls out embedded audio processing as one class of such applications. And he should know, after all, since he developed a MIDI capable polyphonic FM synthesizer on a Cortex M0 that we covered way back in 2015.

Reverse-Engineering Forgotten Konami Arcade Hardware

When fully-3D video games started arriving in the early 90s, some companies were more prepared for the change than others. Indeed, it would take nearly a decade of experimentation before 3D virtual spaces felt natural. Even then, Konami seems to have shot themselves in the foot at the beginning of this era with their first foray into 3D arcade games. [Mog] shows us the ins-and-outs of these platforms while trying to bring them back to life via MAME.

These arcade machines were among the first available with fully-3D environments, but compared to offerings from other companies are curiously underpowered, even for the time. They include only a single digital signal processor which is tasked with calculating all of the scene geometry while competing machines would use multiple DSP chips to do the same job. As a result the resolution and frame rate are very low. Nonetheless, [Mog] set out to get it working in MAME.

To accomplish this task, [Mog] turned to a set of development tools provided to developers for Konami in the early 90s which would emulate the system on the PCs of the time. It surprisingly still worked on Windows 10 with minor tweaking, and with some other tools provided over the decades of others working on MAME these old Konami machines have some new life with this emulator support.

Not everything works perfectly, but [Mog] reports that most of the bugs and other issues were recently worked out or are being actively worked on by other experts in the field. If you remember these games from the arcade era of the 80s and early 90s, it might be time to grab an old CRT and fire this one up again.

Continue reading “Reverse-Engineering Forgotten Konami Arcade Hardware”

A Simple RP2040-Based Audio DSP Board

If you’re one of those people who got into building electronics for the purpose of making music, then this Raspberry Pi RP2040-based audio DSP project by [DatanoiseTV] might be of interest. Provided is a FreeRTOS template application for creating Eurorack compatible synthesizers, effects processors, and similar DSP-based audio widgets.

The hardware platform has the usual Eurorack connectivity, including MIDI in, Control Voltages (CV) and the usual 5V-compatible triggers. An audio output is provided to send the audio out to the system mixer or any other analog modules. Additionally, connections are provided for a rotary encoder, a few push buttons, and an OLED display to allow construction of a rudimentary user interface on the module, if that is required.

The application template is generic enough, however the project is intended to be used with the Vult DSP transcompiler. Vult is a high-level programming language designed to enable easy creation of audio synthesizers and similar, producing C++ code as an output of the compilation process. This is then wrapped up with the RTOS goodies (although you don’t actually need them) to drop onto the RP2040 in the usual way, via the handy USB-C port. So, if you’re looking to get into DSP-based Eurorack modules for your homebrew synth rack, this might be a good place to start.

Just like the RP2040 isn’t the most obvious choice for a DSP application, neither is the ESP32 for that matter, but who cares? many modern micros are more than capable of audio DSP these days, with or without the dedicated functionality.

Processing Audio With The RP2040

The Raspberry Pi, although first intended as an inexpensive single-board computer for use in education, is now ubiquitous in electronics communities. Its low price as well as Linux platform and accessible GPIO make it useful in many places outside the classroom. But, if you want to abandon the ease-of-use in favor of an even lower price, the Raspberry Pi foundation makes that possible as well with the RP2040 chip, commonly found on the Pico. [Jason] shows us one way to make use of this powerful chip by putting one in an audio digital signal processing board.

While development boards are available for this chip, [Jason] has opted instead for a custom PCB which he designed himself and includes an integrated headphone amplifier and 3.5 mm audio jacks. To do the actual DSP work, the RP2040 chip uses three 12-bit ADC channels and 16 controllable PWM channels. The platform is also equipped with the TLV320AIC3254 codec from Texas Instruments. With all of this put together, he has a functioning open-source platform he calls the DS-Pi.

[Jason] has built this as a platform for guitar effects and as a customizable guitar amp modeler, but with a platform that is Arduino-compatible and fairly easy to program it could be put to use for anything involving other types of music or audio processing, like this specialized MIDI-compatible guitar effects platform which is built around the same processor.