Integration: $15 NVR - themactep/thingino-firmware GitHub Wiki

$15 NVR

Hardware

  • SoC: Ingenic A1
  • Connection: Ethernet RJ45
  • Output: HDMI and VGA
  • 2 USB ports
  • 3.5mm audio jack
  • Power: 12V barel jack, center positive

image image

Installation

A fairly straightforward way to flash thingino/lightnvr is to use the builtin tftpdownload feature of the bootloader.

The first step is to prepare the tftp server on another machine, download the thingino image (thingino-smart_nvr_a1n_eth.bin) from the GitHub repository https://github.com/themactep/thingino-firmware/releases and place it in the tftp server directory (for example /private/tftpboot on a Mac). You can rename it to something shorter for convenience, for example autoupdate-full.bin.

Once the tftp server is ready the next step is to establish a serial connection through the J3 header located between the DC power jack and the SATA power connector. The pinout starting from left (SATA power) to right (DC power in) is VCC (3.3V), TX, RX, GND. The VCC connection can be omitted and the serial adapter must be 3.3V. The parameters for the serial connection are 115200 8N1.

Once the connection is established power the board and using CTRL-C interrupt the bootloader which will drop you to a isvp_a1# prompt. To prepare the bootloader to receive the image and then download it from your server these are the commands, mind that serverip and the other network parameters have to match your tftp server prepared earlier and network.

If you want to preserve the stock firmware you have to make a backup before this procedure.

watchdog 0
setenv ipaddr 192.168.1.10
setenv netmask 255.255.255.0
setenv gatewayip 192.168.1.1
setenv serverip 192.168.1.254
tftpdownload autoupdate-full.bin
reset

The second to last command will automatically download the image from your tftp server and then proceed to first erase the flash and then write the new firmware. With the reset command the board will reboot now with thingino.

LightNVR required configuration

By default lightnvr tries to use /var/lib/lightnvr/ for recordings and other things which won't work on such small flash chip so you must configure it to use another storage, for example a SATA ssd. Format the SSD using FAT32 and connect it to the board, it should be automatically recognized and mounted to /mnd/sda1. Then edit /etc/lightnvr/lightnvr.ini as such:

Under [storage] change:

path = /var/lib/lightnvr/recordings to path = /mnt/sda1/lightnvr/recordings

mp4_path = /var/lib/lightnvr/recordings/mp4 to mp4_path = /mnt/sda1/lightnvr/recordings/mp4

Under [database] change:

path = /var/lib/lightnvr/lightnvr.db to path = /mnt/sda1/lightnvr/lightnvr.db

Under [models] change:

path = /var/lib/lightnvr/models to path = /mnt/sda1/lightnvr/models

Under [memory] change:

swap_file = /var/lib/lightnvr/swap to swap_file = /mnt/sda1/lightnvr/swap

Reboot the NVR and after a bit the thingino web ui should be available at the board ip while lightnvr will be at the same ip but port 8080.

Swapping ports

If you prefer lighnvr to be the main webui as this is an NVR and not a camera you can easily swap ports with thingino.

To put thingino on port 8080 edit /etc/init.d/S50httpd and change:

if [ -f "$PORTAL_MODE_FLAG" ]; then
	DAEMON_ARGS="-f -c $PORTAL_CONF"
else
	DAEMON_ARGS="-f -c $HTTPD_CONF -r Authentication"
fi

to

if [ -f "$PORTAL_MODE_FLAG" ]; then
	DAEMON_ARGS="-p 8080 -f -c $PORTAL_CONF"
else
	DAEMON_ARGS="-p 8080 -f -c $HTTPD_CONF -r Authentication"
fi

Note how we have now told the http daemon to use port (-p) 8080.

To put lightnvr on port 80 edit /etc/lightnvr/lightnvr.ini and under [web] change port = 8080 to port = 80.

Reboot and now the two webui should've swapped places.

Usage

Pair the NVR with a 2.5" SSD, add a 12V 2A power source, a mouse, and you have a fully working unit capable of handling up to 16 IP cameras.

image

Connecting Camera over ONVIF

image

Settings

  • Protocol: ONVIF
  • Onvif version: auto
  • Address:
  • Port: 80
  • Device information:
  • Network type: UDP or TCP
  • User name: thingino
  • Password: thingino (or what you have changed it to)

Playback

$15 NVR can play up to four channels simultaneously on the same screen.

image

Where to buy

Retail NVR

image

https://www.aliexpress.com/item/1005006224516280.html

Bare module

image

Resources

Firmware analysis

User Manual

3D-Printed Shell

image

newer board/port layout: https://www.printables.com/model/1148794-ingenic-a1-nvr-case-new-board-layout

image

legacy board/port layout: https://www.printables.com/model/1094266-ingenic-a1-nvr-case

⚠️ **GitHub.com Fallback** ⚠️