diff options
Diffstat (limited to 'posts/2012_01_nexus-s-status-update-with-new-images.md')
| -rw-r--r-- | posts/2012_01_nexus-s-status-update-with-new-images.md | 87 |
1 files changed, 87 insertions, 0 deletions
diff --git a/posts/2012_01_nexus-s-status-update-with-new-images.md b/posts/2012_01_nexus-s-status-update-with-new-images.md new file mode 100644 index 0000000..397c191 --- /dev/null +++ b/posts/2012_01_nexus-s-status-update-with-new-images.md @@ -0,0 +1,87 @@ +date: 2012-01-07T21:46:15+00:00 +title: Nexus S status update, with new images +authors: Paul Kocialkowski +tags: Paul Kocialkowski +licenses: CC-BY-3.0 OR CC-BY-4.0 +--- +The work on the Nexus S was started in July 2011. At the time, we just +discovered that the modem uses a Samsung-specific protocol. + +On the [Android architecture][1], communication with the modem is done via the +RIL (Radio Interface Layer). While the modem runs its own non-free software on +a separate CPU, the RIL runs on the main CPU in Android userspace. + +The only free RILs we know of are for the well-documented and widely-used [AT +command set][2]. Back in July 2011, we were desperate to see that there was no +free implementation for the Nexus S modem protocol. Fortunately, we weren't +alone on this one. After asking around on IRC, we met a talented developer who +owns a Samsung H1 device, which originally runs LiMo, a mobile operating +system with parts of free software, at least with the [Linux kernel][3]. The +developer (who's known on IRC as ius) was part of the effort to [port Android +to the Samsung H1][4], but he didn't stop there. He also investigated the +modem protocol used in the device. And the most incredible is that he did find +out most of the protocol messages and data structures. We together +investigated on Nexus S as well, and, thanks to this incredible luck we had, +the protocol is the same for nexus s. We managed to boot the modem and +obtained the first messages quickly. Then, we decided to push Nexus S support +to ius' lib, renaming it [libsamsung-ipc][5] for the occasion. + +But the adventure didn't stop there. Another talented developer known as +morphis, who works on the [SHR][6] project, free [GNU][7]/[Linux][3] system +for smartphones and who accomplished a huge amount of work to add support for +the Palm Pre devices modem protocol in [FSO][8] (the middleware used in +[SHR][6] that is in charge of communication with hardware interfaces, +including the modem) decided to get a Nexus S and joined the effort to achieve +a working implementation of the Samsung IPC modem protocol. + +Several months of work later, here we are, the [free RIL][9] we wrote for +Android/Replicant has grown enough to deserve the release of a new set of +images. + +On this release, here is a quick summary of which major components are working +and which are not: + +* Telephony is stable enough, there is working in-call volume change and + audio routing, though we miss some features like conferencing + +* SMS are working nicely, including multi-part messages, both on sending and + receiving + +* Data has a minimal implementation that is far from being ready (but can be + set up manually), so this will be for next time + +* Some other minimal features are there (SIM I/O, DTMF, SIM unlock, etc) + +* Some are missing (USSD, working airplane mode for instance) + +There has been no major improvement for other components nor devices, even +though we release images for Nexus One as well. + +The images are located, at usual, at our [OSUOSL-hosted ftp][10]. + +[Download Replicant-2.3 0002 preview images for Nexus S and Nexus One][11] + + [1]: <http://developer.android.com/images/system-architecture.jpg> + + [2]: <https://secure.wikimedia.org/wikipedia/en/wiki/Hayes_command_set> + + [3]: <http://www.kernel.org/> + + [4]: <http://h1.pargon.nl/wiki/index.php/Main_Page> + + [5]: <http://github.com/morphis/libsamsung-ipc> + + [6]: <http://shr-project.org/> + + [7]: <http://www.gnu.org/> + + [8]: <http://www.freesmartphone.org/> + + [9]: <https://gitorious.org/replicant/samsung-ril> + + [10]: <http://ftp.osuosl.org/pub/replicant/> + + [11]: +<http://ftp.osuosl.org/pub/replicant/images/replicant-2.3/preview/0002/> + + |
