Add PSU voltage sensors with 220V range highlighting
This commit is contained in:
@@ -662,6 +662,11 @@ code {
|
||||
border-left-color: #f39c12;
|
||||
}
|
||||
|
||||
.sensor-card.voltage-out-of-range {
|
||||
border-left-color: #e74c3c;
|
||||
background: #fff5f5;
|
||||
}
|
||||
|
||||
.sensor-card.ns {
|
||||
border-left-color: #95a5a6;
|
||||
opacity: 0.6;
|
||||
|
||||
@@ -1100,8 +1100,10 @@ function renderSensors(sensors) {
|
||||
items.forEach(s => {
|
||||
let valueStr = '';
|
||||
let statusClass = s.status === 'ok' ? 'ok' : (s.status === 'ns' ? 'ns' : 'warn');
|
||||
const sensorName = String(s.name || '').toLowerCase();
|
||||
const isPSUVoltage = type === 'voltage' && sensorName.includes('psu') && sensorName.includes('voltage');
|
||||
|
||||
if (s.value) {
|
||||
if (Number.isFinite(s.value)) {
|
||||
valueStr = `${s.value} ${s.unit}`;
|
||||
} else if (s.raw_value) {
|
||||
valueStr = s.raw_value;
|
||||
@@ -1109,7 +1111,13 @@ function renderSensors(sensors) {
|
||||
valueStr = s.status;
|
||||
}
|
||||
|
||||
html += `<div class="sensor-card ${statusClass}">
|
||||
// Highlight PSU mains voltage deviations from nominal 220V (±10%).
|
||||
let extraClass = '';
|
||||
if (isPSUVoltage && Number.isFinite(s.value) && (s.value < 198 || s.value > 242)) {
|
||||
extraClass = ' voltage-out-of-range';
|
||||
}
|
||||
|
||||
html += `<div class="sensor-card ${statusClass}${extraClass}">
|
||||
<span class="sensor-name">${escapeHtml(s.name)}</span>
|
||||
<span class="sensor-value">${escapeHtml(valueStr)}</span>
|
||||
</div>`;
|
||||
|
||||
Reference in New Issue
Block a user