Try to use rules to send valeus on the KNX from other bindings

Thnaks for the response,
the time cron is created with the http://www.cronmaker.com/

The main problem is hen a use the manual switch, nothing is send on the KNX bus of the weather outdoor temperature

afbeelding

Clarify a bit plz: From the first post, I understand that you do see the telegram being transmitted on the KNX Bus when you use the manually fired rule. From the second post, I understand that it is not actually send…

What is the situation?

Add a logInfo statement to each rule to see if it fires:

rule "Weerbericht Cron based every 5m"
when 
	Time cron '0 */5 * ? * *'
then
	logInfo("Weerbericht_Cron", "Cron - Sending Temp to KNX")
	KNXWeerbericht_BuitenTemperatuur.sendCommand(LocalWeather_Current_OutdoorTemperature.state.toString)
end
rule "Weerbericht Manual"
when 
	Item KNXWeerbericht_ManualSend received command ON
then
	logInfo("Weerbericht_Manual", "Manual - Sending Temp to KNX")
	KNXWeerbericht_BuitenTemperatuur.sendCommand(LocalWeather_Current_OutdoorTemperature.state.toString)
end 

Question: why are you converting to String the LocalWeather_Current_OutdoorTemperature.state?
Isn’t your KNX Item KNXWeerbericht_BuitenTemperatuur a Number?

You should post all relevant configs when troubleshooting :slight_smile:

There should be also log entries in openhab.log

The ‘Manual Send’ have group adres 0/0/100 and is send on the KNX bus (item type = switch)
the ‘Buiten temperatuur’ have group adres 1/0/1 and is not send to the KNX bus (item type = number)

i have tryed a lot of combinations, and hen i remove the ‘toString’ i get a error in VS code that my syntax is not correct

also my other knx devices are not working any more in the paperUI, when a use a switch that before is working, is now not working any more

when i remove the rule, then the are working again afte some time, i have check this more times

the configuration of the knx devices is don i the paperUI

i see in the openhab log ‘Cron - sending Temp to KNX’
but when a i look in paperUI on the KNX item there is no change on it
afbeelding

That is because you are using the action sendCommand instead of the recommended .sendCommand method
use:

Item.sendCommand(command)

instead of:

sendCommand(Item, command)

If You see my first post there i have the two versions

i have addapte the rules with the logInfo

rule "Weerbericht"
when 
    Time cron '0 0/5 * 1/1 * ? *'
then 
    logInfo("Weerbericht_Cron", "Cron - Sending Temp to KNX")
    sendCommand(KNXWeerbericht_BuitenTemperatuur,LocalWeather_Current_OutdoorTemperature.state.toString)

end

rule "manual_weerbericht"
when 
    Item KNXWeerbericht_ManualSend received command "ON"

then 
    logInfo("Weerbericht_Manual", "Manual - Sending Temp to KNX")
    sendCommand(KNXWeerbericht_BuitenTemperatuur,LocalWeather_Current_OutdoorTemperature.state.toString)

    KNXWeerbericht_BuitenTemperatuur.sendCommand(LocalWeather_Current_OutdoorTemperature.state.toString)
end 

when i then look at openhab log i get

```csv
your 2018-12-12 07:45:00.004 [INFO ] [rthome.model.script.Weerbericht_Cron] - Cron - Sending Temp to KNX

2018-12-12 07:50:00.002 [INFO ] [rthome.model.script.Weerbericht_Cron] - Cron - Sending Temp to KNX

2018-12-12 07:55:00.001 [INFO ] [rthome.model.script.Weerbericht_Cron] - Cron - Sending Temp to KNX 

There is no communication on the KNX bus
also i have the feeling that the KNX bus is bloked by this rules


```csv
2018-12-12 08:01:48.169 [WARN ] [Xnet/IP Tunneling 192.168.3.157:3671] - response timeout waiting for confirmation
tuwien.auto.calimero.KNXTimeoutException: no confirmation reply received for 1.0.0->1.1.3 L_Data.req, system priority hop count 6 repeat, tpdu 81
	at tuwien.auto.calimero.knxnetip.ClientConnection.doExtraBlockingModes(ClientConnection.java:244) ~[?:?]
	at tuwien.auto.calimero.knxnetip.ConnectionBase.send(ConnectionBase.java:258) ~[?:?]
	at tuwien.auto.calimero.knxnetip.KNXnetIPTunnel.send(KNXnetIPTunnel.java:178) ~[?:?]
	at tuwien.auto.calimero.link.KNXNetworkLinkIP.onSend(KNXNetworkLinkIP.java:243) ~[?:?]
	at tuwien.auto.calimero.link.AbstractLink.send(AbstractLink.java:351) ~[?:?]
	at tuwien.auto.calimero.link.KNXNetworkLinkIP.sendRequestWait(KNXNetworkLinkIP.java:222) ~[?:?]
	at tuwien.auto.calimero.mgmt.TransportLayerImpl.sendDisconnect(TransportLayerImpl.java:612) ~[?:?]
	at tuwien.auto.calimero.mgmt.TransportLayerImpl.disconnectIndicate(TransportLayerImpl.java:600) ~[?:?]
	at tuwien.auto.calimero.mgmt.TransportLayerImpl.disconnect(TransportLayerImpl.java:342) ~[?:?]
	at tuwien.auto.calimero.mgmt.Destination.destroy(Destination.java:371) ~[?:?]
	at tuwien.auto.calimero.mgmt.Destination.close(Destination.java:383) ~[?:?]
	at tuwien.auto.calimero.mgmt.ManagementProceduresImpl.isAddressOccupied(ManagementProceduresImpl.java:311) ~[?:?]
	at org.openhab.binding.knx.internal.client.AbstractKNXClient.isReachable(AbstractKNXClient.java:338) ~[?:?]
	at org.openhab.binding.knx.handler.AbstractKNXThingHandler.pollDeviceStatus(AbstractKNXThingHandler.java:144) ~[?:?]
	at org.openhab.binding.knx.handler.AbstractKNXThingHandler.lambda$1(AbstractKNXThingHandler.java:184) ~[?:?]
	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) [?:?]
	at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:308) [?:?]
	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:180) [?:?]
	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:294) [?:?]
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [?:?]
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [?:?]
	at java.lang.Thread.run(Thread.java:748) [?:?]
2018-12-12 08:01:48.247 [WARN ] [calimero.mgmt.TL 192.168.3.157:3671 ] - disconnected not gracefully (timeout)
tuwien.auto.calimero.KNXTimeoutException: no confirmation reply received for 1.0.0->1.1.3 L_Data.req, system priority hop count 6 repeat, tpdu 81
	at tuwien.auto.calimero.knxnetip.ClientConnection.doExtraBlockingModes(ClientConnection.java:244) ~[?:?]
	at tuwien.auto.calimero.knxnetip.ConnectionBase.send(ConnectionBase.java:258) ~[?:?]
	at tuwien.auto.calimero.knxnetip.KNXnetIPTunnel.send(KNXnetIPTunnel.java:178) ~[?:?]
	at tuwien.auto.calimero.link.KNXNetworkLinkIP.onSend(KNXNetworkLinkIP.java:243) ~[?:?]
	at tuwien.auto.calimero.link.AbstractLink.send(AbstractLink.java:351) ~[?:?]
	at tuwien.auto.calimero.link.KNXNetworkLinkIP.sendRequestWait(KNXNetworkLinkIP.java:222) ~[?:?]
	at tuwien.auto.calimero.mgmt.TransportLayerImpl.sendDisconnect(TransportLayerImpl.java:612) ~[?:?]
	at tuwien.auto.calimero.mgmt.TransportLayerImpl.disconnectIndicate(TransportLayerImpl.java:600) ~[?:?]
	at tuwien.auto.calimero.mgmt.TransportLayerImpl.disconnect(TransportLayerImpl.java:342) ~[?:?]
	at tuwien.auto.calimero.mgmt.Destination.destroy(Destination.java:371) ~[?:?]
	at tuwien.auto.calimero.mgmt.Destination.close(Destination.java:383) ~[?:?]
	at tuwien.auto.calimero.mgmt.ManagementProceduresImpl.isAddressOccupied(ManagementProceduresImpl.java:311) ~[?:?]
	at org.openhab.binding.knx.internal.client.AbstractKNXClient.isReachable(AbstractKNXClient.java:338) ~[?:?]
	at org.openhab.binding.knx.handler.AbstractKNXThingHandler.pollDeviceStatus(AbstractKNXThingHandler.java:144) ~[?:?]
	at org.openhab.binding.knx.handler.AbstractKNXThingHandler.lambda$1(AbstractKNXThingHandler.java:184) ~[?:?]
	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) [?:?]
	at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:308) [?:?]
	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:180) [?:?]
	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:294) [?:?]
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [?:?]
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [?:?]
	at java.lang.Thread.run(Thread.java:748) [?:?]

see also Karaf error message

They’ll need to see your Item definition.

I have disable the rules and shutdown karaf and restart it, now my KNX connection is working again

below the item config in paperUI

and the code in org.eclipse.smarthome.core.items.item.json

"KNXWeerbericht_BuitenTemperatuur": {
    "class": "org.eclipse.smarthome.core.items.ManagedItemProvider$PersistedItem",
    "value": {
      "groupNames": [],
      "itemType": "Number",
      "tags": [],
      "label": "Buiten temperatuur"
    }

karaf console message

SLF4J: Failed toString() invocation on an object of type [org.eclipse.smarthome.core.items.events.ItemStateChangedEvent]
Reported exception:
java.lang.OutOfMemoryError: Java heap space
        at java.util.Arrays.copyOf(Arrays.java:3332)
        at java.lang.AbstractStringBuilder.ensureCapacityInternal(AbstractStringBuilder.java:124)
        at java.lang.AbstractStringBuilder.append(AbstractStringBuilder.java:448)
        at java.lang.StringBuilder.append(StringBuilder.java:136)
        at java.lang.StringBuilder.append(StringBuilder.java:76)
        at java.lang.AbstractStringBuilder.append(AbstractStringBuilder.java:484)
        at java.lang.StringBuilder.append(StringBuilder.java:166)
        at java.lang.StringBuilder.append(StringBuilder.java:76)
        at java.util.Formatter$FormatSpecifier.print(Formatter.java:2913)
        at java.util.Formatter$FormatSpecifier.printString(Formatter.java:2886)
        at java.util.Formatter$FormatSpecifier.print(Formatter.java:2763)
        at java.util.Formatter.format(Formatter.java:2520)
        at java.util.Formatter.format(Formatter.java:2455)
        at java.lang.String.format(String.java:2940)
        at org.eclipse.smarthome.core.items.events.ItemStateChangedEvent.toString(ItemStateChangedEvent.java:89)
        at org.slf4j.helpers.MessageFormatter.safeObjectAppend(MessageFormatter.java:299)
        at org.slf4j.helpers.MessageFormatter.deeplyAppendParameter(MessageFormatter.java:271)
        at org.slf4j.helpers.MessageFormatter.arrayFormat(MessageFormatter.java:233)
        at org.slf4j.helpers.MessageFormatter.arrayFormat(MessageFormatter.java:173)
        at org.slf4j.helpers.MessageFormatter.format(MessageFormatter.java:124)
        at org.ops4j.pax.logging.slf4j.Slf4jLogger.info(Slf4jLogger.java:494)
        at org.eclipse.smarthome.io.monitor.internal.EventLogger.receive(EventLogger.java:53)
        at sun.reflect.GeneratedMethodAccessor16.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:498)
        at org.eclipse.smarthome.core.internal.common.AbstractInvocationHandler.invokeDirect(AbstractInvocationHandler.java:153)
        at org.eclipse.smarthome.core.internal.common.Invocation.call(Invocation.java:53)
        at java.util.concurrent.FutureTask.run(FutureTask.java:266)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
        at java.lang.Thread.run(Thread.java:748)

Modify your rule to logInfo the LocalWeather_Current_OutdoorTemperature Item. It’s possible you are trying to send the “command” NULL or UNDEF, which won’t work.

Does you KNXv2 binding work ok? (forget the rule for a moment and check if simple things work)

I think that you have more general problems that you need to address to improve the stability of your OH2 installation on Windows.

Try to make sure that the system is stable first before you start implementing rules.

stable = startup and basic operations without any errors and/or warnings in your logs.

i used weather underground information

when i use postUpdate, the paperUI ‘KNX weerbericht’ will display the same values
afbeelding

I have removed ‘Log ReaderBinding’ thing, removed the ‘Bleutooth Binding 2.4.0’ and ‘CometVisu Backend 2.4.0 UI’ form my configuration.

Now Karaf is quit

afbeelding

I will now try the rule again

I have just one remarque/question
My ‘KNX weerbericht’ is not a fysciale knx hardware device but a virtual openhab KNX device, so i dont have a fysical knx adres for it.

When i put heer a non existhing device adres, the the thing go to off line.

I now have adde the rules again

rule "Weerbericht"
when 
    Time cron '0 0/5 * * * ? *'
then 
    logInfo("Weerbericht_Cron", "Cron - Sending Temp to KNX")
    sendCommand(KNXWeerbericht_BuitenTemperatuur,LocalWeather_Current_OutdoorTemperature.state.toString)
    sendCommand(KNXWeerbericht_HuidigeToestand,LocalWeather_Current_CurrentConditions.state.toString)
    sendCommand(KNXWeerbericht_Vochtigheid,LocalWeather_Current_AtmosphericHumidity.state.toString)

end

rule "manual_weerbericht"
when 
    Item KNXWeerbericht_ManualSend received command "ON"

then 
    logInfo("Weerbericht_Manual", "Manual - Sending Temp to KNX")
    sendCommand(KNXWeerbericht_BuitenTemperatuur,LocalWeather_Current_OutdoorTemperature.state.toString)
    sendCommand(KNXWeerbericht_HuidigeToestand,LocalWeather_Current_CurrentConditions.state.toString)
    sendCommand(KNXWeerbericht_Vochtigheid,LocalWeather_Current_AtmosphericHumidity.state.toString)

    sendCommand(KNXWeerbericht_ManualSend,OFF )
    
end 

in paperUi the KNX Weerbericht items are updated
afbeelding

in the KNX monitoring i only see the ‘Manual send’

‘Huidige toestand’ = 1/0/0 Type = String
‘Buiten temperatuur’ = 1/0/1 Type = Number
‘Vochtigheid’ = 1/0/2 Type = Number

all my other knx things and items are still working, so the bindinsg a disabled are the blocking part for the knx binding !?

Ok there more comming on the KNX bus, Sting is send on the bus, now the Numbers ti get it to work

openhab log

2018-12-13 23:16:03.512 [INFO ] [home.model.script.Weerbericht_Manual] - Manual - Sending Temp to KNX
2018-12-13 23:16:03.543 [WARN ] [nx.internal.client.AbstractKNXClient] - Value 'Gedeeltelijk bewolkt' could not be sent to the KNX bus using datapoint 'command DP 1/0/0 'knx:ip:dd4cf70d', DPT id 16.001, low priority': 16.001 ISO-8859-1 string (Latin 1): maximum KNX string length is 14 characters: Gedeeltelijk bewolkt. Giving up now.
2018-12-13 23:16:03.544 [WARN ] [.internal.handler.DeviceThingHandler] - An error occurred on channel knx:device:6cec9f52:Huidige_toestand: 16.001 ISO-8859-1 string (Latin 1): maximum KNX string length is 14 characters: Gedeeltelijk bewolkt
tuwien.auto.calimero.KNXFormatException: 16.001 ISO-8859-1 string (Latin 1): maximum KNX string length is 14 characters: Gedeeltelijk bewolkt
	at tuwien.auto.calimero.dptxlator.DPTXlator.newException(DPTXlator.java:505) ~[253:org.openhab.binding.knx:2.4.0.201812121631]
	at tuwien.auto.calimero.dptxlator.DPTXlator.newException(DPTXlator.java:510) ~[253:org.openhab.binding.knx:2.4.0.201812121631]
	at tuwien.auto.calimero.dptxlator.DPTXlatorString.toDPT(DPTXlatorString.java:192) ~[253:org.openhab.binding.knx:2.4.0.201812121631]
	at tuwien.auto.calimero.dptxlator.DPTXlator.setValue(DPTXlator.java:186) ~[253:org.openhab.binding.knx:2.4.0.201812121631]
	at tuwien.auto.calimero.process.ProcessCommunicatorImpl.write(ProcessCommunicatorImpl.java:358) ~[253:org.openhab.binding.knx:2.4.0.201812121631]
	at org.openhab.binding.knx.internal.client.AbstractKNXClient.sendToKNX(AbstractKNXClient.java:453) ~[253:org.openhab.binding.knx:2.4.0.201812121631]
	at org.openhab.binding.knx.internal.client.AbstractKNXClient.writeToKNX(AbstractKNXClient.java:413) ~[253:org.openhab.binding.knx:2.4.0.201812121631]
	at org.openhab.binding.knx.internal.handler.DeviceThingHandler.lambda$7(DeviceThingHandler.java:229) ~[253:org.openhab.binding.knx:2.4.0.201812121631]
	at org.openhab.binding.knx.internal.handler.DeviceThingHandler.withKNXType(DeviceThingHandler.java:124) [253:org.openhab.binding.knx:2.4.0.201812121631]
	at org.openhab.binding.knx.internal.handler.DeviceThingHandler.withKNXType(DeviceThingHandler.java:118) [253:org.openhab.binding.knx:2.4.0.201812121631]
	at org.openhab.binding.knx.internal.handler.DeviceThingHandler.handleCommand(DeviceThingHandler.java:224) [253:org.openhab.binding.knx:2.4.0.201812121631]
	at sun.reflect.GeneratedMethodAccessor112.invoke(Unknown Source) ~[?:?]
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:?]
	at java.lang.reflect.Method.invoke(Method.java:498) ~[?:?]
	at org.eclipse.smarthome.core.internal.common.AbstractInvocationHandler.invokeDirect(AbstractInvocationHandler.java:153) [102:org.eclipse.smarthome.core:0.10.0.201812121521]
	at org.eclipse.smarthome.core.internal.common.InvocationHandlerSync.invoke(InvocationHandlerSync.java:59) [102:org.eclipse.smarthome.core:0.10.0.201812121521]
	at com.sun.proxy.$Proxy154.handleCommand(Unknown Source) [253:org.openhab.binding.knx:2.4.0.201812121631]
	at org.eclipse.smarthome.core.thing.internal.profiles.ProfileCallbackImpl.handleCommand(ProfileCallbackImpl.java:75) [109:org.eclipse.smarthome.core.thing:0.10.0.201812121521]
	at org.eclipse.smarthome.core.thing.internal.profiles.SystemDefaultProfile.onCommandFromItem(SystemDefaultProfile.java:49) [109:org.eclipse.smarthome.core.thing:0.10.0.201812121521]
	at sun.reflect.GeneratedMethodAccessor111.invoke(Unknown Source) ~[?:?]
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:?]
	at java.lang.reflect.Method.invoke(Method.java:498) ~[?:?]
	at org.eclipse.smarthome.core.internal.common.AbstractInvocationHandler.invokeDirect(AbstractInvocationHandler.java:153) [102:org.eclipse.smarthome.core:0.10.0.201812121521]
	at org.eclipse.smarthome.core.internal.common.Invocation.call(Invocation.java:53) [102:org.eclipse.smarthome.core:0.10.0.201812121521]
	at java.util.concurrent.FutureTask.run(FutureTask.java:266) [?:?]
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [?:?]
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [?:?]
	at java.lang.Thread.run(Thread.java:748) [?:?]

he rule now

rule "Automatic_Weerbericht"
when 
    Time cron '0 0/5 * * * ? *'
then 
    logInfo("Weerbericht_Cron", "Cron - Sending Temp to KNX")
    sendCommand(KNXWeerbericht_BuitenTemperatuur,LocalWeather_Current_OutdoorTemperature.state.toString)
    sendCommand(KNXWeerbericht_HuidigeToestand,LocalWeather_Current_CurrentConditions.state.toString)
    sendCommand(KNXWeerbericht_Vochtigheid,LocalWeather_Current_AtmosphericHumidity.state.toString)

end

rule "Manual_Weerbericht"
when 
    Item KNXWeerbericht_ManualSend received command "ON"

then 
    logInfo("Weerbericht_Manual", "Manual - Sending Temp to KNX")
    sendCommand(KNXWeerbericht_BuitenTemperatuur,LocalWeather_Current_OutdoorTemperature.state.toString)
    sendCommand(KNXWeerbericht_HuidigeToestand,LocalWeather_Current_CurrentConditions.state.toString)
    sendCommand(KNXWeerbericht_Vochtigheid,LocalWeather_Current_AtmosphericHumidity.state.toString)

    sendCommand(KNXWeerbericht_ManualSend,OFF )
    
end