def servo_config(self, pin, min_pulse=544, max_pulse=2400, angle=0): """ Configure a pin as servo with min_pulse, max_pulse and first angle. ``min_pulse`` and ``max_pulse`` default to the arduino defaults. """ if pin > len(self.digital) or self.digital[pin].mode == UNAVAILABLE: raise IOError("Pin %s is not a valid servo pin") data = itertools.chain([pin], to_two_bytes(min_pulse), to_two_bytes(max_pulse)) self.send_sysex(SERVO_CONFIG, data) # set pin._mode to SERVO so that it sends analog messages # don't set pin.mode as that calls this method self.digital[pin]._mode = SERVO self.digital[pin].write(angle)
def sampling_interval(self, interval=19): if interval < 19: inteval = 19 elif interval > 16383: interval = 16383 self.send_sysex(SAMPLING_INTERVAL, to_two_bytes(interval))