These are chat archives for Makuna/NeoPixelBus

21st
Aug 2018
Michael Miller
@Makuna
Aug 21 2018 07:14
@Xonotron @me-no-dev Does this pull capture everything? Makuna/NeoPixelBus#225
you missed setting the dma buffers to 4
the rest seems there :)
Michael Miller
@Makuna
Aug 21 2018 07:18
passing 4 for dma_count?
Me No Dev
@me-no-dev
Aug 21 2018 07:19
yes
Michael Miller
@Makuna
Aug 21 2018 07:22
Me No Dev
@me-no-dev
Aug 21 2018 07:22
looks good :)
you can remove the 4 pixel restriction note from the eamples if you want
Michael Miller
@Makuna
Aug 21 2018 07:25
there are notes about 4 pixel restrictions?
Me No Dev
@me-no-dev
Aug 21 2018 07:26
yeah I saw a few places that should use a minimum of 4 pixels or there will be issues
ahh nevermind
I've read it wrong
it says the example is made for 4 pixels...
Michael Miller
@Makuna
Aug 21 2018 07:28
whew, thought something had made it in that wasn't supposed to be there. I really need to clean up the examples though.
@me-no-dev thanks for the investigation and fixes.
Me No Dev
@me-no-dev
Aug 21 2018 07:31
ah glad I could be of use :)
good to remind me the quirks of I2S too ... :P going back to that code to get it finished
Xonotron
@Xonotron
Aug 21 2018 08:17
#define I2S_DMA_SILENCE_LEN 256 // bytes Esp32_i2s.c#L49
@Makuna you kept the I2S_DMA_SILENCE_LEN of 256, me-no-dev suggested a size of 64 (Aug. 20 22:10 and Aug. 20 23:45) which works fine here , but I didn't test it with many pixels. Just to make sure you didn't overlooked this.
Me No Dev
@me-no-dev
Aug 21 2018 08:54
@Xonotron let it be ;) or there might be issues in busy sketches
Michael Miller
@Makuna
Aug 21 2018 16:08
What were the effects of this? Is this empty data that is looped and sent when nothing is supposed to be sent; such that the isr will trigger everytime it finishes this block?
Me No Dev
@me-no-dev
Aug 21 2018 16:08
yes
I plan to change this in the future
Michael Miller
@Makuna
Aug 21 2018 16:14
Did you ever look at my esp8266, it very similar in approach, the block descriptors (two of them for silence) point to the same empty block size, the last descriptor points to the first. The data size varied based on the needed "reset" time for LED hardware, so minimum of 50us and a maximum of around 500us; so the isr was being called that often (but does almost nothing). I never heard of any issues.
(but I will leave this as is)
Me No Dev
@me-no-dev
Aug 21 2018 17:22
the i2s bus on the 8266 is not the same. many things look the same, but reality is different
fighting a similar issue with camera input right now