mixxxdj / mixxx

Mixxx is Free DJ software that gives you everything you need to perform live mixes.
http://mixxx.org
Other
4.25k stars 1.24k forks source link

Controller stops working when using two controllers simultaneously #8234

Open mixxxbot opened 1 year ago

mixxxbot commented 1 year ago

Reported by: joan-ardiaca Date: 2015-09-22T23:00:16Z Status: New Importance: Undecided Launchpad Issue: lp1498688 Tags: controllers


I am using under Arch Linux the latest 1.12 branch and two controllers, a Pioneer DDJ-SB (MIDI) and an Hercules DJ Control MP3 LE.

When using the controllers separately things work fine, but when using both simultaneously the DDJ-SB stops working after some random amount of time (usually a few minutes). After that the controller input stops working, although the LEDs keep reacting to events in Mixxx. The Hercules continues working fine. This happens even if the controllers are not being used and no track is playing. No error message whatsoever appears in the log when this happens, but the DDJ-SB's log messages stop being shown. Disabling and reenabling the controller makes it work again (for some minutes).

mixxxbot commented 1 year ago

Commented by: Be-ing Date: 2015-09-24T23:14:35Z


Is it always the DDJ-SB that stops working or is it sometimes the DJ Control MP3 LE?

mixxxbot commented 1 year ago

Commented by: joan-ardiaca Date: 2015-09-25T13:59:05Z


It is always the DDJ-SB.

I have been investigating a bit and found that this code in portmidicontroller.cpp is always getting into the conditional branch once the cotroller stops working:

    PmError gotEvents = Pm_Poll(m_pInputStream);
    if (gotEvents == pmNoError) {
        return false;
    }

In case it helps, I'm using libusb 1.0.19-1 and portmidi 217-5.