---
title: "PEbus description"
canonical: "https://docs.cuesystem.com/space/CVCHELP/556236868/PEbus%20description"
format: markdown
---
---

The type of the connection PEbus is shown in a Composer's "MyProject Resources: Connection". 

If the device is hardware connected directly to the controller's RS485 serial port, RS485ToPEbus must be inserted between the controller and the device in Composer's Configuration window. 

If the device is connected to the controller's RS232 serial port via RS232/RS485 converter PEC25, PEC25 must be inserted between the controller and the device in Composer's Configuration window. 

You have to use the same major version of all PE bus drivers (5. xx supported from CVC 1.50 or 4. xx supported in older CVC versions), otherwise, you will get a compilation error. 

PE drivers from version 5.00 support caching of data read from PE units. All data read from PE units and relayCUE-8 (button status, output status) are read by one type of internal command. To avoid unnecessary (time consuming) communication with PE units are data read from PE units cached for CacheTime. It is possible to set this CacheTime in each channel properties. Default CacheTime is :1.0 (one second). If the age of data is less than CacheTime, data are not read directly from the PE unit, but from this cache. If data are older, data are read always from PE units directly. 

You can modify CacheTime during runtime by Function SetCacheTime(newcachetime As Time). You can read current value of CacheTime by Function GetCacheTime() As Time. 

#### Addressing of PEbus units  

The PEbus has two different types of address spaces the first for Dimmers and the second for Relays. There are 10 different banks (0 – 9) to increase the maximum number of addressable channels. 

Each channel (channel means one Relay or one Dimmer channel) on PEbus must have a unique ChannelAddress within one Bank. That means a relay can share the same ChannelAddress within one Bank as a dimmer but two relays (or dimmers) cannot share the same ChannelAddress within one Bank. 

Dimmers can have up to 32 addresses (1 – 32) per Bank, whereas Relays can have up to 96 addresses (1 – 96) per Bank. 

For example:

Some relay with ChannelAddress 9 and Bank 1 does not conflict with a relay with ChannelAddress 9 and Bank 2. 

ChannelAddress for each channel is evaluated by the following formula: 

ChannelAddress = (Address *  TotalNumberOfChannels) + ChannelNumber 

Where: 

- The address is set in the Properties dialog box of the given PEbus unit
- TotalNumberOfChannels is the maximum number of channels on a given PEbus unit (for example 6 for PER610, 1 for PED108, 2 for PEA208)
- ChannelNumber is the number of channels on the given unit (1 to 6 for PER610,  1 for PED108, 1 or 2 for PEA208)

For example Relay3 on PER610 unit with Address 7 has channel address (7 * 6) + 3 = 45 

Note: For the PEF150 channel setting you have to set ChannelAddress directly. 

#### How to check address conflict in the configuration: 

For this functionality, you have to use drivers for PEbus devices with version 6.00 or newer. 

Run the project in the debug mode (simulation or hardware) with checked Display Debug Messages in the CUEunit where RS485toPEbus or PEC25 are connected 

If there is any conflict it will appear in the CVC Debug Window. For example: “WARNING: relayCUE-8 (UnitID 141) has to address conflict with another relay unit (UnitID 10933)”. 

#### Example of a connection in a Composer's Configuration window: 

![image](media://e0337e80-5263-4544-bf33-5f222364445f)

# Serial (Output only) 

The type of connection Serial (Output only) is shown in a Composer's "MyProject Resources: Connection". 

If the device is hardware connected directly to the controller's Serial or Ir serial output port, it is connected directly to the controller in Composer's Configuration window. 

#### Example of a connection in a Composer's Configuration window: 

![image](media://c39a9fa2-94d0-4edc-a317-d226d279fcca)