Protocol decoder:easymatic

From sigrok
Revision as of 14:50, 21 November 2017 by Platypus (talk | contribs) (→‎details)
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.
easymatic
File:Easymatic.jpg
Name EASYMATIC
Description Asynchronous, serial bus, differential
Status planned
License GPLv2+
Source code decoders/uart
Input logic
Output Easymatic protocol
Probes
Optional probes Thermostat, Boiler
Options invert_thermostat, invert_boiler

The easymatic protocol decoder can decode the thermostat Easymatic bus protocol used by De Dietrich.

Hardware

Differential link

The easymatic is linked to the boiler with two wires. This link can feed power to the easymatic. Easymatic can have two R4 accu in order to save data if the power cut. Boiler power is a 24V modulated with communication power.

Communication is always working.

[To be confirmed]

The hardware is similar to OpenTherm Specifications : - differential link - about 24V - tension modulation for boiler - intensity modulation for thermostat (easymatic) ?

In order to link with a logic analyzer Saleae Logic an interface must be done.

Electrical coding

[To be define]

Idle state

[To be define]

Protocol

Uart based

Whereas OpenTherm use Manchester code, the easymatic seems to be based on Universal Asynchronous Receiver Transmitter (UART). It's a : - 1200 bauds communication. - 8 bits of data - no parity - one stop bit

The bit order of the 8 data bits is LSB-first.

details

[To be discovered and detailed]

Frames are repeated twice

To be define : how an order is send

All frame are composed by 6 bytes Boiler frames begin with a byte in 01, 03, 05, 07, 09, 0B, 0D Thermostat frames begin with a "boiler beginning frame +1" : 02, 04, 06, 08, 0A, 0C, 0E

Frame 0A/0B

Frame (first byte) 2sd byte 3th byte 4th byte 5th byte 6th byte Comments
0A ? ? ? ? ?
0B ? ? ? T°C exterior example : 70,0°C = 0700DEC = 02BCHEX
0C 00? T°C max boiler Set point frost protection T°C exterior
0D 00? 00? 00? T°C exterior
0E Hour Day Minutes FF? FF?
01 40? T°C drink water T°C boiler water
02 C1? Set point room T°C day Set point room T°C night
03 00? ? ? ? ?
04 05? Set point frost protection room T°C Set point T°C drink water
05 Boiler bits command Set point frost protection room T°C Set point T°C drink water

Resources