Building An Inexpensive Squeezebox Client Replacement

squeezebox-replacement-built-on-the-cheap

[Andrew] is a fan of the audio quality provided by the Squeezebox hardware. Like many he was unhappy to hear that the devices were being discontinued, but he figured out a way to build a Squeezebox client clone for less than he could have bought an original.

He set several goals for the build. Most notably he wanted the system to be low-power, noiseless, and to support audio quality of at least 96 kHz at 24 bits. What he came up with is the Pogoplug seen in between the two speakers above. It can be acquired for under $20 and it runs embedded Linux. Another member of the Squeezebox community had been working on a custom distro called SqueezePlug to turn these types of devices into Squeezebox clients. After flashing the distro and tweaking the settings [Andrew] has accomplished his goals. The one caveat is the lack of an audio out port. Above he’s using some cheap USB speakers, but higher-fidelity is possible by choosing a more expensive external USB device.

This will work nicely with that Squeezebox server you built from a Raspberry Pi.

Turning A Tiny Router Into A Webradio

tplink

While the hacking zeitgeist is focused nearly entirely on all those new ARM dev boards that include the Raspberry Pi, some people out there are still doing it old school by modifying existing electronics to suit their needs. [Peter] picked up one of those very inexpensive TP-Link 703n wireless routers we’ve seen before and modified it into a standalone web radio, complete with volume and tuner knobs.

The TP-Link 703n is a wireless router smaller than a credit card available from the usual Chinese resellers for about $20. Able to run OpenWRT, this very inexpensive piece of hardware can be transformed into a device comparable to the Raspberry Pi; a complete Linux system with a few GPIO pins.

[Peter] took his 703n router and added an ATtiny85 connected to two pots and the internal UART. This, along with a script to read the values from the pots, tells the router what station to tune into and what volume to play it. The audio is handled by a USB soundcard with an internal speaker, making [Peter]’s build one of the smallest purpose-built Internet radios we’ve seen.

You can see [Peter]’s radio in action after the break.

Continue reading “Turning A Tiny Router Into A Webradio”

Adding An LCD Screen Terminal For TP-Link Routers

Routers running embedded Linux offer quite a bit of power depending on what you need to do. To extend the usefulness of his TP-Link router [Roman] built a rig that adds an LCD screen to display the terminal. But it ended up being quite a bit more powerful than that.

The first portion of the project was to build a USB video card for the display. [Roman] went with an STM32 development board which resolves the USB device end with the QVGA screen driver (translated). This seems like it would be the lion’s share of the project, but he still needed a driver on the router to interface with the device. This thrust him into the world of USB-class drivers (translated). It even included building graphics support into the kernel of OpenWRT. The final piece of the puzzle was to write a frame buffer (translated) that would help regulate the output to the screen. The result works so well he is even able to play games using ScummVM. See for yourself in the clip after the break.

Continue reading “Adding An LCD Screen Terminal For TP-Link Routers”

Is Entropy Slowing Down Your Android Device?

071210_1705_AndroidDev11.jpg

[Lambgx02] got tired of his Android device getting bogged down and decided to dig down to the cause of the issue. His investigation led him to believe that entropy is causing the slowdown. He believes that his workaround reduces 90% of the lag on the average Android device.

So how is it possible that entropy is causing the problem? It seems there is a bottleneck when an app requests a random number from the Linux kernel running at the lowest level of the device. Android is set up to use /dev/random for all random number requests, but [Lambgx02] says that location has a very shallow pool of numbers available. When they run out the kernel has to reload with a new seed and this is blocking the app that requested the data from continuing.

His solution was to write his own app that seeds /dev/random once every second using a number from /dev/urandom. He mentions that this might cause a security vulnerability as seeding the random data in this way is not quite as random. There may also be issues with battery life, so make sure to monitor performance if you give it a try.

[via Reddit]

Dedicated Pandora Player Plus AirPlay Built Around The Raspberry Pi

rpi-pandora-radio

[Shaun Gehring] wanted an Internet radio player. Although he did have some troubles along the way, the final project turned out very well. Housed inside this case which used to house a spindle of bland CDs is a Raspberry Pi that plays Pandora radio and serves as an AirPlay receiver.

The GPIO header of the RPi makes this project a lot easier. [Shaun] used Adafruit’s breakout board to solder connections for the six buttons and the character LCD screen. Plug some speakers into the audio jack and the hardware end of the deal is finished. The software side of things is very similar to the BeagleBone Pandora player we looked at in September. It uses a Linux distribution (Rasbian Weezy) and the Pianobar package.

Pianobar is very versatile. You can control it using a First-In First-Out file. Once [Shaun] figured out how to use mkfifo to set up the file, he was able to control it from a script by monitor button presses and echoing the associated command to the FIFO. The finishing touch was to add AirPlay support via the shairport package.

Breaking The New Neo Geo Handheld Wide Open

neo

In case you weren’t aware, there’s a new Neo Geo console on the block. It’s called the Neo Geo X and brings back more than a few pains of nostalgia for classic arcade games of the 90s. After receiving their brand new Neo Geo portables, members of the Neo Geo forum decided to do a teardown on one of their newest consoles and found something interesting: this thing was made for hacking.

Officially, the Neo Geo X will get new games released on SD cards. The first run of these consoles – the gold edition – have 20 games preloaded onto the system convientently stored on a microSD card buried underneath the screen. After looking at this microSD card, forum user [Lectoid] discovered the 20 preloaded games and the bios for the system, all completely unlocked and ready for hacking.

Already a few forum members have  the AES Unibios running on this tiny portability Neo Geo, giving them the capability to play every Neo Geo game ever made. Since the Neo Geo X uses the same processor as some other handhelds, there’s great hope for completely unlocking this new console and running emulators on it.

Leveraging The GPU To Accelerate The Linux Kernel

Powerful graphics cards are pretty affordable these days. Even though we rarely do high-end gaming on our daily machine we still have a GeForce 9800 GT. That goes to waste on a machine used mainly to publish posts and write code for microcontrollers. But perhaps we can put the GPU to good use when it comes compile time. The KGPU package enlists your graphics card to help the kernel do some heavy lifting.

This won’t work for just any GPU. The technique uses CUDA, which is a parallel computing package for NVIDIA hardware. But don’t let lack of hardware keep you from checking it out. [Weibin Sun] is one of the researchers behind the technique. He posted a whitepaper (PDF) on the topic over at his website.

Add this to the growing list of non-graphic applications for today graphics hardware.

UPDATE: Looks like we won’t be trying this out after all. Your GPU must support CUDA 2.0 or higher. We found ours on this list and it’s only capable of CUDA 1.0.

[Thanks John]