BlinkStick Flex Ambilight

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…

yes I am. Its not the way to do it?

$ dpkg -l |grep avr
ii  avr-libc                                    1:1.8.0+Atmel3.5.0-1                 all          Standard C library for Atmel AVR development
ii  avrdude                                     6.3-1+b1                             amd64        software for programming Atmel AVR microcontrollers
ii  binutils-avr                                2.26.20160125+Atmel3.5.3-1           amd64        Binary utilities supporting Atmel's AVR targets
ii  gcc-avr                                     1:4.9.2+Atmel3.5.3-1                 amd64        GNU C compiler (cross compiler for avr)

It’s not possible to change firmware on any BlinkStick device without a specialized programmer like USBTinyISP or AVRISP.

No it isn´t like @arvydas already stated.

Thats why he offered to flash a new board for you. In the end it should be cheaper for you than to buy a AVR programmer and do everything yourself. Additionally you have to get all the knowledge for working with it by self study.
And keep in mind that you still have to mod the flex so finally I would recommend you to buy a Pro.

no disrespect to anyone but I sure would have like to be able to control the Blinkstick Flex and run 31 addressable rgb chips from the program and get modes like chase and other animations , instead I get 8 rgb chips to light up and the functionality is very weak with what you can do with it unless you want to learn how to CODE ! are we serious that I have to download another app to add script to codes to get the Flex to recognize 31 chips .

this product show great conception but lacks someone sitting behind a pc coding the software to get it to work at it’s full potential .

Are you Jeffrey Mays of JMMods? If so - fellow BlinkStickers, he made YouTube history by broadcasting the very first addressable RGB SSD backplate mod!

BlinkStick is more of an opensource instructable than a shrink-wrapped consumer electronics product. It serves as a basis for creating a shrinkwrapped product, just add use-cases.

The educational value is not to be underestimated, especially since it is an excellent introduction to embedded systems (firmware) programming.

There is a dire need in the industry for those skill-sets, as you have discovered.

Personally, I find programming to the ATTiny chip very reminiscent of 6502 based computing in the 80s. Such economy, so satisfying!

@arvydas

What happened to that, was it cancelled?