This commit is contained in:
j3d1 2023-01-19 18:11:13 +01:00
parent 9de089083c
commit 1acaf657f0
6 changed files with 160 additions and 50 deletions

View file

@ -176,7 +176,11 @@
</div>
<div class="row">
<span>Firmware Version</span>
<span>N/A</span>
<span><span class="postfill_firmware_version">N/A</span></span>
</div>
<div class="row">
<span>Peripheral Version</span>
<span><span class="postfill_peripheral_version">N/A</span></span>
</div>
<div class="row">
<span>Flash ID</span>
@ -261,19 +265,19 @@
<label>
<input type="checkbox" name="onoffswitch" id="led-switch" onclick="gpio(this.checked)">
<span class="toggle button">toggle signal led</span>
</label>
</label><br>
<label>
<span>toggle signal led</span>
<input type="color" oninput="colorTop(this.value)">
</label>
<span>change top color</span>
<input type="color" oninput="colorTop(this.value)" class="postfill_top_color">
</label><br>
<label>
<span>toggle signal led</span>
<input type="color" oninput="colorBottom(this.value)">
</label>
<span>change bottom color</span>
<input type="color" oninput="colorBottom(this.value)" class="postfill_bottom_color">
</label><br>
<label>
<span>toggle signal led</span>
<input type="range" min="0" max="4096" value="0" class="slider"
oninput="lightSlider(this.value)">
<span>set white brightness</span>
<input type="range" min="0" max="4095" value="0" onchange="lightSlider(this.value)"
class="slider postfill_white_brightness">
</label>
</footer>
@ -358,12 +362,12 @@
function onMessage(evt) {
retries = 0;
if (typeof evt.data == 'string') {
var cmd = "JSON";
var data = JSON.parse(evt.data);
console.log("deprecated json:", data);
} else {
var data = {};
var dv = new DataView(evt.data);
let cmds = ["NONE", "RESTART", "CLEAR_CONFIG", "FIRMWARE_FRAME", "FIRMWARE_CHECK", "VOLTAGE_INFO", "SYSTEM_INFO"];
let cmds = ["NONE", "RESTART", "CLEAR_CONFIG", "FIRMWARE_FRAME", "FIRMWARE_CHECK", "VOLTAGE_INFO", "SYSTEM_INFO", "LIGHTS"];
//console.log("[0]", dv.getUint8(0));
let fst = dv.getUint8(0);
var cmd;
@ -381,6 +385,12 @@
data.chipid = Number(htonl(dv.getUint32(13))).toString(16);
data.flashid = Number(htonl(dv.getUint32(17))).toString(16);
data.flashsize = htonl(dv.getUint32(21));
data.firmware_version = htons(dv.getUint16(25));
data.peripheral_version = htons(dv.getUint16(27));
} else if (cmd === "LIGHTS") {
data.top_color = htonl(dv.getUint32(1));
data.bottom_color = htonl(dv.getUint32(5));
data.white_brightness = htons(dv.getInt16(9));
} else if (cmd === "VOLTAGE_INFO") {
console.log(cmd, buf2hex(evt.data));
} else if (cmd === "G") {
@ -404,16 +414,23 @@
} else {
console.log("[0]", dv.getUint8(0));
console.log('unknown command', cmd, val);
console.log(cmd);
console.log(fst, cmd);
}
}
console.log(cmd, data);
for (const [key, value] of Object.entries(data)) {
const elements = document.querySelectorAll(".postfill_" + key);
if (!elements.length)
unused_values[key] = value;
else
for (i = 0; i < elements.length; ++i) {
elements[i].innerHTML = value;
if (elements[i].type === "color") {
elements[i].value = "#" + (value).toString(16).padStart(6, '0');
} else if (elements[i].type === "range") {
elements[i].value = value;
} else {
elements[i].innerHTML = value;
}
}
}
document.getElementById("unused_values").innerHTML = JSON.stringify(unused_values);