• Status Unconfirmed
  • Percent Complete
  • Task Type Bugs
  • Category FM Tuner
  • Assigned To No-one
  • Operating System Sansa AMSv2
  • Severity Low
  • Priority Very Low
  • Reported Version Release 3.8.1
  • Due in Version Undecided
  • Due Date Undecided
  • Votes
  • Private
Attached to Project: Rockbox
Opened by tuojal - 2011-04-07

FS#12050 - Ticking noise in the radio screen

While in the fm radio screen, a ticking noise can be heard in the background. When pressing the power button in the radio screen the noise disappears.

Is this the same bug as FS#11915 ?

It could be, although the symptoms aren’t exactly the same.

Tried again the radio, no noise. After that I tried it one more time and the noise was there again with the same behavior as before.

I think this is I2C traffic with the radio tuner chip. The tuner chip is polled to get stereo status and received signal strength indication. This communication is only done in the radio screen itself, so you won’t hear it with the radio enabled in the main menu. For me this happens mostly with weak radio stations.

That would rather be “medium-strength stations” for me. The noise disappears once RSSI indication goes above 40 dBµV.

I was playing with RDA5802 registers lately, and could get the ticking to disappear by switching input from LNAP to LNAN in register 0×5 (SYSCONFIG3, bits 7:6, LNA_PORT_SEL[1:0]). However, signal levels also dropped by some 10 dB at least (I guess it’s connected to ground or somesuch), so that’s not really an option either. (The Clip+, like its predecessor, is not exactly a DX machine to begin with.)

I guess the OF just leaves the tuner alone?

It looks like the OF leaves the tuner alone, at least it’s not showing anything like a stereo indicator or a received-signal-strength indicator on the display.

I’m not sure if this problem can really be solved for rockbox. Polling the radio is how rockbox determines the mono/stereo status and the RSSI (received signal strength indication).

Possibilities as I see
Perhaps there is something wrong with our i2c communication. I think our implementation uses the SDA line in push-pull mode, which could result in short current pulse when changing direction on the SDA line during I2C
Perhaps there is nothing we can do and the RDA5802 is just really sensitive to I2C communication. In that case, we could consider lowering the poll frequency (maybe once every 10 seconds or 60 seconds, or even only poll once just after tuning).

BTW, there are other “funny” things happening with this radio. For example, it always finds a silent station at 96.00 MHz, I guess this is the 4th harmonic of the 24 MHz crystal frequency used in the AMSv2.

The I2C handling should be much the same between Si4702 and RDA5802, shouldn’t it? My old ClipV2 with the former chip does not have any such issues (and besides, gets a lot closer to correct deemphasis).

Do we have a way of querying whether the display is on? I do see a RSSI indication that’s updated at least once a second as being quite useful, but of course it’s not necessary to poll it if it’s not visible anyway.

Looking at the pin layout, if anything the RDA part should be better at control-to-input xtalk. I’d be inclined to blame it on PCB routing. Since the Clip+ seems somewhat cost-reduced, I wouldn’t be totally surprised if they’d even gone from 4-layer to 2-layer board.

I think you nailed the cause for the 96.0 MHz interference. Things like that are very hard to get rid of in small, cramped, inexpensive devices.

Stopping the poll when the display is off indeed seems like a reasonable work-around.

Hi, I have an iAudio X5 and its radio exhibits exactly the same problem as decribed here. The ticking noise at the background is very annoying, at roughly four ticks/second. And for most radio station here (all signal strength is (between 25 to 40dBV) the receiption keeps toogling between stereo and mono continously.

True to the description by by Bertrik Sikken (bertrik), if the display is out of the main radio screen, the noise would be gone (eg, go to the Preset List.)
I found that if I forced the receiption to mono, the noise would be lower at the main radio screen. So I go into radio_skin.c and remark out
/* "%?St(force fm mono)<%Sx(Force Mono)|%?ts<%Sx(Stereo)|%Sx(Mono)»\n" */ (it updates the stereo/mono statue on the radio screen)
The ticking noise is still here but it is weaker and going out of the main radio screen still completely kill it.

BTW, even if I move close to the window to get stronger receiption (above 50dBV), the ticking is still here and equally annoying.

MikeS commented on 2011-06-09 15:51

Making better use of any available indicator interrupts over polling for changes might help things. Won't help all devices of course.

MikeS commented on 2011-06-17 02:56

Working on something else, I I just noticed at I'm getting a nasty tick that didn't used to be there on x5 too. Basically, it sounds like duplication Kam-Fai's report above.

I think the problem is two-fold.
1. polling the I2C of the tuner cause a ticking noise.
2. polling the stereo/mono status of the tuner also causes it to toogling between stereo/mono status for low/medium signal strengths every couples of seconds. And it also increases the ticking noise (verifiable by setting "force mono").
Unless it can be proved that you can communicate with the tuner without invoking noise, it seems to me the only way is to just set the tuner status once and be done with it, without polling its status regularly ( just like the OF).

I sometimes get this on my Gigabeat S as well.

flaps commented on 2011-11-14 20:31

i'm not sure i really understand the problem, but does this still happen when the backlight is off? it could stop checking when the display is off

SynrG commented on 2011-12-22 12:23

Yes, it happens when the backlight is off. Confirmed with 3.10 on Sansa Clip+.

After all the time, it seems to me that the cause of the ticking noise during FM is the updating of the LCD screen. Only when the LCD is not updating then it is noise-free (eg, go to the Preset List.) And unfortunately Rockbox seems to try updating the LCD even when backlight is off (if I am not mistaken).


Available keyboard shortcuts


Task Details

Task Editing