Tenvis JPT3815W-HD Linux video

Access JPT3815W-HD video stream under linux:

high res stream:

mpv* rtsp://CAMERA_IP:554/11

low res stream:

mpv rtsp://CAMERA_IP:554/12

Control movement via command line:


curl -u admin:pass -X "GET http://CAMERA_IP/ptzctrl.cgi?-step=1&-act=left&-speed=45"

(*) any rtsp-able video client

Images of the mainboard:

JPT3815W-HD_front JPT3815W-HD_back





UART PINs found:







Bootlog from serial interface:

U-Boot 2010.06 (Mar 18 2014 - 03:42:32)

Check spi flash controller v350... Found
Spi(cs1) ID: 0xC2 0x20 0x18 0xC2 0x20 0x18
Spi(cs1): Block:64KB Chip:16MB Name:"MX25L128XX"
In:    serial
Out:   serial
Err:   serial
Hit any key to stop autoboot:  1  0 
16384 KiB hi_sfc at 0:0 is now current device

## Booting kernel from Legacy Image at 82000000 ...
   Image Name:   Linux-3.0.8
   Image Type:   ARM Linux Kernel Image (uncompressed)
   Data Size:    2598364 Bytes = 2.5 MiB
   Load Address: 80008000
   Entry Point:  80008000
   Loading Kernel Image ... OK

Starting kernel ...

Uncompressing Linux... done, booting the kernel.
Linux version 3.0.8 (root@localhost.localdomain) (gcc version 4.4.1 (Hisilicon_v100(gcc4.4-290+uclibc_0.9.32.1+eabi+linuxpthread)) ) #1 Tue Mar 18 03:54:42 HKT 2014
CPU: ARM926EJ-S [41069265] revision 5 (ARMv5TEJ), cr=00053177
CPU: VIVT data cache, VIVT instruction cache
Machine: hi3518
Memory policy: ECC disabled, Data cache writeback
AXI bus clock 200000000.
Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 11176
Kernel command line: mem=44M console=ttyAMA0,115200 root=/dev/mtdblock2 rootfstype=jffs2 mtdparts=hi_sfc:512K(boot),2560K(kernel),13M(rootfs)
PID hash table entries: 256 (order: -2, 1024 bytes)
Dentry cache hash table entries: 8192 (order: 3, 32768 bytes)
Inode-cache hash table entries: 4096 (order: 2, 16384 bytes)
Memory: 44MB = 44MB total
Memory: 39732k/39732k available, 5324k reserved, 0K highmem
Virtual kernel memory layout:
    vector  : 0xffff0000 - 0xffff1000   (   4 kB)
    fixmap  : 0xfff00000 - 0xfffe0000   ( 896 kB)
    DMA     : 0xffc00000 - 0xffe00000   (   2 MB)
    vmalloc : 0xc3000000 - 0xfe000000   ( 944 MB)
    lowmem  : 0xc0000000 - 0xc2c00000   (  44 MB)
    modules : 0xbf000000 - 0xc0000000   (  16 MB)
      .init : 0xc0008000 - 0xc0022000   ( 104 kB)
      .text : 0xc0022000 - 0xc0491000   (4540 kB)
      .data : 0xc0492000 - 0xc04b0e00   ( 124 kB)
       .bss : 0xc04b0e24 - 0xc04c4170   (  77 kB)
SLUB: Genslabs=13, HWalign=32, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
NR_IRQS:32 nr_irqs:32 32
sched_clock: 32 bits at 100MHz, resolution 10ns, wraps every 42949ms
Console: colour dummy device 80x30
Calibrating delay loop... 218.72 BogoMIPS (lpj=1093632)
pid_max: default: 32768 minimum: 301
Mount-cache hash table entries: 512
CPU: Testing write buffer coherency: ok
NET: Registered protocol family 16
Serial: AMBA PL011 UART driver
uart:0: ttyAMA0 at MMIO 0x20080000 (irq = 5) is a PL011 rev2
console [ttyAMA0] enabled
uart:1: ttyAMA1 at MMIO 0x20090000 (irq = 5) is a PL011 rev2
bio: create slab <bio-0> at 0
SCSI subsystem initialized
usbcore: registered new interface driver usbfs
usbcore: registered new interface driver hub
usbcore: registered new device driver usb
cfg80211: Calling CRDA to update world regulatory domain
Switching to clocksource timer1
NET: Registered protocol family 2
IP route cache hash table entries: 1024 (order: 0, 4096 bytes)
TCP established hash table entries: 2048 (order: 2, 16384 bytes)
TCP bind hash table entries: 2048 (order: 1, 8192 bytes)
TCP: Hash tables configured (established 2048 bind 2048)
TCP reno registered
UDP hash table entries: 256 (order: 0, 4096 bytes)
UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)
NET: Registered protocol family 1
RPC: Registered named UNIX socket transport module.
RPC: Registered udp transport module.
RPC: Registered tcp transport module.
RPC: Registered tcp NFSv4.1 backchannel transport module.
JFFS2 version 2.2. (NAND) © 2001-2006 Red Hat, Inc.
fuse init (API version 7.16)
msgmni has been set to 77
Block layer SCSI generic (bsg) driver version 0.4 loaded (major 253)
io scheduler noop registered
io scheduler deadline registered (default)
io scheduler cfq registered
Spi id table Version 1.22
Spi(cs1) ID: 0xC2 0x20 0x18 0xC2 0x20 0x18
SPI FLASH start_up_mode is 3 Bytes
spi size: 16MB
chip num: 1
3 cmdlinepart partitions found on MTD device hi_sfc
Creating 3 MTD partitions on "hi_sfc":
0x000000000000-0x000000080000 : "boot"
0x000000080000-0x000000300000 : "kernel"
0x000000300000-0x000001000000 : "rootfs"
Fixed MDIO Bus: probed
himii: probed
ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
hiusb-ehci hiusb-ehci.0: HIUSB EHCI
hiusb-ehci hiusb-ehci.0: new USB bus registered, assigned bus number 1
hiusb-ehci hiusb-ehci.0: irq 15, io mem 0x100b0000
hiusb-ehci hiusb-ehci.0: USB 0.0 started, EHCI 1.00
hub 1-0:1.0: USB hub found
hub 1-0:1.0: 1 port detected
ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver
hiusb-ohci hiusb-ohci.0: HIUSB OHCI
hiusb-ohci hiusb-ohci.0: new USB bus registered, assigned bus number 2
hiusb-ohci hiusb-ohci.0: irq 16, io mem 0x100a0000
hub 2-0:1.0: USB hub found
hub 2-0:1.0: 1 port detected
usbcore: registered new interface driver usbhid
usbhid: USB HID core driver
TCP cubic registered
Initializing XFRM netlink socket
NET: Registered protocol family 10
NET: Registered protocol family 17
NET: Registered protocol family 15
lib80211: common routines for IEEE802.11 drivers
Registering the dns_resolver key type
drivers/rtc/hctosys.c: unable to open rtc device (rtc0)

=== pAd = c32b4000, size = 860120 ===

<-- RTMPAllocTxRxRingMemory, Status=0
<-- RTMPAllocAdapterBlock, Status=0 RTMP_COM_IoctlHandle():pAd->BulkOutEpAddr=0x8
Endpoint(8) is for In-band Command
Endpoint(4) is for WMM0 AC0
Endpoint(5) is for WMM0 AC1
Endpoint(6) is for WMM0 AC2
Endpoint(7) is for WMM0 AC3
Endpoint(9) is for WMM1 AC0
Endpoint(84) is for Data-In
Endpoint(85) is for Command Rsp
usbcore: registered new interface driver rtusbSTA
extalarm driver init successful  ! 
Hisilicon Watchdog Timer: 0.01 initialized. default_margin=60 sec (nowayout= 0, nodeamon= 0)
encript driver init successful! 
relay driver init successful! 
reset driver init successful! 
rsignal driver init successful! 
wifikey driver init successful! 
light driver init successful  ! 
audioin driver init successful! 
Hisilicon Media Memory Zone Manager
Hisilicon UMAP device driver interface: v3.00
pa:82c00000, va:c3440000
load sys.ko for Hi3518...OK!
load viu.ko for Hi3518...OK!
ISP Mod init!
load vpss.ko ....OK!
load venc.ko for Hi3518...OK!
load group.ko for Hi3518...OK!
load chnl.ko for Hi3518...OK!
load h264e.ko for Hi3518...OK!
load jpege.ko for Hi3518...OK!
load rc.ko for Hi3518...OK!
load region.ko ....OK!
load vda.ko ....OK!
hi_i2c init is ok!
Kernel: ssp initial ok!
acodec inited!
insert audio
==== Your input Sensor type is ov9712 ====
1. LDO_CTR0(6c) = a64799, PMU_OCLEVEL c
2. LDO_CTR0(6c) = a6478d, PMU_OCLEVEL 6
FW Version:0.1.00 Build:7640
Build Time:201308222153____
ILM Length = 47000(bytes)
DLM Length = 0(bytes)
Loading FW....
RTMP_TimerListAdd: add timer obj c33347ec!
RTMP_TimerListAdd: add timer obj c3334804!
RTMP_TimerListAdd: add timer obj c333481c!
RTMP_TimerListAdd: add timer obj c33347d4!
RTMP_TimerListAdd: add timer obj c333478c!
RTMP_TimerListAdd: add timer obj c33347a4!
RTMP_TimerListAdd: add timer obj c32c9624!
RTMP_TimerListAdd: add timer obj c32b61e0!
RTMP_TimerListAdd: add timer obj c32b61fc!
RTMP_TimerListAdd: add timer obj c32c967c!
RTMP_TimerListAdd: add timer obj c32b8bb4!
RTMP_TimerListAdd: add timer obj c32b8264!
RTMP_TimerListAdd: add timer obj c32b8b98!
RTMP_TimerListAdd: add timer obj c32b8dd8!
RTMP_TimerListAdd: add timer obj c32b8bd0!
RTMP_TimerListAdd: add timer obj c32b8bec!
RTMP_TimerListAdd: add timer obj c32b8c08!
RTMP_TimerListAdd: add timer obj c32c95f4!
RTMP_TimerListAdd: add timer obj c32c9664!
RTMP_TimerListAdd: add timer obj c32b8e08!
RTMP_TimerListAdd: add timer obj c32b8e20!
RTMP_TimerListAdd: add timer obj c32b8e38!
RTMP_TimerListAdd: add timer obj c32b8e50!
wmode_band_equal(): Band Equal!
Key1Str is Invalid key length(0) or Type(0)
Key2Str is Invalid key length(0) or Type(0)
Key3Str is Invalid key length(0) or Type(0)
Key4Str is Invalid key length(0) or Type(0)
1. Phy Mode = 14
2. Phy Mode = 14
NVM is Efuse and its size =1d[1e0-1fc] 
3. Phy Mode = 14
AntCfgInit: primary/secondary ant 0/1
---> InitFrequencyCalibration
InitFrequencyCalibrationMode:Unknow mode = 3
InitFrequencyCalibration: frequency offset in the EEPROM = 97(0x61)
<--- InitFrequencyCalibration
RTMPSetPhyMode: channel is out of range, use first channel=1 
MCS Set = ff 00 00 00 00
<==== rt28xx_init, Status=0 0x1300 = 00064300 RTMPDrvOpen(1):Check if PDMA is idle! RTMPDrvOpen(2):Check if PDMA is idle! motor driver init successful! ADDRCONF(NETDEV_UP): eth0: link is not ready PHY: himii:00 - Link is Up - 100/Full ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready speed: 100, duplex: 1 killall: udhcpc: no process killed udhcpc (v1.16.1) started dhcp failed. set eth0 to default ip: killall: runarp: no process killed Sending discover... Sending select for killall: arping: no process killed Lease of obtained, lease time 86400 deleting routers route: SIOCDELRT: No such process adding dns 1 2 RTC time 2015-11-11 09:40:06 Set system time as date -s 2015.11.11-09:40:06 Wed Nov 11 09:40:06 STD 2015 umount: can't forcibly umount /mnt/mtd/ipc/tmpfs/sd: Invalid argument killall: gerddns: no process killed killall: upnp_map: no process killed killall: upnp_map: no process killed killall: ddns_update: no process killed workthread: log init succeed. libs_initnettype(Lan): succeed. macflag: 1 videocomm(0): 6 1280 720 videocomm(1): 7 640 352 videocomm(2): 8 320 176 TimeZone: 5 workthread: init ini succeed. workthread: ntpsvr init succeed. sLightInfo.s32Enable=1 workthread: reset init succeed. HI_WifiKey_Init: apmode=0 workthread: wifikey init succeed. workthread: timerreboot init succeed. ptz type: motor workthread: ptz init succeed. HI_Media_SDKInit: efreq=50,maxchn=2,resolution=31,maxresolution=6,maxwidth=1280,maxheight=720 HI_Ntp_Proc: enable=1, svr=time.windows.com, interval=1 timerreboot: entry proc,enable=0,reboot time=00:00:00 libs_GetNTPTime: 1447252818 setrtctime: succeed(2015-11-11 09:40:18). HI_Media_SDKInit: sensor: 25 extalarm: off open color(ini): f=0xffffff, b=0x000000, trans=64 ldc: enable=0, ratio=0, xoffset=0, yoffset=0 initaudio: inputtype=2, input=80, output=95, aec=0 encode(chn=0): profile=1,resolution=6,cbr=0,bitrate=2048,frame=20,iframe=40,quality=0,minq=23,maxq=38 encode(chn=0): audioenable=1, audiotype=2 encode(chn=1): profile=1,resolution=7,cbr=0,bitrate=512,frame=20,iframe=40,quality=0,minq=23,maxq=38 encode(chn=1): audioenable=1, audiotype=2 OSD(area=0): show=1, pos=0, format=0, x=976, y=0, str=YYYY-MM-DD hh:mm:ss OSD(area=1): show=1, pos=0, format=0, x=0, y=0, str=IP Camera COVER(area=0): show=0, x=0, y=0, w=160, h=160 COVER(area=1): show=0, x=1120, y=0, w=160, h=160 COVER(area=2): show=0, x=0, y=560, w=160, h=160 COVER(area=3): show=0, x=1120, y=560, w=160, h=160 audio: denoise=1 audiovol: 1 80 95 audioalarm: off 50 HI_Media_SDKInit: HI_SDK_StartEncode(chn=0) succeed. HI_Media_SDKInit: HI_SDK_StartEncode(chn=1) succeed. sdkmgr: max channel=2 HI_Media_LiveStreamInit: md_enable=0, io_enable=0 HI_Record_Stop HI_Media_RecInit: HI_Record_Start(chn=1) succeed. HI_Websvr_Init: init media succeed. HI_Websvr_Init: PBServer start. HI_Websvr_Init: webport[80], root[/mnt/mtd/ipc/web]. infra: auto. workthread: infrared init succeed. ircut: saradc_switch_value: 250 workthread: ircut init succeed. workthread: netdetect init succeed. ios_init: enable=0, interval=300 workthread: ios init succeed. workthread: search start. workthread: wdt init succeed. =================================================== ipc_server start : 2015-11-11 09:40:19 netdetect: WiFi (Enable). netdetect: netflag(Lan). wdt: default timeout: 60 sec. wdt: default timeout: 5 sec. ipc_server version: V1.3.1.15 =================================================== ircut: display switch(blackwhite -> color).
onvif: TZ: STD+5:0:0

onvif: TZInterval: -18000
onvif: login dev success! handle=22196232
onvif: login dev success! handle[alarm]=22197392
HI_Media_LiveStreamRegisterMediaLink: cntindex=0,onlinenum=0
HI_Media_LiveStreamParseStream: cntindex=0,sock=53,avchn=0,mediatype=4
onvif: start stream succeed(ret=0x0)! handle(alarm)=22197392
SendMediaDataThread(entry): cntindex=0,avchn=0,af=2,sock=53,rbhandle=8115096
netlib:threadID 1095849104 ReceiveStreamData entry
onvif: devmgmt_proc ok.
onvif: start: 2015-11-11 09:40:22
onvif: timg: productid=XXXXXXXXXXXXXX
motor: selfdet stop.

access to u-boot console:

U-Boot 2010.06 (Mar 18 2014 - 03:42:32)

Check spi flash controller v350... Found
Spi(cs1) ID: 0xC2 0x20 0x18 0xC2 0x20 0x18
Spi(cs1): Block:64KB Chip:16MB Name:"MX25L128XX"
In:    serial
Out:   serial
Err:   serial
Hit any key to stop autoboot:  1  0
hisilicon # 
hisilicon # getinfo 
getinfo - print hardware information

hisilicon # printenv 
bootcmd=sf probe 0;sf read 0x82000000 0x80000 0x280000;bootm 0x82000000
bootargs=mem=44M console=ttyAMA0,115200 root=/dev/mtdblock2 rootfstype=jffs2 mtdparts=hi_sfc:512K(boot),2560K(kernel),13M(rootfs)
ver=U-Boot 2010.06 (Mar 18 2014 - 03:42:32)

Environment size: 524/262140 bytes
hisilicon #

Kommentar verfassen

Trage deine Daten unten ein oder klicke ein Icon um dich einzuloggen:


Du kommentierst mit Deinem WordPress.com-Konto. Abmelden /  Ändern )

Google+ Foto

Du kommentierst mit Deinem Google+-Konto. Abmelden /  Ändern )


Du kommentierst mit Deinem Twitter-Konto. Abmelden /  Ändern )


Du kommentierst mit Deinem Facebook-Konto. Abmelden /  Ändern )

Verbinde mit %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.