Who told you that you need a physical SIM to connect to a cellular network?
For as long as we can remember, SIM cards have been the no. 1 requirement for any device to get cellular connectivity. While there used to be only one type of SIM, the plastic one, there are many options today: iSIM, eSIM, nuSIM, and SoftSIM.
While these options are diverse, most still rely on a physical component. Whether it is the standard plastic SIM you punch out and insert into a slot, or an Embedded SIM (MFF2/MFF4) soldered directly onto your PCB, a dedicated piece of hardware is required. Even the iSIM (Integrated SIM), such as the one found inside the Murata Type 1SC, is still a physical entity fully integrated within the modem or system-on-chip.
But what if you could remove the hardware requirement entirely?
From Plastic to Software
SoftSIM changes the model completely. Instead of relying on a physical card, the SIM credentials are stored directly on the device. The modem still behaves the same from a network perspective, but the “SIM” is now just data, embedded and managed through software.
At its core, a SoftSIM is defined by four parameters:
- ICCID: The unique identifier of the SIM card.
- IMSI: The international subscriber identity used to identify the device on the network.
- KI: The secret authentication key (the “password” of the SIM).
- OPC: An operator-specific parameter used during the authentication process.
Together, these values form the digital identity of your SIM. Once securely stored on the device, it can authenticate and connect just like it would with a physical SIM.
The Benefits of a Virtualized SIM
Moving to a software-based identity offers three main advantages:
- Reduced Bill of Materials (BOM): You eliminate the cost of the SIM holder, the physical SIM, and the associated PCB traces. This also translates to lower manufacturing costs.
- Scalability: You no longer need to manage physical inventory of SIM cards or go through the cumbersome process of manually inserting SIMs. You can provision the identity as part of the device provisioning process.
- Space: By removing the physical SIM slot or the embedded SIM, you save valuable space on the PCB, critical for compact IoT designs.
The Architecture: Security via ARM TrustZone
If the SIM is just software, what stops it from being cloned or compromised?
If implemented properly, the SoftSIM isn’t just a file sitting in general flash memory; it utilizes ARM TrustZone to create a hardware-isolated environment. The SIM credentials reside within TF-M (Trusted Firmware-M) Internal Trusted Storage (ITS).
This ensures that sensitive data like the KI and OPC are never exposed to the less secure application layer. You get the flexibility of software with the tamper-resistance of a physical Secure Element.
Try it Yourself Using Our APIs
You can get started with SoftSIM on a Nordic nRF9151 or nRF9160 in minutes using our self-service APIs. Simply order a SIM through the Monogoto Hub to get started:
Example Credentials from Monogoto:
{
"iccid": "8991101200003204512",
"imsi": "405876123456789",
"ki": "A1B2C3D4E5F60708AABBCCDDEEFF1122",
"opc": "11223344556677889900AABBCCDDEEFF"
}
The workflow:
- Order a SoftSIM: Log in to the Monogoto Hub and order a “Global SIM Pay As You Go” SoftSIM for just $1.
- Generate the Profile: Using the Monogoto SoftSIM API, input your received credentials to generate a .hex file specifically for your chipset.
- Flash: Flash the .hex file directly to the Nordic chipset (e.g., using the nRF Connect for Desktop Programmer).
- Toggle Connectivity: Use the AT%CSUS=2 command to switch the device from the physical slot (
0) to the SoftSIM (2).
We believe in making connectivity accessible. You can get started with SoftSIM on a Nordic nRF9151 or nRF9160 in minutes.
Scalable Provisioning (Production Grade)
While our APIs are perfect for getting started, they are not intended for large-scale deployments that require a seamless, automated workflow. We have partnered with Actinius to offer a scalable implementation designed to deploy SoftSIM directly to large fleets of Nordic-based devices. This provides a reliable and secure way to provision the SIM into the secure partition of the chipset during production.
Technical Implementation: The AT%CSUS Switch
How does the modem know to look at the internal memory instead of the physical SIM slot? Developers use the AT%CSUS (Custom SIM Usage Setting) command to toggle the identity:
AT%CSUS=0: Default (Physical SIM).AT%CSUS=2: SoftSIM.
Because the modem needs to re-initialize the identity, the radio must be toggled during the switch:
AT+CFUN=0 # Disable Radio
AT%CSUS=2 # Switch to SoftSIM
AT+CFUN=1 # Enable Radio
Watch it in Action
If you want to see exactly how this works, from API calls to live network attachment, check out our latest episode of Show, Don’t Tell. We walk through the entire process to order, download, flash, and activate a fully virtual SIM card.
I’m inviting you to watch the full video, and to try it out yourself!
Ready to start? Head over to docs.monogoto.io, order your SIM via the Monogoto Hub, and get started with the Monogoto API. Interested in the scalable provisioning method? Reach out to our support team at support@monogoto.io.
Good luck virtualizing your SIM card!




