English • العربية • Български • Česky • Dansk • Deutsch • Esperanto • Eesti • Español • فارسی • Suomi • Français • עברית • Magyar • Italiano • 한국어 • Nederlands • Norsk (bokmål) • Polski • Português • Română • Русский • Svenska • Slovenčina • Українська • 中文(中国大陆) • 中文(台灣) • Euskara • Català
SHR is one of the many distributions that currently work on the Openmoko phones. You can compare a distribution with an Operating System on normal computers. It gives the phone all the software needed for operating. For more information about the different flavors, see distributions.
SHR (Stable Hybrid Release) is a community driven distribution based on the FSO framework. SHR can use several different graphical toolkits, for example GTK or EFL. At first, SHR was introduced in order to use the Om 2007.2 GTK software in combination with the new FSO, but things have changed.
In the overview below are all the essential features and their status for the current out of the box SHR unstable distribution (latest+modules+updates). Green indicates that this part is functioning well, red indicates a known requirement which will be implemented later on and orange indicates functionality that can (and should) be fixed easily in the distribution for known fixes are available.
|System||Power Management||Suspend||when slow, use Qi|
|System||Package manager||Installing and upgrading packages||Works well. For packages not in the repository, just ask for them to be added via the trac|
|System||Keyboard||Offer stylus and finger friendly keyboards||install alternative keyboards SHR ticket #200|
|GSM||Network||Connect via SIM and PIN|
|GSM||Network||Flight mode||SHR ticket #333|
|GSM||Dailer||Receiving Call||no way to adjust (double) audio in and audio out|
|GSM||Dailer||Making Call||no way to adjust (double) audio in and audio out|
|GSM||Phone Log||Overview Log (In, Out, Answered, All)|
|GSM||Phone Log||Display Missed Calls|
|GSM||Phone Log||Making reply Call from Log|
|GSM||Phone Log||Sending reply SMS from Log|
|Shared||Phone Log||Creating new SIM contact from Log|
|GSM||SMS||Receiving SMS||multipart SMS not concatenated SHR ticket #121|
|GSM||SMS||SIM phonebook lookup for SMS|
|GSM||SMS||View overview of received SMS|
|GSM||SMS||Selecting SMS from Overview|
|GSM||SMS||Sending new SMS||multipart SMS not being sent SHR ticket #121|
|GSM||SMS||Sending reply SMS||multipart SMS not being sent SHR ticket #121|
|GSM||SMS||Making reply Call|
|GSM||SMS||Storing received contact in contacts|
|GSM||GPRS||Configuring and Enabling GPRS||Settings->Connectivity: GPRS connect|
|Shared||Contacts||Reading SIM contacts|
|Shared||Contacts||Selecting SIM contact from Overview|
|Shared||Contacts||Creating new SIM contact|
|Shared||Contacts||Editing SIM contact|
|Shared||Contacts||Deleting SIM contact|
|Shared||Contacts||Quick lookup contact with keyboard|
|Shared||Contacts||Sending SMS to contact|
|Shared||Contacts||Sending contact via SMS to contact|
|WiFi||Ethernet||Configuring and Enabling TCP/IP||1) Settings->Connectivity->WiFi radio=On 2) Mokonnect|
|GPS||Service||Receiving GPS data||automatically turning on|
|USB||Ethernet||Configuring and Enabling TCP/IP||done automatically with insecure password|
|Audio||Headset||Handsfree calling||headphones work, microphone does not work (needs checking!)|
Installing SHR is very easy. It is stable enough for a daily use.
You can alternatively use the testing version, however as of writing this is very out of date.
A "stable" version will be available when the time is right.
The image links above are for GTA02 (Freerunner). See also other images
- the Qi bootloader (optional, u-boot should work as well)
- the kernel
- the root filesystem : flash image
Alternatively, you may install it on uSD (for instance with Qi, by extracting contents of the root filesystem tarball on a primary ext2/3 partition.
You can view the sources here.
Connecting your FreeRunner to your computer
For the next configuration steps, you will need to type some commands. It is much easier to type on a real keyboard than on a touch screen. So you need to connect your FR to you computer, and make a bridge to internet. Use the USB Networking page for help about configuring your host computer. NOTE: On first boot after flashing, USB networking can not work. If it's happening, simply reboot and try again.
When you have internet connection forwarded via USB (for example), before anything else you can refresh repositories by running:
Setting local time
As any linux system, the UTC time is used by the system. First of all, adjust this time:
date -u -s 010220052009 Fri Jan 2 20:05:00 UTC 2009
Then, you need to "localise" your system. Search for the appropriate country with:
opkg list | grep tzdata
then install the one corresponding to your area.
opkg install tzdata-europe
Then select your city (search the city available in /usr/share/zoneinfo/your-country, example Paris)
ln -sf /usr/share/zoneinfo/Europe/Paris /etc/localtime
You can fully localise your system by installing the glibc-binary-localedata correponding to your langage. Search the ones available with:
opkg list | grep glibc-binary-localedata
install with (example for France)
opkg install glibc-binary-localedata-fr-fr
Changing root password
SHR is shipped without root password (just press enter)
This is dangerous if you connect using USB. You need to activate the root password:
and type your selected password (2 times)
Customize the RingTone
You need to have a file containing the RingTone you want for your FR. You can find some at RingTone
Then transfer it to your FR :
scp file firstname.lastname@example.org:/usr/share/sounds/
Now you can select ringtone in SHR Settings.
Install PIM Software
If you want to use your iCal-Calendar data on your freerunner install "dates" on your FR. Your FR needs internet connection for the following installation procedure (see USB Networking)
opkg update opkg install dates tasks
Start dates once and enter a test event. You will find the calendar.ics file in a subdirectory of
You can find the tasks.ics file in a subdirectory of
Copy your exported iCal-File to that folders mentioned above and replace calender.ics and tasks.ics. The events will be visible in PIM-software dates, when you restart your freerunner.
Question: Is there a workaround to make the application dates and tasks to reload the iCal files during runtime?
Mic and HP
The first idea is to use alsamixer; bad idea! There are 94 controls, and your modifications will be lost at the next reboot.Finding documentation is not easy. Here is my understanding: Scenari are used for each case. They are located in /usr/share/shr/scenarii/ - capturehandset.state - gsmheadset.state - headset.state - voip-handset.state - gsmhandset.state - gsmspeakerout.state - stereoout.state
Each file is a set of value for the 94 parameters. I have identified some:
- Control 48: internal mic of the tel (set to 2 or 3)
- Control 4 : internal speaker (set from 110 to 120)
- Control 49: headset mic
- Control 3 : headset speaker
NOTE: every Neo seems to be different regarding audio. Probably you have to tweak your own audio config.
Generic info to the Neo soundsystem:
SHR is not implementing a PIM (Personal Information Manager) yet. Work is in progress, but to included in SHR testing this has some consequences on daily use:
- Only contacts on the SIM card are available.
After a suspend, the FR does not ringing anymore for incoming calls, it only vibrates. This is due to navit. To correct this :
opkg remove -force-depends speech-dispatcher
opkg upgrade "fork failed"
Beware that a failed opkg upgrade can result in a non-booting phone :-(
opkg update cd /media/card dd if=/dev/zero of=swapfile.swp bs=1k count=128000 mkswap swapfile.swp swapon swapfile.swp opkg upgrade swapoff swapfile.swp
Note that using your card for swap could potentially wear it out faster, though probably no need to worry just for the above workaround.