Acknowledged
over 1 year ago

Connect IQ app with BLE scanning crashes Epix 2 (non-Pro) watch running System 7 (16.10 BETA)

Overview

Starting a Connect IQ app (widget or datafield) that turns on BLE scanning causes the Epix 2 (non-Pro) watch to crash/reboot.

Details

I have coded a widget that scans for a specific device via BLE, and if found connects to that device. The code is not using any of the new BLE functionality and works without any problems on System 5 and System 6 on several different devices. However, when that same code is installed on an Epix 2 (non-Pro) running 16.10 BETA (and thus, CIQ System 7) the watch crashes as soon as the widget is started and scanning is requested. I tried the same code as a data field with the same results.

If helpful, I can provide a PRG to use to test/replicate this issue.

Device: Epix 2 (non-Pro)

FW: 16.10

CIQ SDK: 6.2.4

For completeness, I also tried using the BETA Connect IQ SDK 7.0.1 but the same crash occurs.

Steps to Replicate

  1. Install (via sideload) a PRG for a simple widget with BLE scanning functionality -- I can provide a simple PRG, if needed
  2. Press START to access the apps
  3. Scroll down to newly installed BLE functionality widget
  4. Press START to start the widget
  5. Widget will function up to the point where BLE scanning is requested by the app to be turned on
  6. Watch crashes

The ERR_LOG.TXT file contains this info/stacktrace following a crash:


3943 (EPIX) SW ver: 1610
Build Type: RELEASE
Commit:cf26ffd047cc3ff2a876514c8a21b94e6250511b
ESN: 3419935121
01/10/24 11:33:26
Assert
..\..\..\TVM\btf\btf_tvm.c line 908
Stack frame PC, SP: 0x10001be5, 0x3038cb08
Call Stack - SP at 0x3038cb08:
0x18050613
0x10000c7f
0x18050613
0x10001ab9
0x1934963f
0x1017a6bd
0x19349c39
0x10007255
0x193846af
0x1938453b
0x1965fa7b
0x1965faa1
0x102b3baf
0x102b4d59
0x102b4fe7
0x102b58e5
0x193adb55
0x102af5b7
0x193adb09
0x102b3baf
0x102b4d59
0x102b4fe7
0x102b58e5
0x102b5191
0x19834e19
0x19383d61
0x1939922f
0x193b7927
0x100c41cd
0x1000658d
0x100073c3
0x100022e1
Uptime: 325017

  • I've just had a user report problems running a BLE datafield on an Epix Pro 2 with firmware 16.22 - could it be this same bug? Do we know if it got fixed?

  • I typically do not stay connected for that long so would not notice this if it were an issue. I can try to see if I'm seeing this too by staying connected for longer to my nordic thingy with my test app. I won't be able to try this on a fenix though since this always crashes before then. But should be able to on forerunner devices.

  • I'm not seeing any issues with CIQ 4.

  • We are looking into the BLE crash issues, we should have the fix soon.

  • There's actually a 3rd problem with CIQ BLE and the System 7 beta.  Just started to see if I can track this down.  If you launch from the app loop. I see the scanning, and when I see what I want, I pair.  When paired I start getting data, but after 2-3 minutes, the "other end" (a raspberry pi in my case) sees the Garmin disconnecting (which the garmin  shows no sign it did!) and stops sending data.

    This wasn't an issue on all pre System 7 beta FW

    With the Thingy52 sample, it may crash the forerunner instead.