Cameras & Drones (Devices, IoT & Hardware): open-source projects that exist because someone reverse engineered a closed product, sorted by GitHub stars.
Local RTSP/WebRTC streams for Wyze cameras using the reverse-engineered TUTK protocol
Tools for handling DJI drone firmware and reverse-engineered protocols
Unofficial GoPro WiFi API documentation
Home Assistant control of Tapo cameras using the private local API
Unofficial GoPro API Library for Python - connect to GoPro via WiFi.
Home Assistant integration for Eufy Security cameras and doorbells
Camera access library supporting vendor PTP extensions for thousands of cameras
DJI DroneID reverse engineering and receiver
Runs the DJI 4G dongle (EG25-G) on a Mac by presenting it as a Quectel EC25 in a Linux VM
RTSP bridge for Reolink IP cameras using their proprietary Baichuan protocol
Unofficial RTSP bridge that streams Xiaomi cameras locally to Home Assistant, go2rtc or Frigate
Hacks for Wyze cameras: telnet, NFS recording, and custom scripts
Python library for Blink cameras via the unofficial API
Client library for Eufy Security devices via the reverse-engineered cloud and P2P protocol
Smart USB drive for Tesla dashcam with auto-archive to network storage
Reverse engineered control of best-selling cheap Wi-Fi toy drones
Turns DJI's first-gen 4G cellular dongle into a Mac SIM terminal with SMS, calls and GPS
Python script that controls Xiaomi Yi action camera settings from a PC
Decode DJI DroneID radio packets
Unofficial Python API for Arlo cameras
Python library to communicate with Tapo cameras
Create and manage Fujifilm film-simulation recipes over a USB camera connection
Documents reverse engineering of the original Lytro light-field camera
Open-source iOS and Android field monitor for DJI Osmo Pocket cameras
Unofficial Python SDK for the Wyze cloud API
DJI drone firmware and protocol reverse engineering
Wireless picture transfer from Sony cameras without PlayMemories
Parse embedded telemetry from GoPro, Sony, Insta360, DJI and other camera files
Research and tools for the Xiaomi Yi 4K and 4K+ cameras
Reverse engineering the Fujifilm X-series Wi-Fi remote control protocol
ESP32 Bluetooth remote shutter for Fujifilm, Canon, Ricoh, Nikon and Sony cameras
Sync recordings from BlackVue dashcams over LAN using their HTTP interface
Homebridge plugin for Anker Eufy security devices via the unofficial Eufy cloud and P2P protocol
Wi-Fi remote for Sony cameras on M5StickC
Homebridge plugin to view Nest cams in HomeKit using the unofficial Nest API
Proxy that exposes P2P-only Xiaomi cameras through standard RTSP
Free software alternative firmware for the Parrot AR.Drone 2.0
Python library to stream from Wyze cameras via the TUTK protocol
Async Python library for Reolink cameras and NVRs
Implementation of the iLnkP2P/PPPP protocol for cheap X5/A9 cameras
Reverse-engineered technical details of the Reolink RLC-410 IP camera
Homebridge plugin for TP-Link Tapo cameras using their unofficial API and ONVIF
Unofficial desktop version of the Panasonic Lumix Link remote control app
Reverse-engineered Cobra iRAD radar detector Bluetooth protocol; Raspberry Pi client
Xiaomi Yi camera configurator
Native macOS manager for DJI's first-gen 4G cellular dongle
Reverse engineering the TP-Link Tapo C200 camera
ioBroker adapter controlling Eufy Security devices through the Eufy cloud and P2P protocol
Swift package retrieving images from Sony cameras over Wi-Fi
Open-source macOS one-click connector for the first-generation DJI 4G cellular module
Receives Eufy Security alerts and thumbnails in Home Assistant via MQTT
Mirror Nanit baby camera feed and sensors for Home Assistant
Python package for Ezviz cameras
Self-hosted app to download and browse Viofo dashcam recordings
Canon EF/EF-S lens controller for the Raspberry Pi camera using the EF lens protocol
Unofficial companion app for the DJI Digital FPV system
Third-party Android client for DJI Osmo cameras and DJI drones
Open-source app for popular action cameras, replacing vendor closed-source apps
CLI tool to stream Tuya smart cameras via RTSP
Python Bluetooth LE controller for GoPro cameras
Panasonic Lumix camera remote control app for Windows
Sync photos from Ricoh GR II / GR III over Wi-Fi without the vendor app
Decoding DJI Phantom 2 Vision ser2net communication
Python library exposing Netgear Arlo cameras via the private Arlo web API
Homebridge plugin for Eufy Security cameras
GoPro Plus cloud CLI for batch downloading media via the private API
Python CLI tool for controlling SJCAM WiFi sports cameras
Python scripts to talk to Insta360 action cameras via the Wi-Fi API
Firmware images for reverse engineering the Ryze Tello drone
BLE control package for Even Realities G1 smart glasses
Make old Sigma lenses work on newer Canon camera bodies
Reversing the Proto-X nano quadcopter remote protocol
Unofficial CLI app for TP-Link Tapo cameras (C200, C210, C220, C310)
Open-source Bluetooth remote for Canon cameras with timelapse support
Reverse engineered annotated registers of the Sony IMX708 camera sensor
Python module for controlling Panasonic Wi-Fi cameras
Unofficial Python library for interfacing with the Xiaomi YI Dash Cam
Alternative usage of the DG-M1Q IP camera
Download images from Sony cameras via WiFi on Linux without the mobile app
Home Assistant integration built on the unofficial eufy-sdk client
Async Python library for Arlo cameras and doorbells
Typed client for the Eufy ecosystem: devices, realtime events and live media
Unofficial Sony PMCA in-camera app adding film-simulation presets to the a5100
Reverse engineered library to control the Parrot Jumping Sumo
Reverse engineering the QC 360 A1 quadcopter RC protocol
Ricoh GR Bluetooth API specifications
Home Assistant integration for Aqara cameras and sensors via the Aqara app cloud API
Homebridge platform plugin for Arlo cameras
Library to connect to and control Fujifilm cameras over USB, Wi-Fi and BLE
Reverse-engineered Lumix GX80 Wi-Fi protocol
Reverse engineering of the JD385 quadcopter
Provide GPS data to Nikon Z cameras without SnapBridge
Homebridge support for Nest/Google devices including HomeKit Secure Video for doorbells and cameras
CLI to batch-download videos from the TP-Link Tapo cloud
Picture Transfer Protocol client library with vendor extensions
Reverse-engineered BLE protocol for the DJI Osmo Pocket 3 in Node.js
ROS driver for GoPro cameras over the reverse-engineered Wi-Fi API
Control Insta360 cameras over BLE from an ESP32
M5Stack firmware for Ricoh GR remote live view and BLE shutter
Connect to Wi-Fi Olympus cameras: live view, clock, capture and download
Home Assistant integration for the Aqara Camera G3
Open-source CLI to manage DJI Osmo devices over BLE without the DJI Mimo app
Arduino LANC-to-USB interface with GUI for controlling Sony camcorders
Event-first Eufy camera gateway and Home Assistant integration
Python script emulating Canon's BR-E1 Bluetooth remote
Local Home Assistant integration for LSC and other Tuya video doorbells; learns datapoints, no cloud
Bosch Smart Home cameras via a reverse-engineered cloud and local API
Local, cloud-free control for the Tuya-based LSC Smart Connect 1080p indoor camera
TypeScript library to extract Fujifilm recipe data from EXIF maker notes
Controls a DJI Osmo Nano over Wi-Fi from desktop: live view, capture modes, settings and gallery
Go implementation of PTP/IP for Wi-Fi camera control
Reverse-engineering artifacts of the DJI Osmo BLE protocol produced while building djictl
Expose Panasonic Lumix cameras as ASCOM cameras for astrophotography
App to transfer photos from the Ricoh GR III
TypeScript library to connect to and control Canon EOS, Sony Alpha and Nikon Z cameras
Alternative Wi-Fi/Bluetooth app for Fujifilm cameras replacing the vendor app
GStreamer demuxer for the Sony Alpha camera liveview protocol
Reverse-engineered C++ driver for Panasonic Lumix cameras
Gets the Insta360 livestream on a computer without a phone in between
Toolkit for Insta360 .insv video files
Self-hosted open-source replacement for the Arlo base station and Arlo cloud
Controls Sony QX10/QX100 lens cameras including undocumented API calls
Electron app to control a Panasonic Lumix DMC-G7
Web Bluetooth remote for Canon EOS cameras using the reverse-engineered BLE protocol
Reverse engineering of the Insta360 Luna Ultra
iOS app to discover and connect to Wi-Fi and DLNA-enabled Canon cameras
Home Assistant component controlling TP-Link IP cameras
Scrypted plugin connecting to Arlo cameras and doorbells locally without the cloud
JavaScript library for the private Arlo camera API
CLI to manage Insta360 cameras
Syncs GPS and date/time to Ricoh and Sony cameras over Bluetooth
Blink camera integration for Homebridge
Library for local control and streaming of TP-Link Kasa smart cameras
CLI tool for downloading Arlo recordings via the private Arlo API
Reverse-engineered FFmpeg-based live viewer for GoPro HERO4 cameras
Unofficial desktop companion app for the Insta360 Luna Ultra
Viofo dashcam client for ingesting footage over WiFi
ASCOM camera driver for Fujifilm X-Series and GFX cameras
Unofficial GoPro remote app for Pebble smartwatches
Unofficial Windows downloader for Insta360 Luna Ultra media over local Wi-Fi
Reverse engineering the Fujifilm G Mount lens protocol used on GFX cameras
Browse and play Eufy HomeBase recordings in Home Assistant
Swift package controlling the DJI/Ryze Tello drone over its proprietary binary protocol
Dahua JSON-RPC API reference, 275+ methods reversed from firmware JS
REST proxy for the unofficial Eufy Security API
Unofficial GoPro Wi-Fi API library for Go
Reverse-engineered WiFi protocol of the Holy Stone H120D drone
Research on the serial protocol of Nikon film cameras like the F100
Reverse engineering of DJI SDC accessory ports
Unofficial Ruby GoPro API wrapper
Unofficial Python toolkit for Insta360 GO Ultra live stream and control over Wi-Fi protobuf
Self-hosted viewer for Xpeng built-in dashcam footage
Integrate 70mai dashcams in Home Assistant
Browser remote control of Sony DSC RX100 cameras
Reverse engineering of the Sony ZV-E10 camera's service mode and resource formats
Python CLI for Bosch Smart Home cameras using the reverse-engineered cloud API
Reverse engineering of the UBox/UBIA smart camera P4P protocol, cipher and video stream
Extract GPS data embedded in Viofo dashcam videos
ESP32-C3 bridge and desktop viewer for i4season/Soulear Wi-Fi otoscope cameras
Unofficial Ruby implementation of the Ubiquiti UniFi Protect API
macOS app that reaches the Elgato 4K X capture card's 10-bit P010 video mode
Reverse engineering of the Godox X and Olympus TTL flash protocol