Mary-Anne's self introduction
Denis 'GNUtoo' Carikli
GNUtoo at no-log.org
Tue Mar 22 14:07:03 UTC 2011
On Tue, 22 Mar 2011 13:16:18 +0000 (UTC)
Mary-Anne Wolf <mgwmgw at comcast.net> wrote:
> I heard about Replicant at Planet Libre just recently,
> and I would like to participate.
Hi, welcome on board.
> However, I do not own a smart phone.
> I carry a trak phone which is just used for making phone calls,
> and mostly sits turned off in my car.
That is a bit problematic for low level stuff, since all low level
stuff is hardware specific and often needs quick testing while
However I think that developping at a higher level could be done witout
access to a device.
> I am a very experienced, but unemployed, software engineer,
> mostly Java with a little PHP. I used to do C, years ago.
> I have used emacs since the 1980's and I have dreamed in C.
C (and C++) is very used in the low level libraries,java is usally found
at the higher levels
> I have no mobile experience, and I am thinking that working
> on Replicant might also help me to find a job by giving me some,
> not to mention overcoming some of the evil things which are done
> about software rights on cell phones.
*it seems that the embedded world is looking for people(at least in the
low level part of it)
*it would be something to add to the curriculum vit__
*while doing embedded stuff,I got lots of jobs propositions,
unfortunately I want to finish the university before choosing a job...
> I have been puzzling over how I can contribute when the usual way
> to contribute seems to be testing whether Replicant works on the
> smart phone one happens to own.
yes, that's how the low level is done(device adaptation)
Basically you have 2 choices if you want to work on replicant:
*do low level device adaptation work,it's documented here:
*or do higher level things, other people can comment on what's needed
for higher level things, since I do only the devices adaptation part.
The most needed thing right now is to ensure that replicant works well
in the USA:
That include voice and data connectivity.
it's easy to do:
*get a device supported by cyanogenmod and replicant that talks AT( htc
dream or nexus one)
*install cyanogenmod 6 on it
*compile that kernel :
*use the free version of the fastboot uttility to boot it like this:
./fastboot boot /path/to/zImage
./adb shell dmesg -c > dmesg.txt
or something in theses lines
that will give you a full trace of the proprietary ril
*then boot replicant or GNU/Linux on the device
and experiment with the unknown AT commands
*add them to the ril
*compile the ril and push it to the device...
*test if it works
I can give more details if needed.
For the terminology the ril is the radio interface library:
imagine that a smartphone is like a computer attached to an old phone(a
feature phone, like a nokia 3310 for instance)
then the feature phone say to the computer that it has a call,
the computer display the call,ring and vibrate.
then the person doesn't answer and call back the caller,
so the computer will tell the feature phone to do a call.
now the computer part runs android and the feature phone is usually
the ril is the library that talks to the modem.
In the case of the htc dream and the nexus one,
The communication is made trough AT commands over a virtual serial
so it's really easy to trace it.
Note that the AT commands are a standard,see
and the 3gpp in the links which should contains the standard in a
format readeable by openoffice.
But since I'm not in USA I have to rely on a complicated setup for
getting ssh on GNU/Linux on the htc dream in order to be able to
experiment with it.
Note that I got voice calls working with the help of mattl from the FSF
on the images number 0003.
but it broke when I added data.
the diff is very small, so it would be easy to make it work, but once
again the setup is quite long for me and it also depends on mattl
beeing present online.
(I have to guide someone to install and configure GNU/Linux for ssh
access trough openvpn etc...)
Note that I am on irc as GNUtoo|device in the #replicant channel on
freenode, device beeing the device where I am connecting from.
More information about the Replicant