# Over-the-Air Updates

From time to time, KORE will issue updates to Super SIMs to enable new features or to make adjustments to the SIMs' settings, such as which International Mobile Subscriber Identifier (IMSI) the [multi-IMSI applet running on each SIM](https://docs.korewireless.com/supersim/supersim-multi-imsi-applet) should use in certain circumstances. These are called over-the-air updates (OTA) because they are sent conveniently via the cellular network rather than requiring physical access to the SIM.

{% hint style="info" %}
You can learn more about the different Settings Packages that may be installed on your SIMs, how to determine which Settings Packages and which versions are installed on your SIM, how your SIMs' behavior may change when different versions are installed, and how to check if there are any updates for your SIMs [here](https://docs.korewireless.com/supersim/how-to/sim-settings).
{% endhint %}

## Updates to network settings

The most frequent updates applied to a Super SIM make changes to its network settings. These settings include which IMSI is to be used in a given country, and which cellular network should be tried first when the host device is attempting to connect. We update these settings regularly as new networks become available and as our commercial partnerships evolve. This approach ensures that you always have the best experience using Super SIM.

{% hint style="warning" %}
As a result of new settings updates applied via OTA updates, the IMSIs on a given Super SIM may change over time. Consequently, it's critical that your devices do not depend on any specific IMSI or on the Mobile Country Code (MCC) and Mobile Network Code (MNC) values that make up the IMSI's prefix[ to determine the Access Point Name (APN) to use](https://docs.korewireless.com/supersim/how-to/apn-configuration). Always stick with `super`.&#x20;
{% endhint %}

## How the OTA update system works

OTA updates are typically applied using a "pull" method. An applet running on the SIM will periodically establish a dedicated PDP context, and use it to contact the KORE cloud and to check if there are any updates pending. If we have staged an update, the applet will download and install it onto the SIM.

To establish this dedicated connection, the SIM will send the proactive command `OPEN CHANNEL` to your device's cellular module. A dedicated APN, `ota.super`, is used to reach the remote server. Once the check is complete, and any pending update has been retrieved, another proactive command, `CLOSE CHANNEL`, is issued to the modem to instruct it to close the data connection.

{% hint style="info" %}
For more information on the SIM Toolkit and the proactive commands it includes, please see the [ETSI Card Application Toolkit manual](https://www.etsi.org/deliver/etsi_ts/102200_102299/102223/06.14.00_60/ts_102223v061400p.pdf) (PDF).
{% endhint %}

## Advanced: take control of OTA updates

When a cellular module fitted with a Super SIM is powered up, a period of a minute or two will elapse before the OTA update applet asks the modem to establish the data connection it requires to check for pending updates. If the modem sleeps or is powered down before this check is completed, the SIM won't be updated, even if an update is pending. If the module remains powered up, the applet will periodically repeat the checking process, typically about once a week. Power-cycling the modem will normally reset the timer maintained by the applet and cause the applet to contact the server a minute or two after the restart. Power-cycling a device in order to force a update check is not always practical, so a better approach is to force the applet itself to initiate the checking process.&#x20;

You can use a local `AT+CSIM` command issued to the SIM via your modem to trigger the OTA update applet. It instructs the module to relay to the SIM an embedded Application Protocol Data Unit (APDU) `ENVELOPE` command. This, in turn, contains proprietary instructions for the SIM.

{% hint style="warning" %}
As of November 2025, we are in the process of updating our SIM applets. Later in 2026, we will begin producing SIM hardware and SIM profiles with new applets. Additionally, we intend to over-the-air (OTA) update existing SIMs with the new applets. The new applets will have different AT commands. Be sure to take this into consideration before implementing any regular use of these AT commands in your device's firmware.

To learn about other planned changes to the SIM hardware and applets as part of this initiative, see our [migration guide](https://docs.korewireless.com/en-us/twilio-iot-acquisition/migration-guides/migrating-to-the-new-super-sim-hardware).

The table below documents both the current SIM applet command and new command that will be needed to trigger the action in the new applet to be released later in 2026.
{% endhint %}

| Command Name             | Description                                                                                                                               | Current SIM Applets                           | New SIM Applets                                                                                                                                                                                                   |
| ------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Check for OTA Update** | Triggers the Super SIM to open a connection and check-in with the over-the-air update service to see if there are pending updates for it. | `AT+CSIM=30,"80C200000AFD08020282814F020900"` | <p>Request: <code>AT+CSIM=28,"80C2000009CF0702028281A001000"</code></p><p></p><p>Response:</p><p><code>+CSIM: 4,"9000"</code> </p><p>or</p><p><code>+CSIM: 4,"6109"</code> if there is a response with 9 byte</p> |

Manually triggering a check for a pending OTA update this way can be especially useful for devices with limited battery life. This is because this type of device typically transmits in short bursts: it aims to wake up, transmit, and return to sleep as quickly as possible, to preserve its charge. Such approach to transmission is power efficient, but it may not give the SIM time to check for updates.

To allow it to do so, your application can issue the command above to the SIM and set a timer to allow time for the data connection to the `ota.super` APN to be established and for any updates to be installed. When the timer fires, the device can return to sleep.

Some updates may open the `ota.super` context multiple times, usually to update different services or if the size of the data being pushed to the card requires the update is dispatched in multiple blocks. These subsequent updates are opened almost immediately after the first one closes. Your timer setting should allow for any such follow-on connections.

This check does not not need to be made every time the devices wakes, but can be scheduled periodically — once a week, for example — to avoid the cost of bringing up and maintaining the connection for the duration of the timer when there are no updates staged.

This technique allows you to manage your application's power usage — there's no need to leave devices connected for prolonged periods of time — while also ensuring that your SIMs always remain up to date.
