Error on Raspberry Pi OTGW version 4.2.5.

This Forum is about the Opentherm gateway (OTGW) from Schelte

Moderator: hvxl

Post Reply
wjr
Starting Member
Starting Member
Posts: 3
Joined: Wed Nov 25, 2015 10:48 am

Error on Raspberry Pi OTGW version 4.2.5.

Post by wjr »

Hi all,

I have been running otmonitor on a RPi for a long time now. Works brilliantly. From time to time I check the OTGW site for updates and sure enough there was a recent update and it looked like it could be smart to update. So I did but now starting it spits out these messages:

Code: Select all

no display name and no $DISPLAY environment variable
    while executing
"load /home/pi/otmonitor-ahf/lib/tk8.6/libtk8.6.so Tk"
    ("package ifneeded Tk 8.6.4" script)
    invoked from within
"package require Tk"
    (file "/home/pi/otmonitor-ahf/gui.tcl" line 2)
    invoked from within
"source /home/pi/otmonitor-ahf/gui.tcl"
    ("uplevel" body line 1)
    invoked from within
"uplevel #0 [list source [file join /home/pi/otmonitor-ahf $file]]"
    (procedure "include" line 2)
    invoked from within
"include gui.tcl"
    (file "/home/pi/otmonitor-ahf/otmonitor.tcl" line 1620)
    invoked from within
"source /home/pi/otmonitor-ahf/otmonitor.tcl"
    ("uplevel" body line 1)
    invoked from within
"uplevel #0 [list source [file join /home/pi/otmonitor-ahf $file]]"
    (procedure "include" line 2)
    invoked from within
"include otmonitor.tcl"
    (file "/home/pi/otmonitor-ahf/main.tcl" line 13)
Now I thought maybe it is related to the fact that I am not running from within a proper gui but even if I start it as daemon it comes back with errors even though it seems the built-in webserver seems to be up. This is a partial dump of the summary.html page.

Code: Select all

accept encoding: gzip deflate sdch
accept language: en-us en
accept transfercoding: 
errorinfo: can't read "list": no such variable
    while executing
"lsort $opt -index $index $list"
    ("uplevel" body line 49)
    invoked from within
"uplevel 1 "set # {}; $script; set #""
    (procedure "template" line 17)
    invoked from within
"template $body"
    (procedure "::wibble::zone::templatefile" line 8)
    invoked from within
"{*}$command $state"
    (procedure "getresponse" line 38)
    invoked from within
"getresponse $request"
*** INTERNAL SERVER ERROR (END #1) ***
So I tried building it by running ./tclkit-ahf otmonitor.vfs/main.tcl but even that doesn't work:

Code: Select all

no display name and no $DISPLAY environment variable
    while executing
"load /home/pi/otmonitor-ahf/lib/tk8.6/libtk8.6.so Tk"
    ("package ifneeded Tk 8.6.4" script)
    invoked from within
"package require Tk"
    (file "/home/pi/otmonitor-ahf/gui.tcl" line 2)
    invoked from within
"source /home/pi/otmonitor-ahf/gui.tcl"
    ("uplevel" body line 1)
    invoked from within
"uplevel #0 [list source [file join /home/pi/otmonitor-ahf $file]]"
    (procedure "include" line 2)
    invoked from within
"include gui.tcl"
    (file "/home/pi/otmonitor-ahf/otmonitor.tcl" line 1620)
    invoked from within
"source /home/pi/otmonitor-ahf/otmonitor.tcl"
    ("uplevel" body line 1)
    invoked from within
"uplevel #0 [list source [file join /home/pi/otmonitor-ahf $file]]"
    (procedure "include" line 2)
    invoked from within
"include otmonitor.tcl"
    (file "/home/pi/otmonitor-ahf/main.tcl" line 13)
I tried both on an old model RPi and a new model RPi. No lock though.

Any thoughts anybody? Thanks, Willem
hvxl
Senior Member
Senior Member
Posts: 1965
Joined: Sat Jun 05, 2010 11:59 am
Contact:

Re: Error on Raspberry Pi OTGW version 4.2.5.

Post by hvxl »

These errors/warnings have the following causes:

no display name and no $DISPLAY environment variable: Trying to run otmonitor in GUI mode without having a DISPLAY variable. Either make sure DISPLAY is set or don't run in GUI mode (using the --daemon option).

can't read "list": no such variable: Requesting a summary of messages when no messages have been received. Make sure the connection to the gateway is configured correctly and allow a few seconds after startup for messages to be received.

Note: This hasn't changed since many versions ago. So if you're only just getting these errors now, you must be doing something different.
Schelte
wjr
Starting Member
Starting Member
Posts: 3
Joined: Wed Nov 25, 2015 10:48 am

Re: Error on Raspberry Pi OTGW version 4.2.5.

Post by wjr »

Thanks. I thought so but because running in --daemon mode is not working either I thought maybe it was related. ALso I believe that previously I was able to start otmonitor in non-daemon mode without any issues. I did try again to start in daemon mode but nothing's happening at all. Not even a logfile is created but when I check the webinterface, i.e. the summary page I get this:

Code: Select all

...
errorinfo: can't read "list": no such variable
    while executing
"lsort $opt -index $index $list"
    ("uplevel" body line 49)
    invoked from within
"uplevel 1 "set # {}; $script; set #""
    (procedure "template" line 17)
    invoked from within
"template $body"
    (procedure "::wibble::zone::templatefile" line 8)
    invoked from within
"{*}$command $state"
    (procedure "getresponse" line 38)
    invoked from within
"getresponse $request"
hvxl
Senior Member
Senior Member
Posts: 1965
Joined: Sat Jun 05, 2010 11:59 am
Contact:

Re: Error on Raspberry Pi OTGW version 4.2.5.

Post by hvxl »

Repeating information you have already provided before isn't very helpful. And you still didn't indicate what has changed from the time things were working. The topic subject suggests you upgraded the OTGW firmware to 4.2.5, but from other information you provided it seems you upgraded otmonitor. I assume you picked the current version, which is 4.2.4.1.

You say "running in --daemon mode is not working either", but you are able to access otmonitor via your browser, so clearly something is running. The 'can't read "list": no such variable' error is not fatal. You get it when accessing the summary page when no messages have been received. My guess is that otmonitor is not connected to the gateway.

How do you start otmonitor? If you used to run './otmonitor --daemon', but you installed the new version as otmonitor-ahf and now run './otmonitor-ahf --daemon', it will not find the settings of the previous version. When installed as otmonitor-ahf, the program will look for its settings in ~/.otmonitor-ahfrc, while otmonitor used ~/.otmonitorrc. So either rename the binary to the same name you used before, copy/rename the settings file, or specify where the settings are on the command line. You can also provide the interface to use on the command line to make sure it will try to connect to the right device. For example something like:
  • ./otmonitor --daemon -f ~/.otmonitorrc /dev/otgw
Note: These are just my best guesses, which may be way off because you provided very little information to go on.
Schelte
wjr
Starting Member
Starting Member
Posts: 3
Joined: Wed Nov 25, 2015 10:48 am

Re: Error on Raspberry Pi OTGW version 4.2.5.

Post by wjr »

I am sorry, I thought the error was indeed relevant. Apparently not. I did run the daemon with a specific reference to the .otmonitorrc file and did try both with and without -ahf. I think I was jumping to the conclusion that something was wrong based on the errormessages (which I never did see before). After you mentioning that the message should not prevent it from working I uploaded the latest firmware again (4.2.5) on the otmonitor (4.2.4.1) and left the 'transfer EEPROM' setting unchecked. That went well (as it did before to be honest) and after that I resetted the OTGW and it started working. In hindside I think that I should have tried resetting the gateway earlier. Probably would have solved it. So, sorry to have bothered you, thanks for your help! The (for me) unexpected message threw me off I guess.

Thanks,
Willem
hvxl
Senior Member
Senior Member
Posts: 1965
Joined: Sat Jun 05, 2010 11:59 am
Contact:

Re: Error on Raspberry Pi OTGW version 4.2.5.

Post by hvxl »

wjr wrote:I uploaded the latest firmware again (4.2.5) on the otmonitor (4.2.4.1) and left the 'transfer EEPROM' setting unchecked. That went well (as it did before to be honest) and after that I resetted the OTGW and it started working. In hindside I think that I should have tried resetting the gateway earlier. Probably would have solved it.
Probably. At least the 'transfer EEPROM' setting is unlikely to have anything to do with your issue.
wjr wrote:The (for me) unexpected message threw me off I guess.
I have changed it in my code so future versions of otmonitor will not throw this error anymore.
Schelte
Post Reply

Return to “Opentherm Gateway Forum”