Using multiple SIM cards with a cellular modem can be useful in industrial designs that are deployed in areas of poor cellular connectivity. A single service provider may not always work in remote areas or indoors and it could be useful to employ multiple SIM cards.
Dual SIM cellular modems are not very common in the market. Even if you find one, the cost will be high and you cannot use those for more than 2 SIM cards. There is another easier and more flexible approach to adding multiple SIM cards to any modem like SIM800 or SIM7600.
Suppose you wanted to add 4 SIM cards (switchable) to SIM7600 or BG96, how would you do it? We cover the design process in this article.
Modem Hardware Requirements for Multiple SIM Cards
Cellular modems like the SIM7600 or BG96 will have a single SIM controller interface.
A typical SIM interface for SIMCom modems is shown below.
Note that there is a USIM_DET pin on the modem SIM interface which is not used and left unconnected in the above schematic. The USIM_DET pin is very important for designing multi-SIM applications with cellular modems.
The USIM_DET or equivalent pin functions as a “SIM hot swap detection” pin. This pin should change its state when a SIM card is removed and inserted. The state change is usually initiated by a SIM card connector that has a card-detect prong. The USIM_DET can be set to act as active high or active low via AT commands.
The SIM hot swap detect pin is useful because it allows you to change a SIM card without rebooting the modem. We can now use this capability to switch between SIM cards electrically!
- De-assert SIM_DET pin (modem assumes SIM is “removed”).
- Electrically switch over to another SIM
- Asset SIM_DET pin (modem assumed a new SIM is “inserted”).
That is all you need to switch between any number of SIM cards with any cellular modem, even the old 2G modems like SIM800 that do not natively support multiple SIM cards.
Firmware for Using Multiple SIM Cards
The modem must support hot swapping of SIM cards for you to be able to use multiple SIM cards. If a modem does support hot-swapping, you will find some AT command that allows you to set the SIM_DET polarity/behavior and also lets you turn on hot-swapping.
For example, in SIM7600 modems by SIMCom
- USIM_DET polarity is set using AT+UIMHOTSWAPLEVEL
- Enable hot-swapping by using AT+UIMHOTSWAPON
Turning on hot-swap usually saves the setting in the modem internal boot configuration settings and therefore you must re-boot the modem to ensure that hot swap behavior is available for use.
Implementing the Multiple SIM Switch
A few things must be taken care of when designing the SIM switching matrix or logic circuit.
- SIM cards work at 1.8V or 3.3V – your logic circuit should support both logic levels
- Assume the SIM clock and data bus to be operating at 5 MHz. This is not very fast, but avoiding sharp turns and poor routing is important to avoid interference from the modem RF power output (which will be very close to the switching circuits).
- The SIM card power must only be provided from the modem itself. Do not use always-on power source for inactive SIM cards.
- 12pF-33pF load capacitors must be placed on all SIM communication and power lines to reduce RF interference.
- Modems usually have AT command controlled GPIOs available that you could use to control switches for the SIM card switch matrix.
When interfacing a cellular modem with ESP32 and simillar low pin count MCUs, this allows you to save some MCU GPIO.
Feel free to ask away via the Quick Contact form in the sidebar, or leave a comment below.
Change Log
- Initial Release: 13 August 2021
References
- Reference 1: SIM7600 Datasheet
- Reference 2: BG96 Datasheet
- Reference 3: SIM7600 AT Command Manual