The samsung ril is the library that interfaces libsamsung-ipc(see below) with the android framework.
Status per devices below:
Functionality | Status | Released |
---|---|---|
Modem bootstrap | Working | replicant-2.3 0002 images |
Modem transport | Working | replicant-2.3 0002 images |
Modem FMT | Working | replicant-2.3 0002 images |
Modem RFS | Working | replicant-2.3 0002 images |
Power to Normal | Working | replicant-2.3 0002 images |
Power to LPM | Working, needs testing and review | git |
RSSI infos | Working | replicant-2.3 0002 images |
Icon infos | Working | git |
Modem firmware infos | Working | replicant-2.3 0002 images |
IMEI/IMEISV | Working, code needs cleanup | replicant-2.3 0002 images |
IMSI | ? | |
USSD | Working, needs testing | git |
SIM PIN unlock | Working | replicant-2.3 0002 images |
SIM PIN set | Missing | |
SIM I/O | Partially working: infos, contacts are OK, stored SMS I/O is not | replicant-2.3 0002 images |
Network registration | Working | replicant-2.3 0002 images, works best in git |
Operator strings | Working | replicant-2.3 0002 images |
Network type force | Working | git |
Operator manual select | Working | git |
SMS outgoing | Working, sometimes crashes! | replicant-2.3 0002 images |
SMS incoming | Working | replicant-2.3 0002 images |
Call incoming | Working | replicant-2.3 0002 images |
Call outgoing | Working, but conferencing | replicant-2.3 0002 images |
DTMF | Working, code needs cleanup | replicant-2.3 0002 images |
Audio during calls | Working | replicant-2.3 0002 images |
Audio mic mute set | Working | replicant-2.3 0002 images |
Audio volume change | Working | replicant-2.3 0002 images |
Audio path change | Working | replicant-2.3 0002 images |
Data activation | Working, code needs cleanup | replicant-2.3 0002 images |
Data deactivation | Working, code needs cleanup | git |
NV read item | Working | replicant-2.3 0002 images |
NV write item | Working | replicant-2.3 0002 images |
libsamsung-ipc is a free implementation of the protocol to speak with modems found in most Samsung devices. It is the low-level library used to communicate with the modem and needs an upper-layer (RIL) to interface with the system.
libsamsung-ipc is shared between SHR and Replicant projects. It's used in both for the Nexus S.
Source code is available under the GPLv3+ at: https://github.com/morphis/libsamsung-ipc (master branch).
The library is mostly complete
ipc-modemctrl is a deprecated tool that was used at the beginning of the work for talking to the nexus S modem. It implemented basic functionalities (mostly SIM unlocking and network registration).
Usage:
usage: ipc-modemctrl <command> commands: start bootstrap modem and start read loop power-on power on the modem power-off power off the modem arguments: --debug enable debug messages --pin=[PIN] provide SIM card PIN
Please run ipc-modemctrl like this (from host pc):
assuming your SIM PIN is 1234. If you don't have any SIM pin, don't pass the --pin argument.
It should go like this:
[I] Got SIM PIN! [0] Starting modem on FMT client [1] Starting modem_read_loop on FMT client [2] Phone is powered up (LPM)! [I] SIM card found [I] SIM is initializing [3] SIM init complete [4] Modem is ready, requesting normal power mode [I] SIM card found [I] SIM is initializing [3] SIM init complete [5] Modem is fully ready [I] Registered with network successfully! [6] Registered with network! Got PLMN (Mobile Network Code): '20810' [I] Registered with network successfully! [6] Registered with network! Got PLMN (Mobile Network Code): '20810' [I] Registered with network successfully! [I] Registered with network successfully! [6] Registered with network! Got PLMN (Mobile Network Code): '20810' [I] SIM Phone Book init complete