Strange offset in float_to_bits.c

This is merely a historical archive of years 2008-2021, before the migration to mailman3.

A maintained and still updated list archive can be found at https://lists.osmocom.org/hyperkitty/list/tetra@lists.osmocom.org/.

Frank A. Stevenson frank at hvitehus.no
Sun Nov 11 11:05:28 UTC 2012


I made this change:

diff --git a/src/float_to_bits.c b/src/float_to_bits.c
index 08fad54..4547ffe 100644
--- a/src/float_to_bits.c
+++ b/src/float_to_bits.c
@@ -113,7 +113,7 @@ int main(int argc, char **argv)
                        exit(1);
                } else if (rc == 0)
                        break;
-               rc = process_sym_fl(0.3f, fl);
+               rc = process_sym_fl(0.0f, fl);
                sym_int2bits(rc, bits);
                //printf("%2d %1u %1u  %f\n", rc, bits[0], bits[1], fl);
                if (opt_verbose)


Which improved decoding rate on correctly tuned captures. I think this
0.3 offset is an oversight that will generally increase BER.

In other news, I have gotten my own GPU (openCL) assisted demodulator
working, I am thinking about decoding multiple carriers concurrently
with this code, but I think the gnu_radio demodulator has an edge with
regards to BER, especially if the offset is set to 0.0f :-)

Cheers,
Frank






More information about the tetra mailing list