What is difference between Base ID and Chip ID?

This article applies to: EnOcean Radio Protocol

QUESTION

What is the Base ID and what is difference to the Chip ID? Can I send radio telegrams with Base ID?



ANSWER

Telegrams can be transmitted with Chip ID or with Base ID the purpose is following:

EnOcean modules usually send telegrams with their unique 32-bit Chip ID. This is also a security feature to prevent misuses by duplicating messages. But this makes the replacement of one unit for another difficult, because to teach-in the new module the learn process has to be repeated with every controller (i.e. controller is hard to reach).

The purpose of the Base ID is to allow a replacement of one unit with another unit without having to go through the learning procedure with every receiver. You simply set the same Base ID on the new unit as it was on the old one.

The actual sender ID of the devices using Base ID as sender ID is in the range of 128 IDs starting at the Base ID address. So two following Base ID have a gap of 128.

BASE ID EXAMPLE

Possible Base IDs: 
..., 0xFFFF_4680, 0xFFFF_4700, 0xFFFF_4780, 0xFFFF_4800, 0xFFFF_4880, 0xFFFF_4900, ...

SENDER ID based on BASE ID EXAMPLE

Used Base ID: 
0xFFFF_4680

Possible Sender IDs:
0xFFFF_4680, 0xFFFF_4681, 0xFFFF_4682, ...  0xFFFF_46FE,  0xFFFF_46FF

The Base ID is specified during programming in the configuration area. It is picked pseudo-randomized as a modulo function of the Chip id.

In order to allow a replacement of one unit with another unit, the Base ID range can be changed also via the serial interface (see related documents). The allowed ID range is from:

0xFF80_0000 to 0xFFFF_FFFE

.

This ranges provides a total number of 65536 possible BaseIDs.

Remote Management - (Remote Learn Call) can start a learn mode remotely, so devices can be teach-in also into controllers that are hard to reach.



0xFFFF_FFFF cannot be used. This address is reserved as broadcast ID.

In order to prevent misuse, this feature can only be used 10 times! The unique ID cannot be changed. Other Sender ID as the Chip ID and the Base IDs are not allowed.

The actual sending of a telegram with the original chip ID or one of the possible Base IDs is perfomed in the send command. So either:

  • calling the DolphinAPI send command directly (only Firmware developers)
  • calling the send command trough the serial protocol (ESP2 or ESP3)

you enter as Sender ID the ID you require. The Module checks if the Sender ID is acceptable and reports the result in the form a return message. The form of the return message depends on the interface you are using.

RELATED TO:
EnOcean Serial Protocol 3.0: http://www.enocean.com/esp3
TCM 300 Product Page: http://www.enocean.com/en/enocean_modules/tcm-300/
Remote Management Specification: http://www.enocean.com/fileadmin/redaktion/pdf/tec_docs/RemoteManagement.pdf