Stop All Functions fade >0ms causes moving head lockup

The issues found when using the Virtual Console
Post Reply
mdmayfield
Posts: 71
Joined: Wed Jun 15, 2016 8:51 am
Real Name: Matt Mayfield

Hi again everyone,

Here's a strange issue I'd like to report. It's difficult to describe, and I've seen it sporadically on a few other projects but only now have managed to find a consistent way to reproduce it:

1) Open the attached Stop Functions Fade Issue.qxw (with included custom fixture definitions placed in the appropriate directory for your OS)
2) Go into Operate mode, and bring up the DMX Monitor to show fixtures "Mini B-Eye #6 800" and "Mini B-Eye #7 1000"
3) Click the Example Motion Function button.
--> Observe Pan/Tilt channels 276-279 and 331-334 move.
4) Click the custom "All Functions Off" button in the upper left (it is saved with a setting of 200ms fade)
--> Observe that channels 276, 331-334, and a number of others immediately go to 000
--> Note that most moving head fixtures stop and stay where they are
5) Click the Example Motion Function to turn it on again
--> Observe that the channels that went to 000 are now "frozen" at 000 (also in Simple Desk)
--> They also show as frozen at 0 in the Simple Desk and 2D View
6) Now click the red Switch to Design Mode button in the upper right. Confirm the "stop running functions and switch" dialog.
7) Click the button again to go back to Operate Mode and click Example Motion Function again.
--> Observe that the channels are working again
8) Go back to Design Mode, double-click the All Functions Off VC button, and change its Fade time to 0ms
9) Repeat steps 3-5
--> Observe that now, with 0ms fade time, all works as expected and channels do not become "frozen."

I'm seeing this behavior on QLC+ compiled from latest Git sources as of about 24 hours ago.

Thanks,

Matt
Attachments
Stop Functions Fade Issue.zip
(27.02 KiB) Downloaded 42 times
mdmayfield
Posts: 71
Joined: Wed Jun 15, 2016 8:51 am
Real Name: Matt Mayfield

I was also able to reproduce this issue while running QLC+ on Ubuntu MATE 16.04 LTS.
mdmayfield
Posts: 71
Joined: Wed Jun 15, 2016 8:51 am
Real Name: Matt Mayfield

This issue persists in the latest GIT sources.

After playing around a bit some more, I've found that this issue is not reproducible when there is only a small number of fixtures (for example 8). It does apply to simple projects though, and does not seem to be related to any of my custom fixtures.

The attached project which uses built-in moving head fixtures instead of custom ones makes this easy to see:

1. Open DMX Monitor
2. Go to Virtual Console Live mode
3. Click the EFX Movement function button
- Note all 16 moving heads respond as expected
4. Click the All Functions OFF 5s button (it has a fade of 5s)
- Note that some Pan/Tilt channels go to 000
5. Click the EFX Movement function button again
- Note that some Pan/Tile channels are stuck at 000!
6. Click the main QLC+ Stop All Functions icon in the toolbar (no fade)
7. Click the EFX Movement function button again
- Note all 16 moving heads respond as expected, once again

It seems like something to do with the fade timer (?) is affecting Pan/Tilt channels inappropriately. It "feels" to my instincts similar to Issue #948 where some information was used by reference, making it possible for data to change in strange, unexpected yet deterministic ways. The odd pattern of which channels get stuck is what makes me think this.

Also, I just now tested this sample project after hiding my custom fixture definitions from QLC+, and ignoring the error upon opening the project. In this case, nearly ALL Pan/Tilt functions got stuck at 000 in step 4 (except for MAC 250 Krypton #16). When testing *with* the custom fixture definitions available, only a few of the Pan/Tilt channels get stuck (but the issue is still present). Perhaps something is changing related to how many Intensity channels are active in the project?
Attachments
RunLikeHell-Lights_migrated-minimized2.qxw
(30.69 KiB) Downloaded 46 times
Post Reply