Project

General

Profile

Libsamsung-ril » History » Version 16

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