First I’d like to say this software is already superior to its competition so well done on a great start. As a lighting designer some of our needs in the MIDI and OSC world are a bit different then those in music and that’s primarily because the lighting consoles have technical limitations in the kinds of signals they can take as an input. Some things I love about the software already are the way the color system works, the grid system and GUI are great and I see lots of potential for NDI integration. Sorry for the long post but I’ve been keeping notes as I’ve been working my way thru this project and as a novice programmer I understand a lot of these requests are easier said then done.
Here are some feature requests in order of importance:
Button that changes Workspaces = For my system to work I need to be able to program a button to change the workspace. This way I can have a “Home Page” with 30 buttons on it and each one goes to a different workspace.
Text Restrictions = a bunch of my personal show syntax uses symbols that are unavailable as a text input. Primarily I’m looking for < and > but a real space would be nice too and the more options the better.
Multiple Selection of Widgets = Creating layouts can be pretty tiresome without being able to select and duplicate more then 1 widget at a time. Either by holding shift or having some kind of lasso selection tool.
Duplicate Workspace = I will have many workspaces that are similar except for some labeling and midi notes. The ability to duplicate a workspace would save a lot of time.
Different MIDI Note when Toggle Off = If the Toggle OFF note is the same as the Toggle ON note then the console won’t match what OSC Pilot displays. For toggle to work properly with lighting consoles we would need a MIDI note for the ON and a separate one for the OFF.
Copy / Paste or Duplication Spacing = Implementing Copy/Paste or having the duplication spacing be the same as the final placement of the previous duplication. Vectorworks has a nice duplication process that I think would work great for this application. This allows for faster creation of workspaces.
Keyboard Shortcuts = If more options were accessible via an external keyboard then workspace creation would be faster and easier.
Lock Widget Toggle = I find myself regularly selecting and moving widgets by accident. Mostly Null boxes that I’m using as visual markers. A lock toggle option would make individual widgets not move until unlocked. Perhaps an “Unlock/Lock All” button at the top?
More Button Shapes = If I had buttons that looked like arrows or I could input the number of sides to the shape I could make some really awesome layouts with less text to describe their purpose. LDs will primarily use buttons because our software doesn’t allow for CC messages.
Pixel Info = I’m concerned about moving my file from my 4k monitor at home to a touchscreen laptop for shows and I think being able to see the pixel dimensions of widgets would help me plan out the appropriate sizes.
Keyboard Input Popup = When using the software on a touchscreen I can see how the keyboard input popup would be necessary but when I’m programming on a PC the window just gets in the way at the bottom of the screen. Maybe a Toggle option in settings to keep it hidden.
Great feedback, I’ll take note of all of these. Excited to see it used in your field.
I’m thinking the way to make this extensible is to add a “OSC Loopback” toggle for widgets, that causes their OSC messages to be sent back to OSC/PILOT instead of out to the target machine. That way you can use the custom OSC messages that OSC/PILOT listens for to do custom operations. The idea here is that instead of an exploding number of widgets/parameters, this feature can be extended just by adding new custom messages.
This is already do-able with ctrl-click.
You can do this just with Ctrl-A to select-all, and then Ctrl-C/Ctrl-V pasting into the new workspace.
I just thought of another that would really put OSC Pilot above its competitors in my part of the industry. So GrandMA2, the industry leader in lighting, can only take Note ON/OFF messages and velocity for Note ON/OFF. So most LDs to be able to get control of faders have to run all their fader signals into BOME and convert fader CC messages into Note ON/OFF Velocity messages to run into grand MA2. If you could cut out the middle man and make faders that output their fader position over velocity attribute of Note ON/OFF then I could really see that catching on among LDs.
To elaborate on the Note OFF. I have to make a corresponding command with each press so for ON I would make a command that says “GO Sequence X” and for the Off press I would need to make a separate command that says “Off Sequence X” for them to match. If I can only send one note the console can’t distinguish between on and off.
So in MIDI terms the Console takes in a Note On/Note Off pair as a way to trigger a command. It can’t trigger one thing on Note On and another on Note Off, for the same Note index? You need to send Note On/Note Off for one note index for one command, and On/off pair for another index for another command. Am understanding that correctly? I think for now the way to do this would be a Button Matrix set to radio mode with 2 buttons. It uses up more space but should work for now.
I dont think what you said above is correct. The lighting console doesn’t look at the Velocity change of a Toggle in OSC. It gets a note on message which I can connect to an executor or macro and the note off message from OSC would do the same thing as the Note On message. Thats why I want the OFF of the toggle in OSC to send a different note then the ON.
Also is it possible to get an option to send the Note ON/OFF Velocity messages for all the buttons like you did for the faders?
Ah ok, so it responds the same to a Note On as it does a Note Off, got it.
What I’m struggling with is trying to avoid an explosion of parameters to match every possible usage case. Let me think about this more.
So I figured out a work around without you having to send a separate note for the off message. First I realized you already put a spot for MIDI Note velocity on all the buttons, thank you. So if anyone is trying to do this in the future the key is to have the note velocity connect to the sequence fader. This way the velocity tells the sequence whether it is ON or OFF.
@malcolm Could you add an option to a button that disables “Send on release”? That way when a button is pressed/released only one command is sent.
TouchOSC has this option, both enable/disable “send on press” and “send on release”.
I think this would solve CassLD’s problem while having a lot of flexibility to other features. Even better, it could be dealt with on the button layer rather than the MIDI/OSC layer to give the feature to both.
Can someone help me understand how multiple monitors work. I have a large multiple monitor system and every time I start the software it seems to open on different monitors and I’m not sure how to change it.