mirror of
				https://github.com/hyperion-project/hyperion.ng.git
				synced 2025-03-01 10:33:28 +00:00 
			
		
		
		
	Refactor device identifiers
This commit is contained in:
		@@ -1119,6 +1119,9 @@ $(document).ready(function () {
 | 
			
		||||
        case "karate":
 | 
			
		||||
        case "sedu":
 | 
			
		||||
        case "tpm2":
 | 
			
		||||
        case "ws2812_ftdi":
 | 
			
		||||
        case "sk6812_ftdi":
 | 
			
		||||
        case "apa102_ftdi":
 | 
			
		||||
          if (storedAccess === 'expert') {
 | 
			
		||||
            filter.discoverAll = true;
 | 
			
		||||
          }
 | 
			
		||||
@@ -1901,7 +1904,7 @@ var updateOutputSelectList = function (ledType, discoveryInfo) {
 | 
			
		||||
 | 
			
		||||
  if ($.inArray(ledType, devNET) != -1) {
 | 
			
		||||
    ledTypeGroup = "devNET";
 | 
			
		||||
  } else if ($.inArray(ledType, devSerial) != -1) {
 | 
			
		||||
  } else if ($.inArray(ledType, devSerial) != -1 || ledType.endsWith("_ftdi")) {
 | 
			
		||||
    ledTypeGroup = "devSerial";
 | 
			
		||||
  } else if ($.inArray(ledType, devRPiSPI) != -1) {
 | 
			
		||||
    ledTypeGroup = "devRPiSPI";
 | 
			
		||||
@@ -1998,6 +2001,9 @@ var updateOutputSelectList = function (ledType, discoveryInfo) {
 | 
			
		||||
          case "karate":
 | 
			
		||||
          case "sedu":
 | 
			
		||||
          case "tpm2":
 | 
			
		||||
          case "ws2812_ftdi":
 | 
			
		||||
          case "sk6812_ftdi":
 | 
			
		||||
          case "apa102_ftdi":
 | 
			
		||||
            for (const device of discoveryInfo.devices) {
 | 
			
		||||
              if (device.udev) {
 | 
			
		||||
                enumVals.push(device.systemLocation);
 | 
			
		||||
@@ -2093,7 +2099,6 @@ var updateOutputSelectList = function (ledType, discoveryInfo) {
 | 
			
		||||
async function discover_device(ledType, params) {
 | 
			
		||||
 | 
			
		||||
  const result = await requestLedDeviceDiscovery(ledType, params);
 | 
			
		||||
 | 
			
		||||
  var discoveryResult = {};
 | 
			
		||||
  if (result) {
 | 
			
		||||
    if (result.error) {
 | 
			
		||||
 
 | 
			
		||||
@@ -181,14 +181,24 @@ QJsonObject ProviderFtdi::discover(const QJsonObject & /*params*/)
 | 
			
		||||
 | 
			
		||||
			libusb_device_descriptor desc;
 | 
			
		||||
			libusb_get_device_descriptor(curdev->dev, &desc);
 | 
			
		||||
			QString value = QString("i:0x%1:0x%2")
 | 
			
		||||
								.arg(desc.idVendor, 4, 16, QChar{'0'})
 | 
			
		||||
								.arg(desc.idProduct, 4, 16, QChar{'0'});
 | 
			
		||||
            uint8_t bus_number = libusb_get_bus_number(curdev->dev);
 | 
			
		||||
            uint8_t device_address = libusb_get_device_address(curdev->dev);
 | 
			
		||||
 | 
			
		||||
            QString portName = QString("d:%1/%2")
 | 
			
		||||
                    .arg(bus_number, 3, 10, QChar{'0'})
 | 
			
		||||
                    .arg(device_address, 3, 10, QChar{'0'});
 | 
			
		||||
 | 
			
		||||
            QString vendorIdentifier =  QString("0x%1").arg(desc.idVendor, 4, 16, QChar{'0'});
 | 
			
		||||
            QString productIdentifier = QString("0x%1").arg(desc.idProduct, 4, 16, QChar{'0'});
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
			QString name = QString("%1 (%2)").arg(manufacturer, description);
 | 
			
		||||
			deviceList.push_back(QJsonObject{
 | 
			
		||||
				{"value", value},
 | 
			
		||||
				{"name", name}});
 | 
			
		||||
				{"portName", portName},
 | 
			
		||||
				{"vendorIdentifier", vendorIdentifier},
 | 
			
		||||
				{"productIdentifier", productIdentifier},
 | 
			
		||||
				{"manufacturer", manufacturer},
 | 
			
		||||
				{"description", description},
 | 
			
		||||
            });
 | 
			
		||||
 | 
			
		||||
			curdev = curdev->next;
 | 
			
		||||
		}
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user