Кто силен в Kivy. Есть небольшой код, который работает для чтения данных с автомобиля honda по оригинальному протоколу, какой месяц бьюсь и не могу связать его в Kivy.
Задача такая, нужно построить грубо говоря табличку, в которой в левом столбце будет название переменной, а в правом её значения. Значения должны меняться в реальном времени.
В дальнейшем хочу всё портировать на android и наконец связать его по средством USB-COM с ECU автомобиля.
Пример кода:
>>> from mock import patch >>> >>> p = patch('serial.Serial') >>> m = p.start() >>> m.return_value.readline.return_value = ( ... b'\x10\xa8\x00\x00' ... b'\x00\x00\x00\x00' ... b'\x10\x00\x00\x01' ... b'\x00\x00\x00\x01' ... b'\xca' ... ) >>> >>> import serial >>> >>> def get_rpm_speed(ser, cmd): ... query = bytearray(cmd) ... query.append((0x100 - sum(query)) & 0xFF) ... ser.write(query) ... resp = bytearray(ser.readline()) ... crc = resp.pop() ... if sum(resp) & 0xFF != crc: ... raise ValueError('incorrect crc') ... resp.pop(0) ... resp.pop(0) ... h0, h1, h2 = resp[:3] ... rpm = (h0 * 256 + h1) / 4 ... spd = h2 ... return rpm, spd ... >>> ser = serial.Serial('COM3', 9600, timeout=1) >>> >>> rpm, speed = get_rpm_speed(ser, [0x20, 0x05, 0x00, 0x10]) >>> print 'Rpm', rpm Rpm 0 >>> print 'Speed', speed Speed 0 >>>