diff options
author | Kevin O'Connor <kevin@koconnor.net> | 2019-08-06 22:45:02 -0400 |
---|---|---|
committer | Kevin O'Connor <kevin@koconnor.net> | 2019-08-06 22:49:05 -0400 |
commit | 9445e1d555bbdf026dc30325d0cb76e8d91515d0 (patch) | |
tree | a462f36238b2e90a3c80fbfd959ae17bdf20460f /klippy | |
parent | 115b8881063dee121ef65a4ee75365d3908fbb02 (diff) | |
download | kutter-9445e1d555bbdf026dc30325d0cb76e8d91515d0.tar.gz kutter-9445e1d555bbdf026dc30325d0cb76e8d91515d0.tar.xz kutter-9445e1d555bbdf026dc30325d0cb76e8d91515d0.zip |
dotstar: Allow any number of chips to be daisy chained
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
Diffstat (limited to 'klippy')
-rw-r--r-- | klippy/extras/dotstar.py | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/klippy/extras/dotstar.py b/klippy/extras/dotstar.py index 9c1e5e6b..d5f5d082 100644 --- a/klippy/extras/dotstar.py +++ b/klippy/extras/dotstar.py @@ -22,7 +22,7 @@ class PrinterDotstar: clock_pin_params['pin']) self.spi = bus.MCU_SPI(mcu, None, None, 0, 500000, sw_spi_pins) # Initial color - self.chain_count = config.getint('chain_count', 1, minval=1, maxval=12) + self.chain_count = config.getint('chain_count', 1, minval=1) red = config.getfloat('initial_RED', 0., minval=0., maxval=1.) green = config.getfloat('initial_GREEN', 0., minval=0., maxval=1.) blue = config.getfloat('initial_BLUE', 0., minval=0., maxval=1.) @@ -38,8 +38,10 @@ class PrinterDotstar: self.cmd_SET_LED, desc=self.cmd_SET_LED_help) def send_data(self, minclock=0): - self.spi.spi_send(self.color_data, minclock=minclock, - reqclock=BACKGROUND_PRIORITY_CLOCK) + data = self.color_data + for d in [data[i:i+20] for i in range(0, len(data), 20)]: + self.spi.spi_send(d, minclock=minclock, + reqclock=BACKGROUND_PRIORITY_CLOCK) cmd_SET_LED_help = "Set the color of an LED" def cmd_SET_LED(self, params): # Parse parameters |