grandboum / bluetooth-keyboard-emulator

Simple proof-of-concept software tool for emulating Bluetooth BR/EDR (a.k.a. Bluetooth Classic) keyboards

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Bluetooth Keyboard Emulator

The SySS Bluetooth Keyboard Emulator is a simple proof-of-concept software tool for emulating Bluetooth BR/EDR (a.k.a. Bluetooth Classic) keyboards based on the BlueZ 5 Bluetooth Keyboard Emulator for Raspberry Pi (YAPTB Bluetooth keyboard emulator) by Thanh Le.

It was developed for modern Linux operating systems like Arch Linux with a modern BlueZ 5 Bluetooth protocol stack and utilities.

So far, the keyboard emulator has only been tested on Arch Linux systems.

Caution: The software tool is still work in progress.

Requirements

Setup

For setting up the Bluetooth Keyboard Emulator simply run the provided shell script setup.sh with root privileges.

sudo ./setup.sh

Or manually copy the file dbus/de.syss.btkbdservice.conf to /etc/dbus-1/system.d/.

sudo cp dbus/de.syss.btkbdservice.conf /etc/dbus-1/system.d/

Configuration

Rename or copy the provided sample configuration file keyboard.conf.example to keyboard.conf and edit it with your favorite text editor.

Usage

In order to start the Bluetooth Keyboard Emulator, run the provided shell script start.sh in a terminal with root privileges.

sudo ./start.sh

Afterwards, you can attach to the created tmux session named kbdemu.

sudo tmux attach -t kbdemu

Caution: The client component of the running Bluetooth Keyboard Emulator will register and process all keypresses!

For stopping the keyboard emulation, you can simply kill the tmux session.

sudo tmux kill-session -t kbdemu

The following screenshot illustrates the keyboard emulator usage.

Screenshot of a Bluetooth Keyboard Emulator tmux session

Disclaimer

Use at your own risk. Do not use without full consent of everyone involved. For educational purposes only.

About

Simple proof-of-concept software tool for emulating Bluetooth BR/EDR (a.k.a. Bluetooth Classic) keyboards

License:MIT License


Languages

Language:Python 97.4%Language:Shell 2.6%