Makuna / NeoPixelBus

An Arduino NeoPixel support library supporting a large variety of individually addressable LEDs. Please refer to the Wiki for more details. Please use the GitHub Discussions to ask questions as the GitHub Issues feature is used for bug tracking.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Add Support for TM1906

Evanvdberg93 opened this issue · comments

Following some earlier discussions in the discord, I’d like to request support for the FW1906/TM1906 be added.

Interesting that I have the spec sheet (in chinese) but I didn't see support for it yet. I did see TM1814 & TM1914 but they are not compatible. I will take a look.

Do you actually have some of these?
If you don't, I would avoid them if you can. The first color element of pixel cannot be 255, not that this complete loss, it's just annoying as they use it as a flag to set the constant current brightness. Further, if you are not directly using my library (like using WLED or others) it is unlikely to work well as it will REQUIRE that you set the pixel current once (a call in my library) that is not common to other NeoPixel like LEDs; and the libraries that use my code often don't support this rare call well.

If you do, you will have to be the tester of the changes as I don't have any and very unlikely to purchase any. I will need to know the order of the color elements RGB versus GRB and if your strip is driving 4 pixels per chip (5v) or only one pixel per chip (12v?). They can be wired in all sorts of ways.

I will also need to know what platform you are using so I can prioritize it for testing. AVR? ESP8266? ESP32?

I don’t have some of them no. I was looking at getting some since as far as I’m aware they’re the first individually addressable RGBCCT strips, but support for them on the library side seems to be nonexistent.

interesting what you mention w.r.t the constant current flag, and the downstream libraries issues.

In terms of platform, ESP32 though I’m open to switching if it makes support easier, as at this point these strips seem to be quite the hassle to even find a supporting library.

The TM1814 is similar. There is a NeoTm1814Settings that you instance and make calls to set the current need for each of the color elements and then call strip.SetPixelSettings(settings) with it. This would mean you need to know what the current requirements are for the RGB and the white LEDs (and how they are attached). CCT means color coordinated temperature, it doesn't define how the LEDs are ordered or mixed with the RGB.

(I suspect I was planning on adding this at some point since I supported the TM1814 and TM1914 and I already had the spec in my doc folder)

Hi. I have two FW1906 strips. They work fine with a modified version of FastLED on a Arduino mega board I had around.
It uses one IC controller for each 24 volt sub-segment with six LED-ICs each. The controller ICs have six output channels and only the first five are used. I need to reinstall my arduino to check the color channel ordering for sure, but it was someting like R,G,B,WW,CW,empty.
My naive hacky approach on FastLED was to modify another WS2812B code by filling all the six color channels with the int8 values for each.
Recently I started digging into WLED code trying to make it compatible with it, then I saw how much work NeoPixelBus was doing behing the scenes and arrived here. Any tip on how to proceed? If I'm understanding the architecture correctly, should I add a custom NeoPixel Feature, like the one for TM1814, but with all the six channel components?
Can one derive the current from the nominal (spec sheet) power consumption or should it be measured?
Is this a good place to test it, should I join a discord or something?

TM1906 Spec states "each chip has 4 sets of RGB"; or 12 PWM outputs. This sounds like the FW1906 is different. I just searched around and yes, they are not the same. I still don't have a spec for it though.

created a separate issue for it