1 .. SPDX-License-Identifier: GPL-2.0 1 .. SPDX-License-Identifier: GPL-2.0 2 2 3 .. include:: <isonum.txt> 3 .. include:: <isonum.txt> 4 4 5 The Silicon Labs Si470x FM Radio Receivers dri 5 The Silicon Labs Si470x FM Radio Receivers driver 6 ============================================== 6 ================================================= 7 7 8 Copyright |copy| 2009 Tobias Lorenz <tobias.lor 8 Copyright |copy| 2009 Tobias Lorenz <tobias.lorenz@gmx.net> 9 9 10 10 11 Information from Silicon Labs 11 Information from Silicon Labs 12 ----------------------------- 12 ----------------------------- 13 13 14 Silicon Laboratories is the manufacturer of th 14 Silicon Laboratories is the manufacturer of the radio ICs, that nowadays are the 15 most often used radio receivers in cell phones 15 most often used radio receivers in cell phones. Usually they are connected with 16 I2C. But SiLabs also provides a reference desi 16 I2C. But SiLabs also provides a reference design, which integrates this IC, 17 together with a small microcontroller C8051F32 17 together with a small microcontroller C8051F321, to form a USB radio. 18 Part of this reference design is also a radio 18 Part of this reference design is also a radio application in binary and source 19 code. The software also contains an automatic 19 code. The software also contains an automatic firmware upgrade to the most 20 current version. Information on these can be d 20 current version. Information on these can be downloaded here: 21 http://www.silabs.com/usbradio 21 http://www.silabs.com/usbradio 22 22 23 23 24 Supported ICs 24 Supported ICs 25 ------------- 25 ------------- 26 26 27 The following ICs have a very similar register 27 The following ICs have a very similar register set, so that they are or will be 28 supported somewhen by the driver: 28 supported somewhen by the driver: 29 29 30 - Si4700: FM radio receiver 30 - Si4700: FM radio receiver 31 - Si4701: FM radio receiver, RDS Support 31 - Si4701: FM radio receiver, RDS Support 32 - Si4702: FM radio receiver 32 - Si4702: FM radio receiver 33 - Si4703: FM radio receiver, RDS Support 33 - Si4703: FM radio receiver, RDS Support 34 - Si4704: FM radio receiver, no external anten 34 - Si4704: FM radio receiver, no external antenna required 35 - Si4705: FM radio receiver, no external anten 35 - Si4705: FM radio receiver, no external antenna required, RDS support, Dig I/O 36 - Si4706: Enhanced FM RDS/TMC radio receiver, 36 - Si4706: Enhanced FM RDS/TMC radio receiver, no external antenna required, RDS 37 Support 37 Support 38 - Si4707: Dedicated weather band radio receive 38 - Si4707: Dedicated weather band radio receiver with SAME decoder, RDS Support 39 - Si4708: Smallest FM receivers 39 - Si4708: Smallest FM receivers 40 - Si4709: Smallest FM receivers, RDS Support 40 - Si4709: Smallest FM receivers, RDS Support 41 41 42 More information on these can be downloaded he 42 More information on these can be downloaded here: 43 http://www.silabs.com/products/mcu/Pages/USBFM 43 http://www.silabs.com/products/mcu/Pages/USBFMRadioRD.aspx 44 44 45 45 46 Supported USB devices 46 Supported USB devices 47 --------------------- 47 --------------------- 48 48 49 Currently the following USB radios (vendor:pro 49 Currently the following USB radios (vendor:product) with the Silicon Labs si470x 50 chips are known to work: 50 chips are known to work: 51 51 52 - 10c4:818a: Silicon Labs USB FM Radio Referen 52 - 10c4:818a: Silicon Labs USB FM Radio Reference Design 53 - 06e1:a155: ADS/Tech FM Radio Receiver (forme 53 - 06e1:a155: ADS/Tech FM Radio Receiver (formerly Instant FM Music) (RDX-155-EF) 54 - 1b80:d700: KWorld USB FM Radio SnapMusic Mob 54 - 1b80:d700: KWorld USB FM Radio SnapMusic Mobile 700 (FM700) 55 - 10c5:819a: Sanei Electric, Inc. FM USB Radio 55 - 10c5:819a: Sanei Electric, Inc. FM USB Radio (sold as DealExtreme.com PCear) 56 56 57 57 58 Software 58 Software 59 -------- 59 -------- 60 60 61 Testing is usually done with most application 61 Testing is usually done with most application under Debian/testing: 62 62 63 - fmtools - Utility for managing FM tuner card 63 - fmtools - Utility for managing FM tuner cards 64 - gnomeradio - FM-radio tuner for the GNOME de 64 - gnomeradio - FM-radio tuner for the GNOME desktop 65 - gradio - GTK FM radio tuner 65 - gradio - GTK FM radio tuner 66 - kradio - Comfortable Radio Application for K 66 - kradio - Comfortable Radio Application for KDE 67 - radio - ncurses-based radio application 67 - radio - ncurses-based radio application 68 - mplayer - The Ultimate Movie Player For Linu 68 - mplayer - The Ultimate Movie Player For Linux 69 - v4l2-ctl - Collection of command line video4 69 - v4l2-ctl - Collection of command line video4linux utilities 70 70 71 For example, you can use: 71 For example, you can use: 72 72 73 .. code-block:: none 73 .. code-block:: none 74 74 75 v4l2-ctl -d /dev/radio0 --set-ctrl=vol 75 v4l2-ctl -d /dev/radio0 --set-ctrl=volume=10,mute=0 --set-freq=95.21 --all 76 76 77 There is also a library libv4l, which can be u 77 There is also a library libv4l, which can be used. It's going to have a function 78 for frequency seeking, either by using hardwar 78 for frequency seeking, either by using hardware functionality as in radio-si470x 79 or by implementing a function as we currently 79 or by implementing a function as we currently have in every of the mentioned 80 programs. Somewhen the radio programs should m 80 programs. Somewhen the radio programs should make use of libv4l. 81 81 82 For processing RDS information, there is a pro 82 For processing RDS information, there is a project ongoing at: 83 http://rdsd.berlios.de/ 83 http://rdsd.berlios.de/ 84 84 85 There is currently no project for making TMC s 85 There is currently no project for making TMC sentences human readable. 86 86 87 87 88 Audio Listing 88 Audio Listing 89 ------------- 89 ------------- 90 90 91 USB Audio is provided by the ALSA snd_usb_audi 91 USB Audio is provided by the ALSA snd_usb_audio module. It is recommended to 92 also select SND_USB_AUDIO, as this is required 92 also select SND_USB_AUDIO, as this is required to get sound from the radio. For 93 listing you have to redirect the sound, for ex 93 listing you have to redirect the sound, for example using one of the following 94 commands. Please adjust the audio devices to y 94 commands. Please adjust the audio devices to your needs (/dev/dsp* and hw:x,x). 95 95 96 If you just want to test audio (very poor qual 96 If you just want to test audio (very poor quality): 97 97 98 .. code-block:: none 98 .. code-block:: none 99 99 100 cat /dev/dsp1 > /dev/dsp 100 cat /dev/dsp1 > /dev/dsp 101 101 102 If you use sox + OSS try: 102 If you use sox + OSS try: 103 103 104 .. code-block:: none 104 .. code-block:: none 105 105 106 sox -2 --endian little -r 96000 -t oss 106 sox -2 --endian little -r 96000 -t oss /dev/dsp1 -t oss /dev/dsp 107 107 108 or using sox + alsa: 108 or using sox + alsa: 109 109 110 .. code-block:: none 110 .. code-block:: none 111 111 112 sox --endian little -c 2 -S -r 96000 - 112 sox --endian little -c 2 -S -r 96000 -t alsa hw:1 -t alsa -r 96000 hw:0 113 113 114 If you use arts try: 114 If you use arts try: 115 115 116 .. code-block:: none 116 .. code-block:: none 117 117 118 arecord -D hw:1,0 -r96000 -c2 -f S16_L 118 arecord -D hw:1,0 -r96000 -c2 -f S16_LE | artsdsp aplay -B - 119 119 120 If you use mplayer try: 120 If you use mplayer try: 121 121 122 .. code-block:: none 122 .. code-block:: none 123 123 124 mplayer -radio adevice=hw=1.0:arate=96 124 mplayer -radio adevice=hw=1.0:arate=96000 \ 125 -rawaudio rate=96000 \ 125 -rawaudio rate=96000 \ 126 radio://<frequency>/capture 126 radio://<frequency>/capture 127 127 128 Module Parameters 128 Module Parameters 129 ----------------- 129 ----------------- 130 130 131 After loading the module, you still have acces 131 After loading the module, you still have access to some of them in the sysfs 132 mount under /sys/module/radio_si470x/parameter 132 mount under /sys/module/radio_si470x/parameters. The contents of read-only files 133 (0444) are not updated, even if space, band an 133 (0444) are not updated, even if space, band and de are changed using private 134 video controls. The others are runtime changea 134 video controls. The others are runtime changeable. 135 135 136 136 137 Errors 137 Errors 138 ------ 138 ------ 139 139 140 Increase tune_timeout, if you often get -EIO e 140 Increase tune_timeout, if you often get -EIO errors. 141 141 142 When timed out or band limit is reached, hw_fr 142 When timed out or band limit is reached, hw_freq_seek returns -EAGAIN. 143 143 144 If you get any errors from snd_usb_audio, plea 144 If you get any errors from snd_usb_audio, please report them to the ALSA people. 145 145 146 146 147 Open Issues 147 Open Issues 148 ----------- 148 ----------- 149 149 150 V4L minor device allocation and parameter sett 150 V4L minor device allocation and parameter setting is not perfect. A solution is 151 currently under discussion. 151 currently under discussion. 152 152 153 There is an USB interface for downloading/uplo 153 There is an USB interface for downloading/uploading new firmware images. Support 154 for it can be implemented using the request_fi 154 for it can be implemented using the request_firmware interface. 155 155 156 There is a RDS interrupt mode. The driver is a 156 There is a RDS interrupt mode. The driver is already using the same interface 157 for polling RDS information, but is currently 157 for polling RDS information, but is currently not using the interrupt mode. 158 158 159 There is a LED interface, which can be used to 159 There is a LED interface, which can be used to override the LED control 160 programmed in the firmware. This can be made a 160 programmed in the firmware. This can be made available using the LED support 161 functions in the kernel. 161 functions in the kernel. 162 162 163 163 164 Other useful information and links 164 Other useful information and links 165 ---------------------------------- 165 ---------------------------------- 166 166 167 http://www.silabs.com/usbradio 167 http://www.silabs.com/usbradio
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.