Hello! Sorry for my English)
My situation is next: I have a custom PCB with nRF51822 on it. And radio control application works fine on this PCB. I don't know which of radio protocols this PCB uses because I don't have source codes for it. But my task is to run the Bluetooth application on this PCB. I am using SDK v8.1.0, S110 (including in SDK) and "ble_app_uart" example. I have the nRF51822-QFACA1 (revision 3) MCU and I have only 16 MHz crystal on my PCB. So I have made next changes in "ble_app_example":
-
I added the next code to main() function to start the HFCLK from external crystal:
NRF_CLOCK->EVENTS_HFCLKSTARTED = 0; NRF_CLOCK->TASKS_HFCLKSTART = 1; while (NRF_CLOCK->EVENTS_HFCLKSTARTED == 0) { // Do nothing while waiting for the clock to start }
-
I changed ble_stack_init() function to start the synthesized LFCLK:
SOFTDEVICE_HANDLER_INIT(NRF_CLOCK_LFCLKSRC_SYNTH_250_PPM, NULL);
So application runs fine in debugger (step by step, no errors) but I can't find nRF UART by Bluetooth (on Tablet with "nRF UART v2.0" tool and on Notebook with Toshiba Bluetooth Stack). I don't have the specific radio equipment to check if my PCB works in the correct frequency range. I attached a photo of my PCB. Maybe the problem is in antenna?
Is any difference between Bluetooth and other Radio protocols in the schematic and component nominals? I checked schematic, it is same as in Product Specification pdf. I also checked all voltages by multimeter:
- VDD = AVDD = 3.24 V
- DEC1 = 1.2 V
- DEC2 = 0 V
- VVD_PA = 0 V
Can you give me some advices what should I even check?
Or should I change the PCB layout of the antenna for Bluetooth?
Or should I change some SoftDevice options or else?
Help me please)
PS. In another board with ISP130301 module on it (nRF51822 + Antenna) ble_app_uart example with my changes works fine. In debugger it looks the same as in my PCB)