Persistent sorting of network interfaces

Request a feature that you would like to see in QLC+.
Explain in details why you would need it and which is your usage case.
Post Reply
ambra
Posts: 7
Joined: Fri Oct 06, 2017 1:27 pm
Real Name: Branimir Amidžić

I'm having a lot of troubles with the sorting of network interfaces.

Since there's no guarantee whatsoever on ordering of network interfaces returned by QNetworkInterface::allInterfaces() which QLC+ relies on, I'm having a lot of troubles with many installations.

I'm using Raspberry Pi 3 with QLC+ software. I have an ArtNet controller on Ethernet interface (2.3.4.5) and I have WiFi hotspot on wlan0 interface (192.168.42.1), because I want to allow the customer to change scenes by connecting to WiFi hotspot.

After reboot, there's no guarantee which network interface will be selected by QLC+ - "2.3.4.5" or "192.168.42.1".

The QXW file specifies only:

Code: Select all

<Output Plugin="ArtNet" Line="1"/>
but this "line 1" can be any interface (eth0 or wlan0) depending on what Qt framework returns.

Please implement sorting of network interfaces, so that "line 1" is always the same. I prefer using IP address+subnet mask instead of line number. In rare cases when QLC+ can't find the interface with specified IP address/subnet it should fall back to (e.g.) localhost or first interface after that.

Minimal change to the format of QXW file would be adding a "hint" property with selected IP address:

Code: Select all

<Output Plugin="ArtNet" Line="1" IP="2.3.4.5"/>
In this case, new QXW file format (I guess) would work with earlier QLC+ versions.
User avatar
sandinak
Posts: 191
Joined: Mon Apr 03, 2017 5:40 pm
Location: Yorktown, VA
Real Name: Branson Matheson
Contact:

+1 on this .. however .. I think it'd be a complex issue. For instance .. I move a show file between several machines .. Raspi, Mac, Linux .. and now helping the school on Windows. All of them have different interface counts .. and different IP's. The biggest issue I have is when the count doesn't match or addressing conflicts (ArtNet Spams the school wifi ... ).

IMHO .. it'd be good to couple the I/O configuration to the instance of QLC+ much like fixtures are and require the universes to be consistent on each deployment. For instance .. on the mac Universe 1 might use ArtNet on en1 .. but on the raspi .. ArtNET on eth0 .. Windows USB-DMX.. but in both cases .. the local software config has them all correct.

EG .. the I/O config should be specific to the deployment and not travel with the showfile. The showfile should be consistent in which Universes it uses for what .. but the mapping of that Universe should be defined by the hosting system.
Post Reply