Screwed my OpenHab 2.2.0

Hello everyone,

I was updating my .items and .sitemap files and as a last feature I was trying to implement a pushbutton. When I realised that the sitemap structure I am using (groups) does not allow the implementation of pushbuttons. So I removed the , autoupdate=“false” from the .items file and the mappings=[ON=“Press”]
from the .sitemap and I saved. When I checked on my App, the Sitemap, that worked fine a few minutes before is not showing the groups anymore, but the frames are showing for each group the same three story house symbol and the FF_groupnames. When I try to tap on one group (e.g. kitchen) nothing happens. I checked both files for syntax errors but found nothing, then I checked the log viewer and there were several messages that the labels were not found. So I decided to reboot (sudo reboot via putty).

The system rebooted, my problem still exists, I can access the system via WinSCP, but now I cannot access the log viewer (connection failed).

I’ve screwed a working system!!! Have I overlooked something?
Can anyone please help me???

Bert

It would help if you posted your sitemap file.
And you could tale a look at the log files.

How did you check for syntax errors? Manually or did you look for syntax warnings in the logs or load the files in VSCode?

When you restart OH what do you see in the logs near the beginning where it is loading the .items files and .sitemap files?

With the limited information provided I’d guess that you accidentally deleted the ] or in some other way messed up the syntax on that .items file so those Items are not being loaded any more meaning there are no Items in your Groups on your sitemap anymore.

But like Christoph asks, we need the logs, sitemap file and relevant .items files. Please How to use code fences.

I’ll post the site map after I put the kids to bed. Where do i find the log files?

Yes, manually. I checked the lines I’ve edited before. . .

Manually checking files for syntax errors is an exercise in futility. One misplaced quote or closing paren whose matching one is many lines away can wreck the whole file.

You should use VSCode with the openHAB extension at a minimum to check the syntax for you when encountering errors like this. I recommend using it to edit all your OH files, but if you refuse, at least use it to check for errors.

Assuming you are running openHABian installed OH, they are in /ver/log/openhab2.

Here is the sitemap

//This is the Sitemap File

sitemap MuckiBude label="MuckiBude" {
    
    Frame label="Erdgeschoss" icon="groundfloor" {
        Group item=FF_Driveway 
        Group item=FF_Garage
        Group item=FF_Hallway
        Group item=FF_GuestRoom
        Group item=FF_Toilet
        Group item=FF_StorageRoom
        Group item=FF_Kitchen
        Group item=FF_LivingRoom
        Group item=FF_Lounge
        Group item=FF_Stairwell
        Group item=FF_Terrace
        Group item=FF_Outside
    }

    Frame label="Keller" icon="cellar" {
        Group item=GF_Boiler
        Group item=GF_StorageRoom
        Group item=GF_Library
        Group item=GF_Toilet
    }

    Frame label="Obergeschoss" icon="attic" {

        Group item=F2_Corridor
        Group item=F2_MasterBedroom
        Group item=F2_KidsRoom_1
        Group item=F2_KidsRoom_2
        Group item=F2_Bathroom
        Group item=F2_Stairwell
    }

    Frame {

        Text label="Licht" icon="light" {
            Default item=GF_Boiler_Light label="Technikraum"
            Default item=GF_StorageRoom_Light label="Lagerraum"
            Default item=GF_Library_Light label="Hobbyraum"
            Default item=GF_Toilet_Light label="Sauna/WC"
            Default item=FF_Hallway_Light label="Eingang und Flur"
            Default item=FF_GuestRoom_Light label="Gästezimmer"
            Default item=FF_Toilet_Light label="Gästebad"
            Default item=FF_StorageRoom_Light label="Abstellkammer"
            Default item=FF_Kitchen_Light label="Küche"
            Default item=FF_LivingRoom_Light label="Wohnzimmer Deckenlicht"
            Default item=FF_LivingRoom_Light_Spot label="Wohnzimmer Spots"
            Default item=FF_Lounge_Light label="Essbereich"
            Default item=FF_Stairwell_Light label="Treppe Keller-EG"
            Default item=FF_Garage_Light label="Garage"
            Default item=FF_Driveway_Light label="Einfahrt"
            Default item=FF_Terrace_Light label="Terrasse"
            Default item=FF_Outside_Light label="Draußen"
            Default item=F2_Bathroom_Light label="Badezimmer Spiegel"
            Default item=F2_Bathroom_Light_Spots label="Badezimmer Spots"
            Default item=F2_Corridor_Light label="Gang OG Wandleuchte"
            Default item=F2_Corridor_Light_Spots label="Gang OG Spots"
            Default item=F2_MasterBedroom_Light label="Schlafzimmer Wandleuchte"
            Default item=F2_MasterBedroom_Light_Spots label="Schlafzimmer Spots"
            Default item=F2_KidsRoom_1_Light label="Kinderzimmer 1"
            Default item=F2_KidsRoom_2_Light label="Kinderzimmer 2"
            Default item=F2_Stairwell_Light label="Treppe EG-OG"
        }

        Text label="Fenster" icon="window" {
            Default item=GF_Boiler_Window label="Technikraum"
            Default item=GF_StorageRoom_Window label="Lagerraum"
            Default item=GF_Library_Window_W1 label="Hobbyraum W1"
            Default item=GF_Library_Window_W2 label="Hobbyraum W2"
            Default item=GF_Library_Window_S label="Hobbyraum S"
            Default item=GF_Toilet_Window label="Sauna/WC"
            Default item=FF_Hallway_Window label="Eingang und Flur"
            Default item=FF_GuestRoom_Window label="Gästezimmer"
            Default item=FF_Toilet_Window label="Gästebad"
            Default item=FF_Kitchen_Window_W label="Küche W"
            Default item=FF_Kitchen_Window_N1 label="Küche N1"
            Default item=FF_Kitchen_Window_N2 label="Küche N2"
            Default item=FF_LivingRoom_Window label="Wohnzimmer"
            Default item=F2_Bathroom_Window label="Badezimmer"
            Default item=F2_MasterBedroom_Window_G label="Schlafzimmer groß"
            Default item=F2_MasterBedroom_Window_K label="Schlafzimmer klein"
            Default item=F2_KidsRoom_1_Window label="Kinderzimmer 1"
            Default item=F2_KidsRoom_2_Window label="Kinderzimmer 2"
        }

        Text label="Steckdose" icon="poweroutlet" {
            Default item=GF_Boiler_Power label="Technikraum"
            Default item=GF_StorageRoom_Power label="Lagerraum"
            Default item=GF_Library_Power label="Hobbyraum"
            Default item=GF_Toilet_Power label="Toilette"
            Default item=FF_GuestRoom_Power label="Gästezimmer"
            Default item=FF_StorageRoom_Power label="Abstellkammer"
            Default item=FF_Kitchen_Power label="Küche"
            Default item=FF_LivingRoom_Power label="Wohnzimmer"
            Default item=FF_Lounge_Power label="Essbereich"
            Default item=FF_Garage_Power label="Garage"
            Default item=FF_Driveway_Power label="Einfahrt"
            Default item=FF_Terrace_Power label="Terrasse"
            Default item=FF_Outside_Power label="Draußen"
            Default item=F2_Bathroom_Power label="Badezimmer"
            Default item=F2_MasterBedroom_Power label="Schlafzimmer"
            Default item=F2_KidsRoom_1_Power label="Kinderzimmer 1"
            Default item=F2_KidsRoom_2_Power label="Kinderzimmer 2"
        }

        Text label="Tür" icon="door" {
            Default item=FF_Hallway_Door label="Eingangstür"
            Default item=FF_GuestRoom_Door label="Gästezimmer Terasse"
            Default item=FF_LivingRoom_Door label="Wohnzimmer Terasse" 
            Default item=FF_Lounge_Door label="Erker"
        }

        Text label="Rolladen" icon="rollershutter" {
            Default item=FF_Hallway_Shutter label="Eingang und Flur"
            Default item=FF_GuestRoom_Shutter label="Gästezimmer"
            Default item=FF_Toilet_Shutter label="Gästebad"
            Default item=FF_Kitchen_Shutter_W label="Küche W"
            Default item=FF_Kitchen_Shutter_N1 label="Küche N1"
            Default item=FF_Kitchen_Shutter_N2 label="Küche N2"
            Default item=FF_LivingRoom_Shutter_S label="Wohnzimmer Terasse"
            Default item=FF_LivingRoom_Shutter_W label="Wohnzimmer Fenster"
            Default item=FF_Lounge_Shutter_S label="Essbereich S"
            Default item=FF_Lounge_Shutter_W label="Essbereich W"
            Default item=FF_Lounge_Shutter_N label="Essbereich N"
            Default item=F2_Bathroom_Shutter label="Badezimmer"
            Default item=F2_MasterBedroom_Shutter_G label="Schlafzimmer groß"
            Default item=F2_MasterBedroom_Shutter_K label="Schlafzimmer klein"
            Default item=F2_KidsRoom_1_Shutter label="Kinderzimmer 1"
            Default item=F2_KidsRoom_2_Shutter label="Kinderzimmer 2"
        }

        Text label="Heizung" icon="heating" {
            Default item=GF_StorageRoom_Heating label="Lagerraum"
            Default item=GF_Library_Heating label="Hobbyraum"
            Default item=GF_Toilet_Heating label="Sauna/WC"
            Default item=FF_Hallway_Heating label="Eingang und Flur"
            Default item=FF_GuestRoom_Heating label="Gästezimmer"
            Default item=FF_Toilet_Heating label="Gästebad"
            Default item=FF_Kitchen_Heating label="Küche"
            Default item=FF_LivingRoom_Heating label="Wohnzimmer"
            Default item=FF_Lounge_Heating label="Essbereich"
            Default item=F2_Bathroom_Heating label="Badezimmer"
            Default item=F2_MasterBedroom_Heating label="Schlafzimmer"
            Default item=F2_KidsRoom_1_Heating label="Kinderzimmer 1"
            Default item=F2_KidsRoom_2_Heating label="Kinderzimmer 2"
        }

        Text label="Temperatur" icon="temperature" {
            Default item=GF_StorageRoom_Temperature label="Lagerraum"
            Default item=GF_Library_Temperature label="Hobbyraum"
            Default item=GF_Toilet_Temperature label="Sauna/WC"
            Default item=FF_Hallway_Temperature label="Eingang und Flur"
            Default item=FF_GuestRoom_Temperature label="Gästezimmer"
            Default item=FF_Toilet_Temperature label="Gästebad"
            Default item=FF_Kitchen_Temperature label="Küche"
            Default item=FF_LivingRoom_Temperature label="Wohnzimmer"
            Default item=FF_Lounge_Temperature label="Essbereich"
            Default item=F2_Bathroom_Temperature label="Badezimmer"
            Default item=F2_MasterBedroom_Temperature label="Schlafzimmer"
            Default item=F2_KidsRoom_1_Temperature label="Kinderzimmer 1"
            Default item=F2_KidsRoom_2_Temperature label="Kinderzimmer 2"
        }
    }
}

which logfiles are needed? openhab.log and events.log ?

When I make changes to large files I normally clear the cache file to prevent OH from acting up.

https://community.openhab.org/t/clear-the-cache/36424?u=h102

https://www.openhab.org/docs/tutorial/logs.html#looking-to-the-logs

The events.log file contains what is happening on the Openhab event bus like sensors changing states, very handy for writting rules as you can see things changing in realtime. The other file openhab.log shows the output of all bindings and addons and allows you to fault find issues with a binding.

OK, so I should post the openhab.log?

here’s the probable event:

2018-09-19 16:08:38.829 [INFO ] [el.core.internal.ModelRepositoryImpl] - Refreshing model 'MuckiBude.sitemap'
2018-09-19 16:08:38.921 [WARN ] [el.core.internal.ModelRepositoryImpl] - Configuration model 'MuckiBude.sitemap' has errors, therefore ignoring it: [111,62]: mismatched input 'mappings=[' expecting '}'
[168,1]: extraneous input '}' expecting EOF

2018-09-19 16:08:44.300 [WARN ] [al.bus.KNXBindingDatapointReaderTask] - Autorefresh: Cannot read value for item 'F2_Corridor_Light' from KNX bus: timeout waiting for group read response: timeout
2018-09-19 16:08:44.303 [WARN ] [al.bus.KNXBindingDatapointReaderTask] - Autorefresh: Remaining retries for address '1/3/140' = '1'
2018-09-19 16:08:44.490 [INFO ] [est.sitemap.internal.SitemapResource] - Received HTTP GET request at 'http://192.168.178.53:8080/rest/' for the unknown sitemap 'MuckiBude'.
2018-09-19 16:08:44.525 [INFO ] [est.sitemap.internal.SitemapResource] - Received HTTP GET request at 'http://192.168.178.53:8080/rest/' for the unknown sitemap 'MuckiBude'.
2018-09-19 16:08:44.550 [INFO ] [est.sitemap.internal.SitemapResource] - Received HTTP GET request at 'http://192.168.178.53:8080/rest/' for the unknown sitemap 'MuckiBude'.
2018-09-19 16:08:44.575 [INFO ] [est.sitemap.internal.SitemapResource] - Received HTTP GET request at 'http://192.168.178.53:8080/rest/' for the unknown sitemap 'MuckiBude'.
2018-09-19 16:08:44.603 [INFO ] [est.sitemap.internal.SitemapResource] - Received HTTP GET request at 'http://192.168.178.53:8080/rest/' for the unknown sitemap 'MuckiBude'.

There is your syntax error right there.

MuckiBude.sitemap, line 111, column 62.

"mismatched input 'mappings=[' expecting '}'"

None of the Items in that .items file exist anymore because you have a syntax error in that file. I suspect this is the root of all your problems right now.

Line 111, position 62 of your MuckiBude.sitemap file has the error.

Looks like there might be an extra } bracket.

Looks like Rick beat me to it!!! :slight_smile:

not quite right. . . that “error” was already deleted before the final saving. . .

here’s the son of a b*:

2018-09-19 16:24:34.190 [INFO ] [el.core.internal.ModelRepositoryImpl] - Refreshing model 'MuckiBude.items'
2018-09-19 16:24:34.692 [WARN ] [el.core.internal.ModelRepositoryImpl] - Configuration model 'MuckiBude.items' has errors, therefore ignoring it: [130,49]: missing '}' at 'Dachfenster'
[130,68]: extraneous input '"   <rollershutter>   \t (F2_Corridor)\t\t\t    {knx="' expecting RULE_ID


I deleted a " when I deleted the , autoupdate=flase

The reason why I strongly recommend VSCode to everyone is that as soon as you hit that del key when you edited this file in the first place it would have told you that you had this error. It would have saved many hours of work for you and all others who are manually editing OH config files (which is pretty much all of us).

OK, OK. . .I’ve already installed it :smiley: but I forgot my samba share PW. . . I’m in the OH Config file now but first I started the update. . .

Ok, VSCode is running and looking fine! The structure is restored again and the app is showing all Groups and Items correctly. The “only” problem is that they are not working. Also the sitemap in BasicUI does not show the list symbol but a “!” flag.

warning

After checking in paper UI I realized, that the KNX-Binding got lost in the process (or at least I thought so; the binding was not visible on the bindings site). . . reinstalled it (I didn’t see that it was the 2.3.0 version), and the commands still won’t go thru to the KNX-Bus. . . in the log viewer I could see the openHAB commands but nothing happened on the hardware side (lights, switches, etc.). After I found out that the new version of the binding is different than the 1.12.0 version, I’ve uninstalled the 2.3.0 version agin and enabled the legacy bindings. By the way: why are installed legacy bindings not visble on the bindings site?

However everything is working again. Thank you guys!

Regards,

Bert

If you click on MuckiBude what happens?

There is a setting in PaperUI called “Show Legacy 1.x Bindings” in the Configuration → Services section. Depending on what package you originally chose after first installing OH, that option was probably unchecked.

In the docs, there is a checkbox to show the legacy bindings under and on the right side of the search box.

In general, OH encourages users to use the 2.x versions of bindings instead of the 1.x versions where there are two versions. So they make you deliberately choose to see and have available the 1.x versions. I’m ambivalent about the decision. I don’t like hiding data but this does keep new users in particular from choosing versions of bindings that are no longer updated or maintained.

Understood, and I’d love use the 2.x Version, but it seems the knx binding requires the items in a different form than the 1.x version in order to pass the comands to the bus. At the moment I don’t have the time to reconfigure everything, but sooner or later it will have to happen, since I’ll have to go away from my simplified group-structure in the sitemap in order to use adwanced features.

The MyOpenHAB binding also got lost in the last days. I think it was during the update process. But now, finaly everything works like 2 days before. . .