msp1974 / aioWiserHeatAPI

MIT License
3 stars 1 forks source link

Opentherm endpoint on hub v2 on new-ish firmwares #15

Open jacekowski opened 6 days ago

jacekowski commented 6 days ago

Hi,

It looks like opentherm endpoint has moved on hub v2 on later firmwares ( 4.32.47 or newer) and is now located at /data/v2/openTherm/ instead of /data/v2/opentherm/ .

I'm not sure if new endpoint also works on v1 (i don't have v1 connected anymore).

LGO44 commented 5 days ago

The diagnostic file given by a Hub V1 and a Hub V2 are the same for the OpenTherm as the 2 screen shots show Hub V1 image

Hub V2 image

jacekowski commented 5 days ago

Current endpoint just gives 404 on my hub. image

msp1974 commented 5 days ago

The diagnostic file given by a Hub V1 and a Hub V2 are the same for the OpenTherm as the 2 screen shots show Hub V1 image

Hub V2 image

If you don't have opentherm connected, the api will not read the endpoint, so will show empty in the diagnostic output. Seems Hub v1 is still at the data/v2/opentherm endpoint. @jacekowski , I will look if I can amend the endpoint if a v2 hub and firmware > 4.32.47. Could you provide me a text output of the returned data so I can check it is the same and will therefore work.

jacekowski commented 5 days ago

It was working when i got the hub then few month ago opentherm data disappeared, then today i finally looked at the fault i tracked it down to endpoint being changed, data seems to be the same (i've modified my docker image to test and everything seems to work fine on new endpoint)

image {"CoprocessorUpdateFileName":"ManchesterCoPro.2.0.31.bin","CoprocessorUpdateStatus":"Success","chFlowActiveUpperSetpoint":800,"chFlowActiveLowerSetpoint":350,"dhwFlowSetpoint":550,"dhwEnable":true,"Enabled":true,"operatingMode":"OTplus","preDefinedRemoteBoilerParameters":{"dhwSetpointTransferEnable":true,"maxChSetpointTransferEnable":true,"dhwSetpointReadWrite":false,"maxChSetpointReadWrite":false,"dhwSetpointUpperBound":650,"dhwSetpointLowerBound":400,"dhwSetpoint":800,"maxChSetpoint":800,"maxChSetpointUpperBound":830,"maxChSetpointLowerBound":330},"ch1FlowSetpoint":350,"ch1FlowEnable":false,"ch2FlowSetpoint":350,"ch2FlowEnable":false,"operationalData":{"RelativeModulationLevel":0,"MinimumModulationLevel":25,"ChPressureBar":10,"DhwFlowRate":0,"Ch1FlowTemperature":381,"ChReturnTemperature":360,"MaximumCapacityKw":35,"SlaveStatus":0},"roomTemperature":227,"roomSetpoint":225,"TrackedRoomId":6,"CoprocessorVersion":"2.0.31","extendedDiagnostics":{"unsuccessfulBurnerStarts":10,"numberFlameSignalTooLow":13,"oemSpecificServiceCode":0,"successfulBurnerStarts":65535,"chPumpStarts":5794,"dhwPumpOrValveStarts":5243,"burnerStartsDuringDhwMode":7481,"burnerHours":243,"chPumpHours":5750,"dhwPumpOrValveHours":184,"burnerOnInDhwModeHours":86}}

msp1974 commented 5 days ago

@jacekowski, so I think I have fixed this in v1.5.16 of the api. Would you be able to amend the version of the api in your manifest.json found in config/custom_components/wiser/manifest.json and see if it resolves it (you will need to restart HA for it to update). This will be officially released in the next integration update which will bring you back inline.

jacekowski commented 5 days ago

It doesn't work. Seems like it is using old endpoint.

my diagnostics (shortened to show relevant bits only) is showing the following:

  "integration_manifest": {
    "domain": "wiser",
    "name": "Drayton Wiser Integration for Home Assistant",
    "dependencies": [
      "http",
      "websocket_api",
      "frontend",
      "lovelace"
    ],
    "requirements": [
      "aioWiserHeatAPI==1.5.16"
    ],
  },
  "data": {
    "Domain": {
      "System": {
        "BoilerSettings": {
          "ControlType": "HeatSourceType_OpenTherm",
          "FuelType": "Gas",
          "CycleRate": "CPH_6",
          "OnOffHysteresis": 5
        },
        "ActiveSystemVersion": "4.36.33-9ad5712",
        "HardwareGeneration": 2,
jacekowski commented 5 days ago

It looks like the issue is with version.py, because my current version is "4.36.33-9ad5712", it fails >= check because 33 is smaller than 47

msp1974 commented 5 days ago

Yes. Was doing late last night and realised when I saw your note I had cocked this up. Will fix today and do a 1.5.17 release. Sorry.

jacekowski commented 5 days ago

I've modified my docker image to fix version detection and it works with my fix, so that is the only issue with the change.

On another hand, any chance additional values from that endpoint could be made available (i'm not sure if it is just v2 thing), that is burner statistics and pump statistics

msp1974 commented 5 days ago

On another hand, any chance additional values from that endpoint could be made available (i'm not sure if it is just v2 thing), that is burner statistics and pump statistics

You'll have to provide me the data. Unless you mean the extended diagnostics, in which case, I have added into the api for v1.5.17 and will add some sensors to the integration in an upcoming release.

jacekowski commented 5 days ago

Commit in dev branch covers everything.