Additional sensors for ESH/OH2 OneWire binding

No, they look OK. The light level item is defined as a Number:Illuminance and the pressure item is defined as a Number:Pressure.

Still reading as 0 lux and NaN.

Ah ha! There’s an error in the logs

2018-10-24 20:41:48.022 [ERROR] [me.core.internal.events.EventHandler] - Creation of ESH-Event failed, because one of the registered event factories has thrown an exception: Error invoking #valueOf(String) on class ‘org.eclipse.smarthome.core.library.types.QuantityType’ with value ‘1010.75 mbar’.
java.lang.IllegalStateException: Error invoking #valueOf(String) on class ‘org.eclipse.smarthome.core.library.types.QuantityType’ with value ‘1010.75 mbar’.
at org.eclipse.smarthome.core.items.events.ItemEventFactory.parseSimpleClassName(ItemEventFactory.java:190) ~[?:?]
at org.eclipse.smarthome.core.items.events.ItemEventFactory.parseType(ItemEventFactory.java:158) ~[?:?]
at org.eclipse.smarthome.core.items.events.ItemEventFactory.getState(ItemEventFactory.java:136) ~[?:?]
at org.eclipse.smarthome.core.items.events.ItemEventFactory.createStateEvent(ItemEventFactory.java:116) ~[?:?]
at org.eclipse.smarthome.core.items.events.ItemEventFactory.createEventByType(ItemEventFactory.java:80) ~[?:?]
at org.eclipse.smarthome.core.events.AbstractEventFactory.createEvent(AbstractEventFactory.java:50) ~[?:?]
at org.eclipse.smarthome.core.internal.events.EventHandler.createESHEvent(EventHandler.java:121) ~[?:?]
at org.eclipse.smarthome.core.internal.events.EventHandler.handleEvent(EventHandler.java:95) ~[?:?]
at org.eclipse.smarthome.core.internal.events.EventHandler.handleEvent(EventHandler.java:72) ~[?:?]
at org.eclipse.smarthome.core.internal.events.ThreadedEventHandler.lambda$0(ThreadedEventHandler.java:67) ~[?:?]
at java.lang.Thread.run(Thread.java:745) [?:?]
Caused by: java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:?]
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:?]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:?]
at java.lang.reflect.Method.invoke(Method.java:497) ~[?:?]
at org.eclipse.smarthome.core.items.events.ItemEventFactory.parseSimpleClassName(ItemEventFactory.java:181) ~[?:?]
… 10 more
Caused by: java.lang.IllegalArgumentException: mbar not recognized (in 1010.75 mbar at index 8)
at tec.uom.se.quantity.Quantities.getQuantity(Quantities.java:80) ~[?:?]
at org.eclipse.smarthome.core.library.types.QuantityType.(QuantityType.java:96) ~[?:?]
at org.eclipse.smarthome.core.library.types.QuantityType.valueOf(QuantityType.java:139) ~[?:?]
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:?]
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:?]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:?]
at java.lang.reflect.Method.invoke(Method.java:497) ~[?:?]
at org.eclipse.smarthome.core.items.events.ItemEventFactory.parseSimpleClassName(ItemEventFactory.java:181) ~[?:?]
… 10 more

It seems mbar is. It supported as a unit. I‘ll fix that this evening.

Ok. This seems to be a problem outside of the binding. I’ve created #6411 for this. For the time being, I’ve changed the unit to hecto pascal (which is the same) which seems to work.Please test that. What does the owfs report as light? And set org.eclipse.smarthome.binding.onewire.internal.device.EDS006x to TRACE and see what is actually read from the owserver. Thanks.

I’ve been the jar from 4 days ago for a while, and the good news is the DS2423 is updating, but for some reason it only only refreshes approx every 1.5 hrs

cat openhab.log | grep counter
2018-10-26 14:16:28.909 [TRACE] [.internal.handler.OwBaseThingHandler] - scheduled onewire:counter2:owbridge:gcounter for refresh
2018-10-26 14:16:28.927 [TRACE] [.internal.handler.OwBaseThingHandler] - scheduled onewire:counter2:owbridge:gcounter for refresh
2018-10-26 14:16:29.713 [TRACE] [.internal.handler.OwBaseThingHandler] - refreshing onewire:counter2:owbridge:gcounter
2018-10-26 15:39:49.851 [TRACE] [.internal.handler.OwBaseThingHandler] - refreshing onewire:counter2:owbridge:gcounter
2018-10-26 17:03:10.830 [TRACE] [.internal.handler.OwBaseThingHandler] - refreshing onewire:counter2:owbridge:gcounter
2018-10-26 18:26:31.642 [TRACE] [.internal.handler.OwBaseThingHandler] - refreshing onewire:counter2:owbridge:gcounter
2018-10-26 19:49:52.278 [TRACE] [.internal.handler.OwBaseThingHandler] - refreshing onewire:counter2:owbridge:gcounter
2018-10-26 21:13:12.944 [TRACE] [.internal.handler.OwBaseThingHandler] - refreshing onewire:counter2:owbridge:gcounter
2018-10-26 22:36:33.370 [TRACE] [.internal.handler.OwBaseThingHandler] - refreshing onewire:counter2:owbridge:gcounter
2018-10-26 23:59:53.973 [TRACE] [.internal.handler.OwBaseThingHandler] - refreshing onewire:counter2:owbridge:gcounter
2018-10-27 01:23:14.004 [TRACE] [.internal.handler.OwBaseThingHandler] - refreshing onewire:counter2:owbridge:gcounter
2018-10-27 02:46:34.060 [TRACE] [.internal.handler.OwBaseThingHandler] - refreshing onewire:counter2:owbridge:gcounter
2018-10-27 04:09:54.620 [TRACE] [.internal.handler.OwBaseThingHandler] - refreshing onewire:counter2:owbridge:gcounter
2018-10-27 05:33:14.776 [TRACE] [.internal.handler.OwBaseThingHandler] - refreshing onewire:counter2:owbridge:gcounter
2018-10-27 06:56:35.188 [TRACE] [.internal.handler.OwBaseThingHandler] - refreshing onewire:counter2:owbridge:gcounter
2018-10-27 08:19:55.265 [TRACE] [.internal.handler.OwBaseThingHandler] - refreshing onewire:counter2:owbridge:gcounter
2018-10-27 09:43:16.060 [TRACE] [.internal.handler.OwBaseThingHandler] - refreshing onewire:counter2:owbridge:gcounter
2018-10-27 11:06:36.880 [TRACE] [.internal.handler.OwBaseThingHandler] - refreshing onewire:counter2:owbridge:gcounter
2018-10-27 12:29:57.091 [TRACE] [.internal.handler.OwBaseThingHandler] - refreshing onewire:counter2:owbridge:gcounter

from the events log:

cat events.log | grep G_Wind_Count
2018-10-26 14:16:26.129 [.ItemChannelLinkAddedEvent] - Link 'G_Wind_Count-onewire:counter2:owbridge:gcounter:counter0' has been added.
2018-10-26 14:16:30.007 [vent.ItemStateChangedEvent] - G_Wind_Count changed from NULL to 1439677
2018-10-26 15:39:49.891 [vent.ItemStateChangedEvent] - G_Wind_Count changed from 1439677 to 1448214
2018-10-26 17:03:10.865 [vent.ItemStateChangedEvent] - G_Wind_Count changed from 1448214 to 1463028
2018-10-26 18:26:31.912 [vent.ItemStateChangedEvent] - G_Wind_Count changed from 1463028 to 1469483
2018-10-26 19:49:52.314 [vent.ItemStateChangedEvent] - G_Wind_Count changed from 1469483 to 1472851
2018-10-26 21:13:12.979 [vent.ItemStateChangedEvent] - G_Wind_Count changed from 1472851 to 1477154
2018-10-26 22:36:33.570 [vent.ItemStateChangedEvent] - G_Wind_Count changed from 1477154 to 1482567
2018-10-26 23:59:54.013 [vent.ItemStateChangedEvent] - G_Wind_Count changed from 1482567 to 1490842
2018-10-27 01:23:14.042 [vent.ItemStateChangedEvent] - G_Wind_Count changed from 1490842 to 1498985
2018-10-27 02:46:34.294 [vent.ItemStateChangedEvent] - G_Wind_Count changed from 1498985 to 1509765
2018-10-27 04:09:54.726 [vent.ItemStateChangedEvent] - G_Wind_Count changed from 1509765 to 1519358
2018-10-27 05:33:14.809 [vent.ItemStateChangedEvent] - G_Wind_Count changed from 1519358 to 1529823
2018-10-27 06:56:35.385 [vent.ItemStateChangedEvent] - G_Wind_Count changed from 1529823 to 1541704
2018-10-27 08:19:55.468 [vent.ItemStateChangedEvent] - G_Wind_Count changed from 1541704 to 1558776
2018-10-27 09:43:16.176 [vent.ItemStateChangedEvent] - G_Wind_Count changed from 1558776 to 1574452
2018-10-27 11:06:37.074 [vent.ItemStateChangedEvent] - G_Wind_Count changed from 1574452 to 1588422
2018-10-27 12:29:57.290 [vent.ItemStateChangedEvent] - G_Wind_Count changed from 1588422 to 1606404

That’s really strange. What’s happening to the other sensors? The refresh cycle looks a little bit strange, too. What refresh time did you configure?

I must admit that I have no idea why this is happening. Please set the whol ebinding to TRACE and send the whole log from approx. 5m before the last working refresh until 5m after the next expected refresh. Since this will probably be huge, I’ll send you my email-address by private mail. Thanks for your help.

Hi !
In the beginning big thanks for Jan and others for your effort !!
I am testing ver 0.10.0.201810251625 of org.eclipse.smarthome.binding.onewire and have following problems:

  • can not change precision of DS18b20, thing config:

Bridge onewire:owserver:temp [ network-address=“192.168.1.100” ] {
temperature syp [ id=“28.FFEA15031503”, refresh=150 ]{
Type temperature : temperature [ resolution=“12” ]
}
}

All “reads” are with precision 0.25C, I have tried diff bit resolution (10, 11, 12) results are same.

01-Nov-2018 22:25:09.411 [TRACE] [inding.onewire.internal.handler.OwBaseThingHandler] - refreshing onewire:temperature:temp:syp
01-Nov-2018 22:25:09.412 [TRACE] [nding.onewire.internal.owserver.OwserverConnection] - owServerConnection already open, skipping input buffer
01-Nov-2018 22:25:09.414 [TRACE] [nding.onewire.internal.owserver.OwserverConnection] - wrote: messageType PRESENT, size 40, controlFlags 0x00000124, payload '28.FFEA15031503'
01-Nov-2018 22:25:09.458 [TRACE] [nding.onewire.internal.owserver.OwserverConnection] - read: return code 0, size 32, controlFlags 0x00000124, payload '(��????�'
01-Nov-2018 22:25:09.458 [TRACE] [nding.onewire.internal.owserver.OwserverConnection] - presence 28.FFEA15031503 : ON
01-Nov-2018 22:25:09.460 [TRACE] [inding.onewire.internal.handler.OwBaseThingHandler] - refreshing sensor 0 (28.FFEA15031503)
01-Nov-2018 22:25:09.461 [TRACE] [nding.onewire.internal.owserver.OwserverConnection] - owServerConnection already open, skipping input buffer
01-Nov-2018 22:25:09.463 [TRACE] [nding.onewire.internal.owserver.OwserverConnection] - wrote: messageType READ, size 55, controlFlags 0x00000104, payload '/28.FFEA15031503/temperature10'
01-Nov-2018 22:25:09.761 [TRACE] [nding.onewire.internal.owserver.OwserverConnection] - read: return code 12, size 36, controlFlags 0x00000104, payload '          19'
01-Nov-2018 22:25:09.763 [TRACE] [.smarthome.binding.onewire.internal.device.DS18x20] - read temperature 19 °C from 28.FFEA15031503

so it read 19C, while my sh script (using owread command) gives:
01112018 22:38:38 9 28.FFEA15031503/temperature12 Sypialnia 18.75 (cnt:4)

  • DS2408 - 8-channel switch. I have a problem how to configure it :frowning:. via thing file. Anyway I used PaperUI, found a switch, configured as output and assign to switch item.
    It seems that item update has no influence on 1wire switch (checked on owhttpd)
01-Nov-2018 22:25:08.522 [DEBUG] [nding.onewire.internal.owserver.OwserverConnection] - failed requesting messageType WRITE, size 26, controlFlags 0x00000104, payload '1'->return code 0, size 24, controlFlags 0x00000100, payload '' [I/O error: exception while reading packet - Read timed out]
01-Nov-2018 22:25:08.523 [INFO ] [ng.onewire.internal.device.AbstractDigitalOwDevice] - could not write ON to 7: I/O error: exception while reading packet - Read timed out
01-Nov-2018 22:25:08.523 [DEBUG] [ing.onewire.internal.handler.DigitalIOThingHandler] - writing to channel onewire:digitalio8:temp:29_BB791A000000:digital7 in thing onewire:digitalio8:temp:29_BB791A000000 not permitted (input channel)

and

01-Nov-2018 22:51:33.986 [TRACE] [nding.onewire.internal.handler.OwBaseBridgeHandler] - getting handler for Counter sensor (1 to go)
01-Nov-2018 22:51:33.987 [TRACE] [nding.onewire.internal.handler.OwBaseBridgeHandler] - Counter sensor initialized, refreshing
01-Nov-2018 22:51:33.987 [DEBUG] [onewire.internal.handler.CounterSensorThingHandler] - called CounterSensorThingHandler refresh now=1541109093963, lastRefresh=1541108911952, refreshInterval=200000 l+I=1541109111952
01-Nov-2018 22:51:34.629 [TRACE] [nding.onewire.internal.owserver.OwserverConnection] - owServerConnection already open, skipping input buffer
01-Nov-2018 22:51:34.632 [TRACE] [nding.onewire.internal.owserver.OwserverConnection] - wrote: messageType WRITE, size 26, controlFlags 0x00000104, payload '0'
01-Nov-2018 22:51:34.741 [TRACE] [onewire.internal.OwDynamicStateDescriptionProvider] - returning new stateDescription for onewire:digitalio8:temp:29_BB791A000000:digital7
01-Nov-2018 22:51:34.743 [TRACE] [onewire.internal.OwDynamicStateDescriptionProvider] - returning new stateDescription for onewire:digitalio8:temp:29_BB791A000000:digital7
01-Nov-2018 22:51:34.988 [TRACE] [nding.onewire.internal.handler.OwBaseBridgeHandler] - called owRefresher at 1541109094988, 15 childs
01-Nov-2018 22:51:34.989 [TRACE] [nding.onewire.internal.handler.OwBaseBridgeHandler] - getting handler for Temperature sensor (15 to go)
01-Nov-2018 22:51:34.990 [TRACE] [nding.onewire.internal.handler.OwBaseBridgeHandler] - Temperature sensor not initialized, skipping refresh
01-Nov-2018 22:51:34.990 [TRACE] [nding.onewire.internal.handler.OwBaseBridgeHandler] - getting handler for Octal Digital I/O (29.BB791A000000) (14 to go)
01-Nov-2018 22:51:34.991 [TRACE] [nding.onewire.internal.handler.OwBaseBridgeHandler] - Octal Digital I/O (29.BB791A000000) initialized, refreshing
01-Nov-2018 22:51:34.991 [TRACE] [nding.onewire.internal.handler.OwBaseBridgeHandler] - getting handler for Temperature sensor (13 to go)
01-Nov-2018 22:51:34.991 [TRACE] [nding.onewire.internal.handler.OwBaseBridgeHandler] - Temperature sensor initialized, refreshing

If someone can wrote how to config 1wire switch thing by hand I will be very grateful :slight_smile:

  • I dont know where is a problem but it looks that refreshing temp sensors stacked after few hours. I can see it since temp graph from OH2 is straight line, while temp changed on my 1wire network which I see on rrd graphs which are in depended from OH. Previusly I used binding OW 1.13, 2.4 and have no issued with that.
    I noticed that in OH log there is strange notice, there hundreds of them every few milisec.
    `

2018-11-01 12:38:42.776 [WARN ] [.core.thing.binding.BaseThingHandler] - Handler OwserverBridgeHandler tried updating the thing status although the handler was already disposed.

`

Hi @sherif,

I’m sorry, I can’t help you very much. This:

Thing onewire:temperature:c63d3edb:atest (onewire:owserver:c63d3edb) [ id="28.505AF0020000" ] {
    Channels:
        Type temperature : temperatureD "Test Temperature" [ resolution = "12" ]
}

works. However, it does not work with the “standard” channel name temperature. I can’t explain why.

I’ll have a look at the other issue.

Best Regards,

Jan

1 Like

@ntitley: Any news on the EDS sensors? I would like to bring that to an end any time soon.

Really sorry. I’ve been up to my eyes. I’ll get it downloaded and tested shortly.

I hope you downloaded the JAR before today, otherwise you‘ll get a version without EDS support. Contact me if you need another version.

No I didn’t manage to download it. The whole thing is going to have to wait until the Christmas week. Can you make a JAR available just for me to test? I’m really sorry about having slipped on this.

Please try this. It is with EDS support, otherwise the same like the release version (i.e. manually created things other than multisensors will not work).

Thanks. I’ve grabbed a copy and I’ll test it over the next few days

@ntitley, another thing: could you show me the owfs webpage for the BAE0910? Documentation is very… sparse regarding the OWFS support.

Did I send you BAE0910 data sheet? If not then it’s at

I’ll get an OWFS webpage shortly.

I’ve got openhab 2.4 installed now and will make a concerted effort to move my system over to openhab2 over the holidays. After that testing new devices will be easier.

1 Like

Well, I’ve still not got my system fully moved over to Openhab2 (problems with mysql authentication, amongst other things) however I can say that the EDS sensors are now working fine. I’ve checked temperature, pressure, humidity and light level and they all work correctly.

1 Like

Great news. I‘ll finish the documentation and tests them and we‘ll try to get it merged soon

Nigel, I had to do some minor changes and expect it to work, but could you test this? It contains the EDS sensor support and a lot of other improvements and bug fixes for other sensors.