changeset 358:5ee1de9ddc9d

fix usbdmx live mode (probably breaking dummy mode)
author Drew Perttula <drewp@bigasterisk.com>
date Wed, 13 Jun 2007 06:55:47 +0000
parents 7771f37252da
children bd8a89743226
files light9/io/__init__.py
diffstat 1 files changed, 11 insertions(+), 6 deletions(-) [+]
line wrap: on
line diff
--- a/light9/io/__init__.py	Tue Jun 12 07:12:32 2007 +0000
+++ b/light9/io/__init__.py	Wed Jun 13 06:55:47 2007 +0000
@@ -58,17 +58,22 @@
     dimmers = 512
     def __init__(self):
         BaseIO.__init__(self)
-        if self.dummy:
-            return
-        sys.path.append("/home/drewp/dmx_usb_module")
-        from dmx import Dmx
-        self.out = Dmx()
+        self.__name__ = "UsbDMX"
+        self.out = None
+
+    def _dmx(self):
+        if self.out is None:
+            sys.path.append("dmx_usb_module/build/lib.linux-i686-2.4")
+            from dmx import Dmx
+            self.out = Dmx()
+        return self.out
+        
 
     def sendlevels(self, levels):
         if self.dummy:
             return
         packet = ''.join([chr(int(lev * 255 / 100)) for lev in levels]) + "\x55"
-        self.out.write(packet)
+        self._dmx().write(packet)
 
 class SerialPots(BaseIO):
     """