Page 4 of 12

Re: ELV MAX! protocol description

Posted: Wed Oct 31, 2012 10:11 am
by Kingsammy
Update for H-Response:

H:IEQ0123456,00b3b4,0102,00000000,355df98a,03,32,0c0a1f,0837,03,0000

Code: Select all

IEQ0123456  Serial number
    00b3b4      RF address, hexadecimal
    0102        Firmware version: 258, Other values 010e = 270,  Other values 010e = version 270,
                0111 = version 273
    00000000    ?
    355df98a    Connection IP
    03          Duty cycle in %. 03 (hex) means 3(dec)  %. Other collected values after
                sending some commands to cube: 1a = 26(dec) in  %, 1d(hex) = 29(dec) %, 2a = 42(dec)  %
    32          ?
    0c0a1f      Systemdate: 0C = Year (Year 2000), 0A = Month, 1F = Day --> 2012.10.31
    0837        Systemtime: 08(hex) = 8 hours, 37(hex) = 55 minutes --> 08:55
    03          ? Could be the HW-Revision of Cube
    0000        ?

Re: ELV MAX! protocol description

Posted: Thu Nov 08, 2012 12:11 am
by dasdandre
Hello,
Thanks for sharing all the information. If it's not allready known.
I've figured out some (more) bytes of the M-Response (the decoded part).

This is my interpretation:

first 2 bytes: Unknown(maybe METADATA-VERSION)
next 1 byte: number of rooms

followed by number of rooms times:
next 1 byte: roomID
next 1 byte: length of roomname
next (length of roomname) bytes: roomname
next 3 bytes: rf-adress of first room device (some kind of useless)


followed by:
next 1 byte: number of devices

followed by number of devices times:
next 1 byte: deviceType (1:thermostat,4:window-contact,5:eco-switch)
next 3 bytes: rf-adress of device
next 10 bytes: serial
next 1 byte: length of devicename
next (length of devicename) bytes: devicename
next 2 byte: roomid

Re: ELV MAX! protocol description

Posted: Thu Nov 08, 2012 3:02 pm
by Kingsammy
Can you please post your M-response Data base64-coded and the hex-values which you have used in your example?

Re: ELV MAX! protocol description

Posted: Fri Nov 09, 2012 4:11 pm
by dasdandre
Hi,

Here is my m-response:

Code: Select all

M:00,01,VgICAQpXb2huemltbWVyAh1mAgpCYWRlemltbWVyAg+dBgQCXFdKRVEwMTYyMTkzEEZlbnN0ZXJrb250YWt0IDEBAQIdZkpFUTAyNTU4OTQSVGhlcm1vc3RhdCBFc3NlY2tlAQECGLlKRVEwMjU1ODc1FFRoZXJtb3N0YXQgenUgS8O8Y2hlAQUCR7BKRVEwMjEzNTk2CkVjbyBTd2l0Y2gABAJeQkpFUTAxNjI2NzEQRmVuc3RlcmtvbnRha3QgMQIBAg+dSkVRMDI1MTY0Ng5UaGVybW9zdGF0IEJhZAIB
and the decoded hex-values:
(codeview seems to trim leading blanks, i replaced it by an underscore)

Code: Select all

V....Wohnzimmer. | 56 02 02 01 0a 57 6f 68 6e 7a 69 6d 6d 65 72 02 
.f..Badezimmer.. | 1d 66 02 0a 42 61 64 65 7a 69 6d 6d 65 72 02 0f 
....\WJEQ0162193 | 9d 06 04 02 5c 57 4a 45 51 30 31 36 32 31 39 33 
.Fensterkontakt  | 10 46 65 6e 73 74 65 72 6b 6f 6e 74 61 6b 74 20 
1....fJEQ0255894 | 31 01 01 02 1d 66 4a 45 51 30 32 35 35 38 39 34 
.Thermostat Esse | 12 54 68 65 72 6d 6f 73 74 61 74 20 45 73 73 65 
cke.....JEQ02558 | 63 6b 65 01 01 02 18 b9 4a 45 51 30 32 35 35 38 
75.Thermostat zu | 37 35 14 54 68 65 72 6d 6f 73 74 61 74 20 7a 75 
_K..che...G.JEQ0 | 20 4b c3 bc 63 68 65 01 05 02 47 b0 4a 45 51 30  (first char is blank)
213596.Eco Switc | 32 31 33 35 39 36 0a 45 63 6f 20 53 77 69 74 63 
h...^BJEQ0162671 | 68 00 04 02 5e 42 4a 45 51 30 31 36 32 36 37 31 
.Fensterkontakt  | 10 46 65 6e 73 74 65 72 6b 6f 6e 74 61 6b 74 20 
1.....JEQ0251646 | 31 02 01 02 0f 9d 4a 45 51 30 32 35 31 36 34 36 
.Thermostat Bad. | 0e 54 68 65 72 6d 6f 73 74 61 74 20 42 61 64 02 
. | 01

Re: ELV MAX! protocol description

Posted: Fri Nov 09, 2012 6:14 pm
by dasdandre
Some update to the L-response:

L-response of a window-contact is only 6 Bytes long.
bit-2 of byte-6 indicates the window open status.
EDIT:
bit-1 of byte-6 indicates the window open status.
0=closed,1=open

Code: Select all

if ((value & (1<<1)) !=0)
    console.log("Window open");


Re: ELV MAX! protocol description

Posted: Tue Nov 13, 2012 10:54 am
by Kingsammy
@dasandre

Yes, i can confirm your update on L-Response regarding the shuttercontact.

HEX-Values (Extract from a L-Response for a shuttercontact): 06 00 6a 48 09 12 12

Code: Select all

06                   Length of following data
00 6a 48             RF-Adress of shuttercontact
09                   ???
12                   ???
12(hex)              00010010(bin) --> Window open / 10(hex) = 00010000(bin) --> Window closed

Re: ELV MAX! protocol description

Posted: Sun Nov 25, 2012 3:05 pm
by Kawomm
Hi everybody.

Simple question: What is the Connection IP in the H-message? I have no glue which IP address it might be. It's not the ip address of the cube itself, it's not the ip address of the client connecting to the cube. At least as far as I can interprete the H-message replies.

Thanks in advance.

Re: ELV MAX! protocol description

Posted: Sun Nov 25, 2012 8:09 pm
by wwolkers
the H message contains the connection ID, no IP value in there.

Re: ELV MAX! protocol description

Posted: Tue Dec 11, 2012 6:10 pm
by erazor
Hi all.

Thanks a lot for this thread and all the work decoding the protocol.

I started to write a little python library for the communication:

Maybe someone could use it too.

URL is:
svn://erazor-zone.de/e-design/python/pyelvmax

Regards!

Re: ELV MAX! protocol description

Posted: Wed Dec 19, 2012 12:51 pm
by mrecosse
There is a web address in the C response for the cube. On mine this is http://www.max-portal.elv.de/cube (mine was supplied by ELV). If you open the page it says CubeServlet Executed.

Also in this response is CET and CEST which must be the time zones the cube is set to. Has anyone figured how to change these values through an 's' command? Anyone outside of Central Europe has to set all their schedules in CET :(

Re: ELV MAX! protocol description

Posted: Mon Jan 14, 2013 12:31 am
by blb
Hi all,

It seems the MAX! Thermostats are sending the actual temperature! I noticed in the MAX!buddy applications this is now implemented and found the protocol information in FHEM; it's in the L: message. I'm update later when I have more time, but I wanted to inform you already about this good News.

Re: ELV MAX! protocol description

Posted: Mon Jan 14, 2013 12:55 am
by Digit
I assume you mean the room thermostats?

Re: ELV MAX! protocol description

Posted: Mon Jan 14, 2013 11:13 am
by blb
No. I mean the radiator Thermostats! it's combined with the date in the "Date Until", if there is no Date/time until (so when mode =! Mode=10 (Vacation)), the actual temperature is given instead of the Date.

Re: ELV MAX! protocol description

Posted: Mon Jan 14, 2013 12:32 pm
by Digit
Ok. Do you also know which firmware version introduced this feature?

Re: ELV MAX! protocol description

Posted: Mon Jan 14, 2013 12:39 pm
by blb
I have Radiator Thermostats Firmware version 14, It does work on mine.