A229 Pro MOD firmwares

Dex_

Well-Known Member
Joined
Sep 22, 2015
Messages
158
Reaction score
264
Country
Russian Federation
Dash Cam
Git1/2/G3Duo; Viofo A129/A129+/A229/A229Pro; Vantrue N4Pro
As some of you know, I working on FW mods many years. To do such things I waste a lot of my free time and I also wrote NTKFWinfo tool and made it public for anybody else for free.
This thread was created for posting my mods for Viofo A229Pro and discuss it.

Today I share my mod based on official V1.3_240612 FW.

Changelog:
  • Logging of chipset`s temperature to file "T.txt" if it was created on root folder of SD-card. Current temperature updates every minute. T.txt file sample:
Fri Jul 19 17:51:52 GMT 2024: Viofo A229 Pro dashcam started. 61°C
Fri Jul 19 17:52:00 GMT 2024: 64°C
Fri Jul 19 17:53:00 GMT 2024: 68°C
Fri Jul 19 17:54:00 GMT 2024: 70°C
Fri Jul 19 17:55:00 GMT 2024: 73°C
Fri Jul 19 17:56:00 GMT 2024: 73°C
Fri Jul 19 17:57:00 GMT 2024: 73°C
Fri Jul 19 17:58:00 GMT 2024: 74°C
Fri Jul 19 17:59:00 GMT 2024: 74°C
Fri Jul 19 18:00:00 GMT 2024: 76°C
Fri Jul 19 18:01:00 GMT 2024: 76°C
Fri Jul 19 18:02:00 GMT 2024: 77°C
Fri Jul 19 18:03:00 GMT 2024: 77°C

  • Leading zeroes in speed stamp was removed.
  • New menu "Codec": H264 or H265 was implemented. Then H265 is enabled new icon under resolution text at dash screen is shown.
1719385579614.jpg1719386835633.jpg
  • New menu for customize action for Main button of Bluetooth remote.
Works not only with a new 3 button remote BTR200 but with old 1-button Bluetooth remote too.
1719385579593.jpg
Because of the previous point, I unblocked the selection of the 'Lock Video' action for the side buttons of the new remote control (previously, 'Lock' was hard-coded to the top button only and therefore its selection for the side buttons was not available).
  • Streaming audio was added for RTSP Live video at rtsp://192.168.1.254/xxx.mov. (Video only was on official FW)
  • For menu 'Parking Motion Detection' value Off was added, that allows in AED parking mode record video events only by G-sensor trigger (without motion detection trigger).
  • For menu 'Screen Saver' values was added: Off, 5 min., 10 min. If Off was set screen never is turn off backlight (except turning to parking mode).

FW mod Download link

Latest mod here: FW mod4
 
Last edited:
  • New menu "Codec": H264 or H265 was implemented. Then H265 is enabled new icon under resolution text at dash screen is shown.

Hi there,

Just out of curiosity, what is the bitrate when selecting H265 compared to H264?

Thanks Simon.
 
h.265 uses same bitrate tables as for h.264.
It is cause that video file sizes is same independent of current codec but h.265 could gave a bit more image quality due more effective algorithms.
 
As some of you know, I working on FW mods many years. To do such things I waste a lot of my free time and I also wrote NTKFWinfo tool and made it public for anybody else for free.
This thread was created for posting my mods for Viofo A229Pro and discuss it.

Today I share my mod based on official V1.3_240612 FW.

Changelog:
  • Logging of chipset`s temperature to file "T.txt" if it was created on root folder of SD-card. Current temperature updates every minute. T.txt file sample:
Fri Jul 19 17:51:52 GMT 2024: Viofo A229 Pro dashcam started. 61°C
Fri Jul 19 17:52:00 GMT 2024: 64°C
Fri Jul 19 17:53:00 GMT 2024: 68°C
Fri Jul 19 17:54:00 GMT 2024: 70°C
Fri Jul 19 17:55:00 GMT 2024: 73°C
Fri Jul 19 17:56:00 GMT 2024: 73°C
Fri Jul 19 17:57:00 GMT 2024: 73°C
Fri Jul 19 17:58:00 GMT 2024: 74°C
Fri Jul 19 17:59:00 GMT 2024: 74°C
Fri Jul 19 18:00:00 GMT 2024: 76°C
Fri Jul 19 18:01:00 GMT 2024: 76°C
Fri Jul 19 18:02:00 GMT 2024: 77°C
Fri Jul 19 18:03:00 GMT 2024: 77°C

  • Leading zeroes in speed stamp was removed.
  • New menu "Codec": H264 or H265 was implemented. Then H265 is enabled new icon under resolution text at dash screen is shown.
View attachment 73372View attachment 73373
  • New menu for customize action for Main button of Bluetooth remote.
Works not only with a new 3 button remote BTR200 but with old 1-button Bluetooth remote too.
View attachment 73374
Because of the previous point, I unblocked the selection of the 'Lock Video' action for the side buttons of the new remote control (previously, 'Lock' was hard-coded to the top button only and therefore its selection for the side buttons was not available).
  • Streaming audio was added for RTSP Live video at rtsp://192.168.1.254/xxx.mov. (Video only was on official FW)
  • For menu 'Parking Motion Detection' value Off was added, that allows in AED parking mode record video events only by G-sensor trigger (without motion detection trigger).
  • For menu 'Screen Saver' values was added: Off, 5 min., 10 min. If Off was set screen never is turn off backlight (except turning to parking mode).

FW mod Download link
Can provide fw mod for A229plus?thx.
 
For menu 'Parking Motion Detection' value Off was added, that allows in AED parking mode record video events only by G-sensor trigger (without motion detection trigger).
Can you increase the G-Sensor sensitivity in Parking Mode?
The best could be to add a new item in menu, call it something like Extreme or what word do you find better for the most sensitive setting.
I know can be a false alarm when closing the door and leaving the car, but this will be acceptable. Ideally for this Extreme setting should be the G-Sensor to be activated in Parking Mode after about 1 minute for example and in this way the driver can leave the car and close the door without creating an emergency video.
 
@Dex_ - thank you! I joined the club to test your beta FW.
It took me while to figure out that video codec is available on the device itself (just realized that you can only change the FW on the device, but the new features will not be exposed in the iPhone app until VIOFO implements them LOL)
And I also ordered the Bluetooth remote - as while I am driving, I cannot possibly reach out to the controls on the device - and looking forward to try to the remote with your FW.
 
  • Like
Reactions: AOD
One more question @Dex_ - your FW is only for front camera; I assume x264 -> x265 will apply to both front and rear recordings, correct?
 
This is excellent and encourages me to buy a A229 Pro.

Would something complex like MQTT subscription to an external server sending events, substream videos, and reverse proxy to send files, be possible, or do you really need the source code for this?
 
"[*]For menu 'Parking Motion Detection' value Off was added, that allows in AED parking mode record video events only by G-sensor trigger (without motion detection trigger)."


There were good, alternative and logical solutions.
It's nice that it is recorded only at the moment of impact, especially in parking mode.
I was wondering and before

Here's what I suggested to @viofo earlier:
In order to have this alternative option in the park mode, I suggested that it pre-records continuously, like the motion detection mode, and when there is an impact, the pre-record should be 15 seconds before and after.
@Dex_ , Is this how it works?
 
Can provide fw mod for A229plus?thx.
Sorry but I can't because I test my mods many times before I made it public. But I did not have A229Plus dashcam.
Can you increase the G-Sensor sensitivity in Parking Mode?
I'll check that I can do for G-sensor. Thank's for suggestion.
I assume x264 -> x265 will apply to both front and rear recordings, correct?
Yes you are right, Codec setting as many other settings send from main unit to rear cam and applied to any of connected cams. So h.265 applied for all of 3 connected cam (and interior cam too).
Would something complex like MQTT subscription to an external server sending events, substream videos, and reverse proxy to send files, be possible, or do you really need the source code for this
This is more complex task than patch bytes in binary files. Live video streaming works now via RTSP connection, you can also download any of recorded files via HTTP connect to dashcam at http://192.168.1.254/ But if you need final solution combined all needs in one remote server I can't help with it, cause I did not work with client-server applications.
In order to have this alternative option in the park mode, I suggested that it pre-records continuously, like the motion detection mode, and when there is an impact, the pre-record should be 15 seconds before and after.
@Dex_ , Is this how it works?
It works same as on official FW - 15 seconds buffer always record to memory (not to file) and then impact was recognized this buffer writes to file and also 30 seconds video append to it. So in impact events video records length is 45 seconds - 15 seconds before impact and 30 seconds after.
I found some issue in disabling motion detection in AED mode and it should be fixed in next mod release.
 
Last edited:
Thanks @Dex_ I thought it would not be possible because just patching instead of full source code.

I don't think this is possible but I will ask anyway: Can you make it log to a text file if there is G-Force event?
 
I don't think this is possible but I will ask anyway: Can you make it log to a text file if there is G-Force event?
If only I have access to source code then I simply answered to you - "Sure, it is easy to implement". Even G-sensor 3-step calibration like - "Please hit your car/dashcam to store g-sensor data as Low sensitivity Level, next Medium and High" can be implement. But sources is closed and I do not working on Viofo team.

Do you mean logging G-force values at all 3 axes independently or G-sensor events (like '21:03:57 - Hit was detected' text in log)?
Anyway, after disable the motion detection in AED mode been fixed I'll move on G-sensor sensitivity and logging G-sensor values be helpful for myself too. I'll post some info if I found something interesting about G-sensor.
 
Last edited:
Like 'G-sensor events (like '21:03:57 - Hit was detected' text in log)'

Sad there is no source code, I'm sure you could have a party adding so many cool features.
 
New mod version was released.

Changelog:
  • 'Off' option for 'Parking Motion Detection' now fixed. (lower than 'Low sensitivity' was in previous mod2 for 'Off' setting).
  • 'Parking Mode' action was added for Bluetooth remote control buttons. It is do same action as long mic button press on original FW - turn on\off parking mode without going to menu. Then parking mode turn on back - 1 fps timelapse mode is enabled, not previous setting. Try to fix it in next updates or hide this option back.

FW mod3 download link
 
Last edited:
Is it possible to adjust the audio bit rate and sampling rate to equal or better audio quality than a traditional Viofo dash cam?

I have already requested this from Viofo, but received a response that I don't expect to be implemented, so I would like to ask you to do this for me.
 
A229Pro use same sample rate for audio channel as all other Video dashcams - 16000 Hz, 64 Kbit/sec. Probably it can be up to 32000 Hz, 96 Kbit/sec but audio quality depend mostly on audio schematic solutions and microphone itself than on sampling rate. Not sure that new values changes something.
 
Last edited:
I'll post some info if I found something interesting about G-sensor.
For @Mtz and others.

A229Pro use MiraMEMS DA380 3-axis accelerometer as G-sensor.

Default setting for Low, Medium and High sensitivity:
Threshold values: 25, 15, 5 - does not used in G-sensor.
Normal mode sensitivity values: 800, 400, 150
Parking mode sensitivity values: 400, 200, 75

In working period mode sensitivity value compares with acceleration data from any of G-sensor axis. If current acceleration more than sensitivity value - hit is detected.

You may examine current acceleration values from G-sensor on dashcam screen if you create on SD-card file "productiontest.txt" and restart dashcam (X:, Y:, Z: values on screenshot).
1722165567465.jpg

Additionally:
Of course I may be wrong, but then I looking into my magic ball full of FW binary data I found that G-sensor initialized for 14bits resolution (it is max res. and it is good), +-8g acceleration range (also could be +-2g, +-4g, +-8g, +-16g).
I be able to change detect acceleration range that cause to register lower hits than now.
Code:
1 bit of acceleration data = 3.91mg (for +-2g range)
1 bit of acceleration data = 7.81mg (for +-4g range)
1 bit of acceleration data = 15.625mg (for +-8g range)
1 bit of acceleration data = 31.25mg (for +-16g range)
But it may cause to false detections and G-sensor be too much sensitive. Set sensitivity to 15 cause too sensitive G-sensor with current +-8g range. So we may stay on this acceleration range and change only sensitivity levels.
Need a time to test everything.
 
Last edited:
I seem to remember a novatek api document which had a command for setting the G sensor sensitvity, it just had the Low/Medium/High parameter.

I guess the best thing to do would be try to rewrite those values (rather than adding extra options)
 
Back
Top