SHR Introduction

Welcome to SHR, a community driven distribution for (not only) Openmoko Neo phones.

SHR

NOTE: As SHR doesn't provide testing images at the moment this manual was based on unstable images available on the beginning of August 2009. The unstable images get changed very often - the download location changes, default applications change, bugs get hunted and fixed, meaning that some parts of this manual are already outdated.

SHR (Stable Hybrid Release) is here to provide you with Root FileSystem images that you can easily install onto your phone to use as a daily phone. There are many prepackaged programs available that can be installed upon demand by users, it can also be used by developers as a base image for customized and flavored distribution or release. SHR unstable is a testing environment before software get stabilized and it is the main testing ground for FSO releases. SHR testing images (currently not available) provide as much stability as possible for day-to-day usage.

Installation

Getting SHR

First, determine which model of phone you have, the GTA01 (Neo 1973) or the GTA02 (Neo FreeRunner).

You need to download two files for your version as above: kernel and root filesystem. Depending whether you will be installing into the internal NAND memory or on µSD card, you need to either get .jffs2 file for NAND or .tar.gz file for µSD.

Installation on Flash

In order to install your SHR distribution directly to your Freerunner Flash memory (NAND), you need to get the desired filesystem file ( .jffs2 ) as described above and flash your device using the dfu-util tool.

Installation on µSD Card

Installing SHR on your µSD Card depends on the Bootloader you are using, uBoot or Qi.

In simply words, difference between both systems resides on how you must prepare your µSD Card and files you use to fill them:

If you use uBoot, you need to create two partitions. First partition, not so big, in FAT16 or ext2 where you have to place the kernel file (uImage-om-gta02-latest.bin) and second partition in ext2 or ext3 where you have to uncompress the filesystem file (shr-image-om-gta02.tar.gz).

If you use Qi, you only need an ext2 partition into your µSD Card where you uncompress the filesystem image file (shr-image-om-gta02.tar.gz). In this case Qi Bootloader is going to look for the kernel image into the /boot directory for file named uImage-GTA02.bin .

SHR version

Should you ever later wonder what version of SHR you have actually installed, please run

cat /etc/shr-version

or check SHR Settings -> Other -> Image information

Booting

Press the power button shortly to start the phone. The booting splash screen will appear. The first boot after a new installation always takes a bit longer. It is recommended to reboot after this first boot, to make sure all packages got initialized properly.

SHR Boot Splash screen

Initial Setup

On the first boot, Setup is automatically initiated to walk the user through basic setup of the Enlightenment desktop environment. You are able to choose preferred language of the desktop environment and the theme. However both options are only offering one choice at the moment.

language selection

choosing from two themes (from an older version of SHR)

Running SHR

SIM Auth

SIM Auth

SIM Pin is asked for upon start up.

First look

Desktop screen

Illume desktop is the default home screen of the SHR desktop. Application files located in /usr/share/applications are displayed here. All applications are ran fullscreen and you can switch between them by using the Task switcher in the top shelf or by using the < left or right > arrows in the top shelf.

Upon a missed call or an unread message there is a notifier that presents a screen with button to run Messages or Phonelog application, or you can simply close the Notifier with the Top Shelf cross.

First steps

Right after installation and first boot you might want to do a few initial steps:

Network Connection

Establish network connection and SSH into your phone. The root account uses no password by default. You can establish connection either via USB to your desktop and enable NAT or you can connect through Wifi. If you use USB, some setup is required on the desktop side, please read USB_Networking. For Wifi, you can use Network Manager

GSM Network

Check if GSM is working correctly - observe the GSM gadget in the Top Shelve and see reported signal of your GSM operator. If GSM Gadget seems not be running, click Settings and later on Phone. Move GSM Antenna to On.

Audio: Volume

Check and set call volume - this is handled by alsa state files in /usr/share/shr/scenarii/ . To customize speaker volume edit /usr/share/shr/scenarii/gsmhandset.state and change control 4. Values between from 105 to 120 might be sufficient:

SwapSpace

When the RAM is used up, applications get killed. This is particularly bad while doing opkg upgrade. Therefore you might want to create a swap space. Read SwapSpace

Changing root password

Recent images will show up a prompt to change the root password during the first boot wizard.
If for some reason this prompt doesn't show up you can change the password by using the terminal emulator in your SHR installation.

This is very dangerous if you connect using wifi, or USB. You need to activate the root password:

passwd

then type your selected password (2 times)

A much more convenient way might be to install your public-key to ~/.ssh/authorized_keys. You can find your public-key of you host at location:

/path/file

For running

cmd | ssh root@neo anycommand

from your host this might be even mandatory, e.g if you want to pipe anything to the ssh.

Localization

Localize SHR manually

Setting Language

You can change the language of the SHR desktop environment by using the Settings of Illume. For Example, for Czech language: in the Illume top shelf go to Wrench (Settings) -> Language -> Language Settings -> and choose: Čeština. If your language is not in the menu you can install by using opkg.

You can list all available languages by running:

opkg list | grep eglibc-locale-

And install the language of your choice (for example czech):

opkg install eglibc-locale-cs

After this, the Language Settings of Illume will offer Czech.

This will localize the Illume environment and will also set correct lang environment variable. If you wish to have translations for other applications, you need to install them again (presuming they are available):

This will install czech localisation for SHR phone applications, SHR Settings and TangoGps:

The Illume keyboard offers english dictionary correction by default. You can list all the dictionaries available for installation:

opkg list | grep illume-dic

If your language is not available and english is bothering you, you can set an empty dictionary:

echo "" > /usr/lib/enlightenment/modules/illume/dicts/None.dic

By using it, it will get filled by the words you use and after time will start helping and correcting your typing.

Dutch terminal virtual keyboard

Furthermore you can install a different keyboard with a layout which fits your language or alternatives for the default keyboards like the numerical one. The localized Illume keyboards are available in the SHR repository under the name illume-keyboard-LANG.

Note that sometimes after an upgrade of Illume has taken place, these keyboards have to be installed again before the become available again. Removing these packages will restore the availability of the respective original keyboards.

German (and Austria) Language

Find a hopefully stable SHR German language version with Austrian Maps here. The configuration can be used for any
German speaking country. The Austrian maps for Navit can be replaced and Navit is "speaking" German. Navit is configured with a preselect of country "Austria" (see Navit), There are some differences between dictionary de_AT (Austria) and de_DE (Germany).

Date and time

The local timezone is automatically retrieved from the GSM network. Date and time are automatically set from GPS or Network. The easiest way of setting the time for the first time is to run TangoGps (GPS & Map icon) and obtaining GPS fix. Time will then be set automatically after several minutes.

Time can set time also manually.

Via SHR-Settings -> Date/time -> Set time

From linux based desktop:

ssh root@192.168.0.202 "date -u -s `date -u +%m%d%H%M%Y.%S`"

You can also set the hardware clock to the system time:

hwclock --systohc

It is possible to instruct framework on how to set the time and timezone in /etc/frameworkd.conf :

File transfer

After you have established network connection, it is very easy to access and transfer files. The easiest solution is to use Konqueror or Nautilus on your desktop computer and type the following on your location bar. This should provide you with a view of the client's file system on Konqueror or Nautilus and you can easily drag-drop and copy-paste files.

sftp://root@192.168.0.202

Reporting bugs

SHR is a work in progress. If you experience issues, please report them back to SHR. With your report provide logs from

Check if the bug is already reported. If not, add a ticket, be as much precise as you can in the title and the description, in what circumstances the issue happened and so on.

Settings

SHR Settings

SHR Settings

SHR Settings is the main setting application of SHR. It provides an easy way of setting up your phone to your liking - from phone related settings, to requesting resources in order to prevent screen dim or suspend (for example while using GPS).

Please refer to this wiki page about a better way to manage preventing screen dim or suspend.

While some settings are persistent over reboots, others are not.

Main Screen

The main screen is divided into eight categories, which contain several modules. Every SHR Settings module has a specified task - for example controlling the GSM antenna power, setting the time etc.

Settings: Phone

Here you can set if the GSM antenna is on and if your phone number is shown when you call someone.

GSM
In GSM settings you can turn off and on GSM module. After turning off antenna, whole GSM modem is turned off.

To list available providers, click on Operators button. Scanning can take some time. After a while, a list of operators should pop up.

You can't connect to operators marked [forbidden]. After a connection failure, a message is displayed.

Selecting an operator from the list also changes modem registration mode to manual. It won't register to other network, even if some is available and has better signal strengh. To return to automatic mode, click "Automatic" button in operator list.

Call

Phone settings

List providers

You can set if your phone number should be displayed to other party. You can either depend on network decision ("By network") or force it manually ("Manual")

Phoneutils

For the default SHR phone applications to be able to correctly parse incoming calls/messages and match them with your contacts, you will need to set the right country code for your location. (for example 42 for Czech republic) for more info, please go to: http://wiki.openmoko.org/wiki/Phone_Prefixes

SIM

Here you can view some informations about your SIM card and clean phone and messagebooks.

Settings: Profiles

Here you can select the current profile, which the device should use to determine ring tone etc.

After selecting a sid tune as the ring tone, there are available controls to select tune number from the file.

This is changing settings in /etc/freesmartphone/opreferences/conf/phone/default.yaml

ring-volume # Ring Volume control 0 (mini) to ? maxi)
ring-length # min time for ringtone. Must be greater than the duration of you ringtone
ring-loop # define the number of loop of ringtone to play
ring-tone: "ringtone_ringnroll.ogg" # .ogg example
ring-tone: "Arkanoid_PSID.sid" # .sid example, use default tune
ring-tone: "Arkanoid_PSID.sid;tune=2" # .sid example, plays the second tune of that

If you like to test a .sid you can play it using this command on the FR:

Note that it's a ! used and not a | to construct the gstreamer pipe command.

Profiles

Ringtones

Settings: Connectivity

Connectivity top

Connectivity bottom

WiFi

With the "WiFi radio" toggle you can set, if the wifi module is powered. WiFi radio has to be turned on before trying to connect to a WiFi network, unless you try to connect through Mokonnect which is capable of powering it up.

GPRS

To enter APN, login and password fields, just click on the actual value (default: "internet"). Keyboard will pop up.
If you don't know APN, login and passwork, ask your provider.}}

NOTE: You can also use Mokonnect to manage your GPRS connection

To connect to the GPRS network, just click the "Connect" button. Entered values will be saved after successful connection.

USB

With this toggle you can switch USB port between device (Neo to PC) or host (device to Neo) modes.

Bluetooth

To power up Bluetooth module, switch the "Bluetooth radio" toggle to "On". After that, the "Visibility" toggle should arrive - set it to "On" if you want your FR to be visible by other Bluetooth devices on scanning.

Settings: Power

Battery

This module displays informations about battery state - charge, voltage, remaining time etc. To update the data, click the "Update" button.

Here you can also force enable 500mA charging.

Display

With this slider you can easily set the backlight brightness.

NOTE: This setting isn't permanent over sessions. At boot backlight is set back to 100%.

Power

Power

Timeouts

Here you can turn on or off automatic dimming or suspend after idle timeout (see: Timeouts module)

Timeouts

Here you can set up values of idle timeouts used by the device. Timeouts are reached in this order: idle -> idle dim -> idle prelock -> lock -> suspend. Idle, idle prelock and lock aren't used by default in SHR at the moment. This setting changes parameters in /etc/frameworkd.conf :

Settings: Position

GPS

GPS Satelite details

GPS

By default, GPS is turned on only when requested (when you turn on TangoGPS, Navit, omgps or other GPS app). That state corresponds to "Auto" setting. After changing to "Manual", you can force set it to on or off.

GPS information

This page can be used to monitor GPS status. If some value isn't known, then "unknown" is displayed.

You can also view information about every visible satellite and check, which are used for getting a fix. To do that, click "Satellite details".

By default, TangoGPS will save your downloaded maps in /home/root/Maps. But it'll be inconvenient if you flashing again. You can change the path of folder Maps into a folder we created in Memory Card by using Config (Map Repositories) of TangoGPS.

Otherwise, if you have a problem that can't change in that way. Don't be upset, there's another way. First you create a folder Maps on Memory Card:

mkdir /media/mmcblk0/Maps

Then you have to delete folder Maps in your home directory (e.g /home/root/Maps if it exists.

rm -R /home/root/Maps

Then we'll create a symbolic link ("-s") for the created Maps folder on Memory Card in your the home directory of root on the Phone by

ln -s /media/mmcblk0/Maps /home/root/Maps

That should be fine. From now, everytime when you download new maps, it'll be saved directly to folder Maps on Memory Card.

Note: repeat the second and the third step (remove Maps in home/root and create link) have to be repeated if you want to link to the downloaded maps for TangoGPS after flashing phone.

Settings: Date/time

Date & Time

Time

Here you can view and set the time. By default, the time is just displayed, To adjust it, click on "Set time".

After finishing adjusting, click the "OK" button.

Date

This module displays the current date.

Settings: Others

Others

Splash preview

Splash

With this selector you can select the theme used by shr-splash at boot and shutdown. After clicking "Preview", the selected boot image will be displayed for 5 seconds.

PIM

Module used by opimd developers. Doesn't have influence on behaviour of default SHR image.

Every opimd domain has different backends to store its data. The domain reads data from every backend and writes data to the default backend. So with the selector in shr-settings you can choose the backend that stores newly generated data, it doesn't copy or move existing data to a different backend.

Userspace backups

Here you can either archive or restore your files and configurations.

Image information

This module contains basic information about the installed image - name of buildhost, used revision, branch and time of build.

Services

Services

Services debug screen

Here is listed every interesting script from /etc/init.d/ directory.

After clicking on one, you can either start, restart or stop the service and view the result.

Illume settings

The Illume desktop can be easily customized - slide the top shelf down and tap the Settings icon (Wrench).

NOTE: TIP: for better access of the Settings icon, tap and hold the Settings icon, then drag it to the right.

Illume settings (the wrench) provides various options to alter the desktop environment. You can change sizes of elements, single or double click, wallpaper. To access all the various options, open Illume Settings and slide the visible icons to the left, to preview more options on the right hand side.

The little applets in the top shelf (for example Battery, GSM, Bluetooth etc.) are called shelf gadgets and you can configure whether they are visible (on the front part of the top shelf) or hidden (you can access them by sliding the top shelf) through Illume Settings -> Display -> Shelf gadget.

Some screens are not resized properly to fit the phone's display - for example the Wallpapper setting. This is a known bug already reported upstream.

FSO Resources

FSO is in control of each device. These are called resources. If the software wanting to use the device is capable of requesting this resource via d-bus, FSO will do this, otherwise you might need to power the device manually. After the requested resource is released, FSO will power it down. Manual resource request can be done through SHR Setting or you can use fsoraw command. (Using fsoraw is faster and better then running dbus commands)

Unless this resource is enabled you've no eth0 and wifi module is completely un-powered. Use the network manager to set up networks, Mokonnect will power Wifi up automatically when needed.

Bluetooth

You need to have this resource requested to have bluetooth module powered.

GPS

The fso-gpsd is a daemon waiting for gsmd connections, automatically powering the device on and off. When a connection exists, it powers up the GSM. In SHR Settings you can switch GPS completely off SHR Settings -> GPS -> Manual > Off

GSM

You need to have this resource requested to have GSM module powered.

Display

While this resource is requested the display won't be blanked and suspend is disabled.

CPU

Default rules.yaml checks for this resource to disable automatic suspend when it's requested. While this resource is kept suspend is disabled (but screen can be blanked).

Test

A test resource

Network manager

While there are several ways of networking - Wifi, USB, Bluetooth and Gprs - By default, USB networking is enabled in /etc/network/interfaces.

Enhanced configuration is possible through direct editing of /etc/network/interfaces or through Mokonnect.

The connmand daemon with Mokonnect are the recommended user level applications for setting up networking. At the moment, Mokonnect can manage USB, Wifi and Gprs connections, as well as routing and NAT. The Wifi device is not required to be manually turned on via SHR-Settings as Mokonnect will automatically enable the device when needed and disable it after use.

Mokonnect

Mokonnect Wifi

Mokonnect Wifi Scan

Bluetooth

Bluetooth can be used for several different applications - file transfer, networking, HIDD, music playing (A2DP), calling etc. In some occasions, the devices need to be authorized - paired. At the moment, support for some bluetooth functions is better than for others - it is possible to do all mentioned above with the notice that phone calls with bluetooth headset are always routed to the bluetooth even if it is not around, making it quite difficult to use.

Don't forget you need to turn the bluetooth radio on in SHR Settings -> Connectivity -> Bluetooth Radio: On, where you can also make the bluetooth device visible.

SHR uses bluez4 which is completely different from bluez3. The bluetoothd is taking care of most of the bluetooth now. Please see Manually using Bluetooth for detailed information about using bluetooth and also for a list of supported devices.

OBEX file transfer

There are several obex programs allowing file transfer, all in console at the moment. Obexpush installs obextool, and opd daemon:

opkg install obexpush

Default receiving path (editable in /etc/default/opd_args ) does not exist, so create it

mkdir /var/obexpush

Files are then received automatically, no notice, no confirmation... they just silently appear in /var/obexpush

To send some files, first scan for devices:

hcitool scan
Scanning ...
00:16:41:F5:A5:BC laptop

Then send it onto bt address found in the scan:

obextool push image.jpg 00:16:41:F5:A5:BC 10

Connect Bluetooth keyboard

hidd --search

Editors note: This is the old bluez3 way, but it works. New bluez4 way will replace this.

Pairing

Now, you must pair the bluetooth headset with your phone. Make sure the bluetooth chip is powered up (can be done through the Connectivity section in the SHR-Unstable settings manager) and that bluetoothd is running:

Enable mouse cursor

Speedup of suspend and wake up

Some setup types of the bootloader are causing slow suspending and waking up through a long console output. (bug report) This occurs when using the the Qi bootloader in combination with an installation on an SD card and when using the u-boot bootloader.

I you are using Qi and installation on a µSD card, you can change the kernel parameter loglevel=1 in /boot/append-GTA02.

Opimd utils

Opimd utils is a set of several testing scripts to play with the new opimd backends. It also provides opimd-messages program and mainly new opimd-notifier
that is much better then the standard one.

Random errors

No icons, no GSM functions etc. - this is mostly due to errors on your µSD card. Remove your card and fix it in card reader or by booting to another partition (nand) or by reboot and mount read only, then run fsck.

For reboot into nand and fix 1st partition of ext2 on your card

fsck.ext2 /dev/mmcblk0p1

Adding your phone to your hosts

You can add your phone to your hosts file for a name resolving:

You can use the name neo if you added the host neo in /etc/hosts on your desktop computer (add the following line for host neo assuming that the IP-address of your phone is 192.168.0.202.

Installing Software

If you wan to use opkg after you used the installer, make sure packagekitd is not running

killall packagekitd

Cool applications

SHR comes with only a few preinstalled applications but its repository provides more cool stuff. Also, there are applications that are not in SHR repos at the moment but can still be installed. The following few examples are here just to spark your interest:

SHR Introduction

Welcome to SHR, a community driven distribution for (not only) Openmoko Neo phones.

SHR

NOTE: As SHR doesn't provide testing images at the moment this manual was based on unstable images available on the beginning of August 2009. The unstable images get changed very often - the download location changes, default applications change, bugs get hunted and fixed, meaning that some parts of this manual are already outdated.

SHR (Stable Hybrid Release) is here to provide you with Root FileSystem images that you can easily install onto your phone to use as a daily phone. There are many prepackaged programs available that can be installed upon demand by users, it can also be used by developers as a base image for customized and flavored distribution or release. SHR unstable is a testing environment before software get stabilized and it is the main testing ground for FSO releases. SHR testing images (currently not available) provide as much stability as possible for day-to-day usage.

Installation

Getting SHR

First, determine which model of phone you have, the GTA01 (Neo 1973) or the GTA02 (Neo FreeRunner).

You need to download two files for your version as above: kernel and root filesystem. Depending whether you will be installing into the internal NAND memory or on µSD card, you need to either get .jffs2 file for NAND or .tar.gz file for µSD.

Installation on Flash

In order to install your SHR distribution directly to your Freerunner Flash memory (NAND), you need to get the desired filesystem file ( .jffs2 ) as described above and flash your device using the dfu-util tool.

Installation on µSD Card

Installing SHR on your µSD Card depends on the Bootloader you are using, uBoot or Qi.

In simply words, difference between both systems resides on how you must prepare your µSD Card and files you use to fill them:

If you use uBoot, you need to create two partitions. First partition, not so big, in FAT16 or ext2 where you have to place the kernel file (uImage-om-gta02-latest.bin) and second partition in ext2 or ext3 where you have to uncompress the filesystem file (shr-image-om-gta02.tar.gz).

If you use Qi, you only need an ext2 partition into your µSD Card where you uncompress the filesystem image file (shr-image-om-gta02.tar.gz). In this case Qi Bootloader is going to look for the kernel image into the /boot directory for file named uImage-GTA02.bin .

SHR version

Should you ever later wonder what version of SHR you have actually installed, please run

cat /etc/shr-version

or check SHR Settings -> Other -> Image information

Booting

Press the power button shortly to start the phone. The booting splash screen will appear. The first boot after a new installation always takes a bit longer. It is recommended to reboot after this first boot, to make sure all packages got initialized properly.

SHR Boot Splash screen

Initial Setup

On the first boot, Setup is automatically initiated to walk the user through basic setup of the Enlightenment desktop environment. You are able to choose preferred language of the desktop environment and the theme. However both options are only offering one choice at the moment.

language selection

choosing from two themes (from an older version of SHR)

Running SHR

SIM Auth

SIM Auth

SIM Pin is asked for upon start up.

First look

Desktop screen

Illume desktop is the default home screen of the SHR desktop. Application files located in /usr/share/applications are displayed here. All applications are ran fullscreen and you can switch between them by using the Task switcher in the top shelf or by using the < left or right > arrows in the top shelf.

Upon a missed call or an unread message there is a notifier that presents a screen with button to run Messages or Phonelog application, or you can simply close the Notifier with the Top Shelf cross.

First steps

Right after installation and first boot you might want to do a few initial steps:

Network Connection

Establish network connection and SSH into your phone. The root account uses no password by default. You can establish connection either via USB to your desktop and enable NAT or you can connect through Wifi. If you use USB, some setup is required on the desktop side, please read USB_Networking. For Wifi, you can use Network Manager

GSM Network

Check if GSM is working correctly - observe the GSM gadget in the Top Shelve and see reported signal of your GSM operator. If GSM Gadget seems not be running, click Settings and later on Phone. Move GSM Antenna to On.

Audio: Volume

Check and set call volume - this is handled by alsa state files in /usr/share/shr/scenarii/ . To customize speaker volume edit /usr/share/shr/scenarii/gsmhandset.state and change control 4. Values between from 105 to 120 might be sufficient:

SwapSpace

When the RAM is used up, applications get killed. This is particularly bad while doing opkg upgrade. Therefore you might want to create a swap space. Read SwapSpace

Changing root password

Recent images will show up a prompt to change the root password during the first boot wizard.
If for some reason this prompt doesn't show up you can change the password by using the terminal emulator in your SHR installation.

This is very dangerous if you connect using wifi, or USB. You need to activate the root password:

passwd

then type your selected password (2 times)

A much more convenient way might be to install your public-key to ~/.ssh/authorized_keys. You can find your public-key of you host at location:

/path/file

For running

cmd | ssh root@neo anycommand

from your host this might be even mandatory, e.g if you want to pipe anything to the ssh.

Localization

Localize SHR manually

Setting Language

You can change the language of the SHR desktop environment by using the Settings of Illume. For Example, for Czech language: in the Illume top shelf go to Wrench (Settings) -> Language -> Language Settings -> and choose: Čeština. If your language is not in the menu you can install by using opkg.

You can list all available languages by running:

opkg list | grep eglibc-locale-

And install the language of your choice (for example czech):

opkg install eglibc-locale-cs

After this, the Language Settings of Illume will offer Czech.

This will localize the Illume environment and will also set correct lang environment variable. If you wish to have translations for other applications, you need to install them again (presuming they are available):

This will install czech localisation for SHR phone applications, SHR Settings and TangoGps:

The Illume keyboard offers english dictionary correction by default. You can list all the dictionaries available for installation:

opkg list | grep illume-dic

If your language is not available and english is bothering you, you can set an empty dictionary:

echo "" > /usr/lib/enlightenment/modules/illume/dicts/None.dic

By using it, it will get filled by the words you use and after time will start helping and correcting your typing.

Dutch terminal virtual keyboard

Furthermore you can install a different keyboard with a layout which fits your language or alternatives for the default keyboards like the numerical one. The localized Illume keyboards are available in the SHR repository under the name illume-keyboard-LANG.

Note that sometimes after an upgrade of Illume has taken place, these keyboards have to be installed again before the become available again. Removing these packages will restore the availability of the respective original keyboards.

German (and Austria) Language

Find a hopefully stable SHR German language version with Austrian Maps here. The configuration can be used for any
German speaking country. The Austrian maps for Navit can be replaced and Navit is "speaking" German. Navit is configured with a preselect of country "Austria" (see Navit), There are some differences between dictionary de_AT (Austria) and de_DE (Germany).

Date and time

The local timezone is automatically retrieved from the GSM network. Date and time are automatically set from GPS or Network. The easiest way of setting the time for the first time is to run TangoGps (GPS & Map icon) and obtaining GPS fix. Time will then be set automatically after several minutes.

Time can set time also manually.

Via SHR-Settings -> Date/time -> Set time

From linux based desktop:

ssh root@192.168.0.202 "date -u -s `date -u +%m%d%H%M%Y.%S`"

You can also set the hardware clock to the system time:

hwclock --systohc

It is possible to instruct framework on how to set the time and timezone in /etc/frameworkd.conf :

File transfer

After you have established network connection, it is very easy to access and transfer files. The easiest solution is to use Konqueror or Nautilus on your desktop computer and type the following on your location bar. This should provide you with a view of the client's file system on Konqueror or Nautilus and you can easily drag-drop and copy-paste files.

sftp://root@192.168.0.202

Reporting bugs

SHR is a work in progress. If you experience issues, please report them back to SHR. With your report provide logs from

Check if the bug is already reported. If not, add a ticket, be as much precise as you can in the title and the description, in what circumstances the issue happened and so on.

Settings

SHR Settings

SHR Settings

SHR Settings is the main setting application of SHR. It provides an easy way of setting up your phone to your liking - from phone related settings, to requesting resources in order to prevent screen dim or suspend (for example while using GPS).

Please refer to this wiki page about a better way to manage preventing screen dim or suspend.

While some settings are persistent over reboots, others are not.

Main Screen

The main screen is divided into eight categories, which contain several modules. Every SHR Settings module has a specified task - for example controlling the GSM antenna power, setting the time etc.

Settings: Phone

Here you can set if the GSM antenna is on and if your phone number is shown when you call someone.

GSM
In GSM settings you can turn off and on GSM module. After turning off antenna, whole GSM modem is turned off.

To list available providers, click on Operators button. Scanning can take some time. After a while, a list of operators should pop up.

You can't connect to operators marked [forbidden]. After a connection failure, a message is displayed.

Selecting an operator from the list also changes modem registration mode to manual. It won't register to other network, even if some is available and has better signal strengh. To return to automatic mode, click "Automatic" button in operator list.

Call

Phone settings

List providers

You can set if your phone number should be displayed to other party. You can either depend on network decision ("By network") or force it manually ("Manual")

Phoneutils

For the default SHR phone applications to be able to correctly parse incoming calls/messages and match them with your contacts, you will need to set the right country code for your location. (for example 42 for Czech republic) for more info, please go to: http://wiki.openmoko.org/wiki/Phone_Prefixes

SIM

Here you can view some informations about your SIM card and clean phone and messagebooks.

Settings: Profiles

Here you can select the current profile, which the device should use to determine ring tone etc.

After selecting a sid tune as the ring tone, there are available controls to select tune number from the file.

This is changing settings in /etc/freesmartphone/opreferences/conf/phone/default.yaml

ring-volume # Ring Volume control 0 (mini) to ? maxi)
ring-length # min time for ringtone. Must be greater than the duration of you ringtone
ring-loop # define the number of loop of ringtone to play
ring-tone: "ringtone_ringnroll.ogg" # .ogg example
ring-tone: "Arkanoid_PSID.sid" # .sid example, use default tune
ring-tone: "Arkanoid_PSID.sid;tune=2" # .sid example, plays the second tune of that

If you like to test a .sid you can play it using this command on the FR:

Note that it's a ! used and not a | to construct the gstreamer pipe command.

Profiles

Ringtones

Settings: Connectivity

Connectivity top

Connectivity bottom

WiFi

With the "WiFi radio" toggle you can set, if the wifi module is powered. WiFi radio has to be turned on before trying to connect to a WiFi network, unless you try to connect through Mokonnect which is capable of powering it up.

GPRS

To enter APN, login and password fields, just click on the actual value (default: "internet"). Keyboard will pop up.
If you don't know APN, login and passwork, ask your provider.}}

NOTE: You can also use Mokonnect to manage your GPRS connection

To connect to the GPRS network, just click the "Connect" button. Entered values will be saved after successful connection.

USB

With this toggle you can switch USB port between device (Neo to PC) or host (device to Neo) modes.

Bluetooth

To power up Bluetooth module, switch the "Bluetooth radio" toggle to "On". After that, the "Visibility" toggle should arrive - set it to "On" if you want your FR to be visible by other Bluetooth devices on scanning.

Settings: Power

Battery

This module displays informations about battery state - charge, voltage, remaining time etc. To update the data, click the "Update" button.

Here you can also force enable 500mA charging.

Display

With this slider you can easily set the backlight brightness.

NOTE: This setting isn't permanent over sessions. At boot backlight is set back to 100%.

Power

Power

Timeouts

Here you can turn on or off automatic dimming or suspend after idle timeout (see: Timeouts module)

Timeouts

Here you can set up values of idle timeouts used by the device. Timeouts are reached in this order: idle -> idle dim -> idle prelock -> lock -> suspend. Idle, idle prelock and lock aren't used by default in SHR at the moment. This setting changes parameters in /etc/frameworkd.conf :

Settings: Position

GPS

GPS Satelite details

GPS

By default, GPS is turned on only when requested (when you turn on TangoGPS, Navit, omgps or other GPS app). That state corresponds to "Auto" setting. After changing to "Manual", you can force set it to on or off.

GPS information

This page can be used to monitor GPS status. If some value isn't known, then "unknown" is displayed.

You can also view information about every visible satellite and check, which are used for getting a fix. To do that, click "Satellite details".

By default, TangoGPS will save your downloaded maps in /home/root/Maps. But it'll be inconvenient if you flashing again. You can change the path of folder Maps into a folder we created in Memory Card by using Config (Map Repositories) of TangoGPS.

Otherwise, if you have a problem that can't change in that way. Don't be upset, there's another way. First you create a folder Maps on Memory Card:

mkdir /media/mmcblk0/Maps

Then you have to delete folder Maps in your home directory (e.g /home/root/Maps if it exists.

rm -R /home/root/Maps

Then we'll create a symbolic link ("-s") for the created Maps folder on Memory Card in your the home directory of root on the Phone by

ln -s /media/mmcblk0/Maps /home/root/Maps

That should be fine. From now, everytime when you download new maps, it'll be saved directly to folder Maps on Memory Card.

Note: repeat the second and the third step (remove Maps in home/root and create link) have to be repeated if you want to link to the downloaded maps for TangoGPS after flashing phone.

Settings: Date/time

Date & Time

Time

Here you can view and set the time. By default, the time is just displayed, To adjust it, click on "Set time".

After finishing adjusting, click the "OK" button.

Date

This module displays the current date.

Settings: Others

Others

Splash preview

Splash

With this selector you can select the theme used by shr-splash at boot and shutdown. After clicking "Preview", the selected boot image will be displayed for 5 seconds.

PIM

Module used by opimd developers. Doesn't have influence on behaviour of default SHR image.

Every opimd domain has different backends to store its data. The domain reads data from every backend and writes data to the default backend. So with the selector in shr-settings you can choose the backend that stores newly generated data, it doesn't copy or move existing data to a different backend.

Userspace backups

Here you can either archive or restore your files and configurations.

Image information

This module contains basic information about the installed image - name of buildhost, used revision, branch and time of build.

Services

Services

Services debug screen

Here is listed every interesting script from /etc/init.d/ directory.

After clicking on one, you can either start, restart or stop the service and view the result.

Illume settings

The Illume desktop can be easily customized - slide the top shelf down and tap the Settings icon (Wrench).

NOTE: TIP: for better access of the Settings icon, tap and hold the Settings icon, then drag it to the right.

Illume settings (the wrench) provides various options to alter the desktop environment. You can change sizes of elements, single or double click, wallpaper. To access all the various options, open Illume Settings and slide the visible icons to the left, to preview more options on the right hand side.

The little applets in the top shelf (for example Battery, GSM, Bluetooth etc.) are called shelf gadgets and you can configure whether they are visible (on the front part of the top shelf) or hidden (you can access them by sliding the top shelf) through Illume Settings -> Display -> Shelf gadget.

Some screens are not resized properly to fit the phone's display - for example the Wallpapper setting. This is a known bug already reported upstream.

FSO Resources

FSO is in control of each device. These are called resources. If the software wanting to use the device is capable of requesting this resource via d-bus, FSO will do this, otherwise you might need to power the device manually. After the requested resource is released, FSO will power it down. Manual resource request can be done through SHR Setting or you can use fsoraw command. (Using fsoraw is faster and better then running dbus commands)

Unless this resource is enabled you've no eth0 and wifi module is completely un-powered. Use the network manager to set up networks, Mokonnect will power Wifi up automatically when needed.

Bluetooth

You need to have this resource requested to have bluetooth module powered.

GPS

The fso-gpsd is a daemon waiting for gsmd connections, automatically powering the device on and off. When a connection exists, it powers up the GSM. In SHR Settings you can switch GPS completely off SHR Settings -> GPS -> Manual > Off

GSM

You need to have this resource requested to have GSM module powered.

Display

While this resource is requested the display won't be blanked and suspend is disabled.

CPU

Default rules.yaml checks for this resource to disable automatic suspend when it's requested. While this resource is kept suspend is disabled (but screen can be blanked).

Test

A test resource

Network manager

While there are several ways of networking - Wifi, USB, Bluetooth and Gprs - By default, USB networking is enabled in /etc/network/interfaces.

Enhanced configuration is possible through direct editing of /etc/network/interfaces or through Mokonnect.

The connmand daemon with Mokonnect are the recommended user level applications for setting up networking. At the moment, Mokonnect can manage USB, Wifi and Gprs connections, as well as routing and NAT. The Wifi device is not required to be manually turned on via SHR-Settings as Mokonnect will automatically enable the device when needed and disable it after use.

Mokonnect

Mokonnect Wifi

Mokonnect Wifi Scan

Bluetooth

Bluetooth can be used for several different applications - file transfer, networking, HIDD, music playing (A2DP), calling etc. In some occasions, the devices need to be authorized - paired. At the moment, support for some bluetooth functions is better than for others - it is possible to do all mentioned above with the notice that phone calls with bluetooth headset are always routed to the bluetooth even if it is not around, making it quite difficult to use.

Don't forget you need to turn the bluetooth radio on in SHR Settings -> Connectivity -> Bluetooth Radio: On, where you can also make the bluetooth device visible.

SHR uses bluez4 which is completely different from bluez3. The bluetoothd is taking care of most of the bluetooth now. Please see Manually using Bluetooth for detailed information about using bluetooth and also for a list of supported devices.

OBEX file transfer

There are several obex programs allowing file transfer, all in console at the moment. Obexpush installs obextool, and opd daemon:

opkg install obexpush

Default receiving path (editable in /etc/default/opd_args ) does not exist, so create it

mkdir /var/obexpush

Files are then received automatically, no notice, no confirmation... they just silently appear in /var/obexpush

To send some files, first scan for devices:

hcitool scan
Scanning ...
00:16:41:F5:A5:BC laptop

Then send it onto bt address found in the scan:

obextool push image.jpg 00:16:41:F5:A5:BC 10

Connect Bluetooth keyboard

hidd --search

Editors note: This is the old bluez3 way, but it works. New bluez4 way will replace this.

Pairing

Now, you must pair the bluetooth headset with your phone. Make sure the bluetooth chip is powered up (can be done through the Connectivity section in the SHR-Unstable settings manager) and that bluetoothd is running:

Enable mouse cursor

Speedup of suspend and wake up

Some setup types of the bootloader are causing slow suspending and waking up through a long console output. (bug report) This occurs when using the the Qi bootloader in combination with an installation on an SD card and when using the u-boot bootloader.

I you are using Qi and installation on a µSD card, you can change the kernel parameter loglevel=1 in /boot/append-GTA02.

Opimd utils

Opimd utils is a set of several testing scripts to play with the new opimd backends. It also provides opimd-messages program and mainly new opimd-notifier
that is much better then the standard one.

Random errors

No icons, no GSM functions etc. - this is mostly due to errors on your µSD card. Remove your card and fix it in card reader or by booting to another partition (nand) or by reboot and mount read only, then run fsck.

For reboot into nand and fix 1st partition of ext2 on your card

fsck.ext2 /dev/mmcblk0p1

Adding your phone to your hosts

You can add your phone to your hosts file for a name resolving:

You can use the name neo if you added the host neo in /etc/hosts on your desktop computer (add the following line for host neo assuming that the IP-address of your phone is 192.168.0.202.

Installing Software

If you wan to use opkg after you used the installer, make sure packagekitd is not running

killall packagekitd

Cool applications

SHR comes with only a few preinstalled applications but its repository provides more cool stuff. Also, there are applications that are not in SHR repos at the moment but can still be installed. The following few examples are here just to spark your interest: