Comfoair binding (1.9) for Zehnder in openHAB2

Hello,

  1. binding errors: for changing the binding code I need some time - I will try to do it in weekend.
  2. supply / exhaust mode: you need to know:
  • my supply/exhaust mode doesn’t work in absent state (level A). Comfoair should be on level 1, 2 or 3. This mode uses level A to modify fan speed. That’s why there is no switch for level A in my site map.
  • Change the supply/exhaust mode not faster then 2 s - comfoair need some time for reaction.

If supply/exhaust mode still doesn’t work on level 1 - 3 for you, try to change rules listed below in comfoair.rules file (I have simplify them):

rule "changeSupply-Exhaust"
when
	Item comfoairFanMode_Message changed
then
	var Number newFanMode = comfoairFanMode_Message.state as DecimalType
	if( comfoairControl.state == 1 ) {
		if( comfoairFanMode_Message.state != comfoairFanMode.state ) {
			comfoairFanMode.sendCommand( newFanMode )
			logInfo( "ComfoAir", "Try to change supply/exhaust mode" )
		}
	}
end
rule "changeSupply-ExhaustMode"
when
    Item comfoairFanMode changed
then
	if( comfoairControl.state instanceof Number ) {
		if( comfoairFanMode.state instanceof Number ) {
			if( comfoairFanLevel.state > 1 ) {
				logInfo( "ComfoAir", "Fan level is OK" )
				comfoairFanLevelLastValue = comfoairFanLevel.state
				Thread::sleep( 100 )
				comfoairFanIn0LastValue = comfoairIncomingFan.state
				comfoairFanOut0LastValue = comfoairOutgoingFan.state
			}
			// Supply + Exhaust
			if( comfoairFanMode.state == 0 ) {
				logInfo( "ComfoAir", "Supply/Exhaust mode was changed to both" )
				if( comfoairIncomingFan.state == 0 || comfoairOutgoingFan.state == 0 ) {
					comfoairFanIn0.sendCommand( comfoairFanIn0BaseValue )
					createTimer(now.plusSeconds( 1 ),  [ |
						comfoairFanOut0.sendCommand( comfoairFanOut0BaseValue )
					])
					if (comfoairFanLevel.state < 2) {
						logInfo( "ComfoAir", "Comfoair level was returned to last state" )
						comfoairFanLevel.sendCommand( comfoairFanLevelLastValue.toString )
					}
				}
			} else {
				comfoairFanLevel.sendCommand( "1" )
				logInfo( "ComfoAir", "Comfoair level was changed to level A" )
				// Supply
				if( comfoairFanMode.state == 1 ) {
					logInfo( "ComfoAir", "Supply/Exhaust mode was changed to supply" )
					if( comfoairIncomingFan.state == 0 ) {
						comfoairFanIn0.sendCommand( comfoairFanIn0LastValue )
						logInfo( "ComfoAir", "Incomming fan has returned to last value" )
					} else {
						comfoairFanIn0.sendCommand( comfoairIncomingFan.state )
						logInfo( "ComfoAir", "Incomming fan has changed to new value" )
					}
					createTimer( now.plusSeconds( 1 ),  [ | comfoairFanOut0.sendCommand( 0 ) ])
					logInfo( "ComfoAir", "Incomming fan has changed to 0" )
				}
				// Exhaust
				if( comfoairFanMode.state == 2 ) {
					logInfo( "ComfoAir", "Supply/Exhaust mode was changed to exhaust" )
					comfoairFanIn0.sendCommand( 0 )
					logInfo( "ComfoAir", "Incomming fan has changed to 0" )
					createTimer(now.plusSeconds( 1 ),  [ |
						if( comfoairOutgoingFan.state == 0 ) {
							comfoairFanOut0.sendCommand( comfoairFanOut0LastValue )
							logInfo( "ComfoAir", "Outgoing fan has returned to last value" )
						} else {
							comfoairFanOut0.sendCommand( comfoairOutgoingFan.state )
							logInfo( "ComfoAir", "Outgoing fan has changed to new value" )
						}
					])
				}
			}
		}
	}
end

If you use "Fire program", you need to switch it off. And don’t use chimney (if you have) when you use supply/exhaust mode - it is dangerous. In this new rules I have removed the blockade for “Fire program”.
I hope you will be successfull. If not, please send me your log.

@gieemek This sounds great! Especially the supply / exhaust capabilities you added. I will give it a try!

I tried the new rules and comment out chimney items.
It is still not working i have this log there seems to be something wrong with the rule’s i hope you can see something

2019-01-18 18:03:00.024 [INFO ] [ipse.smarthome.model.script.comfoair] - ComfoAir - MANUAL Mode

2019-01-18 18:03:05.811 [ome.event.ItemCommandEvent] - Item 'comfoairFanMode_Message' received command 2

2019-01-18 18:03:05.819 [INFO ] [ipse.smarthome.model.script.ComfoAir] - Try to change supply/exhaust mode

2019-01-18 18:03:05.823 [vent.ItemStateChangedEvent] - comfoairFanMode_Message changed from 0 to 2

2019-01-18 18:03:05.824 [ome.event.ItemCommandEvent] - Item 'comfoairFanMode' received command 2

2019-01-18 18:03:05.829 [vent.ItemStateChangedEvent] - comfoairFanMode changed from 0 to 2

2019-01-18 18:03:05.831 [INFO ] [ipse.smarthome.model.script.ComfoAir] - Fan level is OK

2019-01-18 18:03:05.938 [ome.event.ItemCommandEvent] - Item 'comfoairFanLevel' received command 1

2019-01-18 18:03:05.937 [INFO ] [ipse.smarthome.model.script.ComfoAir] - Comfoair level was changed to level A

2019-01-18 18:03:05.945 [vent.ItemStateChangedEvent] - comfoairFanLevel changed from 2 to 1

2019-01-18 18:03:05.946 [vent.ItemStateChangedEvent] - comfoairFanLevel_Message changed from 2 to 1

2019-01-18 18:03:05.944 [INFO ] [ipse.smarthome.model.script.ComfoAir] - Supply/Exhaust mode was changed to exhaust

2019-01-18 18:03:05.951 [ERROR] [ntime.internal.engine.RuleEngineImpl] - Rule 'changeSupply-ExhaustMode': The name 'comfoairFanIn0' cannot be resolved to an item or type; line 324, column 6, length 14

2019-01-18 18:03:09.357 [vent.ItemStateChangedEvent] - comfoairIncomingFan changed from 20 to 15

2019-01-18 18:03:09.359 [vent.ItemStateChangedEvent] - comfoairOutgoingFan changed from 20 to 15

2019-01-18 18:03:11.391 [ome.event.ItemCommandEvent] - Item 'comfoairFanLevel_Message' received command 3

2019-01-18 18:03:11.396 [vent.ItemStateChangedEvent] - comfoairFanLevel_Message changed from 1 to 3

2019-01-18 18:03:11.399 [ome.event.ItemCommandEvent] - Item 'comfoairFanLevel' received command 3

2019-01-18 18:03:11.401 [vent.ItemStateChangedEvent] - comfoairFanLevel changed from 1 to 3

2019-01-18 18:03:11.406 [vent.ItemStateChangedEvent] - comfoairFanMode changed from 2 to 0

2019-01-18 18:03:11.411 [INFO ] [ipse.smarthome.model.script.ComfoAir] - Fan level is OK

2019-01-18 18:03:11.515 [INFO ] [ipse.smarthome.model.script.ComfoAir] - Supply/Exhaust mode was changed to both

2019-01-18 18:03:14.814 [vent.ItemStateChangedEvent] - comfoairIncomingFan changed from 15 to 40

2019-01-18 18:03:14.815 [vent.ItemStateChangedEvent] - comfoairOutgoingFan changed from 15 to 40

2019-01-18 18:03:51.736 [vent.ItemStateChangedEvent] - comfoairOutdoorOutgoingTemperature changed from 9.0 to 9.5

2019-01-18 18:04:00.027 [INFO ] [ipse.smarthome.model.script.comfoair] - ComfoAir - MANUAL Mode

2019-01-18 18:04:34.044 [ome.event.ItemCommandEvent] - Item 'comfoairFanMode_Message' received command 1

2019-01-18 18:04:34.046 [vent.ItemStateChangedEvent] - comfoairFanMode_Message changed from 2 to 1

2019-01-18 18:04:34.051 [ome.event.ItemCommandEvent] - Item 'comfoairFanMode' received command 1

2019-01-18 18:04:34.058 [vent.ItemStateChangedEvent] - comfoairFanMode changed from 0 to 1

2019-01-18 18:04:34.059 [INFO ] [ipse.smarthome.model.script.ComfoAir] - Try to change supply/exhaust mode

2019-01-18 18:04:34.063 [INFO ] [ipse.smarthome.model.script.ComfoAir] - Fan level is OK

2019-01-18 18:04:34.168 [ome.event.ItemCommandEvent] - Item 'comfoairFanLevel' received command 1

2019-01-18 18:04:34.168 [INFO ] [ipse.smarthome.model.script.ComfoAir] - Comfoair level was changed to level A

2019-01-18 18:04:34.173 [vent.ItemStateChangedEvent] - comfoairFanLevel changed from 3 to 1

2019-01-18 18:04:34.175 [INFO ] [ipse.smarthome.model.script.ComfoAir] - Supply/Exhaust mode was changed to supply

2019-01-18 18:04:34.176 [vent.ItemStateChangedEvent] - comfoairFanLevel_Message changed from 3 to 1

2019-01-18 18:04:34.179 [ERROR] [ntime.internal.engine.RuleEngineImpl] - Rule 'changeSupply-ExhaustMode': The name 'comfoairFanIn0' cannot be resolved to an item or type; line 315, column 7, length 14

2019-01-18 18:04:37.579 [vent.ItemStateChangedEvent] - comfoairIncomingFan changed from 40 to 15

2019-01-18 18:04:37.580 [vent.ItemStateChangedEvent] - comfoairOutgoingFan changed from 40 to 15

2019-01-18 18:04:52.968 [vent.ItemStateChangedEvent] - comfoairOutdoorIncomingTemperature changed from 4.0 to 3.5

2019-01-18 18:04:53.952 [ome.event.ItemCommandEvent] - Item 'comfoairFanLevel_Message' received command 3

2019-01-18 18:04:53.962 [vent.ItemStateChangedEvent] - comfoairFanLevel_Message changed from 1 to 3

2019-01-18 18:04:53.963 [ome.event.ItemCommandEvent] - Item 'comfoairFanLevel' received command 3

2019-01-18 18:04:53.969 [INFO ] [ipse.smarthome.model.script.ComfoAir] - Supply/Exhaust mode was changed to both

2019-01-18 18:04:54.171 [vent.ItemStateChangedEvent] - comfoairFanMode changed from 1 to 0

2019-01-18 18:04:54.174 [vent.ItemStateChangedEvent] - comfoairFanLevel changed from 1 to 3

2019-01-18 18:04:57.377 [vent.ItemStateChangedEvent] - comfoairIncomingFan changed from 15 to 40

2019-01-18 18:04:57.380 [vent.ItemStateChangedEvent] - comfoairOutgoingFan changed from 15 to 40

2019-01-18 18:05:00.013 [INFO ] [ipse.smarthome.model.script.comfoair] - ComfoAir - MANUAL Mode

2019-01-18 18:05:09.163 [ome.event.ItemCommandEvent] - Item 'comfoairFanMode_Message' received command 2

2019-01-18 18:05:09.171 [INFO ] [ipse.smarthome.model.script.ComfoAir] - Try to change supply/exhaust mode

2019-01-18 18:05:09.173 [vent.ItemStateChangedEvent] - comfoairFanMode_Message changed from 1 to 2

2019-01-18 18:05:09.175 [ome.event.ItemCommandEvent] - Item 'comfoairFanMode' received command 2

2019-01-18 18:05:09.180 [vent.ItemStateChangedEvent] - comfoairFanMode changed from 0 to 2

2019-01-18 18:05:09.182 [INFO ] [ipse.smarthome.model.script.ComfoAir] - Fan level is OK

2019-01-18 18:05:09.287 [INFO ] [ipse.smarthome.model.script.ComfoAir] - Comfoair level was changed to level A

2019-01-18 18:05:09.288 [ome.event.ItemCommandEvent] - Item 'comfoairFanLevel' received command 1

2019-01-18 18:05:09.290 [INFO ] [ipse.smarthome.model.script.ComfoAir] - Supply/Exhaust mode was changed to exhaust

2019-01-18 18:05:09.291 [ERROR] [ntime.internal.engine.RuleEngineImpl] - Rule 'changeSupply-ExhaustMode': The name 'comfoairFanIn0' cannot be resolved to an item or type; line 324, column 6, length 14

2019-01-18 18:05:09.492 [vent.ItemStateChangedEvent] - comfoairFanLevel changed from 3 to 1

2019-01-18 18:05:09.501 [vent.ItemStateChangedEvent] - comfoairFanLevel_Message changed from 3 to 1

2019-01-18 18:05:12.705 [vent.ItemStateChangedEvent] - comfoairIncomingFan changed from 40 to 15

2019-01-18 18:05:12.707 [vent.ItemStateChangedEvent] - comfoairOutgoingFan changed from 40 to 15

2019-01-18 18:05:54.179 [vent.ItemStateChangedEvent] - comfoairOutdoorIncomingTemperature changed from 3.5 to 4.0

2019-01-18 18:06:00.025 [INFO ] [ipse.smarthome.model.script.comfoair] - ComfoAir - MANUAL Mode

When i set it to TRACE i have this log

2019-01-18 19:18:00.011 [INFO ] [ipse.smarthome.model.script.comfoair] - ComfoAir - MANUAL Mode

2019-01-18 19:18:01.356 [ome.event.ItemCommandEvent] - Item 'comfoairFanMode_Message' received command 1

2019-01-18 19:18:01.363 [vent.ItemStateChangedEvent] - comfoairFanMode_Message changed from 0 to 1

2019-01-18 19:18:01.363 [INFO ] [ipse.smarthome.model.script.ComfoAir] - Try to change supply/exhaust mode

2019-01-18 19:18:01.366 [ome.event.ItemCommandEvent] - Item 'comfoairFanMode' received command 1

2019-01-18 19:18:01.370 [INFO ] [ipse.smarthome.model.script.ComfoAir] - Fan level is OK

2019-01-18 19:18:01.373 [vent.ItemStateChangedEvent] - comfoairFanMode changed from 0 to 1

2019-01-18 19:18:01.476 [ome.event.ItemCommandEvent] - Item 'comfoairFanLevel' received command 1

2019-01-18 19:18:01.475 [INFO ] [ipse.smarthome.model.script.ComfoAir] - Comfoair level was changed to level A

2019-01-18 19:18:01.478 [DEBUG] [.comfoair.handling.ComfoAirConnector] - send DATA:  07 f0 00 99 01 01 48 07 0f

2019-01-18 19:18:01.482 [INFO ] [ipse.smarthome.model.script.ComfoAir] - Supply/Exhaust mode was changed to supply

2019-01-18 19:18:01.486 [vent.ItemStateChangedEvent] - comfoairFanLevel_Message changed from 2 to 1

2019-01-18 19:18:01.488 [ERROR] [ntime.internal.engine.RuleEngineImpl] - Rule 'changeSupply-ExhaustMode': The name 'comfoairFanIn0' cannot be resolved to an item or type; line 315, column 7, length 14

2019-01-18 19:18:01.685 [vent.ItemStateChangedEvent] - comfoairFanLevel changed from 2 to 1

2019-01-18 19:18:04.684 [DEBUG] [.comfoair.handling.ComfoAirConnector] - send DATA:  07 f0 00 0b 00 b8 07 0f

2019-01-18 19:18:04.888 [DEBUG] [.comfoair.handling.ComfoAirConnector] - receive RAW DATA:  07 f3 07 f0 00 0c 06 0f 0f 0d 24 0d f0 0b 07 0f

2019-01-18 19:18:04.890 [DEBUG] [.comfoair.handling.ComfoAirConnector] - receive CMD: 0c DATA:  0f 0f 0d 24 0d f0

2019-01-18 19:18:04.892 [DEBUG] [.comfoair.handling.ComfoAirConnector] - send DATA:  07 f3

2019-01-18 19:18:04.895 [DEBUG] [.comfoair.handling.ComfoAirConnector] - send DATA:  07 f0 00 cd 00 7a 07 0f

2019-01-18 19:18:04.897 [vent.ItemStateChangedEvent] - comfoairIncomingFan changed from 20 to 15

2019-01-18 19:18:04.901 [vent.ItemStateChangedEvent] - comfoairOutgoingFan changed from 20 to 15

2019-01-18 19:18:05.097 [DEBUG] [.comfoair.handling.ComfoAirConnector] - receive RAW DATA:  07 f3 07 f0 00 ce 0e 0f 14 28 0f 14 28 0f 0f 01 01 5a 5a 00 00 f3 07 0f

2019-01-18 19:18:05.098 [DEBUG] [.comfoair.handling.ComfoAirConnector] - receive CMD: ce DATA:  0f 14 28 0f 14 28 0f 0f 01 01 5a 5a 00 00

2019-01-18 19:18:05.100 [DEBUG] [.comfoair.handling.ComfoAirConnector] - send DATA:  07 f3

2019-01-18 19:18:08.581 [ome.event.ItemCommandEvent] - Item 'comfoairFanLevel_Message' received command 3

2019-01-18 19:18:08.590 [vent.ItemStateChangedEvent] - comfoairFanLevel_Message changed from 1 to 3

2019-01-18 19:18:08.591 [ome.event.ItemCommandEvent] - Item 'comfoairFanLevel' received command 3

2019-01-18 19:18:08.592 [DEBUG] [.comfoair.handling.ComfoAirConnector] - send DATA:  07 f0 00 99 01 03 4a 07 0f

2019-01-18 19:18:08.596 [INFO ] [ipse.smarthome.model.script.ComfoAir] - Supply/Exhaust mode was changed to both

2019-01-18 19:18:08.797 [vent.ItemStateChangedEvent] - comfoairFanMode changed from 1 to 0

2019-01-18 19:18:08.799 [vent.ItemStateChangedEvent] - comfoairFanLevel changed from 1 to 3

2019-01-18 19:18:11.796 [DEBUG] [.comfoair.handling.ComfoAirConnector] - send DATA:  07 f0 00 0b 00 b8 07 0f

2019-01-18 19:18:11.999 [DEBUG] [.comfoair.handling.ComfoAirConnector] - receive RAW DATA:  07 f3 07 f0 00 0c 06 28 28 07 07 3e 08 14 70 07 0f

2019-01-18 19:18:12.000 [DEBUG] [.comfoair.handling.ComfoAirConnector] - receive CMD: 0c DATA:  28 28 07 3e 08 14

2019-01-18 19:18:12.001 [DEBUG] [.comfoair.handling.ComfoAirConnector] - send DATA:  07 f3

2019-01-18 19:18:12.004 [DEBUG] [.comfoair.handling.ComfoAirConnector] - send DATA:  07 f0 00 cd 00 7a 07 0f

2019-01-18 19:18:12.011 [vent.ItemStateChangedEvent] - comfoairIncomingFan changed from 15 to 40

2019-01-18 19:18:12.012 [vent.ItemStateChangedEvent] - comfoairOutgoingFan changed from 15 to 40

2019-01-18 19:18:12.207 [DEBUG] [.comfoair.handling.ComfoAirConnector] - receive RAW DATA:  07 f3 07 f0 00 ce 0e 0f 14 28 0f 14 28 28 28 03 01 5a 5a 00 00 27 07 0f

2019-01-18 19:18:12.210 [DEBUG] [.comfoair.handling.ComfoAirConnector] - receive CMD: ce DATA:  0f 14 28 0f 14 28 28 28 03 01 5a 5a 00 00

2019-01-18 19:18:12.212 [DEBUG] [.comfoair.handling.ComfoAirConnector] - send DATA:  07 f3

2019-01-18 19:18:19.033 [DEBUG] [.comfoair.handling.ComfoAirConnector] - send DATA:  07 f0 00 d1 00 7e 07 0f

2019-01-18 19:18:19.236 [DEBUG] [.comfoair.handling.ComfoAirConnector] - receive RAW DATA:  07 f3 07 f0 00 d2 09 54 31 50 50 3c 0f 28 28 28 70 07 0f

2019-01-18 19:18:19.238 [DEBUG] [.comfoair.handling.ComfoAirConnector] - receive CMD: d2 DATA:  54 31 50 50 3c 0f 28 28 28

2019-01-18 19:18:19.239 [DEBUG] [.comfoair.handling.ComfoAirConnector] - send DATA:  07 f3

2019-01-18 19:18:19.247 [DEBUG] [.comfoair.handling.ComfoAirConnector] - send DATA:  07 f0 00 d9 00 86 07 0f

2019-01-18 19:18:19.247 [vent.ItemStateChangedEvent] - comfoairOutdoorIncomingTemperature changed from 4.0 to 4.5

2019-01-18 19:18:19.250 [vent.ItemStateChangedEvent] - comfoairOutdoorOutgoingTemperature changed from 9.5 to 10.0

2019-01-18 19:18:19.451 [DEBUG] [.comfoair.handling.ComfoAirConnector] - receive RAW DATA:  07 f3 07 f0 00 da 11 00 00 04 00 00 00 00 00 00 00 00 00 00 00 00 00 00 9c 07 0f

2019-01-18 19:18:19.453 [DEBUG] [.comfoair.handling.ComfoAirConnector] - receive CMD: da DATA:  00 00 04 00 00 00 00 00 00 00 00 00 00 00 00 00 00

2019-01-18 19:18:19.454 [DEBUG] [.comfoair.handling.ComfoAirConnector] - send DATA:  07 f3

2019-01-18 19:18:19.456 [DEBUG] [.comfoair.handling.ComfoAirConnector] - send DATA:  07 f0 00 0b 00 b8 07 0f

2019-01-18 19:18:19.659 [DEBUG] [.comfoair.handling.ComfoAirConnector] - receive RAW DATA:  07 f3 07 f0 00 0c 06 28 28 05 64 05 f6 73 07 0f

2019-01-18 19:18:19.661 [DEBUG] [.comfoair.handling.ComfoAirConnector] - receive CMD: 0c DATA:  28 28 05 64 05 f6

2019-01-18 19:18:19.662 [DEBUG] [.comfoair.handling.ComfoAirConnector] - send DATA:  07 f3

2019-01-18 19:18:19.664 [DEBUG] [.comfoair.handling.ComfoAirConnector] - send DATA:  07 f0 00 37 07 07 00 00 00 00 00 00 00 eb 07 0f

2019-01-18 19:18:19.866 [DEBUG] [.comfoair.handling.ComfoAirConnector] - receive RAW DATA:  07 f3 07 f0 00 3c 0a c0 16 ef 66 7f 5b 00 00 00 e0 d8 07 0f

2019-01-18 19:18:19.868 [DEBUG] [.comfoair.handling.ComfoAirConnector] - receive CMD: 3c DATA:  c0 16 ef 66 7f 5b 00 00 00 e0

2019-01-18 19:18:19.875 [DEBUG] [.comfoair.handling.ComfoAirConnector] - send DATA:  07 f3

2019-01-18 19:18:19.877 [DEBUG] [.comfoair.handling.ComfoAirConnector] - send DATA:  07 f0 00 cd 00 7a 07 0f

2019-01-18 19:18:20.082 [DEBUG] [.comfoair.handling.ComfoAirConnector] - receive RAW DATA:  07 f3 07 f0 00 ce 0e 0f 14 28 0f 14 28 28 28 03 01 5a 5a 00 00 27 07 0f

2019-01-18 19:18:20.083 [DEBUG] [.comfoair.handling.ComfoAirConnector] - receive CMD: ce DATA:  0f 14 28 0f 14 28 28 28 03 01 5a 5a 00 00

2019-01-18 19:18:20.086 [DEBUG] [.comfoair.handling.ComfoAirConnector] - send DATA:  07 f3

2019-01-18 19:18:20.088 [DEBUG] [.comfoair.handling.ComfoAirConnector] - send DATA:  07 f0 00 dd 00 8a 07 0f

2019-01-18 19:18:20.291 [DEBUG] [.comfoair.handling.ComfoAirConnector] - receive RAW DATA:  07 f3 07 f0 00 de 14 00 09 35 01 2a de 00 00 36 02 69 00 00 42 3e 01 2e 00 00 0d 43 07 0f

2019-01-18 19:18:20.292 [DEBUG] [.comfoair.handling.ComfoAirConnector] - receive CMD: de DATA:  00 09 35 01 2a de 00 00 36 02 69 00 00 42 3e 01 2e 00 00 0d

2019-01-18 19:18:20.295 [DEBUG] [.comfoair.handling.ComfoAirConnector] - send DATA:  07 f3

Hi,
sorry, it was my fault in comfoair.items file. Please add two items in it:

Number	comfoairFanIn0		"Supply capacity - level 0 [%d %%]"		<fan_in>	(ComfoAir)	{comfoair="fan_in_0"}
Number	comfoairFanOut0		"Exhaust capasity - level 0 [%d %%]"	<fan_out>	(ComfoAir)	{comfoair="fan_out_0"}

I changed comfoair.items file in my github repository: https://github.com/gieemek/ComfoAir_Binding_modified/tree/master/examples, so you can download this file too.

I blocked an error in binding.comfoair code and chaged the .jar file in my repository: https://github.com/gieemek/ComfoAir_Binding_modified - you can download it and reinstall comfoair binding in openHAB.
You will still get the warning “Unexpected value for DATA:” according to the different data block from comfoair 550. And you will not get value for is_ewt command, so comfoairEWT item will have value null.
But binding should work without errors.
Regards,

1 Like

Everything is working now also the supply and exhaust mode.
Is there a way that you can merge the jar file with the binding from Holger Hees?
Nice work.

Tried to install the binding using a Raspberry Pi 3+ and OH 2.4 stable.

  1. downloaded the JAR from GitHub (https://github.com/gieemek/ComfoAir_Binding_modified/blob/master/org.openhab.binding.comfoair-1.13.0.jar)
  2. stopped OH2 Service
  3. dropped it in /usr/share/openhab2/addons/
  4. started OH2 Service
  5. got this error
2019-01-20 19:42:32.177 [WARN ] [org.apache.felix.fileinstall        ] - Error while starting bundle: file:/usr/share/openhab2/addons/org.openhab.binding.comfoair-1.13.0.jar
org.osgi.framework.BundleException: Could not resolve module: org.openhab.binding.comfoair [241]
  Unresolved requirement: Import-Package: gnu.io
	at org.eclipse.osgi.container.Module.start(Module.java:444) ~[?:?]
	at org.eclipse.osgi.internal.framework.EquinoxBundle.start(EquinoxBundle.java:383) ~[?:?]
	at org.apache.felix.fileinstall.internal.DirectoryWatcher.startBundle(DirectoryWatcher.java:1260) [10:org.apache.felix.fileinstall:3.6.4]
	at org.apache.felix.fileinstall.internal.DirectoryWatcher.startBundles(DirectoryWatcher.java:1233) [10:org.apache.felix.fileinstall:3.6.4]
	at org.apache.felix.fileinstall.internal.DirectoryWatcher.doProcess(DirectoryWatcher.java:520) [10:org.apache.felix.fileinstall:3.6.4]
	at org.apache.felix.fileinstall.internal.DirectoryWatcher.process(DirectoryWatcher.java:365) [10:org.apache.felix.fileinstall:3.6.4]
	at org.apache.felix.fileinstall.internal.DirectoryWatcher.run(DirectoryWatcher.java:316) [10:org.apache.felix.fileinstall:3.6.4]

Did I miss something?

I think you’re missing the serial driver.
Try to install it through karaf:

feature:install openhab-transport-serial

The better way to install new .jar file is:

  1. Uninstall comfoair binding in Paper UI (or stop openHAB if you wish).
  2. Copy new .jar file to /var/lib/openhab2/tmp/mvn/org/openhab/binding/org.openhab.binding.comfoair/1.13.0 and overwrite the original .jar file.
  3. Install comfoair binding in Paper UI again.
    (See my readme.md in github repository.)
1 Like

oh. I forgot:

  1. removed comfoair1 from the addons.cfg :wink:

But either the Serial Driver or dropping it in the tmp-directory did the trick. now it’s online! and I’m testing.

Hello,

There seems to be a bug of somekind in de rules or binding i think.

My supply capacity is going to 100% and de exhaust capacity stay’s at de normal rate.

And there is now way of stopping the supply it stay’s at 100% only removing the power of the comfoair stops it.

It happend 2 time’s now but i have no error log because i dont know when it happend.

Do you know what can cause it?

My existing items work - and I added some new ones for testing, but I get this:

2019-01-21 18:05:12.174 [vent.ItemStateChangedEvent] - Comfoair_EnthalpyMode changed from NULL to 2

enthalpy_mode should be 0 or 1 only?

enthalpy_mode can be 2:
0 - off
1 - on
2 - on with sensor
I completed this in README.md in my repository

1 Like

Did you have this problem when you try to change some comfoair setting, or it happened automatically ?

wow! I have a sensor in my Enthalpy module! :wink:

I don’t use changes yet (except Setting the Comfoair to Mode 1 while in Holiday or changing set temperature higher for winter and lower for summer. Playing around with some smart indicator to Show we’re cooking or we’re in the shower to automatically trigger the high volume modes (2).

PS: It’s a Comfoair 350 (without the Q and the TR I guess - it’s 6 years old)

It happend automatic.

Hello,

(this is my first post) - I’m currently testing this binding. First of all thank you for that. I used the example files from gieemek version of today (https://github.com/gieemek/ComfoAir_Binding_modified/tree/master/examples) and have two issues with this. I can see all values except comfoairError_Message (here I’ve got the message: Inlet: communication failed, Exchanger: communication failed - but the real status is OK) and comfoairFilterRuntime_Message (the value of comfoairFilterRuntime comes with the interface).

The file comfoair_enthalpy.map is missing in your example files

@gieemek: Pls be so kind and check your example files. Thanks in advance.

Btw. the item ‘weatherN_Temperature’ (in rules) is the outside temperature of some external sensor from you?

Yes, the item is supposed to measure the outside temparture (for us guys Living on the North of the globe it’s usually placed on the North wall). You should have already one for your heating, which could be used…?

as for your error-message, there’s error_mesage from the ComfoAir (350 in my case) read by the binding and it’s written in the example into the item comfoairError. The item comfoairError_Message is filled by rules as they parse the error_message into pieces. Be sure, you have copied the two .scripts files in the scripts directory.

So it means the rules are problem.
Check in CC Ease what state of menu30 - menu37 you have (capacity of supply and exhaust fans for all levels). If some are incorect change its state to required value.
Then you can try to use my supply/exhaust mode on different levels, and check menu30 - menu37 again. These menu should not change. If yes, it means the supply/exhaust rule working improperly.

The orher way of doing that:

  1. Add to comfoair.items file these items:

Number comfoairFanOut0 “30 Exhaust capacity - level 0[%d %%]” <fan_out> (ComfoAir) {comfoair=“fan_out_0”}
Number comfoairFanOut1 “31 Exhaust capacity - level 1[%d %%]” <fan_out> (ComfoAir) {comfoair=“fan_out_1”}
Number comfoairFanOut2 “32 Exhaust capacity - level 2[%d %%]” <fan_out> (ComfoAir) {comfoair=“fan_out_2”}
Number comfoairFanOut3 “33 Exhaust capacity - level 3[%d %%]” <fan_out> (ComfoAir) {comfoair=“fan_out_3”}
Number comfoairFanIn0 “34 Supply capacity - level 0[%d %%]” <fan_in> (ComfoAir) {comfoair=“fan_in_0”}
Number comfoairFanIn1 “35 Supply capacity - level 1[%d %%]” <fan_in> (ComfoAir) {comfoair=“fan_in_1”}
Number comfoairFanIn2 “36 Supply capacity - level 2[%d %%]” <fan_in> (ComfoAir) {comfoair=“fan_in_2”}
Number comfoairFanIn3 “37 Supply capacity - level 3[%d %%]” <fan_in> (ComfoAir) {comfoair=“fan_in_3”}

  1. Add in comfoair.sitemap file:

Setpoint item=comfoairFanOut0 step=1 minValue=0 maxValue=97 valuecolor=[“black”]
Setpoint item=comfoairFanIn0 step=1 minValue=0 maxValue=97 valuecolor=[“black”]
Setpoint item=comfoairFanOut1 step=1 minValue=16 maxValue=98 valuecolor=[“black”]
Setpoint item=comfoairFanIn1 step=1 minValue=16 maxValue=98 valuecolor=[“black”]
Setpoint item=comfoairFanOut2 step=1 minValue=17 maxValue=99 valuecolor=[“black”]
Setpoint item=comfoairFanIn2 step=1 minValue=17 maxValue=99 valuecolor=[“black”]
Setpoint item=comfoairFanOut3 step=1 minValue=18 maxValue=100 valuecolor=[“black”]
Setpoint item=comfoairFanIn3 step=1 minValue=18 maxValue=100 valuecolor=[“black”]

Then you will have the state of each fan in every levels in your sitemap, and you can control and change them by setpoints (of course if protocol for comfoair 550 is the same as for 350 - you can test it)

  1. You can chart these value if you wish - by charting you will know when the problems happened.

Yes, weatherN_Temperature item should be measure by other sensor, not by Comfoair.
I added comfoair_enthalpy.map file to my repository, you can dowload it.
Error message and Filter message are controlled by rules. If they don’t work I need to modify them. I will try to do it in weekend.