Group: Hardware/TODO/TO SORT/Smartphones
Contents
Introduction
First let's define a smartphone,
A smartphone[1] is a phone with at least 2 processors:
- one where runs the operating system(like Android,GNU/Linux etc...), it is usually called the Application processor
- another that interface with the GSM network(for instance it reads the sim card,interface with the GSM tower etc...). It is usually called the baseband.
Historically both processors talked to each other trough a serial port, with AT commands(also known as Hayes command set ).
While freedom is possible on the GSM processor too,we will focus on freedom on the Application processor(because it's illegal to run modified GSM processors on carrier networks and also very dangerous)
Possible Free SmartPhones target comparison
Hardware freedom
Openmoko Freerunner | Nokia N900 | HTC Dream | Nexus one | Palm pre(normal,plus or version 2) | Nexus S | |
---|---|---|---|---|---|---|
Non free firmwares | No |
Yes:
|
Yes:
|
Yes:
|
Yes:
|
Yes:
|
Modem can be flashed | Yes | Yes[2] | Yes | Yes | Yes | |
Modem can be unpowered | Yes | Yes | ? | ? | ? | |
Audio path under modem's control? | No | No | Yes | Yes | Needs to be deeply checked, seems not (it seems that the RIL has to send audio to the modem) | |
GPS under modem's control | No | Yes | Yes | Yes | Yes | Needs to be deeply checked, seems not (it seems to be attached via serial interface to the SoC) |
Free Bootloader | Yes | No | ? | ? | Some work has been done(must check status,not usable yet,abandoned?) | ? |
Modem can access the main CPU memory chips | No (the connection is a serial link) | No (the connection is an HSI link) | Yes | Yes | ?? | No (the connection is over different SRAM) |
Hardware Features
Openmoko Freerunner | Nokia N900 | HTC Dream | Nexus one | Palm pre(normal,plus or version 2) | Nexus S | |
---|---|---|---|---|---|---|
USB host | Yes (not strictly needed since no firmwares are needed),limited to ? mA | Yes(with 2.6.28 power kernel), limited to ? mA | ? | possible, untested, unpowered | ? | possible, untested, perhaps unpowered |
Hardware and software capabilities
Openmoko Freerunner(FSO+SHR) | Nokia N900(FSO+SHR) | HTC Dream(Replicant) | HTC Dream(FSO+SHR) | Nexus one(Replicant) | Palm pre(normal,plus or version 2) (FSO+SHR) | Nexus S (Replicant) | |
---|---|---|---|---|---|---|---|
Data connectivity | GPRS only(hardware limitation) | 3G working in SHR | 3G working in replicant | 3G working in SHR | 3G working in replicant | 3G working in SHR(not tested by me) | doesn't work yet |
Hardware features support | See The FSO page about the supported hardware features | See The FSO page about the supported hardware features | see The replicant page about the supported hardware features | See The FSO page about the supported hardware features | see The replicant page about the supported hardware features | See The FSO page about the supported hardware features | see The replicant page about the supported hardware features |
Capable of viewing a video | from Very difficult to impossible | yes(with mplayer in command line) | yes(example Youtube using rstp:// or with the integrated player(not tested) ) | Difficult(need to be rotated before etc...) | yes(example Youtube using rstp:// or with the integrated player(not tested) ) | ? | yes(WebM playback works with the integrated player) |
Capable of playing music | On speakers only
( sound quality is very bad on headphones because of a capacitor which value is too low ) |
yes | yes(without issues) | yes(prevent phone ringing) | yes | ? | yes |
Web browsing |
|
yes | yes | yes(with midori, the default browser(eve) is too slow) | yes | ? | yes |
mail client usage | claws mail | claws mail | k9(obtimized for the screen), great integrated hardware keyboard(very fast) | claws mail | k9(obtimized for the screen), capacitive screen + software keyboard for writing mails makes it very slow | not tested(claws mail) | Android mail app works well, k9 should also work, capacitive screen + software keyboard for writing mails makes it very slow |
IRC | yes(xchat(need to be configured for the DPI),else irssi), software keyboard used with stylus(medium speed) | yes(xchat) | yes(yaaic), great integrated hardware keyboard(very fast) | yes(irssi under xterm(else there is a Tab key issue)),great integrated hardware keyboard(very fast), xchat not very obtimized for the DPI | painful with the software keyboard(used with fingers since the screen is capacitive => very slow) (bluetooth keyboard is better but require a non-free firmware, and a table) | ?.has an hardware keyboard | painful with the software keyboard(used with fingers since the screen is capacitive => very slow) (bluetooth keyboard is better but require a non-free firmware, and a table) |
Operating System/distribution support
FSO+Debian | FSO+SHR | Meego | Replicant | |
---|---|---|---|---|
Hardware supported |
|
Details available here |
|
|
Depend on non-free drivers | No | Yes 3D driver is required, and no decent free one exist for phones. | No | |
Non-free firmwares Policy | ? | Not shipped(not redistributable) but promoted,not needed in case of the openmoko freerunner,linux-libre not used | Non free firmwares Shipped | linux-libre not used,a page details which are needed for what but doesn't tell how to install them(altough it's obvious for the experienced user) |
Checked for freedom | ??? | No but some of its developpers are against proprietary software inclusion[4] | contains non-free software | No:The main low-level developer supposed that the sources he forked were free(he asked on IRC on the original project channel),
he replaced non-free not-included parts and looks for help on verifying freedom. As he has no experience in replacing firmwares,he's unsure what to do about them. |
References
- ↑ See http://laforge.gnumonks.org/papers/gsm_phone-anatomy-latest.pdf for a more correct definition
- ↑ Nokia Updates are capable of flashing the modem firmware, in fact unpacking the PR 1.3(The version of the nokia Update)update with 0xFFFF shows that the modem firmware was flashed,also some modem properties changed between PR 1.2(The version of the nokia Update) and PR 1.3(The version of the nokia Update)
- ↑ From #openmoko-cdevel on Freenode on IRC: Jan 17 14:17:15 <JaMa|Wrk> with state of gta01 support in SHR we can just drop it from supported list :/
-
↑ From #openmoko-cdevel on Freenode on IRC:
Jan 14 20:58:10 <mrmoku> GNUtoo|laptop: btw. what about xrandr and rotation on n900?
Jan 14 20:58:28 <GNUtoo|laptop> do we really need that?
Jan 14 20:58:44 <GNUtoo|laptop> I mean we would have to modify xf86-video-omapfb
Jan 14 20:58:49 <GNUtoo|laptop> and write the code ourselves
Jan 14 20:59:07 <GNUtoo|laptop> the rotation driver of nokia depends on non-free 3d
Jan 14 20:59:13 <mrmoku> grr