Re-organized the forum to more cleanly delineate the development section, as the end user support side appears to have taken a life of its own!

Author Topic: Is it possible to use one camera's firmware on a different camera?  (Read 3586 times)

  • No avatar
  • *
December 13, 2016, 08:57:04 am
I have a few cheap HI3518 based cameras I've collected over the past few months.  Of these, one was purchased from microcenter and has a Jovision firmware derivative.  It has some features I like such as http based frame capture to JPG.  Another is a cheap Chinese ebay purchase, but has nearly identical hardware.  I'm able to get into the uboot menu of both and have managed to hack up some romfs images (with my own passwords, i.e.), but I'm wondering if I can flash one firmware onto another camera.

Both cameras have different size MTD partitions, but this is all just one hunk of MTD flash right?  The kernel command line tells it where to mark partition boundaries, right?  If I were to reset the uboot environment on one to match the other, then flash the partitions accordingly, would this work?  I'm still a bit afraid to try this just yet, but I guess at worst, I'm out a $16 ebay camera.

  • No avatar
  • *
December 15, 2016, 08:27:57 am
Well, to follow up on my own post, I went ahead and gave it a try.  I copied off all of the mtd partitions from the jovision camera to NFS share via dd.

Apparently there's something different about the ethernet interface on these two cameras.  Once all the firmware was copied over using tftp from uboot, I rebooted and found that I no longer had network connectivity.  This triggered some sort of boot loop and I had to regain control at the uboot prompt via serial interface.  There was no network connectivity from uboot either.  I thought I was hosed, but I noticed on the uboot menu: "loady   - load binary file over serial line (ymodem mode)" I gave it a shot and managed to reload all my original firmware back to the cheap ebay camera and it seems no worse for the wear.

Next up, I'll try and use the linux kernel from the ebay camera (since it likely has the ethernet driver) in a custom partition and see where that takes me.  I suppose I could use the original uboot as well since it seems to be compiled to use the ethernet.