New RCA HSDB2A 3MP Doorbell IP Camera

Too kewl, great news. I am glad to help someone, I have had so much help from everyone here. This is a Great Forum.
So the LaView App is far from a 5 star App, but it has worked pretty good for me. There are a few times I get a notification, click on it and the App will ask for login info. But I just close the App, reopen and all is good. There was a recent issue that no one was getting called from our Doorbell when the button was pushed. It clear up after about a week, we are blaming it on the cloud. :)

Take Care,
David

Great to hear! Thanks again for the quick help.
 
Thank you! I was able to get the camera firmware upgraded and also reconnected to Blue Iris. Your screenshot helped and I also had to adjust my firewall rules on PFSense. After moving it to a separate IoT network it would help if I created a rule.

I was able to download and get an account created for the Laview ONE app. It seems like the only way you can add a device is by QR code or SN. Is there another way to add my RCA doorbell would I need to scan a code on the doorbell itself?

Hey what hardware do you have PFsense running on?
 
I bought the Negate SG-3100. Came from an Ubiquiti EdgeRouter. Really glad made the switch. Running one Ubquiti AP that does the entire house.

Decent review of it:


Thank You. I will check it out. Do like the one box solution like that, plus PFsense is testing any new version updates on their hardware, Netgate.
Did look at Amazon PFsense too. Thanks.
 
As an Amazon Associate IPCamTalk earns from qualifying purchases.
Anyone on here managed to get the PIR alerts working with Home Assistant? I have an older LaView NVR. Been unable to get the NVR or home assistant to detect the PIR alerts. I get them in my App. I've seen a few posts about people getting it working, but nothing in the Home Assistant forums
 
Thank You. I will check it out. Do like the one box solution like that, plus PFsense is testing any new version updates on their hardware, Netgate.
Did look at Amazon PFsense too. Thanks.
Anyone on here managed to get the PIR alerts working with Home Assistant? I have an older LaView NVR. Been unable to get the NVR or home assistant to detect the PIR alerts. I get them in my App. I've seen a few posts about people getting it working, but nothing in the Home Assistant forums
Yes, I really like it. It's a little more money, but not worried about future updates causing problems because of the Netgate/Pfsense tie. Also helping to support the cause with officially branded hardware.
 
As an Amazon Associate IPCamTalk earns from qualifying purchases.
Anyone on here managed to get the PIR alerts working with Home Assistant? I have an older LaView NVR. Been unable to get the NVR or home assistant to detect the PIR alerts. I get them in my App. I've seen a few posts about people getting it working, but nothing in the Home Assistant forums

Does this message #1,068 help you? From what I am reading BI is involved.
 
For those interested in an app that’s not tied to the cloud, I installed Hik-Connect and used the visitor mode. I was able to completely uninstall Ezviz and delete my cloud account. Everything is working well standalone so far, but I’m still doing more testing. You lose a few features and gain some features as there are some differences between Ezviz and Hik-Connect. Hopefully someone else can do some testing on this and will get more details.
 
  • Like
Reactions: pete_c and David L
Does this message #1,068 help you? From what I am reading BI is involved.
It's close but not quite. I like the idea of Blue Iris, but I already have a NVR and it works fine. BI requires a decent PC, etc.

I do have a an option to use docker and running zoneminder. All I really want is to expose the motion PIR motion Detection to my HA instance locally. Zoneminder might be the way to go. Just never messed with it before.

Right now the best I have going, which "works" is to use an old android phone running tasker, i use alerts from the laview app on the phone to trigger an input boolean in HA. It works, but it's not fully local and a bit delayed
 
Here have been running Zoneminder since the days of analog cameras. Used an 8 chip video encoder card for many years. Been looking at Shinobi lately.

Running HA in Docker / Node Red / MQTT and Homeseer software / Ubuntu 18.04 / Oracle 7E VB on a micro Atom based TV Box.

Yes it would be great to be able to get the Hikvision Doorbell PIR motion over to MQTT and or HA.

I am doing this today with my HAI / Leviton Omni Pro 2 outdoor Optex PIR and a MQTT / Smartthings plugin.
 
  • Like
Reactions: David L
Last edited:
Found this doing a Google search.

Getting events from Hikvision camera

git clone eusfelix/hikvision-to-mqtt
cd hikvision-to-mqtt
npm install

hikvision-to-mqtt

Sends alarm events from Hikvision devices to MQTT.

Best to read the above link and tinker with it.

Here also have installed Node Red on the HA server.

Installing here to talk to my local mosquitto server on the same HA box. Validating configuration and MQTT using MQTT explorer

I believe that the app relies on Hik ISAPI which is not implemented on the hikvision doorbell. If you install ONVIF capable firmware, you can receive ONVIF events as can be easily verified with the ONVIF Device Manager application.

However, for those wishing to use the doorbell camera in HA, it's a bit of a bind. There are two camera interfaces in HA. One (hikvision) relies on Hik ISAPI which is not implemented in the doorbell and the ONVIF HA module does not process ONVIF events.

So, one can implement an ONVIF API app oneself to relay events from the camera to say mqtt. The closest to a semi-reliable ONVIF event reader is the NodeJS onvif-nvt module. They have an event processing rudimentary example that works with some Hikvision cameras including the doorbell. There is also a python onvif-zeep library, but its event processing module is broken (that's why HA does not have ONVIF even processing because they rely on that library).
 
  • Like
Reactions: David L
There is also a python onvif-zeep library, but its event processing module is broken (that's why HA does not have ONVIF even processing because they rely on that library).
Well someone needs to fix it Pronto :)

Thanks for the HA info...
 
  • Like
Reactions: Paul D
Thank you vc1234.

So really for time bean will utilize my wired PIR alarm motion detection ==> MQTT plugin for the OmniPro 2 panel and wait to see what happens with the above mentioned stuff.

Last night tried to enable SSH with the Hikvision SDK demo program. I had no luck with it.
 
Thank You. I will check it out. Do like the one box solution like that, plus PFsense is testing any new version updates on their hardware, Netgate.
Did look at Amazon PFsense too. Thanks.

I run pfSense as well but didn't go with the Netgate hardware. I run a fitlet2, which has more horsepower and you can run extra RAM and an M2 drive.
 
As an Amazon Associate IPCamTalk earns from qualifying purchases.
  • Like
Reactions: David L
I run pfSense as well but didn't go with the Netgate hardware. I run a fitlet2, which has more horsepower and you can run extra RAM and an M2 drive.

Thank you for sharing, nice box. So now that I have been looking at these type boxes I am looking for a box that has one WAN and two LAN (or one LAN, one Opt.) ports. I may even go with 3 LANs, thinking private LAN, IoT LAN and our webserver on its own LAN. Been reading a lot about these boxes stating Gig LANs but reviewers are saying they lack Gig bandwidth. I presently don't have Gig Internet but figured I would get a box, or build one, that can process (CPU), Gig LANs for future. AT&T just came into our neighborhood with their Gig service and Xfinity has theirs too (crazy but Xfinity offers a 2 Gig service too), hopefully they will battle it out so prices will stay low or drop :)

One concern I have though is who makes the box. Definitely don't want a box with a backdoor.
 
Last edited:
I believe that the app relies on Hik ISAPI which is not implemented on the hikvision doorbell. If you install ONVIF capable firmware, you can receive ONVIF events as can be easily verified with the ONVIF Device Manager application.

However, for those wishing to use the doorbell camera in HA, it's a bit of a bind. There are two camera interfaces in HA. One (hikvision) relies on Hik ISAPI which is not implemented in the doorbell and the ONVIF HA module does not process ONVIF events.

So, one can implement an ONVIF API app oneself to relay events from the camera to say mqtt. The closest to a semi-reliable ONVIF event reader is the NodeJS onvif-nvt module. They have an event processing rudimentary example that works with some Hikvision cameras including the doorbell. There is also a python onvif-zeep library, but its event processing module is broken (that's why HA does not have ONVIF even processing because they rely on that library).
Thanks for the great information. It's a bit above my level. I'm going to see what I can figure out. For now, I think I'll just live with my solution, which is pretty good. I'll share for anyone else out there.

I have a cheap android phone that I keep plugged in all the time, connected to wi-fi, no cellular. I have the laview one app loaded, and Tasker. I've created tasker events to turn on a input_boolean using the rest API within Home Assistant. I then have automations set up for that. It's actually pretty fast, and works reliably. I can (but have not yet) create separate tasks for motion and doorbell presses based on the Alert sent to the android phone. Of course the only issue is that it still is dependent on the internet, and the laview one app.
 
I checked with Nelly's support for a change log on their firmware from NDB313-W V5.2.4.Build 190412 > 190625. This is the response FYI.

Hey Ed,

Unfortunately the Auto-Update doesn't work and the manufacturer didn't provide a changelog with the newer firmware. The only thing we are aware of that they added in the newer firmware is a substream for ONVIF compatibility.

Let us know if there's anything else we can help with.

Thanks,
Ryan O'Daniel
Technical Operations Manager
 
  • Like
Reactions: pete_c
I spent a bit of time looking at XML/Soap messages 'onvif_zeep' exchanges with the camera. You can work around the broken event example, but you get another problem: the 'zeep' XML module cannot fully parse an XML alarm message and leaves out important fields (you can compare 'm' to 'm1' to see what is left out). You can however intercept the original XML response from camera and parse it manually like this:
Python:
## Override transport to capture xml:
from onvif import ONVIFCamera
from datetime import timedelta, datetime
from zeep import transports
import xmltodict

class Transport(transports.Transport):
    def post(self, address, message, headers):
        self.xml_request = message.decode('utf-8')
        response = super().post(address, message, headers)
        self.response = response
        return response

expired = True
while True:
  # Subscribe every 5 min:
  if expired:
    mycam = ONVIFCamera('192.168.1.10, 80, 'admin', 'pass', transport=Transport())
    mycam.create_pullpoint_service()
    service = mycam.pullpoint.zeep_client._get_service('EventService')
    port = mycam.pullpoint.zeep_client._get_port(service, 'PullPointSubscription')
    port.binding_options['address'] = mycam.xaddrs['http://www.onvif.org/ver10/events/wsdl/PullPointSubscription']
    plp = mycam.pullpoint.zeep_client.bind('EventService', 'PullPointSubscription')
    sub_start = datetime.now()
  # Pull messages
  m=plp.PullMessages(Timeout=timedelta(seconds=20), MessageLimit=100)
  m1 = xmltodict.parse(mycam.transport.response.text)
  try:
    source= m1['env:Envelope']['env:Body']['tev:PullMessagesResponse']['wsnt:NotificationMessage']['wsnt:Topic']['#text']
    state = m1['env:Envelope']['env:Body']['tev:PullMessagesResponse']['wsnt:NotificationMessage']['wsnt:Message']['tt:Message']['tt:Data']['tt:SimpleItem']['@Value']
    print(datetime.now(), source, state)
  except Exception as err:
    print (datetime.now(), m1['env:Envelope']['env:Body']['tev:PullMessagesResponse'])
  # Check if sub expired
  expired = datetime.now() - sub_start > timedelta(seconds=300)
####

On my camera, I am getting this during motion:

2019-10-28 12:50:09.860072 OrderedDict([('tev:CurrentTime', '2019-10-28T17:50:09Z'), ('tev:TerminationTime', '2019-10-28T17:58:05Z')])
2019-10-28 12:50:19.887846 OrderedDict([('tev:CurrentTime', '2019-10-28T17:50:19Z'), ('tev:TerminationTime', '2019-10-28T17:58:05Z')])
2019-10-28 12:50:29.916845 OrderedDict([('tev:CurrentTime', '2019-10-28T17:50:29Z'), ('tev:TerminationTime', '2019-10-28T17:58:05Z')])
2019-10-28 12:50:39.970835 OrderedDict([('tev:CurrentTime', '2019-10-28T17:50:39Z'), ('tev:TerminationTime', '2019-10-28T17:58:05Z')])
2019-10-28 12:50:49.885414 OrderedDict([('tev:CurrentTime', '2019-10-28T17:50:49Z'), ('tev:TerminationTime', '2019-10-28T17:58:05Z')])
2019-10-28 12:50:59.846146 OrderedDict([('tev:CurrentTime', '2019-10-28T17:50:59Z'), ('tev:TerminationTime', '2019-10-28T17:58:05Z')])
2019-10-28 12:51:05.885580 tns1:VideoSource/MotionAlarm true
2019-10-28 12:51:05.938045 tns1:RuleEngine/CellMotionDetector/Motion true
2019-10-28 12:51:06.972172 tns1:VideoSource/MotionAlarm true
2019-10-28 12:51:07.873399 tns1:VideoSource/MotionAlarm true
2019-10-28 12:51:07.926991 tns1:RuleEngine/CellMotionDetector/Motion true
2019-10-28 12:51:08.957086 tns1:VideoSource/MotionAlarm true
2019-10-28 12:51:08.969518 tns1:RuleEngine/CellMotionDetector/Motion true
2019-10-28 12:51:09.997373 tns1:VideoSource/MotionAlarm true
2019-10-28 12:51:11.082327 tns1:VideoSource/MotionAlarm true
2019-10-28 12:51:12.004689 tns1:VideoSource/MotionAlarm false
2019-10-28 12:51:12.014676 tns1:RuleEngine/CellMotionDetector/Motion false
2019-10-28 12:51:12.925665 tns1:VideoSource/MotionAlarm false
2019-10-28 12:51:12.934068 tns1:RuleEngine/CellMotionDetector/Motion false
2019-10-28 12:51:13.865547 tns1:VideoSource/MotionAlarm false
2019-10-28 12:51:13.921019 tns1:RuleEngine/CellMotionDetector/Motion false
2019-10-28 12:51:14.912318 tns1:VideoSource/MotionAlarm false
2019-10-28 12:51:14.964042 tns1:RuleEngine/CellMotionDetector/Motion false
2019-10-28 12:51:15.903087 tns1:VideoSource/MotionAlarm false
2019-10-28 12:51:15.954571 tns1:RuleEngine/CellMotionDetector/Motion false
2019-10-28 12:51:26.966563 OrderedDict([('tev:CurrentTime', '2019-10-28T17:51:26Z'), ('tev:TerminationTime', '2019-10-28T17:58:05Z')])
2019-10-28 12:51:36.871524 OrderedDict([('tev:CurrentTime', '2019-10-28T17:51:36Z'), ('tev:TerminationTime', '2019-10-28T17:58:05Z')])
2019-10-28 12:51:47.024532 OrderedDict([('tev:CurrentTime', '2019-10-28T17:51:46Z'), ('tev:TerminationTime', '2019-10-28T17:58:05Z')])
2019-10-28 12:51:56.970599 OrderedDict([('tev:CurrentTime', '2019-10-28T17:51:56Z'), ('tev:TerminationTime', '2019-10-28T17:58:05Z')])


A subscription expires after 10 min. The python module does not offer the 'Renew' call as requested by the ONVIF standard call so you have re-subscribe every < 10min manually.

To run it, you need to install 'onvif_zeep' (FalkTannhaeuser/python-onvif-zeep), 'xmltodict', 'utils'. It should be easy to add mqtt calls if desired. Perhaps, someone more motivated and less averse to looking at SOAP messages can improve the original library.
 
Last edited:
  • Like
Reactions: David L and pete_c
I like the stealth branding on the Nelly's as well, but ended up going with RCA because it was a bit cheaper and they didn't offer a bronze face plate.
One of the product photos clearly shows the RCA bronze face plate without the logo on it. I knew it was a long shot but I was hopeful it would ship that way. Unfortunately all 3 have RCA on them for anyone else wondering.
81r8%2BRFCf6L._SX679_.jpg
That is the same reason I originally ordered it - a bit misleading.
 
Last edited: