User:Thseiler

From Openmoko

(Difference between revisions)
Jump to: navigation, search
m (Some thoughts on a gsmd wrapper)
m (My Person and my ideas)
 
Line 1: Line 1:
 +
=== About me ===
 +
 +
Thomas Seiler, MSc Telecom with a major in embedded systems.
 +
 +
My Interestes:
 +
* Getting capacitive Sliderbar Sensors into the Neo GTA02/GTA03 (Cypress PSOC / Capsense)
 +
* Makeing gsmd more robust
 +
* Wrap platform functionality into a consistend DBUS based interface.
 +
* Speeding up the boot process
 +
 +
 
===Thoughts on gsmd===
 
===Thoughts on gsmd===
  
 
* do not reset modem on startup
 
* do not reset modem on startup
 
* do instead query modem state
 
* do instead query modem state
 +
* have a struct that represents the modems state
 
* have a separad cli tool to init the modem via gsmd in a synchronnous manner, called from the rc-init scripts
 
* have a separad cli tool to init the modem via gsmd in a synchronnous manner, called from the rc-init scripts
  

Latest revision as of 14:01, 7 October 2007

Contents

[edit] About me

Thomas Seiler, MSc Telecom with a major in embedded systems.

My Interestes:

  • Getting capacitive Sliderbar Sensors into the Neo GTA02/GTA03 (Cypress PSOC / Capsense)
  • Makeing gsmd more robust
  • Wrap platform functionality into a consistend DBUS based interface.
  • Speeding up the boot process


[edit] Thoughts on gsmd

  • do not reset modem on startup
  • do instead query modem state
  • have a struct that represents the modems state
  • have a separad cli tool to init the modem via gsmd in a synchronnous manner, called from the rc-init scripts

[edit] Thoughts on possible DBUS wrapper for gsmd / asla / etc

Each independent Statemachine should be exported via its own DBUS object A signal should be broadcasted for each state change, so that the gui can react accordingly.

[edit] SIM Object

  • Goal: Abstract away the fact that you need to access the SIM via gsmd, have a simple hook to show the corresponding dialog when needed.
  • States: NO_SIM, NEED_PIN, NEED_PUK, NEED_PIN2, NEED_PUK2, OPEN, LOCKED
  • Methodes: setPIN, setPUK, setPIN2, setPUK2, close, accessPhonebook, accessSMS, lowlevelQuery

[edit] GSM Network Object

  • Goal: Abstract all Meta Information about the GSM Network, provide an interface to choose the network to connect to.
  • States: NO_SIGNAL, EMERGENCY-ONLY, REGISTERED_HOME, REGISTERED_VISITOR
  • Methodes: getNetworks, setPreferredNetwork, register, unregister, getDeviationStatus

[edit] IP Object

  • States: UNCONNECTED, MODEM_BUSY, NO_IP, READY
  • Connection Type: GPRS, CSD, WIFI, USBNET, OTHER
  • Cost Indicator: LOW ..... MEDIUM ..... HIGH .... VERY_HIGH
  • Methods: setProxy, getProxy, etc...
  • Need to think this trough

[edit] VOICE-CALL Object

  • States: ON-HOOK, DIALING, WAITING, TALKING, RINGING (incomming call)
  • Methods: dial, cancel, accept, reject, getActiveCalls, putonhold, switch
  • Problem: Single Statemachine is not ok when two calls are in progress at the

same time ?

[edit] VOICE-AUDIO Object

  • States: STANDBY, OFFHOOK, MIC_MUTED
  • Send signal on state change
  • Methodes: provide methods to switch active audio during call, i.e. switchtoBTHeadset
  • Need to think more about how to make this as generic as possible
  • setup mixer to allow to record gsm conversation via /dev/dsp,
  • and a switch for /dev/dsp playback into the gsm audio,
    • option1: the other party can hear it. (this is probably hard)
    • option2: only local party can hear it. (this is probably simple)

[edit] SIP Object

  • Goal
  • States: Unregistered, Registered

[edit] Presence Object

  • Is this even needed ?
Personal tools

Thoughts on gsmd

  • do not reset modem on startup
  • do instead query modem state
  • have a separad cli tool to init the modem via gsmd in a synchronnous manner, called from the rc-init scripts

Thoughts on possible DBUS wrapper for gsmd / asla / etc

Each independent Statemachine should be exported via its own DBUS object A signal should be broadcasted for each state change, so that the gui can react accordingly.

SIM Object

  • Goal: Abstract away the fact that you need to access the SIM via gsmd, have a simple hook to show the corresponding dialog when needed.
  • States: NO_SIM, NEED_PIN, NEED_PUK, NEED_PIN2, NEED_PUK2, OPEN, LOCKED
  • Methodes: setPIN, setPUK, setPIN2, setPUK2, close, accessPhonebook, accessSMS, lowlevelQuery

GSM Network Object

  • Goal: Abstract all Meta Information about the GSM Network, provide an interface to choose the network to connect to.
  • States: NO_SIGNAL, EMERGENCY-ONLY, REGISTERED_HOME, REGISTERED_VISITOR
  • Methodes: getNetworks, setPreferredNetwork, register, unregister, getDeviationStatus

IP Object

  • States: UNCONNECTED, MODEM_BUSY, NO_IP, READY
  • Connection Type: GPRS, CSD, WIFI, USBNET, OTHER
  • Cost Indicator: LOW ..... MEDIUM ..... HIGH .... VERY_HIGH
  • Methods: setProxy, getProxy, etc...
  • Need to think this trough

VOICE-CALL Object

  • States: ON-HOOK, DIALING, WAITING, TALKING, RINGING (incomming call)
  • Methods: dial, cancel, accept, reject, getActiveCalls, putonhold, switch
  • Problem: Single Statemachine is not ok when two calls are in progress at the

same time ?

VOICE-AUDIO Object

  • States: STANDBY, OFFHOOK, MIC_MUTED
  • Send signal on state change
  • Methodes: provide methods to switch active audio during call, i.e. switchtoBTHeadset
  • Need to think more about how to make this as generic as possible
  • setup mixer to allow to record gsm conversation via /dev/dsp,
  • and a switch for /dev/dsp playback into the gsm audio,
    • option1: the other party can hear it. (this is probably hard)
    • option2: only local party can hear it. (this is probably simple)

SIP Object

  • Goal
  • States: Unregistered, Registered

Presence Object

  • Is this even needed ?