TC:BUS Device Component tc_bus_device
This component extends the TC:BUS base component and simplifies communication with individual devices on the bus. It allows you to identify devices, access their memory, and read or modify their settings. See the section on supported models and settings for details.
The component also supports creating virtual bus devices.
Configuration
The tc_bus_device component offers the following configuration options:
| Option | Description | Required | Default |
|---|---|---|---|
id | Unique ID for the component. | ✅ | |
type | Device Group of the TC:BUS Device. E.g. Indoor Station, Outdoor Station. | ✅ | |
virtual | Enables the virtual device mode, assigning it a unique serial number/address based on the host MAC address so it can emulate or interact with other devices on the TC:BUS. | False | |
| Physical Device | |||
auto_configuration | When enabled, the component automatically identifies the device using the serial number and reads device memory based on the device model. | False | |
on_read_memory_complete | Defines actions to be triggered when the memory reading is complete. | ||
on_read_memory_failed | Defines actions to be triggered when the memory reading fails. | ||
on_identify_complete | Defines actions to be triggered when the identification of the indoor station is complete. Returns a ModelData object as the x variable. | ||
on_identify_unknown | Defines actions to be triggered when the identification of the indoor station completes with unknown model. | ||
on_identify_failed | Defines actions to be triggered when the identification of the indoor station times out. | ||
| Virtual Device | |||
on_incoming_call | Defines actions to be triggered when the virtual device receives a call. Returns a TelegramData object as the x variable. | ||
on_call_started | Defines actions to be triggered when the virtual device is connected to a call. Returns a TelegramData object as the x variable. | ||
on_call_ended | Defines actions to be triggered when the virtual device is disconnected from a call. Returns a TelegramData object as the x variable. | ||
on_call_failed | Defines actions to be triggered when the virtual device fails to call another indoor or outdoor station. |
Automatic Configuration Only physical
If you enable the auto_configuration option, the component automatically attempts to identify the device model as soon as the serial number is set. Once the model is successfully identified, the component will automatically read the device memory to retrieve its current configuration and state.
Number Inputs
The tc_bus_device Number Input platform offers the following configuration options:
| Option | Description | Required | Default |
|---|---|---|---|
tc_bus_device_id | ID of the related tc_bus_device instance. | ✅ | |
serial_number | Serial Number Input to set the serial number of the predefined bus device. | ✅ | |
parallel_serial_number | Parallel Serial Number Input to set the parallel serial number of the predefined bus device. | ||
address | Address Number Input to set the address for the outdoor station. | ||
volume_handset_door_call | Door Call Handset Volume Number Input to set the handset volume for door calls of the indoor station. | ||
volume_handset_internal_call | Internal Call Handset Volume Number Input to set the handset volume for internal calls of the indoor station. | ||
volume_ringtone | Ringtone Volume Number Input to set the ringtone volume of the indoor station. | ||
address_divider | Address Divider Input to set the address divider for the second outdoor station on the indoor station. | ||
door_readiness_duration | Door Readiness Duration Number Input to set the door readiness duration of the outdoor station. | ||
call_time_duration | Call Time Duration Number Input to set the call time duration of the outdoor station. | ||
door_opener_duration | Door Opener Duration Number Input to set the door opener duration of the outdoor station. |
Select Inputs
The tc_bus_device Select platform offers the following configuration options:
| Option | Description | Required | Default |
|---|---|---|---|
tc_bus_device_id | ID of the related tc_bus_device instance. | ✅ | |
model | Model Select to set the model of the device (used to read and write settings). Take a look at the supported models and settings. | ✅ | |
ringtone_entrance_door_call | Select to set the entrance door call ringtone of the indoor station. | ||
ringtone_second_entrance_door_call | Select to set the second entrance door call ringtone of the indoor station. | ||
ringtone_floor_call | Select to set the floor call ringtone of the indoor station. | ||
ringtone_internal_call | Select to set the internal call ringtone of the indoor station. |
Switches
The tc_bus_device Switch platform offers the following configuration options:
| Option | Description | Required | Default |
|---|---|---|---|
tc_bus_device_id | ID of the related tc_bus_device instance. | ✅ | |
use_long_door_opener | Always forces sending the long door opener telegram, including the serial number, instead of the short one. | ||
ringtone_mute | Switch to mute the ringtone of the indoor station. | ||
auto_answer_call | Switch to set the auto answer call setting of the indoor station. | ||
address_lock | Switch to lock the address of the outdoor station. | ||
calling_requires_door_readiness | Switch to set the requirement of door readiness for calls to the outdoor station. | ||
door_opener_requires_door_readiness | Switch to set the requirement of door readiness for opening the entrance door. | ||
door_opener_requires_active_call | Switch to set the requirement of an active call for opening the entrance door. |
Buttons
The tc_bus_device Button platform offers the following configuration options:
| Option | Description | Required | Default |
|---|---|---|---|
tc_bus_device_id | ID of the related tc_bus_device instance. | ✅ | |
identify_device | This starts the identification process to determine the device model by using it's serial number. | ||
read_memory | This reads the device memory if supported into a memory buffer. Take a look at the supported models and settings. |
Binary Sensors
The tc_bus_device Binary Sensor detects binary states such as doorbell presses. It can be configured to trigger based on a predefined telegram or on special cases.
Base Options
| Option | Description | Required | Default |
|---|---|---|---|
id | Unique ID for the binary sensor component. | ✅ | |
tc_bus_device_id | ID of the related tc_bus_device instance. | ✅ | |
sensor_type | Can be used as telegram listener or door opener state for virtual outdoor stations. Available options: telegram, virtual_door_opener. If set to telegram, the options below apply. | ✅ | telegram |
icon | Icon to represent the sensor in the UI. | mdi:doorbell | |
name | Name of the binary sensor. | Doorbell |
Sensor Type: telegram
This sensor type supports advanced triggering options, enabling it to respond to specific received telegrams.
| Option | Description | Required | Default |
|---|---|---|---|
auto_off | Time period after which the sensor automatically turns off, useful for momentary signals like doorbell presses. | 3s | |
type | Telegram type that will trigger the binary sensor, used alongside address and payload. | ✅ | |
address | 8-bit address that serves as a condition to trigger the binary sensor. If you set it to 255, it will catch all addresses. | 0 | |
payload | 32-bit payload that serves as a condition to trigger the binary sensor. | 0 |
Sensor Type: virtual_door_opener
This sensor type replaces the physical door opener when using a virtual outdoor station. It allows you to trigger a relay connected to a buzzer or door release mechanism to open the door. The activation duration follows the door opener time configured for the virtual outdoor station.
Callbacks
Read Memory Complete on_read_memory_complete Only physical
This callback allows you to detect a successful memory reading.
on_read_memory_complete:
- logger.log: "Completed memory reading!"Read Memory Failed on_read_memory_failed Only physical
This callback allows you to detect a failed memory reading. Most probably when a model doesn't support the related telegrams.
on_read_memory_failed:
- logger.log: "Failed to read Memory"Device Identification Complete on_identify_complete Only physical
This callback allows you to utilize the ModelData struct, accessible as the x variable.
on_identify_complete:
- logger.log: "Completed identification!"
- lambda: |-
std::string hexString = str_upper_case(format_hex(x));
ESP_LOGI("tc_bus", "Memory Dump: %s", hexString.c_str());Device Identification Complete (Unknown) on_identify_unknown Only physical
This callback allows you to detect an unknown model identification of the device. Most probably when a model is too old and doesn't support this process or is not implemented yet.
on_identify_unknown:
- logger.log: "Failed to identify device - unknown model!"Device Identification Failed on_identify_failed Only physical
This callback allows you to detect a failed identification of the device. Most probably when a model is too old and doesn't support this process.
on_identify_failed:
- logger.log: "Failed to identify device!"Incoming Call on_incoming_call Only virtual
Triggered when a call is received from an indoor or outdoor station. The TelegramData struct is available as x.
on_incoming_call:
- lambda: |-
if(x.type == TELEGRAM_TYPE_DOOR_CALL)
{
ESP_LOGI("tc_bus", "Incoming call from outdoor station %i", x.address);
}
else
{
ESP_LOGI("tc_bus", "Incoming call from indoor station %i", x.serial_number);
}Call Started on_call_started Only virtual
This callback allows you to detect when the call is connected to the virtual device. The TelegramData struct is available as x.
on_call_started:
- lambda: |-
if(x.type == TELEGRAM_TYPE_START_TALKING_DOOR_CALL)
{
ESP_LOGI("tc_bus", "Connected to outdoor station %i", x.address);
}
else
{
ESP_LOGI("tc_bus", "Connected to indoor station %i", x.serial_number);
}Call Ended on_call_ended Only virtual
This callback allows you to detect when the call is disconnected from the virtual device. The TelegramData struct is available as x.
on_call_started:
- lambda: |-
if(x.type == TELEGRAM_TYPE_START_TALKING_DOOR_CALL)
{
ESP_LOGI("tc_bus", "Disconnected (AS) Address: %i SN: %i", x.address, x.serial_number);
}
else
{
ESP_LOGI("tc_bus", "Disconnected (IS) Address: %i SN: %i", x.address, x.serial_number);
}Call Failed on_call_failed Only virtual
This callback allows you to detect when the incoming or outgoing call failed.
on_call_failed:
- logger.log: "Call failed!"Actions
Read Memory tc_bus_device.read_memory Only physical
This action allows you to read the memory of any supported device on the bus.
on_...:
- tc_bus_device.read_memory:
id: my_tc_bus_indoor_station_deviceIdentify devices tc_bus_device.identify Only physical
This action allows you to automatically detect the model of a supported device on the bus.
Note
Automatic identification is not available on all devices. At present, only indoor stations are fully supported in the identification process. Nonetheless, unsupported devices may still return identification data. If your device does so, please submit the response data as an issue so it can be included in future updates.
If no identification response is received, the device does not support the identification protocol. This usually applies to older hardware that predates this feature. In such cases, you will need to manually configure the device model.
on_...:
- tc_bus_device.identify:
id: my_tc_bus_indoor_station_deviceUpdate Settings tc_bus_device.update_setting
This action allows you to change the supported settings of any supported device on the bus. Take a look at the supported models and settings.
on_...:
- tc_bus_device.update_setting:
id: my_tc_bus_indoor_station_device
type: volume_ringtone
value: 7Update Doorbell Buttons tc_bus_device.update_doorbell_button Only physical
This action allows you to configure the physical doorbell buttons of an outdoor station device.
EXPERIMENTAL
This feature is experimental, use with caution.
Supported actions:
none— No action is assigned.door_call— Triggers a door call.light— Controls the light function.control_function— Executes a custom control function.
If no action is specified, the default value is none. If no payload is provided, it remains unset.
For matrix systems, you can use the button_col parameter. For other systems, this parameter is not required.
on_...:
- tc_bus_device.update_doorbell_button:
id: my_tc_bus_outdoor_station_device
button_row: 1
primary_action: door_call
primary_payload: 798906
secondary_action: control_function
secondary_payload: 8on_...:
- tc_bus_device.update_doorbell_button:
id: my_tc_bus_outdoor_station_device
button_row: 2
button_col: 4
primary_action: door_call
primary_payload: 798906
secondary_action: control_function
secondary_payload: 8Open Door tc_bus_device.open_door
This action allows you to activate the door opener for virtual outdoor stations and automatically send the appropriate door opener command to indoor stations, based on the current door readiness state and the associated outdoor station address.
on_...:
- tc_bus_device.open_door:
id: my_tc_bus_indoor_station_deviceAnswer Call tc_bus_device.answer_call Only virtual
This action allows you to answer an incoming call.
on_...:
- tc_bus_device.answer_call:
id: my_virtual_tc_bus_indoor_station_deviceEnd Call tc_bus_device.end_call Only virtual
This action allows you to end the current call.
on_...:
- tc_bus_device.end_call:
id: my_virtual_tc_bus_indoor_station_deviceInitiate Call tc_bus_device.call Only virtual
This action allows you to end the current call.
# This initiates a call to the outdoor station
# with address 0 from the virtual indoor station
on_...:
- tc_bus_device.call:
id: my_virtual_tc_bus_indoor_station_device
address: 0# This initiates a call to the indoor station
# with serial number 123456 from the virtual outdoor station
on_...:
- tc_bus_device.call:
id: my_virtual_tc_bus_outdoor_station_device
address: 123456# This initiates a call to the indoor station
# with serial number 123456 from the virtual indoor station
on_...:
- tc_bus_device.call:
id: my_virtual_tc_bus_indoor_station_device
address: 123456
internal: trueSending Telegrams tc_bus_device.send
You can send device related telegrams on the bus using this action.
on_...:
- tc_bus_device.send:
id: my_tc_bus_indoor_station_device
type: open_door
address: 0
payload: 0Example YAML Configuration
This is an example configuration for the component in ESPHome:
external_components:
- source: github://azoninc/doorman@dev
components: [ tc_bus, tc_bus_device ]
# TC:BUS configuration
tc_bus:
rx_pin: GPIO9
tx_pin: GPIO8
# TC:BUS Device configuration
tc_bus_device:
- id: my_tc_bus_indoor_station_device
type: indoor_station
auto_configuration: true
# Optional
on_read_memory_complete:
- logger.log: "Memory reading successful!"
on_read_memory_failed:
- logger.log:
format: "Memory reading failed!"
level: ERROR
on_identify_complete:
- logger.log:
format: "Identified Hardware: %s (v%i) | Firmware: %i.%i.%i"
args: [ 'model_to_string(x.model)', 'x.hardware_version', 'x.firmware_major', 'x.firmware_minor', 'x.firmware_patch' ]
level: INFO
on_identify_unknown:
- logger.log: "Setup: Unable to identify the Indoor Station, unknown model."
on_identify_failed:
- logger.log:
format: "Failed to identify the Indoor Station. Please select it manually."
level: ERROR
number:
- platform: tc_bus_device
tc_bus_device_id: my_tc_bus_indoor_station_device
serial_number:
name: "Serial Number"
# Optional
parallel_serial_number:
name: "Parallel Serial Number"
volume_ringtone:
name: "Volume: Ringtone"
volume_handset_door_call:
name: "Volume: Handset Door Call"
volume_handset_internal_call:
name: "Volume: Handset Internal Call"
select:
- platform: tc_bus_device
tc_bus_device_id: my_tc_bus_indoor_station_device
model:
name: "Model"
# Optional
ringtone_entrance_door_call:
name: "Ringtone: Entrance Door Call"
ringtone_second_entrance_door_call:
name: "Ringtone: Second Entrance Door Call"
ringtone_floor_call:
name: "Ringtone: Floor Call"
ringtone_internal_call:
name: "Ringtone: Internal Call"
switch:
- platform: tc_bus_device
tc_bus_device_id: my_tc_bus_indoor_station_device
# Optional
use_long_door_opener:
name: "Enforce long Door Opener Telegram"
ringtone_mute:
name: "Ringtone: Mute"
call_time_unlimited:
name: "Call Time Unlimited"
button:
- platform: tc_bus_device
tc_bus_device_id: my_tc_bus_indoor_station_device
# Optional
identify_device:
name: "Identify Device"
read_memory:
name: "Read Memory"
binary_sensor:
- platform: tc_bus_device
tc_bus_device_id: my_tc_bus_indoor_station_device
id: doorbell_sensor
name: "Outdoor Station Doorbell (parser)"
icon: "mdi:doorbell"
type: door_callexternal_components:
- source: github://azoninc/doorman@dev
components: [ tc_bus, tc_bus_device ]
# TC:BUS configuration
tc_bus:
rx_pin: GPIO9
tx_pin: GPIO8
# TC:BUS Device configuration
tc_bus_device:
- id: my_tc_bus_indoor_station_device
type: indoor_station
virtual: true
# Optional
on_incoming_call:
- logger.log: "Incoming call from indoor- or outdoor station"
on_call_started:
- logger.log: "Call started, bus is in audio mode"
on_call_ended:
- logger.log: "Call ended"
on_call_failed:
- logger.log: "Call failed due to timeout or missing response"
number:
- platform: tc_bus_device
tc_bus_device_id: my_tc_bus_indoor_station_device
serial_number:
name: "Serial Number"
# Optional
parallel_serial_number:
name: "Parallel Serial Number"
# If the calling address is > address divider,
# it's the second outdoor station, otherwise the first.
address_divider:
name: "AS Address Divider"
# 8 - 120 sec. (0 is unlimited)
call_time_duration:
name: "Maximum call duration"
select:
- platform: tc_bus_device
tc_bus_device_id: my_tc_bus_indoor_station_device
model:
name: "Model"
switch:
- platform: tc_bus_device
tc_bus_device_id: my_tc_bus_indoor_station_device
# Optional
use_long_door_opener:
name: "Always use long door opener Telegram"
auto_answer_call:
name: "Automatically answer calls"
call_time_unlimited:
name: "Call Time Unlimited"external_components:
- source: github://azoninc/doorman@dev
components: [ tc_bus, tc_bus_device ]
# TC:BUS configuration
tc_bus:
rx_pin: GPIO9
tx_pin: GPIO8
# TC:BUS Device configuration
tc_bus_device:
- id: my_tc_bus_outdoor_station_device
type: outdoor_station
virtual: true
# Optional
on_incoming_call:
- logger.log: "Incoming call from indoor station"
on_call_started:
- logger.log: "Call started, bus is in audio mode"
on_call_ended:
- logger.log: "Call ended"
on_call_failed:
- logger.log: "Call failed due to timeout or missing response"
number:
- platform: tc_bus_device
tc_bus_device_id: my_tc_bus_outdoor_station_device
serial_number:
name: "Serial Number"
# Optional
# With a single outdoor station the address is usually 0
address:
name: "Address"
# 8 - 120 sec. (0 is unlimited)
call_time_duration:
name: "Maximum call duration"
# 8 - 120 sec. (0 is unlimited)
door_readiness_duration:
name: "Door readiness duration"
# 0 - 15 sec.
door_opener_duration:
name: "Door opener duration"
select:
- platform: tc_bus_device
tc_bus_device_id: my_tc_bus_outdoor_station_device
model:
name: "Model"
switch:
- platform: tc_bus_device
tc_bus_device_id: my_tc_bus_outdoor_station_device
# Optional
address_lock:
name: "Address Lock"
calling_requires_door_readiness:
name: "Calling required door readiness"
door_opener_requires_active_call:
name: "Door Opener requires active call"
door_opener_requires_door_readiness:
name: "Door Opener requires door readiness"
binary_sensor:
- platform: tc_bus_device
tc_bus_device_id: my_tc_bus_outdoor_station_device
sensor_type: virtual_door_opener
name: "Door Opener Active"
on_press:
- logger.log: Turn on door opener
on_release:
- logger.log: Turn off door openerAdvanced Configuration
Accessing device settings
If you need to access the supported settings in the memory buffer you can use the get_setting and update_setting methods of the tc_bus_device instance. Take a look at the setting types.
Example (read and write setting):
button:
- platform: template
name: "Read Handset volume via lambda"
on_press:
- lambda: |-
ESP_LOGD("TAG", "Handset volume: %i", id(my_tc_bus_indoor_station_device)->get_setting(SETTING_VOLUME_HANDSET_DOOR_CALL));
- platform: template
name: "Set Handset volume via lambda"
on_press:
- lambda: |-
id(my_tc_bus_indoor_station_device)->update_setting(SETTING_VOLUME_HANDSET_DOOR_CALL, 7);
- platform: template
name: "Set Handset volume via action"
on_press:
- tc_bus_device.update_setting:
id: my_tc_bus_indoor_station_device
type: volume_handset_door_call
value: 7Accessing outdoor station doorbell button configuration
If you need to access the doorbell button configuration of an outdoor station in the memory buffer you can use the get_doorbell_button and update_doorbell_button methods of the tc_bus_device instance. Take a look at the doorbell button actions.
Example (read and write doorbell button actions):
button:
- platform: template
name: "Read Actions of Doorbell Button 1 via lambda"
on_press:
- lambda: |-
DoorbellButtonAction button = id(my_tc_bus_outdoor_station_device)->get_doorbell_button(1);
ESP_LOGD("TAG", "Primary Action: %x", button.primary_action);
ESP_LOGD("TAG", "Primary Payload: %x", button.primary_payload);
ESP_LOGD("TAG", "Secondary Action: %x", button.secondary_action);
ESP_LOGD("TAG", "Secondary Payload: %x", button.secondary_payload);
- platform: template
name: "Set Doorbell Button 1 via lambda"
on_press:
- lambda: |-
DoorbellButtonAction button;
button.primary_action = DOORBELL_BUTTON_ACTION_DOOR_CALL;
button.primary_payload = 123456;
id(my_tc_bus_outdoor_station_device)->update_doorbell_button(1, button);
- platform: template
name: "Set Doorbell Button 1 via action"
on_press:
- tc_bus_device.update_doorbell_button:
id: my_tc_bus_outdoor_station_device
button_row: 1
primary_action: door_call
primary_payload: 123456
- platform: template
name: "Set Matrix Button 1;5 via action"
on_press:
- tc_bus_device.update_doorbell_button:
id: my_tc_bus_outdoor_station_device
button_row: 1
button_col: 5
primary_action: door_call
primary_payload: 123456
- platform: template
name: "Reset Doorbell Button 1 via action"
on_press:
- tc_bus_device.update_doorbell_button:
id: my_tc_bus_outdoor_station_device
button_row: 1Doorbell Button Data
The DoorbellButtonConfig struct is used internally.
struct DoorbellButtonConfig
{
DoorbellButtonAction primary_action = DOORBELL_BUTTON_ACTION_NONE;
uint32_t primary_payload = DOORBELL_BUTTON_UNASSIGNED;
DoorbellButtonAction secondary_action = DOORBELL_BUTTON_ACTION_NONE;
uint32_t secondary_payload = DOORBELL_BUTTON_UNASSIGNED;
};Model Data
The ModelData struct is used internally in the identification process.
struct ModelData {
Model model = MODEL_NONE;
uint32_t firmware_version = 0;
uint8_t firmware_major = 0;
uint8_t firmware_minor = 0;
uint8_t firmware_patch = 0;
uint8_t hardware_version = 0;
uint8_t device_group = 0;
uint8_t memory_size = 0;
uint32_t capabilities = 0;
};Doorbell Button Actions
Here are the available doorbell button actions you can use to update the doorbell button configuration of your outdoor station:
- none DOORBELL_BUTTON_ACTION_NONE
- light DOORBELL_BUTTON_ACTION_LIGHT
- door_call DOORBELL_BUTTON_ACTION_DOOR_CALL
- control_function DOORBELL_BUTTON_ACTION_CONTROL_FUNCTION
Setting Types
Here are the available setting types you can use to update the settings of your bus devices.
Indoor Station
- ringtone_mute SETTING_RINGTONE_MUTE
- ringtone_floor_call SETTING_RINGTONE_FLOOR_CALL
- ringtone_entrance_door_call SETTING_RINGTONE_ENTRANCE_DOOR_CALL
- ringtone_second_entrance_door_call SETTING_RINGTONE_SECOND_ENTRANCE_DOOR_CALL
- ringtone_internal_call SETTING_RINGTONE_INTERNAL_CALL
- volume_ringtone SETTING_VOLUME_RINGTONE
- volume_handset_door_call SETTING_VOLUME_HANDSET_DOOR_CALL
- volume_handset_internal_call SETTING_VOLUME_HANDSET_INTERNAL_CALL
- as_address_divider SETTING_AS_ADDRESS_DIVIDER
- vas_address_divider SETTING_VAS_ADDRESS_DIVIDER
- use_long_door_opener_protocol SETTING_USE_LONG_DOOR_OPENER_PROTOCOL
- ambient_light_in_standby SETTING_AMBIENT_LIGHT_IN_STANDBY
- call_time_unlimited SETTING_CALL_TIME_UNLIMITED
- auto_answer_call SETTING_AUTO_ANSWER_CALL
Outdoor Station
- address SETTING_ADDRESS
- address_lock SETTING_ADDRESS_LOCK
- button_rows SETTING_BUTTON_ROWS
- calling_requires_door_readiness SETTING_CALLING_REQUIRES_DOOR_READINESS
- door_opener_requires_door_readiness SETTING_DOOR_OPENER_REQUIRES_DOOR_READINESS
- door_opener_requires_active_call SETTING_DOOR_OPENER_REQUIRES_ACTIVE_CALL
- door_opener_duration SETTING_DOOR_OPENER_DURATION
- door_readiness_duration SETTING_DOOR_READINESS_DURATION
- call_time_duration SETTING_CALL_TIME_DURATION
- has_code_lock SETTING_HAS_CODE_LOCK
Model Setting Availability
In general, all listed models are supported. However, some support configuration directly via Doorman, while others don't.
Classic Indoor Stations
Below is a list of available settings for specific classic indoor station models:
| Model | Available settings |
|---|---|
| TCS IMM1000 / Koch TCH30 | ringtone_entrance_door_call, ringtone_internal_call, ringtone_floor_call, ringtone_second_entrance_door_call, volume_ringtone, volume_handset_door_call, as_address_divider, ringtone_mute, parallel_serial_number |
| TCS IMM1100 / Koch TCHE30 | ringtone_entrance_door_call, ringtone_internal_call, ringtone_floor_call, ringtone_second_entrance_door_call, volume_ringtone, volume_handset_door_call, as_address_divider, ringtone_mute, parallel_serial_number |
| TCS IMM1110 / Koch TCHEE30 | ringtone_entrance_door_call, ringtone_internal_call, ringtone_floor_call, ringtone_second_entrance_door_call, volume_ringtone, volume_handset_door_call, as_address_divider, ringtone_mute, parallel_serial_number |
| TCS IMM1300 / Koch VTCH30 | ringtone_entrance_door_call, ringtone_internal_call, ringtone_floor_call, ringtone_second_entrance_door_call, volume_ringtone, volume_handset_door_call, as_address_divider, ringtone_mute, parallel_serial_number |
| TCS IMM1310 / Koch VTCHE30 | ringtone_entrance_door_call, ringtone_internal_call, ringtone_floor_call, ringtone_second_entrance_door_call, volume_ringtone, volume_handset_door_call, as_address_divider, ringtone_mute, parallel_serial_number |
| TCS ISH1030 / Koch TTS25 | ringtone_entrance_door_call, ringtone_internal_call, ringtone_floor_call, parallel_serial_number |
| TCS ISH3022 | parallel_serial_number |
| TCS ISH3030 / Koch TCH50 / Scantron Lux2 | ringtone_entrance_door_call, ringtone_internal_call, ringtone_floor_call, ringtone_second_entrance_door_call, volume_ringtone, volume_handset_door_call, as_address_divider, ringtone_mute, parallel_serial_number, call_time_unlimited |
| TCS ISH3130 / Koch TCH50P / Scantron LuxPlus | ringtone_entrance_door_call, ringtone_internal_call, ringtone_floor_call, ringtone_second_entrance_door_call, volume_ringtone, volume_handset_door_call, as_address_divider, ringtone_mute, parallel_serial_number, call_time_unlimited |
| TCS ISH3230 / Koch TCH50 GFA | ringtone_entrance_door_call, ringtone_internal_call, ringtone_floor_call, ringtone_second_entrance_door_call, volume_ringtone, volume_handset_door_call, as_address_divider, ringtone_mute, parallel_serial_number, call_time_unlimited |
| TCS IVE70 | None |
| TCS IVH3222 / Koch VTCH50 / Scantron VLux | ringtone_entrance_door_call, ringtone_internal_call, ringtone_floor_call, ringtone_second_entrance_door_call, volume_ringtone, volume_handset_door_call, parallel_serial_number |
| TCS IVH4222 / Koch VTCH50/2D | ringtone_entrance_door_call, ringtone_internal_call, ringtone_floor_call, ringtone_second_entrance_door_call, volume_ringtone, volume_handset_door_call, parallel_serial_number |
| TCS IVW9010 | None |
| TCS IVW9011 / Koch VTP10 | None |
| TCS IVW9030 / Scantron SLIM50T | None |
| TCS IVW9110 | None |
| TCS TTC-XX | ringtone_entrance_door_call, ringtone_internal_call, ringtone_floor_call, parallel_serial_number |
| TCS TTS-XX | ringtone_entrance_door_call, ringtone_internal_call, ringtone_floor_call, parallel_serial_number |
| TCS VMF / Koch VMF | ringtone_entrance_door_call, ringtone_internal_call, ringtone_floor_call, ringtone_second_entrance_door_call, volume_ringtone, volume_handset_door_call, as_address_divider, vas_address_divider, ringtone_mute, parallel_serial_number |
| TCS VMH / Koch VMH | ringtone_entrance_door_call, ringtone_internal_call, ringtone_floor_call, ringtone_second_entrance_door_call, volume_ringtone, volume_handset_door_call, as_address_divider, vas_address_divider, ringtone_mute, parallel_serial_number |
| TCS VML / Koch VML | ringtone_entrance_door_call, ringtone_internal_call, ringtone_floor_call, ringtone_second_entrance_door_call, volume_ringtone, volume_handset_door_call, as_address_divider, vas_address_divider, ringtone_mute, parallel_serial_number |
Handsfree Indoor Stations
Below is a list of available settings for specific handsfree indoor station models:
| Model | Available settings |
|---|---|
| Jung TKM IS | ringtone_entrance_door_call, ringtone_internal_call, ringtone_floor_call, ringtone_second_entrance_door_call, volume_ringtone, volume_handset_door_call, as_address_divider, ringtone_mute, parallel_serial_number, auto_answer_call, ambient_light_in_standby |
| Jung TKM ISV | ringtone_entrance_door_call, ringtone_internal_call, ringtone_floor_call, ringtone_second_entrance_door_call, volume_ringtone, volume_handset_door_call, as_address_divider, vas_address_divider, ringtone_mute, parallel_serial_number, auto_answer_call, ambient_light_in_standby |
| TCS CAI2000 / Koch Carus | ringtone_entrance_door_call, ringtone_internal_call, ringtone_floor_call, ringtone_second_entrance_door_call, volume_ringtone, as_address_divider, vas_address_divider, ringtone_mute, parallel_serial_number, call_time_unlimited, auto_answer_call |
| TCS CAIXXXX / Koch CAIXXXX | ringtone_entrance_door_call, ringtone_internal_call, ringtone_floor_call, ringtone_second_entrance_door_call, volume_ringtone, as_address_divider, ringtone_mute, parallel_serial_number, call_time_unlimited, auto_answer_call |
| TCS ECOOS / Koch ecoos / Scantron SLIM60T | ringtone_entrance_door_call, ringtone_internal_call, ringtone_floor_call, ringtone_second_entrance_door_call, volume_ringtone, as_address_divider, vas_address_divider, ringtone_mute, parallel_serial_number, call_time_unlimited, auto_answer_call, volume_handset_door_call |
| TCS IMM1500 / Koch TC30 | ringtone_entrance_door_call, ringtone_internal_call, ringtone_floor_call, ringtone_second_entrance_door_call, volume_ringtone, volume_handset_door_call, as_address_divider, ringtone_mute, parallel_serial_number |
| TCS IMM2100 / Koch TCE31 | ringtone_entrance_door_call, ringtone_internal_call, ringtone_floor_call, ringtone_second_entrance_door_call, as_address_divider, ringtone_mute, parallel_serial_number, call_time_unlimited, auto_answer_call |
| TCS ISW3030 / Koch TC50 / Scantron Stilux | ringtone_entrance_door_call, ringtone_internal_call, ringtone_floor_call, ringtone_second_entrance_door_call, volume_ringtone, volume_handset_door_call, as_address_divider, ringtone_mute, call_time_unlimited, auto_answer_call |
| TCS ISW3130 / Koch TC50P | ringtone_entrance_door_call, ringtone_internal_call, ringtone_floor_call, ringtone_second_entrance_door_call, volume_ringtone, volume_handset_door_call, as_address_divider, ringtone_mute, call_time_unlimited, auto_answer_call |
| TCS ISW3230 / Koch TC50 GFA | ringtone_entrance_door_call, ringtone_internal_call, ringtone_floor_call, ringtone_second_entrance_door_call, volume_ringtone, volume_handset_door_call, as_address_divider, ringtone_mute, call_time_unlimited, auto_answer_call |
| TCS ISW3330 / Koch TC50 BW | ringtone_entrance_door_call, ringtone_internal_call, ringtone_floor_call, ringtone_second_entrance_door_call, volume_ringtone, volume_handset_door_call, as_address_divider, ringtone_mute, auto_answer_call |
| TCS ISW3340 | ringtone_entrance_door_call, ringtone_internal_call, ringtone_floor_call, ringtone_second_entrance_door_call, volume_ringtone, volume_handset_door_call, as_address_divider, ringtone_mute, auto_answer_call |
| TCS ISW4100 / Koch TC31 | ringtone_entrance_door_call, ringtone_internal_call, ringtone_floor_call, ringtone_second_entrance_door_call, as_address_divider, ringtone_mute, parallel_serial_number, call_time_unlimited, auto_answer_call |
| TCS ISW42X0 | ringtone_entrance_door_call, ringtone_internal_call, ringtone_floor_call, ringtone_second_entrance_door_call, volume_ringtone, as_address_divider, ringtone_mute, parallel_serial_number, call_time_unlimited, auto_answer_call |
| TCS IVW2220 / Koch Sky | ringtone_entrance_door_call, ringtone_internal_call, ringtone_floor_call, ringtone_second_entrance_door_call, volume_ringtone, as_address_divider, vas_address_divider, ringtone_mute, parallel_serial_number, call_time_unlimited, auto_answer_call |
| TCS IVW2221 / Koch Sky R1.00 | ringtone_entrance_door_call, ringtone_internal_call, ringtone_floor_call, ringtone_second_entrance_door_call, volume_ringtone, as_address_divider, vas_address_divider, ringtone_mute, parallel_serial_number, call_time_unlimited, auto_answer_call |
| TCS IVW3011 / Koch Skyline Plus | ringtone_entrance_door_call, ringtone_internal_call, ringtone_floor_call, ringtone_second_entrance_door_call, volume_ringtone, as_address_divider, vas_address_divider, ringtone_mute, parallel_serial_number, call_time_unlimited, auto_answer_call |
| TCS IVW3012 / Koch Skyline/Aldup | ringtone_entrance_door_call, ringtone_internal_call, ringtone_floor_call, ringtone_second_entrance_door_call, volume_ringtone, as_address_divider, vas_address_divider, ringtone_mute, parallel_serial_number, call_time_unlimited, auto_answer_call |
| TCS SENSO PRO Audio / Koch 70 Series Audio | ringtone_entrance_door_call, ringtone_internal_call, ringtone_floor_call, ringtone_second_entrance_door_call, volume_ringtone, volume_handset_door_call, volume_handset_internal_call, as_address_divider, use_long_door_opener_protocol, ringtone_mute, parallel_serial_number, call_time_unlimited, auto_answer_call |
| TCS SENSO PRO Video / Koch 70 Series Video | ringtone_entrance_door_call, ringtone_internal_call, ringtone_floor_call, ringtone_second_entrance_door_call, volume_ringtone, volume_handset_door_call, volume_handset_internal_call, as_address_divider, vas_address_divider, use_long_door_opener_protocol, ringtone_mute, parallel_serial_number, call_time_unlimited, auto_answer_call |
| TCS TASTA Audio / Koch 60 Series Audio | ringtone_entrance_door_call, ringtone_internal_call, ringtone_floor_call, ringtone_second_entrance_door_call, volume_ringtone, volume_handset_door_call, volume_handset_internal_call, as_address_divider, use_long_door_opener_protocol, ambient_light_in_standby, ringtone_mute, parallel_serial_number, call_time_unlimited, auto_answer_call |
| TCS TASTA PRO Audio | ringtone_entrance_door_call, ringtone_internal_call, ringtone_floor_call, ringtone_second_entrance_door_call, volume_ringtone, volume_handset_door_call, volume_handset_internal_call, as_address_divider, use_long_door_opener_protocol, ambient_light_in_standby, ringtone_mute, parallel_serial_number, call_time_unlimited, auto_answer_call |
| TCS TASTA PRO Video | ringtone_entrance_door_call, ringtone_internal_call, ringtone_floor_call, ringtone_second_entrance_door_call, volume_ringtone, volume_handset_door_call, volume_handset_internal_call, as_address_divider, vas_address_divider, use_long_door_opener_protocol, ambient_light_in_standby, ringtone_mute, parallel_serial_number, call_time_unlimited, auto_answer_call |
| TCS TASTA Video / Koch 60 Series Video / Scantron VIVO | ringtone_entrance_door_call, ringtone_internal_call, ringtone_floor_call, ringtone_second_entrance_door_call, volume_ringtone, volume_handset_door_call, volume_handset_internal_call, as_address_divider, vas_address_divider, use_long_door_opener_protocol, ambient_light_in_standby, ringtone_mute, parallel_serial_number, call_time_unlimited, auto_answer_call |
| TCS TC2000 | ringtone_entrance_door_call, ringtone_internal_call, ringtone_floor_call, parallel_serial_number |
| TCS TC20F | ringtone_entrance_door_call, ringtone_internal_call, ringtone_floor_call, ringtone_second_entrance_door_call, parallel_serial_number |
| TCS TC20P | ringtone_entrance_door_call, ringtone_internal_call, ringtone_floor_call, ringtone_second_entrance_door_call, parallel_serial_number |
| TCS TC40 | ringtone_entrance_door_call, ringtone_internal_call, ringtone_floor_call, ringtone_second_entrance_door_call, volume_ringtone, volume_handset_door_call, as_address_divider, ringtone_mute, parallel_serial_number, call_time_unlimited, auto_answer_call |
| TCS TC40V2 | ringtone_entrance_door_call, ringtone_internal_call, ringtone_floor_call, ringtone_second_entrance_door_call, volume_ringtone, volume_handset_door_call, as_address_divider, use_long_door_opener_protocol, ringtone_mute, parallel_serial_number, call_time_unlimited, auto_answer_call |
| TCS VTC40 | ringtone_entrance_door_call, ringtone_internal_call, ringtone_floor_call, ringtone_second_entrance_door_call, volume_ringtone, volume_handset_door_call, as_address_divider, vas_address_divider, ringtone_mute, parallel_serial_number, call_time_unlimited, auto_answer_call |
| TCS VTC42V2 | ringtone_entrance_door_call, ringtone_internal_call, ringtone_floor_call, ringtone_second_entrance_door_call, volume_ringtone, volume_handset_door_call, as_address_divider, vas_address_divider, use_long_door_opener_protocol, ringtone_mute, parallel_serial_number, call_time_unlimited, auto_answer_call |
Outdoor Stations
Below is a list of available settings for specific outdoor station models:
| Model | Available settings |
|---|---|
| Jung TKM AS | door_opener_duration, door_readiness_duration, call_time_duration, address, address_lock, calling_requires_door_readiness, door_opener_requires_door_readiness, door_opener_requires_active_call |
| Jung TKM ASV | door_opener_duration, door_readiness_duration, call_time_duration, address, address_lock, calling_requires_door_readiness, door_opener_requires_door_readiness, door_opener_requires_active_call |
| TCS PAKV2 | door_opener_duration, door_readiness_duration, call_time_duration, address, address_lock, calling_requires_door_readiness, door_opener_requires_door_readiness, door_opener_requires_active_call, button_rows |
| TCS PAKV3 | door_opener_duration, door_readiness_duration, call_time_duration, address, address_lock, calling_requires_door_readiness, door_opener_requires_door_readiness, door_opener_requires_active_call, button_rows |
| TCS PDS0X | door_opener_duration, door_readiness_duration, call_time_duration, address, address_lock, calling_requires_door_readiness, door_opener_requires_door_readiness, door_opener_requires_active_call, button_rows, has_code_lock |
| TCS PDS0X/04 | door_opener_duration, door_readiness_duration, call_time_duration, address, address_lock, calling_requires_door_readiness, door_opener_requires_door_readiness, door_opener_requires_active_call, button_rows, has_code_lock |
| TCS PES | door_opener_duration, door_readiness_duration, call_time_duration, address, address_lock, calling_requires_door_readiness, door_opener_requires_door_readiness, door_opener_requires_active_call, button_rows, has_code_lock |
| TCS PUK | door_opener_duration, door_readiness_duration, call_time_duration, address, address_lock, calling_requires_door_readiness, door_opener_requires_door_readiness, door_opener_requires_active_call, button_rows |
| TCS PUK-DSP | door_opener_duration, door_readiness_duration, call_time_duration, address, address_lock, calling_requires_door_readiness, door_opener_requires_door_readiness, door_opener_requires_active_call, button_rows |
| TCS TCU2 | door_opener_duration, door_readiness_duration, call_time_duration, address, address_lock, calling_requires_door_readiness, door_opener_requires_door_readiness, door_opener_requires_active_call |
| TCS TCU3 | door_opener_duration, door_readiness_duration, call_time_duration, address, address_lock, calling_requires_door_readiness, door_opener_requires_door_readiness, door_opener_requires_active_call |
| TCS TCU3 + TCKE3 (1) | door_opener_duration, door_readiness_duration, call_time_duration, address, address_lock, calling_requires_door_readiness, door_opener_requires_door_readiness, door_opener_requires_active_call |
| TCS TCU3 + TCKE3 (2) | door_opener_duration, door_readiness_duration, call_time_duration, address, address_lock, calling_requires_door_readiness, door_opener_requires_door_readiness, door_opener_requires_active_call |
| TCS TCU3 + TCKE3 (3) | door_opener_duration, door_readiness_duration, call_time_duration, address, address_lock, calling_requires_door_readiness, door_opener_requires_door_readiness, door_opener_requires_active_call |
| TCS TCU3 + TCKE3 (4) | door_opener_duration, door_readiness_duration, call_time_duration, address, address_lock, calling_requires_door_readiness, door_opener_requires_door_readiness, door_opener_requires_active_call |
| TCS TCU3 + TCKE3 (5) | door_opener_duration, door_readiness_duration, call_time_duration, address, address_lock, calling_requires_door_readiness, door_opener_requires_door_readiness, door_opener_requires_active_call |
| TCS TCU3 + TCKE3 (6) | door_opener_duration, door_readiness_duration, call_time_duration, address, address_lock, calling_requires_door_readiness, door_opener_requires_door_readiness, door_opener_requires_active_call |
| TCS TCU4 | door_opener_duration, door_readiness_duration, call_time_duration, address, address_lock, calling_requires_door_readiness, door_opener_requires_door_readiness, door_opener_requires_active_call |
| TCS TCU4 + TCKE3 (1) | door_opener_duration, door_readiness_duration, call_time_duration, address, address_lock, calling_requires_door_readiness, door_opener_requires_door_readiness, door_opener_requires_active_call |
| TCS TCU4 + TCKE3 (2) | door_opener_duration, door_readiness_duration, call_time_duration, address, address_lock, calling_requires_door_readiness, door_opener_requires_door_readiness, door_opener_requires_active_call |
| TCS TCU4 + TCKE3 (3) | door_opener_duration, door_readiness_duration, call_time_duration, address, address_lock, calling_requires_door_readiness, door_opener_requires_door_readiness, door_opener_requires_active_call |
| TCS TCU4 + TCKE3 (4) | door_opener_duration, door_readiness_duration, call_time_duration, address, address_lock, calling_requires_door_readiness, door_opener_requires_door_readiness, door_opener_requires_active_call |
| TCS TCU4 + TCKE3 (5) | door_opener_duration, door_readiness_duration, call_time_duration, address, address_lock, calling_requires_door_readiness, door_opener_requires_door_readiness, door_opener_requires_active_call |
| TCS TCU4 + TCKE3 (6) | door_opener_duration, door_readiness_duration, call_time_duration, address, address_lock, calling_requires_door_readiness, door_opener_requires_door_readiness, door_opener_requires_active_call |
Controllers / Power Supplies
Below is a list of available settings for specific controller models:
| Model | Available settings |
|---|---|
| TCS BVS20 | None |
| TCS BVS30 | None |
| TCS NBV2600 | None |
| TCS NBV3210 | None |
| TCS VBVS05 | None |
| TCS VBVS30 | None |
Functional Extensions
Below is a list of available settings for specific functional extension models:
| Model | Available settings |
|---|---|
| TCS BRE2-EB | None |
| TCS BRE2-SG | None |
| TCS FAA1200 | None |
| TCS FFL1000 | None |
| TCS TOER2-EB | None |
| TCS TRE2 | None |