|
From: Hans de G. <hde...@re...> - 2012-05-14 08:16:09
|
Hi, On 05/13/2012 06:01 PM, Deron wrote: > On 5/12/12 10:57 PM, Hans de Goede wrote: >> >>> "radio" appears to get a little further along. It actual seems to enable the radio in so much as when it is running, I get what seems like real radio static as to the just near silence I get otherwise. But I don't get any change in the output no matter the frequency tuned. >>> >> >> >> Ok, good, looking in: >> drivers/media/radio/si470x/radio-si470x-common.c >> >> I see the following module parameters: >> /* Spacing (kHz) */ >> /* 0: 200 kHz (USA, Australia) */ >> /* 1: 100 kHz (Europe, Japan) */ >> /* 2: 50 kHz */ >> static unsigned short space = 2; >> module_param(space, ushort, 0444); >> MODULE_PARM_DESC(space, "Spacing: 0=200kHz 1=100kHz *2=50kHz*"); >> >> /* Bottom of Band (MHz) */ >> /* 0: 87.5 - 108 MHz (USA, Europe)*/ >> /* 1: 76 - 108 MHz (Japan wide band) */ >> /* 2: 76 - 90 MHz (Japan) */ >> static unsigned short band = 1; >> module_param(band, ushort, 0444); >> MODULE_PARM_DESC(band, "Band: 0=87.5..108MHz *1=76..108MHz* 2=76..90MHz"); >> >> /* De-emphasis */ >> /* 0: 75 us (USA) */ >> /* 1: 50 us (Europe, Australia, Japan) */ >> static unsigned short de = 1; >> module_param(de, ushort, 0444); >> MODULE_PARM_DESC(de, "De-emphasis: 0=75us *1=50us*"); >> >> /* Tune timeout */ >> static unsigned int tune_timeout = 3000; >> module_param(tune_timeout, uint, 0644); >> MODULE_PARM_DESC(tune_timeout, "Tune timeout: *3000*"); >> >> /* Seek timeout */ >> static unsigned int seek_timeout = 5000; >> module_param(seek_timeout, uint, 0644); >> MODULE_PARM_DESC(seek_timeout, "Seek timeout: *5000*"); >> >> Especially the band parameter looks interesting, as >> according to your commented usb dumps your device has a >> bottom of 87.5 Mhz, were the driver defaults to 76 Mhz, >> so if you tuned to a known to work station in radio, >> you actually didn't because of this setting being wrong, >> edit /etc/modprobe.d/radio.conf >> >> And put the following there: >> options radio-usb-si470x band=0 >> >> Then do: >> rmmod radio-usb-si470x >> modprobe radio-usb-si470x >> >> And redo the driver binding, now tune to a radio station >> you know to work (from testing in windows for example) >> using radio, and hopefully things will work then. >> > > > I was so hopeful! However, it made no difference. I even then tried setting space=0 and de=0, to no avail. > > My attempts at a custom frequency changing program will generate pops in the audio output when changing the frequency, but the audio is silent. The radio program (http://www.cs.fsu.edu/~baker/devices/lxr/http/source/xawtv-3.95/console/radio.c) seems to enable the radio as when it is started the audio goes from silent to static, but I get the error "VIDIOCGAUDIO: Invalid argument" twice to console and changing the frequency does not generate any change in audio output. No pop, no change to static. Ah, you're using an old version of xawtv which uses the no longer supported v4l1 API, there is a newer version here, hopefully its radio.c version will work better: http://git.linuxtv.org/xawtv3.git Regards, Hans |