N900 FM radio transmitter

(Software)
(Features)
 
(18 intermediate revisions not shown)
Line 1: Line 1:
-
The N900 has a short-range FM radio transmitter.
+
The N900 has a FM radio transmitter capable of sending audio several meters.
==Hardware==
==Hardware==
-
The SI4713 chip is used to transmit FM radio in the range 76-108MHz from a digital or analog audio input.
+
The SI4713 chip is used to transmit FM radio with radiotext in the range 76-108MHz from a digital or analog audio input.
 +
 
 +
=== Features ===
 +
 
 +
From the datasheet:
 +
* Integrated receiver for receive power measurement
 +
* Worldwide FM band support (76–108 MHz) for transmit
 +
* Requires only two external components
 +
* Frequency synthesizer with integrated VCO
 +
* Digital stereo modulator
 +
* Programmable pre-emphasis (50/75 µs)
 +
* Analog/digital audio interface
 +
* Programmable reference clock
 +
* RDS/RBDS transmit encoder (Si4713 only)
 +
* PCB loop antenna support with self calibrated capacitor tuning
 +
* Programmable transmit level
 +
* Programmable modulation
 +
* 2.7 to 5.5 V supply voltage
 +
* Digital gain compression
 +
* Integrated LDO regulator
 +
* 3 × 3 × 0.55 mm 20-pin QFN
 +
* Pb-free and RoHS Compliant
 +
 
 +
It is short range only, see the section on [[#Typical Range|typical range]].
It can also receive the signal level on the tuned frequency. This enables transmitter application to scan all frequencies, checking for vacant ones, and suggesting empty frequencies to the user for selection as transmission frequencies.
It can also receive the signal level on the tuned frequency. This enables transmitter application to scan all frequencies, checking for vacant ones, and suggesting empty frequencies to the user for selection as transmission frequencies.
-
The [[Nokia N900|N900]] controls the FM transmitter through the I2C bus, and supplies analog audio to the transmitter.
+
The [[Nokia N900|N900]] controls the FM transmitter through the I2C(2) bus, and supplies analog audio (same audio lines as HP-AMP) to the transmitter. The transmitter's digital audio inputs are unused (NC).
The FM signal is transmitted from a loop antenna built into the case, and connected to the PCB with clips.
The FM signal is transmitted from a loop antenna built into the case, and connected to the PCB with clips.
-
product marketing sheet: https://www.silabs.com/products/audiovideo/fmtransmitters/Pages/Si471213.aspx
+
product marketing sheet: [http://www.silabs.com/Support%20Documents/TechnicalDocs/Si4712-13-B30.pdf Si4713]
-
Full datasheet available there immediately after registering.
+
Full datasheet http://www.silabs.com/Support%20Documents/TechnicalDocs/AN332.pdf.
The documentation for the driver, along with some information on the chip is at
The documentation for the driver, along with some information on the chip is at
http://www.mjmwired.net/kernel/Documentation/video4linux/si4713.txt
http://www.mjmwired.net/kernel/Documentation/video4linux/si4713.txt
-
It is connected to the [[N900 Hardware Bus I2C|I2C]] bus.
+
It is connected to the [[N900 Hardware Bus I2C|I2C]] bus-2.
==Software==
==Software==
 +
===Kernel===
 +
It is controlled through the kernel module fmtx_si4713, which implements the interfaces /dev/radio0 - a video4linux device.
 +
v4l2-ctl dumps the following information about the device.
 +
 +
v4l2-ctl --all -d /dev/radio0
 +
  Driver Info:
 +
  Driver name  : radio-si4713
 +
  Card type    : Silicon Labs Si4713 FM Radio Tr
 +
  Bus info      : I2C: 0x63
 +
  Driver version: 1
 +
  Capabilities  : 0x00010000
 +
  Tuner
 +
Video input : 0
 +
Frequency: 1400000 (87.500000 MHz)
 +
Video Standard = 0x00000000
 +
Streaming Parameters Video Capture:
 +
Frames per second: 25.000 (25/1)
 +
Read buffers    : 0
 +
Tuner:
 +
  Name                : FM Transmitter
 +
Capabilities        : 62.5 Hz stereo
 +
Frequency range      : 87.5 MHz - 108.0 MHz
 +
Signal strength/AFC  : 0%/0
 +
Current audio mode  : stereo
 +
Available subchannels: stereo
 +
 +
 +
See [http://www.stanford.edu/~blp/fmtools/ for more information on the video4linux API].
 +
The driver also exposes the sysfs directory ./class/i2c-adapter/i2c-2/2-0063/ .
 +
 +
===User===
The FM transmitter can be enabled in the settings application, and there are third party applications to more easily enable it.
The FM transmitter can be enabled in the settings application, and there are third party applications to more easily enable it.
-
No software currently uses the ability of the chip to scan for free channels. Possibly it's not worth the effort, due to the inferior antenna. FMRX [[N900_FM_radio_receiver]]is probably better suited to do that job.
+
No software currently uses the ability of the chip to scan for free channels.  
-
The package [http://maemo.org/packages/view/fm-boost/ FM boost] maximizes the transmitter power. In some cases, this may improve reception. In others, the transmitter will already be set to highest output. Even on highest transmit power setting the usable range of FM transmitter is hardly beyond 5m. This is due to regulations, so you are allowed at all to send on a band reserved for public broadcast. Nobody wants a million pirate radio stations out there messing with frequencies of public broadcast stations for a whole block.
+
The package [http://maemo.org/packages/view/fm-boost/ FM boost] maximizes the transmitter power. In some cases, this may improve reception. In others, the transmitter will already be set to highest output.  
There are several bugs open with regards the FM transmitter [https://bugs.maemo.org/show_bug.cgi?id=6792 this one] for example is regarding the policy to turn off the FM transmitter when the device is plugged into a computer using the USB cable.
There are several bugs open with regards the FM transmitter [https://bugs.maemo.org/show_bug.cgi?id=6792 this one] for example is regarding the policy to turn off the FM transmitter when the device is plugged into a computer using the USB cable.
-
It is controlled through the kernel module fmtx_si4713, which implements the interfaces /dev/radio0 - a video4linux device. See [http://www.stanford.edu/~blp/fmtools/ for more information on the video4linux API] also it exposes the sysfs directory ./class/i2c-adapter/i2c-2/2-0063/ .
+
The D-Bus interface is documented in [http://maemo.org/api_refs/5.0/5.0-final/fmtx-middleware/fmtx_api.html this page]
-
 
+
-
The DBUS interface is documented in [http://maemo.org/api_refs/5.0/5.0-final/fmtx-middleware/fmtx_api.html this page]
+
-
==Inherent limitations==
+
==Typical Range==
Low power transmitters that are license compliant - do not exceed the regulations - are inherently short range devices and will have poor performance in many desired use-cases simply due to the regulatory limit on power usage.
Low power transmitters that are license compliant - do not exceed the regulations - are inherently short range devices and will have poor performance in many desired use-cases simply due to the regulatory limit on power usage.
-
In the US - the limit is approximately 15nW, in the UK, 50nW.
+
In the US - the limit is approximately 15 nW, in the UK, 50 nW.
The below OFCOM document lists ranges to a good receiver with a fully extended antenna as 4m for 15nW and 8m for 50nW. (to achieve 'noiseless' reception)
The below OFCOM document lists ranges to a good receiver with a fully extended antenna as 4m for 15nW and 8m for 50nW. (to achieve 'noiseless' reception)

Latest revision as of 22:19, 5 January 2014

The N900 has a FM radio transmitter capable of sending audio several meters.

Contents

[edit] Hardware

The SI4713 chip is used to transmit FM radio with radiotext in the range 76-108MHz from a digital or analog audio input.

[edit] Features

From the datasheet:

  • Integrated receiver for receive power measurement
  • Worldwide FM band support (76–108 MHz) for transmit
  • Requires only two external components
  • Frequency synthesizer with integrated VCO
  • Digital stereo modulator
  • Programmable pre-emphasis (50/75 µs)
  • Analog/digital audio interface
  • Programmable reference clock
  • RDS/RBDS transmit encoder (Si4713 only)
  • PCB loop antenna support with self calibrated capacitor tuning
  • Programmable transmit level
  • Programmable modulation
  • 2.7 to 5.5 V supply voltage
  • Digital gain compression
  • Integrated LDO regulator
  • 3 × 3 × 0.55 mm 20-pin QFN
  • Pb-free and RoHS Compliant

It is short range only, see the section on typical range.

It can also receive the signal level on the tuned frequency. This enables transmitter application to scan all frequencies, checking for vacant ones, and suggesting empty frequencies to the user for selection as transmission frequencies.

The N900 controls the FM transmitter through the I2C(2) bus, and supplies analog audio (same audio lines as HP-AMP) to the transmitter. The transmitter's digital audio inputs are unused (NC).

The FM signal is transmitted from a loop antenna built into the case, and connected to the PCB with clips.

product marketing sheet: Si4713 Full datasheet http://www.silabs.com/Support%20Documents/TechnicalDocs/AN332.pdf.

The documentation for the driver, along with some information on the chip is at http://www.mjmwired.net/kernel/Documentation/video4linux/si4713.txt

It is connected to the I2C bus-2.

[edit] Software

[edit] Kernel

It is controlled through the kernel module fmtx_si4713, which implements the interfaces /dev/radio0 - a video4linux device.

v4l2-ctl dumps the following information about the device.

v4l2-ctl --all -d /dev/radio0
 Driver Info:
 Driver name   : radio-si4713
 Card type     : Silicon Labs Si4713 FM Radio Tr
 Bus info      : I2C: 0x63
 Driver version: 1
 Capabilities  : 0x00010000
  Tuner
Video input : 0
Frequency: 1400000 (87.500000 MHz)
Video Standard = 0x00000000
Streaming Parameters Video Capture:
Frames per second: 25.000 (25/1)
Read buffers     : 0
Tuner:
 Name                 : FM Transmitter
Capabilities         : 62.5 Hz stereo 
Frequency range      : 87.5 MHz - 108.0 MHz
Signal strength/AFC  : 0%/0
Current audio mode   : stereo
Available subchannels: stereo 


See for more information on the video4linux API. The driver also exposes the sysfs directory ./class/i2c-adapter/i2c-2/2-0063/ .

[edit] User

The FM transmitter can be enabled in the settings application, and there are third party applications to more easily enable it.

No software currently uses the ability of the chip to scan for free channels.

The package FM boost maximizes the transmitter power. In some cases, this may improve reception. In others, the transmitter will already be set to highest output.

There are several bugs open with regards the FM transmitter this one for example is regarding the policy to turn off the FM transmitter when the device is plugged into a computer using the USB cable.

The D-Bus interface is documented in this page

[edit] Typical Range

Low power transmitters that are license compliant - do not exceed the regulations - are inherently short range devices and will have poor performance in many desired use-cases simply due to the regulatory limit on power usage.

In the US - the limit is approximately 15 nW, in the UK, 50 nW.

The below OFCOM document lists ranges to a good receiver with a fully extended antenna as 4m for 15nW and 8m for 50nW. (to achieve 'noiseless' reception)

This document from OFCOM (UK licensing agency) outlines test results for 50nW devices) and this is a BBC response to the OFCOM proposal to legalise them in the UK. Quoting the second:

"The BBC appreciates the advantage in principle of authorising for licence-exempt use low-power Band II transmitters constructed strictly to a common European type-approval regime and ‘CE’ marked.
However, the chosen maximum ERP of 50 nW is neither sufficiently small to avoid creating interference to broadcast reception nor sufficiently large to guarantee that such ‘Micro’ FM transmitters will actually work as intended in areas where Band II is utilised intensively, such as London."