EnOceanRadioProtocol1
EnOceanRadioProtocol1
November 9, 2020
REVISION HISTORY
The following major modifications and improvements have been made to the first version of
this document:
No Major Changes
1.0 Document created
1.1 Renaming from ERP to ERP1
1.2 Added physical layer
© EnOcean GmbH
All Rights Reserved
Important!
This information describes the type of component and shall not be considered as assured
characteristics. No responsibility is assumed for possible omissions or inaccuracies. Circuitry
and specifications are subject to change without notice. For the latest product specifica-
tions, refer to the EnOcean website: http://www.enocean.com.
As far as patents or other rights of third parties are concerned, liability is only assumed for
modules, not for the described applications, processes and circuits.
EnOcean does not assume responsibility for use of modules described and limits its liability
to the replacement of modules determined to be defective due to workmanship. Devices or
systems containing RF components must meet the essential requirements of the local legal
authorities.
The modules must not be used in any relation with equipment that supports, directly or
indirectly, human health or life or with applications that can result in danger for people,
animals or real value.
Components of the modules are considered and should be disposed of as hazardous waste.
Local government regulations are to be observed.
Packing: Please use the recycling operators known to you.
TABLE OF CONTENT
1 Introduction.................................................................................................... 4
2 Data unit description ........................................................................................ 5
3 Layer 1 – physical layer .................................................................................... 6
1.1 Carrier Frequency.................................................................................... 6
1.2 TX power ............................................................................................... 6
1.3 Sensitivity .............................................................................................. 6
1.4 Modulation ............................................................................................. 7
1.5 Modulation Depth .................................................................................... 7
1.6 Data Rate .............................................................................................. 7
1.7 Coding/ Packet Length determination ......................................................... 7
1.8 Preamble ............................................................................................... 9
1.9 Start of Frame ........................................................................................ 9
1.10 duation of a bit ....................................................................................... 9
1.11 Pre Preamble Emission ........................................................................... 10
1.12 Complete Frame Example ....................................................................... 10
4 Layer 2 – data link layer ................................................................................. 11
4.1 Introduction ......................................................................................... 11
4.2 Subtelegram timing ............................................................................... 11
4.3 Data integrity ....................................................................................... 13
4.3.1 General ............................................................................................... 13
4.3.2 The 8 bit summation hash function algorithm ............................................. 13
4.3.3 The 8 bit Cyclic Redundancy Check (CRC) hash function algorithm ................ 13
4.4 Listen before talk .................................................................................. 14
4.4.1 General ............................................................................................... 14
5 Layer 3 – network layer .................................................................................. 14
5.1 Introduction ......................................................................................... 14
5.2 Repeater.............................................................................................. 14
5.2.1 General ............................................................................................... 14
5.2.2 Time response for collision avoidance ....................................................... 14
5.2.3 Bits of repeater level in the status byte ..................................................... 15
5.3 Addressing ........................................................................................... 15
5.3.1 General ............................................................................................... 15
5.3.2 Encapsulation ....................................................................................... 16
1 Introduction
This document is the cover document of EnOcean Radio Protocol (ERP). The follow-
ing table summarizes the ERP protocol in OSI layers. This document gives partial
information about the Physical Layer, Data Link Layer and Network Layer.
Addressing telegrams
(ADT Encapsulation/Decapsulation)
Network Switch telegram conversion TELEGRAM
(choice/status processing)
Repeating (status processing)
Subtelegram Structure
Control Sum Calculation
Data Link Layer SUBTELEGRAM
Subtelegram Timing
Listen before talk
Frame
Subtelegram
Telegram
A frame is the representation of the encoded data on the physical layer. It includes
control and synchronization information for the receiver. A frame is transmitted as a
bit by bit serial sequence. A subtelegram is the result of a decoding process, in
which this control (PRE, SOF, INV and EOF) and synchronization information are re-
moved from the frame. The reverse mechanism to get a frame from a subtelegram is
the encoding process.
The subtelegrams are handled in the data link layer. The ERP protocol is designed to
work mostly as a unidirectional protocol without handshaking. To ensure transmis-
sion reliability three identical subtelegrams are transmitted within a certain time
range. Each transmitted subtelegram is an atomic unit and contains all the infor-
mation the composed telegram contains. The data structure of a subtelegram is
shown in
Figure 1.
1 1…X 4 1 1 byte
RORG DATA TXID STATUS HASH
These are the key parameter of the physical layer of the ERP1.
In the next chapters detailed explanations are given for the key parameters.
1.2 TX power
A transmitter must be able to transmit at least 6dBm (up to 14dBm are allowed) and be
still compliant to the requirements of the EN300220 with a 0dBi antenna.
The following measurements shall be carried out with a pseudo random noise sequence
being permanently emitted. The limits for the emissions are:
867.8…868.0MHz -30dBm with 1kHz Resolution Bandwidth (RBW)2
868.6…868.8MHz -30dBm with 1kHz RBW
867.6…867.8MHz -36dBm with 1kHz RBW
868.8…869.0MHz -36dBm with 1kHz RBW
867.0…867.6MHz -36dBm with 10kHz RBW
869.0…869.6MHz -36dBm with 10kHz RBW
862.0…867.0MHz -36dBm with 100kHz RBW
869.6…974.6MHz -36dBm with 100kHz RBW
The TX power is the measured peak power of the transmission.
1.3 Sensitivity
The sensitivity shall be measured with typical transmitter parameters and a single packet
that contains 10 bytes of data. This is equivalent to one byte telegram type, 4 bytes ID, 4
1
This value includes data rate deviations
2
Video bandwidth shall be 3 times higher than resolution bandwidth.
bytes data and one byte checksum. Only one of 1000 packets shall be lost at the sensitivity
limit.
Degradation of the sensitivity is allowed at minimum and maximum parameters.
1.4 Modulation
The modulations is ASK. OOK will not work due to bandwidth restrictions in the used chan-
nel.
20…
36d
B
The ERP1 used an 8 to 12 coding scheme. 8 bits are coded into 12 bits. This is mainly to
reduce the DC content of the transmitted signal.
The Sync/EOF field determines if another byte will follow. If the Sync-sequence is “01” an-
other byte will follow, if the Sync-sequence is “10” this was the last byte to be transmitted.
The Sync Sequence is called End of Frame (EOF) if it is “10”.
1.8 Preamble
The preamble length is 8 bits, starting with a one (10101010). Thus the first bit has low
power.
The following picture shows the transient emission of a transmitter. The bit timing shall be
measured at the locations given in this picture (6dBc).
The bit timing must not be exceeded!
3
Uses a Code violation
4
Recommendation: >±2µs
6dB
Repeaters have a different subtelegram timing range than the original transmitter.
For the receiver, the time between receiving the end of the first subtelegram re-
ceived and the end of the last subtelegram shall not exceed the RX maturity time
also when repeaters are involved.
The LBT technique (see 4.4) makes it possible to avoid collision by controlling the
subtelegram transmission timing, but it cannot completely guarantee the avoidance
of a collision.
Description Parameter
Maximum TX maturity time 40 ms
sd time ranges
Time ranges
1 2 3 4
ms 0 5 10 15 20 25 30 35 40
These 4 ranges (see Figure 2) will be used for sending a maximum of 3 subtele-
grams. The scheduling determines in what range what subtelegram number is al-
lowed to be sent. To avoid collisions when using repeaters, the subtelegram timing
of original and repeated telegrams differs depending only on the status of the re-
peated subtelegram and not on the configured level of the repeater. Table 2 defines
in which time range, which is determined by the numbered time slots, each subtele-
gram may be transmitted.
All subtelegrams will be transmitted within these time ranges. A second or third sub-
telegram transmission may only start if the previous subtelegram transmission has
been completed. There is no specified minimum pause between subtelegrams. The
transmitter and repeater is free to use any time slot within each time range.
The transmission start of the first subtelegram of an original transmitter starts the
time counting for the transmitter. The completion of the first subtelegram received
(which due to disturbance is not always the first one from the transmitter) starts the
counting in the receiver or the repeater.
If the wireless channel is occupied by the transmission of other transmitters, the LBT
functionality can delay the transmission until the end of t he TX maturity time is
reached.
If the verification of the intactness of the received subtelegram fails, the subtelegram is ignored.
The STATUS byte indicates which hash function is used. This is su mmarised in Table 3 below.
The sum of the value of each byte in the subtelegram except the hash value field is evaluat-
ed ignoring overflow, i.e. all bits beyond the byte are ignored. This one byte (8 bits) sum val-
ue is the hash of the 8-bit algorithm.
4.3.3 The 8 bit Cyclic Redundancy Check (CRC) hash function algorithm
This hash function is based on the Cyclic Redundancy Check alg orithm providing a hash value
of length one byte.
The algorithm starts with the first byte of the subtelegram (RORG) and calculates the remainder
of the division (modulo 2) by the generator polynomial x 8 + x 2 + x + 1 of the product x 8 multiplied
by the first byte of the subtelegram.
The result of this calculation is XORed with the next byte in the subtelegram and again the re-
mainder of the division is calculated as above.
This procedure is repeated until the last byte of the subtelegram excluding HASH is reached.
The remainder of the final division is used as hash value.
5.2 Repeater
5.2.1 General
Repeaters are necessary when the distance between sender and receiver is too large
to establish an adequate wireless connection. For bigger distances it is possible to
place a maximum of two repeaters in a row. The job of the repeater is to receive the
telegram from the sender or another repeater and send it again, so that the receiver
of the message can get it. But before it is resent the repeater modifies the STATUS
byte of the telegram. To limit the amount of repeated telegrams in an environment
with more repeaters we differ between two repeater levels:
0 0 0 0 Original sender
The Table 5 shows, how the repeater level bits have to be modified in the repeated
sub telegram:
5.3 Addressing
5.3.1 General
Addressing of telegrams is an essential feature for bidirectional communication. It is
designed to enable future incorporation of additional features.
5.3.2 Encapsulation
The addressing of a telegram is performed by using an encapsulation mechanism.
Encapsulated telegrams are recognized in the telegram type field (RORG) by the val-
ue 0xA6. The encapsulated field contains the original telegram that has to be ad-
dressed. The field destination identity DESTID of length four bytes is inserted pr e-
ceding the field TXID, the transmitting identity.
7 6 5 4 3 2 1 0
0 0xA6
1 RORG
2
3
7 6 5 4 3 2 1 0 DATA
4
0 RORG
5
1
6
2
DATA 7 DESTID –
3
8 0xF1F2F3F4
4
9
5
10
6
TXID 11
7 TXID
12
8
13
9 STATUS
14 STATUS
10 HASH
15 HASH