QLC+ 5.0.0 Beta1 crashes on certain keypad inputs

Report an issue that you found while using QLC+ 5.x.
Please provide as many details as you can, a sample workspace if available and don't forget to read the forum posting guidelines first !
Post Reply
jfelber
Posts: 7
Joined: Mon Feb 26, 2018 11:24 pm
Location: Austria
Real Name: Johannes Felber

Hi there,
the current beta of QLC+ 5.0.0 (Beta1) crashes when pressing [At] [Zero] [Enter] without selecting any channels before.
This is probably not the intended syntax, however coming from other consoles, which add the last selection to the command line if no new channel selection is entered, a command like this could easily be mistakenly entered.

The same problem occurs with any other level assignment like [Full] or a numeric value.

Thanks for releasing the Beta.

Best regards
Johannes Felber
User avatar
edogawa
Posts: 630
Joined: Thu May 07, 2015 10:34 am
Real Name: Edgar Aichinger

I can confirm this, it happens reliably at entering [AT] [ZERO|FULL|any value] [ENTER] without preceding channel number, as a second keypad command for a channel.

I share your view that this is a pretty common way of entering level adjustments for a previously selected channel, so we're sort of used to entering data that way.

I've looked at and extended the 3rd party DMX keypad branch for QLC+ 4 in my github fork, but that's a while ago and I don't remember well, I'm not a good coder anyways, and cannot spend time on this currently. I don't have a clue how close Massimo's QMLUI implementation is (compared to the QLC+v4 Qt widgets code I worked on).

But I suspect the code misses a concept of hashing/remembering DMX channel selections for supporting this style of entering data.
User avatar
mcallegari
Posts: 4710
Joined: Sun Apr 12, 2015 9:09 am
Location: Italy
Real Name: Massimo Callegari
Contact:

I wish this comment was posted here one year ago :(

Now it's quite hard to make this change, since it is ambiguous.
Questions:
- should the channel list be remembered per-universe?
- if I send two commands e.g. 1 AT 100 and 5 AT 80, channel list is made of one or two channels? if two, how do I reset it?

Again, this is a whole world and I need to know ALL the rules to make something usable like other consoles. (given the fact that I'm still convinced that this is an old fashion way to operate on DMX...)

[EDIT] a fix has been pushed upstream
jfelber
Posts: 7
Joined: Mon Feb 26, 2018 11:24 pm
Location: Austria
Real Name: Johannes Felber

Thanks for the fast fix!

There are multiple philosophies depending which console you look at:
There are consoles which have a programmer (e. g. MA, Hog):
Every channel which has values in the programmer is selected. The programmer can be cleared with the clear button. Depending on the console, multiple presses of clear release different stages of the programmer. E. g. on the MA: 1. press clear selection, 2. press make stored data inactive, 3. press clear whole programmer.

I guess, this concept is overkill for QLC+ and not suitable as an easy implementation.

The second philosophy does not need a programmer. This is how ETC implemented it on eos consoles:
Channels with modified data get a manual status.
Seleced are only channels which are in the active (terminated or unterminated) command line.
If the command line is terminated (enter pressed) and a new command without a channel selection is entered, eos will recall the last selection.

So in your case:
1 AT 100 Enter
5 AT 80 Enter
AT 10 Enter

Would set channel 5 to value 10.

To select universes, I'd recommend to use eos slash syntax: 1/1 is universe 1 address 1; 2/1 would be universe 2 address 1. If no universe is specified; 1 is assumed.

A general word about the keypad as deprecated way to operate on DMX:
Every big console has a keypad and uses it for different types of operation. Despite intensity assignments also groups, color palettes, presets, effects, etc. are entered via command-line/keypad.
However, the channel-numbers do not correspond to DMX-channels but to arbitray set-up in patch channel numbers. The consoles differentiate between addresses (DMX channels) and channel-numbers (fixture-IDs).

E. g.
I have patched 5 Martin Mac 700 with channel numbers 1 thru 5.
1 Thru 5 At Full Enter would make my mac 700 bright
1 Thru 5 At 3/106 would set the CMY-color mixing to lee 106 (primary red) on eos (some fixtures have color calibration data there, others get estimated values)
1 Thru 5 Focus Palette 1 Thru 5 would fan the focus palettes across the fixtures.

There are also many operations to modfiy the order of the selction, e. g. grouping.

However introducing a command-line interface on QLC+ is not something I would request, since the use-cases differ. I just wanted to clarify, how the biggest consoles on the market work and what (syntactical) expectations users could have.

Best regards
Johannes Felber
User avatar
edogawa
Posts: 630
Joined: Thu May 07, 2015 10:34 am
Real Name: Edgar Aichinger

Thanks Johannes for this good overview and summary! I tried to write up something similar but you pretty much nail it, IMO.

I also think QLC doesn't need a full fledged command line, basic channel editing could be a real time saver though, with existing "dump DMX to function" functionality...
Post Reply