Unable to edit parameters on one thing Qubino Weather Station

I opened the file and found the weather station in there. I don’t see anything obvious but I will try removing the weather station tonight and see if there is anything straggling in there after I do that. I imagine I could do the same with the Items file.

I noticed this in my log as I deleted the Weather station from HABmin. Could this have anything to do with it?

==> openhab.log <==
2018-05-02 07:38:44.325 [ERROR] [e.internal.WriterInterceptorExecutor] - MessageBodyWriter not found for media type=text/plain, type=class java.util.Collections$EmptySet, genericType=class java.util.Collections$EmptySet.
2018-05-02 07:38:45.559 [ERROR] [e.internal.WriterInterceptorExecutor] - MessageBodyWriter not found for media type=text/plain, type=class java.util.Collections$UnmodifiableCollection, genericType=class java.util.Collections$UnmodifiableCollection.

Every time I click on a thing in HABmin I get this now. I’m not sure if that was happening before as I wasn’t really looking for it.

==> openhab.log <==
2018-05-02 07:40:35.309 [ERROR] [e.internal.WriterInterceptorExecutor] - MessageBodyWriter not found for media type=text/plain, type=class java.util.Collections$UnmodifiableCollection, genericType=class java.util.Collections$UnmodifiableCollection.

You are not alone:

I’ve not notced this - I’d be very surprised if it’s related to HABmin - presumably the same happens with PaperUI?

I can guess that something might have changed and it doesn’t now allow collections of data in configurations, but that’s a total guess. I’ll try and have a look at this in the next day.

Just tested it: no, nothing in the logs, not from showing things, not from editing things … :sunglasses:

Strange - then I guess HABmin is using a different REST endpoint to PaperUI which in itself is a bit surprising. Can you take a look in the browser debug console to see what the REST call is that’s causing the error?

I’m not familiar with the browsers debug console, but I tried:

Showing a node via HABmin gives me this in the console:

angular.js:12011 GET http://192.168.2.237:8080/rest/config-descriptions/channel:zwave:device:15ca6a108b9:node3:alarm_motion 404 (Not Found)
(anonymous) @ angular.js:12011
sendReq @ angular.js:11776
serverRequest @ angular.js:11571
processQueue @ angular.js:16383
(anonymous) @ angular.js:16399
$eval @ angular.js:17682
$digest @ angular.js:17495
$apply @ angular.js:17790
(anonymous) @ angular.js:25890
dispatch @ jquery.js:4435
elemData.handle @ jquery.js:4121
angular.js:12011 GET http://192.168.2.237:8080/rest/things/zwave:device:15ca6a108b9:node3/config/status 500 (Internal Server Error)
(anonymous) @ angular.js:12011
sendReq @ angular.js:11776
serverRequest @ angular.js:11571
processQueue @ angular.js:16383
(anonymous) @ angular.js:16399
$eval @ angular.js:17682
$digest @ angular.js:17495
$apply @ angular.js:17790
(anonymous) @ angular.js:25890
dispatch @ jquery.js:4435
elemData.handle @ jquery.js:4121
angular.js:12011 GET http://192.168.2.237:8080/rest/config-descriptions/channel:zwave:device:15ca6a108b9:node3:sensor_luminance 404 (Not Found)
(anonymous) @ angular.js:12011
sendReq @ angular.js:11776
serverRequest @ angular.js:11571
processQueue @ angular.js:16383
(anonymous) @ angular.js:16399
$eval @ angular.js:17682
$digest @ angular.js:17495
$apply @ angular.js:17790
(anonymous) @ angular.js:25890
dispatch @ jquery.js:4435
elemData.handle @ jquery.js:4121
angular.js:12011 GET http://192.168.2.237:8080/rest/config-descriptions/channel:zwave:device:15ca6a108b9:node3:battery-level 404 (Not Found)
(anonymous) @ angular.js:12011
sendReq @ angular.js:11776
serverRequest @ angular.js:11571
processQueue @ angular.js:16383
(anonymous) @ angular.js:16399
$eval @ angular.js:17682
$digest @ angular.js:17495
$apply @ angular.js:17790
(anonymous) @ angular.js:25890
dispatch @ jquery.js:4435
elemData.handle @ jquery.js:4121
angular.js:12011 GET http://192.168.2.237:8080/rest/config-descriptions/channel:zwave:device:15ca6a108b9:node3:alarm_tamper 404 (Not Found)
(anonymous) @ angular.js:12011
sendReq @ angular.js:11776
serverRequest @ angular.js:11571
processQueue @ angular.js:16383
(anonymous) @ angular.js:16399
$eval @ angular.js:17682
$digest @ angular.js:17495
$apply @ angular.js:17790
(anonymous) @ angular.js:25890
dispatch @ jquery.js:4435
elemData.handle @ jquery.js:4121
eventModel.js:21 message

Showing the same node in PaperUI does not even show me the rest call :sunglasses:

Going directly to the REST Api via browser (GET /config-descriptions/{uri}) and feeding with one of the above errors gives me for channel:zwave:device:15ca6a108b9:node3:alarm_motion:

curl -X GET --header "Accept: application/json" "http://192.168.2.237:8080/rest/config-descriptions/channel%3Azwave%3Adevice%3A15ca6a108b9%3Anode3%3Aalarm_motion"

http://192.168.2.237:8080/rest/config-descriptions/channel%3Azwave%3Adevice%3A15ca6a108b9%3Anode3%3Aalarm_motion

{
  "error": {
    "message": "Configuration not found: channel:zwave:device:15ca6a108b9:node3:alarm_motion",
    "http-code": 404
  }
}

Sorry if this is not the right way to do it :kissing_heart:

Thanks @sihui - so do you mean that the error in the log (MessageBodyWriter not found…) happens when you request the channel configuration? Maybe this is an ESH bug.

I remember a long time ago I fixed a bug in ESH which was throwing an error when requesting configuration for a thing that had no configuration - clearly this is a normal case…

Strange thing is, the error in the openhab.log only appears when I request (=show a thing) it from HABmin, not when I call it directly through the REST Api or from PaperUI.
Does not make a lot of sense, I know …

What does this exactly mean? That node I was calling does have a valid configuration (parameters?), is online and works fine.
BTW, that error message in the log seems to have no impact at all on the functionality, everything is running fine :+1:

When you display the thing, the system requests the configuration of the thing. It doesn’t at that point know if the device has any configuration defined, and in the past, if there was no configuration available, then there was an error. However as I say, some things will not have any configuration, so this is perfectly normal (not so much for ZWave as there’s nearly always configuration at thing level, but other bindings this is probably common).

Thx for your patience and explanation.
I checked “showing things via HABmin” for other bindings (Astro, Xiaomi, Amazon Dash, Hue, Harmony, …), I always get that error message.
Still nothing in the logs doing the same via PaperUI … and still everything works as expected, so don’t worry too much :rofl:

1 Like

I’ll try and have a look when I get a chance - my guess is that it’s a bug, or mis-reported error in ESH, but I’ll see if I can replicate this over the next couple of days.

Thanks for the investigation @sihui

1 Like

I removed the thing in habmin which stated it had also removed the items. Turns out the items lagged behind so I went back and cleared them using paper UI. I have now removed the qubino weather station thing and all the associated items. Made sure nothing appears in PaperUI or Habmin. I looked in both the thing and items file as indicated in the jsondb folder and do not see anything there straggling behind. I then tried to add the thing back via paper UI and just one item to test. Again I still can’t edit. Any clue as to what else I can try?

I completely removed the thing from my z-wave network, checked the jsondb thing and item files and found nothing. I re-added the thing and I am still having the same issue. @chris could this be an issue with the latest z-wave binding? Before I moved on to the one with security I had this device functioning with no issue ( meaning I could edit it). The device is getting telemetry from it’s sensors. Also I noticed it’s not working with security not sure if that means anything…

When editing the jsondb entries, did you stop openhab2 service prior?
Editing jsondb means: stop openHAB, edit, start openHAB.

I think it’s unlikely - there have been no significant changes to the ZWave binding for a long time. Unless the database has been changed for this device, actual code changes are next to none for about 5 months.

The binding doesn’t work with security - you need to use the development binding if you want to use security.

@chris I am sorry that’s what I meant, I am using the development binding as I have locks that I needed to add as well. The build I have is from 4/28 as you made changes to the Qubino RGB device and that’s working better now. My locks are also working with the security. Ill update it to 4/30 version now. It was working well prior to the change to the development binding. I’m not 100% sure it’s that but I know it was working because that was actually the first device I tested OH on before switching from Vera.

I didn’t need to edit it as there were no extra devices in there. But no I didnt realize I needed to stop openhab. Do you think I should stop it and take another look?

I did a little more troubleshooting, removed all visible things that had anything to do with this weather device. To my surprise there were still things and items lingering in there even though I had deleted everything from paper UI. I then validated with habmin that nothing existed. Next I rebooted the PC, started everything back up again, and then included the device again. I was really hoping this was it but nothing. As noted before, the device works however it just doesn’t let me edit the parameters. Trying one more time but I’m out of guesses at this point.

After removing the things and items from OH via habmin and refreshing with PaperUI to make sure there was nothing straggling, I stopped OH and once again confirmed the jsondb files. I didn’t find anything there but I did find another z-wave thing that wasn’t communicating again so I removed it in order to add again. I then shutdown the system plugged my stick into the zensys tool and verified all my z-wave devices. I found devices I thought were removed in OH still here. It didn’t let me remove them so I clicked on the replace button and aborted. This somehow tricks the stick and allows you to delete the thing correctly. I might have set the devices to failed in OH but I have tried so many things I can’t remember any more. Long story short, I left the z-wave stick clean as a whistle. I plugged it back into OH started the system and while it still doesn’t let me edit the item, it is now coming up with farenheit as opposed to celcius and doesn’t even give me the option to change it back. I’m ok with it because that’s what I need anyways but don’t understand why. I am assuming it is using the system settings now and this is why it’s giving me farenheit. I really wish I could understand why but I am willing to live with it for now. Thank you all for the help, hopefully it stays working as it is now.