Skip to content

Commit 4704474

Browse files
committed
Add set io pwm command
1 parent 8d16d12 commit 4704474

File tree

1 file changed

+14
-2
lines changed

1 file changed

+14
-2
lines changed

pydobot/dobot.py

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -251,6 +251,15 @@ def _set_io_multiplexing(self, address, mode):
251251
msg.params.extend(bytearray(struct.pack('B', mode)))
252252
return self._send_command(msg)
253253

254+
def _set_io_pwm(self, address, f, d):
255+
msg = Message()
256+
msg.id = 132
257+
msg.ctrl = 0x03
258+
msg.params = bytearray(struct.pack('B', address))
259+
msg.params.extend(bytearray(struct.pack('f', f)))
260+
msg.params.extend(bytearray(struct.pack('f', d)))
261+
return self._send_command(msg)
262+
254263
def _set_queued_cmd_start_exec(self):
255264
msg = Message()
256265
msg.id = 240
@@ -512,8 +521,11 @@ def engrave(self, image, pixel_size, low=0.0, high=40.0, velocity=5, acceleratio
512521
def wait(self, ms):
513522
self._set_wait_cmd(ms)
514523

515-
def set_io_mode(self, address, mode, wait=False):
516-
self._set_io_multiplexing(address, IO_MODES[mode], wait)
524+
def set_io_mode(self, address, mode):
525+
self._set_io_multiplexing(address, IO_MODES[mode])
526+
527+
def set_pwm_output(self, address, frequency, duty_cycle):
528+
self._set_io_pwm(address, frequency, duty_cycle)
517529

518530

519531
if __name__ == '__main__':

0 commit comments

Comments
 (0)