diff --git a/sensors2osc/sensors2osc/ehealth2osc.py b/sensors2osc/sensors2osc/ehealth2osc.py
index 68a7f7d..994f61f 100644
--- a/sensors2osc/sensors2osc/ehealth2osc.py
+++ b/sensors2osc/sensors2osc/ehealth2osc.py
@@ -22,49 +22,72 @@ from __future__ import absolute_import
from sensors2osc.common import *
-atexit.register(close)
+
def main():
- args, osc_sock = init("ehealth2osc")
+ platform = init("ehealth2osc")
- actor = args.actor
+ actor = platform.args.actor
while 1:
try:
- data = serial_sock.readline()[:-2]
- print "got data", repr(data)
- try:
- airFlow, emg, temp = data.split(";")
- except ValueError:
- continue
-
- try:
- airFlow = int(airFlow)
- osc_message = OSCMessage("/%s/airFlow" % actor)
- osc_message.appendTypedArg(airFlow, "i")
- osc_sock.sendall(osc_message.encode_osc())
- except ValueError:
- pass
-
- try:
- emg = int(emg)
- osc_message = OSCMessage("/%s/emg" % actor)
- osc_message.appendTypedArg(emg, "i")
- osc_sock.sendall(osc_message.encode_osc())
- except ValueError:
- pass
-
- try:
- temp = int(temp)
- osc_message = OSCMessage("/%s/temperatur" % actor)
- osc_message.appendTypedArg(temp, "i")
- osc_sock.sendall(osc_message.encode_osc())
- except ValueError:
- pass
+ data = platform.serial_sock.readline()[:-2]
+ print repr(data)
except socket.error, msg:
# got disconnected?
- print "lost connection!!!"
- reconnect(args)
+ print "serial socket error!!!", msg
+ platform.reconnect()
+
+ print "got data", repr(data)
+ try:
+ airFlow, emg, temp = data.split(";")
+ except ValueError, e:
+ print e
+ continue
+
+ try:
+ airFlow = int(airFlow)
+ except ValueError, e:
+ print e
+ continue
+
+ try:
+ osc_message = OSCMessage("/%s/airFlow" % actor)
+ osc_message.appendTypedArg(airFlow, "i")
+ platform.osc_sock.sendall(osc_message.encode_osc())
+ except socket.error, msg:
+ print "cannot connect to chaosc", msg
+ continue
+
+
+ try:
+ emg = int(emg)
+ except ValueError, e:
+ print e
+ continue
+
+ try:
+ osc_message = OSCMessage("/%s/emg" % actor)
+ osc_message.appendTypedArg(emg, "i")
+ platform.osc_sock.sendall(osc_message.encode_osc())
+ except socket.error, msg:
+ print "cannot connect to chaosc", msg
+ continue
+
+
+ try:
+ temp = int(temp)
+ except ValueError, e:
+ print e
+ continue
+
+ try:
+ osc_message = OSCMessage("/%s/temperatur" % actor)
+ osc_message.appendTypedArg(temp, "i")
+ platform.osc_sock.sendall(osc_message.encode_osc())
+ except socket.error, msg:
+ print "cannot connect to chaosc", msg
+ continue
diff --git a/sensors2osc/sensors2osc/sensorTest.py b/sensors2osc/sensors2osc/sensorTest.py
index 2fe385d..79ab7b7 100644
--- a/sensors2osc/sensors2osc/sensorTest.py
+++ b/sensors2osc/sensors2osc/sensorTest.py
@@ -1,20 +1,20 @@
#!/usr/bin/python
# -*- coding: utf-8 -*-
-# This file is part of chaosc
+# This file is part of sensors2osc package
#
-# chaosc is free software: you can redistribute it and/or modify
+# sensors2osc is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
-# chaosc is distributed in the hope that it will be useful,
+# sensors2osc is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
-# along with chaosc. If not, see .
+# along with sensors2osc. If not, see .
#
# Copyright (C) 2014 Stefan Kögl
diff --git a/sensors2osc/sensors2osc/socat_ehealth_test.py b/sensors2osc/sensors2osc/socat_ehealth_test.py
new file mode 100644
index 0000000..c14808f
--- /dev/null
+++ b/sensors2osc/sensors2osc/socat_ehealth_test.py
@@ -0,0 +1,37 @@
+#!/usr/bin/python
+# -*- coding: utf-8 -*-
+
+# This file is part of sensors2osc package
+#
+# sensors2osc is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+#
+# sensors2osc is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with sensors2osc. If not, see .
+#
+# Copyright (C) 2014 Stefan Kögl
+
+# used this line before opening that script
+# socat -d -d PTY,raw,echo=0,link=/tmp/pty1,b115200,user=stefan PTY,raw,echo=0,link=/tmp/pty2,b115200,user=stefan
+
+import serial
+
+serial_sock = serial.Serial()
+
+serial_sock = serial.Serial()
+serial_sock.port = "/tmp/pty2"
+serial_sock.baudrate = 115200
+serial_sock.timeout = 0
+serial_sock.open()
+import time, random, struct
+
+while 1:
+ serial_sock.write("%d;%d;%d\r\n" % (random.randint(0,1023), random.randint(0,1023), random.randint(0,1023)))
+ #time.sleep(.5)