Specifications

B&K Components Device Interface Protocol (BKC-DIP) Specification
Version 2.01.00
Updated 01/24/07
Page 7 of 54
(id, cc, ss, ... ; cs16)
where:
( indicates the start of a message
id is the Receive ID (for host to B&K unit commands) or Transmit ID (for B&K
unit to host commands)
, is the delimiter character
cc is the command
, is the delimiter character
ss is the command specifier
; is the checksum delimiter
cs16 is 16-bit (optional, but recommended) checksum
) indicates the end of a message
NOTE: Leading zeros may be omitted.
NOTE: Upper and lower case characters may be used interchangeably. (00,G, P01; 01EB ) is
equivalent to (00,g, p1; 1FB )
Begin/End Message Characters ()
The ASCII open/close parenthesis characters "(" and ")" not occurring in a double quoted string
indicate the beginning and the end of a BKC-DIP message respectively.
NOTE: Each time an open parenthesis character not occurring in a double quoted string is
received, the parsing engine's state is reset. In the event of the host and B&K
Component's device loses sync, the "(" will abort any previous state and the
communication will once again be in sync except under conditions detailed in New
Features of BKC-DIP V2.0 vs. V1.0.
ID, Receive or Transmit
The first token of each BKC-DIP message is an ID, which can be 00h 7Fh. This allows up to
128 different units to be controlled on the same serial bus.
NOTE: The receive ID FFh is also supported as a “global” or “universal” receive ID. Any B&K
Components device on a serial channel would respond to commands with a receive ID of
FFh regardless of their specified receive ID. This is useful for determining if any B&K
Components devices are on a particular serial channel.
See section entitled Use of Receive and Transmit IDs for more details.
Delimiter Character ,
All members of a BKC-DIP message are delimited by "," an ASCII comma (with the exception of
the checksum delimiter ";", see below).
NOTE: Unlike V1.0 BKC-DIP, commas are allowed in double quoted strings (such as text
strings as in "Comma, IS valid"). Refer to New Features of BKC-DIP V2.0 vs. V1.0 for
details.
Checksum Delimiter ;
The checksum of each message is optionally transmitted embedded in the message to assure data
has not been corrupted during transmission. The checksum is the 4 digits hexadecimal digits (0-F)
directly following the ";" delimiter. Software designed to parse BKC-DIP serial streams can
easily detect the ";" delimiter, thus making message parsing simple.