Akaii APC Mini

The issues found when using the Input/Output Manager panel
User avatar
mcallegari
Posts: 4720
Joined: Sun Apr 12, 2015 9:09 am
Location: Italy
Real Name: Massimo Callegari
Contact:

enbyted2 wrote:
mcallegari wrote: I've tried to understand if there's a quick fix for this, but there's not. This is a plain architecture error, emerged when we enabled the hotplug monitor.
That's really unfortunate and should be fixed, but we should also trace the re-plug issue, since it might be something that QLC is doing wrong.
No, I just tried your project with a KORG Nanocontrol 2 and there is no re-plug sequence at all.
That's definitely an APC mini issue. Probably it detects it's being flooded with MIDI data and sort of "resets" itself at USB level.
Quite a bad firmware I would say...

As I said, the "only" issue to be fixed is that plugin parameters get lost on a unplug/plug event.
One solution could be to apply some time based filter to hotplug events. If a unplug/plug sequence happens in let's say less than 500ms, then it's a false positive, and should not close/open a plugin line at all.
User avatar
mcallegari
Posts: 4720
Joined: Sun Apr 12, 2015 9:09 am
Location: Italy
Real Name: Massimo Callegari
Contact:

siegmund wrote: Unfortunately I'm not able to flash a scene with this checkbox enabled, also the LED on the BCF2000 instantly goes off after pressing. If I disable the checkbox, I have the toggling-behavior again, but on a button that should work as a flash button.
As I explained before, the BCF2000 doesn't send two events for press and release. It just sends "press", so I believe flashing with the BCF is not even possible, unless you are willing to accept an awkward button LED status.
Basically you would need to press and release a BCF button two times to start/stop flashing, that's why it is awkward.
User avatar
enbyted2
Posts: 17
Joined: Sat Dec 24, 2016 8:54 pm
Location: Poland
Real Name: Bartek

mcallegari wrote:
enbyted2 wrote:
mcallegari wrote: I've tried to understand if there's a quick fix for this, but there's not. This is a plain architecture error, emerged when we enabled the hotplug monitor.
That's really unfortunate and should be fixed, but we should also trace the re-plug issue, since it might be something that QLC is doing wrong.
No, I just tried your project with a KORG Nanocontrol 2 and there is no re-plug sequence at all.
That's definitely an APC mini issue. Probably it detects it's being flooded with MIDI data and sort of "resets" itself at USB level.
Quite a bad firmware I would say...
Oh, if that's the case then nothing to do about it. I'll just stick to having midisnoop in the middle, for now.
mcallegari wrote: As I said, the "only" issue to be fixed is that plugin parameters get lost on a unplug/plug event.
One solution could be to apply some time based filter to hotplug events. If a unplug/plug sequence happens in let's say less than 500ms, then it's a false positive, and should not close/open a plugin line at all.
But still it is a workaround, if somebody legitimately unplugs hardware and plugs it again QLC should initialize everything properly, as it was at the start.
User avatar
mcallegari
Posts: 4720
Joined: Sun Apr 12, 2015 9:09 am
Location: Italy
Real Name: Massimo Callegari
Contact:

enbyted2 wrote:But still it is a workaround, if somebody legitimately unplugs hardware and plugs it again QLC should initialize everything properly, as it was at the start.
Then I guess you are able to unplug/plug a device in less than half a second...lucky you.
In any case, that was just an idea. I tried to implement it but it raises other issues, so now I'm gonna fix the parameters issue.

UPDATE: after hours of me being puzzled by debug messages, I think I've sorted at least 3 things:
- the reconnection of feedbacks was totally missing on hotplug. That's why when the APC disconnected itself, there were no more feedbacks
- the original plugin line parameters read from XML are now restored after a hotplug
- with many widgets and several nested frames in the VC, I noticed the same feedbacks were sent like SEVEN times to the controller.I was not able to completely solve this, but I limited the number of feedbacks sent, and now the APC doesn't disconnect itself anymore

Now can you please help me testing these changes for accidental drawbacks ? I believe there shouldn't be, but the more we test, the more we have the chance this is OK for eveyone
I've triggered Linux automated builds and will publish the Windows build as well when it finishes to build
siegmund
Posts: 703
Joined: Mon Nov 02, 2015 11:03 am
Location: Germany
Real Name: Lukas

mcallegari wrote:
siegmund wrote: Unfortunately I'm not able to flash a scene with this checkbox enabled, also the LED on the BCF2000 instantly goes off after pressing. If I disable the checkbox, I have the toggling-behavior again, but on a button that should work as a flash button.
As I explained before, the BCF2000 doesn't send two events for press and release. It just sends "press", so I believe flashing with the BCF is not even possible, unless you are willing to accept an awkward button LED status.
Basically you would need to press and release a BCF button two times to start/stop flashing, that's why it is awkward.
Actually I was able to get it to work by setting the mode of the buttons on the BCF to "Toggle OFF". This means they act like flash buttons, so send a key press and a key release event. Flashing works fine then. The only problem arising is the missing feedback when using the BCF button as external input for an vc toggle button. This is because the BCF internal turns the LED off on a key release and is not advised to light it up again. The feedback message from QLC+ has no effect since it arrives mostly before releasing the key.
My PR fixes this problem by an additional feedback message when releasing the key.
HaselnuesseTo
Posts: 2
Joined: Sun Dec 04, 2016 5:05 pm
Real Name:

Fix Led won't turn off problem:
Map the same controller button to a dummy button which is linked to a dummy scene in vc. :)
User avatar
GGGss
Posts: 3052
Joined: Mon Sep 12, 2016 7:15 pm
Location: Belgium
Real Name: Fredje Gallon

oke ... and then? Do nothing?
All electric machines work on smoke... when the smoke escapes... they don't work anymore
Post Reply