I'm getting an error while trying to check the router connectivity

  • Platform information:
    • Hardware: Raspberry Pi 2 Model B Rev 1.1
    • OS: openHAB 2.4.0-1

things

Thing network:pingdevice:Router [ hostname="192.168.1.1" ]
Thing network:pingdevice:InternetConnection [ hostname="8.8.8.8" ]

items

Switch Router "Router [%s]" <network> (Network) { channel="network:pingdevice:Router:online" }
Switch InternetConnection "Internet Connection [%s]" <network> (Network) { channel="network:pingdevice:InternetConnection:online" }

rules

var Timer BlinkingTimer = null



rule "Network Router OFF"
when
    Item Router changed to OFF
then
    logInfo("network", "Router is offline")

    if(BlinkingTimer !== null){
        BlinkingTimer.cancel()
        BlinkingTimer = null
    }

       
    if(BlinkingTimer === null){
        BlinkingTimer = createTimer(now, [ |
            if(GPIO_OKLed.state==ON){
                logInfo("network", "LED OFF")
                GPIO_OKLed.sendCommand(OFF)
                BlinkingTimer.reschedule(now.plusMillis(500))
            }else{
                logInfo("network", "LED is "+ GPIO_OKLed.state.toString() +", and will set ON")
                GPIO_OKLed.sendCommand(ON)
                BlinkingTimer.reschedule(now.plusMillis(500))
            }
        ])
    }

end


rule "Network Router ON"
when
    Item Router changed to ON
then
    logInfo("network", "Router is online")

    if(BlinkingTimer !== null){
        BlinkingTimer.cancel()
        BlinkingTimer = null
    }

    logInfo("network", "LED is "+ GPIO_OKLed.state.toString() +", and will set ON")
    GPIO_OKLed.sendCommand(ON)

end

log

2019-11-23 15:14:44.013 [INFO ] [lipse.smarthome.model.script.network] - Router is offline
2019-11-23 15:14:46.856 [INFO ] [lipse.smarthome.model.script.network] - LED is NULL, and will set ON

2019-11-23 15:14:46.835 [ERROR] [ntime.internal.engine.RuleEngineImpl] - Rule 'Network Router OFF': An error occurred during the script execution: Cannot resolve proxy: network.rules#/1

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

2019-11-23 15:14:47.223 [hingStatusInfoChangedEvent] - 'mqtt:systemBroker:embedded-mqtt-broker' changed from UNINITIALIZED to INITIALIZING

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

2019-11-23 15:14:47.021 [ERROR] [org.quartz.core.JobRunShell         ] - Job DEFAULT.2019-11-23T15:14:44.106+02:00: Proxy for org.eclipse.xtext.xbase.lib.Procedures$Procedure0: [ | {

  logInfo(<XStringLiteralImpl>,<XStringLiteralImpl>)

  org.eclipse.xtext.xbase.impl.XIfExpressionImpl@17f1cd4

} ] threw an unhandled Exception: 

java.lang.NullPointerException: cannot invoke method public abstract boolean org.eclipse.smarthome.model.script.actions.Timer.reschedule(org.joda.time.base.AbstractInstant) on null

	at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter.invokeOperation(XbaseInterpreter.java:1071) ~[?:?]

	at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter.invokeOperation(XbaseInterpreter.java:1061) ~[?:?]

	at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter._invokeFeature(XbaseInterpreter.java:1047) ~[?:?]

	at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter.invokeFeature(XbaseInterpreter.java:992) ~[?:?]

	at org.eclipse.smarthome.model.script.interpreter.ScriptInterpreter.invokeFeature(ScriptInterpreter.java:151) ~[?:?]

	at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter._doEvaluate(XbaseInterpreter.java:772) ~[?:?]

	at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter.doEvaluate(XbaseInterpreter.java:220) ~[?:?]

	at org.eclipse.smarthome.model.script.interpreter.ScriptInterpreter.doEvaluate(ScriptInterpreter.java:226) ~[?:?]

	at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter.internalEvaluate(XbaseInterpreter.java:204) ~[?:?]

	at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter._doEvaluate(XbaseInterpreter.java:447) ~[?:?]

	at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter.doEvaluate(XbaseInterpreter.java:228) ~[?:?]

	at org.eclipse.smarthome.model.script.interpreter.ScriptInterpreter.doEvaluate(ScriptInterpreter.java:226) ~[?:?]

	at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter.internalEvaluate(XbaseInterpreter.java:204) ~[?:?]

	at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter._doEvaluate(XbaseInterpreter.java:464) ~[?:?]

	at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter.doEvaluate(XbaseInterpreter.java:244) ~[?:?]

	at org.eclipse.smarthome.model.script.interpreter.ScriptInterpreter.doEvaluate(ScriptInterpreter.java:226) ~[?:?]

	at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter.internalEvaluate(XbaseInterpreter.java:204) ~[?:?]

	at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter._doEvaluate(XbaseInterpreter.java:447) ~[?:?]

	at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter.doEvaluate(XbaseInterpreter.java:228) ~[?:?]

	at org.eclipse.smarthome.model.script.interpreter.ScriptInterpreter.doEvaluate(ScriptInterpreter.java:226) ~[?:?]

	at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter.internalEvaluate(XbaseInterpreter.java:204) ~[?:?]

	at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter.evaluate(XbaseInterpreter.java:190) ~[?:?]

	at org.eclipse.xtext.xbase.interpreter.impl.ClosureInvocationHandler.doInvoke(ClosureInvocationHandler.java:46) ~[?:?]

	at org.eclipse.xtext.xbase.interpreter.impl.AbstractClosureInvocationHandler.invoke(AbstractClosureInvocationHandler.java:29) ~[?:?]

	at com.sun.proxy.$Proxy147.apply(Unknown Source) ~[?:?]

	at org.eclipse.smarthome.model.script.internal.actions.TimerExecutionJob.execute(TimerExecutionJob.java:49) ~[?:?]

	at org.quartz.core.JobRunShell.run(JobRunShell.java:202) [107:org.eclipse.smarthome.core.scheduler:0.10.0.oh240]

	at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:573) [107:org.eclipse.smarthome.core.scheduler:0.10.0.oh240]

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

2019-11-23 15:14:47.354 [hingStatusInfoChangedEvent] - 'mqtt:systemBroker:embedded-mqtt-broker' changed from INITIALIZING to OFFLINE (CONFIGURATION_ERROR): The system connection with the name embedded-mqtt-broker doesnt exist anymore.

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

2019-11-23 15:14:47.335 [ERROR] [org.quartz.core.ErrorLogger         ] - Job (DEFAULT.2019-11-23T15:14:44.106+02:00: Proxy for org.eclipse.xtext.xbase.lib.Procedures$Procedure0: [ | {

  logInfo(<XStringLiteralImpl>,<XStringLiteralImpl>)

  org.eclipse.xtext.xbase.impl.XIfExpressionImpl@17f1cd4

} ] threw an exception.

org.quartz.SchedulerException: Job threw an unhandled exception.

	at org.quartz.core.JobRunShell.run(JobRunShell.java:213) [107:org.eclipse.smarthome.core.scheduler:0.10.0.oh240]

	at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:573) [107:org.eclipse.smarthome.core.scheduler:0.10.0.oh240]

Caused by: java.lang.NullPointerException: cannot invoke method public abstract boolean org.eclipse.smarthome.model.script.actions.Timer.reschedule(org.joda.time.base.AbstractInstant) on null

	at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter.invokeOperation(XbaseInterpreter.java:1071) ~[?:?]

	at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter.invokeOperation(XbaseInterpreter.java:1061) ~[?:?]

	at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter._invokeFeature(XbaseInterpreter.java:1047) ~[?:?]

	at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter.invokeFeature(XbaseInterpreter.java:992) ~[?:?]

	at org.eclipse.smarthome.model.script.interpreter.ScriptInterpreter.invokeFeature(ScriptInterpreter.java:151) ~[?:?]

	at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter._doEvaluate(XbaseInterpreter.java:772) ~[?:?]

	at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter.doEvaluate(XbaseInterpreter.java:220) ~[?:?]

	at org.eclipse.smarthome.model.script.interpreter.ScriptInterpreter.doEvaluate(ScriptInterpreter.java:226) ~[?:?]

	at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter.internalEvaluate(XbaseInterpreter.java:204) ~[?:?]

	at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter._doEvaluate(XbaseInterpreter.java:447) ~[?:?]

	at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter.doEvaluate(XbaseInterpreter.java:228) ~[?:?]

	at org.eclipse.smarthome.model.script.interpreter.ScriptInterpreter.doEvaluate(ScriptInterpreter.java:226) ~[?:?]

	at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter.internalEvaluate(XbaseInterpreter.java:204) ~[?:?]

	at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter._doEvaluate(XbaseInterpreter.java:464) ~[?:?]

	at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter.doEvaluate(XbaseInterpreter.java:244) ~[?:?]

	at org.eclipse.smarthome.model.script.interpreter.ScriptInterpreter.doEvaluate(ScriptInterpreter.java:226) ~[?:?]

	at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter.internalEvaluate(XbaseInterpreter.java:204) ~[?:?]

	at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter._doEvaluate(XbaseInterpreter.java:447) ~[?:?]

	at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter.doEvaluate(XbaseInterpreter.java:228) ~[?:?]

	at org.eclipse.smarthome.model.script.interpreter.ScriptInterpreter.doEvaluate(ScriptInterpreter.java:226) ~[?:?]

	at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter.internalEvaluate(XbaseInterpreter.java:204) ~[?:?]

	at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter.evaluate(XbaseInterpreter.java:190) ~[?:?]

	at org.eclipse.xtext.xbase.interpreter.impl.ClosureInvocationHandler.doInvoke(ClosureInvocationHandler.java:46) ~[?:?]

	at org.eclipse.xtext.xbase.interpreter.impl.AbstractClosureInvocationHandler.invoke(AbstractClosureInvocationHandler.java:29) ~[?:?]

	at com.sun.proxy.$Proxy147.apply(Unknown Source) ~[?:?]

	at org.eclipse.smarthome.model.script.internal.actions.TimerExecutionJob.execute(TimerExecutionJob.java:49) ~[?:?]

	at org.quartz.core.JobRunShell.run(JobRunShell.java:202) ~[?:?]

	... 1 more


Thanks

Should this be

if(BlinkingTimer === null){
        BlinkingTimer = createTimer(now), [ |

Notice the ) after “now”. Or try adding (now.plusSeconds(1), [ |

You can also use BlinkingTimer?.cancel to accomplish the same as
BlinkingTimer.cancel()

1 Like

Thanks
do you mean like this

var Timer BlinkingTimer = null



rule "Network Router OFF"
when
    Item Router changed to OFF
then
    logInfo("network", "Router is offline")

    if(BlinkingTimer !== null){
         BlinkingTimer?.cancel()
    }

    
    if(BlinkingTimer === null){
        BlinkingTimer = createTimer(now), [ |
            if(GPIO_OKLed.state==ON){
                logInfo("network", "LED OFF")
                GPIO_OKLed.sendCommand(OFF)
                BlinkingTimer.reschedule(now.plusMillis(500))
            }else{
                logInfo("network", "LED is "+ GPIO_OKLed.state.toString() +", and will set ON")
                GPIO_OKLed.sendCommand(ON)
                BlinkingTimer.reschedule(now.plusMillis(500))
            }
        ]
    }

end

rule "Network Router ON"
when
    Item Router changed to ON
then
    logInfo("network", "Router is online")



    if(BlinkingTimer !== null){
        BlinkingTimer.cancel()
        BlinkingTimer = null
    }

    logInfo("network", "LED is "+ GPIO_OKLed.state.toString() +", and will set ON")
    GPIO_OKLed.sendCommand(ON)

end

error

2019-11-23 15:51:06.912 [WARN ] [el.core.internal.ModelRepositoryImpl] - Configuration model 'network.rules' has errors, therefore ignoring it: [21,41]: mismatched input ',' expecting '}'

[32,5]: extraneous input '}' expecting 'end'

Try it like this. VSCode is a great tool to help with systax.

var Timer BlinkingTimer = null



rule "Network Router OFF"
when
    Item Router changed to OFF
then
    logInfo("network", "Router is offline")

    if(BlinkingTimer !== null){
         BlinkingTimer?.cancel()
    }

    
    if(BlinkingTimer === null){
        BlinkingTimer = createTimer(now) [ |
            if(GPIO_OKLed.state==ON){
                logInfo("network", "LED OFF")
                GPIO_OKLed.sendCommand(OFF)
                BlinkingTimer.reschedule(now.plusMillis(500))
        
            }
    
            else{
                logInfo("network", "LED is "+ GPIO_OKLed.state.toString() +", and will set ON")
                GPIO_OKLed.sendCommand(ON)
                BlinkingTimer.reschedule(now.plusMillis(500))
            }
        ]
    
    }
end

rule "Network Router ON"
when
    Item Router changed to ON
then
    logInfo("network", "Router is online")



    if(BlinkingTimer !== null){
        BlinkingTimer.cancel()
        BlinkingTimer = null
    }

    logInfo("network", "LED is "+ GPIO_OKLed.state.toString() +", and will set ON")
    GPIO_OKLed.sendCommand(ON)

end

After placing your rule in VSCode I thought I would correct myself about the ). You had it correct the first time as the ) must go after the ] if not using it like this BlinkingTimer = createTimer(now), [ |.

Note that cancelling a timer does not make it null - or rather, strictly speaking, make the variable you are using as a handle into null.

You must do that explicitly.

The magic question mark avoids an error if you try to cancel and the handle is already null. In other words, a lazy way to avoid testing for null first.

1 Like

Thanks for catching that.:+1: Copy/pasted to much and forgot to delete the second line.:face_with_raised_eyebrow:

@A_Moktar did the code adjustments fix your issue? If not post any relevant logs and rule changes. If so please mark the topic solved by clicking the square box on the post that provided the solution.

Thanks

I’m trying the code again and will replay , thanks all for helping

Don’t forget that second line to set the var to null as rossko57 mentioned. I’ll edit my post above as not to confuse others (as I did myself.:laughing:)

BlinkingTimer?.cancel
BlinkingTimer = null

1 Like

Thanks I’m rebooting

After making several changes to files you may need to clean the cache.

sudo systemctl stop openhab2

sudo openhab-cli clean-cache

sudo systemctl start openhab2 or sudo reboot

1 Like

after these commands openhab stopped !

Just signed back on … is OH still not up? Cleaning the cache does slow the startup process but it should come back up. If not check your using a good quality power supply as OH on Pi needs this.

Welcome back :slight_smile: , yes openhab not starting till now

log

2019-11-23 21:01:12.601 [INFO ] [org.eclipse.smarthome.ui.basic      ] - FrameworkEvent INFO - org.eclipse.smarthome.ui.basic

org.osgi.framework.BundleException: The bundle class path entry "patch/" could not be found for the bundle "osgi.identity; type="osgi.bundle"; version:Version="0.10.0.oh240"; osgi.identity="org.eclipse.smarthome.ui.basic""

	at org.eclipse.osgi.internal.loader.classpath.ClasspathManager.findClassPathEntry(ClasspathManager.java:174) ~[?:?]

	at org.eclipse.osgi.internal.loader.classpath.ClasspathManager.buildClasspath(ClasspathManager.java:152) ~[?:?]

	at org.eclipse.osgi.internal.loader.classpath.ClasspathManager.<init>(ClasspathManager.java:81) ~[?:?]

	at org.eclipse.osgi.internal.loader.EquinoxClassLoader.<init>(EquinoxClassLoader.java:43) ~[?:?]

	at org.eclipse.osgi.internal.loader.BundleLoader.createClassLoaderPrivledged(BundleLoader.java:316) ~[?:?]

	at org.eclipse.osgi.internal.loader.BundleLoader.getModuleClassLoader(BundleLoader.java:233) ~[?:?]

	at org.eclipse.osgi.internal.loader.BundleLoader.findEntries(BundleLoader.java:819) ~[?:?]

	at org.eclipse.osgi.container.ModuleWiring.findEntries(ModuleWiring.java:289) ~[?:?]

	at org.eclipse.osgi.storage.ManifestLocalization.findResource(ManifestLocalization.java:199) ~[?:?]

	at org.eclipse.osgi.storage.ManifestLocalization.lookupResourceBundle(ManifestLocalization.java:130) ~[?:?]

	at org.eclipse.osgi.storage.ManifestLocalization.getResourceBundle(ManifestLocalization.java:101) ~[?:?]

	at org.eclipse.osgi.storage.ManifestLocalization.getHeaders(ManifestLocalization.java:64) ~[?:?]

	at org.eclipse.osgi.storage.BundleInfo$Generation.getHeaders(BundleInfo.java:125) ~[?:?]

	at org.eclipse.osgi.internal.framework.EquinoxBundle.privGetHeaders(EquinoxBundle.java:462) ~[?:?]

	at org.eclipse.osgi.internal.framework.EquinoxBundle.getHeaders(EquinoxBundle.java:457) ~[?:?]

	at org.eclipse.osgi.internal.framework.EquinoxBundle.getHeaders(EquinoxBundle.java:451) ~[?:?]

	at org.apache.aries.spifly.BaseActivator.getAllHeaders(BaseActivator.java:133) ~[?:?]

	at org.apache.aries.spifly.BaseActivator.addConsumerWeavingData(BaseActivator.java:95) ~[?:?]

	at org.apache.aries.spifly.ConsumerBundleTrackerCustomizer.addingBundle(ConsumerBundleTrackerCustomizer.java:37) ~[?:?]

	at org.osgi.util.tracker.BundleTracker$Tracked.customizerAdding(BundleTracker.java:469) ~[?:?]

	at org.osgi.util.tracker.BundleTracker$Tracked.customizerAdding(BundleTracker.java:415) ~[?:?]

	at org.osgi.util.tracker.AbstractTracked.trackAdding(AbstractTracked.java:256) ~[?:?]

	at org.osgi.util.tracker.AbstractTracked.trackInitial(AbstractTracked.java:183) ~[?:?]

	at org.osgi.util.tracker.BundleTracker.open(BundleTracker.java:156) ~[?:?]

	at org.apache.aries.spifly.BaseActivator.start(BaseActivator.java:79) ~[?:?]

	at org.apache.aries.spifly.dynamic.DynamicWeavingActivator.start(DynamicWeavingActivator.java:37) ~[?:?]

	at org.eclipse.osgi.internal.framework.BundleContextImpl$3.run(BundleContextImpl.java:779) ~[?:?]

	at org.eclipse.osgi.internal.framework.BundleContextImpl$3.run(BundleContextImpl.java:1) ~[?:?]

	at java.security.AccessController.doPrivileged(Native Method) ~[?:?]

	at org.eclipse.osgi.internal.framework.BundleContextImpl.startActivator(BundleContextImpl.java:772) ~[?:?]

	at org.eclipse.osgi.internal.framework.BundleContextImpl.start(BundleContextImpl.java:729) [?:?]

	at org.eclipse.osgi.internal.framework.EquinoxBundle.startWorker0(EquinoxBundle.java:933) ~[?:?]

	at org.eclipse.osgi.internal.framework.EquinoxBundle$EquinoxModule.startWorker(EquinoxBundle.java:309) ~[?:?]

	at org.eclipse.osgi.container.Module.doStart(Module.java:581) ~[?:?]

	at org.eclipse.osgi.container.Module.start(Module.java:449) ~[?:?]

	at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.incStartLevel(ModuleContainer.java:1634) ~[?:?]

	at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.incStartLevel(ModuleContainer.java:1614) ~[?:?]

	at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.doContainerStartLevel(ModuleContainer.java:1585) ~[?:?]

	at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.dispatchEvent(ModuleContainer.java:1528) ~[?:?]

	at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.dispatchEvent(ModuleContainer.java:1) ~[?:?]

	at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230) [?:?]

	at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:340) [?:?]

2019-11-23 21:01:12.785 [INFO ] [org.eclipse.smarthome.ui.classic    ] - FrameworkEvent INFO - org.eclipse.smarthome.ui.classic

org.osgi.framework.BundleException: The bundle class path entry "patch/" could not be found for the bundle "osgi.identity; type="osgi.bundle"; version:Version="0.10.0.oh240"; osgi.identity="org.eclipse.smarthome.ui.classic""

	at org.eclipse.osgi.internal.loader.classpath.ClasspathManager.findClassPathEntry(ClasspathManager.java:174) ~[?:?]

	at org.eclipse.osgi.internal.loader.classpath.ClasspathManager.buildClasspath(ClasspathManager.java:152) ~[?:?]

	at org.eclipse.osgi.internal.loader.classpath.ClasspathManager.<init>(ClasspathManager.java:81) ~[?:?]

	at org.eclipse.osgi.internal.loader.EquinoxClassLoader.<init>(EquinoxClassLoader.java:43) ~[?:?]

	at org.eclipse.osgi.internal.loader.BundleLoader.createClassLoaderPrivledged(BundleLoader.java:316) ~[?:?]

	at org.eclipse.osgi.internal.loader.BundleLoader.getModuleClassLoader(BundleLoader.java:233) ~[?:?]

	at org.eclipse.osgi.internal.loader.BundleLoader.findEntries(BundleLoader.java:819) ~[?:?]

	at org.eclipse.osgi.container.ModuleWiring.findEntries(ModuleWiring.java:289) ~[?:?]

	at org.eclipse.osgi.storage.ManifestLocalization.findResource(ManifestLocalization.java:199) ~[?:?]

	at org.eclipse.osgi.storage.ManifestLocalization.lookupResourceBundle(ManifestLocalization.java:130) ~[?:?]

	at org.eclipse.osgi.storage.ManifestLocalization.getResourceBundle(ManifestLocalization.java:101) ~[?:?]

	at org.eclipse.osgi.storage.ManifestLocalization.getHeaders(ManifestLocalization.java:64) ~[?:?]

	at org.eclipse.osgi.storage.BundleInfo$Generation.getHeaders(BundleInfo.java:125) ~[?:?]

	at org.eclipse.osgi.internal.framework.EquinoxBundle.privGetHeaders(EquinoxBundle.java:462) ~[?:?]

	at org.eclipse.osgi.internal.framework.EquinoxBundle.getHeaders(EquinoxBundle.java:457) ~[?:?]

	at org.eclipse.osgi.internal.framework.EquinoxBundle.getHeaders(EquinoxBundle.java:451) ~[?:?]

	at org.apache.aries.spifly.BaseActivator.getAllHeaders(BaseActivator.java:133) ~[?:?]

	at org.apache.aries.spifly.BaseActivator.addConsumerWeavingData(BaseActivator.java:95) ~[?:?]

	at org.apache.aries.spifly.ConsumerBundleTrackerCustomizer.addingBundle(ConsumerBundleTrackerCustomizer.java:37) ~[?:?]

	at org.osgi.util.tracker.BundleTracker$Tracked.customizerAdding(BundleTracker.java:469) ~[?:?]

	at org.osgi.util.tracker.BundleTracker$Tracked.customizerAdding(BundleTracker.java:415) ~[?:?]

	at org.osgi.util.tracker.AbstractTracked.trackAdding(AbstractTracked.java:256) ~[?:?]

	at org.osgi.util.tracker.AbstractTracked.trackInitial(AbstractTracked.java:183) ~[?:?]

	at org.osgi.util.tracker.BundleTracker.open(BundleTracker.java:156) ~[?:?]

	at org.apache.aries.spifly.BaseActivator.start(BaseActivator.java:79) ~[?:?]

	at org.apache.aries.spifly.dynamic.DynamicWeavingActivator.start(DynamicWeavingActivator.java:37) ~[?:?]

	at org.eclipse.osgi.internal.framework.BundleContextImpl$3.run(BundleContextImpl.java:779) ~[?:?]

	at org.eclipse.osgi.internal.framework.BundleContextImpl$3.run(BundleContextImpl.java:1) ~[?:?]

	at java.security.AccessController.doPrivileged(Native Method) ~[?:?]

	at org.eclipse.osgi.internal.framework.BundleContextImpl.startActivator(BundleContextImpl.java:772) ~[?:?]

	at org.eclipse.osgi.internal.framework.BundleContextImpl.start(BundleContextImpl.java:729) [?:?]

	at org.eclipse.osgi.internal.framework.EquinoxBundle.startWorker0(EquinoxBundle.java:933) ~[?:?]

	at org.eclipse.osgi.internal.framework.EquinoxBundle$EquinoxModule.startWorker(EquinoxBundle.java:309) ~[?:?]

	at org.eclipse.osgi.container.Module.doStart(Module.java:581) ~[?:?]

	at org.eclipse.osgi.container.Module.start(Module.java:449) ~[?:?]

	at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.incStartLevel(ModuleContainer.java:1634) ~[?:?]

	at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.incStartLevel(ModuleContainer.java:1614) ~[?:?]

	at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.doContainerStartLevel(ModuleContainer.java:1585) ~[?:?]

	at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.dispatchEvent(ModuleContainer.java:1528) ~[?:?]

	at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.dispatchEvent(ModuleContainer.java:1) ~[?:?]

	at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230) [?:?]

	at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:340) [?:?]

2019-11-23 21:01:12.861 [INFO ] [org.eclipse.smarthome.ui.paper      ] - FrameworkEvent INFO - org.eclipse.smarthome.ui.paper

org.osgi.framework.BundleException: The bundle class path entry "patch/" could not be found for the bundle "osgi.identity; type="osgi.bundle"; version:Version="0.10.0.oh240"; osgi.identity="org.eclipse.smarthome.ui.paper"; singleton:="true""

	at org.eclipse.osgi.internal.loader.classpath.ClasspathManager.findClassPathEntry(ClasspathManager.java:174) ~[?:?]

	at org.eclipse.osgi.internal.loader.classpath.ClasspathManager.buildClasspath(ClasspathManager.java:152) ~[?:?]

	at org.eclipse.osgi.internal.loader.classpath.ClasspathManager.<init>(ClasspathManager.java:81) ~[?:?]

	at org.eclipse.osgi.internal.loader.EquinoxClassLoader.<init>(EquinoxClassLoader.java:43) ~[?:?]

	at org.eclipse.osgi.internal.loader.BundleLoader.createClassLoaderPrivledged(BundleLoader.java:316) ~[?:?]

	at org.eclipse.osgi.internal.loader.BundleLoader.getModuleClassLoader(BundleLoader.java:233) ~[?:?]

	at org.eclipse.osgi.internal.loader.BundleLoader.findEntries(BundleLoader.java:819) ~[?:?]

	at org.eclipse.osgi.container.ModuleWiring.findEntries(ModuleWiring.java:289) ~[?:?]

	at org.eclipse.osgi.storage.ManifestLocalization.findResource(ManifestLocalization.java:199) ~[?:?]

	at org.eclipse.osgi.storage.ManifestLocalization.lookupResourceBundle(ManifestLocalization.java:130) ~[?:?]

	at org.eclipse.osgi.storage.ManifestLocalization.getResourceBundle(ManifestLocalization.java:101) ~[?:?]

	at org.eclipse.osgi.storage.ManifestLocalization.getHeaders(ManifestLocalization.java:64) ~[?:?]

	at org.eclipse.osgi.storage.BundleInfo$Generation.getHeaders(BundleInfo.java:125) ~[?:?]

	at org.eclipse.osgi.internal.framework.EquinoxBundle.privGetHeaders(EquinoxBundle.java:462) ~[?:?]

	at org.eclipse.osgi.internal.framework.EquinoxBundle.getHeaders(EquinoxBundle.java:457) ~[?:?]

	at org.eclipse.osgi.internal.framework.EquinoxBundle.getHeaders(EquinoxBundle.java:451) ~[?:?]

	at org.apache.aries.spifly.BaseActivator.getAllHeaders(BaseActivator.java:133) ~[?:?]

	at org.apache.aries.spifly.BaseActivator.addConsumerWeavingData(BaseActivator.java:95) ~[?:?]

	at org.apache.aries.spifly.ConsumerBundleTrackerCustomizer.addingBundle(ConsumerBundleTrackerCustomizer.java:37) ~[?:?]

	at org.osgi.util.tracker.BundleTracker$Tracked.customizerAdding(BundleTracker.java:469) ~[?:?]

	at org.osgi.util.tracker.BundleTracker$Tracked.customizerAdding(BundleTracker.java:415) ~[?:?]

	at org.osgi.util.tracker.AbstractTracked.trackAdding(AbstractTracked.java:256) ~[?:?]

	at org.osgi.util.tracker.AbstractTracked.trackInitial(AbstractTracked.java:183) ~[?:?]

	at org.osgi.util.tracker.BundleTracker.open(BundleTracker.java:156) ~[?:?]

	at org.apache.aries.spifly.BaseActivator.start(BaseActivator.java:79) ~[?:?]

	at org.apache.aries.spifly.dynamic.DynamicWeavingActivator.start(DynamicWeavingActivator.java:37) ~[?:?]

	at org.eclipse.osgi.internal.framework.BundleContextImpl$3.run(BundleContextImpl.java:779) ~[?:?]

	at org.eclipse.osgi.internal.framework.BundleContextImpl$3.run(BundleContextImpl.java:1) ~[?:?]

	at java.security.AccessController.doPrivileged(Native Method) ~[?:?]

	at org.eclipse.osgi.internal.framework.BundleContextImpl.startActivator(BundleContextImpl.java:772) ~[?:?]

	at org.eclipse.osgi.internal.framework.BundleContextImpl.start(BundleContextImpl.java:729) [?:?]

	at org.eclipse.osgi.internal.framework.EquinoxBundle.startWorker0(EquinoxBundle.java:933) ~[?:?]

	at org.eclipse.osgi.internal.framework.EquinoxBundle$EquinoxModule.startWorker(EquinoxBundle.java:309) ~[?:?]

	at org.eclipse.osgi.container.Module.doStart(Module.java:581) ~[?:?]

	at org.eclipse.osgi.container.Module.start(Module.java:449) ~[?:?]

	at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.incStartLevel(ModuleContainer.java:1634) ~[?:?]

	at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.incStartLevel(ModuleContainer.java:1614) ~[?:?]

	at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.doContainerStartLevel(ModuleContainer.java:1585) ~[?:?]

	at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.dispatchEvent(ModuleContainer.java:1528) ~[?:?]

	at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.dispatchEvent(ModuleContainer.java:1) ~[?:?]

	at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230) [?:?]

	at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:340) [?:?]

2019-11-23 21:01:34.926 [INFO ] [.internal.GenericScriptEngineFactory] - Activated scripting support for ECMAScript
2019-11-23 21:01:57.543 [INFO ] [io.openhabcloud.internal.CloudClient] - Connected to the openHAB Cloud service (UUID = d2b7ddb8-6e81-4d67-a7d0-11c526d8e301, base URL = http://localhost:8080)

2019-11-23 21:02:14.408 [INFO ] [el.core.internal.ModelRepositoryImpl] - Loading model 'my.items'

2019-11-23 21:02:15.074 [INFO ] [el.core.internal.ModelRepositoryImpl] - Loading model 'weather.items'

2019-11-23 21:02:15.540 [INFO ] [el.core.internal.ModelRepositoryImpl] - Loading model 'control.items'

2019-11-23 21:02:15.775 [INFO ] [el.core.internal.ModelRepositoryImpl] - Loading model 'network.items'

2019-11-23 21:02:15.934 [INFO ] [el.core.internal.ModelRepositoryImpl] - Loading model 'wirelessunit.items'

2019-11-23 21:02:18.372 [INFO ] [el.core.internal.ModelRepositoryImpl] - Loading model 'rrd4j.persist'

2019-11-23 21:02:18.471 [INFO ] [el.core.internal.ModelRepositoryImpl] - Loading model 'mapdb.persist'

2019-11-23 21:02:19.652 [INFO ] [io.openhabcloud.internal.CloudClient] - Shutting down openHAB Cloud service connection

2019-11-23 21:02:19.810 [INFO ] [io.openhabcloud.internal.CloudClient] - Disconnected from the openHAB Cloud service (UUID = d2b7ddb8-6e81-4d67-a7d0-11c526d8e301, base URL = http://localhost:8080)

2019-11-23 21:02:20.595 [INFO ] [io.openhabcloud.internal.CloudClient] - Connected to the openHAB Cloud service (UUID = d2b7ddb8-6e81-4d67-a7d0-11c526d8e301, base URL = http://localhost:8080)

i tryed to update and upgrade and fix permissions , nothing new , every restart stop on the same line in log above

Where you selected fix permissions there is also an option to install any additional packages give that a try.

Did you install bindings via PaperUI or files?

What version are you running now?

Platform information:

  • Hardware: Raspberry Pi 2 Model B Rev 1.1
  • OS: openHAB 2.4.0-1

my binding is through files

What is the output of ls -al var/lib/openhab2/cache/ and ls -al var/lib/openhab2/tmp/

How did you end up here, from just a rule error :crazy_face:

Almost an aside now - I’m a bit suspicious that your original rule failed when it tried to reschedule the timer immediately after its creation. That’s to say, when creating a timer with target time of “now” and not much code to run before the attempted reschedule, I think you can beat the creation processing. Attempting rescheduling before the timer handle is set to the BlinkingTimer variable.
That’s my interpretation of error Cannot resolve proxy: network.rules#/1

I would make the initial creation allow a little delay
BlinkingTimer = createTimer(now.plusMillis(50), [ |