Folks have been requesting me to integrate Blink Camera with SmartThings, so here it is finally. This has been approved by Blink. A big thank you to Blink's management and engineers for their support in making this happen.
For those who don't know Blink, it's a VERY cool HD wireless camera that runs on a battery (about 1-2 years per set of 2 batteries)/USB power and uses a PIR motion detector to detect intrusion and start recording a clip / see a live video and connects via Wifi (totally wirefree). You will need to buy a Blink sync module which can support up to 10 Blink Cameras. You can find more details about it here http://blinkforhome.com/
You will need to add the Blink Device Handler AND the Blink Camera Manager SmartApp codes in the IDE. However to install the camera, you just install the SmartApp (see below) and enter your Blink eMail and password and it will automatically create one Blink device for each camera that you have added to your account (yes it's that easy!! No more fiddling with IP address and all that nonsense).
If you would like to see more features/integration please feel free to ask.
There are 2 parts to this installation so please see the instruction carefully (there is difference between how the SmartApp is installed and how the Device Handler is installed, don't mix it up or it won't work)
If I have a question or problem who should I contact?
Read through this post and it should answer most of your questions. If you have a question regarding the ST device, app or platform/integration post it here (Blink support isn't trained to help). They can only handle questions about the native Blink iOS/Android app and their camera's/sync modules (i.e. anything except ST related questions).
How do I uninstall the Blink Camera devices/smartappp?
There are 3 ways to address this:
First make sure that your Blink Camera devices are NOT in use by any SmartApps. If they are then go into each SmartApp and remove the Blink Camera devices from those SmartApps. Then open the Blink Camera Manager, scroll down and click on Uninstall. This method will not work if the Blink Cameras are linked to any SmartApps, it will throw an error.
- The other way is to login to the SmartThings IDE, under My Devices, click on each Blink Camera device, scroll down and click on Delete. Confirm that it will delete the device from all linked SmartApps if prompted. Repeat this process for EVERY Blink Camera device in "My Devices". Once all the Blink Camera devices are deleted, the ST platform will automatically also uninstall the Blink Camera Manager SmartApp.
- If you have deleted a Blink Camera permanently from your Blink account using the native Blink phone app and want to now remove it from your ST list of devices, open the Blink Camera Manager and click Done, it will delete that camera device which you removed from your Blink account.
Live view can't seem to connect or I get an error
Try a few times, this a BETA viewer and ST hasn't made an official release, so you may need to try connecting a few times before it works. If it still doesn't work then you camera isn't able to connect to the WiFi.
Check phone capabilities and signal strength
Check and optimize your WiFi settings
NOTE: Blink needs 10-15 seconds between successive live stream connect requests, so after trying/connecting once, give it some time before trying again.
I get an error "Failed to save page: mainPage"?
You haven't enabled OAuth, read the installation instructions again. If you're still getting an error try again after a while, ST platform may be having temporary issues.
Does this hurt my blink camera battery by excessive polling?
No it does not, infact except for the take picture, enable/disable camera and enable/disable monitoring ALL calls are made to the Blink server without any update requests to the camera i.e. the information is retrieved from the server. However you can force the camera to wake up and refresh the sensors by clicking on the "Sensor Update" button.
I'm pressing a button but the state isn't changing or it isn't taking a picture?
Possible Reasons: Your login and password are most likely incorrect, reopen the Blink Camera Manager SmartApp and correct it. The camera batteries are dead. The camera can't reach your WiFi/Router. The camera is too far away from the Sync Module or can't connect to the WiFi. The Sync Module can't connect to the internet.
Can I use this with Routines or other SmartApp to Enable/Disable Motion Detection for each Camera?
Yes, the device exposes itself as a "Switch". So you can use any Routine/App that supports turning on/off switches to control the camera. It also exposes itself as an "Alarm". When the "Alarm" interface is turned on it takes a Picture and then Enables the Motion Detection feature. The difference between the "Switch" interface and "Alarm" interface is the Picture. Where as the "Switch" interface only Enables/Disables the Motion Detection, the "Alarm" interface will take a Picture and then Enables the Camera.
Can I use this with CoRE?
Yes you can, you can use the custom commands exposed to control it via CoRE. The commands for activating/deactivating the System (sync module) are
MonitorOff. You can Enable/Disable individual camera motion detection/alerts using the
disableCamera commands from CoRE. Command for controlling the LED status are
ledAuto. Command for setting the video recording length is
setVideoLength(x), where x is the number of seconds from 1 to 120 (these limits may change in future).
CoRE can also read the attributes
monitorStatus which reflects the on/off status on the System (sync module) and
enableStatus which reflects the on/off/alarm status of the Camera.
You can also force the camera to wake up and update it's sensors by using the command
forceSensorsUpdate. Note that this can drain the battery.
What's the difference between Activating/Deactivating the System and Enabling/Disabling the Camera?
When the System (sync module) is Deactivated NO camera connected to the sync module will generate any motion alerts. The System (sync module) needs to be Activated to enable Motion Detection on any of the cameras connected to that sync module. When you Enable Motion Detection for a any camera, the SmartApp will automatically Activate the System (sync module) for that camera. However when you Disable a camera, the System (sync module) will still remain active, otherwise the other cameras connected to the sync module will not be able to Detect Motion.
What is the best way to arm/disarm Motion Detection externally (i.e. not manually)
There are 3 days to control Motion Detection externally (each Blink Camera shows up as a switch in a Smartapp or a Routine):
Turn the switch on/off from the Routine, this will enable/disable each Camera individually (default behavior)
- Enable the Smart Home Monitor (SHM) integration options in the SmartApp, this will turn on/off ALL cameras when SHM arms/disarms
- Modify the Switch behavior via the SmartApp to control the system instead of the cameras. This will now arm/disarm the system (sync module) instead of controlling each camera individually when the switch is turned on/off from the Routine.
When does Blink send Motion alerts?
Blink's motion sensor will send notifications only when the Motion Alerts (Motion Detection) is enabled. When Motion Detection is disabled, it will not send any alerts and will behave like a regular stand alone camera.
I'm not seeing motion detection events reported from the Camera to ST.
Make sure that Motion Alerts (Motion Detection) are enabled.
Open your Blink Camera Manager and hit Done, this should force the ST app to setup a new connection with the Blink servers and reset the motion notification connection.
How long does it take to get the motion notifications?
It depends upon your camera's configured recording length. The Camera will send the push notification AFTER it has finished recording the video AND uploaded it to the Blink server (this is by Blink design). It typically takes 2-5 seconds to receive the notification after the video has been uploaded (and depends upon the WiFi quality, router speed and platform speed)
How can I reduce the time taken to receive the motion notification?
Configure your Blink camera (for each camera individually) to record video for only 1 second on motion detection. This will provide the fastest push notification response from the camera to the ST platform.
How do I install/configure multiple sync modules?
Install the Blink Camera Manager SmartApp once for each sync module. Then install with the respective email id's for the sync module (unique to each sync module). Do NOT use the same credentials with more than one SmartApp (each SmartApp should have a unique Blink credential).
Can I use this App if I'm using Blink outside USA?
Yes you absolutely can, it support worldwide regions (plug and play). Just make sure that if you have sync modules from different regions/countries, then you MUST have different eMail accounts for each region. I.e. do NOT mix sync modules from different regions in a single eMail account.
How do I get notified of updates to the code?
Subscribe to our facebook page http://www.facebook.com/RBoySTApps or monitor this thread.
How do I get this to work with multiple Sync Modules or Multiple Blink Accounts
Install the Blink Camera Manager SmartApp once for each sync modules/blink account that you want to control. Each install will control all cameras connected to the configured sync module/blink account. Blink allows multiple sync module per Blink account and upto 10 cameras per sync module. Just make sure that if you have sync modules from different regions/countries, then you MUST have different eMail accounts for each region. I.e. do NOT mix sync modules from different regions in a single eMail account.
Does this support Blink Alarms?
No, not yet. Blink Alarms' haven't been released yet! When they are we will add support for it.
I'm having trouble with my Blink setup, what can I do?
Please contact Blink support for the Blink Android/iOS App and general questions about Blink. Post your questions here for all ST related Blink Device and SmartApp queries/issues.
My camera is slow to upload pictures/videos to the Blink server
The performance the Blink camera depends heavily on the configuration of your WiFi network. See this post from @wsutard1 https://community.smartthings.com/t/blink-camera-issues-slow-connection-to-servers/43203/5
How do I see my recorded motion video clips
TBD in progress, may be made available in future.
I see 'unavailable' on my video tile or my video doesn't work properly and it works fine on the Blink app
The to start the video, click on the tile until you see the play button and then click on the play button. Also note, the video tile is heavily dependent on your phone, since it's rendered by your phone it depends upon what codecs your phone supports. So it may work on some phones and not others. Also the video tile is very very sensitive to errors in the stream. So if your network connection is slow, your camera signal is low or there any issues short of a perfect connection with your camera it won't work. Hence it may work with some your cameras and not others. It may work sometimes and not others (depending upon your network connection quality and camera signal quality). This is a limitation of the ST Video Tile and hopefully they'll make it hardy in future. Also note that after you start one streaming session you should wait for upto 15 seconds to restart the streaming on the same cameras to allow the Blink server to reset the connection.
Can I use the camera in Smart Home Monitor (SHM)
No, ST does not support third party cameras in SHM. You can however use it as a motion sensor in SHM.
I clicked on Take picture but I see an old picture show up
That means the the blink camera is not reachable so the app pulls the last image stored on the server. Possible reasons include camera batteries are dead, the camera can't connect/too far away from WiFi (most likely cause), the camera is too far away from the sync module (2nd most likely) or the sync module can't connect to the Internet (offline).
I'm trying to install the app but I keep getting an error when click 'Done'
This affects a small percentage of users temporarily who are unlucky enough to end up with a slow ST cloud instance. Just retry after a while and hopefully the ST cloud would have load balanced itself and will execute the code faster.
My battery reading keeps fluctuating
That's normal. Battery voltage varies depending upon the use of the camera. After a lot of recent use/activity the voltage drops. If it's allowed to recover, after a while the voltage increases. That's how batteries work. The app is just reporting it.
My layout is a little messy, tiles are not cleanly shown, some text is off screen
Unfortunately that's not in our control. Usually the iOS version looks great but the Android version looks a little off/messed up. That' the way the ST App is designed, you should report it to @slagle or @jodyalbritton. Since it's a common code base we try our best to optimize it for both ST apps but for obvious reasons we can't make it look identical, that's in ST's hands.
I keep seeing my recently tab fill up with activity/images every 6-15 minutes
That's normal. ST polls the device periodically and the device reports the latest values and images taken from the Blink server (from the server and not the camera so it won't hurt your battery). The only way to turn this off is to edit the Device Handler code and remove the
capability polling from the metadata section.
How do I manually force the camera to start a recording
Blink does not support forcing a recording start right now. The only hack is to arm the camera and force it to take a picture and sometimes that will start a recording.