Improving devices order at startup

A place where updates of QLC+ activities and technical articles are posted as if it was a blog
Post Reply
User avatar
mcallegari
Posts: 4482
Joined: Sun Apr 12, 2015 9:09 am
Location: Italy
Real Name: Massimo Callegari
Contact:

Using two or more USB interfaces of the same type would not guarantee the same order at the next startup of QLC+.
I think this has been true also for USB MIDI controllers on individual universes or USB network interfaces.
This type of issue has been reported several times over the years in these forums.

The reason is that QLC+ saved indices of devices without actually considering the uniqueness of them.

So a few days ago I finally found some time to limit this behaviour and make QLC+ behave consistently over startups.
Where possible, I added a serial number to the device name, like this: USB-RS485 Cable (S/N: ABCD1234)
Network interface names, instead, are unique by definition.
MIDI controllers and HID devices, unfortunately, don't have any unique identifier, so two controllers with the same name will still have an issue.

These unique names will be saved into your project, so at the next QLC+ startup, a match by name will be looked up, instead of a dumb index lookup.
If no name match is found (e.g. device disconnected or replaced), the previous method by index is used, which in some cases might be useful.

Test versions for all OSes are available, so please help test this change and let me know if it helps in those cases reported in the past (and obviously in "normal" cases)

Thanks everyone!

P.S. I tested a few devices :D
test desk.jpg
giacomo
Posts: 518
Joined: Tue May 26, 2015 6:17 pm
Real Name:

thanks Massimo,
the linux folder is empty, does it mean that we should compile it or is it an oversight?
User avatar
mcallegari
Posts: 4482
Joined: Sun Apr 12, 2015 9:09 am
Location: Italy
Real Name: Massimo Callegari
Contact:

giacomo wrote: Wed Sep 01, 2021 1:30 pm the linux folder is empty, does it mean that we should compile it or is it an oversight?
Either build from sources or download an OBS build
Post Reply