Blinkstick Nano bottom led morph and pulse cause error


#1

Hi!

I’m trying to control both of the BlinkStick Nano leds (top and bottom) separately with Python. I am able to use all the led control methods to top led with index 0, but only color setting and blinking methods work with bottom led (with index 1).
When trying a basic morph or pulse to the bottom led by giving an index of 1 to the method, I get the following error:

Traceback (most recent call last):
 File "C:\Users\******\******\*****\NetworkStatus\NetworkStatus.py", line 114, in <module>
  led.morph(index=1, green=255)
 File "C:\Python27amd64\lib\site-packages\blinkstick\blinkstick.py", line 713, in morph
  r_start, g_start, b_start = _remap_rgb_value_reverse(self._get_color_rgb(index), self.max_rgb_value)
 File "C:\Python27amd64\lib\site-packages\blinkstick\blinkstick.py", line 378, in _get_color_rgb
  data = self.get_led_data((index + 1) * 3)
 File "C:\Python27amd64\lib\site-packages\blinkstick\blinkstick.py", line 472, in get_led_data
  device_bytes = self._usb_ctrl_transfer(0x80 | 0x20, 0x1, report_id, 0, max_leds * 3 + 2)
 File "C:\Python27amd64\lib\site-packages\blinkstick\blinkstick.py", line 235, in _usb_ctrl_transfer
  return self.reports[wValue - 1].get()
 File "C:\Python27amd64\lib\site-packages\pywinusb\hid\core.py", line 1522, in get
  self.set_raw_data(raw_data)
 File "C:\Python27amd64\lib\site-packages\pywinusb\hid\core.py", line 1375, in set_raw_data
  byref(self.__raw_data), len(self.__raw_data)) )
 File "C:\Python27amd64\lib\site-packages\pywinusb\hid\winapi.py", line 395, in __init__
  raise helpers.HIDError("hidP error: %s" % self.error_message_dict[error_code])
HIDError: hidP error: not value array

Have I missed some functionality issues or what could cause the problem?

Thank you in advance!


Error when trying to use pulse() multiple times
#2

Hey Matti,

it does not seem to work for the python lib at the moment.
Blink and static color don´t need to get the colors back from the device. There seem to be a problem getting the colors back from single LEDs. It also does not work for BlinkStick Square.
So i think @arvydas have to take a look into it.