BlinkStick Flex Ambilight

I can light up the 32 leds in the first page but my strip stops at 8.

How big of a delay does the blinkstick need?

20ms should be enough

Wow okay that’s a large-ish delay. Is that a delay between any two commands to any LED? Is it possible to send a batch of commands all at once?

As far as I know it is a delay between 2 commands. But in the BlinkStickDotNet API is a SetColors command. I haven´t tried it yet, but that could be the one that you looking for… sending colors as a batch… I should also give that a try :wink:

Yup, as I thought. In c# it works like this:

byte[] data = new byte[9] {255,0,0,0,255,0,0,0,255};
blink.SetColors(0,data);

It sets the first 3 LEDs of a flex.

Edit:
Works like this in python:

cols = [255,0,0,0,255,0,0,0,255,255,255,255,255,255,0,0,255,255,255,0,255]
led.set_led_data(0,cols)
1 Like

Just got my flex in the mail today and set_led_data works perfectly. Thanks a ton! :smile:

Having a little issue with set_led_data in python. Green seems like it’s switched with red.

If I run this:

from blinkstick import blinkstick

stk = blinkstick.find_first()
data = [255,0,0, 255,0,0, 0,255,0, 0,255,0, 0,0,255, 0,0,255]
stk.set_led_data(0, data)

I get this:

Instead of this like I would have expected:

I saw it with my music visualization (the pixels towards the middle glow red when they should be green like the image) but I thought it was just a screwup in my code. I couldn’t figure it out and started whittling down code until I got to just this and it’s still here so I figure it’s either a bug or a misunderstanding on my part.

Hey Diff,

The LED data frame is in GRB format.

1 Like

Huh, alright then. Thanks for the quick response.

if, as i read, a BlinkStick Flex is really a BlinkStick Pro, there is no way to modify the hardware to remove this limitation?

i’m wondering to add an external power source to win the 32 LEDs of the strip with full power.

You would have to flash new firmware to the device, preferably from BlinkStick Pro. This way you would no longer have the limitation, but flex is directly connected to +5V and GND of USB port so if you have a full BlinkStick Flex with the LED strip attached, you would have to mod it by disconnecting the +5V power to the LED strip and supplying it directly.

If you really want to hack this together, you can just order a BlinkStick Flex board and put a note in the order to flash it with BlinkStick Pro firmware. This way you could solder the connections yourself together with external power and you would not have the brightness limitation.

3 Likes

ok, that sounds good. Yes, i already bought the Flex directly connected to the strip. I realized about the power libmitation later. Maybe i would be good to advice in the product description.

just to be sure, there is NO posibility -hacking the hardware included- to let the Flex board draw the 2A full power USB, is it?

uei! this is a good product anyway! :smiley:

ok, hack done. But now the first led is always blinking fast, but only when the are a python script executing.
I do not flash the blinkstick pro firmware, still with the Flex firmware. Can be becouse of that. Its neede to flash the firmware to overtake the power limitation?

i can’t find instructions to flash the blinkstick pro firmware, only the source code. Can you point me to the right link?

thanks!

any help with this?[quote=“flumen, post:45, topic:292”]
i can’t find instructions to flash the blinkstick pro firmware, only the source code. Can you point me to the right link?
[/quote]

any help with this?

It´s been a while I´ve tried to flash a BlinkStick Pro.
Basicly it should be these steps:

  • Install AVR toolchain
  • Install ruby (maype you need to set the PATH variable)
  • Download BlinkStick Firmware (Pro); unzip it
    https://github.com/arvydas/blinkstick-firmware/tree/pro
  • open cmd, cd to the firmware folder
  • make clean hex
  • make defaults
  • rename eeprom-default.hex to eeprom.hex
  • rename serial.txt-template to serial.txt
  • make deploy

I hope it is still the right way.

1 Like

ok, I’ll give it a try. Thank you!

everithing goes right until:

$ sudo make defaults
avrdude -c usbtiny -P usb -p attiny85  -U eeprom:w:eeprom.hex:i
avrdude: Error: Could not find USBtiny device (0x1781/0xc9f)

avrdude done.  Thank you.

Makefile:57: recipe for target 'defaults' failed
make: *** [defaults] Error 1

i googled about it out there, and only results about Trinket and the bootloeader appear.

any advise?

What AVR programmer are you using?

I think he is trying to program the Flex over USB…