diff --git a/html/saraR4.html b/html/saraR4.html index ea8b29d..119e190 100755 --- a/html/saraR4.html +++ b/html/saraR4.html @@ -1972,11 +1972,11 @@ async function selfTestSequence() { } } else if (sensor.type === 'noise') { - // Noise sensor test + // NSRT MK4 noise sensor test (returns JSON) const noiseResult = await new Promise((resolve, reject) => { $.ajax({ url: 'launcher.php?type=noise', - dataType: 'text', + dataType: 'json', method: 'GET', timeout: 15000, success: function(data) { resolve(data); }, @@ -1984,18 +1984,17 @@ async function selfTestSequence() { }); }); - selfTestReport.rawResponses['Noise Sensor'] = noiseResult; - addSelfTestLog(`Noise response: ${noiseResult.trim()}`); + selfTestReport.rawResponses['Noise Sensor'] = JSON.stringify(noiseResult); + addSelfTestLog(`Noise response: ${JSON.stringify(noiseResult)}`); - const noiseValue = parseFloat(noiseResult.trim()); - if (!isNaN(noiseValue) && noiseValue > 0) { - updateTestStatus(sensor.id, 'Passed', `${noiseValue} dB`, 'bg-success'); - testsPassed++; - } else if (noiseResult.trim() !== '') { - updateTestStatus(sensor.id, 'Warning', `Unexpected value: ${noiseResult.trim()}`, 'bg-warning'); + if (noiseResult.error) { + updateTestStatus(sensor.id, 'Failed', noiseResult.error, 'bg-danger'); testsFailed++; + } else if (noiseResult.LEQ > 0 && noiseResult.dBA > 0) { + updateTestStatus(sensor.id, 'Passed', `LEQ: ${noiseResult.LEQ} dB | dB(A): ${noiseResult.dBA}`, 'bg-success'); + testsPassed++; } else { - updateTestStatus(sensor.id, 'Failed', 'No data received', 'bg-danger'); + updateTestStatus(sensor.id, 'Warning', `Unexpected values: LEQ=${noiseResult.LEQ}, dBA=${noiseResult.dBA}`, 'bg-warning'); testsFailed++; }