SettingsGUI

From Openmoko

(Difference between revisions)
Jump to: navigation, search
m (Download: 0.7b - bugfix on GSM page; - also - fixed link to 0.7; added version table)
(link pppd etc.)
Line 8: Line 8:
  
 
== Overview ==
 
== Overview ==
Until OpenMoko releases an official GUI-Tool to change settings, SettingsGUI allows you to set various settings of the gta01.
+
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]]).
 
This program is written in [[Python]] using pygtk. It can be used only if those are present in your environment (see [[SettingsGUI#Environment]]).
Line 16: Line 16:
 
* Screen (Backlight enable/disable, Backlight brightness, Screen Orientation)
 
* Screen (Backlight enable/disable, Backlight brightness, Screen Orientation)
 
* Audio (profile selection, volume, mute, save to profile)
 
* Audio (profile selection, volume, mute, save to profile)
* GSM (restart gsmd, signal strength, provider, status)
+
* [[GSM]] (restart [[gsmd]], signal strength, provider, status)
* GPRS (load and save settings from and to /etc/ppp/peers/, connect, set APN, User, Password, Number)
+
* [[GPRS]] (load and save settings from and to /etc/ppp/peers/, connect, set APN, User, Password, Number)
  
 
== Planned Features ==
 
== Planned Features ==
  
 
* GSM (Provider selection)
 
* GSM (Provider selection)
* Bluetooth (device scanning, connection, signal strength)
+
* [[Bluetooth]] (device scanning, connection, signal strength)
 
* GPRS (display transfer rate, activate GPRS router)
 
* GPRS (display transfer rate, activate GPRS router)
* Battery (show capacity, voltage, charger-status)
+
* [[Battery]] (show capacity, voltage, charger-status)
  
 
== Comment on GSM Support ==
 
== Comment on GSM Support ==
Line 34: Line 34:
 
* 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 seems to be due to a bug in gsmd...)
 
* 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 seems to be 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.}}
+
{{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" in the dialog:
+
* When the GPRS connection is still active ([[pppd]] running on the system) you should close the connection as gsmd can't start up while pppd is using the modem connection - chose "Yes" in the dialog:
  
 
[[Image:SettingsGUI-0.7-close gprs.png|170px]]
 
[[Image:SettingsGUI-0.7-close gprs.png|170px]]
Line 98: Line 98:
 
== Environment ==
 
== Environment ==
  
:''For more, see [[Python]].
+
:''For more, see [[Python]].''
  
 
The following archives will have to be installed (source packages: python python-pygtk python-pycairo python-pygobject):
 
The following archives will have to be installed (source packages: python python-pygtk python-pycairo python-pygobject):
Line 118: Line 118:
  
 
=== from package ===  
 
=== from package ===  
* add Alessandros repository as a ipkg source
+
* add Alessandros repository as a [[ipkg]] source
 
   
 
   
 
  vi /etc/ipkg/alessandro.conf
 
  vi /etc/ipkg/alessandro.conf

Revision as of 20:55, 25 November 2007

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


Contents

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, activate GPRS router)
  • 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 seems to be 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 running on the system) you should close the connection as gsmd can't start up while pppd is using the modem connection - chose "Yes" in the dialog:

SettingsGUI-0.7-close gprs.png

Comment on GPRS Support

If you have problems connecting check:

  • If the modem is initialized and registered to a network (Start gsmd and register)
  • If your login data (mostly APN and User are okay)
  • When the gsmd still running you should close the connection as gsmd will interfere with pppd - chose "Yes" in the dialog:

SettingsGUI-0.7-terminate-gsmd.png

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

Version Download Release Focus
0.7b (current) SettingsGUI-0.7b.tar.bz2 bugfix on GSM page, bug prevented detection of gsmd connection (emerged with libgsmd-tool update)
0.7 SettingsGUI-0.7.tar.bz2 cleanups, using AT mode, distutils, ATDT -> ATD
0.6 SettingsGUI-0.6.tar.gz audio settings (mute, save), gprs settings (all new)
older Directory listing

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

from package

  • add Alessandros repository as a ipkg source
vi /etc/ipkg/alessandro.conf
  • insert
src/gz aiurlano-armv4t http://aiurlano.netsons.org/OpenMoko/ipk/armv4t
src/gz aiurlano-all http://aiurlano.netsons.org/OpenMoko/ipk/all
  • update your db
ipkg update
  • install latest settingsgui
ipkg install settingsgui


from source

  • download file to Neo (e.g. using wget)
  • Uncompress tar.bz2 file (e.g. e.g. tar -xjvf file.tar.bz2)
  • install:
cd settingsgui-x.x
mv settingsgui  settingsgui.py
mkdir settingsgui 
mv * settingsgui
mv settingsgui/settingsgui.py ./
  • run:
export DISPLAY=:0.0
python settingsgui.py &

Comment on Installation

From Version 0.7 Python distutils is used. So you could also use the setup.py script to install the package:

python settingsgui-x.x/setup.py install

But to do this you'll also have to install the packages:

python-compile python-devel python-stringold python-distutils
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, activate GPRS router)
  • 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 seems to be 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" in the dialog:

SettingsGUI-0.7-close gprs.png

Comment on GPRS Support

If you have problems connecting check:

  • If the modem is initialized and registered to a network (Start gsmd and register)
  • If your login data (mostly APN and User are okay)
  • When the gsmd still running you should close the connection as gsmd will interfere with pppd - chose "Yes" in the dialog:

SettingsGUI-0.7-terminate-gsmd.png

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

Version Download Release Focus
0.7b (current) SettingsGUI-0.7b.tar.bz2 bugfix on GSM page, bug prevented detection of gsmd connection (emerged with libgsmd-tool update)
0.7 SettingsGUI-0.7.tar.bz2 cleanups, using AT mode, distutils, ATDT -> ATD
0.6 SettingsGUI-0.6.tar.gz audio settings (mute, save), gprs settings (all new)
older Directory listing

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

from package

  • add Alessandros repository as a ipkg source
vi /etc/ipkg/alessandro.conf
  • insert
src/gz aiurlano-armv4t http://aiurlano.netsons.org/OpenMoko/ipk/armv4t
src/gz aiurlano-all http://aiurlano.netsons.org/OpenMoko/ipk/all
  • update your db
ipkg update
  • install latest settingsgui
ipkg install settingsgui


from source

  • download file to Neo (e.g. using wget)
  • Uncompress tar.bz2 file (e.g. e.g. tar -xjvf file.tar.bz2)
  • install:
cd settingsgui-x.x
mv settingsgui  settingsgui.py
mkdir settingsgui 
mv * settingsgui
mv settingsgui/settingsgui.py ./
  • run:
export DISPLAY=:0.0
python settingsgui.py &

Comment on Installation

From Version 0.7 Python distutils is used. So you could also use the setup.py script to install the package:

python settingsgui-x.x/setup.py install

But to do this you'll also have to install the packages:

python-compile python-devel python-stringold python-distutils