lte_lc: Failed to set functional mode. Please check XSYSTEMMODE nrf9160

I'm checking the function by uploading the code to the pcb that uploaded the nrf9160 chip.

I checked that the network communication is normal on the previous 9160dk board.

As a result of uploading the code to the custom board and trying again, it has been confirmed that there is a problem with the modem as shown below.

[00:01:21.507,904] <err> lte_lc: Failed to subscribe to CEREG notifications, error: 65536
[00:01:21.507,904] <err> lte_lc: Failed to enable notifications, error: -14
[00:01:21.507,904] <err> nrf_modem_lib_netif: lte_lc_func_mode_set, error: -14
[00:01:21.507,934] <inf> NRFX_EXAMPLE: conn_mgr_all_if_connect, error: -14
[00:01:31.515,136] <err> nrf_modem_lib_netif: Modem error: 0xfff, PC: 0x0
[00:01:31.515,167] <err> lte_lc: Failed to set functional mode. Please check XSYSTEMMODE.
[00:01:31.515,167] <err> nrf_modem_lib_netif: lte_lc_func_mode_set, error: -14
Fatal error received from the connectivity layer
getaddrinfo() failed, err -11
[00:01:33.515,350] <err> lte_lc: Failed to set functional mode. Please check XSYSTEMMODE.
[00:01:33.515,380] <err> nrf_modem_lib_netif: lte_lc_func_mode_set, error: -14
[00:01:33.515,411] <inf> NRFX_EXAMPLE: conn_mgr_all_if_disconnect, error: -14

I don't know how to change the uart pin and see if the modem's firmware is the problem.

It would be nice if you could give me some advice.

Thank you.

Parents
  • Thank you for your response.

    Currently, the SIM slot connection on the personal PCB is as follows.

    In that structure
    Can't I use the normal lte library?

    and also i try this code

    char response[128];
        LOG_INF("*********************************************************************");
        err = nrf_modem_at_cmd(response, sizeof(response), "AT");
        if (err == 0) {
            LOG_INF("Network Registration Status: %s", response);
        } else {
            LOG_ERR("Failed to get network registration status");
        }
        LOG_INF("Resetting LTE modem...");
        nrf_modem_at_cmd(response, sizeof(response), "AT+CFUN=4"); 
        k_sleep(K_SECONDS(2));  // wait
        nrf_modem_at_cmd(response, sizeof(response), "AT+CFUN=1");
        LOG_INF("LTE modem reset complete.");
        err = nrf_modem_at_cmd(response, sizeof(response), "AT+CFUN?");
        if (err == 0) {
            LOG_INF("LTE Functionality Mode: %s", response);
        } else {
            LOG_ERR("Failed to check LTE mode");
        }

     LOG_INF("*********************************************************************");

    [00:00:00.390,808] <inf> http_client: HTTP client sample started
    [00:00:00.390,838] <inf> http_client: Checking SIM card presence...
    [00:00:00.390,838] <inf> http_client: Bringing network interface up
    [00:00:00.390,869] <err> lte_lc: nrf_modem_at_printf failed, reported error: -1
    [00:00:00.390,869] <err> lte_lc: Failed to subscribe to CEREG notifications, error: -1
    [00:00:00.390,869] <err> lte_lc: Failed to enable notifications, error: -14
    [00:00:05.390,960] <inf> http_client: *********************************************************************
    [00:00:05.390,991] <err> http_client: Failed to get network registration status
    [00:00:05.390,991] <inf> http_client: Resetting LTE modem...
    [00:00:07.391,082] <inf> http_client: LTE modem reset complete.
    [00:00:07.391,113] <err> http_client: Failed to check LTE mode
    [00:00:07.391,113] <inf> http_client: *********************************************************************

    Then, should I make a new transfer code?

  • What modem FW version are you running on your nRF9160?

    Did you try with the AT client alone?

    Have you verified that the SIM connections are soldered correctly i.e. measure the signals on your device?

  •  thanks for notifying, I have received your ticket that you registered. As yours is related to nRF9151 I will provide an answer to you in the ticket. 

    Kind regards,
    Øyvind

  • Sorry for the late reply.

    First of all, there was a p0.14 p0.13 uart pin, so I opened the uart pin.
    The test was carried out using the serial lte modem code using the AT command. However, unlike the previous development board where the AT command was executed, it was found that the following strange characters were continuously printed in the serial monitor window.

    In addition, I confirmed that the Ready phrase is output when I look at the phrase output through the at_client.

    I don't have a clue what the problem is yet. Is there any other way to check?

  • park jae wan said:
    I confirmed that the Ready phrase is output when I look at the phrase output through the at_client.

    Are you able to send commands to your device? Try with the following commands

    AT%XSYSTEMMODE=1,0,1,0 

    AT+CFUN=1

  • thank you for answer 

    Suddenly, I checked the OK message to see if the uart AT command was transmitted.

    So I tried the command you sent,

    AT
    OK
    AT%XSYSTEMMODE=1,0,1,0

    OK
    AT+CFUN=1
    ERROR

    I got the following results.

    why AT+CFUN=1 ERROR appeared?

    is that fw version problem?

  • Using the same application, what does this command return? AT+CGSN=1

Reply Children
Related