Hi. I’ve spent a couple of days reading threads about setting display text. I’m visually impaired and i’m looking for some way to request the display content to be sent to the computer so it can be read by blind users with a screen reader. I guessed it wold be easy but don’t find any sysex command to read the LCD content. Specificly I have an Arturia keylab mkii and it’s so difficult to find technical specs documentation.
Do you mean that you’d like GigPerformer (through a script) to query the contents of the Arturia Keylab MKii, then communicate that in a way that it can be read outloud by a screen reader?
Or do you want something so that GigPerformer can communicate to a screen reader instead of to the screen of the Keylab?
Hmm… that’s why I’m affraid to be a little bit offtopic… I mean I just need to know whether or not the text on the LCD screen could be read by a sysex memory state request or some kind of low level operation, especially when manipulating controls in keylab edit User mode. Once it is done (supposing it can be), independently of GP, the data retrieved converted to ASCII could be passed to any text box such as windows Notepad and read. If it could not, I need to ask somebody to read the keyboard screen for me. Actually I didn’t use GP yet. I send sysex messages using MIDI OX.
From a quick look at the Keylab manual I don’t see anything that indicates a way to query what’s on the display. I’ve never actually seen that feature on a midi device that I’ve worked with. It is often possible to write to the display over sysex, but I’ve never seen one where you can read back what’s shown.
If you’re using midi ox you should be able to monitor what the Keylab is sending, so it’s worth looking at the midi stream coming from the Keylab to see if it communicates anything when you’re editing things in User mode. My guess is that the Keylab does not, but it should be easy enough to check.
As @Vindes mentioned, it is probably not possible to read the display of any MIDI keyboard controller using a SysEx. If the controller would transmit the contents of its screen via SysEx, it would probably be possible to do something with it, but to my knowledge, this is never the case. However, it is possible to write something on the Arturia controller screen, but I understand that this is not what you want.
If your ultimate goal is to have visual feedback on your text reader, you may need to rethink how you plan to work. If GP controls everything—and GP can control everything perfectly—you could imagine sending textual information about the current state of your setup to your text reader. Provided, of course, that it is possible to send information to your text reader from GP, and for now we don’t really know in what form it would be possible to send text to your text reader.
Following on from what I said earlier, if we assume that you decide to control your entire rig with GP, all you need to do is keep your MIDI keyboard controller settings constant and do everything from GP. I have an Arturia Keylab 88 MK II for rehearsals and I don’t change any of the settings while playing. GP can read all the controls it receives, transform them into whatever you want, and display the text you want based on your preferences. I looked at the initial settings on my Arturia once during the initial setup, and since then I never look at the screen again. The information I need is displayed by GP.
I was thinking the same thing: control everything from GP and don’t mess around in the keyboard settings other than setting it up for the first time.
I’m not an expert on screen readers, but what little I’ve seen was basically that you direct them to a window and they’ll read the contents that come up in that window.
If going down the path of having GP as the central controller, I imagine one simple approach would be to have global gigscript that acts on midi input from the controller (Keylab in this case), takes appropriate actions, and reports what it did to the log viewer. The screen reader could monitor the log viewer.
I imagine a lot of it could be callback driven, like saying things like “entered setlist mode” and “rackspace steinway loaded” as appropriate.
One could make it as complex as desired, of course, and there may be better mechanisms to handle the speech part.
Not sure how helpfull this will but here goes. I use a iPad to control every aspect midiwise of GP. I run an app on the iPad called OnSong. OnSong has a special display mode whereby it outputs to a tv screen or o.h. projector. It only displays chords on screen no chords etc. The text can go very large depending on settings. Could this possibly be an answer you could look at?