Skip to content
Gino Bot edited this page Jul 11, 2026 · 1 revision

LightNVR

LightNVR is a lightweight, open-source Network Video Recorder written in C for minimal memory usage. It runs on separate hardware — such as the $15 NVR, Raspberry Pi, or any Linux system — and connects to IP cameras (including Thingino cameras) via RTSP/ONVIF.

Important: LightNVR does not run on cameras themselves. It is built using the Thingino build system as a convenience for targeting Ingenic SoC devices like the $15 NVR, but it is a standalone NVR application.

Project repository: github.com/opensensor/lightNVR (GPL v3)

For full documentation, features, and usage instructions, see the LightNVR GitHub page.

Building with the Thingino Build System

LightNVR can be compiled for Ingenic SoC devices (like the $15 NVR) using the Thingino build system. It is not included in standard Thingino release images — you must build it yourself.

  1. Set up the Thingino build environment (see Building from Sources)
  2. Enable the package in your buildroot config:
    BR2_PACKAGE_LIGHTNVR=y
    
    This automatically enables its dependencies: go2rtc, FFmpeg, SQLite, cJSON, libuv, llhttp, and host-nodejs.
  3. Build the firmware image as usual.

Dependencies

The LightNVR package pulls in the following:

Dependency Purpose
go2rtc Streaming backbone (RTSP ingest, WebRTC/HLS output)
thingino-ffmpeg Video decoding and recording
sqlite Database for streams, recordings, settings
cjson JSON parsing
libuv + llhttp HTTP server backend
host-nodejs Build-time web asset compilation
mbedtls or wolfssl TLS support (optional, selected by other packages)

Installed Paths

Path Description
/usr/bin/lightnvr Main binary
/etc/lightnvr/lightnvr.ini Configuration file
/etc/lightnvr/go2rtc/ go2rtc configuration directory
/etc/init.d/S95lightnvr Init script (auto-start)
/var/lib/lightnvr/web/ Web UI assets (compressed)
/opt/lightnvr/ Data directory (recordings, database, models)

Note: LightNVR manages go2rtc directly. The standalone go2rtc init script (S97go2rtc) is removed when LightNVR is installed.

Configuration

LightNVR is configured via /etc/lightnvr/lightnvr.ini. Key points:

  • Web UI runs on port 8080 by default; credentials are auto-generated on first run
  • Storage defaults to /mnt/sda1/ — external USB storage is required for recording on embedded devices
  • Streaming uses go2rtc as its backbone (WebRTC on port 8555, HLS fallback)
  • Detection requires the separate light-object-detect service

For all configuration options, see the LightNVR GitHub page.

Running on the $15 NVR

LightNVR can be installed on the Ingenic A1 / $15 NVR hardware, which is where the Thingino build system target comes in handy. However:

⚠️ LightNVR does not work well on this device. If you choose to try it, make sure to back up the factory firmware first. Thingino does run well on it and allows you to use the device as a dependable go2rtc restreamer (no hard drive required).

See the $15 NVR page for flashing instructions and details.

Running on Other Hardware

LightNVR is not limited to Ingenic devices. It can run on any Linux system — including Raspberry Pi, x86 servers, and Docker containers. Pre-built Docker images are available at Docker Hub. For installation instructions outside of Thingino, see the LightNVR GitHub page.

Resources

  1. Wiki Home
  2. About the Project
    1. Contributions
    2. Features
    3. Project Philosophy
    4. Releases
  3. Getting Started
    1. FAQ
    2. Glossary
    3. Hardware Identification
    4. Image Builder
    5. USB Boot Mode
    6. Ingenic USB Cloner
      1. OTG Booting
    7. PPSTRONG
    8. Installation: General
    9. Installation: No Tools Methods
    10. Resources and Links
    11. Support Community
    12. Troubleshooting
    13. UART Connection
    14. Updating Firmware
    15. Unbricking
    16. Web UI
  4. Supported Cameras
    1. Cameras
    2. 360 AP1PA3
    3. AliExpress LTIA‐37FJZ (Vanhua Z55 module)
    4. AOQEE C1
    5. Aosu C5L
    6. Cinnado
      1. Cinnado D1 2K
      2. Cinnado D1 3K
    7. Dekco DC5L
    8. Eufy
      1. Eufy E210 Outdoor Cam
      2. Eufy E220
    9. Galayou/Wansview
      1. Galayou G2
      2. Galayou G7
      3. Wansview W6
      4. Wansview W7/Galayou Y4
    10. Hualai (Wyze/Atom/Neos/Personal)
      1. Dafang Upgrading for Wyze v2
      2. NEOS conversion
      3. Personal Cam Pan and Cam 2
      4. Wyze Cam Pan V1
      5. Wyze Doorbell (V1)
        1. Chime Reverse Engineering
        2. Flashing VDB1 over UART (YMODEM)
        3. MQTT Control and Monitoring
      6. Wyze v2/Neos SmartCam/ATOM Cam 1
      7. Wyze v3
      8. Wyze Accessories
    11. iFlytek XFP301‐M
    12. Jienuo JN-107-AR-E-WIFI
    13. Jooan A6M
    14. LaView L2
    15. LongPlus X07
    16. LSC 3215672
    17. Sannce I21AG
    18. Sonoff Cam‐S2 and B1P
    19. TP-Link Tapo C100/C110/C111
    20. Wuuk Y0510
    21. Xiaomi
      1. Xiaomi Mijia1080p (SXJ02ZM)
      2. Xiaomi MJSXJ03HL
      3. Xiaomi Outdoor Camera AW200 (MJSXJ05HL)
  5. Configuration
    1. Administration
    2. Automation
      1. Configuring camera using runonce.sh script
    3. Cron jobs
    4. General
    5. LED Indicators
    6. Lighting
    7. Media Streaming Endpoints
    8. Network Storage
    9. Networking
      1. DHCP: Timezone
      2. Wireless Networking
      3. USB Direct w CDC (NCM)
      4. USB Ethernet Networking
      5. Remote Access
      6. VPN
        1. Tailscale
        2. Wireguard
        3. Zerotier
      7. Wi-Fi
        1. Self Hosted AP
        2. Tips and Tricks
      8. WWAN (Cellular)
    10. Night Mode
    11. ONVIF
    12. OSD (On-screen Display)
    13. Plugins
      1. Motion Guard
      2. Yandex Disk
    14. SSH Access Keys
    15. Wi-Fi Access
    16. Provisioning
    17. Streamer Bitrate Control
    18. Video Rotation
  6. Integration
    1. Home Assistant
    2. Frigate
    3. Ingenic A1/$15 NVR
    4. LightNVR
    5. Mobile Apps
    6. MQTT Integration
    7. Virtual Webcam on Linux
    8. Mainsail (Klipper)
  7. Development
    1. Booting
      1. Boot: MMC SD
      2. Boot: NFS
    2. CH341A Programmer
    3. RTSP Players
    4. Flash Chips
    5. go2rtc
    6. Porting Guide
    7. Ingenic Platform Capability Matrix
    8. Ingenic Image Processor
    9. ISP Reserved Memory (RMEM)
    10. Debugging
    11. Software
      1. Building From Sources
      2. Buildroot
      3. Toolchain
      4. Choice of JSON library
    12. SSL and TLS Web UI in thingino
    13. Tech Info
      1. Hardware
      2. PWM Info
      3. Supported Hardware
      4. T23 GPIOs
      5. T31 GPIOs
    14. U-Boot Cheatsheet
    15. Zeratul/Atlas/Tassadar
    16. Resources

Clone this wiki locally