In reply to:

This was causing the RioPlayList code to hang waiting for a reply (since no retransmits)



Yeah, it occured to me earlier today that it only sends the player request packet once. I never thought to go back and add code to make it retry since it always worked on my network. Have to add that to the to-do list I guess.
In reply to:

Took me a while to get the libmad stuff working since your source code distribution seems to require a more recent ARM-linux port of libmad than I could find on Jeff Mock's page. Managed to cobble together a build of the most recent version.



Yes I used the 0.14.2b release of libmad. I was able to use it "out of the box" by using this configure line:
./configure --host=arm-linux --enable-speed --enable-fpm=arm --disable-debugging
In reply to:

The streaming code causes a reboot due to AudioThread::OpenFile returning NULL when the socket connect() call failes. Once again this is errno 101 - ENETUNREACH



Unfortunately the code as it stands doesn't handle error conditions very well as this illustrates. However I can't understand why you're getting ENETUNREACH. My first guess is that the Rio isn't getting it's default gateway set correctly. Do you have the ability to connect to your Rio with either a serial port or netcat or something? If not I'll build an ARF file that has some of those utilities. What I'm interested in is the contents of /proc/net/route.
In reply to:

Also not sure about DNS config, but all the streams in the config file seem to use numeric IP addresses anyway.



The Rio shouldn't need DNS unless you try to enter a Shoutcast stream that is not an IP address. I don't have mine here set up with DNS and it doesn't seem to be a problem.
In reply to:

reading such well commented and tidy code was a pleasure



Hmm.. I didn't think that I'd done that good a job commenting the code Glad to hear you could make sense of it.