Classic 80’s Stereo Receiver Enjoys A Second Life As RadioduinoWRT

radio2[Raffael] had an old Broken Yamaha natural sound receiver lying around. Rather than throw it out, he built himself a slick web radio. He calls it RadioduinoWRT. [Raffael] started by removing all the internals – though he kept the front panel controls.  He then added an Arduino Mega to handle the front panel controls, including a 16×2 character LCD module. The Arduino also takes commands via IR remote. An enc28j60 Ethernet module allows the Arduino to communicate with a the brains of the operation, a TL-WR703N mini router.

A micro USB hub expands the single USB port on the WR703, allowing both a USB sound card and a 4 gig USB stick to be mounted. We’d like to add that the TL-WR703 is a must in this application – the amazon link [Rafael] provides brings up the TL-WR702 as a top link. Only the TL-WR703 has a USB host connection.

The real magic is in [Raffael’s] software setup. The WR703 is running OpenWRT.  He added modules for the USB sound card, as well as expanding the file system onto the USB stick. Once that was complete [Raffael] added Music Player Daemon (MPD) and MPC, a console app to drive MPD. Lighttpd, a light web server provides an interface for the Arduino as well as a web front end to the entire radio.All this allows [Raffael] to control his radio in several ways. He can log in via any web browser on his network. He can use the front panel controls. He can use an IR remote. Since he is running MPD, any client (there are literally hundreds out there) will also drive the radio.

While a low-end USB sound card in a home stereo application does make our inner audiophile cringe a bit, the quality does seem to be pretty good. [Rafael’s] design would make it simple to swap out a higher quality USB sound card if the need arises.

Continue reading “Classic 80’s Stereo Receiver Enjoys A Second Life As RadioduinoWRT”

A Cortex M4 Based Platform With ETH, USB, BT And Many On-board Peripherals

Here is a very time consuming project that I worked on during last summer: an ARM Cortex M4 based platform with plenty of communication interfaces and on-board peripherals. The particular project for which this board has been developed is not really HaD material (one of my father’s funny ideas) so I’ll only describe the platform itself. The microcontroller used in the project is the ATSAM4E16C from Atmel, which has 1Mbyte of flash and 128Kbytes of SRAM. It integrates an Ethernet MAC, a USB 2.0 Full-speed controller, a sophisticated Analog to Digital Converter and a Digital to Analog Converter (among others).

Here is a list of the different components present on the board so you can get a better idea of what the platform can do: a microphone with its amplifier, a capacitive touch sensor, two unipolar stepper motors controllers, two mosfets, a microSD card connector, a Bluetooth to serial bridge, a linear motor controller and finally a battery retainer for backup power. You can have a look at a simple demonstration video I made, embedded after the break. The firmware was made in C and uses the Atmel Software Framework. The project is obviously open hardware (Kicad) and open software.

Continue reading “A Cortex M4 Based Platform With ETH, USB, BT And Many On-board Peripherals”

The Raspberry Pi Becomes A Form Factor

Despite the cries for updated hardware, the Raspberry Pi foundation has been playing it cool. They’re committed to getting the most out of their engineering investment, and the current board design for the Raspi doesn’t support more than 512Mb of memory, anyway.

What you see above isn’t a Raspberry Pi, though. It’s the Carrier-one from SolidRun. All loaded out, it has a system-on-module with a quad core ARM Cortex-A9, 2GB of RAM, 1000 Mbps Ethernet, USB host ports, eSATA, and LVDS display connector, a real time clock, and everything else you get with a Raspberry Pi, header pins included. It’s all the awesomesauce of the newer ARM boards that will still work with all your Raspberry Pi hardware.

If you’re thinking this is a product announcement, though, think again. The folks at SolidRun are merely using this Raspberry Pi form factor board as a prototyping and development platform for their CuBox-i device, In its lowest configuration, the CuBox-i1 is still no slouch and would be more than able to keep up with the most demanding Raspberry Pi applications.

Still, though, a hugely powerful board with lots of I/O is something we’d all love, and if SolidRun gets enough complaints praise, it seems like they might be willing to release the Carrier-one as an actual product.

Hackerspacing In Europe: Conclusion

Wow! What a trip. In just over one week we travelled nearly 2000 km and visited 13 hackerspaces in 10 different cities in Germany, Belgium and The Netherlands. However that was only the tip of the iceberg — there were dozens more hackerspaces in the area, and we wish we had the time to visit them all! The hospitality of the hackerspaces was amazing. Thank you so much to all the spaces we visited! If you missed some of tours, you can see the them all here.

  1. Chaosdorf (Dusseldorf, Germany)
  2. Garage Lab (Dusseldorf, Germany)
  3. ACKspace (Heerlen, The Netherlands)
  4. HSBXL (Brussels, Belgium)
  5. Whitespace (Gent, Belgium)
  6. Void Warranties (Antwerp, Belgium)
  7. Open Garage (Antwerp, Belgium)
  8. MadSpace (Eindhoven, The Netherlands)
  9. De Ontdekfabriek (Eindhoven, The Netherlands)
  10. Revelation Space (The Hague, The Netherlands)
  11. Technologia Incognita (Amsterdam, The Netherlands)
  12. Hack42 (Arnhem, The Netherlands)
  13. Stratum0 (Brunswick, Germany)

Did you enjoy these tours? Is there anything you’d like to see more of? The style of the tour? Other things to focus on? Let us know in the comments!

Writing A FUSE Filesystem In Python

photo

Have you ever thought a particular project could be better if you could just control the file access directly? [Stavros Korokithakis] did, specifically for a backup program he was working on. What followed was the realization that writing a FUSE filesystem, particularly in Python, isn’t as complicated as it may seem. Really, through the power of open source, the heavy lifting has already been done for us. If you’d like to try it yourself, you’ll need to install fusepy. From that point, you simply need to define the filesystem methods you will be using.

Python isn’t going to win any speed contests in the filesystem space, but that isn’t really the point. Using this technology opens up a huge opportunity for new ways of accessing data. If you let your mind wander, you can conceive of encrypted filesystems, seamless remote data access, new key-value storage designs, etc. Perhaps even more interesting is the idea of using Python to communicate with a physical device… maybe a proc filesystem to keep track of your robot telemetry? We’d love to hear your ideas in the comments.

We had success using [Stavros’] example script on Linux and OSX. (Fair warning if you’re on a Mac, the pip version of fusepy seems to be linked against fuse4x rather than OSXFUSE, but once you’ve got the prerequisites installed, you’re golden.) We didn’t have a Windows machine to test. Can anyone confirm if the same is possible there?

Furbies Sing Queen At Fresher’s Faire

kent-furby

The University of Kent has their own hacker space, called  [Maker Society]. Every year the school holds an orientation for new students called the Fresher’s Faire. The [Maker Society] display at this year’s Fresher’s Faire included a group of partially clothed Furbies singing the classic Bohemian Rhapsody by Queen. This isn’t our first run in with Bohemian Rhapsody and hacked hardware.

The [Maker Society] started by doing some internet research and reverse engineering a first generation Furby.  The Furby itself is a marvel of cost reduction. All the doll’s functions run from a single motor and a cam system. A limit switch tells the on-board microcontroller when the cam is at the zero position. An optical encoder keeps track of the cam as it moves. The [Society] replaced Furby’s internal microcontroller with an Atmel ATMega328. This allowed them to use the Arduino programming environment.

Many classic Animatronic systems use an audio recording for motion. Typically a stereo recorder would perform double duty. The first track would contain the audio for the animation. A second track would contain audio tones corresponding to movement of each of the degrees of freedom of the doll being animated. Because the two tracks were on the same strip of magnetic tape, the audio and movement would always be in sync. Multitrack tape record and playback systems added even more flexibility to this type of system.

Continue reading “Furbies Sing Queen At Fresher’s Faire”