OTmonitor issues

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

Moderator: hvxl

Post Reply
paulvt
Starting Member
Starting Member
Posts: 4
Joined: Mon Mar 09, 2015 9:50 pm

OTmonitor issues

Post by paulvt »

Hello all,

I have just built my OTGW using the kit bought at Kiwi Electronics. I'm still having some small issues with it, but more about that later.
Mostly, I'm having two issues with the otmonitor (which is a neat program that can do some great things btw, thank for that).

It seems my boiler sometimes issues a warning that otmonitor (with relay mode, web mode, logging and alerts enabled) doesn't handle well. The trace is:

Code: Select all

invalid command name "0"
    while executing
"0" 
    (procedure "fault" line 8)
    invoked from within
"fault 0"
    (procedure "::alert::boilerfault" line 3)
    invoked from within
"alert boilerfault {*}$val"
    (procedure "otmessage" line 32)
    invoked from within
"otmessage [clock microseconds] $line [expr {$type & 7}] $id $data"
    (procedure "process" line 12)
    invoked from within
"process [append data $line]"
    (procedure "receive" line 6)
    invoked from within
"receive"
After this, the websockets/web server still respond a bit albeit weirdly, logging stops and I have to restart it to get it working again.
Because this boiler fault (which I think is because the boiler needs servicing) is detected a few times per day, I have to keep restarting the otmonitor relay/server a few times a day on my RPi, which is not really ideal ;)

Log message just before this happens:

Code: Select all

11:06:07.422613  T80190000  Read-Data   Boiler water temperature: 0.00
11:06:08.652749  T80190000  Read-Data   Boiler water temperature: 0.00
11:06:09.143356  B40191E00  Read-Ack    Boiler water temperature: 30.00
11:06:09.692890  T10010A00  Write-Data  Control setpoint: 10.00
11:06:09.792874  BD0010A00  Write-Ack   Control setpoint: 10.00
11:06:10.735983  T80000200  Read-Data   Status: 00000010 00000000
11:06:10.835991  B400002FF  Read-Ack    Status: 00000010 11111111
11:06:11.777137  T10100C00  Write-Data  Room setpoint: 12.00
11:06:11.788093  R00050000  Read-Data   Application-specific flags: 00000000 0
11:06:11.878101  BC0050000  Read-Ack    Application-specific flags: 00000000 0
The other issue I have is that I try to use otmonitor in daemon mode, but it still seems to attach something to X, so if I don't connect it to some VNCserver or X11 session on my RPi, otmonitor gets killed when I log out via SSH (with X11 forwarding enabled of course).
hvxl
Senior Member
Senior Member
Posts: 1965
Joined: Sat Jun 05, 2010 11:59 am
Contact:

Re: OTmonitor issues

Post by hvxl »

paulvt wrote:invalid command name "0"
That's a bug in OTmonitor. I will fix it in the next version. In case you want to fix it yourself, "return 0" on line 532 of alerts.tcl should be between braces.
paulvt wrote:The other issue I have is that I try to use otmonitor in daemon mode, but it still seems to attach something to X, so if I don't connect it to some VNCserver or X11 session on my RPi, otmonitor gets killed when I log out via SSH (with X11 forwarding enabled of course).
That's probably because by default the session dbus is associated with your X session. Either log in via SSH without X11 forwarding enabled (ssh -x), use a session dbus unrelated to your X session (dbus-launch), or have otmonitor attempt to connect to the system dbus (otmonitor --daemon --system).
Schelte
paulvt
Starting Member
Starting Member
Posts: 4
Joined: Mon Mar 09, 2015 9:50 pm

Re: OTmonitor issues

Post by paulvt »

Indeed, that resolved the issue, thanks! I don't know whether '0' can be a legitimate (OEM) fault code for a AWB boiler or this is some kind of fluke.

It was indeed D-Bus also, hadn't thought about that.
paulvt
Starting Member
Starting Member
Posts: 4
Joined: Mon Mar 09, 2015 9:50 pm

Re: OTmonitor issues

Post by paulvt »

I've found in the AWB ThermoMaster 3HR manual that error code 0 means "no error", but now the gateway mails me alerts about OEM fault code 0.
Is is possible to let it ignore that fault code specifically (I would think error code 0 usually means "no error" often anyway)? Because the boiler mentions this every 2 hours.
hvxl
Senior Member
Senior Member
Posts: 1965
Joined: Sat Jun 05, 2010 11:59 am
Contact:

Re: OTmonitor issues

Post by hvxl »

The opentherm specs do not define a fault code that means "no error". Assuming that it's going to be 0 may lead to incorrect behavior. In fact, for my Remeha boiler code 0 means a supply- or return sensor error and I get 255 if there is no error.

The proper way to determine whether there is an error is by looking at the fault bit in the slave status byte. OTmonitor is only supposed to send out mails about boiler errors when that bit is set. If it is sending the mail at other times, then that's a bug that needs to be investigated. Do you have a log for the time a mail was sent out when there was no error?
Schelte
paulvt
Starting Member
Starting Member
Posts: 4
Joined: Mon Mar 09, 2015 9:50 pm

Re: OTmonitor issues

Post by paulvt »

Ok, so given the wide interpretation of errors codes, it makes no sense to just ignore error 0 then.

I have found the relavant part of the log:

Code: Select all

12:18:54.676474  T80000200  Read-Data   Status: 00000010 00000000
12:18:54.776496  B40000203  Read-Ack    Status: 00000010 00000011
12:18:55.720536  T101813D1  Write-Data  Room temperature: 19.82
12:18:55.731567  R00050000  Read-Data   Application-specific flags: 00000000 0
12:18:56.953670  T101813D1  Write-Data  Room temperature: 19.82
12:18:56.964614  R00050000  Read-Data   Application-specific flags: 00000000 0
12:18:58.182822  T101813D1  Write-Data  Room temperature: 19.82
12:18:58.193758  R00050000  Read-Data   Application-specific flags: 00000000 0
12:18:58.282823  BC0050000  Read-Ack    Application-specific flags: 00000000 0
This results in the following e-mail at 12:18:58:

Code: Select all

Central heating system requires service. OEM fault code 0.
On a separate note, I also why it sometimes thinks room temperature is marked as an unknown data ID while it clearly seems to know it's room temperature:

Code: Select all

12:18:58.361701  A701813D1  Unk-DataId  Room temperature: 19.82
Last edited by paulvt on Mon Mar 23, 2015 9:46 pm, edited 1 time in total.
hvxl
Senior Member
Senior Member
Posts: 1965
Joined: Sat Jun 05, 2010 11:59 am
Contact:

Re: OTmonitor issues

Post by hvxl »

There it is. The boiler returns a status with the fault indication bit set. That's why otmonitor sends out the email.

There's nothing wrong with the Unk-DataId for the room temperature. OTmonitor uses the data written by the thermostat. Whether or not the boiler supports the message is irrelevant. For the gateway the usual rule applies for dataids it has learned that the boiler doesn't support: Substitute with an alternative message towards the boiler and in the end return the Unk-DataId response the boiler would have given.
Schelte
Post Reply

Return to “Opentherm Gateway Forum”