Specifications
B&K Components Device Interface Protocol (BKC-DIP) Specification
Version 2.01.00
Updated 01/24/07
Page 53 of 54
Use of Receive and Transmit IDs
The primary use of the BKC-DIP Receive and Transmit IDs is to differentiate multiple units on a
common serial bus.
NOTE: The terms "receive" and "transmit" are relative to B&K Components device's
perspective. Host to unit commands (such as G, S, and D) are received by the B&K unit
and therefore contain the Receive ID. Conversely, data from the B&K unit to the host
are transmitted by the unit and therefore contain the Transmit ID of the unit.
The Receive ID
The first token of a host to B&K unit command is the Receive ID. The purpose of the Receive ID
is to allow commands to be sent to a specific unit on a common serial bus with multiple units. The
Receive ID is 00h by default. The Receive ID can be changed to any of 128 settings (00h – 7Fh)
on the RS-232 PORT SETUP menu.
NOTE: It is conceivable of a setup where multiple units could have the same Receive ID. This is
the case if it is desirable to have multiple units respond to the same commands. See the
Multiple Unit Example below for a detailed example.
The Transmit ID
The first token of a B&K unit to host command is the Transmit ID. The purpose of the Transmit
ID is to determine which unit generated a message a common serial bus with multiple units. The
Transmit ID is 00h by default. The Transmit ID can be changed to any of 128 settings (00h – 7Fh)
on the RS-232 PORT SETUP menu.
NOTE: Unlike the Receive ID, each should have a unique Transmit ID, otherwise it is impossible
to determine the source unit of a generated message. See the Multiple Unit Example
below for a detailed example.
A Multiple Unit Example
The following is an example of four B&K Components units (denoted as UNIT0, UNIT1, UNIT2
and UNIT3) on a common serial bus with the following settings:
Unit Receive ID Transmit ID
UNIT0 00h 00h
UNIT1 01h 01h
UNIT2 00h 02h
UNIT3 02h 03h
In this example, Host to B&K unit commands are sent to 3 different groups of units: UNIT0 and
UNIT2, UNIT1, and UNIT3. It is very important to note that UNIT0 and UNIT2 both respond to
the same commands from the host because they have the same Receive IDs. It is also important to
note that each unit has a unique Transmit ID (even UNIT0 and UNIT2).
The following example commands (and comments) should help clarify:
(01, G, S, 00;) request of UNIT1's V1 Title (0
th
system parameter)
(1, E, G, S, received cs16;cs16) echo confirming reception of command by UNIT1
(1, R, S, 0="V1 ";cs16) UNIT1 replies with its V1 Title
(02, G, P1=FF, 1;) request of UNIT3's Z1 current preset Volume
(3, E, G, P1=FF, received cs16; cs16) echo confirming reception of command by UNIT3










