#!/usr/bin/env python import sys, os, struct import serial, slip ARTOO_BAUD = 115200 ARTOO_RAW_IO_ID = chr(0x5) ARTOO_RAW_IO_REPORT_ID = chr(0x6) ARTOO_SYSINFO_ID = chr(0x3) ARTOO_CALIBRATE_ID = chr(0x2) ARTOO_DSM_ID = chr(0x1) class Axis(): def __init__(self): self.min = sys.maxint self.trim = 0 self.max = 0 self.current = 0 def update(self, val): self.min = min(self.min, val) self.max = max(self.max, val) self.current = val def extremes(self): return "%04d:%04d" % (self.min, self.max) def vals(self): return [self.min, self.trim, self.max] def latch_trim(self): self.trim = self.current def get_and_print_sysinfo(slipdev): while True: slipdev.write("".join([ARTOO_SYSINFO_ID])) pkt = slipdev.read() pkt = "".join(pkt) if pkt[0] == ARTOO_SYSINFO_ID: uid = "".join(["{:02x}".format(ord(c)) for c in pkt[:12]]) hw_version = struct.unpack_from('