How long is the maximum 32 byte send, in the air for?
How long is the maximum 32 byte send, in the air for?
The packet consists of preamble (8 bits) , address (2 to 5 bytes), PID (9 bits), payload (up to 32 bytes) and CRC (8 ib 16 bits). All all this together and you end up with max 329 bits.
A 2 Mbps, one bit is 0.5 µs. So 164.5 µs then,
Is 164us time for air? İf it is like that There is 130us PLL lock and if we add it with 130us, total time we are not able to send data is 294us right?
Is 164us time for air? İf it is like that There is 130us PLL lock and if we add it with 130us, total time we are not able to send data is 294us right?
164.5 µs time on air, plus the 130 µs PLL lock time. So from the time you start the TX, it takes 165.4 + 130 = 295.5 µs
I can not send anything during this time right? İf I can not , and my SPI works in 10MHZ(max freq which NRF24L01 support). 32byte data will be sent total minimum time= 295.5us + sending data time to NRF via SPI
Sending data time to NRF via SPI :
( 1/10MHZ )*8 = 1BYTE sending time
650ns = free time between two byte
1BYTE sending time*32 + free time between two byte*32 = 25.6 + 20.8 = 46,4
So minimum time possible to send 32byte data with NRF24L01 is 341,9us (295,5+46,4) technically.
Hi
There is also a command byte sent before the payload, so the total number of bytes should be 33.
But like I mentioned in another case it should be possible to do rampup and SPI communication in parallel, if you set CE high at the same time you start writing the payload. In this case you need to keep CE high until after you have sent the payload.
Not only that, but there is a trick where you can keep CE high for a longer time, and upload packets continuously. In this mode you are able to send packets back to back with minimal delay between them, as long as ACK (EN_AA) is disabled.
The only limitation is that you have to disable the radio every 4ms, otherwise the RF carrier can drift out of spec.
Best regards
Torbjørn