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:
- Using port I/O instead of memory mapped access.
Occupies a lot of port bits and is typically slow.
- Inserting delay loops in the software at certain points.
Requires some trial and error and may fail when changing cards. Also slower.
- 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
Take care, this is a huge file. Owner of Eagle does not need this file.
CPLD schematic, for Xilinx ISE WebPACK 6.2.03i (29KB)
Eagle 4.0 schematic and board file (72KB)
Ethernut nutpiper application (69KB)