All Projects → T-vK → Esp32 Ble Mouse

T-vK / Esp32 Ble Mouse

Bluetooth LE Mouse library for the ESP32 (Arduino IDE compatible)

Projects that are alternatives of or similar to Esp32 Ble Mouse

Esp32 Ble Keyboard
Bluetooth LE Keyboard library for the ESP32 (Arduino IDE compatible)
Stars: ✭ 533 (+196.11%)
Mutual labels:  arduino, esp32, ble, bluetooth-le, arduino-library, bluetooth
Nimble Arduino
A fork of the NimBLE library structured for compilation with Ardruino, designed for use with ESP32.
Stars: ✭ 108 (-40%)
Mutual labels:  esp32, ble, bluetooth-le, bluetooth
ESP32BleAdvertise
Simple library for BLE advertise using ESP32 in Arduino
Stars: ✭ 39 (-78.33%)
Mutual labels:  esp32, bluetooth, ble, arduino-library
Irremoteesp8266
Infrared remote library for ESP8266/ESP32: send and receive infrared signals with multiple protocols. Based on: https://github.com/shirriff/Arduino-IRremote/
Stars: ✭ 1,964 (+991.11%)
Mutual labels:  arduino, esp32, arduino-ide, arduino-library
arduino-ble-gadget
Create your own Do-It-Yourself BLE enabled sensor gadget on the ESP32 platform.
Stars: ✭ 31 (-82.78%)
Mutual labels:  esp32, bluetooth, ble, arduino-library
Esp32 Blecollector
ᛡᛒ BLE Scanner + Data persistence on SD Card for M5Stack, Odroid-Go, ESP32-Wrover-Kit and other models
Stars: ✭ 145 (-19.44%)
Mutual labels:  arduino, esp32, ble, bluetooth
Esp32marauder
A suite of WiFi/Bluetooth offensive and defensive tools for the ESP32
Stars: ✭ 233 (+29.44%)
Mutual labels:  arduino, esp32, arduino-ide, bluetooth
Espui
A simple web user interface library for ESP32 and ESP8266
Stars: ✭ 330 (+83.33%)
Mutual labels:  arduino, esp32, arduino-ide, arduino-library
Arduino Applemidi Library
Send and receive MIDI messages over Ethernet (rtpMIDI or AppleMIDI)
Stars: ✭ 177 (-1.67%)
Mutual labels:  arduino, esp32, arduino-ide, arduino-library
Arduinoxinput
XInput library for USB capable Arduino boards
Stars: ✭ 126 (-30%)
Mutual labels:  arduino, arduino-ide, arduino-library
Rf24ble
RF24BLE is the library that makes an nrf24L01+ chip (1$) into a BLE advertising beacon and can be used for LOW payload advertising like sensor data etc.
Stars: ✭ 129 (-28.33%)
Mutual labels:  arduino, ble, bluetooth
Pzem004t
Arduino communication library for Peacefair PZEM-004T Energy monitor
Stars: ✭ 165 (-8.33%)
Mutual labels:  arduino, esp32, arduino-library
Extendable
Blocks Based Bluetooth LE Connectivity framework for iOS/watchOS/tvOS/OSX. Quickly configure centrals & peripherals, perform read/write operations, and respond characteristic updates.
Stars: ✭ 88 (-51.11%)
Mutual labels:  ble, bluetooth-le, bluetooth
Web Bluetooth Terminal
Progressive Web Application for serial communication with your own Bluetooth Low Energy (Smart) devices
Stars: ✭ 130 (-27.78%)
Mutual labels:  arduino, ble, bluetooth
Tft espi
Arduino and PlatformIO IDE compatible TFT library optimised for the STM32, ESP8266 and ESP32 that supports different driver chips
Stars: ✭ 1,215 (+575%)
Mutual labels:  arduino, esp32, arduino-library
Aunit
Unit testing framework for Arduino platforms inspired by ArduinoUnit and Google Test. Used with AUniter or EpoxyDuino for continuous builds.
Stars: ✭ 73 (-59.44%)
Mutual labels:  arduino, esp32, arduino-library
Ble.net
Cross-platform Bluetooth Low Energy (BLE) library for Android, iOS, and UWP
Stars: ✭ 137 (-23.89%)
Mutual labels:  ble, bluetooth-le, bluetooth
Pedalinomini
Same features of Pedalino™ in a compact form.
Stars: ✭ 139 (-22.78%)
Mutual labels:  esp32, ble, bluetooth
Espmqttclient
Wifi and MQTT handling for ESP8266 and ESP32
Stars: ✭ 169 (-6.11%)
Mutual labels:  arduino, esp32, arduino-library
Easyble
Android BLE framework
Stars: ✭ 155 (-13.89%)
Mutual labels:  ble, bluetooth-le, bluetooth

ESP32 BLE Mouse library

This library allows you to make the ESP32 act as a Bluetooth Mouse and control what it does. E.g. move the mouse, scroll, make a click etc.

You might also be interested in:

Features

  • [x] Left click
  • [x] Right click
  • [x] Middle click
  • [x] Back/Forwards click
  • [x] Move mouse pointer left/right
  • [x] Move mouse pointer up/down
  • [x] Scroll up/down
  • [x] Scroll left/right
  • [x] Report optional battery level to host (basically works, but it doesn't show up in Android's status bar)
  • [x] Customize Bluetooth device name/manufacturer
  • [x] Compatible with Android
  • [x] Compatible with Windows
  • [x] Compatible with Linux
  • [x] Compatible with MacOS X (not stable, some people have issues, doesn't work with old devices)
  • [x] Compatible with iOS (not stable, some people have issues, doesn't work with old devices)

Installation

Example

/**
 * This example turns the ESP32 into a Bluetooth LE mouse that scrolls down every 2 seconds.
 */
#include <BleMouse.h>

BleMouse bleMouse;

void setup() {
  Serial.begin(115200);
  Serial.println("Starting BLE work!");
  bleMouse.begin();
}

void loop() {
  if(bleMouse.isConnected()) {
    Serial.println("Scroll Down");
    bleMouse.move(0,0,-1);
  }
  delay(2000);
}

API docs

The BleMouse interface is almost identical to the Mouse Interface, so you can use documentation right here: https://www.arduino.cc/reference/en/language/functions/usb/mouse/

Just remember that you have to use bleMouse instead of just Mouse and you need these two lines at the top of your script:

#include <BleMouse.h>
BleMouse bleMouse;

This library supports a few additional features that the Mouse library does not support at the time of writing:

  • Scrolling left/right E.g.: bleMouse.move(0,0,0,1) (Scroll left) and bleMouse.move(0,0,0,-1) (Scroll right)
  • Using the back and forward buttons E.g.: bleMouse.click(MOUSE_BACK) and bleMouse.click(MOUSE_FORWARD)

There is also Bluetooth specific information that you can use (optional):

Instead of BleMouse bleMouse; you can do BleMouse bleMouse("Bluetooth Device Name", "Bluetooth Device Manufacturer", 100);. The third parameter is the initial battery level of your device. To adjust the battery level later on you can simply call e.g. bleMouse.setBatteryLevel(50) (set battery level to 50%). By default the battery level will be set to 100%, the device name will be ESP32 Bluetooth Mouse and the manufacturer will be Espressif.

Credits

Credits to chegewara as this library is based on this piece of code that he provided.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].