This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

Programming External Board (BC832) with nRF52840 DK

Hello,

I have read posts about programming external boards and want to use BC832 as a beacon. I have been trying to program it with nRF52840 DK and followed these operations:

  • Powering BC832 from P20 Pin 1 VDD nRF
  • Shorting P20 Pin 2 VDD and Pin 3 VTG for external programming
  • P20 SWDIO to SWDIO of BC832
  • P20 SWCLK to SWDCLK of BC832
  • Connecting GND and GND DETECT to GND of custom board


From these posts : https://devzone.nordicsemi.com/f/nordic-q-a/32661/external-programming-with-nrf5-dk-p20
https://devzone.nordicsemi.com/f/nordic-q-a/25424/can-t-program-bt832-module-using-nrf52-dk/100204#100204

 My final wiring is like this :



Note: The battery on the board is not active.

In nRFgo Studio, I erased all first then I programmed ble_app_beacon successfully (also ble_app_blinky). Then I scanned devices in nRF Connect. Unfortunately, BC832 (I know the advertising name is "Nordic_Blinky" ) was not on discovered devices list. Also, I programmed Soft Device s140, but nothing changed. I noticed that after I programmed blinky example, it says " Device must be programmed" in nRF Connect. After that, I connected to device first in nRF Connect then I programmed blinky example in nRFgo Studio, but again I didn't see BC832 on the discovered devices list.

There are 2 regions in nRFgo Studio : Application and SoftDevice

According to https://devzone.nordicsemi.com/f/nordic-q-a/51356/error-nrf_error_timeout-when-using-nrf-connect/206107#206107, we can't connect to nRF Connect if we have a device that is flashed with firmware example. Therefore, I used nRF Connect app on a Android mobile to scan devices, but again there is no BC832. I am really confused about that.

I used Soft Device s140, SDK 16.0.0, nRF Connect 3.3.0.

My questions are :

1. Are the hardware connections correct ?

2. I know that I should program BC832 with Soft Device. At what point should I program BC832 with Soft Device. I mean how should I proceed step by step by using nRFgo Studio and nRF Connect.

3. Should I use SEGGER Embedded Studio instead of nRFgo Studio ?

4. Can I use Programming Bootloader in nRFgo Studio to use BC832 as a standalone application with a coin battery ?

I am kind of new to this stuff so I will be very glad if you help me.

With Kind Regards

  • Hi,

    1. Yes, from the schematics it looks like the wiring is correct. I can't comment on the physical connections, but I assume you have checked that these are correct according to the schematics?
    2. From what I can see, Fanstel BC832 is a module based on nRF52832 IC. If you try to flash this with a S140 softdevice and application intended for nRF52840, it will most likely not work due to issues with RAM/Flash size, etc. You should try with S132 softdevice and examples for nRF52832 (PCA10040 project are for nRF52 DK board).
    3. Yes, you should not use nRFGo Studio at all, this is deprecated. Use Segger Embedded Studio or nRF Connect Programmer App for application flashing.
    4. Again, nRFGo Studio should not be used. You can program DFU bootloader through SES or nRF Connect.

    Best regards,
    Jørgen

  • Thank you for your informing Jørgen.


    I checked my wiring again, no problem.

    So I can proceed with nRF52840 DK by using S132 softdevice or PCA10040 examples, right ?

    I programmed Soft Device S132 on nRF Connect Programmer App and I don't know how to program ble_blinky example after that. I mean   when I add hex file of blinky example after I programmed Soft Device s132, it says there are overlapping hex files. How can I program blinky example after programming softdevice. Is there another platform to program this example ?

    I tried to program BC832 by downloading ble_blinky example on Segger Embedded Studio, but I can not still see "Nordic_Blinky" advertisement on discovered devices on nRF Connect.

  • Please make sure you erase the board before flashing the softdevice and application, and make sure you use PCA10040 example and the softdevice supported by the SDK version where you found the example (Softdevice hex is found in components\softdevice\s132\hex).

    From what I can see, your module does not come with a built-in 32.768 kHz crystal. This requires some changes to the code in order to run BLE examples. Please follow these instructions to configure the chip to use internal RC oscillator for LFCLK source.

  • I've followed your instructions, but it still says "Some of the HEX files have overlapping data". "Nordic_Blinky" isn't on discovered devices list.

    I searched for the solution in the forum and I have seen this post:

    https://devzone.nordicsemi.com/nordic/short-range-guides/b/getting-started/posts/adjustment-of-ram-and-flash-memory

    This tutorial uses SDK 15.2 and nrf52840 board. According to that, the start address of the blinky application can be configured so that it doesn't overlap with the SoftDevice. What do you think ?

    For ble_app_blinky_pca10040_s132, addresses are like this :


    I tried to find appopriate RAM and Flash memory addresses for s132_nrf52_7.0.1_softdevice and ble_app_blinky_pca10040_s132, but I couldn't find them. How can I get them ?

  • Are you using the precompiled hex-file from hex-directory in the project folder? By default, this has the softdevice hex merged in already. If you use the softdevice and project examples for same SDK version, you should never have to modify the start address of unmodified projects to get it working. The start address in your image is correct.

Related