Protocol · Tool:
ORBCOMM receiverC2
ORBCOMM receiver decodes satellite transmissions into packets and parses known packet types.
- Protocol
Reviewed fbieberly/ORBCOMM-receiver@b1b5e4c
Protocol · Tool:
ORBCOMM receiver decodes satellite transmissions into packets and parses known packet types.
Reviewed fbieberly/ORBCOMM-receiver@b1b5e4c
Protocol · Tool:
iridium-sniffer detects and demodulates Iridium L-band bursts from supported SDR devices or recorded IQ files.
Reviewed alphafox02/iridium-sniffer@830e34c
Game · Tool:
Booma.Proxy is a set of C# libraries that model Phantasy Star Online Blue Burst's binary packets for client and server emulation.
Reviewed HelloKitty/Booma.Proxy@579effb
Protocol · Tool:
gr-elster receives and decodes 902–928 MHz packets from Elster smart meters with a GNU Radio block and sample flow graphs.
Reviewed argilo/gr-elster@bd33fcd
Protocol · Tool:
COMS-1 Meteorological Satellite Tools parse LRIT and HRIT files carried by the satellite's L-band downlinks.
Reviewed sam210723/COMS-1@0d1d712
Protocol · Tool:
renard-phy processes Sigfox uplink and downlink radio frames in Python for software-defined radios.

Reviewed Jeija/renard-phy@d71ebb2
Protocol · Tool:
Bus Pirate firmware turns v3 and v4 boards into terminal-controlled tools for investigating electronic buses.
Reviewed ElderlyPirate/Bus_Pirate@44574ce
Protocol · Tool:
EDACS-FM decodes EDACS 9600 trunked-radio control channels and follows assigned voice channels.
Reviewed lwvmobile/edacs-fm@d92422e
Protocol · Tool:
orbcomm-rx demodulates and decodes Orbcomm VHF Subscriber Transmitter downlinks.
Reviewed sam210723/orbcomm-rx@0f86152
Protocol · Tool:
Meteor LRPT Decoder processes Meteor M N2 satellite transmissions into channel packets.
Reviewed opensatelliteproject/metlrpt@3457acd
Protocol · Case study:
Reconstructs first-generation Siri Remote Bluetooth reports for Linux, decoding buttons, touch and tvOS-style gestures.
Reviewed a-funk/open-appleremote@1e6e190
Protocol · Case study:
Implements the vendor HID configuration protocol for the GAMEKB-K17/HCY-K017 macropad.
Reviewed dvdarkin/gamekb-k17@e61f444
Protocol · Case study:
Implements a USB picture-transfer driver for Thermalright Vision cooler displays, with a Rust dashboard replacing the vendor display application.
Reviewed kristjaningi/cooler-lcd@9a34367
Protocol · Case study:
Reuses otoscope's reverse-engineered i4season/Soulear protocol in an ESP32-C3 bridge and Python desktop viewer.
Reviewed WildweaselMS/NJFE@992866c
Protocol · Case study:
ultimate2 reconstructs the configuration protocol for supported 8BitDo controllers and implements command-line, graphical and browser clients.

Binary · Case study:
remote-me implements an Apple TV browser remote from analysis of iOS TVRemoteCore and Rapport frameworks.
Reviewed jxgedouard/remote-me@702a81c
Protocol · Case study:
Attack Shark K86 reconstructs the yc3121 keyboard's HID controls from analysis of its official driver with REA.

Protocol · Case study:
Redragon K652 macOS control reconstructs the keyboard's HID configuration protocol from decompilation of its Windows driver with REA and Ghidra.
Protocol · Case study:
AK·LINK implements Linux control of the AJAZZ AK820 Pro keyboard through its recovered wired HID commands for lighting, per-key RGB and the TFT screen.
Reviewed AaditPani-RVU/aklink@fe33f8f
Protocol · Case study:
Etrel Load Guard Configurator is a Python CLI for discovering, reading and configuring Etrel Load Guard energy meters through a reconstructed UDP protocol.
Reviewed XavierGeerinck/etrel-load-guard-configurator@6e1fc40
Protocol · Case study:
Documents an author-reported scanner investigation comparing vendor-driver USB control transfers with Linux-driver traces to infer initialization, timing and resolution parameters.
Reviewed cschalle/hw-harness@093afc5
Protocol · Case study:
Runs a local HTTPS and MQTT stack in place of Roborock’s cloud, so supported vacuums keep live maps and controls on an isolated network without rooting or hardware changes.
Protocol · Case study:
Reimplements the client side of Apple’s private Apple Push Notification service (APNs) protocol in platform-independent Python: it activates as an Apple device, connects to the APNs courier, mints app-scoped tokens and receives push notifications.
Reviewed JJTech0130/pypush@71aa2e4
Protocol · Case study:
Recovers enough of the infrared protocol used by PixMob event wristbands to light them at home, starting from Flipper Zero recordings made at concerts and games and replaying them to bracelets.
Reviewed danielweidman/pixmob-ir-reverse-engineering@b372420
Protocol · Case study:
Python command-line reimplementation of Apple's AirDrop protocol from SEEMOO Lab's reverse-engineering research.
Reviewed seemoo-lab/opendrop@11fe7ba
Protocol · Case study:
Documents the Bluetooth Low Energy interface of Hasbro's Furby Connect toy, worked out, according to its notes, from the companion app's native library, sniffed BLE traffic and trial and error.
Reviewed Jeija/bluefluff@9e865c4
Protocol · Case study:
Asyncio Python library and command-line tools that act as an independent client for Apple TV and AirPlay devices by reimplementing the DMAP/DACP, Media Remote Protocol, Companion Link, AirPlay and RAOP protocols, which its protocol documentation describes as reverse engineered.
Reviewed postlund/pyatv@b277a4c
Protocol · Case study:
Reimplements the Samsung Galaxy Buds Pro’s proprietary spatial-audio messages in a small Python script so that a PC can stream the earbuds’ head-tracking data in real time.
Protocol · Case study:
Reimplements the Wi-Fi remote-control protocol of Fujifilm X-series cameras as a C++ library and an interactive command-line client that joins the camera's access point.
Reviewed hkr/fuji-cam-wifi-tool@c597fc4
Protocol · Case study:
Node.js bridge that reads power and cadence from exercise bikes whose own apps or services are gone or closed, and re-broadcasts them as standard Bluetooth LE Cycling Power and Cycling Speed and Cadence sensors and as an ANT+ bike power profile, so that Zwift, TrainerRoad, bike computers and watches can use the bike.

Reviewed ptx2/gymnasticon@e142f53
Protocol · Case study:
Python library that talks to Garmin watches over their proprietary GFDI V2 Bluetooth LE protocol, with no Garmin Connect, phone or cloud service.

Reviewed gwerneckp/garmin-ble@b662032
Protocol · Case study:
Controls Bose headphones from Linux and macOS without the Bose app, account or cloud, through Python, Rust and C++ libraries and command-line tools that implement Bose’s BMAP protocol over Bluetooth RFCOMM.

Reviewed aaronsb/bosectl@70570b2
Protocol · Case study:
Reconstructs the DUML-over-BLE protocol that DJI's Mimo app uses with the Osmo Pocket 3 camera as a Node.js library and CLI for scanning, pairing, gimbal commands and roughly 20 Hz position telemetry without the vendor app.
Reviewed yigitkonur/lib-osmo-ble@021e96c
Protocol · Case study:
Documents the Bluetooth Low Energy message format that DJI's proprietary MIMO app uses to control DJI Osmo devices, as artifacts produced while building the independent djictl CLI.
Protocol · Case study:
Replaces the vendor phone app for the MXW01 “cat printer”, a small Bluetooth Low Energy thermal printer, with a Windows command-line client.

Reviewed MaikelChan/CatPrinterBLE@007f821
Protocol · Case study:
Reconstructs the A0 serial protocol of R2000-family 915 MHz UHF RFID desktop readers, which ship with only Windows software and an Android app, from the vendor app's native command encoder rather than its misleading Java SDK.
Reviewed uaih3k9x/a0rfid@944ec15
Protocol · Case study:
Documents the closed Bluetooth Low Energy GATT protocol of the Xiaomi Kettle, which the author reconstructed by decompiling the Mi Home Android app and disassembling its native encryption library.
Reviewed anna-oake/xiaomi-kettle@fbc0b51
Protocol · Case study:
Documents the medium-speed CAN bus that links the 6000CD radio and the dashboard of a restyled (post-2006) Ford Fiesta MK5, worked out by tapping the bus at the radio's QuadLock connector with a Seeed CAN-BUS Shield on an Arduino Uno.
Protocol · Case study:
Decodes the undocumented Bluetooth Low Energy output of a Uniden R8 radar detector into a receive-only collector for a Raspberry Pi, with live telemetry, alert start/update/end events, SQLite history and optional MQTT and Home Assistant publishing.
Protocol · Case study:
Speaks the undocumented protocol of the Scanmatik SM3, a J2534 vehicle interface that otherwise talks only to its own Windows software, and exposes it to an Android phone as an ELM327 bridge with a diagnostics app on top.
Reviewed PabloSoage/opendash@7c8d729
Protocol · Case study:
Reimplements Apple Wireless Direct Link (AWDL), the proprietary Wi-Fi ad hoc protocol Apple devices use for peer-to-peer links such as AirDrop, as a user-space C daemon for Linux and macOS; the README calls it the result of reverse engineering by the Open Wireless Link project at TU Darmstadt's SEEMOO lab.
Reviewed seemoo-lab/owl@0ee3263
Protocol · Case study:
QuestPad implements the Quest Touch controllers' private 2.4 GHz radio protocol on nRF52840 firmware so a computer can use them as a USB gamepad.

Reviewed Jakey-Jakey/questpad@0a96a24
Protocol · Case study:
Stadiacast recreates the network service used by the Stadia Controller's Wi-Fi firmware so the controller can connect to a local computer.
Reviewed jkfran/stadiacast@61e8aee
Protocol · Case study:
os-xgs-npu reconstructs interfaces to Sophos XGS appliance coprocessors through FreeBSD kernel modules and an OPNsense plugin.
Reviewed AbdelmonemAwad/os-xgs-npu@d469551
Protocol · Case study:
LibreMP casts desktop screens to Epson EasyMP projectors using a protocol reconstructed from Windows client packet captures.
Reviewed MuazTPM-YT/libre-mp@c0fe797
Protocol · Case study:
Sony CDX-A250 LCD Panel reconstructs the serial control needed to drive the radio's detachable display independently through its LC75826W driver.
Protocol · Case study:
MacroPad reconstructs the USB HID configuration exchange of a 12-key, two-knob macropad identified as 1189:8840 and implements it in a Linux GUI.
Reviewed Probler-Yt/MacroPad@2b75543
Protocol · Case study:
Monix implements Linux mixer control for Audient iD USB audio interfaces through a companion kernel module, protocol library and GUI.
Reviewed sKuhLight/monix@121a1f5
Protocol · Case study:
Scooter Link implements an Android client for Xiaomi Electric Scooter 5 Pro and 5 Max using a reconstructed BLE authentication protocol.

Binary · Case study:
Sound Blaster AE-9 Linux support reconstructs card and Audio Control Module behavior using static analysis of Creative's Windows drivers and hardware observations.
Reviewed verzic/sb-ae9@cbfef7e
Protocol · Case study:
thermalmaster implements a Go USB client for ThermalMaster P3 and P1 thermal cameras using documented VDCMD control transfers.
Reviewed xaionaro-go/thermalmaster@4a52a1f
Protocol · Case study:
open-rknpu reconstructs a task-program interface for the Rockchip RV1103/RV1106 NPU from board experiments and black-box comparisons.
Reviewed dnhkng/open-rknpu@0e0afcd
Protocol · Case study:
hardsid4u reconstructs the HardSID 4U USB protocol and implements a libusb Python driver for its SID-chip sockets.
Reviewed pjthulin/hardsid4u@539fdb2
Protocol · Case study:
PyEilik implements control of an Eilik desk robot over a recovered USB serial protocol.

Reviewed aklto/PyEilik@b1bf7ea
Protocol · Case study:
libfprint-goodixtls reconstructs communication with the Goodix GXFP5187 SPI fingerprint sensor in the Huawei MateBook X Pro as a libfprint TOD driver.
Reviewed Sigfrodr/libfprint-goodixtls@bdf2f7e
Protocol · Case study:
RazerStream replaces the retired control software for the Razer Stream Controller with a macOS app, Swift protocol library and CLI.
Reviewed ShoelessTim/RazerStream@3d762a1
Protocol · Case study:
DABplay+ implements an Android DAB radio using a reverse-engineered USB dongle protocol.

Reviewed jvspier/dabplayplus@f935586
Protocol · Case study:
PocketPrinter5890 reconstructs the BLE printing protocol of Lidl's Tronic, SILVERCREST, and Parkside model 5890 pocket printers.
Reviewed dimer47/PocketPrinter5890@2011897
Protocol · Case study:
This parking-sensor investigation reconstructs the signal sent from a kit's controller to its display.
Protocol · Case study:
pyhaseiq reconstructs the local WebSocket protocol of Hase iQ wood stoves used with the flamemonitor app and implements an asynchronous read-only Python client.
Reviewed bbayszczak/pyhaseiq@e7bb8ce
Protocol · Case study:
LED Controller uses BanlanX BLE commands to control SP611E-family LED strips from a desktop app.

Reviewed Antrubtor/LED-controller@f2c7c5f
Protocol · Case study:
Zemismart Blind Controller Protocol documents the 433.92 MHz OOK PWM messages used by Zemismart motorized blind remotes.
Protocol · Case study:
vanmoof-certificates decodes the access certificates used with VanMoof SA5 and Series 6 bikes.
Reviewed Knight1/vanmoof-certificates@1d34bf3
Protocol · Case study:
Cosmic Byte Firestorm Controller implements a Linux client for the mouse's recovered USB settings protocol.
Reviewed electrondefuser/cbfirestorm@65802f3
Protocol · Case study:
Centerpiece Projects documents observed USB control messages for the Finalmouse Centerpiece keyboard and implements scripts around them.
Protocol · Case study:
FAAC E145 Gate Connect implements local control of an FAAC E145 gate through serial commands reconstructed from EasyBoard software traffic.
Protocol · Case study:
stagg-net investigates the Fellow Stagg EKG kettle's internal UART interface and documents its connector, serial settings, observed heartbeat packet, and startup message.
Reviewed linux4life798/stagg-net@d059204
Protocol · Case study:
TOZO Control provides a Linux GTK4 client for TOZO earbuds using a BLE GATT protocol recovered from the vendor's Android app.
Reviewed GabriWar/tozo-control@eb40bdf
Protocol · Case study:
BMS RS485 Service Suite documents an observed ASCII RS485 protocol for battery-management services and implements frame building and decoding in Node-RED.
Protocol · Case study:
Petkit Local replaces selected Petkit D4 feeder cloud exchanges with a local Home Assistant server and relays Eversweet Max 2 CTW3 fountain messages over BLE.
Reviewed Opcodeffm/petkit-local@235aaeb
Protocol · Case study:
IPI STAY FLY Driver reconstructs mouse configuration in a Windows app using reverse-engineered 16-byte HID frames.

Reviewed SpookyyQ/IPI-Stay-Fly-Driver@a302fc2
Protocol · Case study:
A Soundcore D3200 investigation reconstructs the BLE exchange used to list and transfer encrypted recordings.
Protocol · Case study:
K1 Pro OpenDeck Suite includes a Linux OpenDeck driver for the HOTSPOTEK/Mirabox Stream Dock K1 Pro based on its reverse-engineered USB/HID CRT protocol.
Protocol · Case study:
iDotMatrix Home Assistant integration controls the HXS-002 / NL-XSD-32 LED panel over a BLE protocol derived from analysis of the vendor Android app.
Reviewed dallanwagz/idotmatrix-ha@e27d763
Binary · Case study:
Dell ControlVault 2 fingerprint on Linux adapts a locally obtained Broadcom driver to the older BCM5880 fingerprint reader through five signature-matched byte patches.
Reviewed grosa787/dell-controlvault2-fingerprint-linux@45609be
Protocol · Case study:
epson-l3110-driver investigates the Epson L3110's USB printing exchanges while developing a Linux driver in C.
Reviewed mikel-btw/epson-l3110-driver@e0fbf77
Protocol · Case study:
MS5 WiFi Microscope reconstructs the MS5 camera's UDP command and video protocol and supplies a Python client that serves its reassembled JPEG stream as MJPEG.
Reviewed Fyfar/ms5-wifi-microscope@16cf577
Protocol · Case study:
lux-lat-long-log reconstructs the Panasonic LUMIX S5 Bluetooth LE GPS exchange in an ESP32 camera client.
Protocol · Case study:
Magene L308 interop tools reconstruct the smart taillight's BLE control protocol and light_mode.bin pattern format.
Protocol · Case study:
xbloom-ble implements a Python client for the xBloom Studio coffee machine's recovered Bluetooth LE protocol.

Reviewed Janczykkkko/xbloom-ble@cfa29da
Protocol · Case study:
ak820 implements macOS control of the AJAZZ AK820 Pro keyboard through its vendor HID feature-report protocol.
Reviewed gusleig/ajazz-ak820-pro-mac@2ad5c55
Protocol · Case study:
GameTrak Liberation implements a client for the GameTrak controller's reverse-engineered USB HID behavior.
Protocol · Case study:
Cooper Hunter AC documents the COM1 UART and infrared control messages of CH-IF140RK and CH-IF140RK2 units with a Gree GRZQ3-R V1 board.
Protocol · Case study:
aw5d-linux drives the round LCD on an iBUYPOWER AW5/AW5D cooler from Linux using a 64-byte USB-HID output report.
Reviewed claygorman/aw5d-linux@e70d481
Protocol · Case study:
MyJBxHeadsetControl provides Stream Deck controls for the JBL Quantum 950 Wireless headset through its USB dongle's reverse-engineered HID exchange.

Reviewed 666mille/MyJBxHeadsetControl@0c839ef
Protocol · Case study:
zlt reconstructs the LAN JSON API of the MTN ZLT T10D MAX router from its served JavaScript and observed responses.
Reviewed exbyte-dev/zltrouter@60a47a6
Protocol · Case study:
claude-rc-api reconstructs the private HTTP interface used to control local Claude Code sessions from claude.ai/code.
Protocol · Case study:
MSI Mystic Light on Linux implements lighting control for an MSI motherboard from USB traffic captured while MSI Center ran in a Windows VM.
Reviewed Picachuchu69/msi-mystic-light-b860-x870-linux@166a622
Protocol · Case study:
LinkCam implements macOS menu-bar and command-line controls for the Insta360 Link 2 webcam.
Reviewed fmontes/linkcam@f4c3d87
Protocol · Case study:
shark-k86-mac reconstructs the Attack Shark K86 keyboard's vendor HID controls as a Python CLI and library for macOS and Linux.
Reviewed RaphaelCaputo2/shark-k86-mac@f9c8910
Protocol · Case study:
fitdays recreates read-only access to the Fitdays smart-scale cloud API from traffic observed in the vendor app.
Reviewed AboveColin/fitdays@7068418
Protocol · Case study:
trvision implements direct USB control of Thermalright Vision display panels using previously documented protocol research.
Reviewed 0iroN/trvision@bc88670
Protocol · Case study:
pocket-client implements the Pocket voice recorder's recovered BLE command protocol in a Swift library and CLI.
Protocol · Case study:
KeyAxis documents the HID travel stream of keyboards using the 0416:7372 controller and turns key depth into virtual gamepad axes.
Reviewed RigZeeel/KeyAxis@53a7e1b
Protocol · Case study:
The A.O. Smith water-heater project implements local monitoring and demand-response control of an HPS10-50H45DV over its CTA-2045 RS-485 port, publishing readings to MQTT.
Protocol · Case study:
j2208-band-tools implements a direct BLE client for J2208-family fitness bands using protocol findings recovered from the FitTrack Health companion app.
Protocol · Case study:
Eufy Local Light implements a Home Assistant client for Eufy Outdoor String Lights E10 and Permanent Outdoor Lights E22 using BLE traffic analyzed from the Eufy app.
Reviewed SudoSaturn/eufy-local-ha@4f21642
Protocol · Case study:
OpenPeats reconstructs the SoundPEATS earbud control protocol for desktop and Android clients.
Reviewed Wasabules/OpenPeats@8e8357d
Protocol · Case study:
hongtai-panel implements Linux control of a LovingCool AIO cooler LCD using a USB CDC-ACM serial protocol reconstructed from the vendor's Electron application.
Reviewed GOG1071/hongtai-panel@121634c
Protocol · Case study:
An ESPHome component recreates L&S Emotion Control remote commands so an ESP32 with a CC2500 radio can control furniture lights and reflect physical remote presses in Home Assistant.
Reviewed SergeyZh/emotion-control-ha@05134b3