1. Welcome to our site! Electro Tech is an online community (with over 170,000 members) who enjoy talking about and building electronic circuits, projects and gadgets. To participate you need to register. Registration is free. Click here to register now.
    Dismiss Notice

nRF24l01+ Problem in Receiving and Manual Ack

Discussion in 'Radio and Communications' started by NiranjanCD, May 30, 2017.

  1. NiranjanCD

    NiranjanCD New Member

    Joined:
    May 30, 2017
    Messages:
    2
    Likes:
    0
    Hi,
    I was new to the forum and i found most of the discussion for the nRF module is going in these forum.I am using the nRF24l01+ module with the TM4C123G microcontroller and configuration is done as per the given information in the datasheet of the both the sensor and controller. Tx and Rx is working fine when no ACK condition but heavy data loss is there upto 20% and another thing if i gave a manual ACK command (W_ACK_PAYLOAD) in the RX side to the TX it was also not working. So,can any help me to solve these issue and provide me some tips to reduce the payload loss.

    Regards
    Niranjan.C.D
     
  2. ericgibbs

    ericgibbs Well-Known Member Most Helpful Member

    Joined:
    Jan 4, 2007
    Messages:
    21,233
    Likes:
    645
    Location:
    Ex Yorks' Hants UK
    hi NCD,
    What is the distance between the Transmitter and Receiver, also is the TX to RX a clear line of sight.?
    Are you using the onboard printed circuit antenna.?
    Have you set the RF power level to max.?
    E

    Program Clip:
    'SPI(nRF24L01) registers(addresses)
    Const wr_config = 0x20 'Config register
    Const wr_en_aa = 0x21 'Enable Auto Acknowledgment
    Const wr_en_rxaddr = 0x22 'Enabled RX addresses
    Const wr_setup_aw = 0x23 'Setup address width
    Const wr_setup_retr = 0x24 'Setup Auto. Retrans
    Const wr_rf_ch = 0x25 'RF channel
    Const wr_rf_setup = 0x26 'RF setup,pwr
     
    Last edited: May 30, 2017
  3. NiranjanCD

    NiranjanCD New Member

    Joined:
    May 30, 2017
    Messages:
    2
    Likes:
    0
    Hi eric,
    The distance between the Tx and Rx is less than the 1 meter in that itself i am lossing the packet.It was clear sight in same table i am having the Tx and Rx module.Yes, i am using the onboard printed antenna module.My RF power is in 0 db. My configuration for the nRF24L01 are below
    TX-Config
    Config-Reg = 0x0C
    EnAA-Reg = 0x3F
    EnRxADDR = 0x01
    SetUp AW = 0x03
    SetUp RETR = 0x1F
    RFCH = 0x65;
    RF SetUp = 0x26;
    Feature Reg = 0x00
    RX-Config
    Config-Reg = 0x0F
    EnAA-Reg = 0x3F
    EnRxADDR = 0x01
    SetUp AW = 0x03
    SetUp RETR = 0x1F
    RFCH = 0x65;
    RF SetUp = 0x26;
    Feature Reg = 0x00

    the above mention are the configuration value for the specific Registers.In my case i was working with the auto ACK condition.I tried for the manual ACK by using the command (W_ACK_PAYLOAD) but it not working properly and checked the status register during the that time the value not changing,so i confirm that ACK is not received.

    Regrads
    Niranjan C D
     
  4. dave

    Dave New Member

    Joined:
    Jan 12, 1997
    Messages:
    -
    Likes:
    0


     
  5. ericgibbs

    ericgibbs Well-Known Member Most Helpful Member

    Joined:
    Jan 4, 2007
    Messages:
    21,233
    Likes:
    645
    Location:
    Ex Yorks' Hants UK

    hi,
    I also had problems with the data integrity over short distances, I tried a number of changes in order to improve the data TX,RX.
    Any other electronic equipment working nearby to the RX can cause data corruption.
    If your data integrity is so bad, it is possible that the attempted ACK TX/RX back and forth, will never succeed.

    Finally I gave up and converted my project to the HC12 TXR module, this works well thru walls, the TX is located in the garden shed about 20 mtrs away.
    The HC12 is claimed to work upto a 1000 mtr range.

    In case you do not have a copy, I have attached a NRF tutorial PDF, which may help.

    Eric
     

    Attached Files:

Share This Page