aboutsummaryrefslogtreecommitdiff
path: root/script.js
diff options
context:
space:
mode:
authorJakob Stendahl <jakobste@uio.no>2021-01-11 21:17:44 +0100
committerJakob Stendahl <jakobste@uio.no>2021-01-11 21:17:44 +0100
commit5503baa65102b47d8f2b07fc69b0ebad9507613c (patch)
treee5b1d6840a5b0a32130596821f15c5e5c5a66bd9 /script.js
parentcee3d11da77a1754768fcbd58cca2b61874bcef8 (diff)
downloadhoverbit-ble-5503baa65102b47d8f2b07fc69b0ebad9507613c.tar.gz
hoverbit-ble-5503baa65102b47d8f2b07fc69b0ebad9507613c.zip
:sparkles: Add ping indicator and send all parameters
Diffstat (limited to 'script.js')
-rw-r--r--script.js38
1 files changed, 27 insertions, 11 deletions
diff --git a/script.js b/script.js
index 5e07229..dc61b25 100644
--- a/script.js
+++ b/script.js
@@ -108,12 +108,12 @@ function on_pointer_hold_rudder() {
}
function on_mouse_move_rudder(event) {
- let rudder = ((event.clientX * (90 - (-90))) / (rudderElement.clientWidth)) + (-90);
+ let rudder = Math.round(((event.clientX * (90 - (-90))) / (rudderElement.clientWidth)) + (-90));
hoverControl.setRudder(rudder);
}
function on_touch_move_rudder(touch) {
- let rudder = ((touch.touches[0].clientX * (90 - (-90))) / (rudderElement.clientWidth)) + (-90);
+ let rudder = Math.round(((touch.touches[0].clientX * (90 - (-90))) / (rudderElement.clientWidth)) + (-90));
hoverControl.setRudder(rudder);
}
@@ -213,15 +213,31 @@ document.getElementById("btn_connect").onclick = async () => {
}
if (services.uartService) {
- services.uartService.addEventListener("receiveText", eventHandler);
-
- document.getElementById("btn_arm").onclick = async() => {
- await services.uartService.sendText("A1:");
- }
-
- document.getElementById("btn_disarm").onclick = async() => {
- await services.uartService.sendText("A0:");
- }
+ services.uartService.addEventListener("receiveText", (event) => {
+ var elm = document.querySelector(".ping i");
+ var newone = elm.cloneNode(true);
+ elm.parentNode.replaceChild(newone, elm);
+
+ document.querySelector(".battery-status").innerHTML = event.detail + "mV";
+ // console.log(event);
+ });
+
+ let sendCommands = setInterval(async() => {
+ if (device) {
+ if (device.gatt.connected) {
+ let command =
+ "T" + hoverControl.getThrottle() +
+ "R" + hoverControl.getRudder() +
+ "A" + (hoverControl.getArm() ? "1" : "0") +
+ "S0" + // Sending this one because my decoding-code is a bit buggy currently.
+ ":";
+ console.log(command);
+ await services.uartService.sendText(command);
+ } else {
+ clearInterval(sendCommands)
+ }
+ }
+ }, 50);
}
}