[pkg-fso-commits] [SCM] FSO frameworkd Debian packaging branch, master, updated. milestone4-368-g700ab82

Daniel Willmann daniel at totalueberwachung.de
Mon Feb 2 18:51:28 UTC 2009


The following commit has been merged in the master branch:
commit 04f3bb86e4efa5a615a6a49a1ad2912d11898177
Author: Daniel Willmann <daniel at totalueberwachung.de>
Date:   Sat Nov 29 11:18:27 2008 +0100

    ogsmd: Add modem for Option UMTS cards

diff --git a/framework/subsystems/ogsmd/device.py b/framework/subsystems/ogsmd/device.py
index 405cc9c..ebdbc64 100644
--- a/framework/subsystems/ogsmd/device.py
+++ b/framework/subsystems/ogsmd/device.py
@@ -89,6 +89,10 @@ class Device( resource.Resource ):
             from modems.sierra.modem import Sierra as Modem
             global mediator
             import modems.sierra.mediator as mediator
+        elif self.modemtype == "option":
+            from modems.option.modem import Option as Modem
+            global mediator
+            import modems.option.mediator as mediator
         else:
             logger.error( "Unsupported modem type %s", self.modemtype )
             return
diff --git a/framework/subsystems/ogsmd/modems/__init__.py b/framework/subsystems/ogsmd/modems/__init__.py
index c626930..f2a05a5 100644
--- a/framework/subsystems/ogsmd/modems/__init__.py
+++ b/framework/subsystems/ogsmd/modems/__init__.py
@@ -1,4 +1,4 @@
 # FIXME compute this automatically
 
 def allModems():
-    return "singleline muxed4line freescale_neptune ti_calypso".split()
+    return "singleline muxed4line freescale_neptune ti_calypso option".split()
diff --git a/framework/patterns/__init__.py b/framework/subsystems/ogsmd/modems/option/__init__.py
similarity index 100%
copy from framework/patterns/__init__.py
copy to framework/subsystems/ogsmd/modems/option/__init__.py
diff --git a/framework/subsystems/ogsmd/modems/sierra/channel.py b/framework/subsystems/ogsmd/modems/option/channel.py
similarity index 77%
copy from framework/subsystems/ogsmd/modems/sierra/channel.py
copy to framework/subsystems/ogsmd/modems/option/channel.py
index 4ca40a7..3372b7c 100644
--- a/framework/subsystems/ogsmd/modems/sierra/channel.py
+++ b/framework/subsystems/ogsmd/modems/option/channel.py
@@ -4,10 +4,11 @@ The Open Device Daemon - Python Implementation
 
 (C) 2007-2008 M. Dietrich
 (C) 2008 Michael 'Mickey' Lauer <mlauer at vanille-media.de>
+(C) 2008 Daniel Willmann <daniel at totalueberwachung.de>
 (C) 2008 Openmoko, Inc.
 GPLv2 or later
 
-Package: ogsmd.modems.sierra
+Package: ogsmd.modems.option
 Module: channel
 """
 
@@ -15,7 +16,7 @@ from ogsmd.gsm.decor import logged
 from ogsmd.modems.abstract.channel import AbstractModemChannel
 
 #=========================================================================#
-class SierraChannel( AbstractModemChannel ):
+class OptionChannel( AbstractModemChannel ):
 #=========================================================================#
 
     def _populateCommands( self ):
@@ -30,9 +31,9 @@ class SierraChannel( AbstractModemChannel ):
         # error and result reporting reporting
         c.append( '+CMEE=1' )           # report mobile equipment errors: in numerical format
         c.append( '+CRC=1' )            # cellular result codes: enable extended format
-        # c.append( '+CSCS="8859-1"' )    # character set conversion: use 8859-1 (latin 1)
+        #c.append( '+CSCS="UCS2"' )    # character set conversion: use 8859-1 (latin 1)
         c.append( '+CSDH=1' )           # show text mode parameters: show values
-        c.append( '+CSNS=0' )           # single numbering scheme: voice
+        #c.append( '+CSNS=0' )           # single numbering scheme: voice
         # sms
         c.append( '+CMGF=0' )           # message format: enable pdu mode, disable text mode
         c.append( '+CSMS=1' )           # GSM Phase 2+ commands: enable
@@ -40,9 +41,9 @@ class SierraChannel( AbstractModemChannel ):
         c.append( '+CLIP=1' )           # calling line identification presentation: disable
         c.append( '+COLP=1' )           # connected line identification presentation: disable
         c.append( '+CCWA=1' )           # call waiting: disable
-        c.append( '+CTZR=1' )           # timezone reporting: enable
-        c.append( '+CREG=2' )           # registration information: enable
-        c.append( '+CGREG=2' )          # GPRS registration information: enable
+        #c.append( '+CTZR=1' )           # timezone reporting: enable
+        #c.append( '+CREG=2' )           # registration information: enable
+        #c.append( '+CGREG=2' )          # GPRS registration information: enable
         c.append( '+CGEREP=2')          # Packet domain event reporting: enable
         self._commands["init"] = c
 
diff --git a/framework/subsystems/ogsmd/modems/sierra/mediator.py b/framework/subsystems/ogsmd/modems/option/mediator.py
similarity index 95%
copy from framework/subsystems/ogsmd/modems/sierra/mediator.py
copy to framework/subsystems/ogsmd/modems/option/mediator.py
index d19b5c3..0de6ec2 100644
--- a/framework/subsystems/ogsmd/modems/sierra/mediator.py
+++ b/framework/subsystems/ogsmd/modems/option/mediator.py
@@ -6,7 +6,7 @@ The Open Device Daemon - Python Implementation
 (C) 2008 Openmoko, Inc.
 GPLv2 or later
 
-Package: ogsmd.modems.sierra
+Package: ogsmd.modems.option
 Module: mediator
 """
 
diff --git a/framework/subsystems/ogsmd/modems/option/modem.py b/framework/subsystems/ogsmd/modems/option/modem.py
new file mode 100644
index 0000000..3c5af86
--- /dev/null
+++ b/framework/subsystems/ogsmd/modems/option/modem.py
@@ -0,0 +1,72 @@
+#!/usr/bin/env python
+"""
+The Open Device Daemon - Python Implementation
+
+(C) 2008 Michael 'Mickey' Lauer <mlauer at vanille-media.de>
+(C) 2008 Daniel Willmann <daniel at totalueberwachung.de>
+(C) 2008 Openmoko, Inc.
+GPLv2 or later
+
+Package: ogsmd.modems.sierra
+Module: modem
+"""
+
+import mediator
+
+from ..abstract.modem import AbstractModem
+
+from .channel import OptionChannel
+from .unsolicited import UnsolicitedResponseDelegate
+
+from ogsmd.gsm.decor import logged
+from ogsmd.gsm.channel import AtCommandChannel
+
+#=========================================================================#
+class Option( AbstractModem ):
+#=========================================================================#
+
+    @logged
+    def __init__( self, *args, **kwargs ):
+        AbstractModem.__init__( self, *args, **kwargs )
+
+        # The one and only serial line
+        self._channels["UNSOL"] = OptionChannel( self.pathfactory, "/dev/ttyUSB2", modem=self )
+        # configure channels
+        self._channels["UNSOL"].setDelegate( UnsolicitedResponseDelegate( self._object, mediator ) )
+
+    def channel( self, category ):
+        return self._channels["UNSOL"]
+
+    def pathfactory( self, name ):
+        return name
+
+    def dataPort( self ):
+        # FIXME remove duplication and just use pathfactory
+        return "/dev/ttyUSB0"
+
+    def dataOptions( self, category ):
+        if category == "ppp":
+            return [
+                    '115200',
+                    'nodetach',
+                    'crtscts',
+										"noipdefault",
+										":10.0.0.1",
+										"local",
+                    'defaultroute',
+                    'debug',
+                    'hide-password',
+                    'ipcp-accept-local',
+                    'lcp-echo-failure', '10',
+                    'lcp-echo-interval', '3',
+                    'noauth',
+                    #'demand',
+                    'noipdefault',
+                    'novj',
+                    'novjccomp',
+                    'persist',
+                    ]
+        else:
+            return []
+
+
diff --git a/framework/subsystems/ogsmd/modems/sierra/unsolicited.py b/framework/subsystems/ogsmd/modems/option/unsolicited.py
similarity index 87%
copy from framework/subsystems/ogsmd/modems/sierra/unsolicited.py
copy to framework/subsystems/ogsmd/modems/option/unsolicited.py
index c92b613..6d6daea 100644
--- a/framework/subsystems/ogsmd/modems/sierra/unsolicited.py
+++ b/framework/subsystems/ogsmd/modems/option/unsolicited.py
@@ -5,9 +5,6 @@ The Open Device Daemon - Python Implementation
 (C) 2008 Michael 'Mickey' Lauer <mlauer at vanille-media.de>
 (C) 2008 Openmoko, Inc.
 GPLv2 or later
-
-Package: ogsmd.modems.sierra
-Module: unsolicited
 """
 
 from ogsmd.modems.abstract.unsolicited import AbstractUnsolicitedResponseDelegate

-- 
FSO frameworkd Debian packaging



More information about the pkg-fso-commits mailing list