Extract the reusable BLE central/GATT client and name/value decoders into
libble/ (moved out of bt_inspector). build.sh now stages libble/*.{c,h}
into each app dir at build time and builds every app in APPS=(...).
New app ble_hid_host: connects to a BLE keyboard or mouse, discovers the
HID service (0x1812), sets protocol mode (boot when offered, else report),
subscribes to the input-report characteristics, and decodes keyboard
(modifiers + key names) and mouse (buttons + dx/dy/wheel) reports live.
Events scroll on screen and are logged with raw bytes to
apps_data/ble_hid_host/. No pairing, so encryption-gated keyboards stay
silent; open devices and most mice work. Both faps build and pass APPCHK.
17 lines
570 B
Plaintext
17 lines
570 B
Plaintext
# External app. Needs firmware built by ../build.sh: full BLE stack plus the
|
|
# ST aci_*/hci_* command API exported to apps.
|
|
App(
|
|
appid="ble_hid_host",
|
|
name="BLE HID Host",
|
|
apptype=FlipperAppType.EXTERNAL,
|
|
entry_point="ble_hid_host_app",
|
|
requires=["gui", "storage"],
|
|
stack_size=4 * 1024,
|
|
fap_category="Bluetooth",
|
|
fap_icon="icon.png",
|
|
fap_version="1.0",
|
|
fap_description="Connect a BLE keyboard or mouse and watch its input reports",
|
|
fap_author="andydixon",
|
|
fap_weburl="https://github.com/andydixon/flipper-bt-inspector",
|
|
)
|