Bit by bit I'm getting a functional driver
The event generation is now in, so my floorplan shows the current status of the thermostat.
The only problem is that the current status should, I think, be something like
ON/HEAT/HEAT/20
(19)
With the (19) on the second line indicating the current temperature, and the 20 at the end of the first line the current setpoint.
Only, the last part of the first line is missing somehow. I get the first half of the second "H", but the rest is not there.
I suspect this has nothing to do with my driver, but more with some other settings I have, but I thought I'd check.
Also, from some forum posts I gathered that the temperature can actually contain a period for more precision, to report temperatures like 19.5 degrees. But I'm wondering if anything breaks if I put a string containing a fractional value in the "Temperature Changed" event, since the specification of that event's parameter states that it should be an integer. Any thoughts on that?
Anyway, I still have some stuff to do. I have to clean up the logging it generates, and I want it to synchronize the thermostat's time with the DCERouter (to facilitate automatic summer-/wintertime changes).
After that I'll start updating the wiki on how to write a GSD driver in Ruby, gathering all the things I've had to look up in one location. (It turned out that the "plutoID" from the event generation example on the wiki does not exist, I had to check the code to find out that it had to be device_.devid_ instead.)