Project

General

Profile

Libsamsung-ril » History » Version 25

Denis 'GNUtoo' Carikli, 12/03/2012 11:58 AM

1 6 Denis 'GNUtoo' Carikli
h1. samsung-ril
2 1 Paul Kocialkowski
3 6 Denis 'GNUtoo' Carikli
The samsung ril is the library that interfaces libsamsung-ipc(see below) with the android framework.
4
Status per devices below:
5 1 Paul Kocialkowski
6 6 Denis 'GNUtoo' Carikli
h2. Nexus S
7 13 Paul Kocialkowski
8
|_. Functionality |_. Status |_. Released |
9
| Modem bootstrap | Working | replicant-2.3 0002 images |
10
| Modem transport | Working | replicant-2.3 0002 images |
11
| Modem FMT | Working | replicant-2.3 0002 images |
12
| Modem RFS | Working | replicant-2.3 0002 images |
13 24 Paul Kocialkowski
| Power to Normal (Airplane mode on) | Working | replicant-2.3 0002 images |
14
| Power to LPM (Airplane mode off) | Working, stable | git |
15 13 Paul Kocialkowski
| RSSI infos | Working | replicant-2.3 0002 images |
16 18 Paul Kocialkowski
| Icon infos | Working | git |
17 13 Paul Kocialkowski
| Modem firmware infos | Working | replicant-2.3 0002 images |
18 20 Paul Kocialkowski
| IMEI/IMEISV | Working | replicant-2.3 0002 images, works best in git |
19 19 Paul Kocialkowski
| IMSI | Working | replicant-2.3 0002 images |
20 16 Paul Kocialkowski
| USSD | Working, needs testing | git |
21 13 Paul Kocialkowski
| SIM PIN unlock | Working | replicant-2.3 0002 images |
22 22 Paul Kocialkowski
| SIM PIN set | Working | git |
23
| SIM PIN change | Working | git |
24
| SIM unlock with PUK | Working | git |
25 13 Paul Kocialkowski
| SIM I/O | Partially working: infos, contacts are OK, stored SMS I/O is not | replicant-2.3 0002 images |
26
| Network registration | Working | replicant-2.3 0002 images, works best in git |
27
| Operator strings | Working | replicant-2.3 0002 images |
28 17 Paul Kocialkowski
| Network type force | Working | git |
29
| Operator manual select | Working | git |
30 13 Paul Kocialkowski
| SMS outgoing | Working, sometimes crashes! | replicant-2.3 0002 images |
31
| SMS incoming | Working | replicant-2.3 0002 images |
32
| Call incoming | Working | replicant-2.3 0002 images |
33
| Call outgoing | Working, but conferencing | replicant-2.3 0002 images |
34 23 Paul Kocialkowski
| DTMF | Working | replicant-2.3 0002 images, works best in git |
35 13 Paul Kocialkowski
| Audio during calls | Working | replicant-2.3 0002 images |
36
| Audio mic mute set | Working | replicant-2.3 0002 images |
37
| Audio volume change | Working | replicant-2.3 0002 images |
38
| Audio path change | Working | replicant-2.3 0002 images |
39
| Data activation | Working, code needs cleanup | replicant-2.3 0002 images |
40
| Data deactivation | Working, code needs cleanup | git |
41
| NV read item | Working | replicant-2.3 0002 images |
42
| NV write item | Working | replicant-2.3 0002 images |
43 6 Denis 'GNUtoo' Carikli
44
h1. libsamsung-ipc
45
46 4 Paul Kocialkowski
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.
47 1 Paul Kocialkowski
48
libsamsung-ipc is shared between SHR and Replicant projects. It's used in both for the Nexus S.
49
50 25 Denis 'GNUtoo' Carikli
Source code is available under the GPLv2+ at: https://github.com/morphis/libsamsung-ipc (master branch).
51 1 Paul Kocialkowski
52 6 Denis 'GNUtoo' Carikli
The library is mostly complete
53 4 Paul Kocialkowski
54
h2. ipc-modemctrl
55 1 Paul Kocialkowski
56 5 Denis 'GNUtoo' Carikli
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).
57 1 Paul Kocialkowski
58
Usage:
59 4 Paul Kocialkowski
<pre>
60 1 Paul Kocialkowski
usage: ipc-modemctrl <command>
61
commands:
62
	start                 bootstrap modem and start read loop
63
	power-on              power on the modem
64
	power-off             power off the modem
65
arguments:
66 2 Paul Kocialkowski
	--debug               enable debug messages
67
	--pin=[PIN]           provide SIM card PIN
68 4 Paul Kocialkowski
</pre>
69 1 Paul Kocialkowski
70
Please run ipc-modemctrl like this (from host pc): 
71
72
assuming your SIM PIN is 1234. If you don't have any SIM pin, don't pass the --pin argument. 
73
74
It should go like this:
75 11 Paul Kocialkowski
76 4 Paul Kocialkowski
<pre>
77 1 Paul Kocialkowski
[I] Got SIM PIN!
78 11 Paul Kocialkowski
[0] Starting modem on FMT client
79
[1] Starting modem_read_loop on FMT client
80
[2] Phone is powered up (LPM)!
81 1 Paul Kocialkowski
[I] SIM card found
82
[I] SIM is initializing
83 11 Paul Kocialkowski
[3] SIM init complete
84
[4] Modem is ready, requesting normal power mode
85 1 Paul Kocialkowski
[I] SIM card found
86 2 Paul Kocialkowski
[I] SIM is initializing
87 11 Paul Kocialkowski
[3] SIM init complete
88
[5] Modem is fully ready
89 2 Paul Kocialkowski
[I] Registered with network successfully!
90 11 Paul Kocialkowski
[6] Registered with network! Got PLMN (Mobile Network Code): '20810'
91 4 Paul Kocialkowski
[I] Registered with network successfully!
92 11 Paul Kocialkowski
[6] Registered with network! Got PLMN (Mobile Network Code): '20810'
93 4 Paul Kocialkowski
[I] Registered with network successfully!
94 2 Paul Kocialkowski
[I] Registered with network successfully!
95 11 Paul Kocialkowski
[6] Registered with network! Got PLMN (Mobile Network Code): '20810'
96 2 Paul Kocialkowski
[I] SIM Phone Book init complete
97
</pre>
98 4 Paul Kocialkowski
99
h2. Status
100
101 3 Paul Kocialkowski
We were able to make the following work:
102 4 Paul Kocialkowski
* SMS (Rx/Tx)
103
* Call (Rx/Tx) BUT NO AUDIO YET
104
* GPRS 
105
* SIM I/O (stored contacts, etc)
106
* SIM PIN unlocking