add missing info to DeviceInfo in meshctrl.js #7724

Signed-off-by: si458 <simonsmith5521@gmail.com>

si458 committed Mar 29, 2026 at 18:26 UTC 7631083e5a440a1b9f66fb697f9d7afea31e6777
1 file changed +27 -2
meshctrl.js
+27 -2
@@ -3079,6 +3079,8 @@ function displayDeviceInfo(sysinfo, lastconnect, network, nodes) {
3079 // BIOS
3080 if (ident.bios_vendor) { output["Vendor"] = ident.bios_vendor; outputCount++; }
3081 if (ident.bios_version) { output["Version"] = ident.bios_version; outputCount++; }
3082 + if (ident.bios_serial) { output["Serial"] = ident.bios_serial; outputCount++; }
3083 + if (ident.bios_mode) { output["Mode"] = ident.bios_mode; outputCount++; }
3084 if (outputCount > 0) { info["BIOS"] = output; }
3085 output = {}, outputCount = 0;
3086
@@ -3091,6 +3093,28 @@ function displayDeviceInfo(sysinfo, lastconnect, network, nodes) {
3093 if (ident.cpu_name) { output["CPU"] = ident.cpu_name; }
3094 if (ident.gpu_name) { for (var i in ident.gpu_name) { output["GPU" + (parseInt(i) + 1)] = ident.gpu_name[i]; } }
3095 if (outputCount > 0) { info["Motherboard"] = output; }
3096 + output = {}, outputCount = 0;
3097 +
3098 + // System
3099 + if (ident.chassis_manufacturer) { output["Manufacturer"] = ident.chassis_manufacturer; outputCount++; }
3100 + if (ident.product_name) { output["Product Name"] = ident.product_name; outputCount++; }
3101 + if (ident.chassis_serial) { output["Serial"] = ident.chassis_serial; outputCount++; }
3102 + if (ident.chassis_assettag) { output["Asset Tag"] = ident.chassis_assettag; outputCount++; }
3103 + if (outputCount > 0) { info["System"] = output; }
3104 + output = {}, outputCount = 0;
3105 + }
3106 +
3107 + // TPM
3108 + if (hardware.tpm) {
3109 + var output = {}, outputCount = 0, tpm = hardware.tpm;
3110 + if (tpm.SpecVersion) { output["SpecVersion"] = parseFloat(tpm.SpecVersion).toFixed(1); outputCount++; }
3111 + if (tpm.ManufacturerId) { output["Identifier"] = tpm.ManufacturerId; outputCount++; }
3112 + if (tpm.ManufacturerVersion) { output["Version"] = tpm.ManufacturerVersion; outputCount++; }
3113 + if (tpm.IsActivated != null) { output["Activated"] = (tpm.IsActivated ? "Yes" : "No"); outputCount++; }
3114 + if (tpm.IsEnabled != null) { output["Enabled"] = (tpm.IsEnabled ? "Yes" : "No"); outputCount++; }
3115 + if (tpm.IsOwned != null) { output["Owned"] = (tpm.IsOwned ? "Yes" : "No"); outputCount++; }
3116 + if (outputCount > 0) { info["TPM"] = output; }
3117 + output = {}, outputCount = 0;
3118 }
3119
3120 // Memory
@@ -3100,9 +3124,10 @@ function displayDeviceInfo(sysinfo, lastconnect, network, nodes) {
3124 hardware.windows.memory.sort(function (a, b) { if (a.BankLabel > b.BankLabel) return 1; if (a.BankLabel < b.BankLabel) return -1; return 0; });
3125 for (var i in hardware.windows.memory) {
3126 var m = hardware.windows.memory[i], moutput = {}, moutputCount = 0;
3103 - if (m.Capacity) { moutput["Capacity/Speed"] = (m.Capacity / 1024 / 1024) + " Mb, " + m.Speed + " Mhz"; moutputCount++; }
3127 + if (m.Capacity && m.Speed) { moutput["Capacity/Speed"] = (m.Capacity / 1024 / 1024) + " Mb, " + m.Speed + " Mhz"; moutputCount++; }
3128 + else if (m.Capacity) { moutput["Capacity"] = (m.Capacity / 1024 / 1024) + " Mb"; moutputCount++; }
3129 if (m.PartNumber) { moutput["Part Number"] = ((m.Manufacturer && m.Manufacturer != 'Undefined') ? (m.Manufacturer + ', ') : '') + m.PartNumber; moutputCount++; }
3105 - if (moutputCount > 0) { minfo[m.BankLabel] = moutput; info["Memory"] = minfo; }
3130 + if (moutputCount > 0) { minfo[m.BankLabel ? m.BankLabel : (m.DeviceLocator ? m.DeviceLocator : 'Unknown')] = moutput; info["Memory"] = minfo; }
3131 }
3132 }
3133 }