nRF5340 Missing Disconnect Event (Supervision Timeout)

Hi,

I have a nRF5340 using hci_ipc that has the following features:

  • Central Role + Scanning (Multi-connection to nRF52840 peripherals)
  • Peripheral Role
  • QoS Channel Scanning
  • Nordic Uart (Server + Client)

I am missing bluetooth supervision timeout events with the nRF53 with both ncs 2.7.0 and the upstream Zephyr BLE stack. (No disconnected callback using the Softdevice).

Problem Flow from Central perspective:
1) Scan and connect
2) Subscribe to NUS (cached handles - no discovery)
3) MTU Exchange
4) Send NUS data back and forth (~1.2Kb DTLS handshake)
5) Disconnect Peripheral with pending Central NUS GATT write (breakpoint peripheral nrf52 / power off / reset)
6) Observe no supervision timeout (4s) [This event expected, but doesn't happen]
7) Observe GATT write error 30s later
8) GATT error cleans up nus subscription, manually issue disconnect here
9) Observe no .disconnected callback

Setups used:

1) Initially we were on NCS 2.7.0 with the included hci_ipc using the ipc_radio sample with a few upstream network (not bluetooth) related cherrypicks. We had problems with this configuration missing disconnect events.
2) Now we're on a heavily cherrypicked SDK to get as close to Zephyr main upstream Bluetooth stack (from the last couple days) & the newest nrfx-lib softdevice+hci_ipc. We still had problems with this.
3) With the heavily cherrypicked SDK, we enabled SPLIT_SW_LL and do not miss these supervision timeout events with the same application code.


I am curious what layer these disconnect events are supposed to get propagated through `zephyr/drivers/bluetooth/ipc/ipc.c` when using `hci_ipc`.

I have not yet been able to make a minimum viable example, but am working towards this.

I made a Zephyr discord post regarding this on #nordic for additional context, which I tried to summarize here.
https://discord.com/channels/720317445772017664/883445320812466209/1283513590606860318

Let me know if I can provide additional information,
Jeff

Parents
  • Hi Jeff,

    Thank you for the detailed summary of your setup. This helped me create minimal peripheral and central projects based on our peripheral and central UART, allowing me to reproduce the issue within a couple of minutes (GATT timeout followed by a missed disconnect event). I have handed over the projects to our Bluetooth team for further investigation. Regarding the Zephyr controller, it uses two RX threads with one high priority thread, which may unblock the host. I will keep you updated on the progress.

    Thank you,

    Vidar

  • Vidar,

    That's great news!
    Is it possible to share the sample projects? (No need to spend time cleaning up code) Slight smile

    We're more than happy to test and debug any potential solutions as this is our biggest blocker for customer sampling.

    Very much appreciate the help,
    --Jeff

  • Vidar,

    We're using a heavily updated ncs v2.7.0 to keep up with upstream, we pulled in the softdevice from v2.8.0-rc1 (and tested the newer recently updated one).

    I double checked my application, and I don't see any holes where a conn will not get unref'd, even with any conn errors --

    We tracked it back down to a missing disconnect event again. The connection stays in the connected state internally.

    In lieu of any alternate suggestions that come up, we're planning to run our tests again when v2.8.0 is out, and we can merge our patches again.

    --Jeff

  • Hi Jeff,

    I'm afraid I don't have any better suggestions than to try using v2.8.0 to see if it fixes the issue. The developers believe the problem should be fixed in this release. v2.8.0 should be tagged by the end of next week if everything goes according to plan.

    Vidar

  • Vidar,

    We will keep tabs on the releases.
    Thanks for the expected timeline, and continued support with the developers. It is greatly appreciated :)

    --Jeff

  • Vidar,

    Unfortunately we updated to v2.8.0-rc2 and are still having this issue.
    EDIT: v2.8.0 release also has this issue

    Here is our exact Zephyr:
    github.com/.../v2.8.0-eti-rc2

    Our test is as a central to connect to a device, get through a NUS data exchange (DTLS handshake), and wait specifically for the log message tx_notify_process: raise TX IRQ to come out:

    [00:00:10.963,623] <dbg> bt_conn: bt_conn_ref: handle 0 ref 3 -> 4
    [00:00:10.963,653] <dbg> bt_conn: bt_conn_unref: handle 0 ref 4 -> 3
    [00:00:10.963,745] <dbg> bt_conn: bt_conn_unref: handle 0 ref 3 -> 2
    [00:00:10.963,806] <dbg> bt_conn: bt_conn_tx_processor: start
    [00:00:10.963,806] <dbg> bt_conn: bt_conn_tx_processor: no connection wants to do stuff
    [00:00:11.012,512] <dbg> bt_conn: bt_conn_ref: handle 0 ref 2 -> 3
    [00:00:11.012,573] <dbg> bt_conn: bt_conn_unref: handle 0 ref 3 -> 2
    [00:00:11.012,603] <dbg> bt_conn: tx_notify_process: conn 0x2000f7c8
    [00:00:11.012,634] <dbg> bt_conn: tx_notify_process: tx 0x200203dc cb (nil) user_data (nil)
    [00:00:11.012,664] <dbg> bt_conn: tx_free: 0x200203dc
    [00:00:11.012,695] <dbg> bt_conn: tx_notify_process: raise TX IRQ
    [00:00:11.012,725] <dbg> bt_conn: bt_conn_tx_processor: start
    [00:00:11.012,756] <dbg> bt_conn: bt_conn_tx_processor: no connection wants to do stuff
    [00:00:11.312,347] <dbg> bt_conn: bt_conn_ref: handle 0 ref 2 -> 3
    [00:00:11.312,377] <dbg> bt_conn: bt_conn_unref: handle 0 ref 3 -> 2
    [00:00:42.877,471] <dbg> ble: scan_filter_match: Found device that we are already connected to EF:40:43:07:0C:1D (random)

    At this point, if the battery is removed from the peripheral during the ref->unref activity afterwards, the connection and ref stays, but obviously the link is lost. Supervision timeout (6s) does not hit, and we have a stale ref where we can't "reconnect" to the same device.

    Attached is our .config from IPC_Radio

    # CONFIG_IPC_RADIO_802154 is not set
    CONFIG_IPC_RADIO_BT=y
    CONFIG_IPC_RADIO_BT_HCI_IPC=y
    CONFIG_BT_MAX_CONN=7
    # CONFIG_INPUT is not set
    # CONFIG_WIFI is not set
    # CONFIG_MIPI_DSI is not set
    # CONFIG_SERIAL is not set
    # CONFIG_I2C is not set
    # CONFIG_SPI is not set
    # CONFIG_MODEM is not set
    # CONFIG_BT_SPI is not set
    CONFIG_BT_HCI_ACL_FLOW_CONTROL=y
    CONFIG_BT_HCI_VS=y
    CONFIG_FLASH_LOAD_SIZE=0
    CONFIG_SRAM_SIZE=64
    CONFIG_FLASH_LOAD_OFFSET=0
    CONFIG_MBOX_NRFX_IPC=y
    CONFIG_BT_CTLR=y
    CONFIG_BT_CTLR_SDC_QOS_CHANNEL_SURVEY=y
    CONFIG_NUM_IRQS=30
    CONFIG_SYS_CLOCK_HW_CYCLES_PER_SEC=32768
    CONFIG_FLASH_SIZE=256
    CONFIG_FLASH_BASE_ADDRESS=0x1000000
    CONFIG_MP_MAX_NUM_CPUS=1
    CONFIG_SOC_RESET_HOOK=y
    CONFIG_SYS_CLOCK_TICKS_PER_SEC=32768
    CONFIG_ROM_START_OFFSET=0
    CONFIG_PINCTRL=y
    CONFIG_BUILD_OUTPUT_BIN=y
    # CONFIG_BUILD_NO_GAP_FILL is not set
    CONFIG_XIP=y
    CONFIG_MAIN_STACK_SIZE=2048
    CONFIG_IDLE_STACK_SIZE=256
    CONFIG_HAS_FLASH_LOAD_OFFSET=y
    # CONFIG_SRAM_VECTOR_TABLE is not set
    CONFIG_CPU_HAS_ARM_MPU=y
    # CONFIG_COUNTER is not set
    # CONFIG_SHARED_INTERRUPTS is not set
    # CONFIG_PM_DEVICE is not set
    CONFIG_TICKLESS_KERNEL=y
    CONFIG_SYSTEM_WORKQUEUE_STACK_SIZE=2048
    CONFIG_CLOCK_CONTROL=y
    CONFIG_CLOCK_CONTROL_INIT_PRIORITY=30
    # CONFIG_USE_DT_CODE_PARTITION is not set
    # CONFIG_MULTI_LEVEL_INTERRUPTS is not set
    CONFIG_GEN_IRQ_VECTOR_TABLE=y
    # CONFIG_DYNAMIC_INTERRUPTS is not set
    CONFIG_GEN_ISR_TABLES=y
    # CONFIG_INIT_STACKS is not set
    CONFIG_TIMESLICE_SIZE=0
    # CONFIG_REGULATOR is not set
    CONFIG_HW_STACK_PROTECTION=y
    # CONFIG_HCI_NXP_ENABLE_AUTO_SLEEP is not set
    # CONFIG_HCI_NXP_SET_CAL_DATA is not set
    # CONFIG_MFD is not set
    CONFIG_GPIO=y
    # CONFIG_CPU_HAS_CUSTOM_FIXED_SOC_MPU_REGIONS is not set
    CONFIG_TINYCRYPT=y
    # CONFIG_CODE_DATA_RELOCATION_SRAM is not set
    # CONFIG_MBEDTLS is not set
    # CONFIG_MEMC is not set
    CONFIG_KERNEL_ENTRY="__start"
    # CONFIG_CACHE is not set
    # CONFIG_LOG is not set
    # CONFIG_CODE_DATA_RELOCATION is not set
    # CONFIG_ROMSTART_RELOCATION_ROM is not set
    CONFIG_DCACHE_LINE_SIZE=32
    CONFIG_SOC="nrf5340"
    # CONFIG_RESET is not set
    CONFIG_ARCH_SW_ISR_TABLE_ALIGN=4
    CONFIG_NRF_RTC_TIMER=y
    # CONFIG_IPC_SERVICE_BACKEND_RPMSG_SHMEM_RESET is not set
    CONFIG_LOG_DOMAIN_NAME="net"
    CONFIG_ASSERT=y
    CONFIG_BUILD_OUTPUT_HEX=y
    CONFIG_ARCH_HAS_CUSTOM_BUSY_WAIT=y
    CONFIG_SOC_HAS_TIMING_FUNCTIONS=y
    # CONFIG_SYSCON is not set
    CONFIG_ENTROPY_INIT_PRIORITY=50
    CONFIG_SOC_SERIES="nrf53"
    CONFIG_SOC_FAMILY="nordic_nrf"
    # CONFIG_INTC_MTK_ADSP is not set
    # CONFIG_MTK_ADSP_TIMER is not set
    CONFIG_COMMON_LIBC_MALLOC_ARENA_SIZE=-1
    CONFIG_GEN_SW_ISR_TABLE=y
    # CONFIG_REBOOT is not set
    CONFIG_GEN_IRQ_START_VECTOR=0
    CONFIG_SRAM_OFFSET=0
    # CONFIG_POWER_DOMAIN is not set
    CONFIG_CONSOLE=y
    CONFIG_ARCH_IRQ_VECTOR_TABLE_ALIGN=4
    CONFIG_ISR_STACK_SIZE=2048
    # CONFIG_SCHED_CPU_MASK is not set
    # CONFIG_WATCHDOG is not set
    CONFIG_ICACHE_LINE_SIZE=32
    CONFIG_PRIVILEGED_STACK_SIZE=1024
    CONFIG_BT_BUF_ACL_TX_COUNT=10
    CONFIG_BT_BUF_CMD_TX_SIZE=65
    CONFIG_BT_BUF_EVT_RX_SIZE=68
    CONFIG_BT_BUF_ACL_TX_SIZE=27
    CONFIG_BT_BUF_ACL_RX_SIZE=27
    
    #
    # Devicetree Info
    #
    CONFIG_DT_HAS_ARM_ARMV8M_MPU_ENABLED=y
    CONFIG_DT_HAS_ARM_CORTEX_M33_ENABLED=y
    CONFIG_DT_HAS_ARM_V8M_NVIC_ENABLED=y
    CONFIG_DT_HAS_FIXED_PARTITIONS_ENABLED=y
    CONFIG_DT_HAS_MMIO_SRAM_ENABLED=y
    CONFIG_DT_HAS_NORDIC_BT_HCI_SDC_ENABLED=y
    CONFIG_DT_HAS_NORDIC_MBOX_NRF_IPC_ENABLED=y
    CONFIG_DT_HAS_NORDIC_NRF_ACL_ENABLED=y
    CONFIG_DT_HAS_NORDIC_NRF_CCM_ENABLED=y
    CONFIG_DT_HAS_NORDIC_NRF_CLOCK_ENABLED=y
    CONFIG_DT_HAS_NORDIC_NRF_DPPIC_ENABLED=y
    CONFIG_DT_HAS_NORDIC_NRF_ECB_ENABLED=y
    CONFIG_DT_HAS_NORDIC_NRF_EGU_ENABLED=y
    CONFIG_DT_HAS_NORDIC_NRF_FICR_ENABLED=y
    CONFIG_DT_HAS_NORDIC_NRF_GPIO_ENABLED=y
    CONFIG_DT_HAS_NORDIC_NRF_GPIOTE_ENABLED=y
    CONFIG_DT_HAS_NORDIC_NRF_GPREGRET_ENABLED=y
    CONFIG_DT_HAS_NORDIC_NRF_IPC_ENABLED=y
    CONFIG_DT_HAS_NORDIC_NRF_PINCTRL_ENABLED=y
    CONFIG_DT_HAS_NORDIC_NRF_POWER_ENABLED=y
    CONFIG_DT_HAS_NORDIC_NRF_RADIO_ENABLED=y
    CONFIG_DT_HAS_NORDIC_NRF_RNG_ENABLED=y
    CONFIG_DT_HAS_NORDIC_NRF_SWI_ENABLED=y
    CONFIG_DT_HAS_NORDIC_NRF_TEMP_ENABLED=y
    CONFIG_DT_HAS_NORDIC_NRF_TIMER_ENABLED=y
    CONFIG_DT_HAS_NORDIC_NRF_UARTE_ENABLED=y
    CONFIG_DT_HAS_NORDIC_NRF_UICR_ENABLED=y
    CONFIG_DT_HAS_NORDIC_NRF_VMC_ENABLED=y
    CONFIG_DT_HAS_NORDIC_NRF_WDT_ENABLED=y
    CONFIG_DT_HAS_NORDIC_NRF53_FLASH_CONTROLLER_ENABLED=y
    CONFIG_DT_HAS_SOC_NV_FLASH_ENABLED=y
    CONFIG_DT_HAS_ZEPHYR_BT_HCI_ENTROPY_ENABLED=y
    CONFIG_DT_HAS_ZEPHYR_IPC_OPENAMP_STATIC_VRINGS_ENABLED=y
    CONFIG_DT_HAS_ZEPHYR_MEMORY_REGION_ENABLED=y
    # end of Devicetree Info
    
    #
    # Modules
    #
    
    #
    # Available modules.
    #
    CONFIG_ZEPHYR_TRANSPORT_BAG_MODULE=y
    
    #
    # nrf (/home/mpenate0/Documents/Work/Projects/transport-bag/nrf)
    #
    CONFIG_NUM_METAIRQ_PRIORITIES=0
    CONFIG_MPSL_WORK_STACK_SIZE=1024
    
    #
    # Nordic nRF Connect
    #
    CONFIG_HIDE_CHILD_PARENT_CONFIG=y
    CONFIG_WARN_EXPERIMENTAL=y
    CONFIG_BT_BUF_CMD_TX_COUNT=10
    CONFIG_INIT_ARCH_HW_AT_BOOT=y
    CONFIG_NORDIC_QSPI_NOR_FLASH_LAYOUT_PAGE_SIZE=2048
    # CONFIG_GETOPT is not set
    # CONFIG_NCS_SAMPLES_DEFAULTS is not set
    # CONFIG_NCS_SAMPLE_EMPTY_APP_CORE_CHILD_IMAGE is not set
    # CONFIG_NCS_SAMPLE_DTM_REMOTE_HCI_CHILD_IMAGE is not set
    
    #
    # Image build variants
    #
    # CONFIG_NCS_MCUBOOT_IN_BUILD is not set
    # end of Image build variants
    
    # CONFIG_NCS_SAMPLE_MCUMGR_BT_OTA_DFU_SPEEDUP is not set
    
    #
    # Subsystems
    #
    
    #
    # Bootloader
    #
    # CONFIG_BUILD_S1_VARIANT is not set
    CONFIG_SECURE_BOOT=y
    CONFIG_BOOTLOADER_PROVISION_HEX=y
    CONFIG_SB_PRIVATE_KEY_PROVIDED=y
    CONFIG_SB_SIGNING_PYTHON=y
    # CONFIG_SB_SIGNING_OPENSSL is not set
    # CONFIG_SB_SIGNING_CUSTOM is not set
    CONFIG_SB_SIGNING_KEY_FILE=""
    CONFIG_SB_SIGNING_COMMAND=""
    CONFIG_SB_SIGNING_PUBLIC_KEY=""
    CONFIG_SB_PUBLIC_KEY_FILES=""
    # CONFIG_SB_DEBUG_SIGNATURE_PUBLIC_KEY_LAST is not set
    CONFIG_SB_MONOTONIC_COUNTER=y
    CONFIG_SB_NUM_VER_COUNTER_SLOTS=240
    CONFIG_PM_PARTITION_SIZE_PROVISION=0x280
    # CONFIG_B0_MIN_PARTITION_SIZE is not set
    CONFIG_PM_PARTITION_SIZE_B0_IMAGE=0x7800
    # CONFIG_IS_SECURE_BOOTLOADER is not set
    
    #
    # Secure Boot firmware validation
    #
    CONFIG_SB_VALIDATION_INFO_MAGIC=0x86518483
    CONFIG_SB_VALIDATION_POINTER_MAGIC=0x6919b47e
    CONFIG_SB_VALIDATION_INFO_CRYPTO_ID=1
    CONFIG_SB_VALIDATION_INFO_VERSION=2
    CONFIG_SB_VALIDATION_METADATA_OFFSET=0
    CONFIG_SB_VALIDATE_FW_HASH=y
    # end of Secure Boot firmware validation
    
    # CONFIG_SECURE_BOOT_STORAGE is not set
    # CONFIG_MCUBOOT_COMPRESSED_IMAGE_SUPPORT_ENABLED is not set
    # CONFIG_MCUBOOT_BOOTLOADER_SIGNATURE_TYPE_ED25519 is not set
    # CONFIG_MCUBOOT_BOOTLOADER_SIGNATURE_TYPE_PURE is not set
    # end of Bootloader
    
    #
    # Bluetooth Low Energy
    #
    CONFIG_BT_COMPANY_ID_NORDIC=0x0059
    CONFIG_BT_COMPANY_ID=0x0059
    CONFIG_BT_LL_SOFTDEVICE_HEADERS_INCLUDE=y
    CONFIG_BT_LL_SOFTDEVICE=y
    CONFIG_BT_CTLR_DF_SUPPORT=y
    
    #
    # SoftDevice Controller
    #
    CONFIG_BT_LL_SOFTDEVICE_BUILD_TYPE_LIB=y
    CONFIG_BT_HCI_TX_STACK_SIZE=1536
    CONFIG_BT_RX_STACK_SIZE=768
    # CONFIG_BT_CTLR_SDC_ALLOW_PARALLEL_SCANNING_AND_INITIATING is not set
    CONFIG_BT_CTLR_SDC_PERIPHERAL_COUNT=1
    # CONFIG_BT_CTLR_SDC_MAX_CONN_EVENT_LEN_DEFAULT_OVERRIDE is not set
    CONFIG_BT_CTLR_SDC_MAX_CONN_EVENT_LEN_DEFAULT=7500
    CONFIG_BT_CTLR_SDC_CONN_EVENT_EXTEND_DEFAULT=y
    CONFIG_BT_CTLR_SDC_CENTRAL_ACL_EVENT_SPACING_DEFAULT=7500
    # CONFIG_BT_CTLR_SDC_PERIODIC_ADV_EVENT_LEN_DEFAULT_OVERRIDE is not set
    CONFIG_BT_CTLR_SDC_PERIODIC_ADV_EVENT_LEN_DEFAULT=7500
    CONFIG_BT_CTLR_SDC_TX_PACKET_COUNT=3
    CONFIG_BT_CTLR_SDC_RX_PACKET_COUNT=2
    CONFIG_BT_CTLR_SDC_SCAN_BUFFER_COUNT=10
    CONFIG_BT_CTLR_SDC_PERIODIC_SYNC_BUFFER_COUNT=3
    CONFIG_BT_CTLR_SDC_RX_PRIO=6
    # CONFIG_BT_CTLR_DF is not set
    CONFIG_BT_LL_SOFTDEVICE_MULTIROLE=y
    CONFIG_BT_CTLR_FAL_SIZE=8
    # CONFIG_BT_CTLR_SDC_EVENT_TRIGGER is not set
    # CONFIG_BT_CTLR_SDC_CONN_ANCHOR_POINT_REPORT is not set
    CONFIG_BT_CTLR_SDC_BIG_RESERVED_TIME_US=1600
    CONFIG_BT_CTLR_SDC_CIG_RESERVED_TIME_US=1300
    CONFIG_BT_CTLR_SDC_CIS_SUBEVENT_LENGTH_US=0
    # CONFIG_BT_CTLR_CHANNEL_SOUNDING is not set
    # end of SoftDevice Controller
    
    # CONFIG_BT_RADIO_NOTIFICATION_CONN_CB is not set
    
    #
    # BLE Libraries
    #
    # CONFIG_BT_GATT_POOL is not set
    # CONFIG_BT_GATT_DM is not set
    # CONFIG_BT_ADV_PROV is not set
    # CONFIG_BT_SCAN is not set
    # CONFIG_BT_CONN_CTX is not set
    
    #
    # Bluetooth Services
    #
    # CONFIG_BT_AMS_CLIENT is not set
    # CONFIG_BT_ANCS_CLIENT is not set
    # CONFIG_BT_BAS_CLIENT is not set
    # CONFIG_BT_BMS is not set
    # CONFIG_BT_CTS_CLIENT is not set
    # CONFIG_BT_DFU_SMP is not set
    # CONFIG_BT_GATTP is not set
    # CONFIG_BT_HIDS is not set
    # CONFIG_BT_HOGP is not set
    # CONFIG_BT_LBS is not set
    # CONFIG_BT_NSMS is not set
    # CONFIG_BT_NUS is not set
    # CONFIG_BT_NUS_CLIENT is not set
    # CONFIG_BT_RSCS is not set
    # CONFIG_BT_THROUGHPUT is not set
    # CONFIG_BT_LATENCY is not set
    # CONFIG_BT_LATENCY_CLIENT is not set
    # CONFIG_BT_HRS_CLIENT is not set
    # CONFIG_BT_DDFS is not set
    # CONFIG_BT_MDS is not set
    # CONFIG_BT_CGMS is not set
    # CONFIG_BT_FAST_PAIR is not set
    CONFIG_SYSTEM_WORKQUEUE_PRIORITY=-1
    # end of Bluetooth Services
    
    #
    # BLE over nRF RPC
    #
    CONFIG_HEAP_MEM_POOL_SIZE=8192
    CONFIG_BT_DRIVERS=y
    # CONFIG_BT_RPC_STACK is not set
    CONFIG_BT_CENTRAL=y
    CONFIG_BT_PERIPHERAL=y
    CONFIG_BT_OBSERVER=y
    CONFIG_BT_BROADCASTER=y
    CONFIG_BT_CONN=y
    CONFIG_BT_REMOTE_VERSION=y
    CONFIG_BT_PHY_UPDATE=y
    # CONFIG_BT_DATA_LEN_UPDATE is not set
    # CONFIG_BT_EXT_ADV is not set
    CONFIG_BT_BUF_ACL_RX_COUNT=10
    CONFIG_BT_BUF_EVT_RX_COUNT=10
    CONFIG_BT_BUF_EVT_DISCARDABLE_SIZE=43
    CONFIG_BT_HAS_HCI_VS=y
    # CONFIG_BT_HCI_VS_FATAL_ERROR is not set
    # CONFIG_BT_HCI_MESH_EXT is not set
    # CONFIG_BT_WAIT_NOP is not set
    CONFIG_BT_RPA=y
    CONFIG_BT_ASSERT=y
    CONFIG_BT_ASSERT_VERBOSE=y
    # CONFIG_BT_ASSERT_PANIC is not set
    # CONFIG_BT_HCI_ERR_TO_STR is not set
    CONFIG_BT_DEBUG_NONE=y
    # CONFIG_BT_DEBUG_MONITOR_UART is not set
    # CONFIG_BT_LONG_WQ is not set
    # CONFIG_BT_HCI_TX_STACK_SIZE_WITH_PROMPT is not set
    CONFIG_BT_HCI_TX_PRIO=7
    # CONFIG_BT_RECV_WORKQ_SYS is not set
    CONFIG_BT_RECV_WORKQ_BT=y
    CONFIG_BT_RX_PRIO=8
    CONFIG_BT_DRIVER_RX_HIGH_PRIO=6
    # CONFIG_BT_CONN_TX_NOTIFY_WQ is not set
    # CONFIG_BT_ECC is not set
    # CONFIG_BT_HOST_CCM is not set
    # CONFIG_BT_LOG_SNIFFER_INFO is not set
    # CONFIG_BT_TESTING is not set
    # CONFIG_BT_HCI_VS_EVT_USER is not set
    # CONFIG_BT_SHELL is not set
    # end of BLE over nRF RPC
    # end of Bluetooth Low Energy
    
    #
    # DFU
    #
    # CONFIG_DFU_MULTI_IMAGE is not set
    # CONFIG_DFU_TARGET is not set
    # end of DFU
    
    # CONFIG_ESB is not set
    
    #
    # Peripheral CPU DFU (PCD)
    #
    # CONFIG_PCD is not set
    # CONFIG_PCD_APP is not set
    CONFIG_PCD_VERSION_PAGE_BUF_SIZE=2046
    # CONFIG_PCD_NET is not set
    # end of Peripheral CPU DFU (PCD)
    
    #
    # Networking
    #
    
    #
    # Application protocols
    #
    
    #
    # nRF Cloud
    #
    
    #
    # Transport
    #
    # CONFIG_NRF_CLOUD_REST is not set
    # end of Transport
    
    #
    # Credentials
    #
    CONFIG_NRF_CLOUD_SEC_TAG=16842753
    CONFIG_NRF_CLOUD_AWS_CA_CERT_SIZE_THRESHOLD=1150
    CONFIG_NRF_CLOUD_COAP_CA_CERT_SIZE_THRESHOLD=550
    # end of Credentials
    
    #
    # Client ID (nRF Cloud Device ID)
    #
    CONFIG_NRF_CLOUD_CLIENT_ID_SRC_COMPILE_TIME=y
    # CONFIG_NRF_CLOUD_CLIENT_ID_SRC_RUNTIME is not set
    CONFIG_NRF_CLOUD_CLIENT_ID="my-client-id"
    # end of Client ID (nRF Cloud Device ID)
    
    #
    # Firmware Over-the-Air (FOTA) Updates
    #
    # CONFIG_NRF_CLOUD_FOTA is not set
    CONFIG_FOTA_USE_NRF_CLOUD_SETTINGS_AREA=y
    # CONFIG_NRF_CLOUD_FOTA_FULL_MODEM_UPDATE is not set
    # CONFIG_NRF_CLOUD_FOTA_SMP is not set
    # end of Firmware Over-the-Air (FOTA) Updates
    
    #
    # Location
    #
    
    #
    # Cellular/Wi-Fi
    #
    # CONFIG_NRF_CLOUD_LOCATION_PARSE_ANCHORS is not set
    # CONFIG_NRF_CLOUD_WIFI_LOCATION_ENCODE_OPT_MAC_ONLY is not set
    CONFIG_NRF_CLOUD_WIFI_LOCATION_ENCODE_OPT_MAC_RSSI=y
    # CONFIG_NRF_CLOUD_WIFI_LOCATION_ENCODE_OPT_ALL is not set
    # end of Cellular/Wi-Fi
    # end of Location
    
    #
    # Alerts
    #
    # CONFIG_NRF_CLOUD_ALERT is not set
    # end of Alerts
    
    #
    # Logging
    #
    CONFIG_NRF_CLOUD_LOG_OUTPUT_LEVEL=1
    # CONFIG_NRF_CLOUD_LOG_INCLUDE_LEVEL_0 is not set
    CONFIG_NRF_CLOUD_LOG_BUF_SIZE=256
    # end of Logging
    
    #
    # Device Shadow
    #
    
    #
    # Send shadow info sections on initial connect (MQTT/CoAP)
    #
    # end of Send shadow info sections on initial connect (MQTT/CoAP)
    # end of Device Shadow
    
    CONFIG_NRF_CLOUD_PRINT_DETAILS=y
    CONFIG_NRF_CLOUD_VERBOSE_DETAILS=y
    # CONFIG_NRF_CLOUD_GATEWAY is not set
    # end of nRF Cloud
    
    # CONFIG_REST_CLIENT is not set
    # CONFIG_DOWNLOAD_CLIENT is not set
    # CONFIG_AWS_IOT is not set
    # CONFIG_AWS_JOBS is not set
    # CONFIG_AZURE_IOT_HUB is not set
    
    #
    # Self-Registration (Zi ZHu Ce)
    #
    # end of Self-Registration (Zi ZHu Ce)
    
    # CONFIG_ICAL_PARSER is not set
    # CONFIG_FTP_CLIENT is not set
    # CONFIG_LWM2M_CLIENT_UTILS is not set
    # CONFIG_WIFI_CREDENTIALS is not set
    # CONFIG_WIFI_CREDENTIALS_STATIC is not set
    # CONFIG_MQTT_HELPER is not set
    # CONFIG_NRF_MCUMGR_SMP_CLIENT is not set
    # end of Application protocols
    
    # CONFIG_OPENTHREAD_RPC is not set
    # end of Networking
    
    #
    # NFC
    #
    # CONFIG_NFC_NDEF is not set
    # CONFIG_NFC_NDEF_PARSER is not set
    # CONFIG_NFC_NDEF_PAYLOAD_TYPE_COMMON is not set
    # CONFIG_NFC_T2T_PARSER is not set
    # CONFIG_NFC_T4T_NDEF_FILE is not set
    # CONFIG_NFC_T4T_ISODEP is not set
    # CONFIG_NFC_T4T_APDU is not set
    # CONFIG_NFC_T4T_CC_FILE is not set
    # CONFIG_NFC_T4T_HL_PROCEDURE is not set
    # CONFIG_NFC_PLATFORM is not set
    # CONFIG_NFC_TNEP_TAG is not set
    # CONFIG_NFC_TNEP_POLLER is not set
    # CONFIG_NFC_TNEP_CH is not set
    # CONFIG_NFC_RPC is not set
    # end of NFC
    
    # CONFIG_APP_EVENT_MANAGER is not set
    # CONFIG_NRF_PROFILER is not set
    CONFIG_FW_INFO=y
    # CONFIG_FW_INFO_API is not set
    CONFIG_FW_INFO_OFFSET=0x200
    CONFIG_FW_INFO_FIRMWARE_VERSION=1
    CONFIG_FW_INFO_MAGIC_COMMON=0x281ee6de
    CONFIG_FW_INFO_MAGIC_FIRMWARE_INFO=0x8fcebb4c
    CONFIG_FW_INFO_MAGIC_EXT_API=0xb845acea
    CONFIG_FW_INFO_HARDWARE_ID=53
    CONFIG_FW_INFO_VERSION=2
    CONFIG_FW_INFO_CRYPTO_ID=0
    CONFIG_FW_INFO_MAGIC_COMPATIBILITY_ID=0
    CONFIG_FW_INFO_MAGIC_LEN=12
    CONFIG_FW_INFO_VALID_VAL=0x9102FFFF
    CONFIG_EXT_API_PROVIDE_EXT_API_UNUSED=y
    # CONFIG_EXT_API_PROVIDE_EXT_API_OPTIONAL is not set
    # CONFIG_EXT_API_PROVIDE_EXT_API_REQUIRED is not set
    # CONFIG_EXT_API_PROVIDE_EXT_API_ATLEAST_OPTIONAL is not set
    # CONFIG_EXT_API_PROVIDE_EXT_API_ENABLED is not set
    
    #
    # Debug
    #
    # CONFIG_CPU_LOAD is not set
    # CONFIG_PPI_TRACE is not set
    # end of Debug
    
    # CONFIG_SHELL_BT_NUS is not set
    # CONFIG_SHELL_IPC is not set
    
    #
    # Multiprotocol service layer (MPSL)
    #
    # CONFIG_MPSL_FEM_ONLY is not set
    CONFIG_MPSL_FEM_API_AVAILABLE=y
    # CONFIG_MPSL_FEM_DEVICE_CONFIG_254 is not set
    CONFIG_MPSL_THREAD_COOP_PRIO=6
    CONFIG_MPSL_TIMESLOT_SESSION_COUNT=0
    # CONFIG_MPSL_ASSERT_HANDLER is not set
    # CONFIG_MPSL_TRIGGER_IPC_TASK_ON_RTC_START is not set
    CONFIG_MPSL_LOW_PRIO_IRQN=26
    CONFIG_MPSL_HFCLK_LATENCY=1400
    # end of Multiprotocol service layer (MPSL)
    
    #
    # Partition Manager
    #
    CONFIG_PARTITION_MANAGER_ENABLED=y
    CONFIG_FLASH_MAP_CUSTOM=y
    CONFIG_SRAM_BASE_ADDRESS=0x21000000
    
    #
    # Zephyr subsystem configurations
    #
    # end of Zephyr subsystem configurations
    
    #
    # NCS subsystem configurations
    #
    # CONFIG_PM_SINGLE_IMAGE is not set
    CONFIG_PM_EXTERNAL_FLASH_BASE=0
    CONFIG_PM_EXTERNAL_FLASH_PATH=""
    CONFIG_PM_EXTERNAL_FLASH_SIZE_BITS=0
    # CONFIG_PM_OVERRIDE_EXTERNAL_DRIVER_CHECK is not set
    CONFIG_PM_SRAM_BASE=0x21000000
    CONFIG_PM_SRAM_SIZE=0x10000
    # end of Partition Manager
    
    #
    # nRF RPC (Remote Procedure Call) library
    #
    # end of nRF RPC (Remote Procedure Call) library
    
    #
    # Full Modem Firmware Update Management(FMFU)
    #
    # end of Full Modem Firmware Update Management(FMFU)
    
    # CONFIG_CAF is not set
    
    #
    # Nordic IEEE 802.15.4
    #
    # end of Nordic IEEE 802.15.4
    
    # CONFIG_DM_MODULE is not set
    
    #
    # nRF Security
    #
    # CONFIG_NORDIC_SECURITY_BACKEND is not set
    # CONFIG_NRF_SECURITY is not set
    
    #
    # Nordic-added meta types
    #
    
    #
    # Nordic added alg types
    #
    # CONFIG_PSA_WANT_ALG_ECDSA_ANY is not set
    # CONFIG_PSA_WANT_ALG_ED25519PH is not set
    # CONFIG_PSA_WANT_ALG_ED448PH is not set
    # CONFIG_PSA_WANT_ALG_PURE_EDDSA is not set
    # CONFIG_PSA_WANT_ALG_RSA_PKCS1V15_SIGN_RAW is not set
    # CONFIG_PSA_WANT_ALG_RSA_PSS_ANY_SALT is not set
    # CONFIG_PSA_WANT_ALG_SHA_512_224 is not set
    # CONFIG_PSA_WANT_ALG_SHA_512_256 is not set
    # CONFIG_PSA_WANT_ALG_SPAKE2P_HMAC is not set
    # CONFIG_PSA_WANT_ALG_SPAKE2P_CMAC is not set
    # CONFIG_PSA_WANT_ALG_SPAKE2P_MATTER is not set
    # CONFIG_PSA_WANT_ALG_SRP_6 is not set
    # CONFIG_PSA_WANT_ALG_SRP_PASSWORD_HASH is not set
    # CONFIG_PSA_WANT_ALG_XTS is not set
    
    #
    # Nordic added ECC curve types
    #
    # CONFIG_PSA_WANT_ECC_BRAINPOOL_P_R1_160 is not set
    # CONFIG_PSA_WANT_ECC_BRAINPOOL_P_R1_192 is not set
    # CONFIG_PSA_WANT_ECC_BRAINPOOL_P_R1_224 is not set
    # CONFIG_PSA_WANT_ECC_BRAINPOOL_P_R1_320 is not set
    # CONFIG_PSA_WANT_ECC_TWISTED_EDWARDS_255 is not set
    # CONFIG_PSA_WANT_ECC_TWISTED_EDWARDS_448 is not set
    # CONFIG_PSA_WANT_ECC_SECP_K1_224 is not set
    # CONFIG_PSA_WANT_ECC_SECP_R2_160 is not set
    # CONFIG_PSA_WANT_ECC_SECT_K1_163 is not set
    # CONFIG_PSA_WANT_ECC_SECT_K1_233 is not set
    # CONFIG_PSA_WANT_ECC_SECT_K1_239 is not set
    # CONFIG_PSA_WANT_ECC_SECT_K1_283 is not set
    # CONFIG_PSA_WANT_ECC_SECT_K1_409 is not set
    # CONFIG_PSA_WANT_ECC_SECT_K1_571 is not set
    # CONFIG_PSA_WANT_ECC_SECT_R1_163 is not set
    # CONFIG_PSA_WANT_ECC_SECT_R1_233 is not set
    # CONFIG_PSA_WANT_ECC_SECT_R1_283 is not set
    # CONFIG_PSA_WANT_ECC_SECT_R1_409 is not set
    # CONFIG_PSA_WANT_ECC_SECT_R1_571 is not set
    # CONFIG_PSA_WANT_ECC_SECT_R2_163 is not set
    # CONFIG_PSA_WANT_ECC_FRP_V1_256 is not set
    # CONFIG_PSA_WANT_ALG_CHACHA20 is not set
    # CONFIG_PSA_WANT_ALG_SHAKE256_512 is not set
    
    #
    # Nordic addded RNG configuration
    #
    # CONFIG_PSA_WANT_GENERATE_RANDOM is not set
    
    #
    # Nordic added key types
    #
    # CONFIG_PSA_WANT_KEY_TYPE_PEPPER is not set
    # CONFIG_PSA_WANT_KEY_TYPE_SPAKE2P_KEY_PAIR_IMPORT is not set
    # CONFIG_PSA_WANT_KEY_TYPE_SPAKE2P_KEY_PAIR_EXPORT is not set
    # CONFIG_PSA_WANT_KEY_TYPE_SPAKE2P_KEY_PAIR_GENERATE is not set
    # CONFIG_PSA_WANT_KEY_TYPE_SPAKE2P_KEY_PAIR_DERIVE is not set
    # CONFIG_PSA_WANT_KEY_TYPE_SPAKE2P_PUBLIC_KEY is not set
    # CONFIG_PSA_WANT_KEY_TYPE_SRP_KEY_PAIR_IMPORT is not set
    # CONFIG_PSA_WANT_KEY_TYPE_SRP_KEY_PAIR_EXPORT is not set
    # CONFIG_PSA_WANT_KEY_TYPE_SRP_KEY_PAIR_GENERATE is not set
    # CONFIG_PSA_WANT_KEY_TYPE_SRP_KEY_PAIR_DERIVE is not set
    # CONFIG_PSA_WANT_KEY_TYPE_SRP_PUBLIC_KEY is not set
    # end of nRF Security
    
    # CONFIG_NET_CORE_MONITOR is not set
    
    #
    # Audio Modules
    #
    # CONFIG_AUDIO_MODULE_TEST is not set
    CONFIG_AUDIO_MODULE_NAME_SIZE=20
    
    #
    # Log levels
    #
    # end of Log levels
    # end of Audio Modules
    
    #
    # Audio Modules
    #
    # CONFIG_AUDIO_MODULE_TEMPLATE is not set
    # end of Audio Modules
    
    # CONFIG_TRUSTED_STORAGE is not set
    
    #
    # Logging over RPC
    #
    # end of Logging over RPC
    
    #
    # SUIT provisioning
    #
    # CONFIG_SUIT_MPI_GENERATE is not set
    # end of SUIT provisioning
    
    # CONFIG_SUIT is not set
    # CONFIG_DULT is not set
    # CONFIG_NRF_COMPRESS is not set
    
    #
    # MCUboot IDs (informative only, do not change)
    #
    CONFIG_MCUBOOT_APPLICATION_IMAGE_NUMBER=-1
    CONFIG_MCUBOOT_NETWORK_CORE_IMAGE_NUMBER=-1
    CONFIG_MCUBOOT_WIFI_PATCHES_IMAGE_NUMBER=-1
    CONFIG_MCUBOOT_QSPI_XIP_IMAGE_NUMBER=-1
    CONFIG_MCUBOOT_MCUBOOT_IMAGE_NUMBER=-1
    # end of MCUboot IDs (informative only, do not change)
    # end of Subsystems
    
    # CONFIG_WFA_QT_CONTROL_APP is not set
    CONFIG_WFA_QT_THREAD_STACK_SIZE=5200
    CONFIG_WFA_QT_REBOOT_TIMEOUT_MS=1000
    CONFIG_WFA_QT_DEFAULT_INTERFACE="wlan0"
    CONFIG_WPAS_READY_TIMEOUT_MS=10000
    
    #
    # Libraries
    #
    
    #
    # Binary libraries
    #
    # end of Binary libraries
    
    # CONFIG_AT_MONITOR is not set
    # CONFIG_LTE_LINK_CONTROL is not set
    CONFIG_NRF_ACL_FLASH_REGION_SIZE=0x800
    CONFIG_FPROTECT_BLOCK_SIZE=0x800
    # CONFIG_FPROTECT is not set
    # CONFIG_AT_CMD_CUSTOM is not set
    # CONFIG_DK_LIBRARY is not set
    # CONFIG_AT_CMD_PARSER is not set
    # CONFIG_AT_PARSER is not set
    # CONFIG_MODEM_INFO is not set
    CONFIG_MULTITHREADING_LOCK=y
    # CONFIG_RESET_ON_FATAL_ERROR is not set
    # CONFIG_SMS is not set
    # CONFIG_DATE_TIME is not set
    # CONFIG_HW_ID_LIBRARY is not set
    # CONFIG_WAVE_GEN_LIB is not set
    CONFIG_HW_UNIQUE_KEY_PARTITION_SIZE=0x800
    # CONFIG_MODEM_JWT is not set
    # CONFIG_LOCATION is not set
    # CONFIG_QOS is not set
    # CONFIG_SFLOAT is not set
    # CONFIG_CONTIN_ARRAY is not set
    # CONFIG_PCM_MIX is not set
    # CONFIG_TONE is not set
    # CONFIG_PSCM is not set
    # CONFIG_DATA_FIFO is not set
    # CONFIG_FEM_AL_LIB is not set
    # CONFIG_SAMPLE_RATE_CONVERTER is not set
    CONFIG_NCS_BOOT_BANNER=y
    CONFIG_NCS_NCS_BOOT_BANNER_STRING="nRF Connect SDK"
    CONFIG_NCS_ZEPHYR_BOOT_BANNER_STRING="Zephyr OS"
    # end of Libraries
    
    #
    # Device Drivers
    #
    # CONFIG_BT_DRIVER_QUIRK_NO_AUTO_DLE is not set
    # CONFIG_FLASH_RPC is not set
    # CONFIG_GPIO_NRFE_EGPIO_BACKEND_MBOX is not set
    CONFIG_GPIO_NRFE_EGPIO_BACKEND_ICMSG=y
    # CONFIG_GPIO_NRFE_EGPIO_BACKEND_ICBMSG is not set
    CONFIG_CLOCK_CONTROL_MPSL=y
    CONFIG_SOC_FLASH_NRF_RADIO_SYNC_MPSL_TIMESLOT_SESSION_COUNT=0
    # CONFIG_ETH_RTT is not set
    # CONFIG_SENSOR is not set
    # CONFIG_NRF_SW_LPUART is not set
    CONFIG_NRFX_GPIOTE_NUM_OF_EVT_HANDLERS=1
    # CONFIG_IPC_UART is not set
    # end of Device Drivers
    
    #
    # External libraries
    #
    # end of External libraries
    
    #
    # Test
    #
    CONFIG_ZTEST_MULTICORE_DEFAULT_SETTINGS=y
    # CONFIG_UNITY is not set
    
    #
    # Mocks
    #
    # CONFIG_MOCK_NRF_MODEM_AT is not set
    # CONFIG_MOCK_NRF_RPC is not set
    # end of Mocks
    # end of Test
    # end of Nordic nRF Connect
    
    CONFIG_ZEPHYR_NRF_MODULE=y
    # end of nrf (/home/mpenate0/Documents/Work/Projects/transport-bag/nrf)
    
    #
    # ubxlib (/home/mpenate0/Documents/Work/Projects/transport-bag/modules/lib/ubxlib)
    #
    # CONFIG_UBXLIB is not set
    CONFIG_ZEPHYR_UBXLIB_MODULE=y
    # end of ubxlib (/home/mpenate0/Documents/Work/Projects/transport-bag/modules/lib/ubxlib)
    
    #
    # mcuboot (/home/mpenate0/Documents/Work/Projects/transport-bag/bootloader/mcuboot)
    #
    
    #
    # MCUboot
    #
    CONFIG_BOOT_SIGNATURE_KEY_FILE=""
    CONFIG_DT_FLASH_WRITE_BLOCK_SIZE=4
    # CONFIG_USE_NRF53_MULTI_IMAGE_WITHOUT_UPGRADE_ONLY is not set
    # end of MCUboot
    
    CONFIG_ZEPHYR_MCUBOOT_MODULE=y
    # end of mcuboot (/home/mpenate0/Documents/Work/Projects/transport-bag/bootloader/mcuboot)
    
    #
    # mbedtls (/home/mpenate0/Documents/Work/Projects/transport-bag/modules/crypto/mbedtls)
    #
    CONFIG_ZEPHYR_MBEDTLS_MODULE=y
    # end of mbedtls (/home/mpenate0/Documents/Work/Projects/transport-bag/modules/crypto/mbedtls)
    
    #
    # oberon-psa-crypto (/home/mpenate0/Documents/Work/Projects/transport-bag/modules/crypto/oberon-psa-crypto)
    #
    CONFIG_ZEPHYR_OBERON_PSA_CRYPTO_MODULE=y
    # end of oberon-psa-crypto (/home/mpenate0/Documents/Work/Projects/transport-bag/modules/crypto/oberon-psa-crypto)
    
    #
    # trusted-firmware-m (/home/mpenate0/Documents/Work/Projects/transport-bag/modules/tee/tf-m/trusted-firmware-m)
    #
    # CONFIG_BOOTLOADER_MCUBOOT is not set
    CONFIG_ZEPHYR_TRUSTED_FIRMWARE_M_MODULE=y
    # end of trusted-firmware-m (/home/mpenate0/Documents/Work/Projects/transport-bag/modules/tee/tf-m/trusted-firmware-m)
    
    CONFIG_ZEPHYR_PSA_ARCH_TESTS_MODULE=y
    CONFIG_ZEPHYR_SOC_HWMV1_MODULE=y
    
    #
    # cjson (/home/mpenate0/Documents/Work/Projects/transport-bag/modules/lib/cjson)
    #
    # CONFIG_CJSON_LIB is not set
    CONFIG_ZEPHYR_CJSON_MODULE=y
    # end of cjson (/home/mpenate0/Documents/Work/Projects/transport-bag/modules/lib/cjson)
    
    #
    # azure-sdk-for-c (/home/mpenate0/Documents/Work/Projects/transport-bag/modules/lib/azure-sdk-for-c)
    #
    # CONFIG_AZURE_SDK is not set
    CONFIG_ZEPHYR_AZURE_SDK_FOR_C_MODULE=y
    # end of azure-sdk-for-c (/home/mpenate0/Documents/Work/Projects/transport-bag/modules/lib/azure-sdk-for-c)
    
    #
    # cirrus-logic (/home/mpenate0/Documents/Work/Projects/transport-bag/modules/hal/cirrus-logic)
    #
    # CONFIG_HW_CODEC_CIRRUS_LOGIC is not set
    CONFIG_ZEPHYR_CIRRUS_LOGIC_MODULE=y
    # end of cirrus-logic (/home/mpenate0/Documents/Work/Projects/transport-bag/modules/hal/cirrus-logic)
    
    #
    # openthread (/home/mpenate0/Documents/Work/Projects/transport-bag/modules/lib/openthread)
    #
    # CONFIG_OPENTHREAD is not set
    CONFIG_ZEPHYR_OPENTHREAD_MODULE=y
    # end of openthread (/home/mpenate0/Documents/Work/Projects/transport-bag/modules/lib/openthread)
    
    #
    # suit-generator (/home/mpenate0/Documents/Work/Projects/transport-bag/modules/lib/suit-generator)
    #
    CONFIG_SUIT_ENVELOPE_TEMPLATE_FILENAME=""
    CONFIG_SUIT_ENVELOPE_TARGET=""
    CONFIG_SUIT_ENVELOPE_OUTPUT_ARTIFACT="merged.hex"
    # CONFIG_SUIT_RECOVERY is not set
    CONFIG_SUIT_ENVELOPE_OUTPUT_MPI_MERGE=y
    # CONFIG_SUIT_LOCAL_ENVELOPE_GENERATE is not set
    # CONFIG_SUIT_DFU_CACHE_EXTRACT_IMAGE is not set
    CONFIG_ZEPHYR_SUIT_GENERATOR_MODULE=y
    # end of suit-generator (/home/mpenate0/Documents/Work/Projects/transport-bag/modules/lib/suit-generator)
    
    #
    # suit-processor (/home/mpenate0/Documents/Work/Projects/transport-bag/modules/lib/suit-processor)
    #
    # CONFIG_SUIT_PROCESSOR is not set
    CONFIG_SUIT_PLATFORM_DRY_RUN_SUPPORT=y
    CONFIG_ZEPHYR_SUIT_PROCESSOR_MODULE=y
    # end of suit-processor (/home/mpenate0/Documents/Work/Projects/transport-bag/modules/lib/suit-processor)
    
    #
    # memfault-firmware-sdk (/home/mpenate0/Documents/Work/Projects/transport-bag/modules/lib/memfault-firmware-sdk)
    #
    # CONFIG_MEMFAULT is not set
    CONFIG_ZEPHYR_MEMFAULT_FIRMWARE_SDK_MODULE=y
    # end of memfault-firmware-sdk (/home/mpenate0/Documents/Work/Projects/transport-bag/modules/lib/memfault-firmware-sdk)
    
    #
    # coremark (/home/mpenate0/Documents/Work/Projects/transport-bag/modules/benchmark/coremark)
    #
    # CONFIG_COREMARK is not set
    CONFIG_ZEPHYR_COREMARK_MODULE=y
    # end of coremark (/home/mpenate0/Documents/Work/Projects/transport-bag/modules/benchmark/coremark)
    
    #
    # canopennode (/home/mpenate0/Documents/Work/Projects/transport-bag/modules/lib/canopennode)
    #
    CONFIG_ZEPHYR_CANOPENNODE_MODULE=y
    # end of canopennode (/home/mpenate0/Documents/Work/Projects/transport-bag/modules/lib/canopennode)
    
    #
    # chre (/home/mpenate0/Documents/Work/Projects/transport-bag/modules/lib/chre)
    #
    CONFIG_ZEPHYR_CHRE_MODULE=y
    # CONFIG_CHRE is not set
    # end of chre (/home/mpenate0/Documents/Work/Projects/transport-bag/modules/lib/chre)
    
    #
    # lz4 (/home/mpenate0/Documents/Work/Projects/transport-bag/modules/lib/lz4)
    #
    CONFIG_ZEPHYR_LZ4_MODULE=y
    # CONFIG_LZ4 is not set
    # end of lz4 (/home/mpenate0/Documents/Work/Projects/transport-bag/modules/lib/lz4)
    
    #
    # nanopb (/home/mpenate0/Documents/Work/Projects/transport-bag/modules/lib/nanopb)
    #
    CONFIG_ZEPHYR_NANOPB_MODULE=y
    # CONFIG_NANOPB is not set
    # end of nanopb (/home/mpenate0/Documents/Work/Projects/transport-bag/modules/lib/nanopb)
    
    CONFIG_ZEPHYR_TF_M_TESTS_MODULE=y
    
    #
    # zscilib (/home/mpenate0/Documents/Work/Projects/transport-bag/modules/lib/zscilib)
    #
    # CONFIG_ZSL is not set
    CONFIG_ZEPHYR_ZSCILIB_MODULE=y
    # end of zscilib (/home/mpenate0/Documents/Work/Projects/transport-bag/modules/lib/zscilib)
    
    #
    # cmsis (/home/mpenate0/Documents/Work/Projects/transport-bag/modules/hal/cmsis)
    #
    CONFIG_ZEPHYR_CMSIS_MODULE=y
    CONFIG_HAS_CMSIS_CORE=y
    CONFIG_HAS_CMSIS_CORE_M=y
    # CONFIG_CMSIS_M_CHECK_DEVICE_DEFINES is not set
    # end of cmsis (/home/mpenate0/Documents/Work/Projects/transport-bag/modules/hal/cmsis)
    
    #
    # cmsis-dsp (/home/mpenate0/Documents/Work/Projects/transport-bag/modules/lib/cmsis-dsp)
    #
    CONFIG_ZEPHYR_CMSIS_DSP_MODULE=y
    # CONFIG_CMSIS_DSP is not set
    # end of cmsis-dsp (/home/mpenate0/Documents/Work/Projects/transport-bag/modules/lib/cmsis-dsp)
    
    #
    # cmsis-nn (/home/mpenate0/Documents/Work/Projects/transport-bag/modules/lib/cmsis-nn)
    #
    CONFIG_ZEPHYR_CMSIS_NN_MODULE=y
    # CONFIG_CMSIS_NN is not set
    # end of cmsis-nn (/home/mpenate0/Documents/Work/Projects/transport-bag/modules/lib/cmsis-nn)
    
    #
    # fatfs (/home/mpenate0/Documents/Work/Projects/transport-bag/modules/fs/fatfs)
    #
    CONFIG_ZEPHYR_FATFS_MODULE=y
    # end of fatfs (/home/mpenate0/Documents/Work/Projects/transport-bag/modules/fs/fatfs)
    
    #
    # hal_nordic (/home/mpenate0/Documents/Work/Projects/transport-bag/modules/hal/nordic)
    #
    CONFIG_ZEPHYR_HAL_NORDIC_MODULE=y
    CONFIG_HAS_NORDIC_DRIVERS=y
    
    #
    # Nordic drivers
    #
    # CONFIG_NRF_802154_SOURCE_HAL_NORDIC is not set
    # CONFIG_NRF_802154_SER_RADIO is not set
    # end of Nordic drivers
    
    CONFIG_HAS_NRFX=y
    
    #
    # nrfx drivers
    #
    CONFIG_MPSL=y
    # CONFIG_NRFX_CLOCK is not set
    CONFIG_NRFX_DPPI=y
    # CONFIG_NRFX_EGU0 is not set
    CONFIG_NRFX_GPIOTE=y
    CONFIG_NRFX_GPIOTE0=y
    CONFIG_NRFX_IPC=y
    CONFIG_NRFX_NVMC=y
    # CONFIG_NRFX_POWER is not set
    CONFIG_NRFX_RNG=y
    # CONFIG_NRFX_RTC0 is not set
    # CONFIG_NRFX_RTC1 is not set
    # CONFIG_NRFX_SPIM0 is not set
    # CONFIG_NRFX_SYSTICK is not set
    # CONFIG_NRFX_TEMP is not set
    # CONFIG_NRFX_TIMER0 is not set
    # CONFIG_NRFX_TIMER1 is not set
    # CONFIG_NRFX_TIMER2 is not set
    # CONFIG_NRFX_TWIM0 is not set
    # CONFIG_NRFX_UARTE0 is not set
    # CONFIG_NRFX_WDT0 is not set
    
    #
    # Peripheral Resource Sharing module
    #
    # CONFIG_NRFX_PRS_BOX_0 is not set
    # CONFIG_NRFX_PRS_BOX_1 is not set
    # CONFIG_NRFX_PRS_BOX_2 is not set
    # CONFIG_NRFX_PRS_BOX_3 is not set
    # CONFIG_NRFX_PRS_BOX_4 is not set
    # end of Peripheral Resource Sharing module
    # end of nrfx drivers
    # end of hal_nordic (/home/mpenate0/Documents/Work/Projects/transport-bag/modules/hal/nordic)
    
    #
    # hal_st (/home/mpenate0/Documents/Work/Projects/transport-bag/modules/hal/st)
    #
    CONFIG_ZEPHYR_HAL_ST_MODULE=y
    # end of hal_st (/home/mpenate0/Documents/Work/Projects/transport-bag/modules/hal/st)
    
    CONFIG_ZEPHYR_HAL_WURTHELEKTRONIK_MODULE=y
    
    #
    # hostap (/home/mpenate0/Documents/Work/Projects/transport-bag/modules/lib/hostap)
    #
    # CONFIG_WIFI_NM_WPA_SUPPLICANT is not set
    CONFIG_ZEPHYR_HOSTAP_MODULE=y
    # end of hostap (/home/mpenate0/Documents/Work/Projects/transport-bag/modules/lib/hostap)
    
    CONFIG_ZEPHYR_LIBMETAL_MODULE=y
    
    #
    # liblc3 (/home/mpenate0/Documents/Work/Projects/transport-bag/modules/lib/liblc3)
    #
    CONFIG_ZEPHYR_LIBLC3_MODULE=y
    # end of liblc3 (/home/mpenate0/Documents/Work/Projects/transport-bag/modules/lib/liblc3)
    
    #
    # littlefs (/home/mpenate0/Documents/Work/Projects/transport-bag/modules/fs/littlefs)
    #
    CONFIG_ZEPHYR_LITTLEFS_MODULE=y
    # end of littlefs (/home/mpenate0/Documents/Work/Projects/transport-bag/modules/fs/littlefs)
    
    #
    # loramac-node (/home/mpenate0/Documents/Work/Projects/transport-bag/modules/lib/loramac-node)
    #
    CONFIG_ZEPHYR_LORAMAC_NODE_MODULE=y
    # CONFIG_HAS_SEMTECH_RADIO_DRIVERS is not set
    # end of loramac-node (/home/mpenate0/Documents/Work/Projects/transport-bag/modules/lib/loramac-node)
    
    #
    # lvgl (/home/mpenate0/Documents/Work/Projects/transport-bag/modules/lib/gui/lvgl)
    #
    CONFIG_ZEPHYR_LVGL_MODULE=y
    # end of lvgl (/home/mpenate0/Documents/Work/Projects/transport-bag/modules/lib/gui/lvgl)
    
    CONFIG_ZEPHYR_MIPI_SYS_T_MODULE=y
    CONFIG_ZEPHYR_NRF_HW_MODELS_MODULE=y
    CONFIG_ZEPHYR_OPEN_AMP_MODULE=y
    
    #
    # picolibc (/home/mpenate0/Documents/Work/Projects/transport-bag/modules/lib/picolibc)
    #
    # CONFIG_PICOLIBC_MODULE is not set
    CONFIG_ZEPHYR_PICOLIBC_MODULE=y
    # end of picolibc (/home/mpenate0/Documents/Work/Projects/transport-bag/modules/lib/picolibc)
    
    #
    # segger (/home/mpenate0/Documents/Work/Projects/transport-bag/modules/debug/segger)
    #
    CONFIG_ZEPHYR_SEGGER_MODULE=y
    CONFIG_HAS_SEGGER_RTT=y
    # CONFIG_USE_SEGGER_RTT is not set
    # end of segger (/home/mpenate0/Documents/Work/Projects/transport-bag/modules/debug/segger)
    
    CONFIG_ZEPHYR_TINYCRYPT_MODULE=y
    
    #
    # uoscore-uedhoc (/home/mpenate0/Documents/Work/Projects/transport-bag/modules/lib/uoscore-uedhoc)
    #
    CONFIG_ZEPHYR_UOSCORE_UEDHOC_MODULE=y
    # end of uoscore-uedhoc (/home/mpenate0/Documents/Work/Projects/transport-bag/modules/lib/uoscore-uedhoc)
    
    #
    # zcbor (/home/mpenate0/Documents/Work/Projects/transport-bag/modules/lib/zcbor)
    #
    CONFIG_ZEPHYR_ZCBOR_MODULE=y
    # CONFIG_ZCBOR is not set
    # end of zcbor (/home/mpenate0/Documents/Work/Projects/transport-bag/modules/lib/zcbor)
    
    #
    # nrfxlib (/home/mpenate0/Documents/Work/Projects/transport-bag/nrfxlib)
    #
    
    #
    # Nordic nrfxlib
    #
    
    #
    # nrf_modem (Modem library)
    #
    CONFIG_NRF_MODEM_SHMEM_CTRL_SIZE=0x4e8
    # end of nrf_modem (Modem library)
    
    # CONFIG_NFC_T2T_NRFXLIB is not set
    # CONFIG_NFC_T4T_NRFXLIB is not set
    CONFIG_MPSL_BUILD_TYPE_LIB=y
    CONFIG_MPSL_LIB_DIR="nrf53"
    CONFIG_MPSL_LIB_FLOAT_ABI_DIR="soft-float"
    
    #
    # Crypto libraries for nRF5x SOCs.
    #
    # CONFIG_NRF_OBERON is not set
    # CONFIG_NRF_CC310_BL is not set
    # end of Crypto libraries for nRF5x SOCs.
    
    # CONFIG_NRF_RPC is not set
    CONFIG_NRF_802154_SOURCE_NRFXLIB=y
    # CONFIG_GZLL is not set
    # CONFIG_NRF_DM is not set
    # CONFIG_NRF_FUEL_GAUGE is not set
    # end of Nordic nrfxlib
    
    CONFIG_ZEPHYR_NRFXLIB_MODULE=y
    # end of nrfxlib (/home/mpenate0/Documents/Work/Projects/transport-bag/nrfxlib)
    
    CONFIG_LIBMETAL=y
    CONFIG_LIBMETAL_SRC_PATH="libmetal"
    # CONFIG_LVGL is not set
    # CONFIG_HAS_MEC_HAL is not set
    # CONFIG_HAS_MPFS_HAL is not set
    # CONFIG_HAS_MEC5_HAL is not set
    CONFIG_OPENAMP=y
    CONFIG_OPENAMP_SRC_PATH="open-amp"
    CONFIG_OPENAMP_MASTER=y
    CONFIG_OPENAMP_SLAVE=y
    # CONFIG_MIPI_SYST_LIB is not set
    # CONFIG_HAS_TELINK_DRIVERS is not set
    # CONFIG_TINYCRYPT_CTR_PRNG is not set
    # CONFIG_TINYCRYPT_SHA256 is not set
    # CONFIG_TINYCRYPT_ECC_DH is not set
    # CONFIG_TINYCRYPT_ECC_DSA is not set
    CONFIG_TINYCRYPT_AES=y
    # CONFIG_TINYCRYPT_AES_CBC is not set
    # CONFIG_TINYCRYPT_AES_CTR is not set
    # CONFIG_TINYCRYPT_AES_CCM is not set
    # CONFIG_TINYCRYPT_AES_CMAC is not set
    # CONFIG_MCUBOOT_BOOTUTIL_LIB is not set
    
    #
    # Unavailable modules, please install those via the project manifest.
    #
    
    #
    # hal_gigadevice module not available.
    #
    
    #
    # Trusted-firmware-a module not available.
    #
    
    #
    # THRIFT module not available.
    #
    # CONFIG_ACPI is not set
    # end of Modules
    
    CONFIG_BOARD="transport_bag"
    CONFIG_BOARD_REVISION="C"
    CONFIG_BOARD_TARGET="transport_bag@C/nrf5340/cpunet"
    # CONFIG_NET_DRIVERS is not set
    CONFIG_BOARD_TRANSPORT_BAG=y
    CONFIG_BOARD_TRANSPORT_BAG_NRF5340_CPUNET=y
    CONFIG_BOARD_QUALIFIERS="nrf5340/cpunet"
    
    #
    # Board Options
    #
    # end of Board Options
    
    #
    # Hardware Configuration
    #
    CONFIG_SOC_FAMILY_NORDIC_NRF=y
    CONFIG_SOC_SERIES_NRF53X=y
    CONFIG_SOC_NRF5340_CPUNET=y
    CONFIG_SOC_NRF5340_CPUNET_QKAA=y
    # CONFIG_BUILD_OUTPUT_INFO_HEADER is not set
    CONFIG_HAS_HW_NRF_ACL=y
    CONFIG_HAS_HW_NRF_CCM=y
    CONFIG_HAS_HW_NRF_CCM_LFLEN_8BIT=y
    CONFIG_HAS_HW_NRF_CCM_HEADERMASK=y
    CONFIG_HAS_HW_NRF_CLOCK=y
    CONFIG_HAS_HW_NRF_DPPIC=y
    CONFIG_HAS_HW_NRF_ECB=y
    CONFIG_HAS_HW_NRF_EGU0=y
    CONFIG_HAS_HW_NRF_GPIO0=y
    CONFIG_HAS_HW_NRF_GPIO1=y
    CONFIG_HAS_HW_NRF_GPIOTE0=y
    CONFIG_HAS_HW_NRF_NVMC_PE=y
    CONFIG_HAS_HW_NRF_POWER=y
    CONFIG_HAS_HW_NRF_RADIO_BLE_2M=y
    CONFIG_HAS_HW_NRF_RADIO_BLE_CODED=y
    CONFIG_HAS_HW_NRF_RADIO_DFE=y
    CONFIG_HAS_HW_NRF_RADIO_IEEE802154=y
    CONFIG_HAS_HW_NRF_RNG=y
    CONFIG_HAS_HW_NRF_SWI0=y
    CONFIG_HAS_HW_NRF_SWI1=y
    CONFIG_HAS_HW_NRF_SWI2=y
    CONFIG_HAS_HW_NRF_SWI3=y
    CONFIG_HAS_HW_NRF_TEMP=y
    CONFIG_HAS_HW_NRF_TIMER1=y
    CONFIG_HAS_HW_NRF_TIMER2=y
    CONFIG_HAS_HW_NRF_UARTE0=y
    CONFIG_HAS_HW_NRF_VMC=y
    CONFIG_HAS_HW_NRF_WDT0=y
    # CONFIG_NRF_SYS_EVENT is not set
    CONFIG_SOC_NRF53_ANOMALY_160_WORKAROUND_NEEDED=y
    CONFIG_SOC_NRF53_ANOMALY_160_WORKAROUND=y
    CONFIG_SOC_NRF53_ANOMALY_168_WORKAROUND=y
    CONFIG_SOC_NRF53_RTC_PRETICK=y
    CONFIG_SOC_NRF53_RTC_PRETICK_IPC_CH_FROM_NET=10
    CONFIG_SOC_NRF53_RTC_PRETICK_IPC_CH_TO_NET=11
    CONFIG_NRF_ENABLE_CACHE=y
    # CONFIG_NRF53_SYNC_RTC is not set
    CONFIG_NRF_RTC_TIMER_USER_CHAN_COUNT=0
    # CONFIG_SOC_NRF54H20_GPD is not set
    CONFIG_NRF_SOC_SECURE_SUPPORTED=y
    CONFIG_NRF_APPROTECT_USE_UICR=y
    # CONFIG_NRF_APPROTECT_LOCK is not set
    # CONFIG_NRF_APPROTECT_USER_HANDLING is not set
    # CONFIG_NRF_TRACE_PORT is not set
    CONFIG_GPIO_INIT_PRIORITY=40
    # end of Hardware Configuration
    
    CONFIG_SOC_COMPATIBLE_NRF=y
    CONFIG_SOC_COMPATIBLE_NRF53X=y
    CONFIG_SOC_COMPATIBLE_NRF5340_CPUNET=y
    CONFIG_ARCH="arm"
    # CONFIG_EXTRA_EXCEPTION_INFO is not set
    CONFIG_ARCH_HAS_SINGLE_THREAD_SUPPORT=y
    CONFIG_CPU_CORTEX=y
    CONFIG_KOBJECT_TEXT_AREA=256
    CONFIG_ARM_MPU=y
    CONFIG_ARM_MPU_REGION_MIN_ALIGN_AND_SIZE=32
    # CONFIG_MPU_ALLOW_FLASH_WRITE is not set
    
    #
    # ARM Options
    #
    CONFIG_ARM_ON_ENTER_CPU_IDLE_HOOK=y
    CONFIG_ARM_ON_ENTER_CPU_IDLE_PREPARE_HOOK=y
    CONFIG_ARM_ON_EXIT_CPU_IDLE=y
    CONFIG_CPU_CORTEX_M=y
    # CONFIG_ARM_ZIMAGE_HEADER is not set
    CONFIG_ISA_THUMB2=y
    CONFIG_ASSEMBLER_ISA_THUMB2=y
    CONFIG_COMPILER_ISA_THUMB2=y
    CONFIG_STACK_ALIGN_DOUBLE_WORD=y
    # CONFIG_RUNTIME_NMI is not set
    # CONFIG_PLATFORM_SPECIFIC_INIT is not set
    CONFIG_FAULT_DUMP=2
    CONFIG_BUILTIN_STACK_GUARD=y
    CONFIG_ARM_STACK_PROTECTION=y
    CONFIG_FP16=y
    CONFIG_FP16_IEEE=y
    # CONFIG_FP16_ALT is not set
    CONFIG_CPU_CORTEX_M33=y
    CONFIG_CPU_CORTEX_M_HAS_SYSTICK=y
    CONFIG_CPU_CORTEX_M_HAS_DWT=y
    CONFIG_CPU_CORTEX_M_HAS_BASEPRI=y
    CONFIG_CPU_CORTEX_M_HAS_VTOR=y
    CONFIG_CPU_CORTEX_M_HAS_SPLIM=y
    CONFIG_CPU_CORTEX_M_HAS_PROGRAMMABLE_FAULT_PRIOS=y
    CONFIG_CPU_CORTEX_M_HAS_CMSE=y
    CONFIG_ARMV7_M_ARMV8_M_MAINLINE=y
    CONFIG_ARMV8_M_MAINLINE=y
    
    #
    # ARM Cortex-M0/M0+/M1/M3/M4/M7/M23/M33/M55 options
    #
    CONFIG_ZERO_LATENCY_IRQS=y
    CONFIG_ZERO_LATENCY_LEVELS=1
    # CONFIG_SW_VECTOR_RELAY is not set
    # CONFIG_CORTEX_M_DWT is not set
    # CONFIG_CORTEX_M_DEBUG_MONITOR_HOOK is not set
    # CONFIG_TRAP_UNALIGNED_ACCESS is not set
    # end of ARM Cortex-M0/M0+/M1/M3/M4/M7/M23/M33/M55 options
    
    CONFIG_NULL_POINTER_EXCEPTION_DETECTION_NONE=y
    # CONFIG_NULL_POINTER_EXCEPTION_DETECTION_DWT is not set
    # CONFIG_NULL_POINTER_EXCEPTION_DETECTION_MPU is not set
    # CONFIG_MPU_STACK_GUARD is not set
    # CONFIG_MPU_DISABLE_BACKGROUND_MAP is not set
    # CONFIG_CUSTOM_SECTION_ALIGN is not set
    CONFIG_CUSTOM_SECTION_MIN_ALIGN_SIZE=32
    CONFIG_HAS_SWO=y
    # end of ARM Options
    
    CONFIG_ARM=y
    CONFIG_ARCH_IS_SET=y
    
    #
    # General Architecture Options
    #
    # CONFIG_SEMIHOST is not set
    CONFIG_LITTLE_ENDIAN=y
    # CONFIG_USERSPACE is not set
    CONFIG_KOBJECT_DATA_AREA_RESERVE_EXTRA_PERCENT=100
    CONFIG_KOBJECT_RODATA_AREA_EXTRA_BYTES=16
    CONFIG_GEN_PRIV_STACKS=y
    # CONFIG_STACK_GROWS_UP is not set
    # CONFIG_FRAME_POINTER is not set
    
    #
    # Interrupt Configuration
    #
    CONFIG_ISR_TABLES_LOCAL_DECLARATION_SUPPORTED=y
    # CONFIG_ISR_TABLES_LOCAL_DECLARATION is not set
    CONFIG_IRQ_VECTOR_TABLE_JUMP_BY_ADDRESS=y
    # CONFIG_IRQ_VECTOR_TABLE_JUMP_BY_CODE is not set
    CONFIG_EXCEPTION_DEBUG=y
    # CONFIG_SIMPLIFIED_EXCEPTION_CODES is not set
    # end of Interrupt Configuration
    # end of General Architecture Options
    
    CONFIG_ARCH_HAS_TIMING_FUNCTIONS=y
    CONFIG_ARCH_HAS_STACK_PROTECTION=y
    CONFIG_ARCH_HAS_USERSPACE=y
    CONFIG_ARCH_HAS_EXECUTABLE_PAGE_BIT=y
    CONFIG_ARCH_HAS_RAMFUNC_SUPPORT=y
    CONFIG_ARCH_HAS_NESTED_EXCEPTION_DETECTION=y
    CONFIG_ARCH_SUPPORTS_COREDUMP=y
    CONFIG_ARCH_SUPPORTS_COREDUMP_THREADS=y
    CONFIG_ARCH_SUPPORTS_ARCH_HW_INIT=y
    CONFIG_ARCH_SUPPORTS_ROM_START=y
    CONFIG_ARCH_HAS_EXTRA_EXCEPTION_INFO=y
    CONFIG_ARCH_HAS_THREAD_LOCAL_STORAGE=y
    CONFIG_ARCH_HAS_SUSPEND_TO_RAM=y
    CONFIG_ARCH_HAS_THREAD_ABORT=y
    CONFIG_ARCH_HAS_CODE_DATA_RELOCATION=y
    CONFIG_CPU_HAS_MPU=y
    CONFIG_MPU=y
    CONFIG_MPU_REQUIRES_NON_OVERLAPPING_REGIONS=y
    CONFIG_MPU_GAP_FILLING=y
    CONFIG_SRAM_REGION_PERMISSIONS=y
    
    #
    # DSP Options
    #
    # end of DSP Options
    
    #
    # Floating Point Options
    #
    # end of Floating Point Options
    
    #
    # Cache Options
    #
    # end of Cache Options
    
    CONFIG_TOOLCHAIN_HAS_BUILTIN_FFS=y
    CONFIG_ARCH_HAS_CUSTOM_SWAP_TO_MAIN=y
    
    #
    # General Kernel Options
    #
    CONFIG_MULTITHREADING=y
    CONFIG_NUM_COOP_PRIORITIES=16
    CONFIG_NUM_PREEMPT_PRIORITIES=15
    CONFIG_MAIN_THREAD_PRIORITY=0
    CONFIG_COOP_ENABLED=y
    CONFIG_PREEMPT_ENABLED=y
    CONFIG_PRIORITY_CEILING=-127
    # CONFIG_SCHED_DEADLINE is not set
    CONFIG_THREAD_STACK_INFO=y
    # CONFIG_THREAD_CUSTOM_DATA is not set
    # CONFIG_DYNAMIC_THREAD is not set
    CONFIG_SCHED_DUMB=y
    # CONFIG_SCHED_SCALABLE is not set
    # CONFIG_SCHED_MULTIQ is not set
    # CONFIG_WAITQ_SCALABLE is not set
    CONFIG_WAITQ_DUMB=y
    
    #
    # Misc Kernel related options
    #
    CONFIG_LIBC_ERRNO=y
    CONFIG_ERRNO=y
    CONFIG_CURRENT_THREAD_USE_TLS=y
    # end of Misc Kernel related options
    
    #
    # Kernel Debugging and Metrics
    #
    CONFIG_BOOT_DELAY=0
    # CONFIG_BOOT_CLEAR_SCREEN is not set
    # CONFIG_THREAD_MONITOR is not set
    # CONFIG_THREAD_NAME is not set
    # CONFIG_THREAD_RUNTIME_STATS is not set
    # end of Kernel Debugging and Metrics
    
    # CONFIG_OBJ_CORE is not set
    
    #
    # System Work Queue Options
    #
    # CONFIG_SYSTEM_WORKQUEUE_NO_YIELD is not set
    # end of System Work Queue Options
    
    #
    # Barrier Operations
    #
    CONFIG_BARRIER_OPERATIONS_ARCH=y
    # end of Barrier Operations
    
    #
    # Atomic Operations
    #
    CONFIG_ATOMIC_OPERATIONS_BUILTIN=y
    # end of Atomic Operations
    
    #
    # Timer API Options
    #
    CONFIG_TIMESLICING=y
    CONFIG_TIMESLICE_PRIORITY=0
    # CONFIG_TIMESLICE_PER_THREAD is not set
    # end of Timer API Options
    
    #
    # Other Kernel Object Options
    #
    CONFIG_POLL=y
    # CONFIG_MEM_SLAB_TRACE_MAX_UTILIZATION is not set
    CONFIG_NUM_MBOX_ASYNC_MSGS=10
    # CONFIG_EVENTS is not set
    # CONFIG_PIPES is not set
    CONFIG_KERNEL_MEM_POOL=y
    # CONFIG_HEAP_MEM_POOL_IGNORE_MIN is not set
    # end of Other Kernel Object Options
    
    CONFIG_SWAP_NONATOMIC=y
    CONFIG_SYS_CLOCK_EXISTS=y
    CONFIG_TIMEOUT_64BIT=y
    CONFIG_SYS_CLOCK_MAX_TIMEOUT_DAYS=365
    
    #
    # Security Options
    #
    # CONFIG_STACK_CANARIES is not set
    CONFIG_STACK_POINTER_RANDOM=0
    # end of Security Options
    
    #
    # Memory Domains
    #
    CONFIG_ARCH_MEM_DOMAIN_SUPPORTS_ISOLATED_STACKS=y
    CONFIG_MEM_DOMAIN_ISOLATED_STACKS=y
    # end of Memory Domains
    
    #
    # SMP Options
    #
    CONFIG_MP_NUM_CPUS=1
    # CONFIG_TICKET_SPINLOCKS is not set
    # end of SMP Options
    
    CONFIG_TOOLCHAIN_SUPPORTS_THREAD_LOCAL_STORAGE=y
    CONFIG_THREAD_LOCAL_STORAGE=y
    CONFIG_TOOLCHAIN_SUPPORTS_STATIC_INIT_GNU=y
    # CONFIG_STATIC_INIT_GNU is not set
    # CONFIG_BOOTARGS is not set
    # end of General Kernel Options
    
    #
    # Device Options
    #
    # CONFIG_DEVICE_DEPS is not set
    # CONFIG_DEVICE_MUTABLE is not set
    # CONFIG_DEVICE_DT_METADATA is not set
    # end of Device Options
    
    #
    # Initialization Priorities
    #
    CONFIG_KERNEL_INIT_PRIORITY_OBJECTS=30
    CONFIG_KERNEL_INIT_PRIORITY_LIBC=35
    CONFIG_KERNEL_INIT_PRIORITY_DEFAULT=40
    CONFIG_KERNEL_INIT_PRIORITY_DEVICE=50
    CONFIG_APPLICATION_INIT_PRIORITY=90
    # end of Initialization Priorities
    
    #
    # Virtual Memory Support
    #
    # end of Virtual Memory Support
    
    #
    # SoC and Board Hooks
    #
    # CONFIG_SOC_PREP_HOOK is not set
    # CONFIG_SOC_EARLY_INIT_HOOK is not set
    # CONFIG_SOC_LATE_INIT_HOOK is not set
    # CONFIG_BOARD_EARLY_INIT_HOOK is not set
    # CONFIG_BOARD_LATE_INIT_HOOK is not set
    # end of SoC and Board Hooks
    
    #
    # Device Drivers
    #
    # CONFIG_ADC is not set
    # CONFIG_AUDIO is not set
    # CONFIG_AUXDISPLAY is not set
    # CONFIG_BBRAM is not set
    
    #
    # Bluetooth HCI Driver Options
    #
    CONFIG_BT_HCI_INIT_PRIORITY=50
    # CONFIG_HCI_NXP_SET_CAL_DATA_ANNEX100 is not set
    # CONFIG_FLASH is not set
    CONFIG_BT_DRV_TX_STACK_SIZE=256
    CONFIG_BT_DRV_RX_STACK_SIZE=256
    # CONFIG_CAN is not set
    # CONFIG_CHARGER is not set
    CONFIG_CLOCK_CONTROL_NRF_FORCE_ALT=y
    CONFIG_CLOCK_CONTROL_NRF=y
    # CONFIG_CLOCK_CONTROL_NRF_K32SRC_RC is not set
    CONFIG_CLOCK_CONTROL_NRF_K32SRC_XTAL=y
    # CONFIG_CLOCK_CONTROL_NRF_K32SRC_SYNTH is not set
    # CONFIG_CLOCK_CONTROL_NRF_K32SRC_500PPM is not set
    # CONFIG_CLOCK_CONTROL_NRF_K32SRC_250PPM is not set
    # CONFIG_CLOCK_CONTROL_NRF_K32SRC_150PPM is not set
    # CONFIG_CLOCK_CONTROL_NRF_K32SRC_100PPM is not set
    # CONFIG_CLOCK_CONTROL_NRF_K32SRC_75PPM is not set
    CONFIG_CLOCK_CONTROL_NRF_K32SRC_50PPM=y
    # CONFIG_CLOCK_CONTROL_NRF_K32SRC_30PPM is not set
    # CONFIG_CLOCK_CONTROL_NRF_K32SRC_20PPM is not set
    CONFIG_CLOCK_CONTROL_NRF_ACCURACY=50
    # CONFIG_CLOCK_CONTROL_FIXED_RATE_CLOCK is not set
    # CONFIG_COMPARATOR is not set
    CONFIG_CONSOLE_INPUT_MAX_LINE_LEN=128
    CONFIG_CONSOLE_INIT_PRIORITY=40
    # CONFIG_RAM_CONSOLE is not set
    # CONFIG_IPM_CONSOLE_SENDER is not set
    # CONFIG_IPM_CONSOLE_RECEIVER is not set
    # CONFIG_UART_MCUMGR is not set
    # CONFIG_EFI_CONSOLE is not set
    # CONFIG_COREDUMP_DEVICE is not set
    # CONFIG_CRYPTO is not set
    # CONFIG_DAC is not set
    # CONFIG_DAI is not set
    # CONFIG_DISK_DRIVERS is not set
    # CONFIG_DISPLAY is not set
    # CONFIG_DMA is not set
    # CONFIG_DP_DRIVER is not set
    # CONFIG_EDAC is not set
    # CONFIG_EEPROM is not set
    CONFIG_ENTROPY_GENERATOR=y
    CONFIG_ENTROPY_NRF5_RNG=y
    # CONFIG_ENTROPY_NRF5_BIAS_CORRECTION is not set
    CONFIG_ENTROPY_NRF5_THR_POOL_SIZE=8
    CONFIG_ENTROPY_NRF5_THR_THRESHOLD=4
    CONFIG_ENTROPY_NRF5_ISR_POOL_SIZE=16
    CONFIG_ENTROPY_NRF5_ISR_THRESHOLD=12
    CONFIG_ENTROPY_HAS_DRIVER=y
    # CONFIG_ESPI is not set
    
    #
    # Firmware drivers
    #
    # CONFIG_ARM_SCMI is not set
    # end of Firmware drivers
    
    # CONFIG_FPGA is not set
    # CONFIG_FUEL_GAUGE is not set
    # CONFIG_GNSS is not set
    # CONFIG_GPIO_GET_DIRECTION is not set
    # CONFIG_GPIO_GET_CONFIG is not set
    # CONFIG_GPIO_HOGS is not set
    # CONFIG_GPIO_ENABLE_DISABLE_INTERRUPT is not set
    CONFIG_GPIO_NRFX=y
    CONFIG_GPIO_NRFX_INTERRUPT=y
    # CONFIG_HAPTICS is not set
    # CONFIG_HWINFO is not set
    # CONFIG_HWSPINLOCK is not set
    # CONFIG_I2S is not set
    # CONFIG_I3C is not set
    
    #
    # Interrupt controller drivers
    #
    CONFIG_INTC_INIT_PRIORITY=40
    # end of Interrupt controller drivers
    
    # CONFIG_IPM is not set
    # CONFIG_KSCAN is not set
    # CONFIG_LED is not set
    # CONFIG_LED_STRIP is not set
    # CONFIG_LORA is not set
    CONFIG_MBOX=y
    CONFIG_MBOX_INIT_PRIORITY=40
    # CONFIG_MDIO is not set
    # CONFIG_MIPI_DBI is not set
    
    #
    # Miscellaneous Drivers
    #
    # CONFIG_TIMEAWARE_GPIO is not set
    # end of Miscellaneous Drivers
    
    # CONFIG_MM_DRV is not set
    # CONFIG_MSPI is not set
    # CONFIG_PCIE is not set
    # CONFIG_PCIE_ENDPOINT is not set
    # CONFIG_PECI is not set
    CONFIG_PINCTRL_STORE_REG=y
    # CONFIG_PINCTRL_DYNAMIC is not set
    CONFIG_PINCTRL_NRF=y
    # CONFIG_PM_CPU_OPS is not set
    # CONFIG_PS2 is not set
    # CONFIG_PTP_CLOCK is not set
    # CONFIG_PWM is not set
    # CONFIG_RETAINED_MEM is not set
    # CONFIG_RTC is not set
    # CONFIG_SDHC is not set
    # CONFIG_SMBUS is not set
    # CONFIG_STEPPER is not set
    
    #
    # Timer drivers
    #
    # CONFIG_TIMER_READS_ITS_FREQUENCY_AT_RUNTIME is not set
    # CONFIG_SYSTEM_CLOCK_SLOPPY_IDLE is not set
    CONFIG_SYSTEM_CLOCK_INIT_PRIORITY=0
    CONFIG_TICKLESS_CAPABLE=y
    CONFIG_SYSTEM_TIMER_HAS_DISABLE_SUPPORT=y
    CONFIG_NRF_RTC_TIMER_LOCK_ZERO_LATENCY_IRQS=y
    # CONFIG_NRF_RTC_TIMER_TRIGGER_OVERFLOW is not set
    # CONFIG_SYSTEM_CLOCK_NO_WAIT is not set
    # CONFIG_SYSTEM_CLOCK_WAIT_FOR_AVAILABILITY is not set
    CONFIG_SYSTEM_CLOCK_WAIT_FOR_STABILITY=y
    # end of Timer drivers
    
    # CONFIG_USB_BC12 is not set
    # CONFIG_UDC_DRIVER is not set
    # CONFIG_UHC_DRIVER is not set
    # CONFIG_UVB is not set
    # CONFIG_USB_DEVICE_DRIVER is not set
    # CONFIG_USBC_TCPC_DRIVER is not set
    # CONFIG_USBC_VBUS_DRIVER is not set
    # CONFIG_USBC_PPC_DRIVER is not set
    # CONFIG_VIDEO is not set
    # CONFIG_VIRTUALIZATION is not set
    # CONFIG_W1 is not set
    # CONFIG_TEE is not set
    # end of Device Drivers
    
    # CONFIG_REQUIRES_FULL_LIBC is not set
    # CONFIG_REQUIRES_FLOAT_PRINTF is not set
    CONFIG_FULL_LIBC_SUPPORTED=y
    CONFIG_MINIMAL_LIBC_SUPPORTED=y
    CONFIG_NEWLIB_LIBC_SUPPORTED=y
    CONFIG_PICOLIBC_SUPPORTED=y
    
    #
    # C Library
    #
    # CONFIG_MINIMAL_LIBC is not set
    CONFIG_PICOLIBC=y
    # CONFIG_NEWLIB_LIBC is not set
    # CONFIG_EXTERNAL_LIBC is not set
    CONFIG_HAS_NEWLIB_LIBC_NANO=y
    CONFIG_COMMON_LIBC_ABORT=y
    # CONFIG_COMMON_LIBC_ASCTIME_R is not set
    # CONFIG_COMMON_LIBC_CTIME_R is not set
    CONFIG_COMMON_LIBC_MALLOC=y
    CONFIG_COMMON_LIBC_CALLOC=y
    CONFIG_COMMON_LIBC_REALLOCARRAY=y
    # CONFIG_COMMON_LIBC_REMOVE is not set
    # CONFIG_PICOLIBC_USE_MODULE is not set
    CONFIG_PICOLIBC_USE_TOOLCHAIN=y
    # CONFIG_PICOLIBC_IO_FLOAT is not set
    CONFIG_PICOLIBC_IO_LONG_LONG=y
    CONFIG_NEED_LIBC_MEM_PARTITION=y
    # end of C Library
    
    #
    # C++ Language Support
    #
    # CONFIG_CPP is not set
    # end of C++ Language Support
    
    # CONFIG_CRC is not set
    
    #
    # Additional libraries
    #
    
    #
    # Hash Function Support
    #
    # CONFIG_SYS_HASH_FUNC32 is not set
    # end of Hash Function Support
    
    #
    # Hashmap (Hash Table) Support
    #
    # CONFIG_SYS_HASH_MAP is not set
    # end of Hashmap (Hash Table) Support
    
    #
    # Heap and Memory Allocation
    #
    # CONFIG_SYS_HEAP_VALIDATE is not set
    # CONFIG_SYS_HEAP_STRESS is not set
    # CONFIG_SYS_HEAP_INFO is not set
    CONFIG_SYS_HEAP_ALLOC_LOOPS=3
    # CONFIG_SYS_HEAP_RUNTIME_STATS is not set
    # CONFIG_SYS_HEAP_LISTENER is not set
    # CONFIG_SYS_HEAP_SMALL_ONLY is not set
    # CONFIG_SYS_HEAP_BIG_ONLY is not set
    CONFIG_SYS_HEAP_AUTO=y
    # CONFIG_MULTI_HEAP is not set
    # CONFIG_SHARED_MULTI_HEAP is not set
    # end of Heap and Memory Allocation
    
    #
    # Memory Blocks
    #
    # CONFIG_SYS_MEM_BLOCKS is not set
    # end of Memory Blocks
    
    CONFIG_NET_BUF=y
    # CONFIG_NET_BUF_LOG is not set
    # CONFIG_NET_BUF_POOL_USAGE is not set
    CONFIG_NET_BUF_ALIGNMENT=0
    
    #
    # OS Support Library
    #
    # CONFIG_FDTABLE is not set
    CONFIG_ZVFS_OPEN_MAX=4
    # CONFIG_PRINTK_SYNC is not set
    # CONFIG_MPSC_PBUF is not set
    # CONFIG_SPSC_PBUF is not set
    CONFIG_CBPRINTF_COMPLETE=y
    # CONFIG_CBPRINTF_NANO is not set
    CONFIG_CBPRINTF_FULL_INTEGRAL=y
    # CONFIG_CBPRINTF_REDUCED_INTEGRAL is not set
    # CONFIG_CBPRINTF_FP_SUPPORT is not set
    # CONFIG_CBPRINTF_FP_A_SUPPORT is not set
    # CONFIG_CBPRINTF_LIBC_SUBSTS is not set
    # CONFIG_CBPRINTF_PACKAGE_LONGDOUBLE is not set
    # CONFIG_CBPRINTF_STATIC_PACKAGE_CHECK_ALIGNMENT is not set
    CONFIG_CBPRINTF_CONVERT_CHECK_PTR=y
    # CONFIG_ZVFS is not set
    # end of OS Support Library
    
    #
    # POSIX API Support
    #
    
    #
    # POSIX Options
    #
    # CONFIG_POSIX_API is not set
    CONFIG_POSIX_AEP_CHOICE_NONE=y
    # CONFIG_POSIX_AEP_CHOICE_BASE is not set
    # CONFIG_POSIX_AEP_CHOICE_PSE51 is not set
    # CONFIG_POSIX_AEP_CHOICE_PSE52 is not set
    # CONFIG_POSIX_AEP_CHOICE_PSE53 is not set
    # CONFIG_POSIX_ASYNCHRONOUS_IO is not set
    # CONFIG_POSIX_BARRIERS is not set
    # CONFIG_POSIX_C_LANG_SUPPORT_R is not set
    # CONFIG_POSIX_C_LIB_EXT is not set
    
    #
    # POSIX device I/O
    #
    # CONFIG_POSIX_DEVICE_IO is not set
    CONFIG_POSIX_OPEN_MAX=4
    # end of POSIX device I/O
    
    # CONFIG_POSIX_FD_MGMT is not set
    # CONFIG_POSIX_FILE_SYSTEM is not set
    
    #
    # POSIX memory
    #
    CONFIG_POSIX_PAGE_SIZE=0x40
    # CONFIG_POSIX_SHARED_MEMORY_OBJECTS is not set
    # CONFIG_POSIX_MAPPED_FILES is not set
    # CONFIG_POSIX_MEMORY_PROTECTION is not set
    # end of POSIX memory
    
    # CONFIG_POSIX_MESSAGE_PASSING is not set
    # CONFIG_POSIX_SINGLE_PROCESS is not set
    # CONFIG_POSIX_MULTI_PROCESS is not set
    # CONFIG_POSIX_THREADS is not set
    # CONFIG_POSIX_READER_WRITER_LOCKS is not set
    
    #
    # POSIX scheduler options
    #
    # CONFIG_POSIX_PRIORITY_SCHEDULING is not set
    # end of POSIX scheduler options
    
    # CONFIG_POSIX_SEMAPHORES is not set
    
    #
    # POSIX signals
    #
    # CONFIG_POSIX_REALTIME_SIGNALS is not set
    # CONFIG_POSIX_SIGNALS is not set
    # end of POSIX signals
    
    # CONFIG_POSIX_SPIN_LOCKS is not set
    
    #
    # POSIX synchronized I/O
    #
    # CONFIG_POSIX_FSYNC is not set
    # CONFIG_POSIX_SYNCHRONIZED_IO is not set
    # end of POSIX synchronized I/O
    
    # CONFIG_POSIX_TIMERS is not set
    
    #
    # X/Open system interfaces
    #
    # CONFIG_XOPEN_STREAMS is not set
    # CONFIG_XSI_SYSTEM_LOGGING is not set
    # CONFIG_XSI_THREADS_EXT is not set
    # end of X/Open system interfaces
    
    #
    # Miscellaneous POSIX-related options
    #
    # CONFIG_EVENTFD is not set
    # end of Miscellaneous POSIX-related options
    
    #
    # Deprecated POSIX options
    #
    CONFIG_EVENTFD_MAX=0
    # CONFIG_FNMATCH is not set
    CONFIG_MAX_PTHREAD_COUNT=0
    CONFIG_MAX_PTHREAD_KEY_COUNT=0
    CONFIG_MAX_TIMER_COUNT=0
    CONFIG_MSG_COUNT_MAX=0
    # CONFIG_POSIX_CLOCK is not set
    # CONFIG_POSIX_FS is not set
    CONFIG_POSIX_LIMITS_RTSIG_MAX=0
    CONFIG_POSIX_MAX_FDS=4
    CONFIG_POSIX_MAX_OPEN_FILES=4
    # CONFIG_POSIX_MQUEUE is not set
    # CONFIG_POSIX_PUTMSG is not set
    # CONFIG_POSIX_SIGNAL is not set
    # CONFIG_POSIX_SYSCONF is not set
    # CONFIG_POSIX_UNAME is not set
    # CONFIG_PTHREAD is not set
    # CONFIG_PTHREAD_BARRIER is not set
    # CONFIG_PTHREAD_COND is not set
    # CONFIG_PTHREAD_IPC is not set
    # CONFIG_PTHREAD_KEY is not set
    # CONFIG_PTHREAD_MUTEX is not set
    # CONFIG_PTHREAD_RWLOCK is not set
    # CONFIG_PTHREAD_SPINLOCK is not set
    # CONFIG_TIMER is not set
    CONFIG_TIMER_DELAYTIMER_MAX=0
    CONFIG_SEM_NAMELEN_MAX=0
    CONFIG_SEM_VALUE_MAX=0
    # end of Deprecated POSIX options
    
    CONFIG_TC_PROVIDES_POSIX_C_LANG_SUPPORT_R=y
    # end of POSIX Options
    
    #
    # POSIX Shell Utilities
    #
    # end of POSIX Shell Utilities
    # end of POSIX API Support
    
    # CONFIG_OPENAMP_RSC_TABLE is not set
    # CONFIG_SMF is not set
    CONFIG_LIBGCC_RTLIB=y
    
    #
    # Utility Library
    #
    # CONFIG_JSON_LIBRARY is not set
    # CONFIG_RING_BUFFER is not set
    CONFIG_NOTIFY=y
    # CONFIG_BASE64 is not set
    CONFIG_ONOFF=y
    # CONFIG_WINSTREAM is not set
    # CONFIG_UTF8 is not set
    # end of Utility Library
    # end of Additional libraries
    
    #
    # Subsystems and OS Services
    #
    # CONFIG_BINDESC is not set
    CONFIG_BT=y
    CONFIG_BT_HCI=y
    # CONFIG_BT_CUSTOM is not set
    CONFIG_BT_HCI_RAW=y
    # CONFIG_BT_HCI_RAW_H4 is not set
    # CONFIG_BT_HCI_RAW_CMD_EXT is not set
    CONFIG_BT_CONN_TX=y
    # CONFIG_BT_SCA_UPDATE is not set
    # CONFIG_BT_TRANSMIT_POWER_CONTROL is not set
    # CONFIG_BT_PATH_LOSS_MONITORING is not set
    # CONFIG_BT_SUBRATING is not set
    # CONFIG_BT_ISO_PERIPHERAL is not set
    # CONFIG_BT_ISO_CENTRAL is not set
    # CONFIG_BT_ISO_BROADCASTER is not set
    # CONFIG_BT_ISO_SYNC_RECEIVER is not set
    
    #
    # Bluetooth buffer configuration
    #
    # end of Bluetooth buffer configuration
    
    #
    # Bluetooth Host
    #
    
    #
    # Bluetooth Classic Options
    #
    # end of Bluetooth Classic Options
    # end of Bluetooth Host
    
    CONFIG_BT_CTLR_ENTROPY_SUPPORT=y
    CONFIG_BT_CTLR_CRYPTO_SUPPORT=y
    CONFIG_BT_CTLR_LE_ENC_SUPPORT=y
    CONFIG_BT_CTLR_EXT_REJ_IND_SUPPORT=y
    CONFIG_BT_CTLR_DATA_LEN_UPDATE_SUPPORT=y
    CONFIG_BT_CTLR_PRIVACY_SUPPORT=y
    CONFIG_BT_CTLR_EXT_SCAN_FP_SUPPORT=y
    CONFIG_BT_CTLR_PHY_UPDATE_SUPPORT=y
    CONFIG_BT_CTLR_PHY_2M_SUPPORT=y
    CONFIG_BT_CTLR_PHY_CODED_SUPPORT=y
    CONFIG_BT_CTLR_ADV_EXT_SUPPORT=y
    CONFIG_BT_CTLR_ADV_PERIODIC_SUPPORT=y
    CONFIG_BT_CTLR_ADV_PERIODIC_RSP_SUPPORT=y
    CONFIG_BT_CTLR_SYNC_PERIODIC_SUPPORT=y
    CONFIG_BT_CTLR_SYNC_PERIODIC_RSP_SUPPORT=y
    CONFIG_BT_CTLR_SYNC_TRANSFER_SENDER_SUPPORT=y
    CONFIG_BT_CTLR_SYNC_TRANSFER_RECEIVER_SUPPORT=y
    CONFIG_BT_CTLR_ADV_ISO_SUPPORT=y
    CONFIG_BT_CTLR_SYNC_ISO_SUPPORT=y
    CONFIG_BT_CTLR_CENTRAL_ISO_SUPPORT=y
    CONFIG_BT_CTLR_PERIPHERAL_ISO_SUPPORT=y
    CONFIG_BT_CTLR_CHAN_SEL_2_SUPPORT=y
    CONFIG_BT_CTLR_SCA_UPDATE_SUPPORT=y
    CONFIG_BT_CTLR_CONN_RSSI_SUPPORT=y
    CONFIG_BT_CTLR_ECDH_SUPPORT=y
    CONFIG_BT_CTLR_LE_POWER_CONTROL_SUPPORT=y
    CONFIG_BT_CTLR_LE_PATH_LOSS_MONITORING_SUPPORT=y
    CONFIG_BT_CTLR_SUBRATING_SUPPORT=y
    # CONFIG_BT_LL_SW_SPLIT is not set
    
    #
    # BLE Controller configuration
    #
    CONFIG_BT_CTLR_ENTROPY=y
    CONFIG_BT_CTLR_CRYPTO=y
    CONFIG_BT_CTLR_TX_PWR_PLUS_3=y
    # CONFIG_BT_CTLR_TX_PWR_PLUS_2 is not set
    # CONFIG_BT_CTLR_TX_PWR_PLUS_1 is not set
    # CONFIG_BT_CTLR_TX_PWR_0 is not set
    # CONFIG_BT_CTLR_TX_PWR_MINUS_1 is not set
    # CONFIG_BT_CTLR_TX_PWR_MINUS_2 is not set
    # CONFIG_BT_CTLR_TX_PWR_MINUS_3 is not set
    # CONFIG_BT_CTLR_TX_PWR_MINUS_4 is not set
    # CONFIG_BT_CTLR_TX_PWR_MINUS_5 is not set
    # CONFIG_BT_CTLR_TX_PWR_MINUS_6 is not set
    # CONFIG_BT_CTLR_TX_PWR_MINUS_7 is not set
    # CONFIG_BT_CTLR_TX_PWR_MINUS_8 is not set
    # CONFIG_BT_CTLR_TX_PWR_MINUS_12 is not set
    # CONFIG_BT_CTLR_TX_PWR_MINUS_16 is not set
    # CONFIG_BT_CTLR_TX_PWR_MINUS_20 is not set
    # CONFIG_BT_CTLR_TX_PWR_MINUS_40 is not set
    CONFIG_BT_CTLR_TX_PWR_DBM=3
    CONFIG_BT_CTLR_TX_PWR_ANTENNA=0
    # CONFIG_BT_CTLR_TX_PWR_DYNAMIC_CONTROL is not set
    
    #
    # BLE Controller features
    #
    CONFIG_BT_CTLR_LE_ENC=y
    # CONFIG_BT_CTLR_ECDH is not set
    CONFIG_BT_CTLR_EXT_REJ_IND=y
    CONFIG_BT_CTLR_LE_PING=y
    CONFIG_BT_CTLR_PHY=y
    CONFIG_BT_CTLR_CONN_RSSI=y
    # CONFIG_BT_CTLR_LE_POWER_CONTROL is not set
    # CONFIG_BT_CTLR_LE_PATH_LOSS_MONITORING is not set
    CONFIG_BT_CTLR_FILTER_ACCEPT_LIST=y
    CONFIG_BT_CTLR_PRIVACY=y
    CONFIG_BT_CTLR_RL_SIZE=8
    CONFIG_BT_CTLR_EXT_SCAN_FP=y
    CONFIG_BT_CTLR_PHY_2M=y
    CONFIG_BT_CTLR_PHY_CODED=y
    CONFIG_BT_CTLR_CHAN_SEL_2=y
    # CONFIG_BT_CTLR_ADV_EXT is not set
    # CONFIG_BT_CTLR_SET_HOST_FEATURE is not set
    # CONFIG_BT_CTLR_CENTRAL_ISO is not set
    # CONFIG_BT_CTLR_PERIPHERAL_ISO is not set
    # CONFIG_BT_CTLR_SUBRATING is not set
    CONFIG_BT_CTLR_DF_CTE_TX_SUPPORT=y
    CONFIG_BT_CTLR_ASSERT_HANDLER=y
    # CONFIG_BT_CTLR_VS_SCAN_REQ_RX is not set
    # CONFIG_BT_EAD is not set
    
    #
    # Controller Area Network (CAN) bus subsystem
    #
    # end of Controller Area Network (CAN) bus subsystem
    
    # CONFIG_CONSOLE_SUBSYS is not set
    # CONFIG_DAP is not set
    
    #
    # System Monitoring Options
    #
    # CONFIG_THREAD_ANALYZER is not set
    # end of System Monitoring Options
    
    #
    # Debugging Options
    #
    # CONFIG_DEBUG is not set
    # CONFIG_STACK_USAGE is not set
    # CONFIG_STACK_SENTINEL is not set
    CONFIG_PRINTK=y
    CONFIG_EARLY_CONSOLE=y
    CONFIG_ASSERT_LEVEL=2
    CONFIG_SPIN_VALIDATE=y
    # CONFIG_FORCE_NO_ASSERT is not set
    CONFIG_ASSERT_VERBOSE=y
    # CONFIG_ASSERT_NO_FILE_INFO is not set
    # CONFIG_ASSERT_NO_COND_INFO is not set
    # CONFIG_ASSERT_NO_MSG_INFO is not set
    # CONFIG_ASSERT_TEST is not set
    # CONFIG_OVERRIDE_FRAME_POINTER_DEFAULT is not set
    CONFIG_DEBUG_INFO=y
    # CONFIG_DEBUG_THREAD_INFO is not set
    # CONFIG_DEBUG_COREDUMP is not set
    # CONFIG_SYMTAB is not set
    # end of Debugging Options
    
    # CONFIG_MIPI_STP_DECODER is not set
    # CONFIG_CS_TRACE_DEFMT is not set
    # CONFIG_DISK_ACCESS is not set
    # CONFIG_DSP is not set
    # CONFIG_EMUL is not set
    # CONFIG_CHARACTER_FRAMEBUFFER is not set
    
    #
    # File Systems
    #
    # CONFIG_FILE_SYSTEM is not set
    # CONFIG_ZMS is not set
    # end of File Systems
    
    #
    # Inter Processor Communication
    #
    # CONFIG_RPMSG_SERVICE is not set
    CONFIG_IPC_SERVICE=y
    CONFIG_IPC_SERVICE_REG_BACKEND_PRIORITY=46
    CONFIG_IPC_SERVICE_BACKEND_RPMSG=y
    CONFIG_IPC_SERVICE_BACKEND_RPMSG_WQ_STACK_SIZE=1024
    CONFIG_IPC_SERVICE_BACKEND_RPMSG_NUM_ENDPOINTS_PER_INSTANCE=2
    CONFIG_IPC_SERVICE_RPMSG=y
    CONFIG_IPC_SERVICE_STATIC_VRINGS=y
    CONFIG_IPC_SERVICE_STATIC_VRINGS_MEM_ALIGNMENT=4
    # CONFIG_IPC_SERVICE_ICMSG is not set
    # CONFIG_IPC_SERVICE_ICMSG_ME is not set
    # end of Inter Processor Communication
    
    # CONFIG_JWT is not set
    # CONFIG_LLEXT is not set
    
    #
    # Linkable loadable Extension Development Kit (EDK)
    #
    CONFIG_LLEXT_EDK_NAME="llext-edk"
    # CONFIG_LLEXT_EDK_USERSPACE_ONLY is not set
    # end of Linkable loadable Extension Development Kit (EDK)
    
    #
    # Logging
    #
    # CONFIG_LOG_OUTPUT is not set
    # end of Logging
    
    CONFIG_MEM_ATTR=y
    # CONFIG_MEM_ATTR_HEAP is not set
    
    #
    # Device Management
    #
    
    #
    # Host command handler subsystem
    #
    # CONFIG_EC_HOST_CMD is not set
    # end of Host command handler subsystem
    
    # CONFIG_OSDP is not set
    # end of Device Management
    
    # CONFIG_MODBUS is not set
    # CONFIG_MODEM_MODULES is not set
    
    #
    # Networking
    #
    # CONFIG_NETWORKING is not set
    # end of Networking
    
    #
    # Power Management
    #
    # CONFIG_PM_POLICY_LATENCY_STANDALONE is not set
    # end of Power Management
    
    #
    # Portability
    #
    # end of Portability
    
    # CONFIG_PROFILING is not set
    
    #
    # Random Number Generators
    #
    # CONFIG_TEST_RANDOM_GENERATOR is not set
    CONFIG_TIMER_RANDOM_INITIAL_STATE=123456789
    CONFIG_ENTROPY_DEVICE_RANDOM_GENERATOR=y
    # CONFIG_XOSHIRO_RANDOM_GENERATOR is not set
    CONFIG_CSPRNG_ENABLED=y
    CONFIG_HARDWARE_DEVICE_CS_GENERATOR=y
    # CONFIG_CTR_DRBG_CSPRNG_GENERATOR is not set
    # end of Random Number Generators
    
    # CONFIG_RTIO is not set
    
    #
    # SD
    #
    # CONFIG_MMC_STACK is not set
    # CONFIG_SDMMC_STACK is not set
    # CONFIG_SDIO_STACK is not set
    # end of SD
    
    # CONFIG_SETTINGS is not set
    # CONFIG_SHELL is not set
    # CONFIG_STATS is not set
    
    #
    # Storage
    #
    # CONFIG_STREAM_FLASH is not set
    # end of Storage
    
    # CONFIG_TASK_WDT is not set
    
    #
    # Testing
    #
    # CONFIG_ZTEST is not set
    # CONFIG_ZTEST_MOCKING is not set
    # CONFIG_ZTRESS is not set
    # CONFIG_TEST is not set
    # CONFIG_FORCE_COVERAGE is not set
    # CONFIG_TEST_USERSPACE is not set
    # end of Testing
    
    # CONFIG_TIMING_FUNCTIONS is not set
    # CONFIG_TRACING is not set
    # CONFIG_USB_DEVICE_STACK is not set
    # CONFIG_USB_DEVICE_STACK_NEXT is not set
    # CONFIG_USB_HOST_STACK is not set
    # CONFIG_USBC_STACK is not set
    # CONFIG_ZBUS is not set
    # CONFIG_MODULES is not set
    # end of Subsystems and OS Services
    
    CONFIG_TOOLCHAIN_ZEPHYR_0_16=y
    CONFIG_TOOLCHAIN_ZEPHYR_SUPPORTS_THREAD_LOCAL_STORAGE=y
    
    #
    # Build and Link Features
    #
    
    #
    # Linker Options
    #
    # CONFIG_LINKER_ORPHAN_SECTION_PLACE is not set
    CONFIG_LINKER_ORPHAN_SECTION_WARN=y
    # CONFIG_LINKER_ORPHAN_SECTION_ERROR is not set
    CONFIG_ROM_END_OFFSET=0
    CONFIG_LD_LINKER_SCRIPT_SUPPORTED=y
    CONFIG_LD_LINKER_TEMPLATE=y
    # CONFIG_CMAKE_LINKER_GENERATOR is not set
    # CONFIG_HAVE_CUSTOM_LINKER_SCRIPT is not set
    CONFIG_LINKER_SORT_BY_ALIGNMENT=y
    
    #
    # Linker Sections
    #
    # CONFIG_LINKER_USE_BOOT_SECTION is not set
    # CONFIG_LINKER_USE_PINNED_SECTION is not set
    CONFIG_LINKER_GENERIC_SECTIONS_PRESENT_AT_BOOT=y
    CONFIG_LINKER_LAST_SECTION_ID=y
    CONFIG_LINKER_LAST_SECTION_ID_PATTERN=0xE015E015
    CONFIG_LINKER_USE_RELAX=y
    # end of Linker Sections
    
    CONFIG_LINKER_ITERABLE_SUBALIGN=4
    CONFIG_LINKER_DEVNULL_SUPPORT=y
    # CONFIG_LINKER_DEVNULL_MEMORY is not set
    # end of Linker Options
    
    #
    # Compiler Options
    #
    # CONFIG_STD_C90 is not set
    CONFIG_STD_C99=y
    # CONFIG_STD_C11 is not set
    # CONFIG_STD_C17 is not set
    # CONFIG_STD_C23 is not set
    CONFIG_TOOLCHAIN_SUPPORTS_GNU_EXTENSIONS=y
    # CONFIG_GNU_C_EXTENSIONS is not set
    # CONFIG_CODING_GUIDELINE_CHECK is not set
    # CONFIG_COMPILER_FREESTANDING is not set
    CONFIG_SIZE_OPTIMIZATIONS=y
    # CONFIG_SIZE_OPTIMIZATIONS_AGGRESSIVE is not set
    # CONFIG_SPEED_OPTIMIZATIONS is not set
    # CONFIG_DEBUG_OPTIMIZATIONS is not set
    # CONFIG_NO_OPTIMIZATIONS is not set
    # CONFIG_COMPILER_WARNINGS_AS_ERRORS is not set
    # CONFIG_COMPILER_SAVE_TEMPS is not set
    CONFIG_COMPILER_TRACK_MACRO_EXPANSION=y
    CONFIG_COMPILER_COLOR_DIAGNOSTICS=y
    # CONFIG_FORTIFY_SOURCE_NONE is not set
    CONFIG_FORTIFY_SOURCE_COMPILE_TIME=y
    # CONFIG_FORTIFY_SOURCE_RUN_TIME is not set
    CONFIG_COMPILER_OPT=""
    # CONFIG_MISRA_SANE is not set
    # end of Compiler Options
    
    # CONFIG_ASSERT_ON_ERRORS is not set
    # CONFIG_NO_RUNTIME_CHECKS is not set
    CONFIG_RUNTIME_ERROR_CHECKS=y
    
    #
    # Build Options
    #
    CONFIG_KERNEL_BIN_NAME="zephyr"
    CONFIG_OUTPUT_STAT=y
    # CONFIG_OUTPUT_SYMBOLS is not set
    # CONFIG_OUTPUT_DISASSEMBLY is not set
    CONFIG_OUTPUT_PRINT_MEMORY_USAGE=y
    # CONFIG_CLEANUP_INTERMEDIATE_FILES is not set
    # CONFIG_BUILD_OUTPUT_EXE is not set
    # CONFIG_BUILD_OUTPUT_S19 is not set
    # CONFIG_BUILD_OUTPUT_UF2 is not set
    # CONFIG_BUILD_OUTPUT_STRIPPED is not set
    # CONFIG_BUILD_OUTPUT_COMPRESS_DEBUG_SECTIONS is not set
    # CONFIG_BUILD_ALIGN_LMA is not set
    # CONFIG_APPLICATION_DEFINED_SYSCALL is not set
    # CONFIG_MAKEFILE_EXPORTS is not set
    # CONFIG_BUILD_OUTPUT_META is not set
    CONFIG_BUILD_OUTPUT_STRIP_PATHS=y
    CONFIG_CHECK_INIT_PRIORITIES=y
    # CONFIG_EMIT_ALL_SYSCALLS is not set
    # end of Build Options
    
    CONFIG_WARN_DEPRECATED=y
    CONFIG_EXPERIMENTAL=y
    CONFIG_ENFORCE_ZEPHYR_STDINT=y
    # end of Build and Link Features
    
    #
    # Boot Options
    #
    # CONFIG_IS_BOOTLOADER is not set
    # CONFIG_BOOTLOADER_BOSSA is not set
    # end of Boot Options
    
    #
    # Compatibility
    #
    CONFIG_LEGACY_GENERATED_INCLUDE_PATH=y
    # end of Compatibility
    

    Our application has:
    CONFIG_BT_BUF_ACL_TX_COUNT=10
    CONFIG_BT_BUF_CMD_TX_SIZE=65
    CONFIG_BT_BUF_EVT_RX_SIZE=68
    CONFIG_BT_BUF_ACL_TX_SIZE=27
    CONFIG_BT_BUF_ACL_RX_SIZE=1536
    CONFIG_BT_L2CAP_TX_MTU=1536

    Let me know how we can further assist debugging,
    --Jeff

  • Jeff,

    This is unfortunate and not what I had hoped for. It seems we were only able to partially resolve this issue in this release. As a possible workaround, would it be an option to call bt_conn_disconnect(<conn object>, BT_HCI_ERR_REMOTE_USER_TERM_CONN) when this error is raised (even though the link will already have been terminated by the controller at this point)? This should allow the host to free the connection object. Potential drawback of this workaround is that it could cause a valid link to be disconnected if another advertiser starts advertising with the same address. This may not be likely, but it’s something to consider.

    Vidar

Reply
  • Jeff,

    This is unfortunate and not what I had hoped for. It seems we were only able to partially resolve this issue in this release. As a possible workaround, would it be an option to call bt_conn_disconnect(<conn object>, BT_HCI_ERR_REMOTE_USER_TERM_CONN) when this error is raised (even though the link will already have been terminated by the controller at this point)? This should allow the host to free the connection object. Potential drawback of this workaround is that it could cause a valid link to be disconnected if another advertiser starts advertising with the same address. This may not be likely, but it’s something to consider.

    Vidar

Children
  • Vidar,

    Since the disconnected callback isn't raised, we don't know when to issue this disconnect -- the peripheral device is multi-connection, so advertising packets come out during a valid connection, so we can't just rely on the connect failing due to seeing a device that's already connected.

    We would have to implement application layer pinging as an additional supervisor timeout. I don't think this fits into our primary cell power budget on the peripheral.

    I guess our only option is to go back to the Zephyr split controller until Nordic fixes this IPC?

    --Jeff


  • Jeff,

    Does the peripheral use different addresses for its advertisements? If not, what could be triggering the central device to reconnect to the peripheral when it has not received a disconnect callback? Another approach might be to use write or notify with callbacks and trigger a disconnect if the callback is not received within a certain time. I would not expect this to have a noticeable impact on your power budget.

    As I understand from the developers, the proper fix for this will likely require additional changes to the controller itself.

    Vidar

  • Vidar,

    I think there's a small misunderstanding.
    The Central device wrongly stays in a "connected state" when the link should have been terminated due to missing Link Layer packets.

    1) Central connects to peripheral
    2) DTLS over NUS until handshake is completed. NUS data stops. Only thing going is LL packets.
    3) Battery is pulled on peripheral device (proxy for real world disconnect due to range)
    4) Supervision timeout does not hit after 6 seconds. Wait around 30s-1 minute at this point.
    5) Battery is replaced, device advertises (with same address)
    6) Central tries to reconnect to the device but bt_conn_le_create fails with -22 because bt_conn_exists_le fails and prints "<wrn> ble_conn: Found valid connection (0x2000f540) with address F1:61:8:6E:9A:B2 (random) in connected state.

    This prevents reconnecting to the peripheral device because internally there is still a conn found by bt_conn_lookup_addr_le where the state is still connected in some combination of the host/controller, even though it has not gotten any connection LL packets past the supervision timeout.

    The nRF52 peripheral correctly gets the supervision timeout in all real world (non-battery-pull) cases.

    I appreciate the suggestions, and some methods like failing a GATT write from the controller might cause a disconnect after a timeout (30s, but recently configurable iirc), but we're in a bluetooth proximity tethering application that requires being fast acting, so actually getting the supervision timeout disconnected event is ideal.

    Happy to clarify further, also available on the Zephyr Discord (Jeff Welder) if that line of communication proves more efficient,
    --Jeff

  • Jeff,

    JeffW said:
    I think there's a small misunderstanding.
    The Central device wrongly stays in a "connected state" when the link should have been terminated due to missing Link Layer packets.

    I was wondering what prompted the central to reconnect when it still believed it was connected to the peripheral. However, I had a single link GAP central in mind when I asked this. For a multi-link central, you would continue scanning after the connection has been established, so I think this part makes sense now.

    As a workaround, would it make sense to check if you already have a valid connection for a given address before calling bt_conn_le_create()? This seems like an easy way to detect a missed disconnect event. You could then call bt_conn_disconnect() on the stale connection object to attempt to free it before establishing the connection again.

    JeffW said:
    Only thing going is LL packets.

    The flow control bug we attempted to address in v2.8.0 should only occur when the stack needs to wait on resources (buffers) to be freed and is not expected to happen during low BLE traffic.

    Vidar

  • Vidar,

    I appreciate the suggestions, but both the central and peripheral are multi-connection. Unfortunately due to this topology, just because the peripheral is advertising again does not mean that the central missed a disconnect event.

    The connection pointer needs to have the correct state. I don't know how the supervision timeout does not get processed when almost nothing besides scanning is happening.

    For the time being we're using the Split LL again, but ideally we move back to Nordic for a more familiar path to SIG certification.

    --Jeff

Related