#ARGB LED control in MF

1 messages · Page 1 of 1 (latest)

main moon
#

Hello, from my understanding MF doesn't have ARGB LED support built in. Is there any interest in supporting ARGB LEDs in the future? If not, what solutions would you recommend for controlling them?

worthy cape
#

Hi @main moon
You are correct, ARGB aren't supported.
What would you use them for with MF?
I doubt there are any plans for supporting it. At least I have never seen it mentioned before.

main moon
#

I am interested in building a configurable multi panel that can emulate amber backlighting for airliners and the cool white backlighting for GA aircraft. ARGB LEDs can also be individually controlled so different aircraft configurations could have various panel sections illuminated according to their type.

#

It's possible to create the same effect through standard lighting but it'll require a lot more wiring and work.

left bramble
#

For something like that if you know how to code I would try doing a custom output device

main moon
#

I haven't tried custom outputs in MF yet. Thank you for the suggestion.

clear stump
#

custom output device for WS2812 led strip would be actually pretty cool for many uses

#

since that could be used for both backlight and also for individual lights

#

if you want just backlight, you can do it already now with 3 or 4 mosfets and using a RGB or RGBW led strip where all leds are the same color

#

so like think of it as a red led strip, green led strip and a blue led strip, wired to PWM led outputs and powered by mosfets (since its too much current for the arduino pins)

#

then just set a combination of RGB brightness to get a desired color

#

addressable leds would be cool so you could use one led that has white backlight by default and then would turn red or green for example based on sim state

broken hazel
#

Honestly I wonder if the wiring simplification is not eaten up by programming overhead. You would have to send color and intensity to each LED, would you not?

#

For that bi-color example, it might be easier to, for each cluster of lit buttons, have a transistor as a sink for the white channel and one for the amber channel. Then have the two LEDs (with individual current limiting resistors in close proximity and a shift register output to source current for each pair

#

one binding to color a cluster, one to select what LEDs in the cluster are lit

#

with PWM, you could even mix an approximation of that incandescent warm white that makes people fail lantern tests

left bramble
clear stump
#

well, I think it would still make sense in a panel

#

I wouldnt build a panel with mqtt

#

different thing if it is your room lighting

left bramble
#

I would to drive a ws2812 LED strip. Why re-implement all the amazing work WLED has done

broken hazel
#

of course ARGB has the advantage of flexibility, like what Tuomas mentioned where a button could light up in white when idle and in color to indicate a state

clear stump
#

that also makes sense with mqtt and we should do that as an custom output device btw?

left bramble
clear stump
#

though I think custom devices are so far arduinos

#

if there was the rest/json api

#

one could have "plugins" that talk to MF via sockets

left bramble
#

websocket 😉 THat's why I didn't finish the mqtt stuff, it needed to really be done holistically as part of an "expose all this stuff via websockets" solution

clear stump
#

yeah

#

did you check out how flightgear does the API?

#

they have both http api so you can do it with web urls which is easy to script with anything, and then a proper API too with a property tree

left bramble
#

nah, never looked at it. we are far off in the weeds from the original question lol

#

custom device is the way to go with what mobiflight offers today

clear stump
#

slightly 😄

main moon
#

I don't mind this discussion or where it's going. I think that more lighting support would enable more interesting builds and automation.

#

@clear stump mentioned in much greater detail what I had envisioned. Individually addressible lights are also becoming cheaper and have the benefit of being really easy to connect.

clear stump
#

yeah, I think making a custom device for WS2812 addressable leds would make a lot of sense

#

would need to experiment with the json files to define the output data and led number but I think it should work

main moon
#

Is the control scheme the same for WS2812 and WS2812B?

clear stump
#

maybe @lyric needle has some thoughts of how this could work in terms of the data transfer between MF Connector and the arduino

main moon
#

From my understanding the B revision is just hardware upgrades right?

clear stump
#

same protocol yeah

#

B is upgraded version only

main moon
#

From the MF user side would we be able to issue a RGB value to the addressible LED? Ex (255,128,200) to LED 14

#

I'm unfortunately not a developer so I'm not sure if any of the existing libraries do that

left bramble
#

Realistically the only way this will happen is if someone implements it using the custom device feature with custom firmware. I don't see it ever being added to the core firmware (that's why we added custom device support).

clear stump
#

it makes very good sense as a custom device yeah

#

@main moon custom devices let you define data fields via json config file, so you could have like "ARGB Strip 1" custom device with then output fields led1, led2, led3, for example

#

and you could set the lenght of the strip in the device config where you also define the data pin

#

ie, custom device: "my led strip", pin D2, 32 leds

#

I dont recall right now if you can define the output fields dynamically like that though

#

need to look

#

but worst case you just have 255 output fields per led device for example

#

and just set RGB strings

#

this all works in MF Connector already

#

you can define this with the json

#

and the data will be passed to the firmware with the custom device - then it is up to you to write the arduino side of the code

#

that sets the leds accordingly

#

it would not be even hard for someone with even a bit of experience in programming and would for sure be an interesting project to learn to write a custom device

#

so the real task is to write the arduino part

lyric needle
#

To implement WS2812 as a custom device shouldn't be so hard. I already thought about it. The interesting point is to define which Led should lit in which color. Once this is defined a message could be created which contains these informations. The custom firmware could split it up and control the LED accordingly. So only one MessageID would be required and the device.json file could be used for all cases.

pale knoll
#

Hello everyone here, i'm trying to add the led strip to a custom device but it won"t appear on the list, i've done, it seems, all the files (cpp, h, json, etc) did you suceeded to make it work ?