All devices containing a Super SIM must have roaming enabled, even if they are only to be used in the US. This setting is very device specific. This guide can't include instructions for every possible device that you might use with Super SIM, but we will show you some generic steps that will get you most of the way. For the final stages, you may need to consult your device's documentation.
Super SIM requires roaming to be enabled all the time and in every country in which the host device will be used. Some countries, including Brazil, Canada, India, and China, prohibit permanent roaming, and may disconnect roaming devices that have been on a national cellular network for more than 1-3 months. These restrictions are not specific to Super SIM: all non-local connectivity providers are subject to the same restrictions.
If you expect any of your Super SIM-enabled devices to be used in a country that prohibits or restrictions permanent roaming, please contact support so we can show you how Super SIM's multi-IMSI capability can mitigate this issue.
Refer to your device's user manual to learn how to send it AT Commands.
The AT command for enabling roaming is modem specific, so you will need to check the documentation for the modem your device contains. However, two commonly used IoT development device cellular modems are the Quectel BG96, and the U-blox Lara, Lisa, Sara, and Toby families. These use the following AT commands to enable roaming:
AT+QCFG="roamservice",2
AT+UDCONF=20,1
Some devices will action AT Commands that have been sent by SMS. For these devices, you can use our SMS Commands API to send a machine-to-machine SMS via the Super SIM. You can use a command line tool such as curl
or the Twilio CLI to transmit an API request which contains the AT command to enable roaming for the modem you are using.
In this example, IoTDeviceSuperSIM
is the unique name of the Super SIM as set in Console. The AT command you use is included in the Command
field. We'll use the BG96 roaming command.
The optional CallbackUrl
field takes an endpoint on your server to which Twilio will send the final response once roaming has been enabled; the initial request will generate a 200 OK
response on the successful receipt of the request, or an error if the request was malformed. If an error is reported, the callback will not be triggered.
Here is the initial request, made via curl
and containing the roaming enable AT command:
1curl -X POST https://supersim.twilio.com/v1/SmsCommands \2-d 'Sim=IoTDeviceSuperSIM' \3-d 'Command=AT+QCFG=\"roamservice\",2' \4-d 'CallbackUrl=https://example.com/api' \5-u 'ACxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx:your_auth_token'
Here is the same request but this time made with the Twilio CLI. The --sim
option's argument is the Super SIM's SID.
1twilio api:supersim:v1:sms-commands:create \2--sim IoTDeviceSuperSIM \3--payload 'AT+CGDCONT=1,"IP","super"' \4--callback-url https://example.com/api
The request will eventually cause the following response to be posted to the optional callback URL. The sid
, sim_sid
, account_sid
, and url
fields will contain true values:
1HTTP/1.1 202 ACCEPTED2Content-Type: application/json34{5"sid": "HCxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",6"sim_sid": "HSxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",7"command": "AT+QCFG=\"roamservice\",2",8"status": "queued",9"date_created": "2020-05-23T15:42:04Z",10"date_updated": "2020-05-23T15:42:04Z",11"account_sid": "ACxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",12"url": "https://supersim.twilio.com/v1/SmsCommands/HCxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"13}
Many devices do not support sending AT Commands via SMS. Refer to your device's user manual to see if this action is permitted and how to format the message.
Depending on the version of Android installed on your device, you may see slightly different wording, but essentially you set roaming as follows:
The iOS UI changes in subtle ways with almost every release, so you may find the following guidance, for iOS 15, doesn't entirely match the UI on your device. However, it should help you find the setting you need.
You will know your device is correctly configured if you can send and receive data. Try pinging www.twilio.com, or open your favorite web browser and navigate to www.twilio.com/docs/iot/supersim.
If your ping is unsuccessful or if you cannot load the web page, review the instructions above and make sure you have also set the correct APN.