Troubles setting up KNX Daikin AC

So basically I think setting the temperature is working, but changing the mode and the fan speed is not.

This is the log after I did the following

Powered on the split
changed the mode
changed the fan speed

22:48:34.060 [INFO ] [smarthome.event.ItemCommandEvent     ] - Item 'FF_Office_AC' received command ON
22:48:34.064 [TRACE] [b.binding.knx.internal.bus.KNXBinding] - Received update (item='FF_Office_AC', state='ON')
22:48:34.068 [INFO ] [smarthome.event.ItemStateChangedEvent] - FF_Office_AC changed from OFF to ON
22:48:34.073 [TRACE] [b.binding.knx.internal.bus.KNXBinding] - found 1 compatible datapoints for item FF_Office_AC (org.openhab.core.library.types.OnOffType)
22:48:34.074 [TRACE] [ng.knx.internal.dpt.KNXCoreTypeMapper] - toTypeClass looking for dptId = 1.001
22:48:34.077 [TRACE] [b.binding.knx.internal.bus.KNXBinding] - found 1 compatible datapoints for item FF_Office_AC (org.openhab.core.library.types.OnOffType)
22:48:34.095 [DEBUG] [b.binding.knx.internal.bus.KNXBinding] - Wrote value 'ON' to datapoint 'command DP 1/6/1 FF_Office_AC, DPT main 0 id 1.001, low priority'
22:48:34.115 [DEBUG] [b.binding.knx.internal.bus.KNXBinding] - Wrote value 'ON' to datapoint 'command DP 1/6/1 FF_Office_AC, DPT main 0 id 1.001, low priority'
22:48:34.903 [INFO ] [smarthome.event.ItemStateChangedEvent] - AstroMoonData_Phase_MoonIllumination changed from 95.14 to 95.13
22:48:36.536 [DEBUG] [b.binding.knx.internal.bus.KNXBinding] - Received groupWrite Event.
22:48:36.540 [TRACE] [ng.knx.internal.dpt.KNXCoreTypeMapper] - toType datapoint DPT = 1.001
22:48:36.543 [TRACE] [b.binding.knx.internal.bus.KNXBinding] - Added event (item='FF_Office_AC', type='ON') to the ignore event list
22:48:36.545 [TRACE] [b.binding.knx.internal.bus.KNXBinding] - Processed event (item='FF_Office_AC', type='ON', destination='1/6/5')
22:48:36.552 [TRACE] [b.binding.knx.internal.bus.KNXBinding] - Received update (item='FF_Office_AC', state='ON')
22:48:36.557 [TRACE] [b.binding.knx.internal.bus.KNXBinding] - We received this event (item='FF_Office_AC', state='ON') from KNX, so we don't send it back again -> ignore!
22:48:36.880 [INFO ] [smarthome.event.ItemCommandEvent     ] - Item 'FF_Office_AC_Mode' received command 14
22:48:36.883 [TRACE] [b.binding.knx.internal.bus.KNXBinding] - Received command (item='FF_Office_AC_Mode', command='14')
22:48:36.889 [INFO ] [smarthome.event.ItemStateChangedEvent] - FF_Office_AC_Mode changed from 0 to 14
22:48:36.889 [TRACE] [ng.knx.internal.dpt.KNXCoreTypeMapper] - toTypeClass looking for dptId = 9.001
22:48:36.894 [TRACE] [b.binding.knx.internal.bus.KNXBinding] - found 1 compatible datapoints for item FF_Office_AC_Mode (org.openhab.core.library.types.DecimalType)
22:48:36.921 [DEBUG] [b.binding.knx.internal.bus.KNXBinding] - Wrote value '14' to datapoint 'command DP 1/6/25 FF_Office_AC_Mode, DPT main 0 id 9.001, low priority'
22:48:36.926 [TRACE] [b.binding.knx.internal.bus.KNXBinding] - Received update (item='FF_Office_AC_Mode', state='14')
22:48:36.930 [TRACE] [ng.knx.internal.dpt.KNXCoreTypeMapper] - toTypeClass looking for dptId = 9.001
22:48:36.935 [TRACE] [b.binding.knx.internal.bus.KNXBinding] - found 1 compatible datapoints for item FF_Office_AC_Mode (org.openhab.core.library.types.DecimalType)
22:48:36.961 [DEBUG] [b.binding.knx.internal.bus.KNXBinding] - Wrote value '14' to datapoint 'command DP 1/6/25 FF_Office_AC_Mode, DPT main 0 id 9.001, low priority'
22:48:39.478 [INFO ] [smarthome.event.ItemStateChangedEvent] - PW_MMedia_Mancave_Power changed from 26.321032 to 26.10183
22:48:39.630 [TRACE] [b.binding.knx.internal.bus.KNXBinding] - Received command (item='FF_Office_AC_Fan', command='100')
22:48:40.617 [TRACE] [ng.knx.internal.dpt.KNXCoreTypeMapper] - toTypeClass looking for dptId = 9.001
22:48:40.620 [TRACE] [b.binding.knx.internal.bus.KNXBinding] - found 1 compatible datapoints for item FF_Office_AC_Fan (org.openhab.core.library.types.DecimalType)
22:48:40.624 [INFO ] [smarthome.event.ItemStateChangedEvent] - PW_MMedia_Sala_Power changed from 12.746709 to 12.681093
22:48:40.627 [INFO ] [smarthome.event.ItemStateChangedEvent] - PW_MMedia_Sala_EnergyUsage changed from 4.571 to 4.572
22:48:40.630 [INFO ] [smarthome.event.ItemStateChangedEvent] - PW_MMedia_Mancave_EnergyUsage changed from 6.765 to 6.766
22:48:40.633 [INFO ] [smarthome.event.ItemCommandEvent     ] - Item 'FF_Office_AC_Fan' received command 100
22:48:40.645 [DEBUG] [b.binding.knx.internal.bus.KNXBinding] - Wrote value '100' to datapoint 'command DP 1/6/16 FF_Office_AC_Fan, DPT main 0 id 9.001, low priority'
22:48:40.650 [TRACE] [b.binding.knx.internal.bus.KNXBinding] - Received update (item='FF_Office_AC_Fan', state='100')
22:48:40.654 [TRACE] [ng.knx.internal.dpt.KNXCoreTypeMapper] - toTypeClass looking for dptId = 9.001
22:48:40.658 [TRACE] [b.binding.knx.internal.bus.KNXBinding] - found 1 compatible datapoints for item FF_Office_AC_Fan (org.openhab.core.library.types.DecimalType)
22:48:40.662 [INFO ] [smarthome.event.ItemStateChangedEvent] - FF_Office_AC_Fan changed from 21 to 100
22:48:40.682 [DEBUG] [b.binding.knx.internal.bus.KNXBinding] - Wrote value '100' to datapoint 'command DP 1/6/16 FF_Office_AC_Fan, DPT main 0 id 9.001, low priority'

Try to set the DPT in the items file

for example:

Number FF_MasterBedroom_AC_Fan "Fan Speed [%d]" {knx="5.001:1/6/18+<1/6/22"}

check the DPT of Fan [1byte] Sending (DPT_Scaling) in ETS

careful with the quote marks also: use "" instead of “” in the items file

Hi again Dim
So, ive done what you suggested but its still not working
Here is the ETS setup of the office fan im using for tests:


Items:

Number     FF_Office_AC_Fan    "Fan Speed[%d]"      {knx="5.001:1/6/17+1/6/21"}

and sitemap:

Switch item=FF_Office_AC_Fan mappings=[0="Auto", 20="Min", 60="Mid", 100="Max"]

If i do an ETS log using the forced 5.001 on the items settings for some reason it doesnt send anything when i press a button, but if I remove the 5.001 I get this on the log:


basically it sends a pair of hexadecimals instead of a percentage.

Also if i force the DPT of 5.001 on the items, I get this on the OH logs :

16:07:34.368 [INFO ] [smarthome.event.ItemCommandEvent     ] - Item 'FF_Office_AC_Fan' received command 20
 16:07:34.371 [TRACE] [b.binding.knx.internal.bus.KNXBinding] - Received command (item='FF_Office_AC_Fan', command='20')
 16:07:34.375 [TRACE] [ng.knx.internal.dpt.KNXCoreTypeMapper] - toTypeClass looking for dptId = 5.001
 16:07:34.377 [WARN ] [b.binding.knx.internal.bus.KNXBinding] - no compatible datapoint found for item FF_Office_AC_Fan (org.openhab.core.library.types.DecimalType), check item configuration

I’ve checked the quotes and its what im using on all the other knx items without issues, so im a bit clueless here :frowning:

ahh, I found this issue on another thread, I needed to change the item from number to dimmer, so that fixed it.

Now I still need to fix the problem of not being able to change the mode…

1 Like

Hi again Dim
So, basically, after a few attempts to change the AC mode yesterday I succeded at corrupting my openhab SD card!!
After many hours reinstalling on a clean SD card I’m back at the same point I was yesterday (with still some missing setups to do)

Also since I was doing a clean install I decided to try to migrate to the new KNX 2 binding but had some issues and fell back to the old binding.

So now I have a few questions:

  1. How do I turn off those log debugs once i’m done with it?

  2. Regarding my issue of changing the AC mode, I’ve been having trouble setting up the temperature and changing the mode, for some reason if I send a value to the GA directly using either OH or ETS it falls back to a previous value, cant understand why, for ex: I try to set the temperature to 18 and it switches back to 25, any idea what can cause this?

log:set DEFAULT org.openhab.binding.knx
log:set DEFAULT tuwien.auto.calimero (for KNX1)
log:set DEFAULT calimero (for KNX2)

Ref: Logging | openHAB

Hmmm… can you post some logs from ETS Bus Monitor (and from openhab) when this happens?
I am thinking that another device (e.g. your KNX wall thermostat) is sending the new setting again on the bus, overwriting the new setting. But it could be something else also.

Thank you for the tip Dim, this tells me I should cover a bit more of the OH documentation.
Regarding setting the temperature was a bit silly of me, basically I didnt noticed the mode was set to “fan” and in this mode it doesnt accept temperature settings, so basically the temperature is also working.

Now the bit that is giving me the most head ache is changing the bloody mode.

So even though on the Zennio manual of the Klic-DD doesnt mention any specific DPT for this address “by omission”, I found out that I can only change the AC mode using ETS if I specifically change the DPT to 20.105 (HVAC Control Mode)
This DPT accepts specific words like “Auto”, “Heat”, “Cool” or “Fan only” and those are the commands I need to send using OH, but unfortunately I’ve been unsuccessfull at it.
My current configs are:

String   FF_GuestRoom_AC_Mode   "Mode [%s]"    {knx="21.105:1/6/27+<1/6/31"}
Switch  item=FF_GuestRoom_AC_Mode mappings=["Auto"="Auto", "Heat"="Heat", "Cool"="Cool" ]

and what i get on the logs is this:

2018-06-04 19:34:19.016 [WARN ] [.binding.knx.internal.bus.KNXBinding] - Value 'Heat' could not be sent to the KNX bus using datapoint 'command DP 1/6/27 FF_GuestRoom_AC_Mode, DPT main 0 id 21.105, low priority' - retrying one time: main number not found for 21.105

2018-06-04 19:34:19.020 [ERROR] [.binding.knx.internal.bus.KNXBinding] - Value 'Heat' could not be sent to the KNX bus using datapoint 'command DP 1/6/27 FF_GuestRoom_AC_Mode, DPT main 0 id 21.105, low priority' - giving up after second try: main number not found for 21.105

2018-06-04 19:34:19.020 [WARN ] [.binding.knx.internal.bus.KNXBinding] - Value 'Heat' could not be sent to the KNX bus using datapoint 'command DP 1/6/27 FF_GuestRoom_AC_Mode, DPT main 0 id 21.105, low priority' - retrying one time: main number not found for 21.105

==> /var/log/openhab2/events.log <==

2018-06-04 19:34:19.025 [vent.ItemStateChangedEvent] - FF_GuestRoom_AC_Mode changed from Auto to Heat

==> /var/log/openhab2/openhab.log <==

2018-06-04 19:34:19.026 [ERROR] [.binding.knx.internal.bus.KNXBinding] - Value 'Heat' could not be sent to the KNX bus using datapoint 'command DP 1/6/27 FF_GuestRoom_AC_Mode, DPT main 0 id 21.105, low priority' - giving up after second try: main number not found for 21.105

Is what I’m trying to do using the item string valid?

Im also getting this from the logs

2018-06-04 19:57:33.036 [WARN ] [g.knx.internal.dpt.KNXCoreTypeMapper] - Failed creating a translator for datapoint type '21.105'.

tuwien.auto.calimero.exception.KNXException: main number not found for 21.105

at tuwien.auto.calimero.dptxlator.TranslatorTypes.createTranslator(TranslatorTypes.java:514) [219:org.openhab.binding.knx:1.12.0]

at org.openhab.binding.knx.internal.dpt.KNXCoreTypeMapper.toType(KNXCoreTypeMapper.java:617) [219:org.openhab.binding.knx:1.12.0]

at org.openhab.binding.knx.internal.bus.KNXBinding.getType(KNXBinding.java:455) [219:org.openhab.binding.knx:1.12.0]

at org.openhab.binding.knx.internal.bus.KNXBinding.readFromKNX(KNXBinding.java:227) [219:org.openhab.binding.knx:1.12.0]

at org.openhab.binding.knx.internal.bus.KNXBinding.groupWrite(KNXBinding.java:187) [219:org.openhab.binding.knx:1.12.0]

at tuwien.auto.calimero.process.ProcessCommunicatorImpl$NLListener.fireGroupReadWrite(ProcessCommunicatorImpl.java:132) [219:org.openhab.binding.knx:1.12.0]

at tuwien.auto.calimero.process.ProcessCommunicatorImpl$NLListener.indication(ProcessCommunicatorImpl.java:111) [219:org.openhab.binding.knx:1.12.0]

at tuwien.auto.calimero.link.EventNotifier$Indication.invoke(EventNotifier.java:80) [219:org.openhab.binding.knx:1.12.0]

at tuwien.auto.calimero.link.EventNotifier.fire(EventNotifier.java:201) [219:org.openhab.binding.knx:1.12.0]

at tuwien.auto.calimero.link.EventNotifier.run(EventNotifier.java:141) [219:org.openhab.binding.knx:1.12.0]

2018-06-04 19:57:33.045 [DEBUG] [.binding.knx.internal.bus.KNXBinding] - Ignoring KNX bus data: couldn't transform to an openHAB type (not supported). Destination='1/6/31', datapoint='command DP 1/6/27 FF_GuestRoom_AC_Mode, DPT main 0 id 21.105, low priority', data='0x03'

I think that the KNX telegram payload should be a number (not a string):

so your sitemap should be:

Switch  item=FF_GuestRoom_AC_Mode mappings=[0="Auto", 1="Heat", 3="Cool", 9="Fan" ]

Also, DTP 20.105 (not 21.105)

Number FF_GuestRoom_AC_Mode   "Mode [%s]"    {knx="20.105:1/6/27+<1/6/31"}

He he that was a typo after I tried so many different ways.
I already had tried the way you suggest, tried again and get this error:

2018-06-04 20:40:00.994 [ome.event.ItemCommandEvent] - Item 'FF_GuestRoom_AC_Mode' received command 1


2018-06-04 20:40:00.994 [TRACE] [.binding.knx.internal.bus.KNXBinding] - Received update (item='FF_GuestRoom_AC_Mode', state='1')

2018-06-04 20:40:00.998 [WARN ] [.binding.knx.internal.bus.KNXBinding] - no compatible datapoint found for item FF_GuestRoom_AC_Mode (org.openhab.core.library.types.DecimalType), check item configuration

2018-06-04 20:40:01.001 [vent.ItemStateChangedEvent] - FF_GuestRoom_AC_Mode changed from 3 to 1

Got a screenshot of my ETS to show you what kind of value is being sent
This is basically the only way I can change the mode using ETS

I am not sure if the KNX binding (which is based on the calimero library) supports DTP 20.105…
I will try to check.
I don’t use this DTP in my system :frowning:

I’ve been fearing that so i tried to find a way to trick it and in ETS i can send an hex value and it accepts using a byte DPT
Have a look at the highlights

Is there a possibility to trick it like this in OH?

hmm… maybe with a string item ? not sure

Did you try both String and Number for the item definitions? (give Dimmer a try also… you never know :))

It seems that DTP 20.105 is supported:

Tried that also, running out of options here :frowning:

I think that I found something…

The current KNXv1 binding supports DTP 20.xyz but only as a String.

edit:

So: Your first approach (to send a String) was the correct one.
Now… if the GA only accepts a number, you need to open up an issue on github to get KNXv1 to modify this to a DecimalType. (I think)… On the other hand… if calimero expects a String… I don’t know what would be the way to handle this.

@lewie: opinion?

Hi Dim, we are talking about 20.xyz not 21 , but both seem to be string data type so its a valid point, thanks.
Lets see what your friend says…
Cheers

1 Like

yeah, my bad. 20.015 (same story = StringType.class)

Ok, first thing Dim , many thanks for putting up with me, I know I’ve been a bit of an insintent newb, I am not a knx expert by far, but I’m very very stuburn when I put my head on some objective.

So…I finally managed to make it work!!! Yeay!!! A bit of trial and error, a bit of luck but this is how I managed to trick the thing into working, partially using the dimmer as an item partially using a diferent DTP 5.004:

on items:
Dimmer          FF_GuestRoom_AC_Mode        "Mode [%s]"         {knx="5.004:1/6/27+<1/6/31"}
on sitemap:
Switch  item=FF_Office_AC_Mode mappings=[0="Auto", 1="Heat", 3="Cool", 9="Fan", 14="Dry" ]

Not sure if its still worth tweaking the binding regarding the DPT 20.xyz, ill leave it up to u guys, if u need a tester I’m here.

Now moving on to make this look nice using habpanel…

Cheers

Nuno

1 Like