Page 1 of 1

Suspend MIDI messages when not connected?

Posted: 18 Apr 2017 14:05
by RichG
I have a Lemur app transmitting MIDI messages once a second to a laptop. If I wander too far from the router and lose connection the messages "pile up". When the connection comes back a flood of messages show up in the laptop. Is there a way to suspend message transmission when wifi connection has been lost?
The messages are ultimately being used for lighting control (via DMXIS). I'd rather the control resume after reconnecting rather than play catch up by processing all the messages that got held up as quickly as it can thus causing a momentary crazy light show.

Re: Suspend MIDI messages when not connected?

Posted: 18 Apr 2017 20:57
by Phil999
Lemur does not know when the connection interrupts, so there is probably no way to suspend MIDI messages.

Does Lemur have to send MIDI every second? Are these MIDI messages dynamic, constantly changing? If yes there is probably no alternative than to change the wifi setup, to prevent those interruptions. If no it would be better to send MIDI only after parameter change.

Last year I've been controlling a Resolume Arena rig from Lemur, and the iPad was sometimes 30m or more away from the computer and its ad-hoc wifi hotspot. This worked very well, sending MIDI and OSC commands with feedback, but I didn't have to send messages every second.

Re: Suspend MIDI messages when not connected?

Posted: 19 Apr 2017 03:57
by RichG
Thanks for the input- I'm still learning the ins and outs of Lemur. I was hoping there would be an undocumented feature where Lemur would have access to the Wifi connection status, but I guess not.

The once a second message was just to be redundant in case the previous change was not received. The application is for a fogger control so it's pretty much just on or off. I was afraid if a command to turn off the fogger were missed then it could result in the fogger being stuck on. This would make for a comedic moment during a performance. I'll remove my script that sends the midi message at 1 Hz and rely on the value change.

Note: Something I learned while writing the script- Even though a MIDI signal might be set up to transmit on a change... it's actually going to transmit on any assignment... even if it's set to itself. I took advantage of this to send the message out once a second by having an 'on frame' script set 'x=x' once a second. This didn't change x at all, but it was perceived by Lemur as a change and therefore triggered a midi message.