If you're open to using ws28xx aka "Neopixels" then a wealth of stuff has been done with them. For example a google turned this up: https://www.partsnotincluded.com/how-to-control-anything-on-arduino-using-mi... p.s. about "how lighting is mapped to midi" IMHO most of the code in the DJ / Lighting industry is heavily proprietary and non-OSS. There's no silver bullet in the hack-a-day scene, but plenty of one-off projects and code snippets because as you say midi is well known / supported. On Sun, Mar 13, 2022 at 4:01 PM ☼ wil lindsay ☼ via vcf-midatlantic < vcf-midatlantic@lists.vcfed.org> wrote:
Using an Arduino as a gate with some 6N138 optocouplers would allow you to translate the signal from Midi to something like the https://github.com/FastLED Arduino-WS2810 libraries should be fairly simple, give or take figuring out the power supplies for your midi bridge and the LEDs.
The only real issue in using MIDI would be the lack of match in the specs. Midi is built around 0-127 (#0-#7F) where these LED libraries are typically 0-255 for each color. I'm sure you could sort something on the arduino like The Note (0-127) is an addressable LED and the Velocity 0-127 (doubled) is the color, where notes would be expected in a series of three. (R,G, & B).
Midi also uses the irritating speed of 31,250baud which normally has to be a cludge on an arduino. It might make more sense to just use serial at a higher speed and define your own information packets. The SPI speed of these LED strips is lightyears faster, and your arduino code and/or the library will typically collect your color commands in a buffer and send them a bit delayed. There's a little bit of lag, but even if you're synching to music, the human brain has an amazing tendency to make light flashing timing "feel" right, even when it's off.
On Sun, Mar 13, 2022 at 2:59 PM RETRO Innovations via vcf-midatlantic < vcf-midatlantic@lists.vcfed.org> wrote:
I am looking to control some RGBW leds (maybe SPI-based strips, maybe individual high power RGBW LEDs, not sure yet) with some of my classic computers.
That's pretty easy, no concerns there. Lots of arduino projects or I can just add in a 6522/6821/etc.
But, I thought, instead of just making a hobby project, I should try to design something that would work with classic systems *AND* current gear, and not be so platform dependent.
MIDI came to mind, both because the cost to interface is pretty low, cables are cheap, and MIDI is very well supported.
Where I am struggling is getting a handle on how to map the ability to set an individual LED color in a strip of say 20 or 60 to the MIDI protocol without just punting and using SysEx msgs. And, I might have a bunch of these strips (more than 16 perhaps, though my initial project only needs 10-12.
I am also aware of DMX lighting and MIDI->DMX converters. DMX XLR-5 cabling is a bit pricier than MIDI 5 pin DIN (though the RS485 protocol seems simple enough), so I thought maybe I should just emulate a MIDI->DMX->LEDs in my design.
Anyone familiar with MIDI-controlled lighting and how it's mapped to MIDI messages?
Jim
-- RETRO Innovations, Contemporary Gear for Classic Systems www.go4retro.com store.go4retro.com