[comfoair] New ComfoAir Binding

I submitted a PR that re-implements the device options as channels. Since I’m not sure, if this gets backported to OH 2.5.x as it is a little more than a bug fix, here is an appropriate jar file.

NOTE: I changed the channel names of the ewt-channels from ewt... to ghx... So you maybe have to adapt your items accordingly. --> to omit breaking changes this renaming was reverted (JAR updated).

Gents,

I’m now on OH3 M2 and on progress to finalize Comfoair setup. I’m pretty sure we get more out of it :slight_smile: in the future. Currently still need to adjust some configs after migration.

If I can test something specific let me know.

BTW: I would still love to keep the CC Sense connected. but for the moment it is detatched showing Comm Error on the display.

I don’t know if you had this working in the v1 binding, but from my knowledge nothing should hve changed regarding the connection. However, from the discussions above it seems to also be depending on the individual devices, if this is possible or not. Maybe anyone who has both options working in parallel could post a wiring scheme of their setup.
Personally, I use a physical switch to manually switch the connection of the data wires between OH and CCEase on demand.

Dear Hans

It was working in v1 (Grzegorz variant) more or less smoothly with the CC Sense active. So yes.
As I have it decoupled now I would have expected the earlier shaky status to disapear. But grepping for FanLevel shows:

2020-11-15 08:40:29.683 [vent.ItemStateChangedEvent] - Item ‘AiringFanLevel’ changed from 1 to UNDEF
2020-11-15 08:41:24.384 [vent.ItemStateChangedEvent] - Item ‘AiringFanLevel’ changed from UNDEF to 1
2020-11-15 08:54:29.704 [vent.ItemStateChangedEvent] - Item ‘AiringFanLevel’ changed from 1 to UNDEF
2020-11-15 08:56:24.399 [vent.ItemStateChangedEvent] - Item ‘AiringFanLevel’ changed from UNDEF to 1
2020-11-15 09:11:29.725 [vent.ItemStateChangedEvent] - Item ‘AiringFanLevel’ changed from 1 to UNDEF
2020-11-15 09:12:24.627 [vent.ItemStateChangedEvent] - Item ‘AiringFanLevel’ changed from UNDEF to 1
2020-11-15 09:23:29.938 [vent.ItemStateChangedEvent] - Item ‘AiringFanLevel’ changed from 1 to UNDEF
2020-11-15 09:24:26.938 [vent.ItemStateChangedEvent] - Item ‘AiringFanLevel’ changed from UNDEF to 1
2020-11-15 09:28:29.740 [vent.ItemStateChangedEvent] - Item ‘AiringFanLevel’ changed from 1 to UNDEF
2020-11-15 09:29:28.048 [vent.ItemStateChangedEvent] - Item ‘AiringFanLevel’ changed from UNDEF to 1
2020-11-15 09:35:29.949 [vent.ItemStateChangedEvent] - Item ‘AiringFanLevel’ changed from 1 to UNDEF
2020-11-15 09:36:26.950 [vent.ItemStateChangedEvent] - Item ‘AiringFanLevel’ changed from UNDEF to 1
2020-11-15 09:38:29.854 [vent.ItemStateChangedEvent] - Item ‘AiringFanLevel’ changed from 1 to UNDEF
2020-11-15 09:40:24.756 [vent.ItemStateChangedEvent] - Item ‘AiringFanLevel’ changed from UNDEF to 1
2020-11-15 09:45:30.267 [vent.ItemStateChangedEvent] - Item ‘AiringFanLevel’ changed from 1 to UNDEF
2020-11-15 09:46:24.460 [vent.ItemStateChangedEvent] - Item ‘AiringFanLevel’ changed from UNDEF to 1
2020-11-15 09:54:29.881 [vent.ItemStateChangedEvent] - Item ‘AiringFanLevel’ changed from 1 to UNDEF
2020-11-15 09:56:24.482 [vent.ItemStateChangedEvent] - Item ‘AiringFanLevel’ changed from UNDEF to 1
2020-11-15 10:13:30.008 [vent.ItemStateChangedEvent] - Item ‘AiringFanLevel’ changed from 1 to UNDEF
2020-11-15 10:14:24.608 [vent.ItemStateChangedEvent] - Item ‘AiringFanLevel’ changed from UNDEF to 1
2020-11-15 10:17:29.820 [vent.ItemStateChangedEvent] - Item ‘AiringFanLevel’ changed from 1 to UNDEF
2020-11-15 10:18:25.719 [vent.ItemStateChangedEvent] - Item ‘AiringFanLevel’ changed from UNDEF to 1

The same appears for the TargetTemperature setting:

2020-11-15 07:09:24.675 [vent.ItemStateChangedEvent] - Item ‘AiringTargetTemperature’ changed from UNDEF to 21.0 °C
2020-11-15 07:25:37.705 [vent.ItemStateChangedEvent] - Item ‘AiringTargetTemperature’ changed from 21.0 °C to UNDEF
2020-11-15 07:26:23.492 [vent.ItemStateChangedEvent] - Item ‘AiringTargetTemperature’ changed from UNDEF to 21.0 °C
2020-11-15 07:36:31.210 [vent.ItemStateChangedEvent] - Item ‘AiringTargetTemperature’ changed from 21.0 °C to UNDEF
2020-11-15 07:37:27.013 [vent.ItemStateChangedEvent] - Item ‘AiringTargetTemperature’ changed from UNDEF to 21.0 °C
2020-11-15 08:00:32.038 [vent.ItemStateChangedEvent] - Item ‘AiringTargetTemperature’ changed from 21.0 °C to UNDEF
2020-11-15 08:01:24.940 [vent.ItemStateChangedEvent] - Item ‘AiringTargetTemperature’ changed from UNDEF to 21.0 °C
2020-11-15 08:19:31.259 [vent.ItemStateChangedEvent] - Item ‘AiringTargetTemperature’ changed from 21.0 °C to UNDEF
2020-11-15 08:20:24.962 [vent.ItemStateChangedEvent] - Item ‘AiringTargetTemperature’ changed from UNDEF to 21.0 °C

Which doesn’t make sense to me. And I think it should not be this way.

|_| 3.0.0.M2 - Milestone Build

openhab> bundle:list | grep -i comf
228 │ Active │ 80 │ 3.0.0.M2 │ openHAB Add-ons :: Bundles :: ComfoAir Binding

Cheers
Stefan

@smhaller is this only happening for those two items? Does this effect changes/commands from rules only or also from manual interaction? The timestamps suggest that this is not happening on periodical refreshes, so the basic communication between OH and ComfoAir seems to work correctly.

Would you mind posting your current items and rules (again)?

@boehan - Hans

No these are not the only two. Following is a list of events for just Nov. 16th
events.log (18.4 KB)

I haven’t found out yet, what the trigger for it is. But it appears not only when a manual interaction is set, change of fan level. It might be also related to a rule based change.

But enthalpy mode for instance is never changed at all and still get’s set to UNDEF
FanLevel should also not be changed in the middle of the night even through rule.

I’m currently in the progress to migrate from manual rules file to define them through UI.
But that should also not be the source of the problem here.

current items: Airing_items.txt (7.2 KB)
current rules: airing_rules.txt (2.2 KB)

You have some non-existent channels configured:

ewt_temperatur  -->  temperatures#ewtTemperature (as Number:Temperature)
is_ewt  --> options#isEWT (as Switch; since OH3 M2 only)
ewt#TemperaturLow --> ewt#ewtTemperatureLow (as Number:Temperature)
ewt#TemperaturHigh --> ewt#ewtTemperatureHigh (as Number:Temperature)

filter_error_intern and filter_error_extern don’t exist in the new binding, but those are commented out anyway.

Not sure if these misconfigured items could be causing these issues and fixing them helps. If not, could you set loglevel to TRACE for a few minutes and provide a log?

Meanwhile I’ve adjusted those settings. Installed the Snapshot version and restarted the binding.

full trace log: comfoair.log (347.4 KB)

The issue still persists.

Do you have the event log for the same timeframe? From the trace log I can’t tell when the issues occur.

No problem.
events log from same timeframe: events.log (29.5 KB)
openhab.log from the same timeframe: openhab.log (45.5 KB)

Hi Hans,

Installed OH 3.0.0 M2 and the additional ComfoAir binding and works well although i can see some warnings in the event log. The system is connected on a WHR350 unit.

Is this something to worry about?

Sry @smhaller, but I’m still not able to reproduce you issues. Your logs show that your device is not always responding to the sent commands, or sometimes the binding is recieving multiple responses at once (surprisingly, the state is set to UNDEF before triggering the log that the maximum number of retries was reached).
However, I can’t figure out why this happens. Maybe an unstable connection? How is your device connected? Which adapter/device do you use on OH side?

Another strange thing in the log: your device is sending firmware information without being requested from OH. This is not happening in my configuration (at least after half an hour watching my trace logs). Are DEVICE_NAME, SOFTWARE_VERSION_MAIN and SOFTWARE_VERSION_MINOR are correctly shown in your thing properties?

Also, I’m not sure why this didn’t occur with the v1 Binding, but since the communication didn’t change, I think that the v1 binding did just not propagate null responses to the items (which is not desired IMO)

Hi Bart,
How often do this warnings come up? I think these warnings should only appear, if the received data is not matching the configured item. Is any of your comfoair items having a NULL or UNDEF state? Are your item types correct according to the documentation?

I use a digitus USB->Serial adapter. This should be fine. But I wonder if the connection from there to the CA350 is crap. Just ordered a fresh cable :frowning:
Should arrive these days. I’ll keep you posted.

@boehan - Dear Hans

I have now a status which I think is fine. The issue was that I disconnected one wrong wire from the CC Sense to the board. After I changed this I only see few status that went to UNDEF and as far as I can track it was related to restarts of OH a.s.o.

Despite the fact that I don’t like the idea of having CC Sense unwired I can work with it.

Once more: A big big thank you.

Stefan

Hi Stefan, great that you were able to sort out your issues.

If you are using a ComfoAir 350 and I’m reading it’s manual (page 40) correctly, you should have an extra RS232 port on the control port to connect a PC like your openHAB (see the attached picture). Then you should be able to switch between CCEase and OH with the controls available in the binding, I think.
Unfortunately, I can’t test that myself, since my device (Wernig G90-160) doesn’t seem to have that port.

Hi Hans

I had my serial cable connected to the RJ45 port (ext. comm). I have now tried to use the Serial (9 pol dsub) but with the same result. As soon as CC sense is wired I receive states changed to UNDEF. I wonder if the RX/TX of CC-Sense is wired wrongly (and this would trigger wrong states) but I’m not sure if I would like try this out.

Cheers
Stefan

Same for me. Using a Comfoair 550, USB to serial adapter connected to the Dsub plug. As soon as Comfoair Sense is connected the states change to UNDEF.
OH3 running on a Raspbi 3B.

And how was it behaving before the change?
I had partially some delays in reaction but it never happened that a value was set to NULL or UNDEF in the regular operation.

I cant forward any historic info, sorry. Its the first time that i connect my Comfoair to OH. Trying since a while but had to test 3 USB to seriell adapters until i found a working one… The oldest…