Reputation: 31
I need to develop a SIM applet that would enable the SIM card holding multiple SIM's(Super SIM) to automatically switch between its numbers based on network strength.Is it even possible??
Secondly, for this i believe i need to access the directory files in the SIM. Does anyone have an idea how that is possible?? I have figured that i need to develop the applet code on the java development kit. But how do i access the files from my code?
Thirdly, all the information is sent to the SIM via the modem in the handset which is controlled by the controller inside the handset. Do i need to program that too apart from the applet?
Kindly help me with any kind of information you may have. Any set of instructions regarding the steps to be followed will be a big help.
Upvotes: 2
Views: 2991
Reputation: 337
It would be good option to develop this solution with back-end application and OTA gateway support. You can develop SIM applet which periodically request Network Management Reports(NMR) from terminal using proactive command PROVIDE LOCAL INFORMATION assuming that SIM card you are using supports SIM Toolkit. NMR as response from terminal can be sent to back-end as silent SMS(SEND SHORT MESSAGE) or as TCP packet-if SIM card supports and GPRS enabled on terminal- by applet.
Back-end validates the signal strength in NMR for the cell id and its location and may trigger OTA platform the send APDU to SIM applet to execute POWER OF CARD command while sending POWER ON CARD to other SIM.
As you may realize, in any case current network coverage should provide at least SMS service to perform switch over between SIM cards in order to make the back-end application to run the logic. Otherwise there should be custom terminal to support this switchover without any network communication. There are several SIM toolkit events, one of them is OUT OF COVERAGE. SIM applet can register callback for this event. Once it occurs, it may send command to terminal and terminal can power on other SIM while powering of the one from which it got out of coverage event.
Proactive commands are explained in ETSI TS 102 223 specification.
Upvotes: 0
Reputation: 1962
The SIM App (applet) would be developed using JavaCard. You need a SIM card, of course, and a card reader for this project. (You might want to checkout Gemalto, Giesecke and Devrient (G&D), Oberthur, Advance Card Solutions (ACS), or any smartcard providers for smartcards and card readers.) With JavaCard, you could access the files inside the SIM card. You need, however, to understand the structure of the files. You need to study GSM, 3GPP, and ETSI documents like GSM 11.11, GSM 11.14. There are updated documents but these are some of the basics.
If your target device is one that supports Java ME then you could develop a (JME) app on the phone that will communicate with your smartcard applet. The Security and Trust Services API (SATSA) [JSR 177] would be utilized.
Upvotes: 1