This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

Gazell and Pipe

Hi (I'm new at this, sorry for my question) About Gazell & Pipe (nRF24LE1) What is the utility of 6 or 8 pipe, whether only has 3 RX_FIFO for working simultaneous? Can you give me an example? (That is, if only 6 frames can carry simultaneously, I can only respond immediately to 3. I do not understand how I can take this advantage.) If TX packet will be removed from the TX FIFO when a new packet is received on the same pipe.. How can I know the number of the pipes remaining into the TX_FIFO? The only solution for this answer pass for my payload or there is other way. Thank you Matias

  • On nRF24LE1 the Gazell implementation only supports 6 pipes in receive mode. Only the nRF51 family has 8 receive pipes available for Gazell.

    On the nRF24LE1 there are one RX FIFO and one TX FIFO and both of them has three slots. So they can both hold up to three payloads at the same time. The pipes enables the receive to listen for incoming packets on 6 different addresses, but it will only receive one at the time. So it cannot listen and receive on more than one address/pipe at the time. It can also only send one TX packet at the time. So the nRF24LE1 only has one instance of a receiver and one transmitter. There's only one TX address available, so the transmitter will have to change it's TX address depending on the specific pipe/address it wants to send to.

    You might also be interested in having a look at the attached multiceiver example made for the nRF24LE1. It's only setup for 2 pipes initially, but it could easily be expanded to more pipes.enhanced_shockburst_multiceiver_ack-payload_example.zip

  • Thank you About the same question, I have a doubt, I need a recommendation: Imagine the following scenario: I have 6 PTX (Device) and 1 PRX(HOST), I have only 3 RX_FIFO and 3 TX_FIFO in the HOST, and 6 address possible(pipe).All ACK include specific Payload for each DEVICE. Always before, preloaded 3 specific payload in the TX_FIFO, each with its pipe or address. This for a fast answer. Whether received a frame from one DEVICE with pipe or address same the pipe or address into the TLM_FIFO, then auto-ACK send the correspoding payload, with corresponding pipe or address. But the question or recommendation is: What is the better procedure or recommendation about a good performace and good acknowledgement, if received a frame from one Device with pipe or address that is not into the TX_FIFO for auto-ACK? Is the recommended preload? thank you

  • You could handle this by for example having the host rotate through six frequencies and the different devices each using one of them. The the host can check to see who's next in line on the frequency plan and upload the corresponding TX_PAYLOAD to the FIFO before it enters the new frequency channel.

    If not, sending double packets would be a second option. Send first one and then the host would upload to the ACK_PAYLOAD to the TX FIFO and then the second ack will bring the payload to the device.

Related