Strong preamble detection even with --aggressive.

To try to decode messages with a fundamentally flawed preamble is mostly
a useless waste of CPU time.

The new aggressive mode still detects a sensible percentage of
additional messages because of the error tolerance and two-bits fixes
but does not waste your CPU time.
This commit is contained in:
antirez 2013-01-26 13:03:24 +01:00
parent 184953ff92
commit 977493cf63
2 changed files with 29 additions and 32 deletions

View file

@ -195,7 +195,6 @@ sending DF17 packets), but can detect a few more messages.
The algorithm in aggressive mode is modified in the following ways:
* Preamble detection is weakened to be more liberal in what is consdered valid.
* Up to two demodulation errors are tolerated (adjacent entires in the magnitude
vector with the same eight). Normally only messages without errors are
checked.

View file

@ -1361,7 +1361,6 @@ void detectModeS(uint16_t *m, uint32_t mlen) {
continue;
}
if (!Modes.aggressive) {
/* The samples between the two spikes must be < than the average
* of the high spikes level. We don't test bits too near to
* the high levels as signals can be out of phase so part of the
@ -1393,7 +1392,6 @@ void detectModeS(uint16_t *m, uint32_t mlen) {
msg, m, j);
continue;
}
}
Modes.stat_valid_preamble++;
good_preamble: