Rockbox

Tasklist

FS#8764 - Auto mute weak stations

Attached to Project: Rockbox
Opened by Joel Garske (gibbon_) - Thursday, 20 March 2008, 08:41 GMT
Task Type Patches
Category FM Tuner
Status Unconfirmed
Assigned To No-one
Operating System Another
Severity Low
Priority Normal
Reported Version Daily build (which?)
Due in Version Undecided
Due Date Undecided
Percent Complete 0%
Votes 0
Private No

Details

Hi there,

first of all: this is my first contribution to rockbox and I tried my best to make myself familiar with the way things work there. I am sure, not everything is where it belongs. Please help me to get things in order :).

second: thanks to the author of Patch  FS#1803  that made this possible.

The purpose of this patch is to watch the tuner reported field strength (estimate) and mute, when it drops below a customizable threshold. Wether muting or not as well as the threshold are customizable in the fm tuner menu. It should not interfere with manual muting and should not affect recording (i didn't test that yet). THe threshold is specified in pseudo-dBuV.
It also adjusts frequency display to display as MMM.KKK instead of MMM.KK. This is for people who adjust region settings and channel widths.

My testing conditions were limited to the sansa c250.  FS#1803  reports to work on the tuner chips LV24020LP (e.g. sansa c250) and TEA5767. I only tested the first. Please report back possible field strength values you see on devices using these chips.

This code should not break anything. I did a testbuild for some iPods (without tuner) that compiled cleanly. Simulator also works.

Currently only english and german translation are done.

User guide:
This patch conditionally adds 1 or 2 lines to the tuner main window that look like this:

Sig: [-M] -235dBuV
Automute below -555dBuV

The second line is only displayed if automute is enabled. The first line shows the status of the tuner. The 2 characters in the braces exlain as [ab]:
a: either 'O' or '-'
'O': current field strength is above threshold
'-': current field strength is equal to or below threshold
b: either 'M' or '-'
'M': will mute on or below threshold
'-': automute disabled.
(both are only updated on field strength change)
The second line should be selfexplaining, same for the menu entries.

Request for comments!
This task depends upon

Comment by Joel Garske (gibbon_) - Thursday, 20 March 2008, 08:44 GMT
Forgot to mention:
this is tested up to r16718. This is the current revision at the time of writing.
Comment by Joel Garske (gibbon_) - Thursday, 20 March 2008, 08:45 GMT
And again... the actual field strength patch is  FS#8151 . This is built into this patch with minor modifications and NOT needed for this to work!
Comment by Joel Garske (gibbon_) - Thursday, 20 March 2008, 09:06 GMT
LinusN suggested on IRC to localize the "Sig:" and "M" part... "Sig:" is low localizable using LANG_FM_AUTO_MUTE_SIGNAL, the 'M' for muting enabled is changed to a '#' which i found to be a good symbol to show when "blocking" something. Thanks so far
Comment by Przemysław Hołubowski (p.h.) - Thursday, 20 March 2008, 10:26 GMT
Please note that TEA5767 doesn't update it signal meter every time it is read. It is updated when frequency is changed or you mute off.
Comment by Joel Garske (gibbon_) - Thursday, 20 March 2008, 10:54 GMT
thank you... that suggests that this patch is of NO use for TEA5767 users?
if so, i will just wrap everything into a define for the LV24020LP...
Comment by Przemysław Hołubowski (p.h.) - Thursday, 20 March 2008, 11:29 GMT
To make it work as you would like to on targets using TEA5767 you would have to rewrite TEA5767 PLL register before reading signal meter value, so it would mean rewriting PLL for example once every second. This way you could force TEA5767 to update it's signal meter value, but that isn't a pretty solution.
Comment by Joel Garske (gibbon_) - Thursday, 20 March 2008, 12:13 GMT
no.. i would try that if i had a device that uses that chip. for now anyone is free to give it a try :/

attached is a version that should disable all muting stuff on non LV24020LP tuners.

Loading...