Under Review
over 1 year ago

CIQ Simulator shows "A debugging check in this application has failed" after upgrade Connect IQ SDK 4.2.4

After upgrade Connect IQ SDK, following error shows when I running CIQ emulator with fenix 7X

But other device is fine. Does any anyone have clues to solve this problem?

Connect IQ Device Simulator 4.2.4

2023/6/28: Update to SDK 6.2.0 is same.

  • I see it on the latest SDK 6.2.2 on all of my widgets and apps on Epix devices and Fenix 7X PROs.  I get the assertion failures when launched from vscode or CLI.  When launched from CLI, the app/widget will run correctly if 'continue'ing on assertion failures.  The app/widget does not start when launched from vscode.  These failures occur on linux but not on Windows.

  • I just had the same issue. I was trying to implement a TimePicker / NumberFactory (I think they originally are examples from you at garmin) and the crash happened on Fenix7 in simulator. Fenix5plus and FR230 worked.

    Since I'm a newbie I thought a implemented functions that were deprecated and only works on older devices, but it works on Fenix7S (in simulator) and crashes on e.g. Fenix 7 and Fenix 7X (also in simulator).

    Before I started fiddling with the timepicker, simulation worked on all devices I tried. If i remove the source files, simulation still doesn't work. Does this help narrowing down the root cause?

  • I have the same error on the same devices on Linux with multiple widgets.  They don't fail on Windows.  I have used different SDKs, removed and downloaded device files which didn't help. Are there any command line options to test?

  • Hi I'm getting the same two errors on:

    - A fresh Ubuntu VM

    - With the SDKManager and devices newly-installed for the first time this morning

    - Using SDK 4.2.4

    ../src/common/menucmn.cpp(308): assert "wxIsStockID(GetId())" failed in SetItemLabel(): A non-stock menu item with an empty label?                                                                              
    ../src/common/stockitem.cpp(219): assert ""Assert failure"" failed in wxGetStockLabel(): invalid stock item ID

    But it depends on which device I use, so I do not get the errors with:

    `monkeyc -o bin/APP.prg -f monkey.jungle -y ~/connect-iq-developer-key -r -d fenix5plus & monkeydo bin/APP.prg fenix5plus`

    but I do get the errors with:

    `monkeyc -o bin/APP.prg -f monkey.jungle -y ~/connect-iq-developer-key -r -d fenix7xpro & monkeydo bin/APP.prg fenix7xpro`

    If I ignore/close the errors (they appear in popups) the app seems to work correctly. I do use `menuItem.setSubLabel()` in my app and it continues to work as expected despite the errors.

  • Here is futher information may helps:

    Executing task: C:\Program Files (x86)\Common Files\Oracle\Java\javapath\java.exe -Xms1g -Dfile.encoding=UTF-8 -Dapple.awt.UIElement=true -jar c:\Users\cwlin\AppData\Roaming\Garmin\ConnectIQ\Sdks\connectiq-sdk-win-6.2.1-2023-06-26-124cb49c5\bin\monkeybrains.jar -o bin\ZsInvoice.prg -f c:\connectiq-sdk-manager\projects\ZsInvoice\monkey.jungle -y c:\connectiq-sdk-manager\key\developer_key -d fenix7x_sim -w 

    A debugging check in this application has failed.

    ..\..\src\common\menucmn.cpp(308): assert "wxlsStocklD(Getld())" failed in
    wxMenultemBase::SetItemLabel(): A non-stock menu item with an empty label?

    Stop Continue

    Don't show this dialog again

    [01] sd_rpc_transport_layer_create
    [02] sd_rpc_transport_layer_create
    [03] sd_rpc_transport_layer_create
    [04] malloc_base
    [05] sd_rpc_transport _layer_create
    [06] sd_rpc_transport_layer_create
    [07] sd_rpc_transport_layer_create
    [08] sd_rpc_transport_layer_create
    [09] sd_rpc._transport_layer_create