DFU using BLE stops working when migrating from SDK version 2.9.1 to 3.2.4

Hi,

We have an application where we have a working DFU over BLE with SDK 2.9.1 but once we have migrated to 3.2.4 it has stopped working. Something has obviously changed between those versions, but what do we need to change in order for it to work?

Best regards

Parents Reply Children
  • Sorry for the late reply Anders, 

    The MTU/buffer settings are likely relevant. 

    The web client you are using sends relatively large SMP writes and does not seem to be adapting as well as nRF Connect. Can you please try BLE SMP settings as the current smp_svr sample?

    CONFIG_MCUMGR_TRANSPORT_BT_PERM_RW=y
    CONFIG_MCUMGR_TRANSPORT_BT_REASSEMBLY=y
    CONFIG_MCUMGR_TRANSPORT_NETBUF_SIZE=2475 
    CONFIG_MCUMGR_GRP_OS_MCUMGR_PARAMS=y
    CONFIG_BT_L2CAP_TX_MTU=498
    CONFIG_BT_BUF_ACL_RX_SIZE=502
    CONFIG_BT_BUF_ACL_TX_SIZE=502
    CONFIG_BT_CTLR_DATA_LENGTH_MAX=251

    If authentication is not intended then CONFIG_MCUMGR_TRANSPORT_BT_PERM_RW=y is important since the default might be requiring authentication.

  • Changed some numbers

    CONFIG_BT_L2CAP_TX_MTU=517
    CONFIG_BT_BUF_ACL_TX_SIZE=521
    CONFIG_BT_BUF_ACL_RX_SIZE=521

    But yes, it worked - thanks!
Related