From 7c8fef7e31607af5817b07ccfebc2da9236f32c8 Mon Sep 17 00:00:00 2001 From: Nathan Kunicki Date: Sat, 30 Jun 2018 20:29:26 +0100 Subject: [PATCH] Vernie remote example --- examples/vernie_remote.js | 50 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 50 insertions(+) create mode 100644 examples/vernie_remote.js diff --git a/examples/vernie_remote.js b/examples/vernie_remote.js new file mode 100644 index 0000000..12acabd --- /dev/null +++ b/examples/vernie_remote.js @@ -0,0 +1,50 @@ +const LPF2 = require(".."); + +const lpf2 = new LPF2.LPF2(); +lpf2.scan(); // Start scanning for Vernie + +console.log("Looking for Vernie (Please turn on the Hub now)..."); + +let vernie = null; +let remote = null; + +lpf2.on("discover", async (hub) => { // Wait to discover Vernie + + if (hub.type === LPF2.Consts.Hubs.BOOST_MOVE_HUB) { + vernie = hub; + await vernie.connect(); + console.log("Connected to Vernie!"); + + + } else if (hub.type === LPF2.Consts.Hubs.POWERED_UP_REMOTE) { + remote = hub; + + remote.on("button", (button, state) => { + switch (state) { + case LPF2.Consts.ButtonStates.UP: + { + vernie && vernie.setMotorSpeed(button === "LEFT" ? "A" : "B", 50); + break; + } + case LPF2.Consts.ButtonStates.DOWN: + { + vernie && vernie.setMotorSpeed(button === "LEFT" ? "A" : "B", -50); + break; + } + case LPF2.Consts.ButtonStates.RELEASED: + { + vernie && vernie.setMotorSpeed(button === "LEFT" ? "A" : "B", 0); + break; + } + } + }) + + await remote.connect(); + console.log("Connected to Powered Up Remote!"); + } + + if (vernie && remote) { + console.log("You're now ready to go!"); + } + +}); \ No newline at end of file