You are reading a single comment by @conor and its replies. Click here to read the full conversation.
  • I've been struggling with exactly the same setup and libraries. I've ended up dumping out the register contents of the NRF24L01+ from both the Espruino side and the Arduino side and tried to line them up. There were some basic differences like bit rate and channel which I've sorted out but still almost no joy. I've managed to go from silence to maybe one transmit in 30 or 40 being received by the Arduino if the Espruino is sender and similar success rate if I swap them around.

    The RF24 Arduino code works perfectly on a mix of Pro Minis, Unos and DigiX but just getting no joy on Espruino. The only thing I can think of at the moment, in lieu of an oscilloscope, is to get a second Espruino and see if they can at least see each other.

    Register Dump from Arduino:
    STATUS = 0x0e RX_DR=0 TX_DS=0 MAX_RT=0 RX_P_NO=7 TX_FULL=0
    RX_ADDR_P0-1 = 0xfefefefefe 0x2222222222
    RX_ADDR_P2-5 = 0x02 0x03 0x04 0x05
    TX_ADDR = 0xfefefefefe
    RX_PW_P0-6 = 0x20 0x20 0x20 0x20 0x20 0x20
    EN_AA = 0x3f
    EN_RXADDR = 0x3f
    RF_CH = 0x02
    RF_SETUP = 0x0f
    CONFIG = 0x0b
    DYNPD/FEATURE = 0x00 0x00
    Data Rate = 2MBPS
    Model = nRF24L01+
    CRC Length = 8 bits
    PA Power = PA_MAX

    Register Dump from Espruino:
    STATUS = 0xE
    RX_DR = 0x0
    TX_DS = 0x0
    MAX_RT = 0x0
    RX_P_NO = 0x7
    TX_FULL = 0x0
    RX_ADDR_P0 = 0,0,0,0,1
    RX_ADDR_P1 = 0,0,0,0,2
    RX_ADDR_P2 = 195,195,195,195,195
    RX_ADDR_P3 = 196,196,196,196,196
    RX_ADDR_P4 = 197,197,197,197,197
    RX_ADDR_P5 = 198,198,198,198,198
    TX_ADDR = 0,0,0,0,1
    RX_PW_P0 = 0x10
    RX_PW_P1 = 0x10
    RX_PW_P2 = 0x0
    RX_PW_P3 = 0x0
    RX_PW_P4 = 0x0
    RX_PW_P5 = 0x0
    RX_PW_P6 = 0xB
    EN_AA = 0x3F
    EN_RXADDR = 0x3
    RF_CH = 0x2
    RF_SETUP = 0xF
    CONFIG = 0xB
    DYNPD = 0x0
    FEATURE = 0x0
    Data Rate = 2MBPS
    CRC Length = 8
    PA Power = MAX

About

Avatar for conor @conor started