OpenIPC / firmware

Alternative IP Camera firmware from an open community
https://openipc.org
MIT License
1.16k stars 226 forks source link

HI3516CV100 IMX291 support #669

Open DaxonBaggus opened 1 year ago

DaxonBaggus commented 1 year ago

XiongMai made an IPC module with HI3516CV100 SoC and IMX291 sensor.

Strangely the IMX291 is supported on many other HI3516 chips, but not on this one. Could something be added or changed to allow this combination to work?

XM product ID: IPG-54H20PL-S PCB Marking: BLK18C-0090-38X38_S Sensor: IMX291 FM version: V4.02.R11.00002532.10010.242800.00000 SoC: HI3516CV100

I have around 20 cameras I'm trying to refurbish with OpenIPC so maybe I can help with a donation?

IMG_20230313_222235 IMG_20230313_222259

widgetii commented 1 year ago

IMX291 sensor driver should be written from scratch for this model. It will take 4-6 weeks of full-time reverse-engineer work with close interaction with hardware.

I doubt that it's even reasonable judging you can replace all boards to modern version

DaxonBaggus commented 1 year ago

Thanks for your honest answer. Then sadly I will have to look for a different solution until someone feels the need to go and make this happen.

flyrouter commented 1 year ago

I wrote you some questions in PM Telegram, please post as you get a chance.

flyrouter commented 1 year ago

I made a small crutch with imx138 since we don't have a driver. Not sure if it will work well but it breathes nonetheless... ;) https://openipc.org/snapshots/368807

In the future, if you have such boards, you need to do a study on the original firmware to determine the sensor. But I'm not sure it will be worth the gamble.

Solution - one commit for sensor init and set old integrated sensor from Linux fw_setenv sensor imx138_spi

You can of course do a symlink, if the original driver is not found and then will be the same name, but it would not be quite right and ugly.

DaxonBaggus commented 1 year ago

IPG-54H20PL-S stock firmwares 2532.zip

Many thanks for the help so far!

Attached all the versions of the stock firmware for this board. Maybe this contains a driver somewhere?

The camera briefly worked with the imx138 change, but after changing a couple of settings in the web interface it is now broken, and I have not been able to get it do display an image again.

The camera I have here was flashed to OpenIPC without soldering. I used the firmware from https://github.com/OpenIPC/coupler/releases/download/latest/00002532_OpenIPC_53H20L_S39.bin

widgetii commented 1 year ago

Sensor driver is compiled into Sofia binary statically. There is no way to extract and use it

DaxonBaggus commented 1 year ago

Ah ok, I think I understand now, you are looking for something like this? https://github.com/EliasKotlyar/Xiaomi-Dafang-Software/blob/master/drivers/sensors/imx291/imx291.c

Still thinking about putting a reward on this, it would be awesome to get this IPC board working.

widgetii commented 1 year ago

No, this is driver for Ingenic platform (the code is absolutely useless for HiSilicon)

mpissarello commented 1 year ago

Same issue as #204 At November 2022, my camera was half-working, see my comment, I need to try with the latest OpenIPC firmware.