Skip to content

Commit 5ba6451

Browse files
authored
[miio] add support for cgllc.airm.cgdn1 Qingping Air Monitor Lite (openhab#10182)
* [miio] add support for cgllc.airm.cgdn1 Qingping Air Monitor Lite close openhab#10152 Signed-off-by: Marcel Verpaalen <[email protected]> * [miio] remove expiremental Signed-off-by: Marcel Verpaalen <[email protected]> * Improve readme Signed-off-by: Marcel Verpaalen <[email protected]> * [miio] improve qty types Signed-off-by: Marcel Verpaalen <[email protected]> * [miio] remove unknown element Signed-off-by: Marcel Verpaalen <[email protected]>
1 parent 035556b commit 5ba6451

File tree

4 files changed

+496
-1
lines changed

4 files changed

+496
-1
lines changed

bundles/org.openhab.binding.miio/README.md

+42
Original file line numberDiff line numberDiff line change
@@ -178,6 +178,7 @@ Currently the miio binding supports more than 280 different models.
178178
| Device | ThingType | Device Model | Supported | Remark |
179179
|------------------------------|------------------|------------------------|-----------|------------|
180180
| AUX Smart Air Conditioner | miio:unsupported | aux.aircondition.v1 | No | |
181+
| Qingping Air Monitor Lite | miio:basic | [cgllc.airm.cgdn1](#cgllc-airm-cgdn1) | Yes | Identified manual actions for execution<br />`action{"did":"settings-set-start-time","siid":9,"aiid":2,"in":[2.0]}`<br />`action{"did":"settings-set-end-time","siid":9,"aiid":3,"in":[3.0]}`<br />`action{"did":"settings-set-frequency","siid":9,"aiid":4,"in":[4.0]}`<br />`action{"did":"settings-set-screen-off","siid":9,"aiid":5,"in":[5.0]}`<br />`action{"did":"settings-set-device-off","siid":9,"aiid":6,"in":[6.0]}`<br />`action{"did":"settings-set-temp-unit","siid":9,"aiid":7,"in":[7.0]}`<br />Please test and feedback if they are working to they can be linked to a channel. |
181182
| Mi Multifunction Air Monitor | miio:basic | [cgllc.airmonitor.b1](#cgllc-airmonitor-b1) | Yes | |
182183
| Qingping Air Monitor | miio:basic | [cgllc.airmonitor.s1](#cgllc-airmonitor-s1) | Yes | |
183184
| Mi Universal Remote | miio:unsupported | chuangmi.ir.v2 | No | |
@@ -507,6 +508,25 @@ note: the ADVANCED `actions#commands` and `actions#rpc` channels can be used to
507508
e.g. `openhab:send actionCommand 'upd_timer["1498595904821", "on"]'` would enable a pre-configured timer. See https://github.com/marcelrv/XiaomiRobotVacuumProtocol for all known available commands.
508509

509510

511+
### Qingping Air Monitor Lite (<a name="cgllc-airm-cgdn1">cgllc.airm.cgdn1</a>) Channels
512+
513+
| Channel | Type | Description | Comment |
514+
|----------------------|----------------------|------------------------------------------|------------|
515+
| actions | String | Actions | Value mapping ["settings-set-start-time"="Set Start Time","settings-set-end-time"="Set End Time","settings-set-frequency"="Set Frequency","settings-set-screen-off"="Set Screen Off","settings-set-device-off"="Set Device Off","settings-set-temp-unit"="Set Temp Unit"] |
516+
| relative_humidity | Number:Dimensionless | Environment - Relative Humidity | |
517+
| pm2_5_density | Number:Density | Environment - PM2 5 Density | |
518+
| pm10_density | Number:Density | Environment - PM10 Density | |
519+
| temperature | Number:Temperature | Environment - Temperature | |
520+
| co2_density | Number:Density | Environment - CO2 Density | |
521+
| battery_level | Number:Dimensionless | Battery - Battery Level | |
522+
| charging_state | Number | Battery - Charging State | Value mapping ["1"="Charging","2"="Not charging","3"="Not chargeable"] |
523+
| voltage | Number:ElectricPotential | Battery - Voltage | |
524+
| mac | String | Mac - Mac | |
525+
| monitoring_frequency | Number:Time | Settings - Monitoring Frequency | Value mapping ["1"="Second","60"="Second","300"="Second","600"="Second","0"="Null"] |
526+
| screen_off | Number:Time | Settings - Screen Off | Value mapping ["15"="Second","30"="Second","60"="Second","300"="Second","0"="Null"] |
527+
| device_off | Number:Time | Settings - Device Off | Value mapping ["15"="Minute","30"="Minute","60"="Minute","0"="Null"] |
528+
| tempature_unit | String | Settings - Tempature Unit | |
529+
510530
### Mi Multifunction Air Monitor (<a name="cgllc-airmonitor-b1">cgllc.airmonitor.b1</a>) Channels
511531

512532
| Channel | Type | Description | Comment |
@@ -4945,6 +4965,28 @@ Additionally depending on the capabilities of your robot vacuum other channels m
49454965

49464966

49474967

4968+
### Qingping Air Monitor Lite (cgllc.airm.cgdn1) item file lines
4969+
4970+
note: Autogenerated example. Replace the id (airm) in the channel with your own. Replace `basic` with `generic` in the thing UID depending on how your thing was discovered.
4971+
4972+
```
4973+
Group G_airm "Qingping Air Monitor Lite" <status>
4974+
String actions "Actions" (G_airm) {channel="miio:basic:airm:actions"}
4975+
Number:Dimensionless relative_humidity "Environment - Relative Humidity" (G_airm) {channel="miio:basic:airm:relative_humidity"}
4976+
Number:Density pm2_5_density "Environment - PM2 5 Density" (G_airm) {channel="miio:basic:airm:pm2_5_density"}
4977+
Number:Density pm10_density "Environment - PM10 Density" (G_airm) {channel="miio:basic:airm:pm10_density"}
4978+
Number:Temperature temperature "Environment - Temperature" (G_airm) {channel="miio:basic:airm:temperature"}
4979+
Number:Density co2_density "Environment - CO2 Density" (G_airm) {channel="miio:basic:airm:co2_density"}
4980+
Number:Dimensionless battery_level "Battery - Battery Level" (G_airm) {channel="miio:basic:airm:battery_level"}
4981+
Number charging_state "Battery - Charging State" (G_airm) {channel="miio:basic:airm:charging_state"}
4982+
Number:ElectricPotential voltage "Battery - Voltage" (G_airm) {channel="miio:basic:airm:voltage"}
4983+
String mac "Mac - Mac" (G_airm) {channel="miio:basic:airm:mac"}
4984+
Number:Time monitoring_frequency "Settings - Monitoring Frequency" (G_airm) {channel="miio:basic:airm:monitoring_frequency"}
4985+
Number:Time screen_off "Settings - Screen Off" (G_airm) {channel="miio:basic:airm:screen_off"}
4986+
Number:Time device_off "Settings - Device Off" (G_airm) {channel="miio:basic:airm:device_off"}
4987+
String tempature_unit "Settings - Tempature Unit" (G_airm) {channel="miio:basic:airm:tempature_unit"}
4988+
```
4989+
49484990
### Mi Multifunction Air Monitor (cgllc.airmonitor.b1) item file lines
49494991

49504992
note: Autogenerated example. Replace the id (airmonitor) in the channel with your own. Replace `basic` with `generic` in the thing UID depending on how your thing was discovered.

bundles/org.openhab.binding.miio/src/main/java/org/openhab/binding/miio/internal/MiIoDevices.java

+1
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@
2525
@NonNullByDefault
2626
public enum MiIoDevices {
2727
AUX_AIRCONDITION_V1("aux.aircondition.v1", "AUX Smart Air Conditioner", THING_TYPE_UNSUPPORTED),
28+
CGLLC_AIRM_CGDN1("cgllc.airm.cgdn1", "Qingping Air Monitor Lite", THING_TYPE_BASIC),
2829
CGLLC_AIRMONITOR_B1("cgllc.airmonitor.b1", "Mi Multifunction Air Monitor", THING_TYPE_BASIC),
2930
CGLLC_AIRMONITOR_S1("cgllc.airmonitor.s1", "Qingping Air Monitor", THING_TYPE_BASIC),
3031
CHUANGMI_IR_V2("chuangmi.ir.v2", "Mi Universal Remote", THING_TYPE_UNSUPPORTED),

bundles/org.openhab.binding.miio/src/main/java/org/openhab/binding/miio/internal/MiIoQuantiyTypes.java

+2-1
Original file line numberDiff line numberDiff line change
@@ -47,6 +47,7 @@ public enum MiIoQuantiyTypes {
4747
AMPERE(Units.AMPERE),
4848
MILLI_AMPERE(MILLI(Units.AMPERE), "mA"),
4949
VOLT(Units.VOLT),
50+
MILLI_VOLT(MILLI(Units.VOLT), "mV"),
5051
WATT(Units.WATT),
5152
LITRE(Units.LITRE, "liter"),
5253
LUX(Units.LUX),
@@ -55,7 +56,7 @@ public enum MiIoQuantiyTypes {
5556
SQUARE_METRE(SIUnits.SQUARE_METRE, "square_meter", "squaremeter"),
5657
PERCENT(Units.PERCENT, "percentage"),
5758
KGM3(Units.KILOGRAM_PER_CUBICMETRE, "kilogram_per_cubicmeter"),
58-
UGM3(Units.MICROGRAM_PER_CUBICMETRE, "microgram_per_cubicmeter"),
59+
UGM3(Units.MICROGRAM_PER_CUBICMETRE, "microgram_per_cubicmeter", "μg/m3"),
5960
M3(SIUnits.CUBIC_METRE, "cubic_meter", "cubic_metre"),
6061
LITER(Units.LITRE, "L", "litre"),
6162
PPM(Units.PARTS_PER_MILLION, "parts_per_million");

0 commit comments

Comments
 (0)