--- sensors2osc/common.py (original) +++ sensors2osc/common.py (refactored) @@ -18,7 +18,7 @@ # # Copyright (C) 2014 Stefan Kögl -from __future__ import absolute_import + import atexit import os.path @@ -43,12 +43,12 @@ def connect(self): - print "connect serial" + print("connect serial") self.serial_sock = serial.Serial() self.serial_sock.port = self.args.device self.serial_sock.baudrate = 115200 self.serial_sock.timeout = 0 - print "waiting for the device %r to come up" % self.args.device + print("waiting for the device %r to come up" % self.args.device) while 1: try: self.serial_sock.open() @@ -59,12 +59,12 @@ def close(self): if self.serial_sock is not None: - print "close serial" + print("close serial") self.serial_sock.close() def reconnect(self): - print "reconnect serial" + print("reconnect serial") self.close() self.connect() --- sensors2osc/ehealth2osc.py (original) +++ sensors2osc/ehealth2osc.py (refactored) @@ -18,7 +18,7 @@ # # Copyright (C) 2014 Stefan Kögl -from __future__ import absolute_import + from sensors2osc.common import * import time @@ -33,60 +33,60 @@ try: data = platform.serial_sock.readline()[:-2] #print repr(data) - except socket.error, msg: + except socket.error as msg: # got disconnected? - print "serial socket error!!!", msg + print("serial socket error!!!", msg) platform.reconnect() #print "got data", repr(data) try: airFlow, emg, temp = data.split(";") - except ValueError, e: - print e + except ValueError as e: + print(e) continue try: airFlow = int(airFlow) - except ValueError, e: - print e + except ValueError as 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 + except socket.error as msg: + print("cannot connect to chaosc", msg) continue try: emg = int(emg) - except ValueError, e: - print e + except ValueError as 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 + except socket.error as msg: + print("cannot connect to chaosc", msg) continue try: temp = int(temp) - except ValueError, e: - print e + except ValueError as 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 + except socket.error as msg: + print("cannot connect to chaosc", msg) continue --- sensors2osc/ekg2osc.py (original) +++ sensors2osc/ekg2osc.py (refactored) @@ -18,7 +18,7 @@ # # Copyright (C) 2014 Stefan Kögl -from __future__ import absolute_import + import time @@ -34,23 +34,23 @@ while 1: try: t = platform.serial_sock.read(1) - except socket.error, msg: + except socket.error as msg: # got disconnected? - print "serial socket error!!!", msg + print("serial socket error!!!", msg) platform.reconnect() try: t = ord(t) - except TypeError, e: + except TypeError as e: continue try: - print "got value", t + print("got value", t) osc_message = OSCMessage("/%s/ekg" % actor) osc_message.appendTypedArg(t, "i") platform.osc_sock.sendall(osc_message.encode_osc()) - except socket.error, msg: - print "cannot connect to chaosc" + except socket.error as msg: + print("cannot connect to chaosc") continue --- sensors2osc/main.py (original) +++ sensors2osc/main.py (refactored) @@ -48,7 +48,7 @@ def close(self): """Close all resources and unpublish service""" - print "%s: closing..." % (self.device, ) + print("%s: closing..." % (self.device, )) self.serial.close() @@ -58,7 +58,7 @@ def handle_read(self, osc_sock): data = self.serial.readline()[:-2] - print repr(data) + print(repr(data)) try: airFlow, emg, temp = data.split(";") except ValueError: @@ -106,7 +106,7 @@ self.head = (self.head + 1) % self.length def getData(self): - print "getData", self.ring_buf, self.head + print("getData", self.ring_buf, self.head) data = list() for i in range(7, 1, -1): value = self.ring_buf[(self.head - i) % self.length] @@ -117,7 +117,7 @@ raise ValueError("not complete - ringbuffer resettet") data.append(value) if data[0] != 0x0 or data[1] != 0xff: - print "issue", data + print("issue", data) self.reset() self.ring_buf[0] = 0 self.head = 1 @@ -146,7 +146,7 @@ osc_message.appendTypedArg(heart_rate, "i") osc_message.appendTypedArg(o2, "i") osc_sock.sendall(osc_message.encode_osc()) - print "heartbeat", datetime.datetime.now(), heart_signal + print("heartbeat", datetime.datetime.now(), heart_signal) self.heartbeat_on = True elif pulse == 1 and self.heartbeat_on: #print "off heartbeat", datetime.datetime.now(), heart_signal @@ -156,8 +156,8 @@ osc_message.appendTypedArg(heart_rate, "i") osc_message.appendTypedArg(o2, "i") osc_sock.sendall(osc_message.encode_osc()) - except ValueError, e: - print e + except ValueError as e: + print(e) def main(): @@ -187,30 +187,30 @@ used_devices = dict() while 1: - for device, description in naming.iteritems(): + for device, description in naming.items(): if os.path.exists(device): if device not in used_devices: actor, platform = naming[device] if description[1] == "ehealth": - print device, actor, platform + print(device, actor, platform) used_devices[device] = EHealth2OSC(actor, platform, device) elif description[1] == "ekg": - print device, actor, platform + print(device, actor, platform) used_devices[device] = EKG2OSC(actor, platform, device) elif description[1] == "pulse": - print device, actor, platform + print(device, actor, platform) used_devices[device] = Pulse2OSC(actor, platform, device) else: raise ValueError("unknown description %r for device %r" % (description, device)) else: - print "device missing", device + print("device missing", device) message = OSCMessage("/DeviceMissing") message.appendTypedArg(description[0], "s") message.appendTypedArg(description[1], "s") osc_sock.sendall(message.encode_osc()) read_map = {} - for forwarder in used_devices.values(): + for forwarder in list(used_devices.values()): read_map[forwarder.serial] = forwarder.handle_read readers, writers, errors = select.select(read_map, [], [], 0.1) --- sensors2osc/pulse2osc.py (original) +++ sensors2osc/pulse2osc.py (refactored) @@ -18,7 +18,7 @@ # # Copyright (C) 2014 Stefan Kögl -from __future__ import absolute_import + import time from datetime import datetime @@ -41,7 +41,7 @@ self.head = (self.head + 1) % self.length def getData(self): - print "getData", self.ring_buf, self.head + print("getData", self.ring_buf, self.head) data = list() for i in range(self.length + 1, 1, -1): value = self.ring_buf[(self.head - i) % self.length] @@ -52,7 +52,7 @@ raise ValueError("not complete - ringbuffer resettet") data.append(value) if data[0] != 0x0 or data[1] != 0xff: - print "issue", data + print("issue", data) self.reset() self.ring_buf[0] = 0 self.head = 1 @@ -71,24 +71,24 @@ while 1: try: t = platform.serial_sock.read(1) - except socket.error, msg: + except socket.error as msg: # got disconnected? - print "serial socket error!!!", msg + print("serial socket error!!!", msg) platform.reconnect() try: t = ord(t) - except TypeError, e: + except TypeError as e: continue - print "got value", t + print("got value", t) buf.append(t) if t == 0: try: heart_signal, heart_rate, o2, pulse = buf.getData() - except ValueError, e: - print e + except ValueError as e: + print(e) continue if pulse == 245 and not heartbeat_on: @@ -99,12 +99,12 @@ osc_message.appendTypedArg(heart_rate, "i") osc_message.appendTypedArg(o2, "i") platform.osc_sock.sendall(osc_message.encode_osc()) - print "on heartbeat", datetime.now(), heart_signal, heart_rate, o2, pulse - except socket.error, msg: - print "cannot connect to chaosc" + print("on heartbeat", datetime.now(), heart_signal, heart_rate, o2, pulse) + except socket.error as msg: + print("cannot connect to chaosc") continue elif pulse == 1 and heartbeat_on: - print "off heartbeat", datetime.now(), heart_signal, heart_rate, o2, pulse + print("off heartbeat", datetime.now(), heart_signal, heart_rate, o2, pulse) heartbeat_on = False try: osc_message = OSCMessage("/%s/heartbeat" % actor) @@ -112,8 +112,8 @@ osc_message.appendTypedArg(heart_rate, "i") osc_message.appendTypedArg(o2, "i") platform.osc_sock.sendall(osc_message.encode_osc()) - except socket.error, msg: - print "cannot connect to chaosc" + except socket.error as msg: + print("cannot connect to chaosc") continue time.sleep(0.1) --- sensors2osc/sensorTest.py (original) +++ sensors2osc/sensorTest.py (refactored) @@ -48,7 +48,7 @@ def close(self): """Close all resources and unpublish service""" - print "%s: closing..." % (self.device, ) + print("%s: closing..." % (self.device, )) self.serial.close() @@ -58,7 +58,7 @@ def handle_read(self, osc_sock): data = self.serial.readline()[:-2] - print repr(data) + print(repr(data)) try: airFlow, emg, temp = data.split(";") except ValueError: @@ -94,7 +94,7 @@ class RingBuffer(object): def __init__(self, length): self.length = length - self.ring_buf = [-1 for i in xrange(length)] + self.ring_buf = [-1 for i in range(length)] self.head = 0 def append(self, value): @@ -102,7 +102,7 @@ self.head = (self.head + 1) % self.length def getData(self): - print "getData", self.ring_buf, self.head + print("getData", self.ring_buf, self.head) data = list() for i in range(7, 1, -1): value = self.ring_buf[(self.head - i) % self.length] @@ -135,7 +135,7 @@ osc_message.appendTypedArg(heart_rate, "i") osc_message.appendTypedArg(o2, "i") osc_sock.sendall(osc_message.encode_osc()) - print "heartbeat", datetime.datetime.now(), heart_signal + print("heartbeat", datetime.datetime.now(), heart_signal) self.heartbeat_on = True elif pulse == 1 and self.heartbeat_on: #print "off heartbeat", datetime.datetime.now(), heart_signal @@ -145,8 +145,8 @@ osc_message.appendTypedArg(heart_rate, "i") osc_message.appendTypedArg(o2, "i") osc_sock.sendall(osc_message.encode_osc()) - except ValueError, e: - print e + except ValueError as e: + print(e) def main(): @@ -182,7 +182,7 @@ while 1: read_map = {} - for forwarder in used_devices.values(): + for forwarder in list(used_devices.values()): read_map[forwarder.serial] = forwarder.handle_read readers, writers, errors = select.select(read_map, [], [], 0.1) --- sensors2osc/socat_ekg_test.py (original) +++ sensors2osc/socat_ekg_test.py (refactored) @@ -55,13 +55,13 @@ count = 0 if data_points % (5 * steps) == 0: - print "new steps", steps, delta + print("new steps", steps, delta) steps += delta if steps <= min_steps: delta = 1 elif steps >= max_steps: - print "change step sign", steps, delta + print("change step sign", steps, delta) delta = -1 time.sleep(0.02) --- sensors2osc/socat_pulse_test.py (original) +++ sensors2osc/socat_pulse_test.py (refactored) @@ -21,7 +21,7 @@ # socat -d -d PTY,raw,echo=0,link=/tmp/pty1,b115200,user=stefan PTY,raw,echo=0,link=/tmp/pty2,b115200,user=stefan -from __future__ import absolute_import + import serial, time, random, sys, random, struct