diff options
author | Javier S. Pedro <javier@javispedro.com> | 2012-02-13 20:43:21 +0100 |
---|---|---|
committer | Javier S. Pedro <javier@javispedro.com> | 2012-02-13 20:43:21 +0100 |
commit | 25fa8dc39b10e8710d5818e51534d59e728ac641 (patch) | |
tree | 6882cd0a59a5995a329a3ef6393eb610d9c91930 /signal.c | |
parent | 3fbc3f186f8f7817be2ecbdcc7117bd294bb7d88 (diff) | |
download | fmrxd-25fa8dc39b10e8710d5818e51534d59e728ac641.tar.gz fmrxd-25fa8dc39b10e8710d5818e51534d59e728ac641.zip |
add a workaround for non-v4l standard signal reporting
Diffstat (limited to 'signal.c')
-rw-r--r-- | signal.c | 10 |
1 files changed, 9 insertions, 1 deletions
@@ -27,7 +27,15 @@ static uint16_t last_signal_level = 0; static void signal_update() { - uint16_t new_signal_level = tuner_get_signal(); + uint16_t new_signal_level; +#if WORKAROUND_BAD_WL1273_SIGNAL + /* rssi is a value from -128 to +127. */ + new_signal_level = (tuner_get_signal() + 128) * 257; +#else + /* rssi is a value from 0 to 65535. */ + new_signal_level = tuner_get_signal(); +#endif + if (new_signal_level != last_signal_level) { server_notify_signal(new_signal_level); last_signal_level = new_signal_level; |