Any developers here use the Hikvision Network SDK?

hawkeye217

Pulling my weight
Aug 18, 2019
97
126
United States
I have an EZVIZ DB1 doorbell (a rebranded Hikvision DS-HD1) and have used the Hikvision Device Network SDK (SDK) and their C++ examples to write some code to adjust things like camera exposure time and WDR enable/disable. But I haven't been able to find documentation or any info on changing some things like the status LED or IR LEDs.

I can use pyezviz, a Python package that someone developed to control the LEDs (the package developer reverse engineered the API that connects to the Hik/Ezviz cloud), but I want to be able to control the device locally and block internet access to the camera. I've sniffed the packets coming back and forth from the Ezviz cloud to the camera with Wireshark when I use pyezviz to enable/disable the status LED and IR leds, but the only ASCII I can see in the packet capture (this one is for the status led) is the following string: "/<my device's serial number>/1001/18699"

It looks like the Ezviz API has the ability to enable/disable "switches" (pyEzviz/constants.py at c5acb29b4604ba050b093c4be91ee9351da6a759 · BaQs/pyEzviz), and I'm guessing there has to be a function in the Hik firmware that can just enable/disable a switch by the specific ID number.

Anyone have any ideas? Would love to pick your brain if you've used their SDK before and have more experience in digging into this than I do!
 
Hi @hawkeye217 ,

In this documentation you will find how to control supplement light on hikvision cameras. It is mostly refered to colorvu models.
Hope this helps.

ps:ctrl+F -> supplement

Thanks! Unfortunately the Hikvision DS-HD1 does not seem to support ISAPI (I wish it did!), which is why I am having to use the Network SDK and C++ code to modify parameters on the camera.

I will poke around a bit more and see if I can figure out something with the "supplemental light" with the SDK.
 
Managed to write some C++ code to try and get info on the "supplement light", but I'm getting error 23 back from NET_DVR_GetError, which is "Device does not support this function."

So it must be something else...

Appreciate your help, though.

Anyone else have any ideas?