Page 1 of 4

ELV Max! Radio Signal Protocol 868.3MHz

Posted: Fri Dec 23, 2011 10:54 am
by sfischer
Has anyone a description about the Radio Signals at 868.3MHz.
I want to get rid of the max! cube itself.
ELV offers an USB Stick, which can communicate directly with the devices. Maybe this stick can be used for the max! devices.

Is the Protocol KNX or M-BUS compatible?

Thanx,
SF

Re: ELV Max! Radio Signal Protocol 868.3MHz

Posted: Fri Dec 23, 2011 1:31 pm
by jrkalf
Hi SF,

I think your best oppertunity was to read the sticky topics at the start of this forum. The top one being: http://www.domoticaforum.eu/viewtopic.php?f=66&t=6654. The Max Protocol description :mrgreen:
Good luck on reading up on how it all works. Various people have been reverse engineering it.

Re: ELV Max! Radio Signal Protocol 868.3MHz

Posted: Mon Jan 02, 2012 4:58 pm
by matthijskooijman
I don't think any of those posts actually concern the RF protocol, only the (TCP) protocol to talk to the Cube. I haven't been looking at the RF protocol at all, but cool to hear that there's an USB stick (it wasn't there when I ordered my stuff last month). Do you know how it is intended to be used? The Windows/Mac application can perhaps use it to talk to the devices, or?

Re: ELV Max! Radio Signal Protocol 868.3MHz

Posted: Mon Jan 02, 2012 6:49 pm
by Digit
I think sfischer is talking about a CUL-like USB stick, cause I don't see a ELV MAX! USB stick anywhere.
The Max App can only communicate with the Cube, I think I've seen enough of the Java code to conclude that.

Re: ELV Max! Radio Signal Protocol 868.3MHz

Posted: Thu Jan 05, 2012 11:03 am
by KidE
hi guys,

I got some info from rudolf koenig how to read the CUL messages when the CUL is set to X67

=============================================================================
> this: p 3 432 784 848 400 4 6 7 FB 2D4467F5F0FFFA

3 # State Internal state of the state machine
3 == the program thinks it got a whole packet.

432us # zhi avg. high-time of the zero bit
784us # zlo avg. low- time of the zero bit
848us # ohi avg. high-time of the one bit
400us # olo avg. low- time of the one bit
- A zero bit consist of 0.4ms high followed by 0.8ms low
- A one bit consist of 0.8ms high followed by 0.4ms low

4 # Nsync Number of 0 sync bits
This paket had 4 0-bits followed by a 1 bit as sync sequence.


6 # Nbyte Number of whole bytes received
7 # Nbit Number of bits (last partial byte)
6*8+7 = 55 bits of total data (with start/stop/parity bits, if
present), i.e. the last bit in the last byte displayed as raw data
must be discarded.

FB # RSSI RSSI, if the RSSI bit is set, see X cmd
(ignore this)

2D446...# NNNN Raw data with parity/checksum, without sync.
Your task is to figure out, how many parity/stop bits are in this
sequence, and how the checksum is computed. I guess it has 5 bytes of
net data, 7 parity/stop/etc bits, and one checksum byte. But maybe I am
wrong.
If you are done, program this in culfw/rf_receive.c, and output the net
data (without parity and checksum) with a new prefix e.g. B1122334455

After that you have to figure out, which byte means what, and implement
a fhem module for it. :)
=============================================================================

Hope it will help you

Re: ELV Max! Radio Signal Protocol 868.3MHz

Posted: Thu Jan 05, 2012 11:29 am
by Digit
I have an unused CUL here, maybe I can help to provide more data if needed.

Re: ELV Max! Radio Signal Protocol 868.3MHz

Posted: Tue Feb 07, 2012 10:44 pm
by fermoll
I think that Sfisher is talking about this stick which is offered by ELV for the ETH comfort series thermostates. That is not working with the Max thermostates.
The Protokol of these are worked by Microcontroller.net members. The Max is looking similar and it would be interesting to compare the inside of the thermostates and find out the rfm protokol if that is possible. Maybe there is any electronic specialist to work with the max thermostate the same way as the microcontoller members.

Re: ELV Max! Radio Signal Protocol 868.3MHz

Posted: Mon Sep 10, 2012 2:46 am
by k2ssme
The firmware of CUL has now been extended to support MAX! You need to use current svn head version and recompile it with

#define HAS_MORITZ

in board.h

Enable receiver with:

Zr

send with:

Zs<data>

The data is framed as Homematic, the Payload is quite similar to the TCP findings. Security or protection has not been implemented. Componets are transmitting datagrams even without being paired. I.e. the Eco-Switch:

"AUTO":
Z0C13025000C20F000000000001
"ECO":
Z0C14025000C20F000000000000

Ventils are broadcasting any change like (spaces I have inserted):
Z 0F 00 0460 034EA0 000000 0009 3C3A 011B (this is ventil position - set temperature - current temperature)

Enjoy!

Re: ELV Max! Radio Signal Protocol 868.3MHz

Posted: Mon Sep 10, 2012 2:50 pm
by matthijskooijman
Hmm, does your example mean that the radiator valves are actually transmitting their current temperature? IIRC one of the limitations of the ELV Max! thing was that you couldn't get current temperature readings, but it seems that they could be made available, if your example is correct?

Re: ELV Max! Radio Signal Protocol 868.3MHz

Posted: Mon Sep 10, 2012 2:58 pm
by k2ssme
We already found (in German, sorry):

Z 0F 0004 60 034EA0 000000 00 09 3C 3A 011B -> HeatingThermoState
60 - HeatingThermostatState
034EA0 - eigene Adresse
000000 - Zieladresse == Broadcast
00 - Raum -> nicht zuheordnet / Hausgerät / für Befehl nicht gebraucht
09 ??
hex(3C)=60 ist die aktuelle Ventilstellung in %
hex(3A)=58 / 2 = 29 Grad - testweise eingestellte Zieltemperatur
011B = 283 / 10 = 28.3C aktuelle Temperatur


Z 0C 5804 42 029D99 000000 00 A2 22 -> SetPointAndCurrentTemperature
42 - SetPointAndCurrentTemperature
029D99 - eigene Adresse
000000 - Zieladresse == Broadcast
00 - Zielraum
A2 - Aktuelle Temperatur ? hex(A2) = 162 / 8 = 20,25°C? oder 162 /10 + 4,5(festes Offset) = 20,7°C
22 - Sollwert 17°C (hex(22)/2) eingestellt

other knows IDs are:

0 - SystemInformation
1 - Inclusion
2 - Answer
3 - TimeInformation
16 - ConfigWeekTemperatureProfile
17 - ConfigTemperatures
18 - ConfigValveFunctions
32 - AddLinkPartner
33 - RemoveLinkPartner
34 - SetGroupAddress
35 - RemoveGroupAddress
48 - ShutterConactState
64 - ControlMode
65 - SetPointTemperature
66 - SetPointAndCurrentTemperature
67 - ComfortTemperature
68 - EcoTemperature
69 - CurrentTemperatureAndHumidity
80 - PushButtonState
96 - HeatungThermostatState
-128 - LockManualControls
-127 - DaylightSavingTimeMode
-126 - SwitchDisplaySetPointActual
-16 - Reset
-15 - WakeUp
-1 - Test

i.e.:

Z 17 0000 00 029D99 00B917 00 12030049455130353132323534 -> SystemInfos
00 - SystemInformation
029D99 - eigene Adresse
00B917 - Zieladresse
00 - ZielRaum
120300 - ?
49455130353132323534 - IEQ0512254 - Seriennummer Gerät

Z 0A 000A 03 029D99 00B917 00 -> Anfrage Sende Uhrzeit
03 - TimeInformation
029D99 - eigene Adresse
00B917 - Zieladresse
00 - ZielRaum

Z 0F D200 03 00B917 029D99 00 0C 06 8E8365 -> Übertragung Uhrzeit
03 - TimeInformation
029D99 - eigene Adresse
00B917 - Zieladresse
00 - ZielRaum
0C - 12 - Jahreszahl - 2000
06 - Tag
8E8365 - ? müsste aktuelle Uhrzeit sein - sekundengenau

Re: ELV Max! Radio Signal Protocol 868.3MHz

Posted: Sun Oct 14, 2012 7:06 pm
by rmm
Hello.

I've spent all day reading the Max! posts here and Digit's blog.

Basically I was hoping the eQ-3 Max! wall thermostat would be able to be queried for current temperature (and the wireless radiator actuator, but more so the former), however, until reading this post it looked as if I was on to nothing.

So my question is, if you can now pull the current temperature over 868.3MHz, it should now be possible over the wired protocol via the Max! Cube? I've not invested in any items for testing yet, however, I've an application that needs to be pc-free, so USB wireless is out (and while I could use Enocean actuators and temp. sensors, for this scenario they would be hideously over-budget).

Great information here and saved me a lot of time. Thank you.

R.

Re: ELV Max! Radio Signal Protocol 868.3MHz

Posted: Sat Oct 20, 2012 4:13 pm
by sfischer
Hi,
I have developed a piggy-back board for the raspberry pi (rpi) with the RF22B transceiver module. Since some weeks, my wMBUS software stack is up and running. pls see the following entry @ rpi forum: http://www.raspberrypi.org/phpBB3/viewt ... 45&t=20432
My next plan is a sw module which can communicate with the max!.
To move further, I need the RF settings like the exact
freqency (868.3MHz?)
FSK or GFSK? modulation
cps (character per sec) transmision rate
sync word ?
preamble lenght
can someone place the information pls.?

The rpi is powerful enough to host a web gui and possibly a my-sql db. Can someone give a recommendation, which web package is the most suitable for that project.
Ruby, cgi, php?, which webserver (lighthttp, apache?)
I don't want to spend so much time to implement a web gui for it. Is there any free source code available to give a head start?

Thanks,
sfischer

Re: ELV Max! Radio Signal Protocol 868.3MHz

Posted: Sun Oct 21, 2012 10:16 am
by Digit
Do you know about this topic: http://www.mikrocontroller.net/topic/244432#2825928
The culfw code should provide you all the information you need, I guess.

Re: ELV Max! Radio Signal Protocol 868.3MHz

Posted: Sun Oct 21, 2012 12:32 pm
by sfischer
Thanks,
But I cant find the requested Info like cps, frequency...
Stefan

Re: ELV Max! Radio Signal Protocol 868.3MHz

Posted: Sun Oct 21, 2012 1:03 pm
by Digit
Well, I guess that will all be in the code somewhere, like for instance how the CC1101 registers are set?
CC1101 is well documented, so that should reveal the info you need. And the code of course.
Or post on the mikrocontroller forum if you don't have the time to search for it yourself?
Somebody must know the answers already :wink: