Hello!

I haven't experienced that. It was exactly same with some other WS2811 
implementation on oscilloscope.

However, I believe you have to give some time for reset to release. If I 
remember correctly, (I'm not looking the source right now as I'm in my day job) 
the reset word was also written in asm and it might be good to remove it from 
the write loop so that it is called and the line is raised back and then the 
communication starts. If I remember correctly, reset is coded inside write. 
Take it out and redefine write to have separate reset so it has more high time.

Not all WS2811 chips are a like. And it seems to me that those are interested 
only about low time of the protocol.

Hope this helps
Hannu

----------------------------------------
> Date: Mon, 28 Dec 2015 14:40:23 +0800
> From: atomm...@gmail.com
> To: amforth-devel@lists.sourceforge.net
> Subject: Re: [Amforth] Blinkenlichts.
>
> Hi Hannu,
>
> 2014-11-13 11:08 GMT+08:00 Hannu Vuolasaho <vuo...@msn.com>:
>> The driver can be used like this:
>>
>> 21 buffer: rgb
>> : rgb-test 21 0 do rgb i + c! loop rgb 21 ws2811.write ;
>>
>> $ff $ff $ff
>> $ff $ff 0
>> $ff 0 $ff
>> 0 $ff $ff
>> $ff 0 0
>> 0 $ff 0
>> 0 0 $ff
>> rgb-test 5000 ms 21 ws2811.off
>
> I tried your ws2811 driver with WS2812B LEDs. But there is a bug. For
> example, if you have three LEDs, you need to write twice to get the
> correct result:
>
> $ff $00 $00 $ff $00 $00 $ff $00 $00 grb-test
> $ff $00 $00 $ff $00 $00 $ff $00 $00 grb-test
>
> https://cpldcpu.wordpress.com/2014/01/14/light_ws2812-library-v2-0-part-i-understanding-the-ws2812/
> says "The internal buffer is written to the PWM controller during the
> next reset."
>
> (ATmega328P)> 10 $00 $00 $00 $00 $00 $00 $00 20 grb-test led-off 1 ms
> the above line works.
>
> word led-off turns WS2811_BIT off thus reset the WS2812B led thus
> write the internal buffer (inside the LED) to output.
>
> BTW, we are making an component cabinet for resistors and at the mean
> time it can also play Conway's Game of Life, here's a gif:
> http://imgur.com/VPfzhh0
>
> Now the low level hardware driver is not done by amforth. I want to
> use amforth to make the whole project more general purpose, for
> example, we can use Raspberry Pi to control the cabinet.
>
> Thanks.
>
> --
> Best regards,
> Atommann
>
> ------------------------------------------------------------------------------
> _______________________________________________
> Amforth-devel mailing list for http://amforth.sf.net/
> Amforth-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/amforth-devel
                                          
------------------------------------------------------------------------------
_______________________________________________
Amforth-devel mailing list for http://amforth.sf.net/
Amforth-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/amforth-devel

Reply via email to