Every project carries an honest status badge — the same vocabulary we use for firmware platforms. How stages work.
Core firmware
The operating system, the streamer, and the tools that get you from stock firmware to OpenIPC.
firmware
DONEUniversal, Buildroot-based firmware for IP cameras — replaces abandoned vendor systems on dozens of SoC families.
OpenIPC/firmwarebuilder
DONEFirmware for named retail cameras, layered on the firmware tree: each device's defconfig, GPIO map, first-boot customizer and excludes. The images sysupgrade fetches for those cameras come from here.
OpenIPC/buildermajestic
DONEThe streamer at the heart of the firmware: RTSP, ONVIF, WebRTC, HLS, audio, night modes. Distributed as a binary under the Prosperity license; commercial terms available.
OpenIPC/majesticmajestic-webui
DONEThe web interface on port 80 of every camera: claim it, set it up, watch it.
OpenIPC/majestic-webuiipctool
DONEIdentifies the SoC, sensor, and flash chip of nearly any camera — and backs up the stock firmware before you change anything.
OpenIPC/ipctoolcoupler
DONEThe smooth migration path from vendor firmware to OpenIPC and back. No soldering, no special skills.
OpenIPC/couplerdefib
DONEBrings bricked cameras back over UART — HiSilicon, Goke and more. Runs in the browser over WebSerial, nothing to install; a CLI for the rest.
OpenIPC/defibsmolrtsp
DONEAn embeddable RTSP 1.0 server library for cameras and other constrained devices. TCP and UDP, any payload format.
OpenIPC/smolrtspmajestic-af
WIPAutofocus and PTZ as a plugin majestic loads at run time: the focus search and the lens motor protocols, outside majestic's core.
OpenIPC/majestic-afLongevity & security
Vendor SDKs assume vendor kernels: ancient, unpatched, abandoned. We port them to mainline — CVE fixes and modern kernel features long after end-of-life.
openhisilicon
WIPKeeps the HiSilicon vendor SDK alive on mainline kernels — CVE fixes and modern features after the vendor walks away.
OpenIPC/openhisiliconopeningenic
WIPThe open SDK for Ingenic SoCs that the firmware builds on: MIT libraries, GPL kernel modules.
OpenIPC/openingenicqemu-hisilicon
WIPA full HiSilicon IP camera emulator on QEMU — develop and test firmware without hardware on your desk.
OpenIPC/qemu-hisiliconLow latency & URLLC
The open video link for drones, robots, and teleoperation. Read the overview.
waybeam
DONEThe TX side of the link: a flexible video encoder for FPV drones and URLLC devices.
OpenIPC/waybeamdevourer
DONEThe link itself: a userspace driver for Realtek Wi-Fi adapters, setting rate, power, and channel packet by packet.
OpenIPC/devourerlibsalvage
MVPA receiver for RTP video that is expected to lose packets: FlexFEC recovery first, then it shows the slices that arrived instead of dropping the frame.
OpenIPC/libsalvagePixelPilot_rk
DONEThe RX side: turns a Rockchip board into a dedicated ground station with display output.
OpenIPC/PixelPilot_rkPixelPilot
DONEThe Android ground station: decodes the wfb-ng video feed on a phone or tablet.
OpenIPC/PixelPilotmsposd
DONEDraws the Betaflight, INAV or ArduPilot OSD over the OpenIPC video stream.
OpenIPC/msposdViewing & recording
Clients and servers for watching and keeping what the cameras see.
viewer
MVPA viewer for Windows, Linux, macOS and Android: live RTSP with hardware decoding, a multi-camera grid, recording, two-way audio and ONVIF discovery.
OpenIPC/viewernrv
WIPA video surveillance server: recording, object and sound detection on neural networks, face and plate recognition, access control.
OpenIPC/nrvwbcam
MVPPuts cameras into a WebRTC conference room, one participant each: a whole fleet in a browser tab, no NVR, no port forwarding.
OpenIPC/wbcamPro tools
Free tools that camera and media engineers run by hand — useful even if you never flash our firmware.
rnd-player
DONEA player built for media engineers: inspect streams the way a developer needs to.
OpenIPC/rnd-playerraw-editor
MVPDevelops the raw DNG a camera serves, in the browser: for sensor diagnostics and tuning.
OpenIPC/raw-editorlatency-probe
MVPSplits glass-to-glass latency into the camera half and the browser half, and measures each one on a single clock: no LED, no photodiode.
OpenIPC/latency-probehevc-wasm
MVPH.265 decoding in WebAssembly, for browsers that will not play a camera's HEVC stream natively.
OpenIPC/hevc-wasmvectis
MVPA serial console for the OpenIPC UART 38x38 board: local or over the network, with reset and break on a key.
OpenIPC/vectiscamex
DONEA small UDP/TCP tunnel for embedded Linux, with optional ChaCha20-Poly1305: libc only, about 3,500 lines.
OpenIPC/camexuget
DONEA wget replacement in under 5 KB, for cameras whose stock firmware has neither curl nor wget.
OpenIPC/ugetAI harnesses
Test benches that CI and AI agents run without a person in the loop: headless, a verdict as JSON or JUnit, an exit code.
onvif-tt
DONEONVIF conformance tests against a real camera: what it actually implements, as JUnit for CI and JSON for agents.
OpenIPC/onvif-ttsip-tt
MVPThe same for SIP: whether a camera, doorbell or softphone behaves as RFC 3261 and RFC 3264 require.
OpenIPC/sip-ttipeye-tt
MVPStands in for the RTSP cloud a camera dials out to, records what crosses the wire, and prints a verdict.
OpenIPC/ipeye-ttandroid-emulator-qa
MVPReproduces client-side bug reports: drives the real Android app on an emulator and captures the ONVIF and RTSP it sends.
OpenIPC/android-emulator-qachrome-hevc-qa
MVPChrome with hardware HEVC decoding on a headless Linux GPU server, with a pass/fail driver: does this stream play?
OpenIPC/chrome-hevc-qasafari-hevc-qa
MVPThe Safari counterpart: VideoToolbox HEVC decoding on a GitHub-hosted macOS runner, with no Mac on anyone's desk.
OpenIPC/safari-hevc-qakaeru
MVPMemory for coding agents: what was learnt, decided and refuted, carried between sessions and shared across a team. The OpenIPC team works with it.
LamantinAI/kaeruAI models
Neural networks fitted to camera chips and to the browser, built and released in the open.
xmnpu-models
DONEYOLOv8 detectors compiled for the NPU of the GK7205V500/V510/V530, released by CI for majestic's NPU detection.
OpenIPC/xmnpu-modelslpr-wasm
MVPNumber plates found and read in the browser by two ONNX models: no server, no upload. The weights are CC BY-NC.
OpenIPC/lpr-wasmStock cameras, reverse-engineered
Protocols and hardware of vendor cameras, documented by taking them apart — for cameras still on stock firmware, and for moving them off it.
python-dvr
DONEConfigures the many cameras that speak the XMeye/NETsurveillance protocol, from Python.
OpenIPC/python-dvrpython-dhip
MVPA pure-stdlib Python client for Dahua DHIP, the binary RPC of Dahua and Dahua-derived cameras.
OpenIPC/python-dhippython-anjoy
MVPA library and CLI for what stock Anjoy cameras do outside ONVIF and RTSP.
OpenIPC/python-anjoymotors
WIPPan, tilt, zoom, focus and iris for cameras whose motor protocols we recovered from stock firmware.
OpenIPC/motorsCommunity projects
User-made hardware, mounts, and accessories — like the 3D-printable models tagged openipc on Printables.