You could try increasing to “2” the address length. Somebody on this forum adviced to use as more as possible, though in my mind it was a waste. If your environment is crowded with RF (2.4GHZ i.e.) then it could make sense.
5% is not surprising. In the 2.4GHz band, you need to employ CSMA/CA - listen before transmitting, to lessen the chance of collisions since many or most radios are half-duplex, including WiFi.
802.11 WiFi does so, using CSMA/CA (google it).
Cordless phones in 2.4GHz are either spread spectrum fixed freq. or freq. hopping.
There are many other RF sources in 2.4GHz. It’s a nasty band!
Use of error detection and correction is of course necessary. WiFi uses an ACK per frame and a timeout implying NAK.
If you want, you can use forward error correction (FEC) techniques, but this doubles the number of bits transmitted.
Another thing to consider at 2.4GHz is automatic frequency agility. Arrange for the nodes to agree on how to scan to find the channel du jour, since tomorrow your preferred freq. could be jammed by someone with a legal constant or near-constant signal, such as streaming video on WiFi or an analog video camera link.
Thanx for the replies . I tried increasing the number of address bytes to 5 on both the Tx and Rx in the config and also clocked in the additional bytes during Tx. But recieved no data. I even tried with 2 address bytes but recieved no data.
Below is the sequence for the 2 byte addr cfg
0x8e, 0x08, 0x1C, //default
0x00, 0x60, 0x00,
0x00, 0x00, 0x00,
0x00, 0x00, 0x00,
0x00, 0x78, 0x78, //address channel 1
0x43, 0x6F, 0x81
The below cfg with 1 addr works fine thou with lotsa lost packets