5 from bitstring import BitArray
7 path = "/dev/serial/by-id/usb-METTLER_TOLEDO_15_kg_DI_Firmware_CKOR_F_Ser_CDC-if00"
9 device = serial.Serial(path,
11 bytesize = serial.SEVENBITS,
12 stopbits = serial.STOPBITS_ONE,
13 parity = serial.PARITY_EVEN,
14 #xonxoff = serial.XON,
18 if len(sys.argv) == 1:
36 def print_answer(answer):
39 status = answer[answer.index('?')+1]
40 print 'status_bits: '+BitArray(int=ord(status),length=8).bin
48 print_answer(read_answer())
50 if cmd == 'interactive':
56 answer = read_answer()
59 b = answer[answer.index('?')+1]
60 if b == '\x00' or b == ' ':
66 elif b == 'A' or b == 'Q' or b == '\x01':
70 print b.__repr__(), BitArray(int=ord(b),length=8).bin
71 if oldstatus != status:
78 weight = float(''.join(answer))
79 if oldweight != weight:
87 print_answer(read_answer())
95 answer = read_answer()
97 print 'all test passed'