Hi! I have a ink1300s0 chipset for a rgb led strip.

Hi!
I have a ink1300s0 chipset for a rgb led strip. I searched around and i find that is almost compatible with the ws2811 chipset. I tried but it works only per the first led. I have no idea how to solve.

Hmm - do you have a link to the datasheet? I have seen some INK chipsets - but I don’t recognize that product number (or at least a link to where you brought the leds from?)

@Daniel_Garcia Aglaia® https://www.amazon.it/dp/B017N68D6Q/ref=cm_sw_r_other_awd_DHJhxbDTCXBBP it’s an Amazon product, i’ve read the product number directly on the chip

Ops it’s ink1003s0

Try using UCS2903 as your chipset - that’s the one with the timings that most directly line up to what’s in the INK1003 datasheet (http://www.mikrocontroller.net/attachment/199048/INK1003_IC_From_GREELED.pdf ) - and let me know if that works (if it does, i’ll add an INK1003 alias for the UCS2903)

Ok, now i’m working so i’ll write later. Anyway thank you!

I didn’t find the UCS2093, instead with the UCS1093 the numbers of led works but they’re always white (red green and blue turned on)

It’s UCS2903 - not UCS2093 - the UCS1903 timings are very different from the UCS2903 timings. You may need to get the most recent version of FastLED from github for UCS2903.

I have FastLed 3.1 i’ve tried with UCS2903 (misspelling before) and tried the blink example: it blink only the first led and in blue.

In that case, it’s possible that the INK1003 datasheet is lying about the timings that it needs. Also - what hardware platform are you building for?

Arduino Uno.

I’ve tried a bit and i also tried to write myself the code, and it works fine if i switch on only 1 to 10 leds, when i try to control more than 10 leds the signal seems to decrease. This is the simple code i’ve written:

int PinLed = 13;
int i = 0;
int numLed = 3;
int n=0;

void setup() {

pinMode (PinLed, OUTPUT);
for (n=0; n<numLed; n++){
for (i=0; i<8; i++){ //First 8 bit
digitalWrite (PinLed, HIGH);
delayMicroseconds (0.90);
digitalWrite (PinLed, LOW);
delayMicroseconds (0.20);
}

for (i=0; i<8; i++){ //Second 8 bit
digitalWrite (PinLed, HIGH);
delayMicroseconds (0.90);
digitalWrite (PinLed, LOW);
delayMicroseconds (0.20);
}

for (i=0; i<8; i++){ //Third 8 bit
digitalWrite (PinLed, HIGH);
delayMicroseconds (0.90);
digitalWrite (PinLed, LOW);
delayMicroseconds (0.20);
}
}

}

void loop() {

}