Make USB radio device work - panic, please help!
I have a USB radio device that didn't come with Linux drivers. When I plug it in, under the Device Manager, I can see the USB device: audio interface (for sound) and HID interface (for tuning). I can also see a new file: /dev/dsp1.
I opened /dev/dsp1 with VLC. It worked the first time, but now VLC plays only static! I tried it on another Linux machine and same thing happened: VLC played it, I closed VNC, unplugged the device, restarted VLC, plugged in the device and VLC couldn't play it any more (/dev/dsp1 was opened successfully, but you can hear only static).
I thought this is a VLC issue, but I don't think it is. When you plug it in for the first time, some files must be written somewhere on the hard drive. I poked around /sys/devices/pciXXX, but I don't know enough about Linux device drivers to understand what's in there.
I have to get this solved for a school project and I'm panicking. I couldn't get an answer for this on the VLC forums or the Ubuntu Multimedia forums, so I'm trying here.
(Silabs) USB FM Radio Reference Design: Basic Explanation
This is a basic idea about this situation:
The USB FM Radio from Silabs is a nice little device, unfortunately Silabs does not supply any support to let it work under Linux... dommage.
In the freely available application note [AN264.pdf] on Silabs WEB site, it's stated that the device will enumerate four USB interfaces. Three are used to control the Audio and one is a HID interface which allows to control the FM receiver...
Fortunately the Audio part seems to be compliant with the USB::AUDIO profile, so the latests Linux kernel might handle it correctly. If the device [/dev/dsp1] is created this is the case. What is actually missing is the HID control software to set and read the synthesized frequency, read the RDS data, etc. I've googled a little and this specific software has still to be written, mainly to tune the frequency and be able to hear something on the audio stream...
Second step is to add the feature (available in VLC) which copies the audio stream from [/dev/dsp]1 to the audio device output.
Then you get exactly the same thing as the application provided by Silabs.