2.3 Recommended Modes for Data Communication
The evaluation of the results from Table 2-2 yields the following recommendations:
The Pulse Per Symbol/bit (PPS) coding of the payload data significantly affects the number of lost packets caused by the bit errors. This is also visible at the higher BER of ~6-7% for PPS=1.
Therefore, a PPS > 1 is recommended.
- For the preamble length of 176 symbols, all packets were lost and false packets were detected. This is because the RX device is switched into the RX mode about 400 ms before the TX device starts to transmit the data telegram. In this time interval, false data packets were detected out of the noise. For these modes, it is recommended to use a time-slotted transmission scheme, where the RX mode is activated 100 µs – 200 µs before the data telegram is sent. This will significantly reduce the number of false detected data packets.
- Telegram durations shorter than 1 ms allow a better TX power adjustment because the maximum average TX power is typically limited to -41.3 dBm/MHz by regulation and is measured as RMS power with a spectrum analyzer within a 1 ms time interval.
These settings and results are examples of the system modes and data telegram parameters and can be treated as guiding values for the design of a data transmission system. The maximum data payload length within one data telegram is 128 bytes for PPS=1 and 64 bytes for the other PPS values.
To perform secure data communication, evaluate the following topics for a system design:
- Using an address section in the data payload for addressing the RX device and identifying the data packet from the TX device.
- Using a sequence counter in the data payload to detect missing data packets.
- Using a resend counter to identify a data packet that was resent. The resend counter will also update the encrypted bit sequence and the MAC to make each data packet unique and prevent replay attacks.
- The data payload can be encrypted, for example, with the AES encryption and decryption scheme to achieve the required data protection. For more details, refer to The AES-CBC Cipher Algorithm and Its Use with IPsec (RFC3602).
- To correct bit errors in the data payload at the receiver device, consider an RS encoding Reed-Solomon Forward Error Correction (FEC) Schemes (RFC5510) or another FEC scheme Forward Error Correction (FEC) Framework(RFC6363). This uses some payload data bits for the FEC data and reduces the effective data rate.
- To ensure the authentication of the data telegram, add a MAC to the payload, which reduces the effective data rate further. For more details, refer to the HMAC: Keyed-Hashing for Message Authentication (RFC2104) .
The FEC with an RS code, for example, can be used for the complete data payload section or only the most relevant section. The length of the RS code (4 bytes in the example) depends on the requirements for the number of bits to be recovered. For fast processing in the application SW, it is an advantage to use the address data in a plain format that avoids any data processing before filtering the data packet. The counter values can also be part of the encryption payload, which gives a higher security level, as the encrypted bit sequence of the payload will be new for each data packet when resent. This is similar for the MAC generation when it covers the counter data.
Microchip offers a selection of dedicated devices to perform encryption and decryption at high speed. In addition, MCU devices will have integrated blocks for coding and encryption.