Comments (9)
from homebridge-node-alarm-dot-com.
I think this bug stems from my own misunderstanding of how these devices work.
The old way these devices worked was how you described. This meant all sensors were simply opened or closed. In the last update I tried to choose more specific states matching the hap-nodejs so that sensors showed up with their specific types in homekit. You can view some of these types here.
In any case, I picked smoke detected since there is no heat option in homekit. Seems like the best course of action is to revert to contact open vs closed?
from homebridge-node-alarm-dot-com.
Think of it as a "threshold sensor".
A "threshold sensor" in the historical context is a bimetallic switch that opens or closes depending on the ambient temperature. Think of the old style Honeywell thermostats where a mercury switch opens or closes based on the thermal expansion of the bimetallic coil. See https://en.wikipedia.org/wiki/Bimetallic_strip
Modern threshold sensors comprise a digital temperature sensor with a digital output that signals if the temperature is above/below a set point. The set point (threshold) of modern sensors can be fixed or programmable.
Referring to the following Apple Developer doc:
https://developer.apple.com/documentation/homekit/hmcharacteristic/characteristic_types
Can you create a sensor that is a combination of types? For instance, combining the following types:
ContactState (or maybe OutputState is more appropriate?) (from Power and Switches)
CoolingThreshold (from Temperature) for a freeze sensor
HeatingThreshold (from Temperature) for a heat sensor
I think these correspond to the following types in the link you provided above:
ContactState (or ProgrammableSwitchOutputState)
HeatingThresholdTemperature
CoolingThresholdTemperature
The cooling or heating thresholds may be fixed by the sensor. So the threshold value entered by the user for a fixed "threshold sensor" is a way to document what that threshold is so the UI can report it properly.
There are a few characteristics described in your link called a "RelayControlPoint", "RelayState" and "RelayEnabled" but I do not understand the context in which they are intended to be used. These types do not appear in the Apple Homekit characteristics I linked to earlier.
from homebridge-node-alarm-dot-com.
from homebridge-node-alarm-dot-com.
I think you would let the user set the threshold. If the contact changes state then the threshold has been exceeded. No way to tell ahead of time which way these sensors work. Some will close when the temperature rises above the threshold some will open when the temperature rises above the threshold. Similar behaviour for a freeze sensor.
from homebridge-node-alarm-dot-com.
I just want to jump on this as well. I added the plugin yesterday and it works wonderfully for pretty much all sensors and arming/disarming. Now I can control automation better than just deleting the whole thing from the alarm.com site when going on vacation. Anyway, both the heat sensor and smoke sensor are triggered in my Home app.
I don't know if this is any indication but on the control.adt and alarm.com websites when managing devices both heat and smoke sensor show OK(Sensor is not Reset). As opposed to OK(Idle)/OK(Closed|Open) for doors/windows.
12 | Ok (Closed) | Door/Window Sensor | Door/Window Sensor | ||
---|---|---|---|---|---|
13 | Ok (Idle) | Glass Break Sensor | Glass Break Sensor | ||
14 | Ok (Activated) | Motion Sensor | Motion Sensor | ||
15 | Ok (Sensor is Not Reset) | Smoke Sensor | Smoke Sensor | N/A | |
16 | Ok (Sensor is Not Reset) | Heat Sensor | Heat Sensor | N/A |
from homebridge-node-alarm-dot-com.
Hi everyone, coming back to this issue while I try to fix up sensors being reversed.
I misread the initial report. The issue here is that Homekit does not have a heat/freeze sensor. There is a temp sensor, but it's for actual temperature monitoring, not if the sensor has crossed a threshold. This leaves us with making temp sensors show up as either smoke detectors or contact sensors. I opted for smoke detectors since I thought that was a better fit, but I admittedly wasn't thinking about freeze sensors!
It sounds like it might be best to switch back to showing temp sensors as contact sensors?
from homebridge-node-alarm-dot-com.
It sounds like it might be best to switch back to showing temp sensors as contact sensors?
Specifically, temp threshold sensors should be modelled as contact sensors.
from homebridge-node-alarm-dot-com.
What's your reasoning for that? I would think we prefer to use the smoke detector since Homekit assigns smoke detector faults higher priority then a contact sensor.
from homebridge-node-alarm-dot-com.
Related Issues (20)
- Remote arming changing to 'Home fails' HOT 13
- SkyBell? HOT 2
- Login error HOT 3
- Arming State No Longer Triggers Automations HOT 2
- No camera feed and warning UNHANDLED ERROR HOT 2
- Unresponsive after upgrading to v1.9.0 HOT 21
- light Status not reporting HOT 2
- "Received no partitions" on startup HOT 5
- Logging improvements: Sensor changes HOT 9
- Arming Modes HOT 4
- Invalid account credentials crashes homebridge HOT 6
- Not Appearing in Home Kit HOT 2
- Not fully showing in HK HOT 3
- Icon category and device change in the app like fan, outlet and lights HOT 9
- Virtual Panic Button as a homekit button accessory HOT 7
- Telus Security (alarm.com) error - failed: No afg cookie: AND Error: GET https://www.alarm.com/web/api/identities failed: GET https://www.alarm.com/web/api/identities failed: [object Object] HOT 4
- No notifications for ADT for HK HOT 2
- RTSP Stream Grabbing? HOT 3
- no longer login to Alarm.com HOT 3
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from homebridge-node-alarm-dot-com.