Amazon / Alexa Air Quality Device - New

If you set the binding to TRACE level, delete the device and re-discover it, you should see a log-message similar to Handler '{}' has capabilities '{}' and uses channels '{}' with the {} filled with some values. Can you share that log-line?

Here’s what I’m getting, copied and pasted a few blocks.

manufacturerName='Amazon', friendlyDescription='Amazon Indoor Air Quality Monitor', modelName='', friendlyName='First Air Quality Monitor', reachability='null', entityId='e2407efb-7e19-403e-8391-e017da4cad40', applianceNetworkState=SmartHomeDeviceNetworkState{reachability='REACHABLE'}, capabilities=[SmartHomeCapability{capabilityType='AVSInterfaceCapability', type='AlexaInterface', version='3', interfaceName='Alexa.RangeController', properties=Properties{supported=[Property{name='rangeValue'}]}}, SmartHomeCapability{capabilityType='AVSInterfaceCapability', type='AlexaInterface', version='3', interfaceName='Alexa.RangeController', properties=Properties{supported=[Property{name='rangeValue'}]}}, SmartHomeCapability{capabilityType='AVSInterfaceCapability', type='AlexaInterface', version='3', interfaceName='Alexa.RangeController', properties=Properties{supported=[Property{name='rangeValue'}]}}, SmartHomeCapability{capabilityType='AVSInterfaceCapability', type='AlexaInterface', version='3', interfaceName='Alexa.RangeController', properties=Properties{supported=[Property{name='rangeValue'}]}}, SmartHomeCapability{capabilityType='AVSInterfaceCapability', type='AlexaInterface', version='3', interfaceName='Alexa.TemperatureSensor', properties=Properties{supported=[Property{name='temperature'}]}}, SmartHomeCapability{capabilityType='AVSInterfaceCapability', type='AlexaInterface', version='3', interfaceName='Alexa.RangeController', properties=Properties{supported=[Property{name='rangeValue'}]}}, SmartHomeCapability{capabilityType='AlexaEndpointCapabilityInstance', type='AlexaInterface', version='3.0', interfaceName='Alexa.ProactiveNotificationSource', properties=null}, SmartHomeCapability{capabilityType='AVSInterfaceCapability', type='AlexaInterface', version='3', interfaceName='Alexa.RangeController', properties=Properties{supported=[Property{name='rangeValue'}]}}, SmartHomeCapability{capabilityType='AVSInterfaceCapability', type='AlexaInterface', version='3', interfaceName='Alexa.ToggleController', properties=Properties{supported=[Property{name='toggleState'}]}}], tags=org.smarthomej.binding.amazonechocontrol.internal.jsons.JsonSmartHomeTags$JsonSmartHomeTag@244827, applianceTypes=[AIR_QUALITY_MONITOR], aliases=[JsonSmartHomeDeviceAlias{friendlyName='Loft Air Quality Monitor', enabled=true}], groupDevices=null, connectedVia='', driverIdentity=DriverIdentity{namespace='AAA', identifier='SonarCloudService'}, mergedApplianceIds=[AAA_SonarCloudService_00QAlzsiBBl_kl4W9yB8jt3JWEMpF3zfM3YfXqZAf9GFmnylQ2T9lEOz4DvF3OmMcXnJvnzrkW7YtqiX0WeY], smarthomeDevices=null}, SmartHomeDevice{updateIntervalInSeconds=null,
manufacturerName='Amazon', friendlyDescription='Amazon Indoor Air Quality Monitor', modelName='', friendlyName='Second Air Quality Monitor', reachability='null', entityId='4425680a-78f1-450a-9a99-cc32bdf2d681', applianceNetworkState=SmartHomeDeviceNetworkState{reachability='REACHABLE'}, capabilities=[SmartHomeCapability{capabilityType='AVSInterfaceCapability', type='AlexaInterface', version='3', interfaceName='Alexa.RangeController', properties=Properties{supported=[Property{name='rangeValue'}]}}, SmartHomeCapability{capabilityType='AVSInterfaceCapability', type='AlexaInterface', version='3', interfaceName='Alexa.RangeController', properties=Properties{supported=[Property{name='rangeValue'}]}}, SmartHomeCapability{capabilityType='AVSInterfaceCapability', type='AlexaInterface', version='3', interfaceName='Alexa.RangeController', properties=Properties{supported=[Property{name='rangeValue'}]}}, SmartHomeCapability{capabilityType='AVSInterfaceCapability', type='AlexaInterface', version='3', interfaceName='Alexa.RangeController', properties=Properties{supported=[Property{name='rangeValue'}]}}, SmartHomeCapability{capabilityType='AVSInterfaceCapability', type='AlexaInterface', version='3', interfaceName='Alexa.TemperatureSensor', properties=Properties{supported=[Property{name='temperature'}]}}, SmartHomeCapability{capabilityType='AVSInterfaceCapability', type='AlexaInterface', version='3', interfaceName='Alexa.RangeController', properties=Properties{supported=[Property{name='rangeValue'}]}}, SmartHomeCapability{capabilityType='AlexaEndpointCapabilityInstance', type='AlexaInterface', version='3.0', interfaceName='Alexa.ProactiveNotificationSource', properties=null}, SmartHomeCapability{capabilityType='AVSInterfaceCapability', type='AlexaInterface', version='3', interfaceName='Alexa.RangeController', properties=Properties{supported=[Property{name='rangeValue'}]}}, SmartHomeCapability{capabilityType='AVSInterfaceCapability', type='AlexaInterface', version='3', interfaceName='Alexa.ToggleController', properties=Properties{supported=[Property{name='toggleState'}]}}], tags=org.smarthomej.binding.amazonechocontrol.internal.jsons.JsonSmartHomeTags$JsonSmartHomeTag@32dbbc, applianceTypes=[AIR_QUALITY_MONITOR], aliases=[JsonSmartHomeDeviceAlias{friendlyName='Kitchen Air Quality Monitor', enabled=true}], groupDevices=null, connectedVia='', driverIdentity=DriverIdentity{namespace='AAA', identifier='SonarCloudService'}, mergedApplianceIds=[AAA_SonarCloudService_00QAnmWNdpudF0ErgCM3XbJn8v2yqnsCOPY9DoH-q7vl3v-EmRe4rbeDFbbIRyApO-eW6wvav2VijhLk0ZOX], smarthomeDevices=null}, SmartHomeDevice{updateIntervalInSeconds=10, applianceId='AAA_SonarCloudService_f3a1e33e-97da-3158-ba7b-75df1f144d05',
2021-12-18 15:20:46.794 [TRACE] [chocontrol.internal.handler.SmartHomeDeviceHandler] - Search for smartHomeBaseDevice='SmartHomeDevice{updateIntervalInSeconds=20, applianceId='AAA_SonarCloudService_00QAlzsiBBl_kl4W9yB8jt3JWEMpF3zfM3YfXqZAf9GFmnylQ2T9lEOz4DvF3OmMcXnJvnzrkW7YtqiX0WeY', manufacturerName='Amazon', friendlyDescription='Amazon Indoor Air Quality Monitor', modelName='', friendlyName='First Air Quality Monitor', reachability='null', entityId='e2407efb-7e19-403e-8391-e017da4cad40', applianceNetworkState=SmartHomeDeviceNetworkState{reachability='REACHABLE'}, capabilities=[SmartHomeCapability{capabilityType='AVSInterfaceCapability', type='AlexaInterface', version='3', interfaceName='Alexa.RangeController', properties=Properties{supported=[Property{name='rangeValue'}]}}, SmartHomeCapability{capabilityType='AVSInterfaceCapability', type='AlexaInterface', version='3', interfaceName='Alexa.RangeController', properties=Properties{supported=[Property{name='rangeValue'}]}}, SmartHomeCapability{capabilityType='AVSInterfaceCapability', type='AlexaInterface', version='3', interfaceName='Alexa.RangeController', properties=Properties{supported=[Property{name='rangeValue'}]}}, SmartHomeCapability{capabilityType='AVSInterfaceCapability', type='AlexaInterface', version='3', interfaceName='Alexa.RangeController', properties=Properties{supported=[Property{name='rangeValue'}]}}, SmartHomeCapability{capabilityType='AVSInterfaceCapability', type='AlexaInterface', version='3', interfaceName='Alexa.TemperatureSensor', properties=Properties{supported=[Property{name='temperature'}]}}, SmartHomeCapability{capabilityType='AVSInterfaceCapability', type='AlexaInterface', version='3', interfaceName='Alexa.RangeController', properties=Properties{supported=[Property{name='rangeValue'}]}}, SmartHomeCapability{capabilityType='AlexaEndpointCapabilityInstance', type='AlexaInterface', version='3.0', interfaceName='Alexa.ProactiveNotificationSource', properties=null}, SmartHomeCapability{capabilityType='AVSInterfaceCapability', type='AlexaInterface', version='3', interfaceName='Alexa.RangeController', properties=Properties{supported=[Property{name='rangeValue'}]}}, SmartHomeCapability{capabilityType='AVSInterfaceCapability', type='AlexaInterface', version='3', interfaceName='Alexa.ToggleController', properties=Properties{supported=[Property{name='toggleState'}]}}], tags=org.smarthomej.binding.amazonechocontrol.internal.jsons.JsonSmartHomeTags$JsonSmartHomeTag@244827, applianceTypes=[AIR_QUALITY_MONITOR], aliases=[JsonSmartHomeDeviceAlias{friendlyName='Loft Air Quality Monitor', enabled=true}], groupDevices=null, connectedVia='', driverIdentity=DriverIdentity{namespace='AAA', identifier='SonarCloudService'}, mergedApplianceIds=[AAA_SonarCloudService_00QAlzsiBBl_kl4W9yB8jt3JWEMpF3zfM3YfXqZAf9GFmnylQ2T9lEOz4DvF3OmMcXnJvnzrkW7YtqiX0WeY], smarthomeDevices=null}' resulted in '[SmartHomeDevice{updateIntervalInSeconds=20, applianceId='AAA_SonarCloudService_00QAlzsiBBl_kl4W9yB8jt3JWEMpF3zfM3YfXqZAf9GFmnylQ2T9lEOz4DvF3OmMcXnJvnzrkW7YtqiX0WeY',
1 Like

Thanks. I‘ll try to figure out what‘s going on ASAP.

1 Like

@jwiseman which version of the amazon binding do you use? I am asking because my amazon AirQualityDevice was not found (running OH 3.2m5 and OH3.2).
I tried the official OH binding and the “org.smarthomej.binding.amazonechocontrol-3.2.7-SNAPSHOT” Version (without that socket-error)… both versions didn’t find my AirQualityDevice.
I am just curious :slight_smile:

I actively working with the Amazon binding owner to not just detect the device but detect the channels within it. The binding version I have doesn’t have any channels other than temperature which I haven’t even linked or tested it.

Will keep you posted once we get it to work.

Best, Jay

2 Likes

This version of the Amazon Echo binding has the Amazon Air Quality devices working for me over the last 25 days now.

Best, Jay

Found out about this and I wanted to share in order to keep up to date with the latest Amazon Echo binding.

If you’re on openHAB 3.2.0 or later, you can add “https://download.smarthomej.org/addons.json ” in the “JSON 3rd Party Addon Service” section in the settings page of the UI.
Once that is saved, go to the bindings page and you’ll see a new section with the 3rd Party Addons. You’re looking for the SmartHome/J variant of the Amazon Echo Control Binding.
*Be sure to uninstall the regular one before you install this one

Best, Jay

Did you manage to get it to pull any other data out of the Air Quality Monitor as I’m still only seeing Temperature in the Channels.

Yup, have 2 of them and the data is being actively pulled.

I would delete your device and rediscover it.

Best, Jay

@J-N-K and @jwiseman - I just got one of these Amazon Smart Air Quality Monitors and upgraded to the latest OpenHAB v3.3. Was hoping that the v3.2.9 addons SmartHomeJ enhancements to support this device would have been included in v3.3.0 of the official AmazonEchoControl binding, and discovery would just work for this newer devices channels, but apparently not yet… Similar to others above I’m only seeing a Temperature channel.

I’m not apposed to trying it out via “JSON 3rd Party Addon Service”, but first I was looking into just side loading the custom SmartHomeJ AmazonEchoControl/Commons bindings via my OpenHAB ‘addons’ folder. Looking at Maven however, there don’t seem to be any v3.3.x releases:

https://mvnrepository.com/artifact/org.smarthomej.addons.bundles/org.smarthomej.binding.amazonechocontrol

Would you expect that v3.2.13 would work fine with OpenHAB 3.3.x as well?

Thanks for all of your awesome work on this!
.

I’m still running OH 3.2 with the air quality monitor.

Best, Jay

1 Like

If you install all necessary bundles, it’ll work with 3.3.

1 Like

On 3.3 I’ve removed the Amazon Echo Control binding and installed ‘SmartHome/J Amazon Echo Control Binding’… is there something else I need to do to discover the ‘Thing’?

No, should work OOTB. Which version are you running?

I’m running the release 3.3 on a Pi 4 and this is what I have installed:

now that I paste, I see that it is ‘waiting’ - I guess I need to go figure out why…

358 │ Waiting │  80 │ 3.2.13                 │ SmartHome/J Add-ons :: Bundles :: Amazon Echo Control Binding
359 │ Active  │  80 │ 3.2.13                 │ SmartHome/J Add-ons :: Bundles :: Common Components

That’s why I there is an add-on service… It saves you from manually tinkering around with the bundles and their dependencies.

Try resolve 358 followed by start 358.

Was excited too see new commands to run…but sadly they didn’t work. I’ll try a reboot later… not super-urgent…

Well, I’m a little confused (which isn’t unusual).
I confirmed both Echo bindings were removed in the UI, double-checked the addons folder, did a clean-cache and reboot, and then checked what was running and the Smarthome/J one was still running. All Echo devices were online in Things, but there was no discovered Air Quality device (confirmed in Alexa UI).
I then installed the Smarthome/J one from the Bindings UI and checked the console again, and two different versions were running, Echo devices online, but no discovered Air Quality device.

openhab> bundle:list | grep cho
234 │ Active │  80 │ 3.2.7.202110131552     │ SmartHome/J Add-ons :: Bundles :: Amazon Echo Control Binding
openhab> bundle:list | grep cho
234 │ Active  │  80 │ 3.2.7.202110131552     │ SmartHome/J Add-ons :: Bundles :: Amazon Echo Control Binding
307 │ Waiting │  80 │ 3.2.13                 │ SmartHome/J Add-ons :: Bundles :: Amazon Echo Control Binding

Any ideas?

Here’s what I would do. Uninstall bundle 234 and 307 from above.

Make sure you don’t have anything installed around “SmartHome/J” after uninstalling by doing your bundle:list | grep cho

Then I would drop these into your add-on’s, remove the .TXT from the end first.

This is the exact versions I’m running now for over a year. I would drop the common’s one first and make sure it is active before dropping in the echo one.

org.smarthomej.commons-3.2.11-SNAPSHOT.jar.txt (68.4 KB)
org.smarthomej.binding.amazonechocontrol-3.2.11-SNAPSHOT.jar.txt (487.5 KB)

Best, Jay

Thanks Jay,

I think I’m set up:

openhab> bundle:list | grep smarthomej

309 │ Active │  80 │ 3.2.11.202201280329    │ file:/usr/share/openhab/addons/org.smarthomej.commons-3.2.11-SNAPSHOT.jar
310 │ Active │  80 │ 3.2.11.202201281419    │ file:/.../org.smarthomej.binding.amazonechocontrol-3.2.11-SNAPSHOT.jar

Should the device just discover or do I need to do something manually?