This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

FOTA with NB-IoT failing

Hi community

I'm trying to evaluate the possibilities of an application update over the air via NB-Iot. According to this post this should be possible.

I'm using the application_update example with the nRF9160-DK (B1).

The example works fine with LTE-M and is able to download the update.

In the prj.conf I changed the defaults for the fragment size (2048 B) and the network mode (LTE-M) to 512 B and NB-IoT by adding the following lines:

CONFIG_DOWNLOAD_CLIENT_HTTP_FRAG_SIZE_512=y
CONFIG_LTE_NETWORK_MODE_NBIOT=y

The code compiles and the LTE Link does connect. It also connects to the server but then it fails with the error 116, see below:

*** Booting Zephyr OS build v2.6.99-ncs1  ***
HTTP application update sample started
LTE Link Connecting ...
LTE Link Connected!
Press Button 1 to perform application firmware update
I: Configuring socket timeout (30 s)
I: Connecting to hidden-url.com
I: Downloading: FOTA/app_update.bin [0]
E: Error in recv(), errno 116
E: Download client error
Received error from fota_download

Does anyone have an idea whats wrong here?

Thanks!

Simon

Parents
  • Hi Simon,

    I find some discussion mentioned that Swisccom does not enable the APN correction on its network that means the user needs to specify the correct APN in the device.I guess this might be the cause of the problem. Please try to add the following lines to the configuration file:

    CONFIG_PDN_SYS_INIT=y
    CONFIG_PDN=y
    CONFIG_PDN_DEFAULTS_OVERRIDE=y
    CONFIG_PDN_DEFAULT_APN="1\"IP\",\"globaldata.net\""

    Regarding TCP over NB-IoT, while NB-IoT supports both TCP and UDP as transport protocols. However, TCP is sensitive to delays and packet losses during data transmission. If you compare the feature of LTE-M and NB-IoT,  "TCP over NB-IoT" is not a good practice on TCP/MQTT, TCP/HTTP/FOTA solution, you should use LTE-M as your first option.

    Best regards,

    Charlie

Reply
  • Hi Simon,

    I find some discussion mentioned that Swisccom does not enable the APN correction on its network that means the user needs to specify the correct APN in the device.I guess this might be the cause of the problem. Please try to add the following lines to the configuration file:

    CONFIG_PDN_SYS_INIT=y
    CONFIG_PDN=y
    CONFIG_PDN_DEFAULTS_OVERRIDE=y
    CONFIG_PDN_DEFAULT_APN="1\"IP\",\"globaldata.net\""

    Regarding TCP over NB-IoT, while NB-IoT supports both TCP and UDP as transport protocols. However, TCP is sensitive to delays and packet losses during data transmission. If you compare the feature of LTE-M and NB-IoT,  "TCP over NB-IoT" is not a good practice on TCP/MQTT, TCP/HTTP/FOTA solution, you should use LTE-M as your first option.

    Best regards,

    Charlie

Children
Related