Using MIDI In to trigger pad lights?

Official support for: rogerlinndesign.com
RELATED
PRODUCTS

Post

Roger_Linn wrote: Wed Jul 22, 2020 5:18 pm [...] to set all note lights to a specific light/color pattern that the Note Lights On/Off function doesn't permit, for example guitar neck dots...
Yes, guitar neck dots... Yes... Yes, yes, yes... That would be nice. :pray:

But it's okay, I've long since endeavoured to shut all the lights off anyway... True freedom!

:wink:

Cheers!

Post

Guitar neck dots are permanent. A bit of paint should do...;-)

Post

Haha...

I actually saw a guy busking of all things with a LinnStrument, and he had painted all the notes of the C major scale black, because he couldn't see the lit cells in the daylight. Effective though it may have been, it pained me to see. :neutral:

He was quite the character. I must have a picture of him around here somewhere. I know I took one and texted it to Roger while I was standing there (Roger and I were working on Tempest fixes together at the time, so we were in near-daily contact). Hmm... Let me check my phone. If I find the pic, I'll come back and post it here for fun.

Cheers!

*Update: I found the photo, but it's too big to upload to the forum. I'll have to resize it and try again later.

Post

Here it is.

Points for inventiveness, but for anyone predisposed to OCD like myself... :dog:

:wink:

Cheers!
LS Busker 2.jpg
You do not have the required permissions to view the files attached to this post.

Post

His name is McRorie Tait. Here's a video of him:
https://youtu.be/32VQRYf-gHI

Post

Roger_Linn wrote: Fri Jul 24, 2020 12:10 am His name is McRorie Tait. Here's a video of him:
https://youtu.be/32VQRYf-gHI
The stuff of legends!! 😃 This totally made my day! A Terminator/Borg One-Man-Band!

Post

What we're seeing here is the undocumented dangers of adopting new technologies:

Evidently, if you spend too much time with your LinnStrument, you're at risk of being assimilated. There really should be an FDA-approved warning label on the box. No more over-the-counter LinnStrument purchases. :wink:

Cheers!

Post

this gentleman is truly enjoying himself. excellent

Post

Yes, I talked to him for quite some time, the day that I took that picture, and we had a long, involved conversation about music tech, as you might expect. He definitely believes in what he's doing, and finds a great deal of satisfaction in it... Good on him.

Cheers!

Post

Does anybody know why when I do this half or more than half of the notes from incoming midi simply do not light up? i tried testing it with something obvious like just hitting each note in order chromatically and when I play it back it might light up 3 or 4 in a row, then skip 4 or 5, then does 3 or four more. in fact, it seems when it skips and comes back that it then lights up the wrong notes,
notes that werent played. in my tests, i simply hit each note on the bottom row in order, on playback, the first 5 usually go fine. then it stops for about 5 seconds, then when it comes back it plays 5 more on the row above it that werent played. When played back from a prerecorded midi sequence, less than half of the notes show up.

Post

May I add a remark here: The answer to the original question if it was possible to light the Linnstrument's note lights from a MIDI sequence may be yes, but for the slighly more specific question if a note sequence recorded from the Linnstrument can be played back to light the same notes it is actually a NO (since all the up to 4 or 6 same-pitch notes are lit).

For remembering the exact fingerings with which one played a chord or melody, and, more importantly, for future pedagogic MIDI files teaching songs, scales, and chords, this is not optimal.

HOWEVER, here's a light-weight possiblity to achieve this:
  • with a special option switched on, the LS could send with each played note an additional controller value that disambiguates the actual note played (this could be a ctl value of 1–6 that specifies the note light index, counting from left, or so)
  • this controller would be recorded by the sequencer and played back, telling the LS which note actually to switch on
Let me know what you think about this, cheers!

Post

Yes that's true, diemo-- MIDI has no standard message for specifying which of multiple pads of the same pitch to light on a grid-style instrument.

An educational software application can already achieve something similar. It can send CC 20-22 messages to light any note pad in any color, and some such applications already do. But of course this doesn't solve the problem of recording a sequence then lighting the same pads on playback.

I appreciate your suggestion of sending an additional "Which Pitch" CC message, but it does have some problems:
* DAWs quantize Note On messages but not CCs. So if LinnStrument sends the Which Pitch message before the Note On, it's likely that order will be changed on playback. For example, in a quantized chord, the Note On messages will be sent back at the same instant, but the Which Pitch messages won't so they'll all be slightly early or late. So LinnStrument must try to figure out which Which Pitch message applies to which Note On message. To fix this, the Note Select message should ideally store both the Note Number and specific row/column that it applies to, but this would require 2 CCs, which makes it even messier.
* If you implement the "2 CCs" fix described above, what happens if you change LinnStrument's octave or transpose before playback? All the row/columns will be different. So how do you specify the correct pad to light?
* What if LinnStrument is expecting the Which Pitch message but the DAW doesn't send it? How long should it wait before falling back to lighting all pads, such that no latency is perceived?

My initial view is that there are two many potential problems for a feature that few have requested. Also, I think it falls outside of my guiding principal for new features as stated on the FAQ page, General tab, FAQ "Can you add this feature: __________?"

That said, if you're a coder (or if a coder is reading this) and think you can figure out a relatively practical method of implementing such a feature in the source code, please have a go at it and please let me know.

Post

diemo wrote: Thu Oct 20, 2022 9:04 pm For remembering the exact fingerings with which one played a chord or melody, and, more importantly, for future pedagogic MIDI files teaching songs, scales, and chords, this is not optimal.
I always feel compelled to lend some perspective to these pursuits...

First of all, with an isomorphic playing surface, like the LinnStrument, it doesn't really matter if the same note/notes are lit in every position: they're still the same notes, and the relative fingerings will remain the same for each instance.

Beyond that though, people have been learning to play musical instruments, for thousands of years, with little more than basic notation, their ears, and good old-fashioned practice. If you apply yourself, with a little time and comprehension, such a program would quickly become a moot point. Hence why there have been so few requests for said functionality.

From my experience, the "paint by numbers" approach typically only results in dependency (on the lights, in this case); which, in turn, impedes comprehension, destroys confidence, promotes laziness, and actually prevents the learner from committing material to memory and developing necessary hand-eye-ear associations.

I personally would never use such a thing, not for myself or to teach a student.

Cheers!

Post

AUTO-ADMIN: Non-MP3, WAV, OGG, SoundCloud, YouTube, Vimeo, Twitter and Facebook links in this post have been protected automatically. Once the member reaches 5 posts the links will function as normal.
Dear Roger, thank you for taking the time to think this through down to flushing out all the devils in the details.
I appreciate your suggestion of sending an additional "Which Pitch" CC message, but it does have some problems:
* DAWs quantize Note On messages but not CCs. So if LinnStrument sends the Which Pitch message before the Note On, it's likely that order will be changed on playback. For example, in a quantized chord, the Note On messages will be sent back at the same instant, but the Which Pitch messages won't so they'll all be slightly early or late. So LinnStrument must try to figure out which Which Pitch message applies to which Note On message. To fix this, the Note Select message should ideally store both the Note Number and specific row/column that it applies to, but this would require 2 CCs, which makes it even messier.
Quantisation is a catch indeed. My hope here would be that the proper solution might be found in MIDI 2.0 with a way to associate additional data to MPE touches in a way that a sequencer could hold them together (in the way that the bach package for Max has all-purpose note slots). I'll have to take a look at that spec, finally.
* If you implement the "2 CCs" fix described above, what happens if you change LinnStrument's octave or transpose before playback? All the row/columns will be different. So how do you specify the correct pad to light?
Good point. One could probably come up with a disambiguation scheme with absolute addressing: Imagine the Linnstrument 2000, which is 10m long and covers all 128 MIDI notes, each note can appear at most 8 times (once on each row). Numbering the possible appearances left-to-right/bottom-to-top gives the absolute which-note index (unless there's some catch in the settings I'm not aware of). An actual Linnstrument with any transposition/row offset setting is then just a window into the absolute space of touches and notes.

The 3 bits for the 8 indices would then conveniently leave 4 bits for the colour choice.
* What if LinnStrument is expecting the Which Pitch message but the DAW doesn't send it? How long should it wait before falling back to lighting all pads, such that no latency is perceived?
Here I would suggest that the which-pitch message is to be sent before the note on, such that the LS immediately knows which pad to light (and in which colour, see above).
That said, if you're a coder (or if a coder is reading this) and think you can figure out a relatively practical method of implementing such a feature in the source code, please have a go at it and please let me know.
I am, but will need to get more acquainted with arduino programming (only used Energia for programming the R-IoT (https://www.stms-lab.fr/shop/product/r-iot/) once) and the LS code base.

Thanks and all the best,
Diemo

Post

I agree in general to Johns opinion, but everybody is responsible for oneself…
I think I asked for a similar feature for a completely different reason.
If you set your LinnStrument to channel per row, you should get the lights where you want them to be. (I didn’t test it…) But you would loose the MPE features and have extra effort to set it up in your DAW…
One other option which could be implemented and possibly solve that at least partially, is an enhanced channel per row mode. Assigning two channels to one row, which would allow to bend per voice if you restrict yourself to two notes per row and in case of having more than two notes played, fall back to the behaviour of the 1 channel mode (triggering extra notes on slides…)
Just an idea with several but solvable problems…; - )

Post Reply

Return to “Roger Linn Design”