Code Monkey home page Code Monkey logo

Comments (12)

kaeltaz avatar kaeltaz commented on July 25, 2024

zrzut ekranu 201

from esp8266_artnetnode_v2.

mtongnz avatar mtongnz commented on July 25, 2024

Thanks @kaeltaz. Donations are much appreciated and allow me to purchase more bits for testing. I have actually received a couple of donations in the last few days which I've used to purchase a strip of RGBW SK2812 LEDs.

I'll try to get this implemented for the next beta release so it can get tested by everyone before the final release. The hardest bit is going to be updating the Pixel FX engine - it was designed for RGB, not RGBW so may be a bit of a challenge but we'll see how it goes.

from esp8266_artnetnode_v2.

mtongnz avatar mtongnz commented on July 25, 2024

Implementing this is not quite as simple as I'd hoped - mainly due to the Pixel FX code being a bit sloppy. I'll be releasing the source soon with a couple of rewards up for grabs for people who fix a few of the issues. This will be one of the issues with a reward - it'll be one of the prototype boards I'm working on.

from esp8266_artnetnode_v2.

Bensmall avatar Bensmall commented on July 25, 2024

from esp8266_artnetnode_v2.

Deadeye5589 avatar Deadeye5589 commented on July 25, 2024

What are the current problems with the implementation of this feature? Still trouble with the fx code or is it the driver itself?

from esp8266_artnetnode_v2.

mtongnz avatar mtongnz commented on July 25, 2024

The driver will just need the timings tweaked for it to work. The FX code needs to be re-written a fair bit for it to work. I haven't had time to play with the SK6812 strips yet so haven't seen how much will need to be done. Feel free to have a play with ws2812Driver.cpp and see if you can get the timings working.

from esp8266_artnetnode_v2.

Bensmall avatar Bensmall commented on July 25, 2024

from esp8266_artnetnode_v2.

Deadeye5589 avatar Deadeye5589 commented on July 25, 2024

Timing should not be that much of an issue, since they are very similar between WS and SK LEDs. For both WS and SK the timing deviation is +/- 0.15µs. If your program has a tighter tolerance there is a good chance to have the SK LED running without modifications to the timing.

image

from esp8266_artnetnode_v2.

Bensmall avatar Bensmall commented on July 25, 2024

from esp8266_artnetnode_v2.

Deadeye5589 avatar Deadeye5589 commented on July 25, 2024

I finally had some time to look deeper into the code. After some problems understanding the structure of the code I'm now on my way to rewrite the ws2812 driver into a new class and rework of all of the function calls to distinguish between ws2812 and sk6812 LEDs. My biggest problem right now is understanding the Assembler code. Lets see if I can figure out how to modify the timing because my sk6812 strip won't work on the ws2812 timings.

from esp8266_artnetnode_v2.

Deadeye5589 avatar Deadeye5589 commented on July 25, 2024

Hmm Arduino is blocking any progress on this.
For some reasons the commented lines regarding the SK6812 will prevent the compilation of the project

void doStatusLedOutput() {
uint8_t a[9] = {0, 0, 0, 0, 0, 0, 0, 0, 0};

if (!statusLedsOff) {
if (statusLedsDim) {
for (uint8_t x = 0; x < 9; x++)
a[x] = statusLedData[x] & STATUS_DIM;
} else {
for (uint8_t x = 0; x < 9; x++)
a[x] = statusLedData[x];
}
}

#ifdef STATUS_LED_MODE_APA106
pixDriver.doAPA106(&a[0], STATUS_LED_PIN, 9);
#endif

#ifdef STATUS_LED_MODE_WS2812
pixDriver.doPixel(&a[0], STATUS_LED_PIN, 9);
#endif

// No more space available after this ????
// #ifdef STATUS_LED_MODE_SK6812
// skpixDriver.doPixel(&a[0], STATUS_LED_PIN, 9);
// #endif

// Tint LEDs red slightly - they'll be changed back before being displayed if no errors
for (uint8_t x = 1; x < 9; x += 3)
statusLedData[x] = 125;
}

void setStatusLed(uint8_t num, uint32_t col) {
memcpy(&statusLedData[num*3], &col, 3);
}

The compiler error stated that the text' will not fit in region `iram1_0_seg but I don't see why this small change should use up all of the remaining resources. The original code only used 31% percent of the available program memory and 57% of dynamic memory.

from esp8266_artnetnode_v2.

Deadeye5589 avatar Deadeye5589 commented on July 25, 2024

Good news,

both SK6812 and WS2812 LEDs are working with the same timings. Seems that the node was not working correctly when I first tried the SK leds. So the only thing that must be realized is the channel mapping 3 for ws and 4 for sk.
Still I can't figure out why the chip should ran out of memory by adding a sk6812 class.

from esp8266_artnetnode_v2.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.