Electronics > Projects, Designs, and Technical Stuff

RF data transfer questions.

<< < (3/5) > >>

DDunfield:

--- Quote from: schratterulrich on June 19, 2019, 07:58:17 am ---A trap can be that the receiver always receives data (noise) even if the transmitter is not transmitting at the moment. This means if we use a baudrate of 9600 than the 4 checksum bytes are received 300 times per second. With 32 Bits checksum the possibility is 1/4.294.967.296 that the checksum is coincidentally correct. This means further this happens once every 165 days. Maybe you should better use even more checksum bytes…

--- End quote ---

It's not as bad as that, because you would only be testing checksums at that rate if you were receiving nothing but checksums (checksums of what?)

You should always have a Start-of-message sequence, especially on a radio link. A single byte isn't great when there's idle noise, 4 bytes isn't bad (and easy to test with a 32 bit shift register). Then you would have a length (unless fixed length messages), and at least one data byte (unless you make zero-length messages mean something). This  means:
  165 days to see a false SOM
  and a length that just happens to lead to a CRC which is exactly right.
  So counting a data byte (6 bytes min), the maximum effective sample rate is 200times/sec
  5 bytes have to match up, which leads to 63629 days, times the original 165 day trigger
  or approximately 29k years. 1/2 of that for a mean time.

Dependency of above on length==1 makes the math a bit loosey-goosey, but all other variations are lower effective sample rate so longer time.

This is also assuming your idle noise is pure unbiased random noise. If you know the characteristics of the receiver you can choose you encoding, SOM sequence and CRC algorithm/encoding to lower the probability of false hits.

And there's always chance (albeit very low) that the false transmission hit could occur in the first 5 mins. Robust comms protocols are fairly easy... 100% bulletproof ones not so much.

Dave


schratterulrich:

--- Quote from: DDunfield on June 19, 2019, 01:14:40 pm ---
--- Quote from: schratterulrich on June 19, 2019, 07:58:17 am ---A trap can be that the receiver always receives data (noise) even if the transmitter is not transmitting at the moment. This means if we use a baudrate of 9600 than the 4 checksum bytes are received 300 times per second. With 32 Bits checksum the possibility is 1/4.294.967.296 that the checksum is coincidentally correct. This means further this happens once every 165 days. Maybe you should better use even more checksum bytes…

--- End quote ---

It's not as bad as that, because you would only be testing checksums at that rate if you were receiving nothing but checksums (checksums of what?)

You should always have a Start-of-message sequence, especially on a radio link. A single byte isn't great when there's idle noise, 4 bytes isn't bad (and easy to test with a 32 bit shift register). Then you would have a length (unless fixed length messages), and at least one data byte (unless you make zero-length messages mean something).


--- End quote ---

I totally agree.

vk6zgo:
You could have a squelch on your receiver--- no signal received, no output.

DDunfield:

--- Quote from: vk6zgo on June 19, 2019, 01:54:34 pm ---You could have a squelch on your receiver--- no signal received, no output.

--- End quote ---

Often not as practical as you might think. It can work if you know you will have a strong signal and the background in-band noise floor is quite low, but usually low power radio links (and most anything using open low power bands) have significant background noise from distant on-channel transmitters, squelch "chatter" can be more of a problem than the original problem. For data links (where you don't have to hear it in the shack all day :-) a robust communication protocol is usually the best solution.

Dave (VE3DRD)

Dubbie:
Thanks for all the thoughts guys. I can’t seem to find a combo radio+mcu for less than around $4
That silabs part seems like the winner so far. It is cheap, needs few passives and is really simple.

Navigation

[0] Message Index

[#] Next page

[*] Previous page

There was an error while thanking
Thanking...
Go to full version
Powered by SMFPacks Advanced Attachments Uploader Mod