Hello,
1.) I have purchased DM368 based IP camera from Appro.(model: Davinci DM368IPNC-IMX036)
In the beginning, I was getting camera display and the complete gui on internet explorer on the IP address 192.168.1.168
To get the gui output i am following static ip procedure as described in the document.
2.) I referred to the document Users_Guide_IPNC_DM368_IMX036.pdf . I installed the linux kernel
on the board as described in the document.But after doing that i am not getting any gui or camera display output
at ip 192.168.1.168.The printenv command output on DM368 IPNC prompt is folows:
DM368 IPNC :>printenv
bootdelay=4
baudrate=115200
bootfile="uImage"
ethaddr=00:22:19:fa:la:b4
filesize=DCE000
fileaddr=82000000
ipaddr=10.17.8.131
serverip=10.17.8.125
bootcmd=nand read 0x82000000 0x700000 0xD00000;nboot 0x80700000 0 0x500000;boot0
bootargs=mem=48M console=ttyS1,115200n8 root=/dev/ram0 rw initrd=0x82000000,16M’
stdin=serial
stdout=serial
stderr=serial
ver=U-Boot 1.3.4 (Jan 15 2010 - 17:00:58) DM368-IPNC-0.7
Environment size: 504/131068 bytes
4.) After booting the camera on with that kernel, following is the output on terminal.
Welcome to minicom 2.4
OPTIONS: I18n
Compiled on Jan 25 2010, 06:49:09.
Port /dev/ttyUSB0
Press CTRL-A Z for help on special keys
13631488 bytes read: OK
Loading from NAND 128MiB 3,3V 8-bit, offset 0x500000
Image Name: Linux-2.6.18_pro500-davinci_IPNC
Image Type: ARM Linux Kernel Image (uncompressed)
Data Size: 1818408 Bytes = 1.7 MB
Load Address: 80008000
Entry Point: 80008000
## Booting kernel from Legacy Image at 80700000 ...
Image Name: Linux-2.6.18_pro500-davinci_IPNC
Image Type: ARM Linux Kernel Image (uncompressed)
Data Size: 1818408 Bytes = 1.7 MB
Load Address: 80008000
Entry Point: 80008000
Verifying Checksum ... OK
Loading Kernel Image ... OK
OK
Starting kernel ...
Linux version 2.6.18_pro500-davinci_IPNC_DM368_2.6.0 (root@localhost.localdomai1
CPU: ARM926EJ-S [41069265] revision 5 (ARMv5TEJ), cr=00053177
Machine: DaVinci DM368 IPNC
Memory policy: ECC disabled, Data cache writeback
DaVinci DM0365 variant 0x8
PLL0: fixedrate: 24000000, commonrate: 170000000, vpssrate: 340000000
PLL0: vencrate_sd: 75555555, ddrrate: 340000000 mmcsdrate: 48571428
PLL1: armrate: 432000000, voicerate: 20571428, vencrate_hd: 27000000
CPU0: D VIVT write-back cache
CPU0: I cache: 16384 bytes, associativity 4, 32 byte lines, 128 sets
CPU0: D cache: 8192 bytes, associativity 4, 32 byte lines, 64 sets
Built 1 zonelists. Total pages: 12288
Kernel command line: mem=48M console=ttyS1,115200n8 root=/dev/ram0 rw initrd=0x’
PID hash table entries: 256 (order: 8, 1024 bytes)
Clock event device timer0_0 configured with caps set: 07
Console: colour dummy device 80x30
Dentry cache hash table entries: 8192 (order: 3, 32768 bytes)
Inode-cache hash table entries: 4096 (order: 2, 16384 bytes)
Memory: 48MB = 48MB total
Memory: 28288KB available (3117K code, 647K data, 176K init)
Security Framework v1.0.0 initialized
Capability LSM initialized
Mount-cache hash table entries: 512
CPU: Testing write buffer coherency: ok
checking if image is initramfs...it isn't (bad gzip magic numbers); looks like d
Freeing initrd memory: 16384K
NET: Registered protocol family 16
DaVinci: 104 gpio irqs
MUX: initialized GPIO20
MUX: initialized I2C_SCL
Generic PHY: Registered new driver
ch0 default output "COMPOSITE", mode "NTSC"
VPBE Encoder Initialized
SCSI subsystem initialized
NET: Registered protocol family 2
IP route cache hash table entries: 512 (order: -1, 2048 bytes)
TCP established hash table entries: 2048 (order: 1, 8192 bytes)
TCP bind hash table entries: 1024 (order: 0, 4096 bytes)
TCP: Hash tables configured (established 2048 bind 1024)
TCP reno registered
***davinci_spi_board_init()!<6>
***davinci_spi_board_init_End(0)!<5>VFS: Disk quotas dquot_6.5.1
Dquot-cache hash table entries: 1024 (order 0, 4096 bytes)
squashfs: version 3.1 (2006/08/19) Phillip Lougher
JFFS2 version 2.2. (NAND) (C) 2001-2006 Red Hat, Inc.
yaffs Jun 30 2011 15:45:25 Installing.
SGI XFS with no debug enabled
Initializing Cryptographic API
io scheduler noop registered
io scheduler anticipatory registered (default)
LTT : ltt-facilities init
LTT : ltt-facility-core init in kernel
DAVINCI-WDT: DaVinci Watchdog Timer: heartbeat 60 sec
Serial: 8250/16550 driver $Revision: 1.90 $ 2 ports, IRQ sharing disabled
serial8250.0: ttyS0 at MMIO map 0x1c20000 mem 0xfbc20000 (irq = 40) is a 16550A
serial8250.0: ttyS1 at MMIO map 0x1d06000 mem 0xfbd06000 (irq = 41) is a 16550A
RAMDISK driver initialized: 1 RAM disks of 32768K size 1024 blocksize
Linux video capture interface: v2.00
Trying to register davinci display video device.
layer=c14dea00,layer->video_dev=c14deb60
Trying to register davinci display video device.
layer=c14de800,layer->video_dev=c14de960
davinci_init:DaVinci V4L2 Display Driver V1.0 loaded
i2c /dev entries driver
nand_davinci nand_davinci.0: Using 4-bit hardware ECC
NAND device: Manufacturer ID: 0xec, Chip ID: 0xf1 (Samsung NAND 128MiB 3,3V 8-b)
Creating 7 MTD partitions on "nand_davinci.0":
0x00000000-0x00300000 : "bootloader"
0x00300000-0x00500000 : "params"
0x00500000-0x00700000 : "kernel"
0x00700000-0x02700000 : "filesystem"
0x02700000-0x02900000 : "data1"
0x02900000-0x02d00000 : "Calibration"
0x02d00000-0x08000000 : "data2"
nand_davinci nand_davinci.0: hardware revision: 2.3
MUX: initialized SPI0_SCLK
MUX: initialized SPI0_SDO)
dm_spi.0: davinci SPI Controller driver at 0xc3866000 (irq = 42) use_dma=0
rtc_davinci_dm365 rtc_davinci_dm365.0: rtc intf: proc
rtc_davinci_dm365 rtc_davinci_dm365.0: rtc intf: dev (254:0)
rtc_davinci_dm365 rtc_davinci_dm365.0: rtc core: registered rtc_davinci_dm365 a0
Advanced Linux Sound Architecture Driver Version 1.0.12rc1 (Thu Jun 22 13:55:50.
ASoC version 0.13.1
CQ0093 Voice Codec 0.1
asoc: cq93vc <-> davinci-vcif mapping ok
ALSA device list:
#0: On-chip voice codec (cq93vc)
IPv4 over IPv4 tunneling driver
TCP bic registered
NET: Registered protocol family 1
NET: Registered protocol family 17
rtc_davinci_dm365 rtc_davinci_dm365.0: setting the system clock to 2000-01-01 0)
Time: timer0_1 clocksource has been installed.
Clock event device timer0_0 configured with caps set: 08
Switched to high resolution mode on CPU 0
IP-Config: No network devices available.
RAMDISK: cramfs filesystem found at block 0
RAMDISK: Loading 14136KiB [1 disk] into ram disk... done.
VFS: Mounted root (cramfs filesystem) readonly.
Freeing init memory: 176K
INIT: version 2.86 booting
0
mkdir: Cannot create directory `/dev/.test': Read-only file system
Starting the hotplug events dispatcher: udevd.
Synthesizing the initial hotplug events...done.
Waiting for /dev to be fully populated...done.
0
CSL: Module install successful, device major num = 253
CSL: Module version 0.10.00, built on Jun 30 2011 15:48:54
I2C: Module install successful, device major num = 252
DMA: Module install successful, device major num = 251
DRV: Module install successful
DRV: Module built on Jun 30 2011 15:48:55
DRV: EDMACC.QUEPRI = 00000777
DRV: SYSTEM.MSTPRI0 = 00440022
DRV: SYSTEM.MSTPRI1 = 00000244
DRV: ISP.BCR = 00000002
DRV: SYSTEM.MISC = 00000391
CMEMK module: built on Jun 30 2011 at 15:48:36
Reference Linux version 2.6.18
File /home/user/workdir/dvsdk_2_10_01_18_v2.6/linuxutils_2_24_03/packages/ti/c
allocated heap buffer 0xc4000000 of size 0x5000000
CMEM Range Overlaps Kernel Physical - allowing overlap
CMEM phys_start (0x1000) overlaps kernel (0x80000000 -> 0x83000000)
cmemk initialized
EDMAK module: built on Jun 30 2011 at 15:48:37
Reference Linux version 2.6.18
File /home/user/workdir/dvsdk_2_10_01_18_v2.6/linuxutils_2_24_03/packages/ti/c
IRQK module: built on Jun 30 2011 at 15:48:38
Reference Linux version 2.6.18
File /home/user/workdir/dvsdk_2_10_01_18_v2.6/linuxutils_2_24_03/packages/ti/c
irqk initialized
Creat queue id:0
queue id:0
FileMngThread created
Creat queue id:32769
queue id:32769
AlramThread created
Share memory init success
queue id:32769
IPNC_DM368_2.6.0 (root@localhost.localdomain) (gcc version 4.2.
queue id:65538
Creat queue id:65538
queue id:65538
Creat queue id:98307
queue id:98307
Starting mounting local filesystems:
CPU is DM368
./av_server.out DM368 NTSC APPRO2A AEWB 1080P H264 5000000 VBR AUTO MENUOFF &
Check_device_version : DEVICE VER = 1 !!
CPU CurrentStatus is = 1
ApproDrvInit: 7
Creat queue id:131076
queue id:131076
mount none on /dev/shm type tmpfs (rw,size=5M)
none on /var/run type tmpfs (rw)
none on /tmp type tmpfs (rw,sync)
AVSERVER UI: Initializing.
Setting up networking ...rm: unable to remove `/etc/network/run': Read-only film
Starting hotplug subsystem:
CLK Hz,
ARM Hz = 432000000
DDR Hz = 340000000
VPSS Hz = 340000000
IMCOP Hz = 340000000
DRV LDC: GetConfig 0003 0x0
[OSA_FILE ] Reading file [/mnt/nand/IMG_Paramset.bin] ... ERROR
IMAGE TUNE: Paramset File is not available..... Setting DEFAULT parameter
pci
CONFIGURING AVSERVER FOR DM368 .....
queue id:65538
############OPEN###########
==========>>>> Start X,Y = 52,18
Sensor Mode Info,
Width = 2024
Height = 1124
fps = 24
Bin Enable = 0
Sensor Frame Timing Info,
fps = 24
t_frame (ns) = 41666668.000000
t_row (ns) = 30458.333984
t_pclk (ns) = 10.416667
W = 2024
H = 1124
SW = 1406
SD = 0
HB = 450
VB = 243
HBmin = 450
VBmin = 9
f_pclk = 96000000
shutterOverhead (ns) = 4437.500000
col_size = 2024
row_size = 1124
col_bin = 0
row_bin = 0
col_start = 88
row_start = 348
pll_M = 16
pll_N = 1
pll_DIV = 1
############reset###########
pci [success]
usb
############SPI OPEN###########
spi mode: 16
bits per word: 8
max speed: 12000000 Hz (12000 KHz)
############SET REG###########
############OPEN END###########
================> 512, 0, 1735
APPRO Setting Applied
DavinciDisplay DavinciDisplay.1: Before finishing with S_FMT:
layer.pix_fmt.bytesperline = 640,
layer.pix_fmt.width = 640,
layer.pix_fmt.height = 480,
layer.pix_fmt.sizeimage =460800
DavinciDisplay DavinciDisplay.1: pixfmt->width = 640,
layer->layer_info.config.line_length= 640
FR : 0 users registered from exsiting face album
IPNC_DM368_2.6.0 (root@localhost.localdomain) (gcc version 4.2.
IPNC AUTO_IRIS = 1 (0:Manual,1:Auto)#####################
APPRO 2A Created
XXXXX IAE_CMD_SET_CONFIG XXXXX
222 Aew_Cal_LoadParam: dfc check sum success
(nand offset: 0x00500010, size: 0x0000181c, checksum: 0x000107d5)
################DFC ret=0##################
usb [success]
isapnp
isapnp [success]
ide
QualityMode:(Index:0)7
ide [success]
Simple mixer control 'PGA',0
Capabilities: cvolume
Capture channels: Mono
Limits: Capture 0 - 3
Mono: Capture 2 [67%]
Simple mixer control 'Mono DAC',0
Capabilities: pvolume pvolume-joined
Playback channels: Mono
Limits: Playback 0 - 63
Mono: Playback 47 [75%]
SystemInit success
Schedule manager init success
input
input [success]
scsi
scsi [success]
***************************************
APPROPHO AEW TRIAL VERSION(V2.01) !!!
APPROPHO AEW DATE LINE 2011/12
***************************************
XXXXX DRV_imgsSetAgain() Error(0)
~~~ fn: Aew_Cal_LoadAutoIrisParam, start ~~~
~~~ fn: Aew_Cal_LoadAutoIrisParam, nand_addr 0x340000 ~~~
!!! FAIL, Checksum error, Aew_Cal_LoadAutoIrisParam, tmp_chksum 1020, iris_chk
!!!!!! FAIL, autoiris default value 0 !!!!!!
Enable APPRO_DBG Function @@@@@@@@@@@@@@@@@@@@@
--->Chip init PASS
Mode:0,F:0,minST=0,(Gain:7),Q:-1
done.
ND Init
ND:Day
Starting portmap daemon: portmap.
Starting internet superserver: inetd.
io scheduler deadline registered
io scheduler cfq registered
TI DaVinci EMAC: kernel boot params Ethernet address: 00:0C:0C:A0:00:24
sbulla: unknown partition table
Installing knfsd (copyright (C) 1996 okir@monad.swb.de).
loop: loaded (max 8 devices)
tun: Universal TUN/TAP device driver, 1.6
tun: (C) 1999-2004 Max Krasnyansky <maxk@qualcomm.com>
CSLIP: code copyright 1989 Regents of the University of California
netconsole: not configured, aborting
PPP generic driver version 2.4.2
PPP Deflate Compression module registered
Davinci EMAC MII Bus: probed
MAC address is 00:0C:0C:A0:00:24
TI DaVinci EMAC Linux version updated 4.0
davinci-mmc davinci-mmc.0: Supporting 4-bit mode
davinci-mmc davinci-mmc.0: Using DMA mode
usbcore: registered new driver usbfs
usbcore: registered new driver hub
musb_hdrc: version 6.0, cppi-dma, peripheral, debug=0
musb_hdrc musb_hdrc: No DMA interrupt line
musb_hdrc: USB Peripheral mode controller at c38fa000 using DMA, IRQ 12
Loading iSCSI transport class v1.1-646.<5>iscsi: registered transport (tcp)
sbulla: unknown partition table
mkdosfs 3.0.6 (04 Oct 2009)
unable to get drive geometry, using default 255/63
/dev/sbulla has 255 heads and 63 sectors per track,
logical sector size is 512,
using 0xf8 media descriptor, with 1024 sectors;
file system has 2 12-bit FATs and 4 sectors per cluster.
FAT size is 1 sector, and provides 247 clusters.
Root directory contains 512 slots.
Volume ID is 7ea6627b, no volume label.
queue id:0
umount: /mnt/mmc: not mounted
killall: dhcpcd: no process killed
rm: cannot remove `/var/run/dhcpcd-eth0.pid': No such file or directory
Error -3 while decompressing!
net_search_gatewc03c2460(-14446997)->c1b82000(4096)
ay:eth0, 1A8C0, 0, 1
dns=192.168.1.1
net_search_gateway:eth0, 1A8C0, 0, 1
net_search_gateway:eth0, 0, FE01A8C0, 3
dns=192.168.1.1
ERROR: Module g_file_storage does not exist in /proc/modules
g_file_storage gadget: File-backed Storage Gadget, version: 28 November 2005
g_file_storage gadget: Number of LUNs=1
g_file_storage gadget-lun0: ro=0, file: /dev/sbulla
system_server/541[CPU#0]: BUG in local_bh_enable at kernel/softirq.c:196
ApproDrvInit: 9
queue id:131076
Initializing...
...done initializing
Play this stream using the URL:
rtsp://192.168.1.168:8556/PSIA/Streaming/channels/2?videoCodecType=H.264
ApproDrvInit: 8
queue id:131076
Initializing...
...done initializing
Play this stream using the URL:
rtsp://192.168.1.168:8555/PSIA/Streaming/channels/0?videoCodecType=MJPEG
ApproDrvInit: 2
queue id:131076
Initializing...
ApproDrvInit: 6
queue id:131076
Initializing...
...done initializing
Play this stream using the URL:
rtsp://192.168.1.168:8554/PSIA/Streaming/channels/1?videoCodecType=MPEG4
ApproDrvInit: 10
queue id:131076
Initializing...
...done initializing
Play this stream using the URL:
rtsp://192.168.1.168:8557/PSIA/Streaming/channels/2?videoCodecType=H.264
...done initializing
Play this stream using the URL:
rtsp://192.168.1.168:8553/PSIA/Streaming/channels/1?videoCodecType=MPEG4
ApproDrvInit: 3
queue id:131076
queue id:0
queue id:32769
[01/Jan/2000:02:35:24 +0000] boa: server version Boa/0.94.13
[01/Jan/2000:02:35:24 +0000] boa: server built Jun 30 2011 at 15:50:11.
[01/Jan/2000:02:35:24 +0000] boa: starting server pid=809, port 80
queue id:0
Error -3 while decompressing!
c03c2ef8(-14433325)->c0ec9000(4096)
UDPString=uuid:Upnp-TVEmulator-1_0-00_0014885974</UDN>
Error -3 while decompressing!
Upnp port is 0
c03c2ed4(-14433289)->c0e3f000(4096)
UPnP Initialized OK ip=192.168.1.168, port=49152
desc_doc_url = http://192.168.1.168/tvdevicedesc.xml
UpnpRegisterRootDevice failure.
error code = -108
device advertisement failure.
INIT: Entering runlevel: 3
MontaVista(R) Linux(R) Professional Edition 5.0.0 (0702774)
DM368_IPNC login: root
Welcome to MontaVista(R) Linux(R) Professional Edition 5.0.0 (0702774).
login[837]: root login on `console'
#
Module | Avg Time/Frame | Frame-rate | Total time | Total Frames |
CAPTURE | 33.27 | 30.06 | 29977 | 901 |
ENCODE0 | 32.56 | 30.71 | 29307 | 900 |
STREAM | 0.28 | 3543.31 | 254 | 900 |
OSD0 | 0.05 | 21195.12 | 41 | 869 |
AEWB | 3.96 | 252.24 | 3342 | 843 |
Also, I would like to know few more things as follows,
a.) As of now, I am getting good image quality on the camera.But, the GUI has "eval version"
written on the video stream. How long does the eval version last for, How would be the image
quality after the evaluation period is over
b.) How can we improve the image quality once the eval period is over
How can we develop our own image processing algorithms on the camera
c.) How can we integrate those algorithms on the DM368 board and software package which we have got from Appro. What kind of environment setup is
required for that ??
d.) There's a "Tuning Tool" provided with the development kit.How can we use that tool to improve image quality on the current set up.Is there any document
which explain how we can make use of that tool to tune image quality.