onomondo / nrf-softsim

Manifest repo for integrating SoftSIM and nrf-sdk
31 stars 7 forks source link

Unable to connect to server using nRF9151DK #58

Closed ruswerner closed 1 month ago

ruswerner commented 1 month ago

log.txt

I have successfully provisioned a softsim profile and built a hex with the static profile string. It successfully built and flashed the softsim_static_profile example using NCS 2.7.0 on the nRF9151 dev kit. The softsim provisions and initializes without error. Then 3.5 minutes later it goes into an endless "Connected -> Idle" loop and never gets to connecting to the test server over LTE.

Please see the log file for details.

What do I need to do to get this working?

benjaminbruun commented 1 month ago

Is the SIM that you have provisioned, fully activated on the Onomondo platform? Please provide SIM ID for us to troubleshoot why your SoftSIM is not attaching to the network.

ruswerner commented 1 month ago

thanks for taking a look @benjaminbruun

The softsim profile that I fetched and generated the profile string for is:

SIM ID: 002625618 ICCID: 89457300000026256183

image

ruswerner commented 1 month ago

I fetched 5 profiles and used one of them with the softsim next command. I'm assuming the leading __ means that's the ICCID that was claimed.

$ ls
89457300000026256142.json   89457300000026256167.json   __89457300000026256183.json
89457300000026256159.json   89457300000026256175.json   profiles.json
benjaminbruun commented 1 month ago

Hi @ruswerner

Your assumption is correct. The profile with the leading underscore character is the one you have decrypted (removing the __ prefix of the filename will allow you to decrypt and encode the profile once more).

The fact that the nRF91 provisioned SoftSIM profiles allow for a network attachment attempt tells me that you have successfully decrypted and encoded the profile string using the SoftSIM CLI tool. Sweet.

We have yet to adopt the latest NCS v2.7.0, with the latest tests on this GitHub repository being with v2.6.1 I will see if I will observe the same results as a result of some incompatibility of the major version bump.

benjaminbruun commented 1 month ago

Could you change the following to full debug logging: https://github.com/onomondo/nrf-softsim/blob/master/samples/softsim_static_profile/prj.conf#L3

CONFIG_SOFTSIM_LOG_LEVEL_DBG=y

Run the test again and share the logs?

benjaminbruun commented 1 month ago

Small update to the above comments. I got NCS v2.7.0 working with the master branch. Just FYI.

ruswerner commented 1 month ago

thanks @benjaminbruun I'll give your suggestions a try today and report back here.

ruswerner commented 1 month ago

I rebuilt the softsim_static_profile sample application with NCS v2.6.2. It never releases the lte_connected semaphore, which suggests that it never fully registers.

Here is the debug log as requested

serial-terminal-15102024_114149.txt

peterbornerup commented 1 month ago

Hi @ruswerner,

I've doubled checked signalling in our platform.

I noticed that the Diameter authentication requests answer from our HSS is failing in some cases for SoftSIMs. We've identified the error and are in the process of mitigating the issues.

Instead of returning the authentication challenge we reply with an error code due to the AuC not being able to generate the challenge.

image

I'll ping you here once we've resolved the issue.

ruswerner commented 1 month ago

thanks @peterbornerup . standing by...

benjaminbruun commented 1 month ago

And you are good to continue you work.. sorry for the inconvenience. The SoftSIM are now operational.

ruswerner commented 1 month ago

I can confirm your backend fixes resolved my issue. Subsequently, I was able to get the asset tracker v2 application working with softsim after using this config. There were some non-obvious config problems related to switching from picolibc to newlibc (as required by softsim):

### Onomondo SoftSIM ###
CONFIG_SOFTSIM_DEBUG=y
CONFIG_SOFTSIM_LOG_LEVEL_INF=y
CONFIG_SOFTSIM_BUNDLE_TEMPLATE_HEX=y
CONFIG_SOFTSIM_STATIC_PROFILE_ENABLE=y
# GSMA TS.48 USIM profile (standard test profile) replace with actual Onomondo profile
CONFIG_SOFTSIM_STATIC_PROFILE="<REDACTED>"
### Onomondo SoftSIM ###

CONFIG_NEWLIB_LIBC_FLOAT_PRINTF=y
CONFIG_FP_SOFTABI=y