Built another little tool that works nicely with Cantabile: MidiAlert

@Torsten
Hey that looks cool!
Thank you Torsten

Steffen

@Torsten… Feature request…how about a right-click option on the MidiAlert tray icon to re-read the INI file? When doing lots of config tweaks it would be so much nicer than closing MidiAlert and re-launching :slightly_smiling_face:

Neil

Great idea! I’ll put it on the backlog…

1 Like

Hi Torsten, I’m thinking of using this as I no longer need the lyrics displayed. I’ve ‘downsized’ from liveprompter back to c3 notes. I still need the occasional reminder to pop up when viewing routing rather than notes.

Would it be possible to increase the limit from 10 messages to a minimum of 128?
Thanks!

I’ve been thinking abour reworking MIDI Alert to simply accept Sysex messages that contain messages in a string. This could be far more flexible, e.g. display the loaded song or state.

Would that help?

oooh, yes that would be perfect I think. I’ve not used Sysex before, but If it displays a string I can build up in C3, then that would be ideal!

Hey Al & everybody,

I’ve now built a new version of MIDI Alert (MidiAlert2) that works (only) with SysEx messages. Now I can create a quick pop-up on my LivePrompter tablet that shows me the currently selected song and state when I press my big red button - great!

There is a compact manual included in the download, so give it a whirl and let me know if something’s still unclear.

Installer: ClickMe!
Installer, wrapped in ZIP file: ClickMe!
Simple ZIP with the relevant files: ClickMe!

Cheers,

Torsten

5 Likes

Thanks Torsten, I’ll try it in the next couple of days.

Torsten, this is brilliant - thank you for writing it.

I am initially using it to display reminders that I need to manually advance a state as we come up to a Solo. With the variables I only need a few standard messages at this point, so I’ve made a rack and use the rack states to trigger these standard messages. Any custom messages I can then put directly at the song level.

1 Like

Hi Torsten, is there a way of sending a carriage return in the text string so there can be multiple lines of text?

Not a problem either way! Thanks.

Hi Al,

unfortunately not at present (the “DrawText” function of the development toolkit I use doesn’t deal with line breaks). When I get to it, I’ll have to build my own multi-line text drawing function…

Cheers,

Torsten

Hi Torsten, no problem, I don’t need it now as I’m using colour instead, so please cancel my question!

By way of an update,

I’m using MidiAlert to show the name of the next song state with background colours to remind me whether the song state will auto advance based on a note I’ll naturally press during playing, or whether I need to manually advance it. At the moment the MidiAlert window is open permanently because non-blocking delayed bindings don’t work properly in the latest betas. Brad is aware but it will be a few weeks before it gets resolved.

One more question then - would it be possible to either specify the position of the window on the screen, or an x,y offset from centre please? I’d prefer to be able to set it further towards the bottom right hand side of the screen so that it doesn’t obscure the selected rack states in the routing screen.

Cheers, Al

Hey Al,

I’ll put it on the backlog. No promises, though - I’m currently busy building another little tool for organizing my guitar pedalboard…

Cheers,

Torsten

I just found this post as I was looking for a way to display the global transpose information on my music reading screen, which when open blocks the view of Cantabile, of course. I have Cantabile running on a NUC inside my XK3 and can view that computer via ethernet on my Surface Pro 4 (NoMachine screen sharing software) if I need to make any adjustments. I use Musicsheets to display the music for the songs but sometimes I need to transpose something. This I have set up using two buttons on my MixFace controller (up transpose/down transpose via a binding in Cantabile) but I did on one occasion forget to press ‘down’ for the next song - rather embarrassing!

What I need is a visual display on the Surface Pro to remind me I am in transpose mode hence I found this post. Would this plugin work how I imagine and is it still available?

Paul

Hey Paul,

you can download MidiAlert 2 here.

When you install it, it also installs a manual, so just give it a try.

To be sure: MidiAlert is not a plugin - it is a stand-alone program that lives in your system tray, waits for MIDI messages and then pops up messages centered on your screen. These messages can either stay there until you tell them to close, or they can be timer-driven and just show up for a couple of seconds.

To have MidiAlert messages pop up on your Surface 2, you’ll need to connect your Cantabile Machine and your Surface via MIDI - if you’ve already connected them via ethernet, I’d recommend creating that connection via the network with rtpMIDI. Now you need to find the best way to send Sysex messages to your Surface using Cantabile bindings when you transpose. I’ll leave that challenge to you :wink:

Cheers,

Torsten

Thanks Torsten, looking forward to giving this a try. I already use rtpMidi to connect a couple of things to the Surface Pro so hopefully I can figure this one out, too.

I’ll report back with my success - or failure!

Paul

Hello.
Will try this soon. Thx a lot

I’ve been successful (eventually!) in getting MidiAlert to work! It was rather tricky trying to work out why it wouldn’t work at first. I decided to copy the ‘Hello World’ example in the pdf just to get me started but the first problem was Cantabile giving me a syntax error message. In the example the syntax includes 4D 41 but I realised after a while that this is Hex and the correct syntax in the insertion line should be “MA” - phew, problem solved. Maybe you can correct this in the pdf file, Torsten? Bear in mind I don’t really know what I’m doing :slight_smile:

I also found that Cantabile wouldn’t let me enter a sysex value if I just made a normal binding - I had to create a new rack, add a binding there and then clicking in ‘value’ brought up the dialogue box. Once it worked I could copy the binding and use it outside the rack, though it still won’t let me edit again by clicking the ‘value’ part of the line - strange.

I got this to work locally using loopMIDI then changed the wording and box size in MidiAlert (I realised that I had to shut down midiAlert and open it again for the new parameters to take effect).

Next problem was to get this to work over rtpMIDI via the ethernet connection that goes between the main computer and the Surface Pro. I tried everything I could think of without success (and Midienum wouldn’t work in Windows 10) but eventually I entered just the name of the Surface Pro computer (as shown in rtpMIDI) into the MidiAlert ini file as the midi port and - success!

I just need to tidy up the port names in Cantabile since I don’t really need the local loopMidi connection. Since my MixFace controls (which I’m using for the transpose function) also is replicated in Chameleon on the Surface Pro, I just have to get the pass-through to midiAlert to also bring up the alert message if I use the Chameleon touch buttons. That’s for tomorrow!

Thanks for this very useful programme, Torsten.

Paul

1 Like

Yes - that was an error in the manual. Corrected now - thanx!

BTW: you could also use 0xf0 0x7d 0x4D 0x41 - go full hex🤓

Hi,
It works like a charm.
Need to explore it now. Thx a lot
David