Ancient Crosstour CT9500 Action Camera Hardware/Firmware Mods

philaphlous

Member
Joined
Jun 24, 2020
Messages
33
Reaction score
25
Location
Washington, District Of Columbia
Country
United States
Hey all,

I have renewed interest in my CT9500 crosstour action camera that I recently destroyed and now have a new one coming that should be here next week... I ripped off the shutter button and solder pad on the board so yea...its toast. So I have a new camera coming via ebay thankfully. It's super difficult to find the CT9500 and I'm not willing to look at other models. I've also invested in an Akaso V50x which should be coming and possibly a Campark V30. The common thing in all these cameras is they supposedly all use the Hi3559V200 chipset and I believe IMX458 image sensor. YEARS ago I attempted to purchase new M12 lenses to eliminate the fisheye/distortion with no success. Well apparently there's a few more companies that have come out since then and they now have some pretty good lenses.

Step 1: Lens Mod

I did a teardown back in 2020 and attempted to add some thermal pads to help dissipate heat from the Hi3559v200 chipset...it didn't work real well as the heat would just go to the screen. I have a copper sheet that I'm planning on creating a heatspreader for.
IMG_8304.webp

IMG_E8296.webp


Both companies I've been able to find are on Digikey which gives me great confidence in their quality and shipping. Yes, they're more expensive but well all know you get what you pay for. The two companies I've found are Commonlands and EDATEC. EDATEC is chinese so obviously a much cheaper option. I went with 2 different lenses to test out from them first. I got the 2.8mm wide angle - https://edatec.cn/docs/m12-lens/230280-08/ds/ and I also got the 3.56mm lens https://edatec.cn/docs/m12-lens/230356-08/ds/ I'm thinking the image sensor is just too small to properly render wide angle well and that should be more reserved for bigger camera sensors. Awhile back I was only looking for lenses on aliexpress and ebay... I had no idea they existed elsewhere at other more reputable places. In addition, I didn't really understand focal length, F-stop, crop factor, etc. Now I do, so armed with that knowledge, I've been able to make much better purchase decisions, although the quality is still in question for these products, I now know what I'm getting and how that'll impact the image quality. the 2.8mm lens should be ~20mm focal length and the 3.56mm should be around 26mm. A regular iphone camera is around the 26mm FL so this should give me a reasonably decent image quality. I'm afraid to go any longer in FL as it'll start to impact my DOF and what's in/out of focus. Choosing a wide enough lens will ensure everything is in focus and it should be pretty easy to do manually focusing the M12 lens.

After this thought, backup a few years, right around covid times, this is when I picked up the CT9500 when it was still on amazon before they got kicked off. I was just starting to get into cameras. I picked up my first "real" camera, a Sony A6000. It was fantastic, I ended up getting the Sigma F1.4 trio. I started doing professional photography work, obtained my own business and now do professional work on the side of my full-time job. I sold that camera years ago and upgraded to what is referred to as possibly having the best full frame sensor available, the Sony A7RIII. I have a ton of prime lenses now too! 18mm, 28mm, 35mm, 50mm, 85mm, and 135mm.


Step 2: Firmware bitrate mod

I can't believe I'm saying this....but I've since used chatGPT to learn linux/python to extract firmware files I received from the manufacture back in 2020 when I asked for an updated firmware version. It's actually pretty amazing just copy/pasting into chatGPT and having it walk you through the code. I knew nothing about extracting firmware files and was quite intimidated by it...however, after a few days of work, I believe I have finally arrived at where I can modify the bitrates for video quality.
Step 1 will be to verify the bitrates for each video spec and compare that with the rates I'm seeing within the *.ini files from the extracted jffs2 file. This is what the file structure looks like:
Screenshot 2025-06-17 130342.webp


I was first concentrating on extracting the media_app_zip.bin file. I did find some bitrate information in there, but nothing as it related to video parameters... it has audio codecs and audio bitrate though.... but I have since spent my time extracting the appfs.jffs2 file instead. After some trial and error getting jefferson to work within python3 I was able to get all the files extracted. The crazy nuts thing is the *.ini files are all plain text and I can easily modify them using notepad, notepad++... crazy right? So this is where I've arrived right now, I don't know how I'll be able to repackage the jffs2 file but that'll hopefully come later. What I have found is the following information contained within just one of the .ini files:

; ============= VideoMode Specified Configure =============
[common]
mediamode = "HI_PDT_MEDIAMODE_4K2K_30_REC"

; ============= VB Configure =============
[vb]
max_poolcnt = "4"
[vb.pool.0]
blk_size = "12493440"; 3840*2160*1.5+2160*24
blk_count = "8"
[vb.pool.1]
blk_size = "8709120";
blk_count = "3"
[vb.pool.2]
blk_size = "7962624"; align(3840*DISCropRatio,16)*align(2160*DISCropRatio,16)*1.5, default😀ISCropRatio=0.8; 3072*2160*1.5
blk_count = "2"
[vb.pool.3]
blk_size = "898560"; 1024*576*1.5+576*24
blk_count = "7"

; ============= Vcapture Configure =============
[vcap.0.sensor]
res_width = "3840"
res_height = "2160"
wdr_mode = "WDR_MODE_NONE";
max_framerate = "30"
sensor_mode = "0"
[vcap.0.device]
res_width = "3840"
res_height = "2160"
wdr_mode = "WDR_MODE_NONE";
[vcap.0.pipe.0]
src_framerate = "30"
dst_framerate = "30"
vi_vpss_mode = "VI_ONLINE_VPSS_OFFLINE"
[vcap.0.pipe.0.scene]
linear_param_idx = "0"
[vcap.0.pipe.0.isp]
res_width = "3840"
res_height = "2160"
framerate = "30"
[vcap.0.pipe.0.chn.0]
dst_res_width = "3840"
dst_res_height = "2160"
src_framerate = "30"
dst_framerate = "30"

; ============= Vprocessor Configure =============
[vpss.0]
max_width = "3840"
max_height = "2160"
src_framerate = "30"
dst_framerate = "30"

; ============= Vencoder Configure =============
[venc.0]
bufsize = "20971520 "; bytes
res_width = "3840"
res_height = "2160"
src_framerate = "30"
dst_framerate = "30"
gop = "30"
h265bitrate = "30720"; kbps 45Mbps
h264bitrate = "51200"; kbps 54Mbps

stat_time = "2"; second
mpf_size_width = "0"
mpf_size_height = "0"
[venc.1]
bufsize = "819200 "; bytes
res_width = "1024"
res_height = "576"
src_framerate = "30"
dst_framerate = "30"
gop = "30"
h265bitrate = "2048"; kbps
h264bitrate = "2048"
stat_time = "2"; second
mpf_size_width = "0"
mpf_size_height = "0"
[venc.2]
bufsize = "12441600"; bytes
res_width = "3840"
res_height = "2160"
src_framerate = "30"
dst_framerate = "10"
gop = "10"
h265bitrate = "0"; kbps
h264bitrate = "0"
stat_time = "2"; second
mpf_size_width = "960"
mpf_size_height = "540"
[venc.3]
bufsize = "32768"; bytes
res_width = "160"
res_height = "120"
src_framerate = "30"
dst_framerate = "30"
gop = "0"
h265bitrate = "0"; Kbps
h264bitrate = "0"
stat_time = "2"; second
mpf_size_width = "0"
mpf_size_height = "0"


So I'll keep digging into each of the ini files, there's about 45 of these files. Thankfully they reference in the name what configuration they are. I'll create an excel table with these bitrates and confirm them with actual video. Once I have that, I'll see if I can increase the bitrate. From what I can tell, Akaso V50x uses ~50Mbps which, from what I've seen, gives pretty good video quality. My plan to to hopefully get the bitrate upto around 75-100Mbps. My Sony A7RIII can only do 4k video either 60mbps or 100mbps, if I can match that quality, I'll be super happy! I still can't believe I found the bitrate values in plain text from the extract...after yearsssss of wondering if I can do it, I believe I'm super close to having custom firmware.
I digress, going back to ~2020, I was apart of the goprawn forum which I believe is now defunct... there were some users that were trying to help me out and I never really got anywhere with it. I spent so much time and got nowhere. Thankfully chatGPT, which wasn't even around then, has done some amazing work for me.



Step 3: Future - Image quality mod?

I'm not sure if its even possible to increase the quality of the images but I'm also going to go down this route in seeing if I can up the image quality. It was never bad to begin with but I'm wondering if there's anything to gain here. The sensor is only a 13MP sensor so the 16MP and 20MP images are interpolated images, just fake pixels added... I'm going to see if I can get full 13MP images instead of the default 12MP image size...I'm not sure if the image is resized or using a cropped section of the sensor, reducing image quality but I'll take a look at this after I verify that I can successfully modify the firmware for video first....



Stay tuned! I'm gitty with excitement that I might have actually finally arrived at a workable firmware mod. I was so jealous of all the users that could do the Yi 4k bitrate mods...I might have finally been able to do it for the hi3559v200 chipsets!
 
Last edited:
Quick update on this. I was finally able to figure out how to repackage the jffs2 file back into the appfs.jffs2. The odd thing is there might be some mismatch... I'll keep investigating... the new packaged file with the new bitrates is 8.7MB whereas the original is 7.69MB... a tad concerning... HOWEVER, I RE-extracted the NEW appfs.jffs2 file and unpackaged it... I got the exact same file and folder structures as the original along with the NEW bitrates I modified.

I will likely start my testing with these new values:
[venc.0]
bufsize = "41943040 "; bytes
res_width = "3840"
res_height = "2160"
src_framerate = "30"
dst_framerate = "30"
gop = "30"
h265bitrate = "61440"; kbps 60Mbps
h264bitrate = "71680"; kbps 70Mbps
stat_time = "2"; second
mpf_size_width = "0"
mpf_size_height = "0"


I doubled the buffer size "bufsize" because chatGPT said it should be around half my bitrate for smoothness...hopefully that'll work. I might need to check the hardware to see if it can handle that buffer size.... Then I increased the bitrates respectively. Nothing huge to write home about but my A7RIII can do 60 and 100mbps @ 4k 24/30p so I'm nearing that range with this tiny little camera...

I'm SUPER excited at this point... I still need to figure out why I'm getting a different jffs2 file size but I know now the contents are the same so I'm a tad less worried now... I may check the files in HDx hex editor to do a quick visual spot check and see if the structure is the same...

Stay tuned! I don't even have the camera yet... so I'll probably start with the hardware (lens) mod first then move on to seeing if I can get new firmware to flash....
 
Using grok I was able to obtain a table for bitrates:

H.265 Bitrate Table (45 Mbps to 125 Mbps)

45 Mbps: 30720 kbps

50 Mbps: 34133 kbps

55 Mbps: 37547 kbps

60 Mbps: 40960 kbps

65 Mbps: 44373 kbps

70 Mbps: 47787 kbps

75 Mbps: 51200 kbps

80 Mbps: 54613 kbps

85 Mbps: 58027 kbps

90 Mbps: 61440 kbps

95 Mbps: 64853 kbps

100 Mbps: 68267 kbps

105 Mbps: 71680 kbps

110 Mbps: 75093 kbps

115 Mbps: 78507 kbps

120 Mbps: 81920 kbps

125 Mbps: 85333 kbps



H.264 Bitrate Table (45 Mbps to 125 Mbps)

45 Mbps: 42667 kbps

50 Mbps: 47407 kbps

55 Mbps: 52148 kbps

60 Mbps: 56889 kbps

65 Mbps: 61630 kbps

70 Mbps: 66370 kbps

75 Mbps: 71111 kbps

80 Mbps: 75852 kbps

85 Mbps: 80593 kbps

90 Mbps: 85333 kbps

95 Mbps: 90074 kbps

100 Mbps: 94815 kbps

105 Mbps: 99556 kbps

110 Mbps: 104296 kbps

115 Mbps: 109037 kbps

120 Mbps: 113778 kbps

125 Mbps: 118519 kbps

I think I'll start with the moderate 60mbps for 265 and 70mbps for 264. I'm still reviewing the rest of the files to determine if I need to change anything more. I'm also trying to figure out how I can effectively change the firmware version correctly so I can flash over and over again. I found out that I can't reflash the same firmware version if it's already installed and I remember having issues changing the firmware version name but I'll give that a shot too.
 
Couple of updates.
1. I just installed the 2.8mm lens: https://edatec.cn/docs/m12-lens/230280-08/ds/
It's fantastic! Absolutely no lens distortion. Lines are finally straight and a pretty wide angle lens. I'm super happy with it. It's 1mm wider than the original front element so I had to shave the housing opening to get the new lens to fit.
IMG_2950.webp

I'm having a little trouble focusing the lens but I'm pretty close to nailing focus. I'll have that pinned down this week.

2. There's a small brass sheet on the pcb that's supposedly supposed to spread heat..and it doesn't really work since there's insulation between the chipset and heatsink. I've removed that and cut out a slightly thicker piece of metal that's a pure copper sheet. I'll likely sandwich that with thermal pads between the screen and chipset in an attempt to dissipate heat.
IMG_2944.webp


3. I haven't tried the more narrow lens. I'm pretty happy with the 2.8mm lens so I'll keep that till I have my next camera and test it out on another cam.

4. I realized I'm using the same version of firmware as what's currently loaded on the camera... Im running into an issue getting the camera to load new firmware. It doesn't want to flash the new version of firmware...ive renamed the version number in one of the *.Ini files and it still won't flash... I'll keep attempting to figure it out but for now, no new firmware version yet...
 
Daum dude you are just tearing into this.

I run a a insta360 ace pro for my little camera needs, would like the new X5, but factoring in it will see minutes a year use i can not justify the expence.
 
Well... I've had enough time today to play around with the focus. I'm not particularly impressed but then again I'm used to seeing FF 43MP images...
My best comparison right now is the 2.8mm lens comparing that to the wide angle iphone 13 lens at .7 magnification to equate to about the same focal length...Yes I'm shooting through a window so don't mind that... on the right is the action cam with the new lens. It's a converted DNG raw image using Capture One. Final result is ~16MB for the image. Image on the left is from the iphone 13 if that wasn't obvious... HEIC file was only 2.7MB so definitely quite a big difference. The iphone looks quite muddy, I might have slightly oversharpened the dng on the right but the raw image looks so incredibly flat and not sharp it's quite surprising.
iphone comparison.webp


So both these cheap lenses from digikey were only about $6-11 each...not bad, I've had my eye on this lens: https://commonlands.com/products/gopro-3mm-m12-lens-cil330 It's quite a bit more expensive and it's a slightly smaller Fstop which wouldn't help for ISO but would help for wider dof... The resolution between the lens I currently have and this one is quite different. The EDATEC lens says 8MP whereas the CommonLands says 12-13MP which is significantly better... I just have to pay more for it...which I'd be pay more for the lens than the entire cost of the camera... but I know from my Full Frame Sony that lenses are your friend and that's where the resolution is lost...
I'm also wondering if there's any sort of distortion compensation going on in the software to export the raw image..

I'm not sure how much I'll be able to gain for the additional cost...I already have a Full Frame camera so it's not like I'm going to get anything near that type of resolution with a camera sensor 7.6x smaller...

I haven't done much with the firmware yet... I'm bummed my first initial flash attempt didn't work but I'll keep trying...
 
I think if you like a expensive lens, peau productions should be able to help you.
Though looking just now they seem to have left this mortal realm
 
I'm really curious to see how to akaso v50x compares... Supposedly they're the same chipset so unless the sensor is better I'm not sure what makes the raw and jpg images better in the akaso other than software...
I'm going back and forth with akaso support in attempts to obtain the actual firmware files so I can unpack them myself...

I'm still debating between these two lenses and I might try the commonlands and see if that does anything for the resolution. I switched back to the 3MM lens and it looks terribly decentered... the bottom right is tack sharp and the entire top and left side is blurry... I doubt it's any type of correction in the software so maybe it is the crappy lens....

From what I can tell this is probably the best lens: https://commonlands.com/products/gopro-replacement-m12-lens?variant=41758518968438
It looks like I'll have a 113* DFOV which would be around a 14mm lens on FF. Quite wide but that's the point of an action camera. I already have an 18mm lens on my FF Sony...I've been eyeing a 14mm lens for awhile now which basically would make this project obsolete...so we shall see...

Here's an updated raw > jpg from the 3.45mm lens that's finally focused properly. The right side and bottom are perfectly sharp but the top left is so distorted...
SINR0011_1.webp

Not only that but the halo effect from the white railing at the bottom isn't very pleasing either... My FF A7RIII in crop mode, which is about 18MP can easily read the No Parking sign on the bottom left... I'd at least like to get a lens that might be able to be passing and read it. I believe the lens suffers terribly from aberration....
 
Last edited:
I've decided on my next lens test: https://commonlands.com/products/gopro-replacement-m12-lens?variant=41758518968438

Unfortunately Amazon doesn't have the no IR filter version so I'll likely have to order from the manufacturer directly...

Looks like the 12MP resolution might be a winner and it's around, maybe slightly wider of a FOV than the 3.56mm lens I have on the camera currently. After seeing some youtube teardowns of the Akaso V50x, it appears to be the same sensor and processor so there's no reason why I couldn't achive great photos with the new lens that will be compatible with both cams. I'll basically just find out which one has the better software/resolution and use that. The Akaso supposedly has a metal frame that acts as a heatsink so that's pretty cool, probably the reason for the price difference. I've been really comparing the photos from the action cam to the iphone and they're SUPER similar...definitely more dehaze on the iphone than the action camera but that's all just software and photo edits at that point. IF the lens is indeed a good 12MP lens, I can probably achieve the same if not better than iPhone images which would be really cool...
 
OKKKK so quick update:

I cannot for the life of me seem to be able to get the camera to flash...I had a thought this AM, maybe it's the SD card...Yup! Supposedly exfat only works and anything larger than 32GB won't work. I have a 16GB lying around and loaded the files on there...flashed successfully but upon booting the camera I just had the display screen on with video feed and no controls. I had to unplug the battery and reflash back the original firmware and thank god the original firmware works fine... so something is getting messed up in the settings.

The ONLY file I'm changing is the appfs.jffs2 file so it's something in the repackaging of that file that's messing up the settings system. Upon booting the original firmware, after the flash it will prompt for language and date.

I think what I'll do is start with the appfs.jffs2 file again, unpack it, don't modify anything on it, repack it, and flash that. If I can successfully flash the repackaged file then maybe it has something to do with my edits but I highly doubt it since I only modified the bitrates. I think it has something to do with the file size difference after packaging. Apparently there's a specific block size that I need to figure out what it is....

Edit: So just changing the version and repackaging the jffs2 file doesn't work... it's actually slightly larger this time since I used a different packaging allocation and now I see info at the top and bottom of the screen but I'm not able to do anything... I'm guessing something is getting cut off...flashed back just fine so I'll keep trying... I'm SOOOO close! Come on 100mbps here we come!
 
Last edited:
Ok, so new discovery... there's a script that runs that checks the firmware version before attempting to flash. The last line of the config file is the data type and it's date code. If you modify the date code it will flash since it recognizes a different date:

File: config.file
Data (using Notepad++):
setenv bootargs 'mem=96M quiet console=ttyAMA0,115200 clk_ignore_unused rw root=/dev/mtdblock5 rootfstype=jffs2 mtdparts=hi_sfc:384K(u-boot-GR01V2_2_2GDDR3.bin),64K(rawparam),64K(rawparambak),2944K(media_app_zip.bin),2560K(uImage),1920K(rootfs.jffs2),8064K(appfs.jffs2)'
setenv bootcmd 'sf probe 0;sf read 0x84000000 0x60000 0x10000;sf read 0x84100000 0x70000 0x10000;cread 0x84000000 0x84100000 0x10000 0x80100000;go_cpu1 0x80200000 0x89000000 0x80000 0x2e0000;sf read 0x84000000 0x360000 0x280000;bootm 0x84000000'
setenv swverv2 'S2_GR01V2_2_2GDDR3_06241145'
I highlighted in red what needs to be changed. In this case its 06 (june) 24(day) 11:45 (time) No idea where the year comes into play here... It's not sequential so anything that's different than the current version loaded will prompt a flash. So that's SUPER nice I now know how to flash and flash back the firmware as many times as I want so long as the camera isn't bricked by my modding...
 
I believe my issue lies with the entropy state...supposedly the firmware will read in memory and if its not allocated correctly it'll step over each other and fail to load properly...which is what I'm experiencing... I'm not sure how to allocate it correctly as chatgpt isn't giving me proper allocation block size...

The original appfs.jffs2 file that carries all the specifications and menu values:
Original Appfs.jffs2 file entropy.webp


Now the unpackaged/repackaged file... I think its the way things are being repackaged that's not allocating correctly. All the files exist in the jffs2 file but they're just not in the right place...at least that's my understanding. This is all new to me as of like a week or two...
Modified 128kb block appfs.jffs2 file entropy.webp


For now I'm going to hold off on attempting any flashes till I can get both the original and repackaged jffs2 file to match in entropy...still don't know what that is but I presume that's my issue.
 
Quick update.
I've been out the past two weeks so not much progress. I've learned more tools for wsl so copy paste has been my best friend now. I've switched over to grok instead of chatgpt so it's giving me a new method.

The big issue is the repacking of the files doesn't match entropy nor file structure. I've tried about 40 different combinations and nothing has worked thus far. I'm trying to dig into the original file to determine how it's been packaged. Grok is telling me my Jefferson/unbutu isn't compatible with how the file is compiled so still working through that
IMG_3415.webp

I ended up getting the rokinon 14mm f2.8 MF lens for my a7riii.. Kind of funny to see the two lenses together. I don't think I'll ever be able to get similar photo or video quality with the action camera just looking at the lens differences.

I'm not going to pick up the $47 lens till I figure out the firmware flashing. Until I can increase the quality it's not really worth it. I think there's plenty of bitrate headroom since the same hi3559v200 on the akaso v50x goes upto 50mpbs bitrate.
 
Well I've run about 100 different package combinations for packaging the jffs2 file and it appears that nothing will work. I can't get the file size close except for trimming the file which cuts off crucial data and I've tried to flash about 10 different version of the firmware and none work. Either the camera will boot and have no menu system, or get stuck in a bootloop. Thankfully I have a 2nd SD card with the original bios and it flashes back every single time...so no bricking yet...

I've considered cleaning out the unused files in the unpacked jffs2 folder but unfortunately that doesn't grant me more than 1MB of extra space to recompile... I wonder if there's something the way mkfs/jefferson is unpacking the jffs2 file that's adding extra data or not doing it in such a way that it's properly recompiling the file....I'll keep digging. Sadly no new bios yet...
 
Well someone will find this fun... I'm still researching and I believe I've narrowed down my issue... the jffs2 is packed in such a way where it has distinct libraries? I think I understand that correctly...
Screenshot 2025-07-21 092108.webp


Screenshot 2025-07-21 092126.webp

There's a couple of different instances where I can view this... these two images above are the logic behind it. The libraries are contained in the extracted version of the jffs2 file, so I have them, I just don't know how to use them...

ChatGPT wants me to modify my mkfs.jffs2 binary in order to compress the jffs2 file but I don't think that's going to work...there's some type of library code I need to use in order to pack the file... I'm not sure its going to be possible but I'm going to keep trying... I'm slowly getting more information and understanding the file better...but I now know why the new packaged file isn't working at all....


Someone will find this interesting...

Heck if I can get this to eventually work I'm going to get freaking 120mbps with this little thing.....
 
So no progress this week. I tried flashing a few more times and still no luck. I'm beginning to think it has possibly nothing to do with the jffs2 file but I'm not sure at this point...

I did end up purchasing the new CIL391 lens from CommonLands - https://commonlands.com/products/gopro-replacement-m12-lens - I'll see how the quality is, I bought it via amazon so if it's not any better I'll just return it...
 
Ok so update:

I received the new lens. You can definitely tell the quality of the new lens is significantly better. Fortunately the photo quality is also much improved. The only downside to this new lens is there's now added distortion but thankfully i use this site to correct it, I'm sure I could figure it out in capture one but for now this works fine: https://jywarren.github.io/fisheyegl/example/#a=1.048&b=1.059&Fx=0.09&Fy=0.22&scale=1.087&x=1&y=1
SINR00673_1.webp


I did apply a K100 film simulation LUT to this image. It's also taken from the RAW image which the jpg's are just too reduced to get any sort of fine detail. The jpg is 3.91MB whereas the DNG raw is 22.9MB and the edited photo is 14.4MB so definitely alot more data available from the raw. Thankfully Capture One's DNG profile does great color correction. I actually quite like it. And since I upgraded my phone to the 16e which doesn't have the wide angle lens, this might complement my travel photography...
Here's the distortion corrected image:
download (19).webp


I honestly don't think I'm going to get better than this. The sensor is just too dang small and There's really no way to get better quality other than spend >$100 on another lens for marginally better quality which now is limited by the sensor more than the lens.

I'm always on the hunt to see if there's a way to upgrade the sensor hardware but I think I might also be limited based on software/firmware and the interface is likely to be different so I highly doubt there's any real chance to upgrade the sensor to something larger....
 
I have this Crosstour CT9500 too and it seems that you need some help with Linux and modifying parameter files.
But before i will disassemble my CT9500, let me ask you the most important question: how are you going to flash the modified firmware ? Have you already found the serial console UART pads on the PCB (console=ttyAMA0) ?
 
Thanks to your teardown pictures, i have found the console UART TX pin on a similar action cam board
from 2020 (Apeman A79), which also has a touchscreen on top of the screen. The screen was destroyed in the process,
because it was glued, and the PCB looks exactly the same as the CT9500 PCB with the soldered touchscreen FPC connector. The UART RX pad should be located close to the UART TX pad, but i have not yet tested it.
The UART works at 115200 and is a usual u-boot + linux serial console with root shell, as known from the
DDPAI hi3559v200 dashcams.
 
Actually it was the Apeman A100 action camera, using the same PCB board as CT9500
and IMX458 4K@30fps sensor. I have soldered the RX and TX pads, got into the serial bootloader
and Linux console and made the full flash backup to the SD card.
The installed busybox version includes telnetd, so i could disable the UVC stream and FS modes
on the miniUSB and use telnet over USBNET. I have some trouble with enabling WIFI and control camera
recording without the touchscreen, but live editing of the camera binary parameters or converting them from the *.ini files (with ini2bin) should be easy now.
 

Attachments

  • IMG_8304_UART.webp
    IMG_8304_UART.webp
    168.4 KB · Views: 169
Back
Top