bilan / connectlife-api-connector

Connectlife API proxy / MQTT Home Assistant integration
51 stars 13 forks source link

Dishwasher support #19

Open martin131 opened 3 months ago

martin131 commented 3 months ago

Is this addon supporting also dishwashers? Or AC only?

bilan commented 3 months ago

Addon exposes web API that can control every device from Connectlife app. Only AC is integrated with HA.

martin131 commented 3 months ago

Right now I am considering buying a Gorenje dishwasher. So right now it is not possible, am I right? Any plans? :-)

bilan commented 3 months ago

No plans for adding new devices. I have only AC device and based on it created this addon. Without testing on real device it's hard to add new one.

Monacoslo commented 3 months ago

Addon exposes web API that can control every device from Connectlife app. Only AC is integrated with HA.

What do you need to integrate additional devices?

martin131 commented 3 months ago

Yesterday my new Gorenje dishwasher arrived. Soon I can help you with integration too :)

bilan commented 3 months ago

Sorry guys but no plans for adding new devices. I welcome pull requests :)

Monacoslo commented 3 months ago

Sorry guys but no plans for adding new devices. I welcome pull requests :)

Can you please just explain how to add multiplle devices.

And what needs to be done to include additonal?

bilan commented 3 months ago

Programming skills are required to add new device. You can suggest implementation of AC device.

Monacoslo commented 3 months ago

Programming skills are required to add new device. You can suggest implementation of AC device.

I have 2 ACs with different code (109 and 104) and I wonder how could I add them both in configuration

bilan commented 3 months ago

Both AC devices should be visible in HA. If not, create a new issue and paste your logs in it.

Monacoslo commented 3 months ago

I understand, but config is different. In what format should I put both codes?

bilan commented 3 months ago

It should work without modifying the config. What the problem is?

Monacoslo commented 3 months ago

They have different modes available and are not shown properly.

bilan commented 3 months ago

The config is in JSON format,

you should try something like that:

{
  "104": {
    "t_work_mode": [
      "fan only",
      "heat",
      "cool",
      "dry",
      "auto"
    ],
    "t_fan_speed": {
      "0": "auto",
      "5": "super low",
      "6": "low",
      "7": "medium",
      "8": "high",
      "9": "super high"
    },
    "t_swing_direction": [
      "straight",
      "right",
      "both sides",
      "swing",
      "left"
    ],
    "t_swing_angle": {
      "0": "swing",
      "2": "bottom 1/6 ",
      "3": "bottom 2/6",
      "4": "bottom 3/6",
      "5": "top 4/6",
      "6": "top 5/6",
      "7": "top 6/6"
    }
  },
  "109": {
    "t_work_mode": [
      "fan only",
      "heat",
      "cool",
      "dry",
      "auto"
    ],
    "t_fan_speed": {
      "0": "auto",
      "5": "super low",
      "6": "low",
      "7": "medium",
      "8": "high",
      "9": "super high"
    },
    "t_swing_direction": [
      "straight",
      "right",
      "both sides",
      "swing",
      "left"
    ],
    "t_swing_angle": {
      "0": "swing",
      "2": "bottom 1/6 ",
      "3": "bottom 2/6",
      "4": "bottom 3/6",
      "5": "top 4/6",
      "6": "top 5/6",
      "7": "top 6/6"
    }
  }
}

You should probably minify it, you can use https://codebeautify.org/jsonminifier for do this job. After it it will be like that

{"109":{"t_work_mode":["fan only","heat","cool","dry","auto"],"t_fan_speed":{"0":"auto","5":"super low","6":"low","7":"medium","8":"high","9":"super high"},"t_swing_direction":["straight","right","both sides","swing","left"],"t_swing_angle":{"0":"swing","2":"bottom 1/6 ","3":"bottom 2/6","4":"bottom 3/6","5":"top 4/6","6":"top 5/6","7":"top 6/6"}},"104":{"t_work_mode":["fan only","heat","cool","dry","auto"],"t_fan_speed":{"0":"auto","5":"super low","6":"low","7":"medium","8":"high","9":"super high"},"t_swing_direction":["straight","right","both sides","swing","left"],"t_swing_angle":{"0":"swing","2":"bottom 1/6 ","3":"bottom 2/6","4":"bottom 3/6","5":"top 4/6","6":"top 5/6","7":"top 6/6"}}}

martin131 commented 3 months ago

Here is the api/devices response for my new dishwasher. gorenjeDishwasher.json

Monacoslo commented 3 months ago

I can share configuration for my oven and washing machine if anyone would implement appliances

Monacoslo commented 3 months ago

Maybe someone can "merge" these 2 integrations, since HoN has already support for other device types

https://github.com/Andre0512/hon

oyvindwe commented 1 month ago

I have an Asko dishwasher, the device output is similar to yours: same deviceFeatureCode, deviceFeatureName, deviceTypeCode and deviceTypeName, and the statusList have all the same items.

I salute @bilan for figuring out authentication and the API, but I have started on a custom integration, as I prefer to configure directly in HA instead of running a separate container in Docker and communicate over MQTT.

Currently the integration will only create sensor entities, and you can't control anything yet. I have set it up so I can monitor the status values over time.

Monacoslo commented 1 month ago

I have an Asko dishwasher, the device output is similar to yours: same deviceFeatureCode, deviceFeatureName, deviceTypeCode and deviceTypeName, and the statusList have all the same items.

I salute @bilan for figuring out authentication and the API, but I have started on a custom integration, as I prefer to configure directly in HA instead of running a separate container in Docker and communicate over MQTT.

Currently the integration will only create sensor entities, and you can't control anything yet. I have set it up so I can monitor the status values over time.

Very nice. Let me know if I can help testing. I have more ConnectLife devices

gschot commented 1 month ago

I have an Asko dishwasher, the device output is similar to yours: same deviceFeatureCode, deviceFeatureName, deviceTypeCode and deviceTypeName, and the statusList have all the same items.

I salute @bilan for figuring out authentication and the API, but I have started on a custom integration, as I prefer to configure directly in HA instead of running a separate container in Docker and communicate over MQTT.

Currently the integration will only create sensor entities, and you can't control anything yet. I have set it up so I can monitor the status values over time.

Will definitely try your custom integration, and also very interested. I just got an Atag dishwasher using ConnectLife. If you need info, let me know as well!

oyvindwe commented 1 month ago

I just got an Atag dishwasher using ConnectLife. If you need info, let me know as well!

Please share a JSON dump of your appliance if it differs from the other dishwashers

gschot commented 1 month ago

I just got an Atag dishwasher using ConnectLife. If you need info, let me know as well!

Please share a JSON dump of your appliance if it differs from the other dishwashers

Hmm... The entities listed for my Atag dishwasher look similar to those posted by @martin131 , only values differ. Probably no need to post then, I guess. I pulled the json by getting the /api/devices from the ha-connectlife-addon.

oyvindwe commented 1 month ago

Excellent. My dishwasher also has the same. No need to post the JSON dump.