How to submit EmpireTech firmware error report?

GaryOkie

Pulling my weight
Joined
Jul 28, 2017
Messages
246
Reaction score
141
Location
Route 66, OK
Hi Andy,

4 months ago I posted a problem report here that received no reply. Odd IPC-T5442T-ZE partial configuration vanishing act

How should I have submitted a report so that Dahua devs can review this ongoing issue?

The camera configuration is somehow changing on its own significantly which omits a key value that will cause Home Assistant to not be able to initialize the camera at startup. This spontaneous configuration change is likely not going to be noticed by anyone else unless they are using Home Assistant as otherwise the camera is working fine.

Each time this problem occurs, I have to factory reset the camera to restore the missing configurations. I've had to do this over a dozen times these past few months on multiple T5442T-ZE's using your latest firmware.

Here's a snapshot showing just a small portion of the missing factory default configurations. The panel on the left shows the missing configs, and the middle panel shows what should be factory defaults. The entry marked in red is the specific setting that is causing Home Assistant to fail the camera initialization at startup when its missing.

I have no idea what could be triggering the internal configurations to change like this. Is this something that Dahua devs can look into please?

Thanks!1691335643274.png
 

paul@austins.tv

Getting comfortable
Joined
Dec 4, 2015
Messages
302
Reaction score
282
My initial thoughts would be that your Home Assistant software is causing the problems described. Other software will most likely never integrate correctly.

Have you isolated the Dahua camera away from the Home Assistant demands, to see if the problems resolve?
 

GaryOkie

Pulling my weight
Joined
Jul 28, 2017
Messages
246
Reaction score
141
Location
Route 66, OK
Thanks Paul for your suggestion. No, I have not tried to run the cameras untethered from Home Assistance for any length of time. Doing so would not turn up any issue riight away as I would have to check day after day for weeks to see if anything changed in the firmware config. Unfortunately that's not a practical diagnostic I can use for my home security.

I am using Home Assistant for RTSP streaming and subscribing to events only. No service calls to make changes to the config are ever done. I've actually reviewed the camera integration code on GitHub, and found no underlying API calls to make changes of any kind are processed.

Again, these spontaneous firmware changes happen sporadically/randomly and only on my T544T's. I have several other older Dahua Starlights that have never had this problem.

The other point I'd like to make is that is that I believe it is impossible to REMOVE configuration settings through the API or ANY software. And when the camera itself somehow removes them, I am not able to add them back via the API manually. The camera responds that the command is invalid. When the camera is reset to factory default, that exact same API command to set the same value (which now exists in the config) is accepted. The same is true when attempting to import a backup config. It fails unless I perform a factory reset first.
 
Last edited:

IAmATeaf

Known around here
Joined
Jan 13, 2019
Messages
3,310
Reaction score
3,296
Location
United Kingdom
The cams not restarting is it?

I’ve had versions of firmware where for example on restart substream 2 gets disabled and substream 1 gets re-enabled, before the restart the cam 2 was enabled and 1 disabled.
 

GaryOkie

Pulling my weight
Joined
Jul 28, 2017
Messages
246
Reaction score
141
Location
Route 66, OK
On some occasions, the problem does show up after a brief communications failure to the cameras . Early this morning at 2:45 AM, my HA logs show comms error to all 4 of my POE Dahua StarLights, but not to my WiFi AD410 doorbell. it only lasted a minute, then logs show all cameras back online.

Immediately thereafter, additional errors for the 2 T544T Dahua's started due to their configuration changing spontaneously. The other 2 Dahua's, no problem. I have no idea what the source of the communication error was. POE router perhaps? Entire network and cameras are on UPS, which logged no power issues. But whatever the source of the very brief communication outage was, how could that possibly cause the camera to just lose its mind and come up with a substantially different config?

I will also add that is rare for both T544T's to lose their normal config simultaneously. It has almost always been one or the other with no discernible cause.
 
Last edited:

Mike A.

Known around here
Joined
May 6, 2017
Messages
3,835
Reaction score
6,400
I'd guess that it's probably not actually losing anything as far as the config but rather some difference in how it's presenting it to you for whatever reason. But the practical result is the same for your purposes.
 

GaryOkie

Pulling my weight
Joined
Jul 28, 2017
Messages
246
Reaction score
141
Location
Route 66, OK
Thanks Mike. Normally any specific config entry as documented in the Dahua http CGI doc can be read or changed via the API. When the camera is in its altered state, any of those missing values are no longer recognized as being valid for read or write. It's as if the camera took on a completely different persona with a stripped down configuration in terms of the API. Perhaps you are right that the actual/normal configuration is still in effect under the covers but something is altering the means in which it is not only displayed, but more importantly, how those configurations can no longer be accessed via the API at all.

If you have a T5442T-ZE, try this command:
<ip_addr>/cgi-bin/configManager.cgi?action=getConfig&name=VideoInOptions
You should get 190 VideoInOptions listed in your browser - which aligns with the Dahua API CGI doc. When this odd configuration reversion occurs, only 43 VideoInOptions are returned.

To be more specific, the command: <ip_addr>/cgi-bin/configManager.cgi?action=getConfig&name=VideoInOptions[0].DayNightColor should return a value (after authenticating), and not return an API error.
 

Mike A.

Known around here
Joined
May 6, 2017
Messages
3,835
Reaction score
6,400
From the first command, I just get the following:

table.VideoInOptions[0].AntiFlicker=0
table.VideoInOptions[0].Backlight=0
table.VideoInOptions[0].ColorTemperatureLevel=50
table.VideoInOptions[0].DoubleExposure=0
table.VideoInOptions[0].ExposureCompensation=50
table.VideoInOptions[0].ExposureIris=50
table.VideoInOptions[0].ExposureMode=8
table.VideoInOptions[0].ExposureValue1=0
table.VideoInOptions[0].ExposureValue2=40
table.VideoInOptions[0].GainMax=50
table.VideoInOptions[0].GainMin=0
table.VideoInOptions[0].GlareInhibition=0
table.VideoInOptions[0].IrisAuto=true
table.VideoInOptions[0].NightOptions.AntiFlicker=0
table.VideoInOptions[0].NightOptions.Backlight=0
table.VideoInOptions[0].NightOptions.DoubleExposure=0
table.VideoInOptions[0].NightOptions.ExposureCompensation=50
table.VideoInOptions[0].NightOptions.ExposureIris=50
table.VideoInOptions[0].NightOptions.ExposureMode=8
table.VideoInOptions[0].NightOptions.ExposureValue1=16.670000
table.VideoInOptions[0].NightOptions.ExposureValue2=16.670000
table.VideoInOptions[0].NightOptions.GainMax=50
table.VideoInOptions[0].NightOptions.GainMin=0
table.VideoInOptions[0].NightOptions.GlareInhibition=0
table.VideoInOptions[0].NightOptions.IrisAuto=true
table.VideoInOptions[0].NightOptions.Profile=3
table.VideoInOptions[0].NightOptions.SmartIRExposure=false
table.VideoInOptions[0].NightOptions.SwitchMode=1
table.VideoInOptions[0].NightOptions.WhiteBalanceDatumRect[0]=3096
table.VideoInOptions[0].NightOptions.WhiteBalanceDatumRect[1]=3096
table.VideoInOptions[0].NightOptions.WhiteBalanceDatumRect[2]=5096
table.VideoInOptions[0].NightOptions.WhiteBalanceDatumRect[3]=5096
table.VideoInOptions[0].NightOptions.WideDynamicRange=50
table.VideoInOptions[0].NightOptions.WideDynamicRangeMode=0
table.VideoInOptions[0].NormalOptions.AntiFlicker=0
table.VideoInOptions[0].NormalOptions.Backlight=0
table.VideoInOptions[0].NormalOptions.DoubleExposure=0
table.VideoInOptions[0].NormalOptions.ExposureCompensation=50
table.VideoInOptions[0].NormalOptions.ExposureIris=50
table.VideoInOptions[0].NormalOptions.ExposureMode=8
table.VideoInOptions[0].NormalOptions.ExposureValue1=0
table.VideoInOptions[0].NormalOptions.ExposureValue2=40
table.VideoInOptions[0].NormalOptions.GainMax=50
table.VideoInOptions[0].NormalOptions.GainMin=0
table.VideoInOptions[0].NormalOptions.GlareInhibition=0
table.VideoInOptions[0].NormalOptions.IrisAuto=true
table.VideoInOptions[0].NormalOptions.SmartIRExposure=true
table.VideoInOptions[0].NormalOptions.WhiteBalanceDatumRect[0]=3096
table.VideoInOptions[0].NormalOptions.WhiteBalanceDatumRect[1]=3096
table.VideoInOptions[0].NormalOptions.WhiteBalanceDatumRect[2]=5096
table.VideoInOptions[0].NormalOptions.WhiteBalanceDatumRect[3]=5096
table.VideoInOptions[0].NormalOptions.WideDynamicRange=50
table.VideoInOptions[0].NormalOptions.WideDynamicRangeMode=0
table.VideoInOptions[0].SmartIRExposure=true
table.VideoInOptions[0].WhiteBalanceDatumRect[0]=3096
table.VideoInOptions[0].WhiteBalanceDatumRect[1]=3096
table.VideoInOptions[0].WhiteBalanceDatumRect[2]=5096
table.VideoInOptions[0].WhiteBalanceDatumRect[3]=5096
table.VideoInOptions[0].WideDynamicRange=50
table.VideoInOptions[0].WideDynamicRangeMode=0

From the second command:
Error: Error -1 getting param in name=VideoInOptions[0].DayNightColor

For whatever difference it makes, I do have the BI integration running currently. Firmware on that cam is: V2.840.15OG008.0.R, Build Date: 2022-02-18

ETA: Same for another on the same firmware.

For another I get the longer list and the second command returns:
table.VideoInOptions[0].DayNightColor=1
That cam is running firmware: V2.800.15OG004.0.R, Build Date: 2020-10-19
V2.800.15OG004.0.R, Build Date: 2020-10-19
 
Last edited:

duplo

Getting comfortable
Joined
May 26, 2022
Messages
301
Reaction score
375
Location
Berlin, Deutschland
1. Its a home assistant problem !
Why do you even think that dahua or andy is responsible for integration to third party software? Thats insane.

2. It is known that dahua changes API in newer firmwares. In all api manuals i have there is a note:

It’s not recommended to use the CGI command from “ video in options ” ; It’s now recommended to
use the commands in 5.1 – 5.7.

Also: not all cameras support what is written in api doc, its just a general description.

3. Sometimes options are only visible when the some settings are set/activated in webinterface.

4. This is the output of my 5442t-ze, running version V2.800.15OG004.0.R, Build Date: 2020-12-03

Code:
table.VideoInOptions[0].AlarmDayNightColorMode=0
table.VideoInOptions[0].AntiFlicker=0
table.VideoInOptions[0].AutoSyncPhase=false
table.VideoInOptions[0].Backlight=0
table.VideoInOptions[0].BacklightRegion[0]=3096
table.VideoInOptions[0].BacklightRegion[1]=3096
table.VideoInOptions[0].BacklightRegion[2]=5096
table.VideoInOptions[0].BacklightRegion[3]=5096
table.VideoInOptions[0].ColorTemperatureLevel=100
table.VideoInOptions[0].DayNightColor=0
table.VideoInOptions[0].DayNightSensitivity=2
table.VideoInOptions[0].DayNightSwitchDelay=6
table.VideoInOptions[0].DoubleExposure=0
table.VideoInOptions[0].DuskOptions.ExternalSyncPhase=125
table.VideoInOptions[0].ExposureCompensation=20
table.VideoInOptions[0].ExposureIris=50
table.VideoInOptions[0].ExposureMode=4
table.VideoInOptions[0].ExposureSpeed=0
table.VideoInOptions[0].ExposureValue1=0.000000
table.VideoInOptions[0].ExposureValue2=8.330000
table.VideoInOptions[0].ExternalSync=0
table.VideoInOptions[0].ExternalSyncPhase=125
table.VideoInOptions[0].FlashControl.Mode=0
table.VideoInOptions[0].FlashControl.Pole=0
table.VideoInOptions[0].FlashControl.PreValue=40
table.VideoInOptions[0].FlashControl.Value=0
table.VideoInOptions[0].Flip=false
table.VideoInOptions[0].FocusMode=2
table.VideoInOptions[0].FocusRect[0]=0
table.VideoInOptions[0].FocusRect[1]=0
table.VideoInOptions[0].FocusRect[2]=8191
table.VideoInOptions[0].FocusRect[3]=8191
table.VideoInOptions[0].Gain=50
table.VideoInOptions[0].GainAuto=true
table.VideoInOptions[0].GainBlue=50
table.VideoInOptions[0].GainGreen=50
table.VideoInOptions[0].GainMax=30
table.VideoInOptions[0].GainMin=0
table.VideoInOptions[0].GainRed=50
table.VideoInOptions[0].GlareInhibition=0
table.VideoInOptions[0].InfraRed=false
table.VideoInOptions[0].InfraRedLevel=0
table.VideoInOptions[0].IrisAuto=true
table.VideoInOptions[0].IrisAutoSensitivity=50
table.VideoInOptions[0].Mirror=false
table.VideoInOptions[0].NightOptions.AlarmDayNightColorMode=0
table.VideoInOptions[0].NightOptions.AntiFlicker=0
table.VideoInOptions[0].NightOptions.Backlight=0
table.VideoInOptions[0].NightOptions.BacklightRegion[0]=3096
table.VideoInOptions[0].NightOptions.BacklightRegion[1]=3096
table.VideoInOptions[0].NightOptions.BacklightRegion[2]=5096
table.VideoInOptions[0].NightOptions.BacklightRegion[3]=5096
table.VideoInOptions[0].NightOptions.BrightnessThreshold=50
table.VideoInOptions[0].NightOptions.DayNightColor=2
table.VideoInOptions[0].NightOptions.DayNightSensitivity=2
table.VideoInOptions[0].NightOptions.DayNightSwitchDelay=6
table.VideoInOptions[0].NightOptions.DoubleExposure=0
table.VideoInOptions[0].NightOptions.ExposureCompensation=30
table.VideoInOptions[0].NightOptions.ExposureIris=50
table.VideoInOptions[0].NightOptions.ExposureMode=4
table.VideoInOptions[0].NightOptions.ExposureSpeed=0
table.VideoInOptions[0].NightOptions.ExposureValue1=0.000000
table.VideoInOptions[0].NightOptions.ExposureValue2=8.330000
table.VideoInOptions[0].NightOptions.ExternalSyncPhase=125
table.VideoInOptions[0].NightOptions.Flip=false
table.VideoInOptions[0].NightOptions.FocusMode=2
table.VideoInOptions[0].NightOptions.Gain=50
table.VideoInOptions[0].NightOptions.GainAuto=true
table.VideoInOptions[0].NightOptions.GainBlue=50
table.VideoInOptions[0].NightOptions.GainGreen=50
table.VideoInOptions[0].NightOptions.GainMax=42
table.VideoInOptions[0].NightOptions.GainMin=0
table.VideoInOptions[0].NightOptions.GainRed=50
table.VideoInOptions[0].NightOptions.GlareInhibition=0
table.VideoInOptions[0].NightOptions.InfraRed=false
table.VideoInOptions[0].NightOptions.InfraRedLevel=0
table.VideoInOptions[0].NightOptions.IrisAuto=true
table.VideoInOptions[0].NightOptions.IrisAutoSensitivity=50
table.VideoInOptions[0].NightOptions.Mirror=false
table.VideoInOptions[0].NightOptions.Profile=3
table.VideoInOptions[0].NightOptions.ReferenceLevel=50
table.VideoInOptions[0].NightOptions.Rotate90=0
table.VideoInOptions[0].NightOptions.SmartIRExposure=true
table.VideoInOptions[0].NightOptions.SunriseHour=7
table.VideoInOptions[0].NightOptions.SunriseMinute=45
table.VideoInOptions[0].NightOptions.SunriseSecond=0
table.VideoInOptions[0].NightOptions.SunsetHour=18
table.VideoInOptions[0].NightOptions.SunsetMinute=37
table.VideoInOptions[0].NightOptions.SunsetSecond=0
table.VideoInOptions[0].NightOptions.SwitchMode=0
table.VideoInOptions[0].NightOptions.TemporaryConfigs.AntiFlicker=0
table.VideoInOptions[0].NightOptions.TemporaryConfigs.ExposureMode=0
table.VideoInOptions[0].NightOptions.TemporaryConfigs.ExposureValue1=0.100000
table.VideoInOptions[0].NightOptions.TemporaryConfigs.ExposureValue2=80
table.VideoInOptions[0].NightOptions.TemporaryConfigs.GainMax=50
table.VideoInOptions[0].NightOptions.TemporaryConfigs.GainMin=10
table.VideoInOptions[0].NightOptions.WhiteBalance=Auto
table.VideoInOptions[0].NightOptions.WhiteBalanceDatumRect[0]=0
table.VideoInOptions[0].NightOptions.WhiteBalanceDatumRect[1]=0
table.VideoInOptions[0].NightOptions.WhiteBalanceDatumRect[2]=1000
table.VideoInOptions[0].NightOptions.WhiteBalanceDatumRect[3]=1000
table.VideoInOptions[0].NightOptions.WideDynamicRange=50
table.VideoInOptions[0].NightOptions.WideDynamicRangeMode=0
table.VideoInOptions[0].NormalOptions.AlarmDayNightColorMode=0
table.VideoInOptions[0].NormalOptions.AntiFlicker=0
table.VideoInOptions[0].NormalOptions.Backlight=0
table.VideoInOptions[0].NormalOptions.BacklightRegion[0]=3096
table.VideoInOptions[0].NormalOptions.BacklightRegion[1]=3096
table.VideoInOptions[0].NormalOptions.BacklightRegion[2]=5096
table.VideoInOptions[0].NormalOptions.BacklightRegion[3]=5096
table.VideoInOptions[0].NormalOptions.BrightnessThreshold=50
table.VideoInOptions[0].NormalOptions.DayNightColor=1
table.VideoInOptions[0].NormalOptions.DayNightSensitivity=2
table.VideoInOptions[0].NormalOptions.DayNightSwitchDelay=6
table.VideoInOptions[0].NormalOptions.DoubleExposure=0
table.VideoInOptions[0].NormalOptions.ExposureCompensation=50
table.VideoInOptions[0].NormalOptions.ExposureIris=50
table.VideoInOptions[0].NormalOptions.ExposureMode=8
table.VideoInOptions[0].NormalOptions.ExposureSpeed=0
table.VideoInOptions[0].NormalOptions.ExposureValue1=0
table.VideoInOptions[0].NormalOptions.ExposureValue2=40
table.VideoInOptions[0].NormalOptions.ExternalSyncPhase=125
table.VideoInOptions[0].NormalOptions.Flip=false
table.VideoInOptions[0].NormalOptions.FocusMode=2
table.VideoInOptions[0].NormalOptions.Gain=50
table.VideoInOptions[0].NormalOptions.GainAuto=true
table.VideoInOptions[0].NormalOptions.GainBlue=50
table.VideoInOptions[0].NormalOptions.GainGreen=50
table.VideoInOptions[0].NormalOptions.GainMax=50
table.VideoInOptions[0].NormalOptions.GainMin=0
table.VideoInOptions[0].NormalOptions.GainRed=50
table.VideoInOptions[0].NormalOptions.GlareInhibition=0
table.VideoInOptions[0].NormalOptions.InfraRed=false
table.VideoInOptions[0].NormalOptions.InfraRedLevel=0
table.VideoInOptions[0].NormalOptions.IrisAuto=true
table.VideoInOptions[0].NormalOptions.IrisAutoSensitivity=50
table.VideoInOptions[0].NormalOptions.Mirror=false
table.VideoInOptions[0].NormalOptions.Profile=0
table.VideoInOptions[0].NormalOptions.ReferenceLevel=50
table.VideoInOptions[0].NormalOptions.Rotate90=0
table.VideoInOptions[0].NormalOptions.SmartIRExposure=true
table.VideoInOptions[0].NormalOptions.SunriseHour=0
table.VideoInOptions[0].NormalOptions.SunriseMinute=0
table.VideoInOptions[0].NormalOptions.SunriseSecond=0
table.VideoInOptions[0].NormalOptions.SunsetHour=23
table.VideoInOptions[0].NormalOptions.SunsetMinute=59
table.VideoInOptions[0].NormalOptions.SunsetSecond=59
table.VideoInOptions[0].NormalOptions.SwitchMode=0
table.VideoInOptions[0].NormalOptions.TemporaryConfigs.AntiFlicker=0
table.VideoInOptions[0].NormalOptions.TemporaryConfigs.ExposureMode=0
table.VideoInOptions[0].NormalOptions.TemporaryConfigs.ExposureValue1=0.100000
table.VideoInOptions[0].NormalOptions.TemporaryConfigs.ExposureValue2=80
table.VideoInOptions[0].NormalOptions.TemporaryConfigs.GainMax=50
table.VideoInOptions[0].NormalOptions.TemporaryConfigs.GainMin=10
table.VideoInOptions[0].NormalOptions.WhiteBalance=Auto
table.VideoInOptions[0].NormalOptions.WhiteBalanceDatumRect[0]=0
table.VideoInOptions[0].NormalOptions.WhiteBalanceDatumRect[1]=0
table.VideoInOptions[0].NormalOptions.WhiteBalanceDatumRect[2]=1000
table.VideoInOptions[0].NormalOptions.WhiteBalanceDatumRect[3]=1000
table.VideoInOptions[0].NormalOptions.WideDynamicRange=50
table.VideoInOptions[0].NormalOptions.WideDynamicRangeMode=0
table.VideoInOptions[0].ReferenceLevel=50
table.VideoInOptions[0].ReferenceLevelEnable=false
table.VideoInOptions[0].Rotate90=0
table.VideoInOptions[0].SignalFormat=Inside
table.VideoInOptions[0].SmartIRExposure=true
table.VideoInOptions[0].Snapshot.ColorTemperatureLevel=50
table.VideoInOptions[0].Snapshot.ExposureSpeed=0
table.VideoInOptions[0].Snapshot.ExposureValue1=40
table.VideoInOptions[0].Snapshot.ExposureValue2=40
table.VideoInOptions[0].Snapshot.Gain=50
table.VideoInOptions[0].Snapshot.GainAuto=true
table.VideoInOptions[0].Snapshot.GainBlue=50
table.VideoInOptions[0].Snapshot.GainGreen=50
table.VideoInOptions[0].Snapshot.GainRed=50
table.VideoInOptions[0].Snapshot.WhiteBalance=Disable
table.VideoInOptions[0].TemporaryConfigs.AntiFlicker=0
table.VideoInOptions[0].TemporaryConfigs.ExposureMode=0
table.VideoInOptions[0].TemporaryConfigs.ExposureValue1=0.100000
table.VideoInOptions[0].TemporaryConfigs.ExposureValue2=80
table.VideoInOptions[0].TemporaryConfigs.GainMax=50
table.VideoInOptions[0].TemporaryConfigs.GainMin=10
table.VideoInOptions[0].WhiteBalance=Auto
table.VideoInOptions[0].WhiteBalanceDatumRect[0]=0
table.VideoInOptions[0].WhiteBalanceDatumRect[1]=0
table.VideoInOptions[0].WhiteBalanceDatumRect[2]=1000
table.VideoInOptions[0].WhiteBalanceDatumRect[3]=1000
table.VideoInOptions[0].WideDynamicRange=50
table.VideoInOptions[0].WideDynamicRangeMode=0
 
Last edited:

GaryOkie

Pulling my weight
Joined
Jul 28, 2017
Messages
246
Reaction score
141
Location
Route 66, OK
Insane? First of all Duplo, I am not reporting this as a Home Assistant integration problem, per-se. It is however obviously adversely affected by a problem few have noticed even existed. I have an active Github issue report requesting that the python library that uses the Dahua/Amcrest API be enhanced to account for unexpected firmware results such as this. That is merely a workaround for any 3rd party s/w using that library (there are others besides Home Assistant) . The approach is to ignore the missing config error and move on with just a warning - albeit with no ability to control the daynight setting if it were missing.

The root issue here is the newer 2022 versions of the Dahua/Andy T5442T firmware somehow spontaneously gets altered significantly which can neuter some of its capabilities. I concur with your findings and Mikes that the older 2020 versions of the firmware do NOT have this problem.

Mike has also confirmed that his two cameras with the 2022 version exhibit the same reduced configuration as I had reported. If it were this way from the start after the new firmware was installed, fine - that is somewhat understandable. But no, it gets changed to this new stripped down config by itself and disables capabilities such as daynight control it had originally.

In my detailed before/after comparison the configuration differences are rather shocking. The spontaneous new config removed 757 normal/default CGI settings, and added 81 new ones! Interestingly, these changes seem to have had no visible effect on the image the best I can tell. And as I said before, unless you or other software were attempting to adjust one of those now missing parameters, you would never know this has occurred. Mike, using BI, sure didn't.

I wasn't aware that VideoInOptions was being deprecated. That is good info and I will add that information to the GitHub issue after reviewing what the new alternatives are. It would be good to future-proof that library. But it still doesn't solve the root issue that the 2022 firmware has dementia.
 
Last edited:

duplo

Getting comfortable
Joined
May 26, 2022
Messages
301
Reaction score
375
Location
Berlin, Deutschland
the main question for me:

why do you even need these config readouts. the marked option is for day/night automatic change, which does a horrible job on any (dahua) camera. thats why people use sunset tools for change.

what is the benefit home assistant have from these settings ? dont understand. just remove them from code.

here is the output of the mini ptz with 2023 firmware

Code:
table.VideoInOptions[0].AlarmDayNightColorMode=0
table.VideoInOptions[0].AntiFlicker=0
table.VideoInOptions[0].AutoSyncPhase=false
table.VideoInOptions[0].Backlight=0
table.VideoInOptions[0].BacklightRegion[0]=3096
table.VideoInOptions[0].BacklightRegion[1]=3096
table.VideoInOptions[0].BacklightRegion[2]=5096
table.VideoInOptions[0].BacklightRegion[3]=5096
table.VideoInOptions[0].ColorTemperatureLevel=50
table.VideoInOptions[0].DayNightColor=1
table.VideoInOptions[0].DayNightSensitivity=2
table.VideoInOptions[0].DayNightSwitchDelay=6
table.VideoInOptions[0].DoubleExposure=0
table.VideoInOptions[0].DuskOptions.ExternalSyncPhase=125
table.VideoInOptions[0].ExposureIris=50
table.VideoInOptions[0].ExposureMode=0
table.VideoInOptions[0].ExposureSpeed=0
table.VideoInOptions[0].ExposureValue1=0.000000
table.VideoInOptions[0].ExposureValue2=40
table.VideoInOptions[0].ExternalSync=0
table.VideoInOptions[0].ExternalSyncPhase=125
table.VideoInOptions[0].FlashControl.Mode=0
table.VideoInOptions[0].FlashControl.Pole=0
table.VideoInOptions[0].FlashControl.PreValue=40
table.VideoInOptions[0].FlashControl.Value=0
table.VideoInOptions[0].Flip=false
table.VideoInOptions[0].FocusMode=0
table.VideoInOptions[0].FocusRect[0]=0
table.VideoInOptions[0].FocusRect[1]=0
table.VideoInOptions[0].FocusRect[2]=8191
table.VideoInOptions[0].FocusRect[3]=8191
table.VideoInOptions[0].Gain=50
table.VideoInOptions[0].GainAuto=true
table.VideoInOptions[0].GainBlue=50
table.VideoInOptions[0].GainGreen=50
table.VideoInOptions[0].GainMax=50
table.VideoInOptions[0].GainMin=0
table.VideoInOptions[0].GainRed=50
table.VideoInOptions[0].GlareInhibition=0
table.VideoInOptions[0].InfraRed=false
table.VideoInOptions[0].InfraRedLevel=0
table.VideoInOptions[0].IrisAuto=true
table.VideoInOptions[0].IrisAutoSensitivity=50
table.VideoInOptions[0].Mirror=false
table.VideoInOptions[0].NightOptions.AlarmDayNightColorMode=0
table.VideoInOptions[0].NightOptions.AntiFlicker=0
table.VideoInOptions[0].NightOptions.Backlight=0
table.VideoInOptions[0].NightOptions.BacklightRegion[0]=3096
table.VideoInOptions[0].NightOptions.BacklightRegion[1]=3096
table.VideoInOptions[0].NightOptions.BacklightRegion[2]=5096
table.VideoInOptions[0].NightOptions.BacklightRegion[3]=5096
table.VideoInOptions[0].NightOptions.BrightnessThreshold=50
table.VideoInOptions[0].NightOptions.DayNightColor=1
table.VideoInOptions[0].NightOptions.DayNightSensitivity=2
table.VideoInOptions[0].NightOptions.DayNightSwitchDelay=6
table.VideoInOptions[0].NightOptions.ExposureIris=50
table.VideoInOptions[0].NightOptions.ExposureMode=0
table.VideoInOptions[0].NightOptions.ExposureSpeed=0
table.VideoInOptions[0].NightOptions.ExposureValue1=0.000000
table.VideoInOptions[0].NightOptions.ExposureValue2=40
table.VideoInOptions[0].NightOptions.ExternalSyncPhase=125
table.VideoInOptions[0].NightOptions.Flip=false
table.VideoInOptions[0].NightOptions.Gain=50
table.VideoInOptions[0].NightOptions.GainAuto=true
table.VideoInOptions[0].NightOptions.GainBlue=50
table.VideoInOptions[0].NightOptions.GainGreen=50
table.VideoInOptions[0].NightOptions.GainMax=50
table.VideoInOptions[0].NightOptions.GainMin=0
table.VideoInOptions[0].NightOptions.GainRed=50
table.VideoInOptions[0].NightOptions.GlareInhibition=0
table.VideoInOptions[0].NightOptions.InfraRed=false
table.VideoInOptions[0].NightOptions.InfraRedLevel=0
table.VideoInOptions[0].NightOptions.IrisAuto=true
table.VideoInOptions[0].NightOptions.IrisAutoSensitivity=50
table.VideoInOptions[0].NightOptions.Mirror=false
table.VideoInOptions[0].NightOptions.Profile=3
table.VideoInOptions[0].NightOptions.ReferenceLevel=50
table.VideoInOptions[0].NightOptions.Rotate90=0
table.VideoInOptions[0].NightOptions.SunriseHour=0
table.VideoInOptions[0].NightOptions.SunriseMinute=0
table.VideoInOptions[0].NightOptions.SunriseSecond=0
table.VideoInOptions[0].NightOptions.SunsetHour=24
table.VideoInOptions[0].NightOptions.SunsetMinute=0
table.VideoInOptions[0].NightOptions.SunsetSecond=0
table.VideoInOptions[0].NightOptions.SwitchMode=2
table.VideoInOptions[0].NightOptions.TemporaryConfigs.AntiFlicker=0
table.VideoInOptions[0].NightOptions.TemporaryConfigs.ExposureMode=0
table.VideoInOptions[0].NightOptions.TemporaryConfigs.ExposureValue1=0.100000
table.VideoInOptions[0].NightOptions.TemporaryConfigs.ExposureValue2=80
table.VideoInOptions[0].NightOptions.TemporaryConfigs.GainMax=50
table.VideoInOptions[0].NightOptions.TemporaryConfigs.GainMin=10
table.VideoInOptions[0].NightOptions.WhiteBalance=Auto
table.VideoInOptions[0].NightOptions.WhiteBalanceDatumRect[0]=3096
table.VideoInOptions[0].NightOptions.WhiteBalanceDatumRect[1]=3096
table.VideoInOptions[0].NightOptions.WhiteBalanceDatumRect[2]=5096
table.VideoInOptions[0].NightOptions.WhiteBalanceDatumRect[3]=5096
table.VideoInOptions[0].NightOptions.WideDynamicRange=0
table.VideoInOptions[0].NightOptions.WideDynamicRangeMode=0
table.VideoInOptions[0].NormalOptions.AlarmDayNightColorMode=0
table.VideoInOptions[0].NormalOptions.AntiFlicker=0
table.VideoInOptions[0].NormalOptions.Backlight=0
table.VideoInOptions[0].NormalOptions.BacklightRegion[0]=3096
table.VideoInOptions[0].NormalOptions.BacklightRegion[1]=3096
table.VideoInOptions[0].NormalOptions.BacklightRegion[2]=5096
table.VideoInOptions[0].NormalOptions.BacklightRegion[3]=5096
table.VideoInOptions[0].NormalOptions.BrightnessThreshold=50
table.VideoInOptions[0].NormalOptions.DayNightColor=1
table.VideoInOptions[0].NormalOptions.DayNightSensitivity=2
table.VideoInOptions[0].NormalOptions.DayNightSwitchDelay=6
table.VideoInOptions[0].NormalOptions.ExposureIris=50
table.VideoInOptions[0].NormalOptions.ExposureMode=0
table.VideoInOptions[0].NormalOptions.ExposureSpeed=0
table.VideoInOptions[0].NormalOptions.ExposureValue1=0.000000
table.VideoInOptions[0].NormalOptions.ExposureValue2=40
table.VideoInOptions[0].NormalOptions.ExternalSyncPhase=125
table.VideoInOptions[0].NormalOptions.Flip=false
table.VideoInOptions[0].NormalOptions.Gain=50
table.VideoInOptions[0].NormalOptions.GainAuto=true
table.VideoInOptions[0].NormalOptions.GainBlue=50
table.VideoInOptions[0].NormalOptions.GainGreen=50
table.VideoInOptions[0].NormalOptions.GainMax=50
table.VideoInOptions[0].NormalOptions.GainMin=0
table.VideoInOptions[0].NormalOptions.GainRed=50
table.VideoInOptions[0].NormalOptions.GlareInhibition=0
table.VideoInOptions[0].NormalOptions.InfraRed=false
table.VideoInOptions[0].NormalOptions.InfraRedLevel=0
table.VideoInOptions[0].NormalOptions.IrisAuto=true
table.VideoInOptions[0].NormalOptions.IrisAutoSensitivity=50
table.VideoInOptions[0].NormalOptions.Mirror=false
table.VideoInOptions[0].NormalOptions.Profile=0
table.VideoInOptions[0].NormalOptions.ReferenceLevel=50
table.VideoInOptions[0].NormalOptions.Rotate90=0
table.VideoInOptions[0].NormalOptions.SunriseHour=0
table.VideoInOptions[0].NormalOptions.SunriseMinute=0
table.VideoInOptions[0].NormalOptions.SunriseSecond=0
table.VideoInOptions[0].NormalOptions.SunsetHour=23
table.VideoInOptions[0].NormalOptions.SunsetMinute=59
table.VideoInOptions[0].NormalOptions.SunsetSecond=59
table.VideoInOptions[0].NormalOptions.SwitchMode=0
table.VideoInOptions[0].NormalOptions.TemporaryConfigs.AntiFlicker=0
table.VideoInOptions[0].NormalOptions.TemporaryConfigs.ExposureMode=0
table.VideoInOptions[0].NormalOptions.TemporaryConfigs.ExposureValue1=0.100000
table.VideoInOptions[0].NormalOptions.TemporaryConfigs.ExposureValue2=80
table.VideoInOptions[0].NormalOptions.TemporaryConfigs.GainMax=50
table.VideoInOptions[0].NormalOptions.TemporaryConfigs.GainMin=10
table.VideoInOptions[0].NormalOptions.WhiteBalance=Auto
table.VideoInOptions[0].NormalOptions.WhiteBalanceDatumRect[0]=3096
table.VideoInOptions[0].NormalOptions.WhiteBalanceDatumRect[1]=3096
table.VideoInOptions[0].NormalOptions.WhiteBalanceDatumRect[2]=5096
table.VideoInOptions[0].NormalOptions.WhiteBalanceDatumRect[3]=5096
table.VideoInOptions[0].NormalOptions.WideDynamicRange=0
table.VideoInOptions[0].NormalOptions.WideDynamicRangeMode=0
table.VideoInOptions[0].ReferenceLevel=50
table.VideoInOptions[0].ReferenceLevelEnable=false
table.VideoInOptions[0].Rotate90=0
table.VideoInOptions[0].SignalFormat=Inside
table.VideoInOptions[0].Snapshot.ColorTemperatureLevel=50
table.VideoInOptions[0].Snapshot.ExposureSpeed=0
table.VideoInOptions[0].Snapshot.ExposureValue1=40
table.VideoInOptions[0].Snapshot.ExposureValue2=40
table.VideoInOptions[0].Snapshot.Gain=50
table.VideoInOptions[0].Snapshot.GainAuto=true
table.VideoInOptions[0].Snapshot.GainBlue=50
table.VideoInOptions[0].Snapshot.GainGreen=50
table.VideoInOptions[0].Snapshot.GainRed=50
table.VideoInOptions[0].Snapshot.WhiteBalance=Disable
table.VideoInOptions[0].TemporaryConfigs.AntiFlicker=0
table.VideoInOptions[0].TemporaryConfigs.ExposureMode=0
table.VideoInOptions[0].TemporaryConfigs.ExposureValue1=0.100000
table.VideoInOptions[0].TemporaryConfigs.ExposureValue2=80
table.VideoInOptions[0].TemporaryConfigs.GainMax=50
table.VideoInOptions[0].TemporaryConfigs.GainMin=10
table.VideoInOptions[0].WhiteBalance=Auto
table.VideoInOptions[0].WhiteBalanceDatumRect[0]=3096
table.VideoInOptions[0].WhiteBalanceDatumRect[1]=3096
table.VideoInOptions[0].WhiteBalanceDatumRect[2]=5096
table.VideoInOptions[0].WhiteBalanceDatumRect[3]=5096
table.VideoInOptions[0].WideDynamicRange=0
table.VideoInOptions[0].WideDynamicRangeMode=0
 

GaryOkie

Pulling my weight
Joined
Jul 28, 2017
Messages
246
Reaction score
141
Location
Route 66, OK
I actually have no use for the service call to set the color mode (auto,bw,color) the library provides. It's problem is upon initialization, it reads the current settings via an API call and gets an unexpected error and aborts the setup. I agree this is a 3rd party software issue that I am not asking Dahua or Andy to address.

So lets completely separate that issue from the core issue of why the 2022 T5442T firmware has the proper/expected configuration initially and then sometime later, inexplicably reverts to removing several hundred configurations, daynight control among them. How is that normal?

That is the sole purpose of wanting to submit this to Dahua to investigate.

Oh, reverting to 2020 firmware is another workaround that will save me a lot of grief. But I hope to assist with Dahua/Andy in understanding what is normal for this release or is it broken.
 
Last edited:

wittaj

IPCT Contributor
Joined
Apr 28, 2019
Messages
25,041
Reaction score
48,824
Location
USA
We know nobody likes to hear this, but did you set it up with plain ole Internet Explorer and not some other browser or browser with IE tab.

Before I new better I would see that happen when setting up in a different browser.
 
Last edited:

GaryOkie

Pulling my weight
Joined
Jul 28, 2017
Messages
246
Reaction score
141
Location
Route 66, OK
UGH, An even more problematic issue - specifying IE for setup (before any other firmware issue can be looked into?)

nope, did not use IE or any IE mimicry. FireFox.
 

GaryOkie

Pulling my weight
Joined
Jul 28, 2017
Messages
246
Reaction score
141
Location
Route 66, OK
Thanks Wittaj. If that is the solution to fixing this firmware, I think you have just identified a bigger issue than the one I was trying to get attention to.
 

wittaj

IPCT Contributor
Joined
Apr 28, 2019
Messages
25,041
Reaction score
48,824
Location
USA
Unfortunately we have seen many come here with reports of settings not holding after a reboot, power outage, changing a setting in one part of the camera and other things change, and the one consistent response was they used something other than IE.

Once they factory reset the camera 3 times. Apply a firmware update if applicable and Initialize it in IE, all the settings start to hold and don't mysteriously change.

And some cams are more problematic than others.
 

GaryOkie

Pulling my weight
Joined
Jul 28, 2017
Messages
246
Reaction score
141
Location
Route 66, OK
factory reset the camera 3 times. Apply a firmware update if applicable and Initialize it in IE, all the settings start to hold and don't mysteriously change.
Beetlejuice, Beetlejuice, Beetlejuice! IEEEEE! It's showtime!
 
Last edited:
Top