HI3510 IP Camera Device Type (Tenvis IPROBOT3, Instar, Wansview, others...)

First time posting and first device type I’ve written. Hopefully this works for others.

It is based on the Foscam device type template.

Known supported cameras:
Tenvis IPROBOT3 (2014)
Foscam 9821 / 8608W
Foscam 8608W
InStar (unknown models)
Wansview NCH536MW
and probably several others.

To test if your camera is supported, open a web browser and go to:
http://(camera ip address):(camera port)/cgi-bin/hi3510/param.cgi?cmd=getinfrared
Type in your camera’s username/password. The response will be similar to:
var infraredstat= …

Capabilities:

  • Take picture
  • PTZ controls
  • Infrared LED Auto/On/Off support
  • Movement to ‘Preset’ positions

Available at https://github.com/uncleskippy/smartthings/blob/master/hi3510-ip-camera.groovy

Just waiting for the video API to be exposed by ST and I’ll add support for video streaming. Fingers crossed.

7 Likes

IPROBOT3 support = You Legend . . .

I will install and test tomorrow, thanks alot i have been waiting for this to be integrated for ages, it is much appreciated by myself and i know a good few others have IPROBOT3s too :slight_smile: thanks again

IPROBOT3 - Confirmed - works a treat !!!

I wonder if it is possible to add buttons for the preset camera locations . . . .

That way you could do stuff like " IF MOTION IS DETECTED IN ROOM WHILST HOME IS ARMED, GO TO LOCATION 1 & TAKE A SNAPSHOT AND SEND TO USER "

and then if the doorbell rang you could make it look out of the window, so it basically went " IF DOORBELL RINGS, GO TO LOCATION 2 & SEND SNAPSHOT TO USER "

etc etc etc

1 Like

I wonder if it is possible to add buttons for the preset camera locations

Shouldn’t be a problem at all. I’ll drop those in there this week,

2 Likes

@uncleskippy Fantastic . . . that is most appreciated :slight_smile:

Just had an interesting read through the full @rboy topic on his Foscam Device Type:

It seems there is alot of features id forgot our beloved IPROBOT3s have that could be utalised such as motion detection / alarm / preset locations / etc

Is this the case or not so much ? :slight_smile:

1 Like

It absolutely is the case.

There are motion detection regions, alarms (with dry contact output!), and more.

I have presets working here. Will post updated device definition later tonight.

I plan to keep developing this to make it more feature complete. :smile:

1 Like

Fantastic News,

i can appreciate this is all in your own time and i didn’t want you to feel i was sending you a TO DO LIST hahahaha . . . I just wanted to discuss the possibilities of this device type as a pose to others as im not to code savy myself unfortunately, however i am trying my hardest to rectify this…

This device type works an absolute treat though, im very impressed, great work. I know many users will greatly benefit from this, when timing of the month allows funds to permit id be happy to donate via paypal your way for this contribution to the community as a gesture of my appreciation :smiley:

Lets hope that one day SmartThings actually does open the Video Capability as a pose to keeping it locked down to partners and specific devices only.

i can appreciate this is all in your own time and i didn’t want you to feel i was sending you a TO DO LIST

Nah. This is a nice way for me to get my feet wet in ST development. :smile:

I’ve updated the device type definition to include buttons for preset positions and I reworked the UI a bit. Hopefully it isn’t getting too cluttered.

I’m going to probably add a toggle to take a picture after the preset position has been reached. I’ll look at adding the Motion Sensor capability after that.

2 Likes

Thats fantastic :slight_smile: ill have to update my device type asap and check it out :slight_smile:

Is the device type on the same github url above, cheers

I’ve reworked the authorization to use the HTTP “Authorization” header instead of putting it in the URL so that the ST logs aren’t potentially filled with username/password information.

After trying a bunch of stuff, there doesn’t appear to be a way to externally detect motion on the camera using the camera’s APIs. If there is an external dry-contact relay on the camera, it would be easy to attach a door sensor with a dry contact relay input and go that route. Without a relay though, it seems the only direct way of being notified when there is motion is to set up a server/daemon listening on a certain port; the camera will connect when there is motion. The ST developer sdk might allow such a thing, but I haven’t crawled through that part of the docs yet.

With all of that said, there may be another indirect and easier way of detecting new motion without a relay or daemon/server. I’ll chew on that over the weekend.

2 Likes

Here is a UI tweak i designed for it . . .

If you like the design and want to recreate it yourself into your device type, then just let me know and i will fire over all the required icons i made to do AUTO / ON / OFF for the cameras LED function.

if you click on the below image and look at in high res you will see they differ on each one :slight_smile:

I

1 Like

ok. That looks absolutely awesome.

One catch is that I’m not sure how to use custom icons in the app. They apparently don’t allow the use of custom icon URLs unless I’m completely misreading the documentation. If you know how to do use those by default (instead of requiring the user do it), I’m all ears.

But, I will copy that layout and use the existing ones for the time being. Thank you!! :smiley:

1 Like

I have updated the UI to use the layout you designed. Once I figure out if it is possible, I’ll ask for the icons and put them in. I believe even the preset buttons need custom icons (‘1’, ‘2’, ‘3’, ‘4’) in order to have them look the way you designed them. Again, I might just not know enough about the button capabilities to make them work without custom icons.

1 Like

@slagle @Ben surely custom icons is something we devlopers can have . . . How else can we make thing all pretty and cute hahaha :wink: possability ?

external icons should be possible for iOS users, but not for Android, so to keep it universal it would have to stay as-is, or have a separate device type.

@uncleskippy - have you managed to include IPRBOTO3 into a smarttiles setup by any chance, just interested in what STREAM URL template you used as im struggling greatly to get my IPROBOT3 to show up in smarttiles using an MJPEG stream url . . . hmmmmm

2 Likes

Unfortunately, it seems that some models of many camera brands do not support MJPEG streams anymore, only H.264. Technically H.264 via HTTP5, should play in <video> containers in some conforming browsers, but I think there are lots of variables at play here.

Reference this for clues?: HTML5 tests - video


If there turns out to be a pretty common standard, then we’ll experiment with adding such a container to SmartTiles sometime. Stay tuned to Loading... for any updates.

2 Likes

thanks a ton to @tgauchat for assisting me today in identifying this was the case for IPROBOT3 however got a nice STOP MOTION setup sorted instead, cheers again :slight_smile:

1 Like

Hey Kyle!

The URL for the MJPEG streams are:

720P: http://ADDRESS:PORT/cgi-bin/hi3510/mjpegstream.cgi?-chn=11&-usr=USERNAME&-pwd=PASSWORD
352P: http://ADDRESS:PORT/cgi-bin/hi3510/mjpegstream.cgi?-chn=12&-usr=USERNAME&-pwd=PASSWORD
176P: http://ADDRESS:PORT/cgi-bin/hi3510/mjpegstream.cgi?-chn=13&-usr=USERNAME&-pwd=PASSWORD

Hopefully that helps!