tache / homeassistant-kidde

A custom component for Kidde HomeSafe.
MIT License
29 stars 3 forks source link

Water Leak Detector #27

Closed Airey001 closed 1 month ago

Airey001 commented 2 months ago

System Health details

System Information

version core-2024.8.1
installation_type Home Assistant OS
dev false
hassio true
docker true
user root
virtualenv false
python_version 3.12.4
os_name Linux
os_version 6.6.44-haos
arch x86_64
timezone America/New_York
config_dir /config
Home Assistant Community Store GitHub API | ok -- | -- GitHub Content | ok GitHub Web | ok GitHub API Calls Remaining | 5000 Installed Version | 1.34.0 Stage | running Available Repositories | 1390 Downloaded Repositories | 31
Home Assistant Cloud logged_in | true -- | -- subscription_expiration | August 10, 2025 at 8:00 PM relayer_connected | true relayer_region | us-east-1 remote_enabled | true remote_connected | true alexa_enabled | true google_enabled | true remote_server | us-east-1-4.ui.nabu.casa certificate_status | ready instance_id | db2f792a557745189dc11e213536ffa8 can_reach_cert_server | ok can_reach_cloud_auth | ok can_reach_cloud | ok
Home Assistant Supervisor host_os | Home Assistant OS 13.0 -- | -- update_channel | beta supervisor_version | supervisor-2024.08.0 agent_version | 1.6.0 docker_version | 26.1.4 disk_total | 116.7 GB disk_used | 45.7 GB healthy | true supported | true host_connectivity | true supervisor_connectivity | true ntp_synchronized | true virtualization | board | generic-x86-64 supervisor_api | ok version_api | ok installed_addons | TasmoAdmin (0.30.4), ESPHome (2024.7.3), Terminal & SSH (9.14.0), HassOS SSH port 22222 Configurator (0.9.3), MariaDB (2.7.1), Mosquitto broker (6.4.1), phpMyAdmin (0.9.1), Portainer (2.20.1), TasmoBackup (1.06.06), Tasmota Device Manager (2022.6.0), Z-Wave JS UI (3.10.0), Studio Code Server (5.15.0), Samba share (12.3.2), EMQX (0.6.2), Home Assistant Google Drive Backup (0.112.1), Silicon Labs Multiprotocol (2.4.5), Advanced SSH & Web Terminal (18.0.0), Node-RED (18.0.5), Vaultwarden (Bitwarden) (0.22.0), Govee to MQTT Bridge (2024.07.13-82ddc6e9), Matter Server (6.4.1)
Dashboards dashboards | 8 -- | -- resources | 8 views | 19 mode | storage
Recorder oldest_recorder_run | May 27, 2024 at 1:13 PM -- | -- current_recorder_run | August 15, 2024 at 10:34 AM estimated_db_size | 19819.25 MiB database_engine | mysql database_version | 10.11.6

Checklist

Describe the issue

I am running Core 2024.8.1 Supervisor 2024.08.0 Operating System 13.0 Frontend 20240809.0

I have the addon installed and setup. The issue is i have the Water leak Detectors. The issue is they seem to report sensors they don't have and then have no sensor for water leak.

image

So when the leak is present i have no way of knowing inside home assistant.

Reproduction steps

  1. Open device in Home Assistant
  2. ...

Debug logs

Since turning on debugging here is only items in my log

2024-08-15 14:08:14.130 DEBUG (MainThread) [custom_components.kidde.coordinator] Finished fetching kidde data in 0.405 seconds (success: True)
2024-08-15 14:08:14.131 DEBUG (MainThread) [custom_components.kidde.sensor] last_seen of type <class 'str'> is 2024-08-15T07:32:40.804676Z
2024-08-15 14:08:14.131 DEBUG (MainThread) [custom_components.kidde.sensor] last_test_time of type <class 'NoneType'> is None
2024-08-15 14:08:14.131 DEBUG (MainThread) [custom_components.kidde.sensor] smoke_level of type <class 'NoneType'> is None
2024-08-15 14:08:14.131 DEBUG (MainThread) [custom_components.kidde.sensor] co_level of type <class 'NoneType'> is None
2024-08-15 14:08:14.132 DEBUG (MainThread) [custom_components.kidde.sensor] battery_state of type <class 'str'> is ok
2024-08-15 14:08:14.132 DEBUG (MainThread) [custom_components.kidde.sensor] life of type <class 'NoneType'> is None
2024-08-15 14:08:14.132 DEBUG (MainThread) [custom_components.kidde.sensor] last_seen of type <class 'str'> is 2024-08-15T07:37:57.423383Z
2024-08-15 14:08:14.132 DEBUG (MainThread) [custom_components.kidde.sensor] last_test_time of type <class 'NoneType'> is None
2024-08-15 14:08:14.132 DEBUG (MainThread) [custom_components.kidde.sensor] smoke_level of type <class 'NoneType'> is None
2024-08-15 14:08:14.133 DEBUG (MainThread) [custom_components.kidde.sensor] co_level of type <class 'NoneType'> is None
2024-08-15 14:08:14.133 DEBUG (MainThread) [custom_components.kidde.sensor] battery_state of type <class 'str'> is ok
2024-08-15 14:08:14.133 DEBUG (MainThread) [custom_components.kidde.sensor] life of type <class 'NoneType'> is None
2024-08-15 14:09:14.036 DEBUG (MainThread) [custom_components.kidde.coordinator] Finished fetching kidde data in 0.311 seconds (success: True)
2024-08-15 14:09:14.037 DEBUG (MainThread) [custom_components.kidde.sensor] last_seen of type <class 'str'> is 2024-08-15T07:32:40.804676Z
2024-08-15 14:09:14.037 DEBUG (MainThread) [custom_components.kidde.sensor] last_test_time of type <class 'NoneType'> is None
2024-08-15 14:09:14.037 DEBUG (MainThread) [custom_components.kidde.sensor] smoke_level of type <class 'NoneType'> is None
2024-08-15 14:09:14.038 DEBUG (MainThread) [custom_components.kidde.sensor] co_level of type <class 'NoneType'> is None
2024-08-15 14:09:14.038 DEBUG (MainThread) [custom_components.kidde.sensor] battery_state of type <class 'str'> is ok
2024-08-15 14:09:14.038 DEBUG (MainThread) [custom_components.kidde.sensor] life of type <class 'NoneType'> is None
2024-08-15 14:09:14.038 DEBUG (MainThread) [custom_components.kidde.sensor] last_seen of type <class 'str'> is 2024-08-15T07:37:57.423383Z
2024-08-15 14:09:14.038 DEBUG (MainThread) [custom_components.kidde.sensor] last_test_time of type <class 'NoneType'> is None
2024-08-15 14:09:14.039 DEBUG (MainThread) [custom_components.kidde.sensor] smoke_level of type <class 'NoneType'> is None
2024-08-15 14:09:14.039 DEBUG (MainThread) [custom_components.kidde.sensor] co_level of type <class 'NoneType'> is None
2024-08-15 14:09:14.039 DEBUG (MainThread) [custom_components.kidde.sensor] battery_state of type <class 'str'> is ok
2024-08-15 14:09:14.039 DEBUG (MainThread) [custom_components.kidde.sensor] life of type <class 'NoneType'> is None
2024-08-15 14:10:14.008 DEBUG (MainThread) [custom_components.kidde.coordinator] Finished fetching kidde data in 0.282 seconds (success: True)
2024-08-15 14:10:14.008 DEBUG (MainThread) [custom_components.kidde.sensor] last_seen of type <class 'str'> is 2024-08-15T07:32:40.804676Z
2024-08-15 14:10:14.009 DEBUG (MainThread) [custom_components.kidde.sensor] last_test_time of type <class 'NoneType'> is None
2024-08-15 14:10:14.009 DEBUG (MainThread) [custom_components.kidde.sensor] smoke_level of type <class 'NoneType'> is None
2024-08-15 14:10:14.009 DEBUG (MainThread) [custom_components.kidde.sensor] co_level of type <class 'NoneType'> is None
2024-08-15 14:10:14.009 DEBUG (MainThread) [custom_components.kidde.sensor] battery_state of type <class 'str'> is ok
2024-08-15 14:10:14.010 DEBUG (MainThread) [custom_components.kidde.sensor] life of type <class 'NoneType'> is None
2024-08-15 14:10:14.010 DEBUG (MainThread) [custom_components.kidde.sensor] last_seen of type <class 'str'> is 2024-08-15T07:37:57.423383Z
2024-08-15 14:10:14.010 DEBUG (MainThread) [custom_components.kidde.sensor] last_test_time of type <class 'NoneType'> is None
2024-08-15 14:10:14.010 DEBUG (MainThread) [custom_components.kidde.sensor] smoke_level of type <class 'NoneType'> is None
2024-08-15 14:10:14.010 DEBUG (MainThread) [custom_components.kidde.sensor] co_level of type <class 'NoneType'> is None
2024-08-15 14:10:14.010 DEBUG (MainThread) [custom_components.kidde.sensor] battery_state of type <class 'str'> is ok
2024-08-15 14:10:14.011 DEBUG (MainThread) [custom_components.kidde.sensor] life of type <class 'NoneType'> is None
2024-08-15 14:11:14.068 DEBUG (MainThread) [custom_components.kidde.coordinator] Finished fetching kidde data in 0.342 seconds (success: True)
2024-08-15 14:11:14.068 DEBUG (MainThread) [custom_components.kidde.sensor] last_seen of type <class 'str'> is 2024-08-15T07:32:40.804676Z
2024-08-15 14:11:14.069 DEBUG (MainThread) [custom_components.kidde.sensor] last_test_time of type <class 'NoneType'> is None
2024-08-15 14:11:14.069 DEBUG (MainThread) [custom_components.kidde.sensor] smoke_level of type <class 'NoneType'> is None
2024-08-15 14:11:14.069 DEBUG (MainThread) [custom_components.kidde.sensor] co_level of type <class 'NoneType'> is None
2024-08-15 14:11:14.069 DEBUG (MainThread) [custom_components.kidde.sensor] battery_state of type <class 'str'> is ok
2024-08-15 14:11:14.069 DEBUG (MainThread) [custom_components.kidde.sensor] life of type <class 'NoneType'> is None
2024-08-15 14:11:14.070 DEBUG (MainThread) [custom_components.kidde.sensor] last_seen of type <class 'str'> is 2024-08-15T07:37:57.423383Z
2024-08-15 14:11:14.070 DEBUG (MainThread) [custom_components.kidde.sensor] last_test_time of type <class 'NoneType'> is None
2024-08-15 14:11:14.070 DEBUG (MainThread) [custom_components.kidde.sensor] smoke_level of type <class 'NoneType'> is None
2024-08-15 14:11:14.070 DEBUG (MainThread) [custom_components.kidde.sensor] co_level of type <class 'NoneType'> is None
2024-08-15 14:11:14.070 DEBUG (MainThread) [custom_components.kidde.sensor] battery_state of type <class 'str'> is ok
2024-08-15 14:11:14.070 DEBUG (MainThread) [custom_components.kidde.sensor] life of type <class 'NoneType'> is None
2024-08-15 14:12:14.002 DEBUG (MainThread) [custom_components.kidde.coordinator] Finished fetching kidde data in 0.276 seconds (success: True)
2024-08-15 14:12:14.002 DEBUG (MainThread) [custom_components.kidde.sensor] last_seen of type <class 'str'> is 2024-08-15T07:32:40.804676Z
2024-08-15 14:12:14.003 DEBUG (MainThread) [custom_components.kidde.sensor] last_test_time of type <class 'NoneType'> is None
2024-08-15 14:12:14.003 DEBUG (MainThread) [custom_components.kidde.sensor] smoke_level of type <class 'NoneType'> is None
2024-08-15 14:12:14.003 DEBUG (MainThread) [custom_components.kidde.sensor] co_level of type <class 'NoneType'> is None
2024-08-15 14:12:14.003 DEBUG (MainThread) [custom_components.kidde.sensor] battery_state of type <class 'str'> is ok
2024-08-15 14:12:14.003 DEBUG (MainThread) [custom_components.kidde.sensor] life of type <class 'NoneType'> is None
2024-08-15 14:12:14.004 DEBUG (MainThread) [custom_components.kidde.sensor] last_seen of type <class 'str'> is 2024-08-15T07:37:57.423383Z
2024-08-15 14:12:14.004 DEBUG (MainThread) [custom_components.kidde.sensor] last_test_time of type <class 'NoneType'> is None
2024-08-15 14:12:14.004 DEBUG (MainThread) [custom_components.kidde.sensor] smoke_level of type <class 'NoneType'> is None
2024-08-15 14:12:14.004 DEBUG (MainThread) [custom_components.kidde.sensor] co_level of type <class 'NoneType'> is None
2024-08-15 14:12:14.004 DEBUG (MainThread) [custom_components.kidde.sensor] battery_state of type <class 'str'> is ok
2024-08-15 14:12:14.005 DEBUG (MainThread) [custom_components.kidde.sensor] life of type <class 'NoneType'> is None

Diagnostics dump

There is no Diagnostic option for any of the Devices created by this addon. I only have this Kidde Water Sensor.

carterbox commented 2 months ago

We haven't implemented Water/Freeze detectors yet because none of the contributors to this integration own them. Can you share an example datablob from your water/feeze device as returned from the kidde-homesafe python package?

We will need to implement MOISTURE and COLD binary sensors.

Airey001 commented 2 months ago

I unfortunately don't know python. if i had steps written down i could muddle my way though it but reading that i am just confused.

On Thu, Aug 15, 2024 at 2:31 PM Daniel Ching @.***> wrote:

We haven't implemented Water/Freeze detectors yet because none of the contributors to this integration own them. Can you share an example datablob from your water/feeze device as returned from the kidde-homesafe python package https://pypi.org/project/kidde-homesafe/?

— Reply to this email directly, view it on GitHub https://github.com/tache/homeassistant-kidde/issues/27#issuecomment-2291923720, or unsubscribe https://github.com/notifications/unsubscribe-auth/AHZZC3WLZY7TA3KNE6FGI2TZRTXX5AVCNFSM6AAAAABMSVICHGVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDEOJRHEZDGNZSGA . You are receiving this because you authored the thread.Message ID: @.***>

tache commented 2 months ago

Oh, this is cool. That is no problem; we just need the API JSON data to add the capability.

I am going to add how to do the curl command line call on the wiki has a page on how to do it.

tache commented 2 months ago

Here are the curl commands to make happen CURL CLI Steps

Airey001 commented 2 months ago

Thanks so much here is the output.

[
    {
        "model": "waterleakdetector",
        "notify": true,
        "lost": false,
        "offline": true,
        "contact_lost": false,
        "capabilities": [
            "temperature"
        ],
        "last_seen": "2024-08-16T18:40:10.401047Z",
        "errors": [],
        "fwrev": {
            "wm": "V02.17",
            "net": "4.4",
            "alarm": "V02.11"
        },
        "status": "standard",
        "water_alarm": false,
        "temperature_c": 73.4,
        "temperature": 73.4,
        "temperature_ad": 2309,
        "low_temp_alarm": false,
        "rapid_temperature_variation_status": 0,
        "temperature_variation_value": 37.4,
        "battery_level": 100,
        "battery_voltage": 3.131836,
        "low_battery_alarm": false,
        "battery_state": "ok",
        "checkin_interval": 12,
        "alarm_interval": 30,
        "hold_alarm_time": 30,
        "alarm_reset_time": 1,
        "ap_rssi": -70,
        "reset_flag": false,
        "notify_contact": true,
        "country_code": "US",
        "longitude": 0,
        "latitude": 0,
        "altitude": 0,
        "accuracy": 0
    },
    {
        "model": "waterleakdetector",
        "notify": true,
        "lost": false,
        "offline": true,
        "contact_lost": false,
        "capabilities": [
            "temperature"
        ],
        "last_seen": "2024-08-16T18:45:20.376216Z",
        "errors": [],
        "fwrev": {
            "wm": "V02.15",
            "net": "4.4",
            "alarm": "V02.11"
        },
        "status": "standard",
        "water_alarm": false,
        "temperature_c": 66.2,
        "temperature": 66.2,
        "temperature_ad": 2028,
        "low_temp_alarm": false,
        "rapid_temperature_variation_status": 0,
        "temperature_variation_value": 37.4,
        "battery_level": 100,
        "battery_voltage": 3.078125,
        "low_battery_alarm": false,
        "battery_state": "ok",
        "checkin_interval": 12,
        "alarm_interval": 30,
        "hold_alarm_time": 30,
        "alarm_reset_time": 1,
        "ap_rssi": -69,
        "reset_flag": false,
        "notify_contact": true,
        "country_code": "US",
        "longitude": 0,
        "latitude": 0,
        "altitude": 0,
        "accuracy": 0
    },
    {
        "model": "waterleakdetector",
        "notify": true,
        "lost": false,
        "offline": true,
        "contact_lost": false,
        "capabilities": [
            "temperature"
        ],
        "last_seen": "2024-08-16T19:21:34.514535Z",
        "errors": [],
        "fwrev": {
            "wm": "V02.15",
            "net": "4.4",
            "alarm": "V02.11"
        },
        "status": "standard",
        "water_alarm": false,
        "temperature_c": 66.2,
        "temperature": 66.2,
        "temperature_ad": 2022,
        "low_temp_alarm": false,
        "rapid_temperature_variation_status": 0,
        "temperature_variation_value": 37.4,
        "battery_level": 100,
        "battery_voltage": 3.0722656,
        "low_battery_alarm": false,
        "battery_state": "ok",
        "checkin_interval": 12,
        "alarm_interval": 30,
        "hold_alarm_time": 30,
        "alarm_reset_time": 1,
        "ap_rssi": -60,
        "reset_flag": false,
        "notify_contact": true,
        "country_code": "US",
        "longitude": 0,
        "latitude": 0,
        "altitude": 0,
        "accuracy": 0
    },
    {
        "model": "waterleakdetector",
        "notify": true,
        "lost": false,
        "offline": true,
        "contact_lost": false,
        "capabilities": [
            "temperature"
        ],
        "last_seen": "2024-08-16T18:46:39.297525Z",
        "errors": [],
        "fwrev": {
            "wm": "V02.17",
            "net": "4.4",
            "alarm": "V02.11"
        },
        "status": "standard",
        "water_alarm": false,
        "temperature_c": 73.4,
        "temperature": 73.4,
        "temperature_ad": 2324,
        "low_temp_alarm": false,
        "rapid_temperature_variation_status": 0,
        "temperature_variation_value": 37.4,
        "battery_level": 100,
        "battery_voltage": 3.1484375,
        "low_battery_alarm": false,
        "battery_state": "ok",
        "checkin_interval": 12,
        "alarm_interval": 30,
        "hold_alarm_time": 30,
        "alarm_reset_time": 1,
        "ap_rssi": -50,
        "reset_flag": false,
        "notify_contact": true,
        "country_code": "US",
        "longitude": 0,
        "latitude": 0,
        "altitude": 0,
        "accuracy": 0
    }
]
tache commented 2 months ago

@Airey001 ... perfect; we can add those items when we finish the current PR.

tache commented 2 months ago

Concise differences.

With all that battery information, I wonder if we could get it into Battery Notes

{
    "status": "standard",
    "water_alarm": false,
    "temperature_c": 73.4,
    "temperature_ad": 2309,
    "low_temp_alarm": false,
    "rapid_temperature_variation_status": 0,
    "temperature_variation_value": 37.4,
    "battery_level": 100,
    "battery_voltage": 3.131836,
    "low_battery_alarm": false,
    "checkin_interval": 12,
    "alarm_interval": 30,
    "hold_alarm_time": 30,
    "alarm_reset_time": 1
}
Airey001 commented 2 months ago

i am still setting these up and i got to my last 4 and found they where a different version so i reran incase anything changed between version of the hardware as they look different. One has a reset button in the battery compartment and the other is rest by shorting the water sensor 3 times in 2 seconds.

[
    {
        "model": "waterleakdetector",
        "notify": true,
        "lost": false,
        "offline": true,
        "contact_lost": false,
        "capabilities": [
            "temperature"
        ],
        "last_seen": "2024-08-18T05:44:26.294644Z",
        "errors": [],
        "fwrev": {
            "wm": "V02.17",
            "net": "4.4",
            "alarm": "V02.11"
        },
        "status": "standard",
        "water_alarm": false,
        "temperature_c": 67.1,
        "temperature": 67.1,
        "temperature_ad": 2062,
        "low_temp_alarm": false,
        "rapid_temperature_variation_status": 0,
        "temperature_variation_value": 37.4,
        "battery_level": 100,
        "battery_voltage": 3.1269531,
        "low_battery_alarm": false,
        "battery_state": "ok",
        "checkin_interval": 12,
        "alarm_interval": 30,
        "hold_alarm_time": 30,
        "alarm_reset_time": 1,
        "ap_rssi": -69,
        "reset_flag": false,
        "notify_contact": true,
        "country_code": "US",
        "longitude": 0,
        "latitude": 0,
        "altitude": 0,
        "accuracy": 0
    },
    {
        "model": "waterleakdetector",
        "notify": true,
        "lost": false,
        "offline": true,
        "contact_lost": false,
        "capabilities": [
            "temperature"
        ],
        "last_seen": "2024-08-18T15:13:43.480526Z",
        "errors": [],
        "fwrev": {
            "wm": "V02.23",
            "net": "4.4",
            "alarm": "V03.03"
        },
        "status": "standard",
        "water_alarm": false,
        "temperature_c": 67.1,
        "temperature": 67.1,
        "temperature_ad": 2086,
        "low_temp_alarm": false,
        "rapid_temperature_variation_status": 0,
        "temperature_variation_value": 37.4,
        "battery_level": 100,
        "battery_voltage": 3.1845703,
        "low_battery_alarm": false,
        "battery_state": "ok",
        "checkin_interval": 12,
        "alarm_interval": 30,
        "hold_alarm_time": 30,
        "alarm_reset_time": 1,
        "ap_rssi": -61,
        "reset_flag": false,
        "notify_contact": true,
        "country_code": "US",
        "longitude": 0,
        "latitude": 0,
        "altitude": 0,
        "accuracy": 0
    },
    {
        "model": "waterleakdetector",
        "notify": true,
        "lost": false,
        "offline": true,
        "contact_lost": false,
        "capabilities": [
            "temperature"
        ],
        "last_seen": "2024-08-18T06:02:54.494768Z",
        "errors": [],
        "fwrev": {
            "wm": "V02.15",
            "net": "4.4",
            "alarm": "V02.11"
        },
        "status": "standard",
        "water_alarm": false,
        "temperature_c": 65.3,
        "temperature": 65.3,
        "temperature_ad": 1983,
        "low_temp_alarm": false,
        "rapid_temperature_variation_status": 0,
        "temperature_variation_value": 37.4,
        "battery_level": 100,
        "battery_voltage": 3.0800781,
        "low_battery_alarm": false,
        "battery_state": "ok",
        "checkin_interval": 12,
        "alarm_interval": 30,
        "hold_alarm_time": 30,
        "alarm_reset_time": 1,
        "ap_rssi": -44,
        "reset_flag": false,
        "notify_contact": true,
        "country_code": "US",
        "longitude": 0,
        "latitude": 0,
        "altitude": 0,
        "accuracy": 0
    },
    {
        "model": "waterleakdetector",
        "notify": true,
        "lost": false,
        "offline": true,
        "contact_lost": false,
        "capabilities": [
            "temperature"
        ],
        "last_seen": "2024-08-18T15:25:47.842052Z",
        "errors": [],
        "fwrev": {
            "wm": "V02.23",
            "net": "4.4",
            "alarm": "V03.03"
        },
        "status": "standard",
        "water_alarm": false,
        "temperature_c": 73.4,
        "temperature": 73.4,
        "temperature_ad": 2301,
        "low_temp_alarm": false,
        "rapid_temperature_variation_status": 2,
        "temperature_variation_value": 37.4,
        "battery_level": 100,
        "battery_voltage": 3.1884766,
        "low_battery_alarm": false,
        "battery_state": "ok",
        "checkin_interval": 12,
        "alarm_interval": 30,
        "hold_alarm_time": 30,
        "alarm_reset_time": 1,
        "ap_rssi": -49,
        "reset_flag": false,
        "notify_contact": true,
        "country_code": "US",
        "longitude": 0,
        "latitude": 0,
        "altitude": 0,
        "accuracy": 0
    },
    {
        "model": "waterleakdetector",
        "notify": true,
        "lost": false,
        "offline": true,
        "contact_lost": false,
        "capabilities": [
            "temperature"
        ],
        "last_seen": "2024-08-18T06:01:54.181255Z",
        "errors": [],
        "fwrev": {
            "wm": "V02.15",
            "net": "4.4",
            "alarm": "V02.11"
        },
        "status": "standard",
        "water_alarm": false,
        "temperature_c": 64.4,
        "temperature": 64.4,
        "temperature_ad": 1964,
        "low_temp_alarm": false,
        "rapid_temperature_variation_status": 0,
        "temperature_variation_value": 37.4,
        "battery_level": 100,
        "battery_voltage": 3.0761719,
        "low_battery_alarm": false,
        "battery_state": "ok",
        "checkin_interval": 12,
        "alarm_interval": 30,
        "hold_alarm_time": 30,
        "alarm_reset_time": 1,
        "ap_rssi": -66,
        "reset_flag": false,
        "notify_contact": true,
        "country_code": "US",
        "longitude": 0,
        "latitude": 0,
        "altitude": 0,
        "accuracy": 0
    },
    {
        "model": "waterleakdetector",
        "notify": true,
        "lost": false,
        "offline": true,
        "contact_lost": false,
        "capabilities": [
            "temperature"
        ],
        "last_seen": "2024-08-18T05:51:25.12368Z",
        "errors": [],
        "fwrev": {
            "wm": "V02.17",
            "net": "4.4",
            "alarm": "V02.11"
        },
        "status": "standard",
        "water_alarm": false,
        "temperature_c": 70.7,
        "temperature": 70.7,
        "temperature_ad": 2208,
        "low_temp_alarm": false,
        "rapid_temperature_variation_status": 0,
        "temperature_variation_value": 37.4,
        "battery_level": 100,
        "battery_voltage": 3.1455078,
        "low_battery_alarm": false,
        "battery_state": "ok",
        "checkin_interval": 12,
        "alarm_interval": 30,
        "hold_alarm_time": 30,
        "alarm_reset_time": 1,
        "ap_rssi": -52,
        "reset_flag": false,
        "notify_contact": true,
        "country_code": "US",
        "longitude": 0,
        "latitude": 0,
        "altitude": 0,
        "accuracy": 0
    }
tache commented 2 months ago

Well ... I went out and bought one of these. Cute little thing. I have the model with the push button in the battery compartment.

BUT ... I cannot get the darn thing to connect to my network. Resetting it does nothing besides the beep. It flashes red for the five minutes while the app spins after I put in the password at the end of the install screens. I tried it on both 2.4GHz and a 2.4Ghz/5Ghz networks. 🤔

Okay, so you cannot have your WiFi be WPA2/WPA3. Switching to WPA2 only worked.

tache commented 2 months ago

work in progress

work-in-progress

tache commented 2 months ago

I'm putting all the sensor measurements, flags, and alerts in for now. I'll be moving a bunch to diagnostic. I think the data in the Sensors section should be the binary alarms (water, temp, battery), battery info, last seen, and possibly the temperature variation. There are many data items, and I am unsure what they mean, so we will have to see how it looks and operates. Maybe we can figure it out.

tache commented 2 months ago

latest

work-in-progress-2

tache commented 2 months ago

@Airey001 I opened the PR for the water and freeze detector. If you want to test, download the modified files and upload it to HA via the ability of the file, and restart.

tache commented 2 months ago

Also, my connection woes continue. If I set my network to be WPA2 only, I lose connection to the alarms, but the water detector works. If I change it to the WPA2/WPA3 option, the alarms connect, but the water detector is lost. That does flip the Contact Lost option on the HA card after a day. My resolution will be to set up an additional IoT VLAN, which is just WPA2.

Airey001 commented 2 months ago

Right now i only have the Water sensor but I have Carbon Monoxide with Air Quaility comming in the mail. I have had the problem with IOT and wife for a while. I had to create a second WIFI that was 2.4ghz and wpa2 only a while ago for IOT items. Some items will only work on it and some will work on my normal mixed 2.4ghz/5ghz wifi network. Even in brands i have seen the same some devices work on normal and then other need the special wifi.

I just installled this. It addded all the new sensors and looked good but i still had all the old sensor for the smoke alarm. So i deleted and re-added the intigration and everthing reloaded with out the bad sensors. So far looks good.

I think my Carbon Monxoide sensor is 'out for delivery' and see it on your list of items needing the data for. When i get it i will dump it.

I will do some water leak tests and let you know ther results later today after work.

Airey001 commented 2 months ago

Seems to be working pretty good. I have noticed that a quick few second alarm will not show her. You have to make the alarm constant. But that should be how a real water leak is.

However the Kiddie app knows and alerts on even a short 1 second alarm. But this works great.

tache commented 2 months ago

@Airey001 are you happy with the breakout of the normal sensors vs diagnostic sensors? If you are, I can make a release in a few days.

Airey001 commented 2 months ago

Yeah i think it is a good break out.

Airey001 commented 1 month ago

I just downloaded the most recent set of changes for the PR you are working on with caterbox and i noticed My Carbon Monoxide Alarm with Indoor Air Quality Monitor (KN-COP-DP-10YL-AQ-WF) just got sensors and look good.

image

Airey001 commented 1 month ago

However i think the Air Pressure calculation is off. It should be like 28.97 inhg not 2897 inhg.

tache commented 1 month ago

For the air pressure issue, see issue #22