View source for SettingsGUI

From Openmoko

Jump to: navigation, search

You do not have permission to edit this page, for the following reasons:

  • The action you have requested is limited to users in the group: Administrators.
  • You must confirm your email address before editing pages. Please set and validate your email address through your user preferences.

You can view and copy the source of this page:

Templates used on this page:

Return to SettingsGUI.

Personal tools
In progress: This article or section documents one or more features whose implementation are in progress.
File:SettingsGUI-0.7-screen.png
SettingsGUI - Screen Settings
SettingsGUI - Audio Settings
File:SettingsGUI-0.7-gsm.png
SettingsGUI - GSM Settings
File:SettingsGUI-0.7-gprs.png
SettingsGUI - GPRS Settings


Overview

Until OpenMoko releases an official GUI-Tool to change settings, SettingsGUI allows you to set various settings of the gta01.

This program is written in Python using pygtk. It can be used only if those are present in your environment (see SettingsGUI#Environment).

Current Features

  • Screen (Backlight enable/disable, Backlight brightness, Screen Orientation)
  • Audio (profile selection, volume, mute, save to profile)
  • GSM (restart gsmd, signal strength, provider, status)
  • GPRS (load and save settings from and to /etc/ppp/peers/, connect, set APN, User, Password, Number)

Planned Features

  • GSM (Provider selection)
  • Bluetooth (device scanning, connection, signal strength)
  • GPRS (display transfer rate)
  • Battery (show capacity, voltage, charger-status)

Comment on GSM Support

  • As there are no gsmd python bindings available at the time, SettingGUI uses python-subprocess and threads to communicate to the commandline of libgsmd-tool for the time being.
  • To prevent interference with the GSM modem you have to expicitly power-up and register the modem by toggeling the "GSM State" checkboxes.
  • If you manually register to the gsm network (by toggeling the "Register" checkbox) SettingsGUI will sometimes not notice when the connection is established. Just toggle the init checkbox after about 3 seconds. (this is due to a bug in gsmd...)
NOTE: From Version 0.7 the atcmd mode of libgsmd-tool is used. To use it revision 2957 (2007-09-12) or later of gsmd is needed. If you have an older version of gsmd - or an older OpenMoko image use the upgrade function of ipkg, install a newer jffs2 image or use version 0.6 of SettingsGUI.


  • When the GPRS connection is still active (pppd runnung on the system) you should close the connection as gsmd can't start up while pppd is using the modem connection - chose "Yes":

Image:SettingsGUI-0.7-close gprs.png

Comment on GPRS Support

This is still experimental.

If you have problems connecting check:

  • If the modem is initialized and registered to a network ("Reconnect to gsmd")
  • If your login data (mostly APN and User are okay)
  • For the current (2007-09-06) version of gsmd it sometimes helps to kill the gsmd (to prevent interference)
    • There is a button to do so in the gsm settings ("Terminate gsmd")
    • Keep in mind that you can't check the connection state after that


The connection will be terminated when you quit the application. However saved peer configurations can be called independently using:

pppd debug call gprs # where gprs is the peer


Default configuration files are defined in GlobalConfiguration.py. The peer configuration, a connect- and disconnect chat script are written to /etc/ppp/peers/ on first startup if you don't already have a peer in /etc/ppp/peers/. When the connect button is pressed SettingsGUI will create latest_* files in /etc/ppp/peers/ and start the pppd with this latest_* peer.


SettingsGUI also brings a default Nameserver in case you don't have a valid /etc/resolve.conf. The IP is from the OpenDNS Project and will only work if your GPRS provider allows DNS access to this server.


If you have to change anything else than APN, user, password or dial in number for your provider please leave a note at the Discussion Page.


For details and background information on GPRS see Manually using GPRS.

Download

SettingsGUI-0.6.tar.gz

SettingsGUI-0.6.tar.gz (Mirror)


Thanks to Alessandro there also is an .ipk and a .bb file. Have a look at his user site.

Environment

For more, see Python.

The following archives will have to be installed (source packages: python python-pygtk python-pycairo python-pygobject):

  • python-core
  • python-misc
  • python-lang
  • python-pygtk
  • python-subprocess
  • python-threading (should be a dependency of python-subprocess - todo: fix)
  • python-pygobject (should be a dependency of python-pygtk - todo: fix)

If you want to test this and do not have a build environment, you can 'ipkg install' the python components from the ScaredyCat repositories.

NOTE: These packages take up a considerable amout of space (about 10 MByte), make sure that you have enough free space or install the packages to the media card as explained in package management.


Installation / Execution

  • download file to Neo (e.g. using wget)
  • Uncompress tar.gz file (e.g. e.g. tar -xzvf file.tar.gz)
  • run:
export DISPLAY=:0.0
python SettingsGUI-x.x/SettingsGUI.py &