Remeha Calenta interface for Homeseer

Show or discuss your existing Home automation project here, so a detailed explanation!.....
Post Reply
Digit
Global Moderator
Global Moderator
Posts: 3388
Joined: Sat Mar 25, 2006 10:23 am
Location: Netherlands
Contact:

Re: Remeha Calenta interface for Homeseer

Post by Digit »

Guess I was lucky then, cause after figuring out what a packet was made of and finding the xml info, I wrote my code without (being able to) test; and it all worked instantly once I connected to my Calenta again. All I really needed was a 1 sample of each function code and the response. For what? To dissect it into the obvious parts.
And Recom can also support all models, so why can't it be done. And I'm sure, when you ask Avanta owners to send you some captured data so that a Plugin can be made, you'll get it. So that won't be the problem either.

I think, it's more likely that not finding out where the payload starts and ends is the problem, so you end up with peeking at a certain offset from the start of the packet. Don't do that.

I am quite certain that the Quinta status can be found in payload byte 33. If not, I am totally wrong :)

Oh btw, this doesn't mean I'm going to make such a Plugin :lol:
Menno
Member
Member
Posts: 179
Joined: Thu May 22, 2008 10:46 pm
Location: Netherlands

Re: Remeha Calenta interface for Homeseer

Post by Menno »

I agree with Robert that this can be done with a little help from others, the real problem i think is in the hardware. For the Calenta it is easy,
for the other models i am not sure, unless you have the official Remeha cable.

Robert, for the plugin: I didn't expect you to do :wink:
richard naninck
Member
Member
Posts: 123
Joined: Sun Nov 21, 2010 9:53 pm

Re: Remeha Calenta interface for Homeseer

Post by richard naninck »

OK... After I did the Avanta I ordered the Quinta interface and started writing the code based on what I already knew from the Avanta and the Quinta xml file. It got me started but for it to work you need more. Sure others can help with the data, but I have seen many differences between Avanta and Quinta.

Avanta: One message to get all data, startbyte, endbyte, length, checksum, 5 discrete messages to get error codes, reset code = 2 messages, send command bytes are always found in received data, 9600 baud.

Quinta: three messages to get all data, no startbyte - lengthbyte - endbyte, different or no checksum, 7 discrete messages to get error codes, reset code = 3 messages, send command bytes are found in monitoring data messages but not so in error messages, 4800 baud.

Error codes, reset codes are not described in the xml file.

Anyways, my intent wasn't hostile, I just meant to say that it is going to be hard to deliver a working plugin without the actual hardware. I guess the newer the Remeha, the easier it gets. Many similarties between Calenta and Avanta, but not so with Quinta.

And as for the payload being in byte 33... depend on how you think of byte 33. Quinta needs three messages to get three replies. You don't get all data in one reply. The xml file just keeps on increasing the byte number but in realtime byte 33 may very well be byte 6 in the 3rd message.

Below are the Quinta codes: no byte 33 there;) And as you can see, Quinta has way less values to output than Avanta does and even moreso the Calenta. I especially like the Calenta's Waterpressure and 'Tapdebiet'.. Avanta doesn't have those.

Byte 0 is actually byte 5 in the 13 byte message
- 1e Message -> Send: 0640AE000804 - Receive: 0D 00 AE 00 3D 24 DB 04 DB 00 00 3C EE
Byte 0 Min =-30 Max =120 Aanvoer Temp
Byte 1 Min =-30 Max =120 Retour Temp
Byte 2 Min =-30 Max =120 Boiler
Byte 3 Min =-30 Max =120 Buiten Temp
Byte 4 Min =-30 Max =120 Rookgas
Byte 5 Min =0 Max =6000 Toeren (7.500.000 / HexValue = RPM)
Byte 7 Min =0 Max =100 Setpunt


- 2e Message -> Send: 0640AE0808FC - Receive: 0D 00 AE 08 00 F2 BB 20 00 00 00 00 70
Byte 0 Min =0 Max =1 Bit 0 Boilervraag 0 = Nee, 1 = Ja
Byte 0 Min =0 Max =1 Bit 2 LDS 0 = Open, 1 = Dicht
Byte 0 Min =0 Max =1 Bit 3 Warmtevraag 0 = Nee, 1 = Ja
Byte 0 Min =0 Max =1 Bit 6 Min Gasdruk 0 = Uit, 1 = In
Byte 0 Min =0 Max =1 Bit 7 Ionisatie 0 = Ja, 1 = Nee
Byte 1 Min =0 Max =1 Bit 0 Gasklep 0 = Open, 1 = Dicht
Byte 1 Min =0 Max =1 Bit 2 Driewegklep 0 = Uit, 1 = In
Byte 1 Min =0 Max =1 Bit 6 Pomp 0 = Uit, 1 = Aan
Byte 2 Min =0 Max =6000 Bereik Toerental


- 3e Message -> Send: 0640AE1008F4 - Receive: 0D 00 AE 10 00 00 23 14 82 14 82 04 E2
Byte 0 Min =1 Max =100 Pomp Vermogen
Last edited by richard naninck on Sun Jan 09, 2011 1:35 pm, edited 1 time in total.
psmaaswinkel
Member
Member
Posts: 88
Joined: Wed Oct 27, 2010 8:36 pm

Re: Remeha Calenta interface for Homeseer

Post by psmaaswinkel »

At this moment I have allmost completed my calenta php script. At this moment I am monitoring which other received values within the known bytes I have to decode in the script. As soon as I believe it is complete I will post those values and messages...

For now I am looking for de byte positions of the 'teller' data, because I would also like to log these one time every day...

I am looking at Robert, because he has already implemented these in his website...

Regards,

Peter
___________________________________________________________________
iEase Home Control
Menno
Member
Member
Posts: 179
Joined: Thu May 22, 2008 10:46 pm
Location: Netherlands

Re: Remeha Calenta interface for Homeseer

Post by Menno »

As I rembember, the teller "uren onder spanning" is somewhere in function byte 8. Just read the XML for details on this.
phoenixb
Advanced Member
Advanced Member
Posts: 512
Joined: Thu Jul 23, 2009 1:00 pm
Location: Netherlands

Re: Remeha Calenta interface for Homeseer

Post by phoenixb »

the real problem i think is in the hardware. For the Calenta it is easy,
for the other models i am not sure, unless you have the official Remeha cable.
For the Avanta i have test it, it's the same cable.
At this moment i have build a small SMD TTL - RS232 cable that i have connect to a old RS232 to LAN converter that do the job for me.

Now for me the difficult task of getting the script working for the avanta_p1... :?
__________________
Digit
Global Moderator
Global Moderator
Posts: 3388
Joined: Sat Mar 25, 2006 10:23 am
Location: Netherlands
Contact:

Re: Remeha Calenta interface for Homeseer

Post by Digit »

As I rembember, the teller "uren onder spanning" is somewhere in function byte 8.
Right, byte 8 is involved: Actually it's ((256*byte8 )+byte9)*2.
Digit
Global Moderator
Global Moderator
Posts: 3388
Joined: Sat Mar 25, 2006 10:23 am
Location: Netherlands
Contact:

Re: Remeha Calenta interface for Homeseer

Post by Digit »

Hi Richard,
Byte 0 is actually byte 5 in the 13 byte message
- 1e Message -> Send: 0640AE000804 - Receive: 0D 00 AE 00 3D 24 DB 04 DB 00 00 3C EE
Byte 0 Min =-30 Max =120 Aanvoer Temp
Byte 1 Min =-30 Max =120 Retour Temp
Byte 2 Min =-30 Max =120 Boiler
Byte 3 Min =-30 Max =120 Buiten Temp
Byte 4 Min =-30 Max =120 Rookgas
Byte 5 Min =0 Max =6000 Toeren (7.500.000 / HexValue = RPM)
Byte 7 Min =0 Max =100 Setpunt
I just wanted to see how different it all is. I won't take this any further :)
So byte 5 is what I would call payload byte 0. The payload is what it's all about so I start counting there.
I picked a random Quinta XML (v2p2) and there I see:

Code: Select all

    <config type="field" group="1">
      <present name.nr="202" description.nr="202" unit.nr="312" />
      <function byte="0" expression="sgn(A)" format="0" />
      <limits min="-30" max="120" />
    </config>
Here it says that byte 0 is named 202 (Aanvoer), the Unit is 312 (degC). This can't be a coincidence.
So I am still under the impression that those XML files are there for a reason and are used to map the data somehow.
The only "problem" is, we don't know exactly how (byte 33 for status...). Maybe by concatenating the packets? I don't know.
Can't you open a port on your Internet connection to it? :lol:
richard naninck
Member
Member
Posts: 123
Joined: Sun Nov 21, 2010 9:53 pm

Re: Remeha Calenta interface for Homeseer

Post by richard naninck »

OK, last post about this one (just for fun of course)..

In the Avanta and Calenta you can start counting from the Payload (byte 0) because all data is in one message. The Quinta has three messages to provide all data. 8 bytes per message. When the xml file talks about byte 9, that is actually byte zero again from the second message. I am sure you get all that, but the point was that it is going to be hard to write a plugin when you don't have that info. The xml file is not talking about how many messages the info is contained in etc.

Btw: I use an old version of the Recom software since the xml files made more sense to me. I got the newest version on a USB stick when I bought the Quinta interface but the newer xml files are much bigger and set up different.

It took me a while to figure out how the actual ventilator RPM's were retieved. XML didn't provide that info as well or I may have missed it..
Digit
Global Moderator
Global Moderator
Posts: 3388
Joined: Sat Mar 25, 2006 10:23 am
Location: Netherlands
Contact:

Re: Remeha Calenta interface for Homeseer

Post by Digit »

And my last one :)
The counter data is scattered over 5 packets in the Calenta; 5 x 16 bytes. In my code I send 5 commands to the Calenta:

Code: Select all

procedure TCalenta.Counter;
begin

  SendCommand(00, $010B);
  SendCommand(00, $101C);
  SendCommand(00, $101D);
  SendCommand(00, $101E);
  SendCommand(00, $101F);

end;
These commands are queued; the next one will be sent when the response for the last sent command has arrived.
And there where the response is parsed I do (this is for a value in the 2nd set of 16 bytes in a counter response):

Code: Select all

 
      //    2nd counter response, bytes 16..31 which means that Payload[0] = byte 16

      //    <config type="field" group="3">
      //      <present name.nr="1769" description.nr="1769" />                        Total burner starts CHDHW
      //      <function byte="16" expression="(A.1 + B.0) x 8" format="0" />
      //    </config>
      Pin(BURNSTARTS).AsInteger := ((Payload[16-16]*256)+Payload[17-16]) * 8;
As you see, in fact I have to do "function byte mapping" myself too: the -16 you see twice. Another method would have been to wait for all responses and concatenate the payloads to 1 payload of 80 bytes, then I wouldn't have to do the mapping at all. The point is, this way the XML can be used. Maybe this can help you.
phoenixb
Advanced Member
Advanced Member
Posts: 512
Joined: Thu Jul 23, 2009 1:00 pm
Location: Netherlands

Re: Remeha Calenta interface for Homeseer

Post by phoenixb »

Hi,

At this moment i'm trying to getting it working.

When i use a sniffer i see that the request form recom is

Code: Select all

Request:
02 52 05 06 02 00 53 03 
Now i have use this request as follow in the script from menno:

Code: Select all

 hs.SendToComPort (2, CHR(02) & CHR(52) & CHR(05) & CHR(06) & CHR(02) & CHR(00) & CHR(53) & CHR(03))
But when i snif the port data i see this request:

Code: Select all

Request:
02 34 05 06 02 00 35 03  
And is not really the code i want to send, what do i wrong?
Grtz,
__________________
richard naninck
Member
Member
Posts: 123
Joined: Sun Nov 21, 2010 9:53 pm

Re: Remeha Calenta interface for Homeseer

Post by richard naninck »

CHR(52) = Hex 34. Your conversion is wrong.
Menno
Member
Member
Posts: 179
Joined: Thu May 22, 2008 10:46 pm
Location: Netherlands

Re: Remeha Calenta interface for Homeseer

Post by Menno »

The request for data must be:
hs.SendToComPort (5, CHR(02) & CHR(254) & CHR(01) & CHR(05) & CHR(08) & CHR(02) & CHR(01) & CHR(105) & CHR(171) & CHR(03))

You are also mixing up with decimal and hex conversion.
phoenixb
Advanced Member
Advanced Member
Posts: 512
Joined: Thu Jul 23, 2009 1:00 pm
Location: Netherlands

Re: Remeha Calenta interface for Homeseer

Post by phoenixb »

Is it possible that there are more options?
Because in the mean time i have found with a ascii/hex table the next combination:

hs.SendToComPort (2, CHR(02) & CHR(82) & CHR(05) & CHR(06) & CHR(02) & CHR(00) & CHR(83) & CHR(03))
what give me in the sniffer the same result
__________________
Menno
Member
Member
Posts: 179
Joined: Thu May 22, 2008 10:46 pm
Location: Netherlands

Re: Remeha Calenta interface for Homeseer

Post by Menno »

What combination does Recom send to the boiler when you hit the "Actuele waarden" button?
You can view this with your sniffer.
Post Reply

Return to “Home Automation Projects”