summaryrefslogtreecommitdiff
path: root/digital/io-hub/tools/io_hub/io_hub.py
diff options
context:
space:
mode:
Diffstat (limited to 'digital/io-hub/tools/io_hub/io_hub.py')
-rw-r--r--digital/io-hub/tools/io_hub/io_hub.py22
1 files changed, 22 insertions, 0 deletions
diff --git a/digital/io-hub/tools/io_hub/io_hub.py b/digital/io-hub/tools/io_hub/io_hub.py
index a363e5f6..06d237e9 100644
--- a/digital/io-hub/tools/io_hub/io_hub.py
+++ b/digital/io-hub/tools/io_hub/io_hub.py
@@ -44,9 +44,31 @@ class Proto:
def pwm_set_timed (self, index, value, time, rest_value):
self.proto.send ('w', 'BhHh', index, value, time, rest_value)
+ def goto (self, x, y, backward):
+ self.proto.send ('m', 'hhB', x, y, backward)
+
def clamp_move (self, pos):
self.proto.send ('c', 'B', pos)
+ def clamp_move_element (self, from_, to):
+ self.proto.send ('c', 'BB', from_, to)
+
+ def drop (self, order):
+ if order == 'drop_clear':
+ self.proto.send ('d', 'B', 0x00)
+ elif order == 'drop_forward':
+ self.proto.send ('d', 'B', 0x01)
+ elif order == 'drop_backward':
+ self.proto.send ('d', 'B', 0x02)
+ else:
+ raise ValueError
+
+ def door (self, pos, open_):
+ self.proto.send ('d', 'BB', pos, (0, 1)[open_])
+
+ def clamp_openclose (self, open_):
+ self.proto.send ('d', 'BB', 0xff, (0, 1)[open_])
+
def close (self):
self.reset ()
self.proto.wait (lambda: True)