Utility to proxy keyboard events via BT -> FlipperZero -> USB
Project description
FlipperZero USB Keyboard BT Proxy
– Why???
– IDK.
But in reality, I had a mini-PC to configure, a laptop and no external keyboard.
Table of Contents
About
Laptop –> Bluetooth (BLE) –> FlipperZero –> USB (HID) –> Device.
Stability/usability is questionable at this moment.
GUI
Requires python >= 3.10.
Should work on MacOS (tested), Linux (not tested), Windows (not tested).
PySide6 used for bluetooth client. It's fat and an overkill, but my experience with Bleak was unsatisfactory.
PySDL2 is used to capture keyboard events. They map almost as is to HID.
FAP
This repository helped to figure stuff out.
Installation
GUI
pip install f0-usb-keyboard-bt-proxy
FAP
Build from source:
git clone https://github.com/tzoiker/flipperzero-usb-keyboard-bt-proxy.git
cd flipperzero-usb-keyboard-bt-proxy/fap
pip install ufbt
Optionally, select desirable firmware version, e.g.,
ufbt update -b 1.0.1
and, then, after connecting F0,
ufbt launch
Otherwise,
- download .fap file from the releases (may not be compatible with your version of firmware);
- place it to the SD-card under apps/Bluetooth.
Usage
- Connect your F0 to the device you need a keyboard for.
- Open the
USB Keyboard BT Proxyapplication on F0. - Press Start. It will show BT device name, e.g.,
UsbKbBtP <F0 name>. - Enable bluetooth on your computer.
- Run
f0-usb-keyboard-bt-proxy --device-bt-name="UsbKbBtP <F0 name>". - Now you can type in the opened window, and it will, hopefully, work.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file f0_usb_keyboard_bt_proxy-0.0.1a2.tar.gz.
File metadata
- Download URL: f0_usb_keyboard_bt_proxy-0.0.1a2.tar.gz
- Upload date:
- Size: 15.2 MB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.12.8
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4f2c675f6c31a3d9e48c3b55c7936436142133088cf62babd0805de947aa5b9e
|
|
| MD5 |
d668cde787d60dc1814488dbc08fb39e
|
|
| BLAKE2b-256 |
77de2ac54d229223ad2ebd75d13ca54d8967660824a2246887ad3dcbb918b1cd
|
Provenance
The following attestation bundles were made for f0_usb_keyboard_bt_proxy-0.0.1a2.tar.gz:
Publisher:
release.yml on tzoiker/flipperzero-usb-keyboard-bt-proxy
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
f0_usb_keyboard_bt_proxy-0.0.1a2.tar.gz -
Subject digest:
4f2c675f6c31a3d9e48c3b55c7936436142133088cf62babd0805de947aa5b9e - Sigstore transparency entry: 169897377
- Sigstore integration time:
-
Permalink:
tzoiker/flipperzero-usb-keyboard-bt-proxy@900938732a62a3cbc035c34e2ce13ce5e7c00160 -
Branch / Tag:
refs/tags/v0.0.1a2 - Owner: https://github.com/tzoiker
-
Access:
private
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@900938732a62a3cbc035c34e2ce13ce5e7c00160 -
Trigger Event:
push
-
Statement type:
File details
Details for the file f0_usb_keyboard_bt_proxy-0.0.1a2-py3-none-any.whl.
File metadata
- Download URL: f0_usb_keyboard_bt_proxy-0.0.1a2-py3-none-any.whl
- Upload date:
- Size: 15.2 MB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.12.8
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a53d92f20ea74bfcb116350ebecb0e9c34c347f32932dced9d65144722952b97
|
|
| MD5 |
8559ee8fbbcc9ff64cf7ddace6394c25
|
|
| BLAKE2b-256 |
d7853960fb40610c0c21240836c6a56afd4afb25a3763d5fd018cb73a9e9ea38
|
Provenance
The following attestation bundles were made for f0_usb_keyboard_bt_proxy-0.0.1a2-py3-none-any.whl:
Publisher:
release.yml on tzoiker/flipperzero-usb-keyboard-bt-proxy
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
f0_usb_keyboard_bt_proxy-0.0.1a2-py3-none-any.whl -
Subject digest:
a53d92f20ea74bfcb116350ebecb0e9c34c347f32932dced9d65144722952b97 - Sigstore transparency entry: 169897378
- Sigstore integration time:
-
Permalink:
tzoiker/flipperzero-usb-keyboard-bt-proxy@900938732a62a3cbc035c34e2ce13ce5e7c00160 -
Branch / Tag:
refs/tags/v0.0.1a2 - Owner: https://github.com/tzoiker
-
Access:
private
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@900938732a62a3cbc035c34e2ce13ce5e7c00160 -
Trigger Event:
push
-
Statement type: