in , , , ,

Linamp

Reading Time: 4 minutes

For his project, Rodrigo wanted to bring Winamp’s early days back to life in a more physical form so he decided to produce a music player that could easily be part of a hi-fi mini system. Specifically, he took inspiration from a Aiwa mini setup from around 1983, figuring he could create a case and have all of the functions available on a front touchscreen display.

One thing he noticed was the simplicity of design of the old devices. “Old electronics, especially audio devices, managed to look high-tech and yet elegant,” he explains. “They managed to fit in well with people’s home décor while using relatively simple construction techniques such as sheet metal or wood. I thought that, with all the new manufacturing services we have now, It wouldn’t be too hard to replicate some of the construction techniques of my old Aiwa system, so I set out to learn how to design sheet metal parts, which was in itself a fun exercise to do.”

- Werbung -

Physical

Rodrigo based his build around a Raspberry Pi 4B with a 32GB microSD card. “I decided to use the Raspberry Pi because of the software support and extensive documentation and online resources,” he said. “In the past, I’ve completed projects with other single board computers and I’ve always found small details that made their usage much more complex, for example, limited documentation on how to do lower level things like interfacing with special displays, controlling the boot process, or even just supporting recent Linux kernels.

“Since this was a hobby project, I didn’t want to spend too much time figuring out those details on other SBCs. Also I chose Raspberry Pi 4 because it was the latest model at the time I started the project. Raspberry Pi 5 was announced after I’d begun and I figured I didn’t really need that device’s performance anyway.”

At first, Rodrigo toyed with the idea of making the front face physical. “I wanted to add real-life buttons using a 3D printer and I was going to design a custom PCB for the interface,” he says. But he couldn’t find screens with the correct size and dimensions for the spectrum analyser and song information displays that needed to be included to remain faithful to Winamp without making the build too complex.

“Making it physical would have made it less flexible as well,” he adds. For example, I would not be able to have the playlist view in the same display, which would make the device bigger and clunkier so I decided to go with a touchscreen.” This, he figured, would stretch across the entire front of the device and include all of the buttons as part of the UI. He reckoned his background as a software engineer meant this would prove to be relatively straightforward.

- Werbung -

A little more love

Rodrigo opted for a 7.9-inch extra-wide screen and he created the case using sheet metal, sending his Onshape designs to PCBWay so they could be produced using 1mm anodised aluminium. He’d closely analysed his Aiwa system so he could figure the correct dimensions and overall look and, for convenience, he placed a power button, Ethernet port, USB-A and USB-ports and 3.5mm stereo jack at the back.

The majority of his time was spent on the software, however. He created a custom Qt 6 app which he wrote in C++. “Replicating the layout itself wasn’t that hard, it was just a matter of getting rough dimensions at first and drafting the UI in Qt Creator using the graphical Qt Widget designer interface, and then fine tuning dimensions by comparing screenshots in GIMP,” he explains. “The complex part was replicating the spectrum analyser and getting the raw audio data to feed it. I did a lot of research and looked into other open-source projects’ code to get ideas and code to base my solution on.”

It’s proven to be a very vivid, eye-catching solution and it doesn’t feel as if any compromises have been made. Above all, it has the intended nostalgic flavour thanks in the main to the spectrum analyser and the way the name of the song and artist scroll across the top. It also retains the intuitive UI in full, so songs can be selected and played in no time. “Linamp supports playing music CDs from a CD/DVD drive connected via USB as well, but you need to use a powered USB hub in order for the drive to work, otherwise Raspberry Pi may not have enough power for the external drive,” Rodrigo adds.

- Werbung -

Yet despite being feature packed, Rodrigo wants more. He’s also been overwhelmed by the positive reaction from people who have seen the project and he is working on adding Spotify playback and Bluetooth. “It had an amazing response,” Rodrigo says. “I never imagined it would have been that popular, especially on YouTube, where I uploaded a quick video of how the UI works as an afterthought.” With more than 100,000 views, we don’t think we’ve heard the last of this project.

What do you think?

26 Points
Upvote Downvote

Written by tmedia

Schreibe einen KommentarAntworten abbrechen