homebridge-smartthings
homebridge-smartthings copied to clipboard
(BUG) Samsung OCF Air Conditioner not detected correctly
- [ x] That OAuth is Enabled for the SmartApp under the IDE.
- [ x] The SmartApp and Device Handler are using the latest code available.
- [x ] That Both the SmartApps and Device Handlers have been Published for You in the IDE.
About Your Setup
- How many devices are detected? 3
- Mobile App Version(Not required):
- SmartApp Version:2.3.3
- Device Handler Version:2.3.8
- Homebridge Version: 1.2.3
- NodeJS Version:
Expected Behavior
Samsung OCF Air Conditioner detected as thermostats
Current Behavior
Samsung OCF Air Conditioner are detected as "others", in home bridge as switches
Steps to Reproduce (for bugs)
simply configure the plugin after setting up the devices in the smart app
Context
unable to control the heat/cool capabilities of the device and fan speeds
The issue seems to be related to line 187 of the SmartThings app:
tstat: [ c:["Thermostat Operating State"], a: [r: ["thermostatOperatingState"], o: ["heatingSetpoint", "coolingSetpoint"]] ],
that seems to be filtering out the capabilities expected by a thermostat, only the "Samsung OCF Air Conditioner " seems to sets those same capabilities differently:
`{
"name": "guest Bedroom",
"basename": "[room a/c] Samsung",
"deviceid": "XXXXX",
"status": "ONLINE",
"manufacturer": "Unknown",
"model": "Samsung OCF Air Conditioner",
"deviceNetworkId": "XXXXXXX",
"lastActivity": "2020-11-23T12:41:07+0000",
"capabilities": [
"Air Conditioner Fan Mode",
"Air Conditioner Mode",
"Air Quality Sensor",
"Audio Volume",
"Demand Response Load Control",
"Dust Sensor",
"Execute",
"Fan Oscillation Mode",
"Ocf",
"Power Consumption Report",
"Refresh",
"Relative Humidity Measurement",
"Remote Control Status",
"Switch",
"Temperature Measurement",
"Thermostat Cooling Setpoint",
"Very Fine Dust Sensor",
"custom.airConditionerOdorController",
"custom.airConditionerOptionalMode",
"custom.airConditionerTropicalNightMode",
"custom.autoCleaningMode",
"custom.deodorFilter",
"custom.deviceReportStateConfiguration",
"custom.disabledCapabilities",
"custom.disabledComponents",
"custom.dustFilter",
"custom.energyType",
"custom.spiMode",
"custom.thermostatSetpointControl",
"samsungce.driverVersion"
],
"commands": [
"checkOcfHomeMultiModel",
"checkShpHomeMultiModel",
"checkVersion",
"execute",
"getComponentInfo",
"getDeviceInfo",
"getEnergyConsumptionReport",
"getOicData",
"lowerSetpoint",
"off",
"on",
"overrideDrlcAction",
"postOcfCommand",
"printResources",
"raiseSetpoint",
"refresh",
"requestDrlcAction",
"resetDeodorFilter",
"resetDustFilter",
"setAcOptionalMode",
"setAcTropicalNightModeLevel",
"setAirConditionerMode",
"setAirConditionerOdorControllerState",
"setAutoCleaningMode",
"setCoolingSetpoint",
"setFanMode",
"setFanOscillationMode",
"setReportStatePeriod",
"setReportStateRealtime",
"setReportStateRealtimePeriod",
"setSpiMode",
"setVolume",
"volumeDown",
"volumeUp"
],
"customflags": [
],
"attributes": {
"acOptionalMode": "off",
"acTropicalNightModeLevel": 0,
"airConditionerMode": "wind",
"airConditionerOdorControllerProgress": null,
"airConditionerOdorControllerState": null,
"airQuality": null,
"autoCleaningMode": "off",
"coolingSetpoint": 24,
"cumulativePower": null,
"currentPower": null,
"data": "{\"payload\":{\"rt\":[\"oic.r.mode\"],\"if\":[\"oic.if.baseline\",\"oic.if.a\"],\"supportedModes\":[\"Cool\",\"Dry\",\"Wind\",\"Auto\",\"Heat\",\"HOMECARE_WIZARD_V2\"],\"modes\":[\"Wind\"]}}",
"deodorFilterCapacity": null,
"deodorFilterResetType": null,
"deodorFilterStatus": null,
"deodorFilterUsage": null,
"deodorFilterUsageStep": null,
"deviceType": "OCF",
"di": "d282566a-6c17-0a9a-4f19-cb91342aa73d",
"disabledCapabilities": "[\"airFlowDirection\",\"dustSensor\",\"odorSensor\",\"airQualitySensor\",\"carbonDioxideMeasurement\",\"odorSensor\",\"veryFineDustSensor\",\"remoteControlStatus\",\"custom.airConditionerOdorController\",\"demandResponseLoadControl\",\"custom.dustFilter\",\"custom.deodorFilter\",\"custom.eletricHepaFilter\",\"custom.hepaFilter\",\"custom.veryFineDustFilter\",\"custom.periodicSensing\",\"custom.doNotDisturbMode\"]",
"disabledComponents": "[\"1\"]",
"dmv": "res.1.1.0,sh.1.1.0",
"drlcStatus": "{\"duration\":0,\"drlcLevel\":-1,\"start\":\"1970-01-01T00:00:00Z\",\"override\":false}",
"dustFilterCapacity": null,
"dustFilterResetType": null,
"dustFilterStatus": null,
"dustFilterUsage": null,
"dustFilterUsageStep": null,
"dustLevel": null,
"energyType": "1.0",
"fanMode": "turbo",
"fanOscillationMode": "all",
"fineDustLevel": null,
"humidity": 52,
"icv": "core.1.1.0",
"isSubDevice": "false",
"maximumSetpoint": 30.0,
"minimumSetpoint": 18.0,
"mndt": null,
"mnfv": "0.1.0",
"mnhw": "1.0",
"mnml": "http://www.samsung.com",
"mnmn": "Samsung Electronics",
"mnmo": "ARTIK051_KRAC_18K|10193441|60010119001111110200000000000000",
"mnos": "TizenRT2.0",
"mnpv": "0G88PDBMC00429P",
"mnsl": null,
"n": "[room a/c] Samsung",
"persistedEnergyStates": null,
"pi": "d282566a-6c17-0a9a-4f19-cb91342aa73d",
"powerConsumption": "{\"start\":\"2020-07-07T10:05:24Z\",\"power\":0,\"end\":\"2020-07-07T11:05:26Z\"}",
"remoteControlEnabled": null,
"reportStatePeriod": null,
"reportStateRealtime": null,
"reportStateRealtimePeriod": null,
"spiMode": "off",
"st": null,
"supportedAcFanModes": "[\"auto\",\"low\",\"medium\",\"high\",\"turbo\"]",
"supportedAcModes": "[\"cool\",\"dry\",\"wind\",\"auto\",\"heat\"]",
"supportedAcOptionalMode": "[\"off\",\"windFree\"]",
"switch": "off",
"temperature": 21,
"versionNumber": 20082801,
"veryFineDustLevel": null,
"vid": "DA-AC-RAC-000001",
"volume": 100
},
"eventHistory": [
"Mon Nov 23 12:41:07 UTC 2020 | [switch] | (off)",
"Mon Nov 23 12:41:04 UTC 2020 | [airConditionerMode] | (wind)",
"Mon Nov 23 12:41:04 UTC 2020 | [switch] | (on)"
]
}`