BLEPeripheral not working on custom nRF52832 board

Hello,

I'm using the Fanstel BC832 module which contains Nordic's nRF52832 BLE chip on a custom PCB board. When trying to run the Blinky example on PlatformIO, it works perfectly. However, when trying to run any of the BLE examples that use the BLEPeripheral library, the code gets flashed to my module but I can tell the module doesn't even reach the setup loop (where I set some GPIO lines high and low but I never observed this on the scope). Instead, the LED2 pin shows little short blips (3 V, about 3 us long, spaced about 110 ms apart). I tried flashing two different modules and the same behavior is occurring. I'm thinking this probably has to do with an issue of the crystal initialization, but I'm not really familiar with the details of this library (I was previously using Segger and recently moved to PlatformIO with the Arduino environment).
Does anyone have any suggestions as to what I can try to make the BLE examples work?

Thank you in advance!!

Parents Reply Children
  • Hi Kenneth, thank you for your response. Yes, I did check the reset line, which is high when enabled, and it looks the exact same on both the EV module and the isolated BC832. I did try the opposite move, and the isolated BC832, when soldered on to the EV, displays the exact same glitchy behavior and does not actually start running the BLE code. Since I observed this with several modules now, and the pattern is clear, I don’t believe it has to do with poor soldering. I think it might have to do with something on the software end that is done to the BC832’s of the EV (maybe through bootloader, SoftDevice installation, etc), which I’m not doing on the isolated modules. I’m just not sure what that might be… Do I need to install the S132 on my isolated modules before I flash any code?

  • Do you have access to the nrf command line tools and can run "nrfjprog --recover" from a command line window? This should erase all content of flash (including UICR), so it should then be identical to chip from our factory, that said though, how many modules have you tested?

    If you are using SES for programming, then it will program the softdevice at the same time as the application.

    Kenneth

  • I think I have nRF Connect, but I can look into how to run that command on Command Line Tools… 

    I’m using PlatformIO which allows me to use Arduino to program the chip — it has been great and hasn’t resulted in any issues so far, but I don’t know if it also programs the SoftDevice at the same time as the application. From reading in this link (https://learn.adafruit.com/bluefruit-nrf52-feather-learning-guide?view=all), it seems like the SoftDevice might be programmed separately with those libraries  

    I tested 3 isolated BC832’s, and 2 EV-BC832’s. 

  • Update -- after running "nrfjprog --recover" and flashing S132 using the nRF Desktop Programmer, I was able to successfully run the BLE-Blinky example on Segger using the EV with the soldered-on isolated BC832 that wasn't working previously. The BLE examples are still not working on PlatformIO on this module (they are working on the BC832 module that came with the EV), so I think there's one last piece I need to figure out. Do you have any idea of what I might need to add to my PlatformIO script?

  • Sorry, I have not worked with it, so I guess you need to check with them on this. At least it looks like it should work now, and as you write, it is likely some config issue.

    Kenneth

Related