diff options
| author | krolyxon <me@krolyxon.com> | 2026-05-05 13:10:21 +0530 |
|---|---|---|
| committer | krolyxon <me@krolyxon.com> | 2026-05-05 13:10:21 +0530 |
| commit | a97b2248711c7beb50fa5ebe961539c7c77e7567 (patch) | |
| tree | 3532cdc3afd0cc241567497939a77765c76367c4 /firmware/blemouse.cpp | |
| parent | 428605c762019dba3c05f5e33bad106220132c46 (diff) | |
remove stubs, add badUSB attacks, add BleMouse library files
Diffstat (limited to 'firmware/blemouse.cpp')
| -rw-r--r-- | firmware/blemouse.cpp | 38 |
1 files changed, 22 insertions, 16 deletions
diff --git a/firmware/blemouse.cpp b/firmware/blemouse.cpp index e181a86..8e666ec 100644 --- a/firmware/blemouse.cpp +++ b/firmware/blemouse.cpp @@ -1,29 +1,29 @@ #include <Arduino.h> #include <BleMouse.h> +#include "badusb.h" #include "config.h" #include "buttons.h" #include "display.h" // ===== BLE MOUSE ===== -BleMouse bleMouse("Orion-RF", "Orion-RF", 100); +// BleMouse bleMouse("Orion-RF", "Orion-RF", 100); +extern BleMouse bleMouse; // ===== MAIN ===== void ble_mouse_run() { - bleMouse.begin(); - - // simple screen u8g2.clearBuffer(); u8g2.setFont(u8g2_font_6x10_tr); u8g2.drawStr(10, 25, "BLE Mouse"); u8g2.drawStr(10, 45, "Connecting..."); u8g2.sendBuffer(); - delay(1000); + delay(800); while (1) { + // 🔥 EXIT FIRST (clean) if (btnBack()) break; bool connected = bleMouse.isConnected(); @@ -33,19 +33,22 @@ void ble_mouse_run() if (connected) { - if (!digitalRead(BTN_UP)) dy = -8; - if (!digitalRead(BTN_DOWN)) dy = 8; - if (!digitalRead(BTN_LEFT)) dx = -8; - if (!digitalRead(BTN_RIGHT)) dx = 8; + if (!digitalRead(BTN_UP)) dy = -6; + if (!digitalRead(BTN_DOWN)) dy = 6; + if (!digitalRead(BTN_LEFT)) dx = -6; + if (!digitalRead(BTN_RIGHT)) dx = 6; - if (dx != 0 || dy != 0) + if (dx || dy) bleMouse.move(dx, dy); - if (!digitalRead(BTN_SELECT)) + // ✅ single click (not spam) + static bool lastSelect = false; + bool currentSelect = !digitalRead(BTN_SELECT); + + if (currentSelect && !lastSelect) bleMouse.click(MOUSE_LEFT); - if (!digitalRead(BTN_BACK)) - bleMouse.click(MOUSE_RIGHT); + lastSelect = currentSelect; } // ===== UI ===== @@ -55,14 +58,17 @@ void ble_mouse_run() u8g2.drawStr(10, 20, "BLE Mouse"); if (connected) - u8g2.drawStr(10, 35, "Status: Connected"); + u8g2.drawStr(10, 35, "Connected"); else - u8g2.drawStr(10, 35, "Status: Waiting"); + u8g2.drawStr(10, 35, "Waiting"); u8g2.drawStr(10, 55, "BACK = Exit"); u8g2.sendBuffer(); - delay(30); + delay(10); // important for BLE stability } } + + + |
