Unable to Get BLE Advertising or GPIO Blink on Custom ISC-nRF52832-A PCB

I’m developing on a custom PCB that carries the ISC-nRF52832-A (nRF52832) and a BMA400 sensor. I can successfully flash the chip over SWD using an ST-Link v2 (connected to VCC, SWDIO, SWCLK, GND) but I cannot get any basic functionality to work—neither BLE advertising nor even a simple LED blink on a GPIO. Below are the details of what I’ve tried and the observed behavior:

Board & Toolchain

  • Custom PCB with ISC-nRF52832-A

  • SWD header pins: VCC (3.3 V), SWDIO, SWCLK, GND
  • ST-Link v2 as uploader/debugger (configured to 3.3 V target)

            Platform: Windows 10, Arduino IDE & PlatformIO (NordicnRF52 platform 10.9.0, Arduino core for Adafruit nRF52)



Verify Log:

Sketch uses 2100 bytes (0%) of program storage space. Maximum is 409600 bytes.
Open On-Chip Debugger 0.10.0-dev-00254-g696fc0a (2016-04-10)
debug_level: 0
0x4000
adapter speed: 10000 kHz
target halted due to debug-request
** Programming Started **
wrote 4096 bytes from file …/nrfBluetooth.ino.hex in 0.156s (25.6 KiB/s)
** Programming Finished **
** Verify Started **
verified 2220 bytes in 0.047s (46.2 KiB/s)
** Verified OK **
** Resetting Target **
shutdown command invoked


Flash and verify always succeed, but no visible behavior on the board.

Looking forward to your guidance.

Parents
  • Hello Chinmay,
    With custom boards behaving this way there's a couple of things I'd start by checking.
    Q1: Do you have an external 32k crystal on your board? If not, have you defined to not use LFXO, but LFRC instead?
    Q2: Do you have the components for the DCDC  on you board? If not, have you made sure you're not configuring to use it?
    Q3: Are you able to run code in debug mode or with RTT enabled, is the program counter moving and are you seeing any print on the uart/RTT?
    Best regards
    Asbjørn
  • Hello Asbjørn,

    Board & wiring


    • ISC-nRF52832-A module (pins 1–4 exposed):

      • Pin 1 → VCC (3.3 V)

      • Pin 2 → SWDIO

      • Pin 3 → SWCLK

      • Pin 4 → GND

    • BMA400 sensor on I²C (SDA → P0.20, SCL → P0.19)

    • Programmer: ST-Link v2, 3.3 V target, wired only to those four SWD pins

    I’m building & flashing from the Arduino IDE using the SandeepMistry nRF5 (BLEPeripheral) library.

    Q1) 32 kHz crystal?

    • No, I did not populate an external 32 kHz crystal or load capacitors on my PCB.

    • In my Arduino sketch I haven’t overridden the clock source, so by default the SoftDevice is trying to use LFXO.

    Q2) DCDC converter?

    • The ISC-nRF52832-A module does not include the external DCDC components.

    • I have not enabled DCDC in software, so it should be using the internal LDO regulator.

    Q3) Debug / RTT

    • Attaching ST-Link in debug mode halts the CPU at the reset vector (0x00001DA0) and it never advances into setup() or loop().

    • I don’t have a UART or RTT on my board, so I cannot see any console output.

    I was under the impression that the ISC-nRF52832-A has an in-built 32 kHz crystal—could you please guide me on whether this is a hardware issue (missing crystal) or a software/configuration issue?

    Thanks again for your help!

Reply
  • Hello Asbjørn,

    Board & wiring


    • ISC-nRF52832-A module (pins 1–4 exposed):

      • Pin 1 → VCC (3.3 V)

      • Pin 2 → SWDIO

      • Pin 3 → SWCLK

      • Pin 4 → GND

    • BMA400 sensor on I²C (SDA → P0.20, SCL → P0.19)

    • Programmer: ST-Link v2, 3.3 V target, wired only to those four SWD pins

    I’m building & flashing from the Arduino IDE using the SandeepMistry nRF5 (BLEPeripheral) library.

    Q1) 32 kHz crystal?

    • No, I did not populate an external 32 kHz crystal or load capacitors on my PCB.

    • In my Arduino sketch I haven’t overridden the clock source, so by default the SoftDevice is trying to use LFXO.

    Q2) DCDC converter?

    • The ISC-nRF52832-A module does not include the external DCDC components.

    • I have not enabled DCDC in software, so it should be using the internal LDO regulator.

    Q3) Debug / RTT

    • Attaching ST-Link in debug mode halts the CPU at the reset vector (0x00001DA0) and it never advances into setup() or loop().

    • I don’t have a UART or RTT on my board, so I cannot see any console output.

    I was under the impression that the ISC-nRF52832-A has an in-built 32 kHz crystal—could you please guide me on whether this is a hardware issue (missing crystal) or a software/configuration issue?

    Thanks again for your help!

Children
Related