Hi,
so I have just successfully installed OpenIPC on a chinese HI3516CV100 + IMX322. There are two problems that I have sort of found a solution to already but don't know how to make it work on boot.
Firstly, the IP101GR chip connection issues.
To fix this I need to add setenv extras hieth.mdioifu=0 hieth.mdioifd=0 hieth.phyaddru=1 hieth.phyaddrd=2 to U-Boot on startup and then run run bootcmd. After that I could access the camera no problem. The thing is that I need to do this every time the camera boots. I know that there's probably a simple way to make this run automatically, but I'm quite new to this ;).
I found this here.
Secondly, majestic issues.
I don't expect much from this camera - just a simple rtsp stream. However, after booting the stream cannot be accessed. When looking at the majestic logs in the WebUI, I get this:
majestic[761]: Majestic Lite for HiSilicon, version master+67ed493, built on 2025-05-09
majestic[761]: Detected Hisilicon Watchdog
majestic[761]: Watchdog timeout set to 300 seconds
majestic[761]: Set server path: /var/www
majestic[761]: HTTP server started on :::80
majestic[761]: Loading main configuration: /etc/majestic.yaml
majestic[761]: SENSOR=imx323
majestic[761]: matched sensor config: imx323_spi_dc_1080p.ini
majestic[761]: Using /etc/sensors/imx323_spi_dc_1080p.ini sensor configuration file
majestic[761]: App was built with MPP version: Hi3518_MPP_V1.0.B.0.
majestic[761]: Current MPP version: HI_VERSION=Hi3518_MPP_V1.0.B.0
majestic[761]: sensor imx222
majestic[761]: dev [1920x1080]@200x20 30fps, RGGB
majestic[761]: trying to load /usr/lib/sensors/libsns_imx222_spi_dc.so
majestic[761]: Free MMZ mem before allocation: 97404KB
majestic[761]: VB configuration:
majestic[761]: [0]: 3133440 x 10
majestic[761]: [2]: 608256 x 1
majestic[761]: Free MMZ mem after allocation: 66188KB
majestic[761]: Sensor driver loaded
majestic[761]: -------Sony IMX122 Sensor Initial OK!-------
majestic[761]: h264 1920x1080@20fps 4096kbit 20gop
majestic[761]: Loading IQ profile /etc/sensors/iq/default.ini
majestic[761]: venc_chn: 0, vpss_grp: 0, vpss_chn: 0
majestic[761]: venc took 9184KB of MMZ [3037]
majestic[761]: h264 704x576@15fps 1024kbit 15gop
majestic[761]: venc_chn: 1, vpss_grp: 0, vpss_chn: 1
majestic[761]: venc took 1808KB of MMZ [594]
majestic[761]: MJPEG 1920x1080@5fps 50q
majestic[761]: venc_chn: 2, vpss_grp: 0, vpss_chn: 2
majestic[761]: mpeg_enc took 2056KB of MMZ [2040]
majestic[761]: HiSilicon SDK started
majestic[761]: Free MMZ mem finally: 44180KB
majestic[761]: RTSP server started on port 554
majestic[761]: Timeout from venc channel 0
majestic[761]: Timeout from venc channel 1
majestic[761]: Timeout from venc channel 0
majestic[761]: Timeout from venc channel 1
majestic[761]: Timeout from venc channel 0
majestic[761]: Timeout from venc channel 1
majestic[761]: Timeout from venc channel 0
majestic[761]: Timeout from venc channel 1
majestic[761]: Timeout from venc channel 0
majestic[761]: Timeout from venc channel 1
majestic[761]: Timeout from venc channel 0
majestic[761]: Timeout from venc channel 1
majestic[761]: Timeout from venc channel 0
majestic[761]: Timeout from venc channel 1
majestic[761]: Timeout from venc channel 0
majestic[761]: Timeout from venc channel 1
majestic[761]: Timeout from venc channel 0
majestic[761]: Timeout from venc channel 1
majestic[761]: Timeout from venc channel 0
majestic[761]: Timeout from venc channel 1
majestic[761]: Timeout from venc channel 0
majestic[761]: Timeout from venc channel 1
majestic[761]: Timeout from venc channel 0
majestic[761]: Timeout from venc channel 1
majestic[761]: Timeout from venc channel 0
majestic[761]: Timeout from venc channel 1
majestic[761]: Timeout from venc channel 0
majestic[761]: Timeout from venc channel 1
majestic[761]: Timeout from venc channel 0
majestic[761]: Timeout from venc channel 1
majestic[761]: Timeout from venc channel 0
majestic[761]: Timeout from venc channel 1
majestic[761]: Timeout from venc channel 0
majestic[761]: Timeout from venc channel 1
majestic[761]: UDP RTSP SETUP done, stream_id=0 from 10.0.0.201:61430
majestic[761]: Timeout from venc channel 0
majestic[761]: Timeout from venc channel 1
majestic[761]: Timeout from venc channel 0
majestic[761]: Timeout from venc channel 1
majestic[761]: Timeout from venc channel 0
majestic[761]: Timeout from venc channel 1
majestic[761]: Timeout from venc channel 0
majestic[761]: Timeout from venc channel 1
majestic[761]: Timeout from venc channel 0
majestic[761]: Timeout from venc channel 1
majestic[761]: Timeout from venc channel 0
majestic[761]: Timeout from venc channel 1
majestic[761]: RTSP connection closed.
I can fix this simply by clicking restart majestic. After that everything works and I get this log:
Loading main configuration: /etc/majestic.yaml
majestic[761]: SENSOR=imx323
majestic[761]: matched sensor config: imx323_spi_dc_1080p.ini
majestic[761]: Using /etc/sensors/imx323_spi_dc_1080p.ini sensor configuration file
majestic[761]: App was built with MPP version: Hi3518_MPP_V1.0.B.0.
majestic[761]: Current MPP version: HI_VERSION=Hi3518_MPP_V1.0.B.0
majestic[761]: sensor imx222
majestic[761]: dev [1920x1080]@200x20 30fps, RGGB
majestic[761]: trying to load /usr/lib/sensors/libsns_imx222_spi_dc.so
majestic[761]: Free MMZ mem before allocation: 97404KB
majestic[761]: VB configuration:
majestic[761]: [0]: 3133440 x 10
majestic[761]: [2]: 608256 x 1
majestic[761]: Free MMZ mem after allocation: 66188KB
majestic[761]: Sensor driver loaded
majestic[761]: -------Sony IMX122 Sensor Initial OK!-------
majestic[761]: Loading IQ profile /etc/sensors/iq/default.ini
majestic[761]: h264 1920x1080@30fps 4096kbit 30gop
majestic[761]: venc_chn: 0, vpss_grp: 0, vpss_chn: 0
majestic[761]: venc took 9184KB of MMZ [3037]
majestic[761]: h264 704x576@15fps 1024kbit 15gop
majestic[761]: venc_chn: 1, vpss_grp: 0, vpss_chn: 1
majestic[761]: venc took 1808KB of MMZ [594]
majestic[761]: MJPEG 1920x1080@5fps 50q
majestic[761]: venc_chn: 2, vpss_grp: 0, vpss_chn: 2
majestic[761]: mpeg_enc took 2056KB of MMZ [2040]
majestic[761]: HiSilicon SDK started
majestic[761]: Free MMZ mem finally: 44180KB
majestic[761]: RTSP server started on port 554
majestic[761]: RTSP chn 0 sps_len 21
majestic[761]: RTSP chn 0 pps_len 3
majestic[761]: RTSP chn 0 profile_level_id 002a95
majestic[761]: UDP RTSP SETUP done, stream_id=0 from 10.0.0.201:61646
and all the streams work! This is also a matter of automating on boot. I suspect the issue is that majestic is getting initialized to early at boot.
Some technical info from the status page:
Device Status
Hardware Processor: hi3516cv100
Family: hi3516cv100
Sensor: imx323 (this is what is detected by OpenIPC - the actual sensor is the IMX322)
Flash: 16 MB
Firmware Version: 2.5.05.16-lite
Build: master+134387d, 2025-05-16
Majestic: master+67ed493, 2025-05-09
U-Boot: U-Boot 2010.06 (Nov 14 2022 - 19:25:49)
Filesystem Type Size Used Available Use% Mounted on
/dev/root squashfs 4.6M 4.6M 0 100% /rom
devtmpfs devtmpfs 13.9M 0 13.9M 0% /dev
/dev/mtdblock4 jffs2 2.7M 220.0K 2.5M 8% /overlay
overlayfs overlayfs 2.7M 220.0K 2.5M 8% /
tmpfs tmpfs 14.0M 0 14.0M 0% /dev/shm
tmpfs tmpfs 14.0M 24.0K 14.0M 0% /tmp
tmpfs tmpfs 14.0M 32.0K 14.0M 0% /run
total used free shared buff/cache available
Mem: 28.0M 12.7M 2.0M 0 13.3M 0
-/+ buffers/cache: 12.7M 15.3M
Swap: 0 0 0
So those are the issues I'm facing. I'd also like to quickly say how cool this project is - I guess through more optimized code I could go from ~21fps on stock firmware to a smooth 30fps on OpenIPC! Not to mention the security benefits...
Thanks in advance
Hi,
so I have just successfully installed OpenIPC on a chinese HI3516CV100 + IMX322. There are two problems that I have sort of found a solution to already but don't know how to make it work on boot.
Firstly, the IP101GR chip connection issues.
To fix this I need to add
setenv extras hieth.mdioifu=0 hieth.mdioifd=0 hieth.phyaddru=1 hieth.phyaddrd=2to U-Boot on startup and then runrun bootcmd. After that I could access the camera no problem. The thing is that I need to do this every time the camera boots. I know that there's probably a simple way to make this run automatically, but I'm quite new to this ;).I found this here.
Secondly, majestic issues.
I don't expect much from this camera - just a simple rtsp stream. However, after booting the stream cannot be accessed. When looking at the majestic logs in the WebUI, I get this:
I can fix this simply by clicking
restart majestic. After that everything works and I get this log:and all the streams work! This is also a matter of automating on boot. I suspect the issue is that majestic is getting initialized to early at boot.
Some technical info from the status page:
So those are the issues I'm facing. I'd also like to quickly say how cool this project is - I guess through more optimized code I could go from ~21fps on stock firmware to a smooth 30fps on OpenIPC! Not to mention the security benefits...
Thanks in advance