0x5e / homebridge-tuya-platform

Make homebridge-tuya-platform great again.
MIT License
222 stars 67 forks source link

Add Support for TUYA app Air Quality Monitor #222

Open randymassey opened 1 year ago

randymassey commented 1 year ago

Device info

Device Information Product Name Medidor de calidad de aire Device ID ebe45a37b332224659valp Product Category hjjcy Device Status Online Activated At 2023-01-25 14:17:21 Device Association Project HomeBridge Smart Home Link Association r**@***.com Data Center Western America Data Center

Update Device StatusJSON Editing

pm25_value(0 - 999ppm)

0 voc_value(0 - 999mg/m3)

0 ch2o_value(0 - 100mg/m3)

0 co2_value(0 - 5000ppm)

0 humidity_value(0 - 100%)

0 temp_current(-400 - 2000℃)

The Tuya iOT Cloud project does properly see the device & HomeBridge does, in it's logs, see it as an "unsupported" Air Quality Monitor, in order to bring into HomeBridge

From HomeBridge Log:

[25/01/2023, 14:24:20] [@0x5e/homebridge-tuya-platform] Unsupported device: Air quality Monitor.

0x5e commented 1 year ago

hjjcy is Environmental Detector, almost the same as Air Quality Monitor, will be added in next version.

randymassey commented 1 year ago

Great.  Thanks for your efforts & hope you are feeling ok, saw your prior message.RandySent from my iPhoneOn Jan 29, 2023, at 4:27 AM, gaosen @.***> wrote: hjjcy is Environmental Detector, almost the same as Air Quality Monitor, will be added in next version.

—Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you authored the thread.Message ID: @.***>

randymassey commented 1 year ago

I have a question regarding this. After the plug-in update, as you indicated, I did see the sensors begin showing up to my Apple home app / HomeKit side.

I am not seeing the temperature, & I know this device can also detect carbon dioxide, as well as formaldehyde…

My extremely preliminary understanding is that HomeKit does not recognize those last two sensors, eg CO2 & HCHO. But I know of course it does understand temperature.

What is showing up in the home appare the following:

Humidity, PM2.5, VOC, & a generic reference to air quality When I go into the specific sensor in the Apple home app. For that field, it will say good or inferior, depending on environmental conditions around the detector.

I also do not see the PM1.0 & the PM10 readings, but similar to carbon dioxide & formaldehyde, I think those might not show up in HomeKit, but I would like to verify that with you.

It is correctly seeing all of the values in real time for the sensors that it is seeing. So everything is traveling correctly as far as the actual values on the device as well as what shows up in that home app. I'm just not seeing those additional sensors from the unit. Temperature, CO2, the addtl PM's & HCHO.

Please clarify if you know, whether those are able to be recognized by HomeKit. But at the very least, there seems to be an issue with temperature.

Everything else pretty much just worked right away. If I need to delete & re-add the device, LMK… I had added it under the prior plug-in version before it was supported, it appeared as an unsupported device, both in the HomeBridge logs, as well as a tile icon reference in the Apple home app.

So after the plug-in update, it just began working & as of yet, I have not deleted the instance of it, and re-added it back into HomeKit.

Regards

Randy

0x5e commented 1 year ago

Thanks for the feedback. For the Air Quality Monitor and Environmental Detector, the plugin will create three services at present: AirQualitySensor, TemperatureSensor and HumiditySensor.

AirQualitySensor in HomeBridge support NO2, O3, PM10, PM2.5, SO2, VOC. PM10 can be supported, I missed this because I didn't see it in your device infos. I will add it next. PM1 and HCHO there's no proper way to display this.

Temperature can support too. will be updated later.

As there's more and more special devices (pir sensor with light, humidifier with light, water valve with leak sensor...), they are hard to put into one category, I'm planing to add a feature to support devices like these, with manuall config, in 1.8.0 (just a early thought). with this feature, if you are acceptable to display PM1.0 value as a PM2.5, or display HCHO as VOC, you can manually add it.

If anyone have some advice, please let me know :)

randymassey commented 1 year ago

Understood… I will hang tight for the future update. I tried to grab the detail for all the sensors from the project on the website, when I did the original copy and paste. But I might've missed some of the information at the time.

Definitely LMK if there's any additional information you would require from me, e.g. detailed information from the IOT cloud, website, etc. as I know that lists all of the sensors involved.

But it definitely seems from reading your message, you have already touched on all of the relevant sensors.

Thanks so much

Randy

0x5e commented 1 year ago

Temperature and PM10 is added in beta.29, please have a try.

randymassey commented 1 year ago

I think I might have replied to an incorrect email several days back, as I wanted to let you know, starting with version 29 as well as version 30, it crashes the child bridge, that I have Tuya running as. It creates a loop. The bridge will try to start, show as pending, then close out and perpetually loop.  The same is true with version 30 the bridge will try to start then just loop.  So far I cannot run anything past .28.I think I sent a reply with initial logs to the release email for .29, that might be why if that’s not an inbound email.I will have to reinstall & grab some logs for you.But here is a copy from the log generated from version doc to nine from a few days ago.LMK. If you would like me to engage, deeper, logging, or later on today after an appointment, I have late this morning, I can re-install the latest version and capture a more thorough version of the log off of my computer versus the phone which is where I grab this from. Randy24/02/2023, 00:38:52] [39mHomebridge v1.6.0 (HAP v0.11.0) @./homebridge-tuya-platform) is running on port 40132.TypeError: Invalid URL    at new NodeError (node:internal/errors:399:5)    at URL.onParseError (node:internal/url:565:9)    at new URL (node:internal/url:645:5)    at res @./homebridge-tuya-platform/dist/core/TuyaOpenAPI.js:238:23)    at new Promise ()    at TuyaOpenAPI.request @./homebridge-tuya-platform/dist/core/TuyaOpenAPI.js:236:27)[37m[24/02/2023, 00:38:52] @./homebridge-tuya-platform][39m [33mChild bridge process ended[39m[37m[24/02/2023, 00:38:52] @./homebridge-tuya-platform][39m Process Ended. Code: 1, Signal: null[37m[24/02/2023, 00:38:59] @./homebridge-tuya-platform][39m Restarting Process...[37m[24/02/2023, 00:39:00] @./homebridge-tuya-platform][39m Launched child bridge with PID 1499[37m[24/02/2023, 00:39:00] [39mRegistering platform @./homebridge-tuya-platform.TuyaPlatform'Sent from my iPhoneOn Feb 27, 2023, at 8:51 AM, gaosen @.***> wrote: Temperature and PM10 is added in beta.29, please have a try.

—Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you authored the thread.Message ID: @.***>

0x5e commented 1 year ago

@randymassey I miss a check for the newly added endpoint param, now it should working, please try beta.31. sorry about that.

randymassey commented 1 year ago

Hi, no, in 31 it is still looping..Here is a quick regular log grab…[27/02/2023, 09:36:35] Loaded 4 cached accessories from cachedAccessories.0ED57DC7A51A.[27/02/2023, 09:36:35] @./homebridge-tuya-platform] Loading accessory from cache: Living Room TV Lights[27/02/2023, 09:36:35] @./homebridge-tuya-platform] Loading accessory from cache: TV Lights[27/02/2023, 09:36:35] @./homebridge-tuya-platform] Loading accessory from cache: Air Quality Monitor[27/02/2023, 09:36:35] @./homebridge-tuya-platform] Loading accessory from cache: Driveway Lights[27/02/2023, 09:36:35] @./homebridge-tuya-platform] Log in to Tuya Cloud.[27/02/2023, 09:36:35] @./homebridge-tuya-platform] [TuyaOpenAPI] Login to: undefined[27/02/2023, 09:36:35] @./homebridge-tuya-platform] [TuyaOpenAPI] Invalid endpoint: undefined[27/02/2023, 09:36:35] Homebridge v1.6.0 (HAP v0.11.0) @./homebridge-tuya-platform) is running on port 40132.Error: self-signed certificate    at TLSSocket.onConnectSecure (node:_tls_wrap:1540:34)    at TLSSocket.emit (node:events:513:28)    at TLSSocket._finishInit (node:_tls_wrap:959:8)    at TLSWrap.ssl.onhandshakedone (node:_tls_wrap:743:12)[27/02/2023, 09:36:35] @./homebridge-tuya-platform] Child bridge process ended[27/02/2023, 09:36:35] @./homebridge-tuya-platform] Process Ended. Code: 1, Signal: null[27/02/2023, 09:36:42] @./homebridge-tuya-platform] Restarting Process...[27/02/2023, 09:36:43] @./homebridge-tuya-platform] Launched child bridge with PID 26582[27/02/2023, 09:36:44] Registering platform @./homebridge-tuya-platform.TuyaPlatform'[27/02/2023, 09:36:44] @./homebridge-tuya-platform] Loaded @0x5e/homebridge-tuya-platform v1.7.0-beta.31 child bridge successfully[27/02/2023, 09:36:44] Loaded 4 cached accessories from cachedAccessories.0ED57DC7A51A.[27/02/2023, 09:36:44] @./homebridge-tuya-platform] Loading accessory from cache: Living Room TV Lights[27/02/2023, 09:36:44] @./homebridge-tuya-platform] Loading accessory from cache: TV Lights[27/02/2023, 09:36:44] @./homebridge-tuya-platform] Loading accessory from cache: Air Quality Monitor[27/02/2023, 09:36:44] @./homebridge-tuya-platform] Loading accessory from cache: Driveway Lights[27/02/2023, 09:36:44] @./homebridge-tuya-platform] Log in to Tuya Cloud.[27/02/2023, 09:36:44] @./homebridge-tuya-platform] [TuyaOpenAPI] Login to: undefined[27/02/2023, 09:36:44] @./homebridge-tuya-platform] [TuyaOpenAPI] Invalid endpoint: undefined[27/02/2023, 09:36:44] Homebridge v1.6.0 (HAP v0.11.0) @./homebridge-tuya-platform) is running on port 40132.Error: self-signed certificate    at TLSSocket.onConnectSecure (node:_tls_wrap:1540:34)    at TLSSocket.emit (node:events:513:28)    at TLSSocket._finishInit (node:_tls_wrap:959:8)    at TLSWrap.ssl.onhandshakedone (node:_tls_wrap:743:12)[27/02/2023, 09:36:44] @./homebridge-tuya-platform] Child bridge process ended[27/02/2023, 09:36:44] @./homebridge-tuya-platform] Process Ended. Code: 1, Signal: null[27/02/2023, 09:36:46] [Homebridge UI] Starting terminal session[27/02/2023, 09:36:49] [Homebridge UI] Terminal session ended.[27/02/2023, 09:36:50] [Homebridge UI] Starting terminal session[27/02/2023, 09:36:51] @./homebridge-tuya-platform] Restarting Process...[27/02/2023, 09:36:52] @./homebridge-tuya-platform] Launched child bridge with PID 26685[27/02/2023, 09:36:53] Registering platform @./homebridge-tuya-platform.TuyaPlatform'[27/02/2023, 09:36:53] @./homebridge-tuya-platform] Loaded @0x5e/homebridge-tuya-platform v1.7.0-beta.31 child bridge successfully[27/02/2023, 09:36:53] Loaded 4 cached accessories from cachedAccessories.0ED57DC7A51A.[27/02/2023, 09:36:53] @./homebridge-tuya-platform] Loading accessory from cache: Living Room TV Lights[27/02/2023, 09:36:53] @./homebridge-tuya-platform] Loading accessory from cache: TV Lights[27/02/2023, 09:36:53] @./homebridge-tuya-platform] Loading accessory from cache: Air Quality Monitor[27/02/2023, 09:36:53] @./homebridge-tuya-platform] Loading accessory from cache: Driveway Lights[27/02/2023, 09:36:53] @./homebridge-tuya-platform] Log in to Tuya Cloud.[27/02/2023, 09:36:53] @./homebridge-tuya-platform] [TuyaOpenAPI] Login to: undefined[27/02/2023, 09:36:53] @./homebridge-tuya-platform] [TuyaOpenAPI] Invalid endpoint: undefined[27/02/2023, 09:36:53] Homebridge v1.6.0 (HAP v0.11.0) @./homebridge-tuya-platform) is running on port 40132.Error: self-signed certificate    at TLSSocket.onConnectSecure (node:_tls_wrap:1540:34)    at TLSSocket.emit (node:events:513:28)    at TLSSocket._finishInit (node:_tls_wrap:959:8)    at TLSWrap.ssl.onhandshakedone (node:_tls_wrap:743:12)[27/02/2023, 09:36:53] @./homebridge-tuya-platform] Child bridge process ended[27/02/2023, 09:36:53] @./homebridge-tuya-platform] Process Ended. Code: 1, Signal: null[27/02/2023, 09:37:00] @./homebridge-tuya-platform] Restarting Process...[27/02/2023, 09:37:01] @./homebridge-tuya-platform] Launched child bridge with PID 26802[27/02/2023, 09:37:02] Registering platform @./homebridge-tuya-platform.TuyaPlatform'[27/02/2023, 09:37:02] @./homebridge-tuya-platform] Loaded @0x5e/homebridge-tuya-platform v1.7.0-beta.31 child bridge successfully[27/02/2023, 09:37:02] Loaded 4 cached accessories from cachedAccessories.0ED57DC7A51A.[27/02/2023, 09:37:02] @./homebridge-tuya-platform] Loading accessory from cache: Living Room TV Lights[27/02/2023, 09:37:02] @./homebridge-tuya-platform] Loading accessory from cache: TV Lights[27/02/2023, 09:37:02] @./homebridge-tuya-platform] Loading accessory from cache: Air Quality Monitor[27/02/2023, 09:37:02] @./homebridge-tuya-platform] Loading accessory from cache: Driveway Lights[27/02/2023, 09:37:02] @./homebridge-tuya-platform] Log in to Tuya Cloud.[27/02/2023, 09:37:02] @./homebridge-tuya-platform] [TuyaOpenAPI] Login to: undefined[27/02/2023, 09:37:02] @./homebridge-tuya-platform] [TuyaOpenAPI] Invalid endpoint: undefined[27/02/2023, 09:37:02] Homebridge v1.6.0 (HAP v0.11.0) @./homebridge-tuya-platform) is running on port 40132.Error: self-signed certificate    at TLSSocket.onConnectSecure (node:_tls_wrap:1540:34)    at TLSSocket.emit (node:events:513:28)    at TLSSocket._finishInit (node:_tls_wrap:959:8)    at TLSWrap.ssl.onhandshakedone (node:_tls_wrap:743:12)[27/02/2023, 09:37:02] @./homebridge-tuya-platform] Child bridge process ended[27/02/2023, 09:37:02] @./homebridge-tuya-platform] Process Ended. Code: 1, Signal: null[27/02/2023, 09:37:09] @./homebridge-tuya-platform] Restarting Process...[27/02/2023, 09:37:10] @./homebridge-tuya-platform] Launched child bridge with PID 26919[27/02/2023, 09:37:11] Registering platform @./homebridge-tuya-platform.TuyaPlatform'[27/02/2023, 09:37:11] @./homebridge-tuya-platform] Loaded @0x5e/homebridge-tuya-platform v1.7.0-beta.31 child bridge successfully[27/02/2023, 09:37:11] Loaded 4 cached accessories from cachedAccessories.0ED57DC7A51A.[27/02/2023, 09:37:11] @./homebridge-tuya-platform] Loading accessory from cache: Living Room TV Lights[27/02/2023, 09:37:11] @./homebridge-tuya-platform] Loading accessory from cache: TV Lights[27/02/2023, 09:37:11] @./homebridge-tuya-platform] Loading accessory from cache: Air Quality Monitor[27/02/2023, 09:37:11] @./homebridge-tuya-platform] Loading accessory from cache: Driveway Lights[27/02/2023, 09:37:11] @./homebridge-tuya-platform] Log in to Tuya Cloud.[27/02/2023, 09:37:11] @./homebridge-tuya-platform] [TuyaOpenAPI] Login to: undefined[27/02/2023, 09:37:11] @./homebridge-tuya-platform] [TuyaOpenAPI] Invalid endpoint: undefined[27/02/2023, 09:37:11] Homebridge v1.6.0 (HAP v0.11.0) @./homebridge-tuya-platform) is running on port 40132.Error: self-signed certificate    at TLSSocket.onConnectSecure (node:_tls_wrap:1540:34)    at TLSSocket.emit (node:events:513:28)    at TLSSocket._finishInit (node:_tls_wrap:959:8)    at TLSWrap.ssl.onhandshakedone (node:_tls_wrap:743:12)[27/02/2023, 09:37:11] @./homebridge-tuya-platform] Child bridge process ended[27/02/2023, 09:37:11] @./homebridge-tuya-platform] Process Ended. Code: 1, Signal: null[27/02/2023, 09:37:18] @./homebridge-tuya-platform] Restarting Process...[27/02/2023, 09:37:19] @./homebridge-tuya-platform] Launched child bridge with PID 27036[27/02/2023, 09:37:20] Registering platform @./homebridge-tuya-platform.TuyaPlatform'[27/02/2023, 09:37:20] @./homebridge-tuya-platform] Loaded @0x5e/homebridge-tuya-platform v1.7.0-beta.31 child bridge successfully[27/02/2023, 09:37:20] Loaded 4 cached accessories from cachedAccessories.0ED57DC7A51A.[27/02/2023, 09:37:20] @./homebridge-tuya-platform] Loading accessory from cache: Living Room TV Lights[27/02/2023, 09:37:20] @./homebridge-tuya-platform] Loading accessory from cache: TV Lights[27/02/2023, 09:37:20] @./homebridge-tuya-platform] Loading accessory from cache: Air Quality Monitor[27/02/2023, 09:37:20] @./homebridge-tuya-platform] Loading accessory from cache: Driveway Lights[27/02/2023, 09:37:20] @./homebridge-tuya-platform] Log in to Tuya Cloud.[27/02/2023, 09:37:20] @./homebridge-tuya-platform] [TuyaOpenAPI] Login to: undefined[27/02/2023, 09:37:20] @./homebridge-tuya-platform] [TuyaOpenAPI] Invalid endpoint: undefined[27/02/2023, 09:37:20] Homebridge v1.6.0 (HAP v0.11.0) @./homebridge-tuya-platform) is running on port 40132.Error: self-signed certificate    at TLSSocket.onConnectSecure (node:_tls_wrap:1540:34)    at TLSSocket.emit (node:events:513:28)    at TLSSocket._finishInit (node:_tls_wrap:959:8)    at TLSWrap.ssl.onhandshakedone (node:_tls_wrap:743:12)[27/02/2023, 09:37:20] @./homebridge-tuya-platform] Child bridge process ended[27/02/2023, 09:37:20] @./homebridge-tuya-platform] Process Ended. Code: 1, Signal: nullSent from my iPadOn Feb 27, 2023, at 9:26 AM, gaosen @.***> wrote: @randymassey I miss a check for the newly added endpoint param, now it should working, please try beta.31. sorry about that.

—Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you were mentioned.Message ID: @.***>

0x5e commented 1 year ago

@randymassey What's your country code and endpoint (if exist) in the config? before the reply, I add another check in beta.32 hope it works.

randymassey commented 1 year ago

So already, I can quickly tell you this is working.  I’m in the US, too as FYI.. It is not looping now on bridge reboot & the Tuya child bridge comes up as expected.  Also, now I can see the temp sensor showing.  I do still only see the PM2.5 value showing, as I think you indicated one of the additional PM values should also show now.  (Of course Humidity, VOC, & the generic good/bad AQ value are also there).I believe you indicated an additional PM value should show, without reading back in messages, I can’t recall if it was PM10 or PM1.0.Just FYI.  Def looking a lot better.RandySent from my iPhoneOn Feb 27, 2023, at 7:17 PM, gaosen @.***> wrote: @randymassey What's your country code and endpoint (if exist) in the config? before the reply, I add another check in beta.32 hope it works.

—Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you were mentioned.Message ID: @.***>

0x5e commented 1 year ago

I add the PM10 with code pm10 from tuya docs. If your device not show up, you can try change device control mode on website, if it show up with a different code, you can use advanced options to override it. examples are in the docs, good luck :)

randymassey commented 1 year ago

Ah ok, I know where to look & will have to take a deeper look at it.I’m just on my phone & for ease I use a 3rd party iOS app to manage HomeBridge.I’ll pull this up on my tower & get into the respective WEB admin interfaces & review.Thanks so much.Kind regards RandySent from my iPhoneOn Feb 27, 2023, at 8:01 PM, gaosen @.***> wrote: I add the PM10 with code pm10 from tuya docs. If your device not show up, you can try change device control mode on website, if it show up with a different code, you can use advanced options to override it. examples are in the docs, good luck :)

—Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you were mentioned.Message ID: @.***>