*WARNING*
Actual code *DOES NOT PASS* tests 3 and above.
It only passes test 1 and 2
- In order to save memory during the test plan, the read durations are
saved in 'compact' form, using compact() to reduce their size and
uncompact() to get their 'original' value (not exactly 'original' as
some precision is lost on the way).
Durations (without compact) are typically uint16_t whereas in compact
form, it is uint8_t, saving 50% of space.
The precision loss (see comment written on top of compact()) is fine
with the code logic.
- Previous value was 4000 us (4000 microseconds). This was too short to
identify certain RCSwitch protocols (like protocol 7).
- Also a few minor updates in README and example code
- Debug lib could clash with other lib users, and has been renamed into
RF433Debug.
Same with Serial, renamed into RF433Serial.
- Some constants/classes used inside these libs, have also been renamed
to have RF433 prefix.
- The new function register_callback allows to call a function when a
given code is received. Allows to:
- Register as many callbacks as needed
- Optionally call wait_free_433() before calling callback
- Provide a minimum delay betwen two consecutive calls of the
callback, allowing to de-duplicate code reception (a very common
situation with RF 433 Mhz code reception).
- RF433any uses its own assert mechanism. I had made it available in
RF433any.h so that test.ino could use it, but it is not logical (an
RF433any user could face a conflict if using RF433any and their own,
or the default, assert).
Now assert is defined only in RF433any.cpp.
This of course requested test.ino to define its own assert, that was
done, too.