My Next Alarm

The Unofficial SmartThings Blog
Jump to: navigation, search


Nest (S3003LWES) Protect Smoke and Carbon Monoxide Alarm, Protect Your Home From Fire and Gas Leaks, Even When You're Away, Wired (Second Generation)

Nest (S3003LWES) Protect Smoke and Carbon Monoxide Alarm, Protect Your Home From Fire and Gas Leaks, Even When You're Away, Wired (Second Generation)


Brand: Nest®

Models: Nest Protect wired & battery powered

Type: 'Smart Alarm

Protocol: Wi-Fi

Link to Nest website [1]

Device Type Author:Yves Racine

ST Community handle http://community.smartthings.com/users/yvesracine/activity

Company Link: http://www.ecomatiqhomes.com#!home/mainPage



Contribution is required

The Next devices have required hundreds of hours of development & testing efforts to build, so a mandatory contribution is required to get the code.


To download the code, go to

http://www.ecomatiqhomes.com/store

Technical support packages are also available.


If you want to contribute more, here is the paypal link below.

https://paypal.me/ecomatiqhomes

Prerequisites

  • Nest Protect(s) operational & connected to Nest Backend via the internet.
  • SmartThings hub fully operational
  • Use of the SmartThings classic mobile app for instantiation of the custom devices (only the basic attributes will display within the new Samsung Connect mobile app as ST is working on the required migration steps).

Information

Here is a list of ST Capabilities

   capability "Smoke Detector"
   capability "Carbon Monoxide Detector"
   capability "Sensor"
   //  capability "Battery"  / Not present as a percentage
   capability "Health Check"
   capability "Polling"
   capability "Refresh"

Here is the complete list of commands:

   command "getStructure"
   command "setStructure"
   command "setStructureHome"
   command "setStructureAway"
   command "getProtectInfo"        
   command "getProtectList"
   command "setProtectSettings"        
   command "produceSummaryReport"        

List of Attributes available for subscription (in any rule engine like CoRE/WebCoRE/SmartRules)

Please refer to the Nest Developer APIs documentation for more details on each attribute.

https://developers.nest.com/documentation/cloud/api-overview

   attribute "structure_id"
   attribute "st_away"
   attribute "st_name"
   attribute "st_country_code"
   attribute "st_postal_code"
   attribute "st_peak_period_start_time"
   attribute "st_peak_period_end_time"
   attribute "st_time_zone"
   attribute "st_eta_begin"
   attribute "protectsList"
   attribute "protectId"
   attribute "NestAlarmState"
   attribute "alarmState"
   attribute "locale"
   attribute "battery_state"
   attribute "software_version"
   attribute "where_id"
   attribute "where_name"
   attribute "label"
   attribute "name_long"
   attribute "is_online"
   attribute "onlineState"
   attribute "last_connection"
   attribute "last_api_check"
   attribute "ui_color_state"
   attribute "co_alarm_state"
   attribute "smoke_alarm_state"
   attribute "last_manual_test_time"
   attribute "is_manual_test_active"

Look & Feel

UI Fields


MyNextAlarm.png

List of Events (refreshed up to the minute)

MyNextAlarmEvents.png


Upper section of the multi-tile

  • Current SmartThings alarm state (clear, co, smoke, tested)
  • Online status

Lower section of the multi-tile

  • Current Nest Alarm state (clear, co_warning, co_emergency, smoke_warning, smoke_emergency)
  • Battery status (OK or replace)
  • Last Manual test - date& time
  • Nest Last connection - date& time
  • Nest last API check - date& time
  • Nest software version (firmware)
  • Refresh

Known issues

Structure are cached

.................................................................................................................................

In order to avoid querying the Nest APIs for the structure data and for better performances, some information is locally cached in the device.

If you make changes to some stucture data and want to update the device immediately (by default, it's done once a day at midnight), please manually press the "refresh" tile.


Events are polled (not in real-time)

.................................................................................................................................

Even with a high refresh rate, the events trigerred at the Nest Protect are polled, so there is no real time event processing possible at this time (Nest APIs limitations).

So, you cannot rely on this SmartThings integration (like any others) as a real time warning procedure.

Troubleshooting

Here are some typical troubleshooting cases explained below. For your specific use cases, you may want to contact the author (there may be some support fees to be applied).'

.................................................................................................................................

Issue #1: I don't know how to create a custom device

.................................................................................................................................

See the explanations of a fellow community member here:

http://community.smartthings.com/t/faq-an-overview-of-using-custom-code-in-smartthings/16772

or

http://thingsthataresmart.wiki/index.php?title=Using_Custom_Code

.................................................................................................................................

Issue #2: I created My Next Alarm handler and MyNextManager in the IDE, but I don't know where to execute it

.................................................................................................................................


For the initial setup, under the ST app, click on the Marketspace? item in the bottom menu, and then, on the smartapps link and finally, MyApps (last item in the list).

If you still do not see your smartapp, please make sure that you have published it in the IDE!

For any subsequent execution, under the ST app, click on the "hamburger" menu in the upper right section and then, Smartapps. You should see the smartapp in the list.'


.................................................................................................................................

Issue #3: I executed MyNextManager smartapp, but the 3rd page -after doing the login, and pressing Next- is blank

.................................................................................................................................

If you get a blank screen after pressing 'Next or you get the following error: " Error - bad state. Unable to complete page configuration" or any other ST errors, please check that you've enabled oAuth as specified in step 2f) in the readme.

https://github.com/yracine/device-type-myNext/blob/master/README.md

Also, make sure that you've followed all prerequisites:

http://thingsthataresmart.wiki/index.php?title=My_Next_Alarm#Prerequisites

Refer to MyNextManager smartapp's installation for more details:

http://thingsthataresmart.wiki/index.php?title=MyNextServiceMgr#Issue_.231:_I_don.27t_know_how_to_create_a_custom_smartapp

.................................................................................................................................

Issue #4: My Next Alarm is off with the Nest mobile app or portal

.................................................................................................................................

First try to refresh the UI by pressing the 'refresh' tile. The ST UI does not allow automatic refresh at the moment.

Please note also that the cloud-to-cloud integration may introduce some delays in getting the latest values.


.................................................................................................................................

Issue #5: I want to disable any notifications from MyNextManager

.................................................................................................................................

Go to the smartapp's last page, and answer 'no' to the following question:

Send a push notification?"''

Be aware that you won't be notified of any connection issues.

.................................................................................................................................

Issue #6: "An unexpected error has occurred" or 'deleteObserver onError: %s' messages in MyNextManager when I press 'Remove'

.................................................................................................................................

'Like any ST connected device, you need first to unselect all your Next devices from all the smartapps & routines as MyNextManager will not uninstall w/o doing this step.

MyNextManager is the Service Manager for all Next Devices, so uninstalling the smartapp means that all Next devices will be deleted. .................................................................................................................................

Issue #7: I want to get more tracing in the IDE

.................................................................................................................................

Just update the device preferences, and edit the trace parameter, see step 7 in the readme

https://github.com/yracine/device-type-myNext/blob/master/README.md

Do not forget to remove the trace (leave the parameter blank) after your debugging session as this setting may impact performance.


You can now set the trace level to be displayed in the device's preferences (5 is the highest level for logging):

   input("trace", "bool", title: "trace", description:
      "Set it to true to enable tracing (no spaces) or leave it empty (no tracing)")
   input("logFilter", "number",title: "(1=ERROR only,2=<1+WARNING>,3=<2+INFO>,4=<3+DEBUG>,5=<4+TRACE>)",  range: "1..5",
      description: "optional" )        

Under the IDE, to activate live logging, just click on the link below (or the variant according to your shard).

https://graph.api.smartthings.com/ide/logs

You can also edit the device's preferences under the ST mobile app by clicking on its 'gear' button.


Note: To filter the logs for a given device or smartapp, you need to click on its name in the upper section of live logging. This filtering should be done before submitting any logs for analysis.


.................................................................................................................................

Issue #8: I want to upgrade the code but I don't know how.

.................................................................................................................................

Most of the time (unless specified otherwise), you just need to copy and paste the MyNextAlarm Device's code from the the related txt files, and save & publish.

The same approach should be used for the smartapps.

For more details, please follow the instructions provided at:

https://github.com/yracine/device-type-myNext/blob/master/README.md


.................................................................................................................................

Issue #9: java.util.concurrent.TimeoutException: Execution time exceeded 'x' app execution seconds

.................................................................................................................................

ST has introduced some generic rate limiting rules for all smartapps and device handlers.

For cloud-to-cloud integration, these rate limiting constraints are sometimes too low (due to network latency, servers involved, etc.), and this exception can be raised from time to time. There are some threads about it in the ST community forum:

http://community.smartthings.com/t/rate-limiting-too-restrictive-max-execution-time-exceptions/17985

http://community.smartthings.com/t/execution-times-increasing/19979

http://community.smartthings.com/t/unschedule-api-execution-time-too-long/11232


................................................................................................................................

Issue #10: com.datastax.driver.core.exceptions.ReadTimeoutException

.................................................................................................................................

These exceptions are thrown by the ST backend from time to time. I've been told that ST is working on it. This is not a specific issue with my code.

https://community.smartthings.com/t/cassandra-timeout-during-read-query/46227/3

...............................................................................................................................

Issue #11: I want to change all scales to the metric system.

.................................................................................................................................


The temperature scale needs to be changed for your ST account under the ST Mobile app, so that all your ST devices will be in the metric system.

Press the "hamburger" menu (upper left), and then the "gear" icon. You'll find the option to change the temperature scale there and press "save".

At the next "refresh", My Next Alarm will display the values in the metric system.


...............................................................................................................................

Issue #12: I cannot create any objects under the new Samsung app

.................................................................................................................................


No custom DTHs can be created under the new Samsung app for the moment as indicated in the prerequisites. You'd need to use the ST classic app to execute MyNextManager in order to create the Next devices. After creating the devices, follow the steps indicated in the installation pdf file included in the zip to force a refresh of the cache in order to make them appear correctly in the new Samsung app.


...............................................................................................................................

Issue #13: Some of my devices under the new Samsung app are disconnected

.................................................................................................................................


If some of your Next devices are disconnected under the new Samsung app, you may have created many of the same devices by executing MyNextManager many times... Under the new Samsung mobile app, you then need to clean them up by pressing the "edit" button next to your location and removing them.


For further execution of the MyNextManager smartapp, Refer to issue #2 http://thingsthataresmart.wiki/index.php?title=My_Next_Alarm#Issue_.232:_I_created_My_Next_Alarm_handler_and_MyNextManager_in_the_IDE.2C_but_I_don.27t_know_where_to_execute_it