WLAN Internet Radio

The hardware is based on an Ethernut and a Medianut board plus a PCMCIA WLAN interface, which is stuffed with a Xilinx XC95108 and an ELSA AirLancer MC-11 WLAN card.


The major problem with driving PCMCIA and CompactFlash cards from an AVR microcontroller is the IORDY line. When the card activates this signal, the microcontroller should extend its access cycle. There are three possible solutions:

  1. Using port I/O instead of memory mapped access.
    Occupies a lot of port bits and is typically slow.

  2. Inserting delay loops in the software at certain points.
    Requires some trial and error and may fail when changing cards. Also slower.

  3. Building a hardware to emulate cycle extension.
    As one can imagine, this is not trivial. But with today's programmable logic chips it can be done.

Here solution 3 is realized by implementing a state machine into a CPLD. The data rate with this solution is approximately 70 kBytes/s.

The hardware is correct working only with an Ethernut 1.3, because the design is based on 5 volt. Ethernut 2.X has a 3.3 volt address bus.


The WLAN radio is based on the nutpiper Ethernut application. Where the ethernet driver is replaced by the WLAN device driver.

The WLAN device driver is already part of the current Nut/OS release. This driver supports only the Prism2 chipset.

The nutpiper application here can be compiled with ICCAVR.

A step by step guide on how to build an stand-alone Embedded Internet Radio can be found here.


Schematic (431KB)
Take care, this is a huge file. Owner of Eagle does not need this file.

Eagle 4.0 schematic and board file (72KB)

Ethernut nutpiper application (69KB)