SoftKVM-BLE is an application that enables users to control another device using keyboard and mouse inputs via Bluetooth. This app is designed to work with an ESP32 device that emulates a Bluetooth HID keyboard and mouse. ESP32 Part
- Select and connect to available serial ports
- Send keyboard and mouse events to the connected device
- Toggle between Ctrl/Meta keys
- Invert scroll direction
- Auto-detect and connect to new serial devices when plugged in
- Node.js
- Electron
- ESP32 device configured as a Bluetooth HID keyboard and mouse. Refer to this repository for the ESP32 setup.
- Clone the repository:
git clone https://github.com/MotorBottle/SoftKVM-BLE.git
- Navigate to the project directory:
cd SoftKVM-BLE
- Install dependencies:
npm install
- Start the application:
npm start
- Use the interface to select a serial port and connect.
- Use the provided buttons to send keyboard and mouse events to the connected device.
- Serial Port Select: Dropdown to select and connect to available serial ports.
- Ctrl/Meta Toggle: Checkbox to toggle between Ctrl and Meta keys.
- Invert Scroll Toggle: Checkbox to invert the scroll direction.
- Full Screen Button: Button to enter/exit full screen mode.
- Capture Button: Button to capture input for sending to the connected device.
- Hotkey Interface: Interface to select and send key combinations.
- Mouse Events: Mouse events are captured and sent via Bluetooth to the connected device.
- Keyboard Events: Keyboard events are captured and sent via Bluetooth to the connected device.
The application auto-detects and connects to new serial devices when plugged in, and refreshes the list of available ports every three seconds when the pointer lock is not active.
This project is licensed under the MIT License.
Motor Cheng
For the ESP32 setup, please refer to this repository.