LED strip driver


#1

Would it be possible to add support for the chainable LED strip driver?


http://www.seeedstudio.com/wiki/Grove_-_LED_Strip_Driver

thanks
/Mirar


#2

Hi Mirar,
Sadly the LED driver needs code to be changed on the Firmware to make it work. We don’t have any plans to add for the chainable LED driver but if you want to go ahead and try to do it, we’ll be happy to help you out.

-Karan


#3

I can probably do that, if I have time to get to know the codebase for the GrovePI… the protocol seems quite trivial:

  dx |= (uint32_t)0x03 << 30;             // highest two bits 1,flag bits
  dx |= (uint32_t)TakeAntiCode(Blue) << 28;
  dx |= (uint32_t)TakeAntiCode(Green) << 26;	
  dx |= (uint32_t)TakeAntiCode(Red) << 24;
 
  dx |= (uint32_t)Blue << 16;
  dx |= (uint32_t)Green << 8;
  dx |= Red;

TakeAntiCode is the inverse of the two highest bits.

Send dx with highest bit first with stable value on low-high flank (although I’m not 100% sure that’s correct).

What’s the quickest way of getting to know the codebase?

(Also I probably should get my hands on a GrovePI first…)


#4

Hi Mirar,

I’ve managed to port the LED strip driver Driver code to Go. No firmware changes are needed. I can send it to you but it is slow for some reason, it takes about 30 sec between color changes.


#5

Hi GrimmKull,
Awesome. Can you send a pull request to the GrovePi repository here https://github.com/DexterInd/GrovePi/tree/master/Software so that others can use it too.

-Karan


#6

Hi Karan

I’ve forked the GrovePI repository.

Since my previous solution was too slow, I added the LED strip driver to the firmware and changed the version to 1.2.
There is also an example for a single RGB strip in Go.
In the near future there will be an example combining this example with a Grove light sensor.

Once my solution is tested a bit more I can make a pull request and add it to the main repository.

P.S.
The new solution is much faster about 1ms versus 29s from before. :smiley:

Sanjin


#7

Hi Sanjin,
Let us know how you firmware turn out. We’ll be glad to merge the LED driver code.

-Karan


#8

Dear gentlemen,

I am very interested to use the led strip driver for GrovePi. I can see that you have managed to get it to work. Nice job! Is there a a u for me to use this code for my own little project?


#9

Hi @liam37,

Sorry, we do not have any support for it right now, but you can check back after a few days. We’ll push some code into our GrovePi github repository and you can to give it a shot since we do not have the LED strip with us, to try it out.

-Shoban


#10

Hello there,
Thanks for the reaction. I asked because I read in this post that @mirar managed to get it working on the GrovePi? Or did Ï misinterpret it? Otherwise, is you could give it a shot that would be awesome!

Cheers


#11

Hi @liam37,

The delay in pulling the code to our repository is because we didn’t have a LED strip to try out the example. We will push a code in shortly. Thanks for your patience.

-Shoban


#12

Ah no worries! Very happy that you’re giving it a try. Thanks a lot


#13

Hi @Shoban, is there any news on the LED strip driver code for the GrovePi?


#14

I’m very late to this particular thread and have been reviewing @grimmkull @Shoban and other contributions to the respective githubs. Has this board been fully supported? I saw one reference to the grove_chainable_rgb_led code and this commit talking about a firmware update but couldn’t find any references/tutorials/examples working with this specific board. Does it require a custom firmware, or is it fully integrated back into the primary repository? If it’s working it has the potential to make some very cheap/amazing home IoT lighting so I’m very interested if it’s working.


#15

I believe this is still on our to be developed list; we haven’t see much demand for it yet. We will keep it on the list though!