Can't add a device to nRF Cloud

Hello,

I’m unable to onboard a Thingy:91 to nRF Cloud.

Context:

  • Hardware: Thingy:91 (nRF9160)
  • SDK: nRF Connect SDK 2.7.0
  • Application: Asset Tracker v2 (default MQTT configuration)
  • Account: personal account (role shows “dev” in the app)

Symptoms:

  1. In the nRF Cloud UI (Devices), clicking Add device redirects to documentation instead of showing the form:
    Redirect URL: https://docs.nordicsemi.com/bundle/nrf-cloud/page/GettingStarted.html#adding-a-device-to-your-account
  2. Adding via API fails:
  • POST https://api.nrfcloud.com/v1/devices
  • Content‑Type: text/csv
  • Response: {"code":40000,"message":"Invalid CSV format."}
  1. Attempt with JSON returns:
  • {"code":41500,"message":"Unsupported media type."}

What I tried:

  • Created a simple CSV with header imei,pin and one line IMEI,PIN
  • Sent it as text/csv via PowerShell (Invoke‑RestMethod)
  • Verified that the device should use factory certificates (no API‑generated certs)

Questions:

  • Is the Add device button currently broken or restricted by roles/teams?
  • What is the exact CSV format expected by /v1/devices (current official example)?
  • Is there an alternate UI/API flow recommended to onboard nRF91 devices (IMEI+PIN)?

I can provide:

  • IMEI and PIN
  • Full API responses (without exposing keys here)
  • Modem/cloud logs (CLOUD_EVT_* / MODEM_EVT_*)

Thank you for your help.

Best regards,

Parents
  • Hello, I will need to discuss with our nRF Cloud team. There seems to be a change in how to register a device. 

    Kind regards,
    Øyvind

  • Hello, 

    Redirect URL: https://docs.nordicsemi.com/bundle/nrf-cloud/page/GettingStarted.html#adding-a-device-to-your-account

    What steps did you follow here? Could you please provide more information on what you

    Adding via API fails:

    Did you follow information from the API Onboard Devices?

    I can provide:

    Please provide application logs from the Asset Tracker v2 application.

    Kind regards,
    Øyvind

  • Thanks for the quick response.

    Redirect URL / steps followed
    I went to Devices in the nRF Cloud UI and clicked Add device. Instead of opening the add‑device form, I’m redirected to the documentation page:
    docs.nordicsemi.com/.../GettingStarted.html
    This happens consistently in my account.

    API onboarding
    Yes, I followed the API “Onboard Devices” documentation.

    • POST api.nrfcloud.com/.../devices
    • Tried Content-Type: application/json → received 415 Unsupported media type
    • Tried Content-Type: text/csv with CSV imei,pin + one line IMEI,PIN → received {"code":40000,"message":"Invalid CSV format."}

    If you have a current, working CSV example for this endpoint, I can try it immediately.

    Logs
    Here is what Asset Tracker v2 is sending:

    [00:00:11.674,224] <inf> app_event_manager: SENSOR_EVT_MOVEM
    ENT_ACTIVITY_DETECTED
    %CESQ: 55,2,22,3
    %CESQ: 55,2,17,2
    %CESQ: 55,2,22,3
    +CSCON: 0
    %CESQ: 54,2,15,2
    %CESQ: 46,2,18,2
    [00:00:24.283,416] <inf> app_event_manager: CLOUD_EVT_DATA_S
    END_QOS
    %CESQ: 53,2,20,2
    +CSCON: 1
    +CSCON: 0
    %CESQ: 44,2,13,1
    [00:00:40.283,538] <inf> app_event_manager: CLOUD_EVT_DATA_S
    END_QOS
    %CESQ: 54,2,19,2
    +CSCON: 1
    %CESQ: 55,2,24,3
    %CESQ: 55,2,19,2
    +CSCON: 0
    %CESQ: 42,2,17,2
    %CESQ: 43,2,11,1
    %CESQ: 54,2,12,1
    +CSCON: 1

    Could you confirm which log window you need (from boot until the failure, or full log until cloud connect attempt)?

    I am a full beginner in nRF Cloud and nRF kits.

    Thanks again for your help.

    Best regards,

    Dayane MAHATHY

Reply
  • Thanks for the quick response.

    Redirect URL / steps followed
    I went to Devices in the nRF Cloud UI and clicked Add device. Instead of opening the add‑device form, I’m redirected to the documentation page:
    docs.nordicsemi.com/.../GettingStarted.html
    This happens consistently in my account.

    API onboarding
    Yes, I followed the API “Onboard Devices” documentation.

    • POST api.nrfcloud.com/.../devices
    • Tried Content-Type: application/json → received 415 Unsupported media type
    • Tried Content-Type: text/csv with CSV imei,pin + one line IMEI,PIN → received {"code":40000,"message":"Invalid CSV format."}

    If you have a current, working CSV example for this endpoint, I can try it immediately.

    Logs
    Here is what Asset Tracker v2 is sending:

    [00:00:11.674,224] <inf> app_event_manager: SENSOR_EVT_MOVEM
    ENT_ACTIVITY_DETECTED
    %CESQ: 55,2,22,3
    %CESQ: 55,2,17,2
    %CESQ: 55,2,22,3
    +CSCON: 0
    %CESQ: 54,2,15,2
    %CESQ: 46,2,18,2
    [00:00:24.283,416] <inf> app_event_manager: CLOUD_EVT_DATA_S
    END_QOS
    %CESQ: 53,2,20,2
    +CSCON: 1
    +CSCON: 0
    %CESQ: 44,2,13,1
    [00:00:40.283,538] <inf> app_event_manager: CLOUD_EVT_DATA_S
    END_QOS
    %CESQ: 54,2,19,2
    +CSCON: 1
    %CESQ: 55,2,24,3
    %CESQ: 55,2,19,2
    +CSCON: 0
    %CESQ: 42,2,17,2
    %CESQ: 43,2,11,1
    %CESQ: 54,2,12,1
    +CSCON: 1

    Could you confirm which log window you need (from boot until the failure, or full log until cloud connect attempt)?

    I am a full beginner in nRF Cloud and nRF kits.

    Thanks again for your help.

    Best regards,

    Dayane MAHATHY

Children
  • Here some additionnal log I have from my Thingy:91:
    [00:05:08.613,006] <err> nrf_cloud_integration: Failed to associate the device within: 300 seconds
    [00:05:08.613,098] <inf> app_event_manager: CLOUD_EVT_ERROR
    [00:05:08.613,739] <inf> app_event_manager: UTIL_EVT_SHUTDOWN_REQUEST
    [00:05:08.614,318] <inf> app_event_manager: UI_EVT_SHUTDOWN_READY
    [00:05:08.614,379] <wrn> modules_common: Module "ui" shutdown registered
    [00:05:08.614,501] <inf> app_event_manager: LOCATION_MODULE_EVT_SHUTDOWN_READY
    [00:05:08.614,624] <wrn> modules_common: Module "location" shutdown registered
    [00:05:08.615,356] <inf> app_event_manager: APP_EVT_SHUTDOWN_READY
    [00:05:08.615,417] <wrn> modules_common: Module "app" shutdown registered
    [00:05:08.616,058] <inf> app_event_manager: CLOUD_EVT_SHUTDOWN_READY
    [00:05:08.616,241] <wrn> modules_common: Module "cloud" shutdown registered
    [00:05:08.616,943] <inf> app_event_manager: DATA_EVT_SHUTDOWN_READY
    [00:05:08.617,004] <wrn> modules_common: Module "data" shutdown registered
    [00:05:08.617,980] <inf> app_event_manager: SENSOR_EVT_SHUTDOWN_READY
    [00:05:08.618,041] <wrn> modules_common: Module "sensor" shutdown registered
    %CESQ: 49,2,18,2
    [00:05:08.729,583] <inf> app_event_manager: CLOUD_EVT_DISCONNECTED
    +CGEV: ME PDN DEACT 0
    +CSCON: 1
    [00:05:08.763,671] <inf> app_event_manager: MODEM_EVT_LTE_DISCONNECTED
    +CEREG: 0
    [00:05:08.863,861] <inf> app_event_manager: MODEM_EVT_LTE_CELL_UPDATE
    +CGEV: ME DETACH
    %CESQ: 51,2,13,1
    %CESQ: 255,0,255,0
    +CSCON: 0
    [00:05:10.205,780] <inf> app_event_manager: MODEM_EVT_SHUTDOWN_READY
    [00:05:10.205,902] <wrn> modules_common: Module "modem" shutdown registered

Related