ok, i could do with a little help here.

ok,
i could do with a little help here. these are ledwalker 30mm pixels, 12v. the flip side has 3 standard 5050 smd rgb leds and resistors, the photos are the flip side.

from the documentation the best i could find is that they are based on the lpd6803 chipset, but i cant identify it anywhere.

all i can see is the sp3490, which is a serial chip (i believe for dmx interfacing).

powered up and running, they go through a sequence (mostly) solid color, yellow, bluw, white, red, and then drop to black and then red fade…

i get the feeling that this is some redundant code but have no idea where stored.

Any chance you can put a scope on the data lines to see what it looks like?

Data +/- certainly sounds like DMX - but it also sounds like they may be free running? Do they all do the same thing or different things? (Eg is some led the master?)

You could try hooking up a DMX controller to them and see what happens.

well, this is whats weird. ive snipped one off, and thats connected to arduino, the rest are free running, but the free running are synced.

the one connected to the arduino is also free running, but out of sync, and out of colour range.

superconvinently i have a usb to dmx box… not sure how to use it though… guess ive got a sunday to start messing around!

erm… i can use the arduino as a dmx controller can’t i? theres a library for it!

Yes! There’s even a fasted controller for DMX (assuming the DMX universe is just a string of rgbrgbrgb)

sadly, using dmxsimple was good enough to get the leds under control. i didnt quite work out how fastled dmx was working.

now, just to work out how to convert rgb to hsv and thatll be enough!

#include <DmxSimple.h>
#include <FastLED.h>

#define DMX_PIN 4
#define NUM_LEDS 16
CRGB leds[NUM_LEDS];

void setup() {
LEDS.addLeds<DMXSIMPLE, DMX_PIN>(leds, NUM_LEDS);
}

void loop() {
for(int i = 0; i < NUM_LEDS; i++) {
fadeToBlackBy(leds, NUM_LEDS, 64);
leds[i] = CRGB::Red;
LEDS.show();
delay(33);
}
}

Granted, this assumes that the data being written out is RGB data starting at dmx channel 1. I should see about adding the ability to set an initial channel offset.

i get these errors on compiling for some reason?

fastleddmx:19: error: stray ‘\357’ in program
}
^
fastleddmx:19: error: stray ‘\273’ in program
fastleddmx:19: error: stray ‘\277’ in program
exit status 1
stray ‘\357’ in program

Probably some stray control characters from copying/pasting the code? (this is why I usually don’t like code in g+ comments, but basically just wanted to show you the basic idea)

ahh, ok. ill work on it!
thanks

hahaha! there was an invisible character right at the end of the code (outside the void loop {})

brilliant, it works. now i dont have to try to work out 3 channel rgb to 1 dial hsv control!
legend!