For background, a few years ago our company had a contractor build up a simple peripheral button and I wanted to use that hardware to learn nRF SDK for VS Code and the Zephyr BLE environment as an excuse to update that project. All this to say the hardware has already been proven out and works. I created a new project based off the Zephyr Hello World example and made 2 build configurations:
1. nRF52840 DK nrf52840
2. nRF52832_xxAA: This is the chip on our custom board
I verified the device tree with LEDs, button handling, and logging everything seems to work as expected. I then setup my Bluetooth service and on the dev kit everything works exactly as expected. Using the nRF Connect for mobile Sniffer this is what I see and expect when I connect to the device:
However, when I flash my second configuration (the custom board) everything works exactly as expected except the service when connected to the Sniffer.
It seems to be still using the service from the old project I am working to replace. I have fully erased the board multiple times using both the nRF Extension and J-Flash tool. I am completely at a loss as to where the device is getting this service from considering the rest of the code is operating exactly as the dev kit.
Further Info:
OS: Windows 10
Toolchain: v2.7.0
SDK: v2.7.0
Sniffer: nRF Connect for iOS on an iPhone 15
Logs from dev kit:
SEGGER J-Link V7.94e - Real time terminal output SEGGER J-Link (unknown) V1.0, SN=683541205 Process: JLink.exe *** Booting nRF Connect SDK v2.7.0-5cb85570ca43 *** *** Using Zephyr OS v3.6.99-100befc70c74 *** [00:00:00.000,335] <inf> Halo: Hello World! nrf52840dk [00:00:00.000,610] <inf> ble: the halo service has 4 attributes [00:00:00.000,732] <inf> bt_sdc_hci_driver: SoftDevice Controller build revision: d6 da c7 ae 08 db 72 6f 2a a3 26 49 2a 4d a8 b3 |......ro *.&I*M.. 98 0e 07 7f |.... [00:00:00.002,990] <inf> bt_hci_core: HW Platform: Nordic Semiconductor (0x0002) [00:00:00.003,021] <inf> bt_hci_core: HW Variant: nRF52x (0x0002) [00:00:00.003,051] <inf> bt_hci_core: Firmware: Standard Bluetooth controller (0x00) Version 214.51162 Build 1926957230 [00:00:00.003,875] <inf> bt_hci_core: Identity: D9:1C:07:6B:58:0C (random) [00:00:00.003,906] <inf> bt_hci_core: HCI: version 5.4 (0x0d) revision 0x11f[0m m [00:00:15.811,187] <inf> IO: Button 1 pressed. [00:00:15.811,218] <inf> battery_read: Battery Voltage: 2990 mV [00:00:29.945,251] <inf> IO: Button 1 pressed. [00:00:29.945,312] <inf> battery_read: Battery Voltage: 2996 mV [00:00:33.792,358] <inf> IO: 3s press detected... starting advertising [00:00:37.838,928] <inf> ble: Connected [00:00:37.838,958] <inf> ble: Connection parameters: interval *float* ms, latency 0 intervals, timeout 720 ms [00:00:38.388,641] <wrn> bt_l2cap: Ignoring data for unknown channel ID 0x003a [00:00:43.098,571] <inf> ble: Connection parameters updated: interval *float* ms, latency 0 intervals, timeout 4000 ms [00:00:51.235,687] <inf> ble: Disconnected. Reason 19
Logs from custom board:
SEGGER J-Link V7.94e - Real time terminal output SEGGER J-Link V11.0, SN=601009459 Process: JLink.exe *** Booting nRF Connect SDK v2.7.0-5cb85570ca43 *** *** Using Zephyr OS v3.6.99-100befc70c74 *** [00:00:00.000,640] <inf> Halo: Hello World! board_7413_14_aa [00:00:00.000,793] <inf> ble: the halo service has 4 attributes [00:00:00.000,946] <inf> bt_sdc_hci_driver: SoftDevice Controller build revision: d6 da c7 ae 08 db 72 6f 2a a3 26 49 2a 4d a8 b3 |......ro *.&I*M.. 98 0e 07 7f |.... [00:00:00.003,326] <inf> bt_hci_core: HW Platform: Nordic Semiconductor (0x0002) [00:00:00.003,356] <inf> bt_hci_core: HW Variant: nRF52x (0x0002) [00:00:00.003,387] <inf> bt_hci_core: Firmware: Standard Bluetooth controller (0x00) Version 214.51162 Build 1926957230 [00:00:00.004,241] <inf> bt_hci_core: Identity: DE:97:33:71:09:06 (random) [00:00:00.004,272] <inf> bt_hci_core: HCI: version 5.4 (0x0d) revision 0x11fm [00:00:10.520,477] <inf> IO: Button 1 pressed. [00:00:10.520,507] <inf> battery_read: Battery Voltage: 2572 mV [00:00:13.570,037] <inf> IO: Button 1 pressed. [00:00:13.570,068] <inf> battery_read: Battery Voltage: 2569 mV [00:00:17.960,968] <inf> IO: 3s press detected... starting advertising [00:00:26.551,757] <inf> ble: Connected [00:00:26.551,818] <inf> ble: Connection parameters: interval *float* ms, latency 0 intervals, timeout 720 ms [00:00:27.124,908] <wrn> bt_l2cap: Ignoring data for unknown channel ID 0x003a [00:00:31.804,931] <inf> ble: Connection parameters updated: interval *float* ms, latency 0 intervals, timeout 4000 ms [00:00:39.882,019] <inf> ble: Disconnected. Reason 19