FS#11559 - iPod Radio Remote - (FM Radio and Button issues)

Attached to Project: Rockbox
Opened by Trevor (thals1992) - Friday, 20 August 2010, 19:21 GMT
Last edited by Bertrik Sikken (bertrik) - Sunday, 24 October 2010, 09:25 GMT
Task Type Bugs
Category FM Tuner
Status Closed
Assigned To No-one
Operating System iPod Nano
Severity Low
Priority Normal
Reported Version Release 3.6
Due in Version Future release
Due Date Undecided
Percent Complete 100%
Votes 0
Private No


I have a new issue that should be added. When I go into the FM Tuner and choose a station, it is inaudible over the headphone socket in the iPod itself, but when I plug it in the Radio it is noisy (noise comes over headphones - not powered speakers) and extra noise cames in when keys are pressed on the Radio itself, when the screen scrolls the RDS data, and when the iPod wheel is touched. The audio itself is extremely faint. I bumped the volume to db 0 and even 6 and then the music over the radio can be heard. It is just fine when listened to, after recording and amplified (using the gain setting) 20 dband the vu meter underneath looks like it is receiving sound at a decent volume.

Is there any way to add gain like in the original firmware for the first gen iPod Nano so I can listen to the radio with out recording the Radio songs to mp3.

NOTE: Apparently the iPod Radio works on the first five nanos and the first gen video as well.

Has is been enabled for the iPod Video yet? In daily, recent, or release builds?
This task depends upon

Closed by  Bertrik Sikken (bertrik)
Sunday, 24 October 2010, 09:25 GMT
Reason for closing:  Fixed
Additional comments about closing:  Committed as SVN r28341
Comment by Trevor (thals1992) - Saturday, 11 September 2010, 19:26 GMT
Updated to build r28058 and problems still exist. Can anyone else confirm?
Comment by Thomas Martitz (kugel.) - Saturday, 11 September 2010, 20:49 GMT
Can you try boost forcing (system->debug menu->cpu frequency, then using the wheel until it shows "boost count: 2" or so, then going back and have another try)?
Comment by Trevor (thals1992) - Saturday, 11 September 2010, 20:52 GMT
It didn't seem to make a difference in the past, but I'll try it again.
Comment by Trevor (thals1992) - Saturday, 11 September 2010, 20:59 GMT
All that occurs is that the noise in the background changed. Nothing significant.
Comment by Bertrik Sikken (bertrik) - Monday, 13 September 2010, 14:07 GMT
The ipod nano 1g uses a WM8975 codec. I just saw that the audiohw_set_monitor function is not implemented for this codec. I don't know if this is intentional or not.

AFAIK, the audiohw_set_monitor function is normally used to bypass the analog fm radio audio signal from input to output (e.g. see firmware/target/arm/audio-pp.c) . Not having an implementation for this function could very well explain that you're not hearing something on the headphone socket of the ipod itself.
I don't know why you're not hearing anything on the headphone socket of the radio itself, this could be some problem in the data we send to configure the radio (in firmware/drivers/tuner/ipod_remote_tuner.c).
Comment by Bertrik Sikken (bertrik) - Tuesday, 14 September 2010, 20:52 GMT
Can you try a build with this patch applied?
This should enable the analog audio signal from input to the output, even when not recording. I can't test it myself, because I don't have the FM remote nor an ipod nano 1g.
Comment by Trevor (thals1992) - Wednesday, 15 September 2010, 02:55 GMT
once i figure out how to compile (give me a few days) i get back to ya.

Thanks for the help.
Comment by Marcin Bukat (MarcinBukat) - Wednesday, 15 September 2010, 13:08 GMT
I think the patch is insufficient - I think the default volume is set to -9dB in analog mixer for line input so the signal will still be very low.
Comment by Trevor (thals1992) - Wednesday, 20 October 2010, 00:13 GMT
I can hear it over the headphones now in the Ipod Nano end, but it is still faint
Comment by Bertrik Sikken (bertrik) - Wednesday, 20 October 2010, 06:45 GMT
Great! I'll try to make a more proper patch that also explicitly sets the volume to a higher level.
Comment by Bertrik Sikken (bertrik) - Wednesday, 20 October 2010, 20:11 GMT
Try this patch, it sets the line input volume to 0 (was probably -9 dB in the previous patch). If this is not loud enough, we can boost it another 6 dB. If that's still not loud enough we can enable another gain block.

EDIT: updated patch, there was a bug in setting the right channel input multiplexer.
Comment by Trevor (thals1992) - Sunday, 24 October 2010, 02:26 GMT
This patch did the job! Thanks!