When all of the transmitters are quiet, the receiver is listening to static on AM 433 MHz (see earlier log post). To avoid interpreting static as valid serial data, LoFi requires a message to start with 10 high bits followed by the letter ‘L’.
Is there a more unlikely-to-randomly-occur value to start a message?
I told LoFi to report all starting bytes 'acceptably' received from dead air for an hour. It produced 4224 samples or about one every second. There were quiet periods and noisy periods. Here is the frequency histogram:
One byte per second is not bad, but it should be less often. Oh! There is a bug in the test program where it records additional bytes after the first.
Before I rerun the tests, let's take a closer look at the distinct values. The lack of bytes with the most-significant bit smells fishy. 0x55 (0b01010101) is the most popular value by far, either because:
- The receiver is oscillating (probably)
- Unrelated transmitters use that as a sync byte and LoFi is picking up that traffic (maybe)
- Or aliens are trying to contact Hack-A-Day readers (plausible)
Another possibility is electrical noise from nearby equipment. I disconnected LoFi from the Atmel STK500 programming board and sampled again for an hour.
This time, only 36 errant bytes appeared in an hour. Excellent! They all are 0x55, so 'L' (0x4C) is a perfectly fine start for each message. Excellent!
This leads me to two conclusions:
- Always check your test code
- Disconnect from potential sources of electrical noise, such as your programming board
Discussions
Become a Hackaday.io Member
Create an account to leave a comment. Already have an account? Log In.