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

disable ACK

Hi,

Happy Monday! We have multiple PTXs and multiple PRXs in a setting, all operating on a single channel. Is there a way to allow a PRX to receive but disable it from sending an ACK even if the received packet has NO_ACK = 0 (i.e. it wants an ack)? This way, we can dynamically select which PRX responds to which PTX.

Thanks!

Mahesh

Parents
  • Hi Mahesh,

     

    Sorry, it should be PCF.

    PCF stands for packet control field, and that is the 9 bits that contain information such as "noack" (and 6 bit length, and 2 bit counter) in the RF-payload. This field is added automatically by the radio hardware when in ESB mode.

     

    For this to work on your PRX, you will need to mimic ESB in software, by disabling ARD and ARC, and if your PTX devices can send on the same RF address at some point; you must implement a "software-ESB" on the PTX devices as well.

     

    This is because you can silently implement a "software-ESB" on a PRX device, but a PTX device will still go into RX to await an ACK message for a given period after sending a payload.

    If PTX #2 sends on the same address as PTX#1 is listening for an ACK, you will get a collision on your network.

     

    Why not let the PTX device send with the "noack" feature of ESB instead of trying to disable auto-acking temporarily?

     

    Best regards,

    Håkon

Reply
  • Hi Mahesh,

     

    Sorry, it should be PCF.

    PCF stands for packet control field, and that is the 9 bits that contain information such as "noack" (and 6 bit length, and 2 bit counter) in the RF-payload. This field is added automatically by the radio hardware when in ESB mode.

     

    For this to work on your PRX, you will need to mimic ESB in software, by disabling ARD and ARC, and if your PTX devices can send on the same RF address at some point; you must implement a "software-ESB" on the PTX devices as well.

     

    This is because you can silently implement a "software-ESB" on a PRX device, but a PTX device will still go into RX to await an ACK message for a given period after sending a payload.

    If PTX #2 sends on the same address as PTX#1 is listening for an ACK, you will get a collision on your network.

     

    Why not let the PTX device send with the "noack" feature of ESB instead of trying to disable auto-acking temporarily?

     

    Best regards,

    Håkon

Children
No Data
Related