I have set up some code using the ESB example in SDK v12.2.0 I and am able to transmit and receive packets between two nrf51 dongles, with no issues. However, when I program a custom PCB that has a nrf51 with the same exact same code, it is not able to receive or transmit any ESB messages when interfacing with a nrf51 dongle.
There are some HW differences, the custom PCB nrf51 has a voltage supply of 1.8 V, while the dongle is 3.3V. Also the custom PCB nrf51 has a high speed oscillator running at 32MHz while the dongle high speed oscillator is at 16MHz.
My suspicion is that they are not able to interface because of the difference between the oscillator speeds and something needs to change in the SW to account for it which I am investigating. Was wondering if anyone could confirm this and/or have any suggestions to account for it. Also if there is anything else you think I should look at to get the custom PCB and dongle to interface let me know. Thanks!
// Set the external high frequency clock source to 32 MHz
NRF_CLOCK->XTALFREQ = 0xFFFFFF00;
Had to set the nrf51 to use the 32 MHz crystal, now working with no issues.