BiCom Protocol for Bosch PTZ Cameras VG4 Series AutoDomes en Instruction Book BiCom Protocol for Bosch PTZ Cameras Table of Contents | en iii Table of Contents 1 Introduction 1 1.1 Numeric Designations 1 2 BiCom Command Structure 1 2.1 Message Framing 1 3 BiCom Protocol Syntax 2 3.1 General BiCom Syntax 2 3.2 Command Packet Structure 2 3.3 Server Applications 6 3.4 Message Structure 7 3.5 Generic Operations 7 3.5.1 Get/GetMax/GetMin Operations 7 3.5.2 Set Operation 7 3.5.3 SetGet Operation 7 3.5.4 Inc Operation 8 3.5.5 IncGet Operation 8 3.5.6 Dec Operation 8 3.5.7 DecGet Operation 8 3.5.8 Nop Operation 9 3.5.9 Event Operation 9 3.6 Error Codes 9 4 Server Applications 10 4.1 Device Server (ID 0x00 0x020) 10 4.2 I/O Server (ID 0x00 0x0A0) 16 4.3 Content Analysis (CA) Server (ID 0x00 0x080) 20 4.4 Camera Server (0x00 0x040) 22 4.5 PTZ Server (ID 0x00 0x060) 30 5 Examples 36 5.1 Setting the AutoPanScan Speed 36 5.2 Inverting the Camera Image 37 6 Appendix: Hardware Configuration 38 Bosch Security Systems, Inc. Instruction Book F01U082206 | 1.0 | 2008.04 iv en | Table of Contents F01U082206 | 1.0 | 2008.04 BiCom Protocol for Bosch PTZ Cameras Instruction Book Bosch Security Systems, Inc. BiCom Protocol for Bosch PTZ Cameras 1 Introduction | en 1 Introduction This manual describes the Bilinx Command Interface (BiCom) protocol that transfers command messages from a Bosch controller-based product to a pan/tilt/zoom device (for example the VG4 Series AutoDomes). If you are familiar with the On-site Receiver/Driver (OSRD) or with the BiCom protocols, you can use this manual as a reference for the message structure, command structure, and the values for the parameters that comprise the message. If you are not familiar with these protocols, you can use this manual to learn the syntax and capabilities BiCom. It is recommended, however, that you understand API programming concepts and bit manipulation. 1.1 Numeric Designations The BiCom protocol specifies that numeric data represents the components of a command message packet. Most of the numeric data is represented as hexadecimal numbers, but some of the actual data values are expressed as decimal numbers. This manual uses the following conventions to distinguish between hexadecimal and decimal numbers: 2 – The value “25” is interpreted as a decimal value. – The value “0x25” is interpreted as a hexadecimal value. BiCom Command Structure The BiCom protocol consists of a Serial Link Interface Protocol (SLIP) frame, the BiCom command message packet, and the CRC-8 Checksum byte. Control code data is sent in message packets. For certain functions, commands must be sent repetitively at a rate of 20 Hz to maintain a smooth operational response of the device being driven by the receiver/driver. See Section 6 Appendix: Hardware Configuration, page 38, for more information on hardware configuration. 2.1 Message Framing A BiCom message packet is framed by two Serial Line Internet Protocol (SLIP) characters. SLIP is commonly used for point-to-point serial connections running TCP/IP over a dedicated serial link, and is usually used with line speeds between 1200 bps and 19.2 Kbps. SLIP performs only one function: framing of data for transmission. SLIP receives an IP datagram and breaks it into bytes; then sends each byte over the link one at a time. After the last byte of the datagram, SLIP sends a special byte value, the SLIP END character, that instructs the receiving device that the datagram has ended. The SLIP END character has a byte value of 0xC0 (192 decimal, 1100 0000 binary). A minor enhancement to this basic operation is to precede the datagram by an END character as well. The function of this preceding character is to clearly separate the start of the datagram from anything that preceded it. The protocol is useful for allowing mixes of hosts and routers to communicate with one another (host-host, host-router and router- router are all common SLIP network configurations). For a full description of SLIP consult RFC 1055 – Nonstandard for transmission of IP datagrams over serial lines: SLIP. The SLIP protocol uses four special characters as defined in RFC 1055: Character END Hex Value 0xC0 ESC 0xDB Description This character is a message separator rather than a message end indicator. Bosch Security Systems, Inc. Instruction Book F01U082206 | 1.0 | 2008.04 2 en | BiCom Protocol Syntax BiCom Protocol for Bosch PTZ Cameras Character ESC_END Hex Value 0xDC Description This character is transmitted if a data byte in the message packet ESC_ESC 0xDD has the same value as the SLIP END character. This character is transmitted if a data byte in the message packet has the same value as the SLIP ESC character. The SLIP END character must begin and end a BiCom message packet to ensure that the transmission line is free of noise for the next message. In addition to the SLIP characters above, Bosch serial devices extend the SLIP protocol with these two escape codes: Escape Code ESC_XON Hex Value 0xDE Description This code is transmitted if a data byte in the message packet ESC_XOFF 0xDF has the same value as the XON (0x11) code. This code is transmitted if a data byte in the message packet has the same value as the XOFF (0x13) code. The two escape codes above allow the use of the XON (0x11) and the XOFF (0x13) commands for software control. 3 BiCom Protocol Syntax This chapter describes the syntax and the structure of the BiCom protocol. This protocol provides full control for many features of the VG4 AutoDome that were not supported by earlier protocols. A controller device sends a BiCom command to a VG4 AutoDome via a serial (RS232 or RS485) connection. This chapter describes these aspects of the BiCom protocol: 3.1 – The logical subdivision of devices into server applications. – The object-based message protocol; which is used to communicate with the servers. – The actual action that is performed on the object, called the Operation. – The bit positions and syntax for the entire Command Message Packet. General BiCom Syntax The following syntax depicts a general BiCom message packet with the CRC-8 checsksum, framed by two SLIP END characters: <SLIP_END><Length_Byte><Address><Server><Object_ID><Member_ID><Operation><Data_Byte_1>... <Data_Byte_n><CRC-8><SLIP END> The code below represents a complete BiCom message packet: 0xC0 0x8B END Length Byte 0x00 0x07 0x00 0x60 0x01 Address Server 0x02 0x02 0x00 0x1E 0xEB 0xC0 Object Member Operation Data Byte 1 Data Byte 2 CRC-8 END The following sections detail each component of the BiCom message packet. 3.2 Command Packet Structure The command packet consists of the length byte, device address, server ID, Object/Member pair, operation, any appropriate data bytes, and the CRC-8 checksum value. The packet comes between the SLIP END characters. The table below shows the positions of each component of the command packet and the information that each component requires. F01U082206 | 1.0 | 2008.04 Instruction Book Bosch Security Systems, Inc. BiCom Protocol for Bosch PTZ Cameras Server ID Object/ Data Bit Position 4 3 6 5 2 1 0 value = 1 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 MSB value = 0 Bit 14 Bit 13 Bit 12 Bit 11 Bit 10 Bit 9 Bit 8 LSB value = 0 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 MSB Bit 15 Bit 14 Bit 13 Bit 12 Bit 11 Bit 10 Bit 9 Bit 8 LSB Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 Object Bit 7 Object Bit 6 Object Bit 5 MSB Object Bit 12 Object Bit 11 Object Bit 10 Object Bit 9 Object Bit 8 Member ID Operation 3 7 Length_Byte Address BiCom Protocol Syntax | en LSB Object Bit 4 Object Bit 3 Object Bit 2 Bit 7 Bit 6 Bit 5 Object Bit 1 Member Bit 3 Member Bit 2 Member Bit 1 Member Bit 0 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 Data Byte 1 Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 Data Byte n Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 (15 max) CRC-8 Checksum Length Byte Specifies the number of bytes in the remainder of the packet (excluding the Length Byte itself). The Length Byte parameter consists of one byte, and the value for bit position 7 is always 1. Address_ID Specifies the logical address of the device that receives the command. The Address parameter consists of two bytes, the Most Significant Byte (MSB) and the Least Significant Byte (LSB). Thee value for bit position 7 (LSB) and for bit position 15 (MSB) is always 0. NOTICE! The address number of the VG4 is encoded using a 14-bit binary camera number. i This address number is sent using 2 bytes of the message, the Address_MSB and Address_LSB. The binary value corresponds to the logical camera number of the VG4 being controlled MINUS 1. – Address_MSB Consists of the upper 7 bits of the 14-bit binary camera number. This field is used only for cameras with an address of 128 to 16,384. – Address_LSB Consists of the lower 7 bits of the 14-bit binary camera number. This field is used for cameras with an address of 1 to 127. Bosch Security Systems, Inc. Instruction Book F01U082206 | 1.0 | 2008.04 4 en | BiCom Protocol Syntax BiCom Protocol for Bosch PTZ Cameras The following table shows examples of Address Bytes: Camera Number Encoded Value 14-bit Binary Value MSB (hex) LSB (hex) 1 0 0000000 0000000 0x00 0x00 2 1 0000000 0000001 0x00 0x01 128 127 0000000 1111111 0x00 0x7F 129 128 0000001 0000000 0x80 0x00 256 255 0000001 1111111 0x01 0x7F 257 256 0000010 0000000 0x02 0x00 500 499 0000011 1110011 0x03 0x73 512 511 0000011 1111111 0x03 0x7F 513 512 0000100 0000000 0x04 0x00 1024 1023 0000111 1111111 0x07 0x7F 5000 4999 0100111 0000111 0x27 0x07 9999 9998 1001110 0001110 0x4E 0x0E 16384 16383 1111111 1111111 0x7F 0x7F Server ID Identifies the server that contains the Object/Member ID identified in the message packet. The Server ID consists of two bytes. Once the eight positions of the LSB are filled, use the next 8 positions in the MSB. See Section 3.3 Server Applications, page 6, for a full description of each server. The table below lists the hexadecimal value for each server: Server Name Device Server I/O Server Content Analysis (CA) Server Camera Server PTZ Server Server ID MSB 0x00 0x00 0x00 0x00 0x00 Server ID LSB 0x020 0x0A0 0x080 0x040 0x060 Object/Member ID Identifies the actual command that the camera is to perform. The Object/Member ID parameter consists of two bytes, but the division of the MSB and the LSB differ from that of the Server ID. The Member ID consists of the first four bit positions of the LSB (0, 1, 2, 3) and the Object ID consists of bit position 4 through 7 of the LSB and all eight bit positions of the MSB. See Section 4 Server Applications, page 10, for more information on Object/Member pairs. For example, the following two-byte string contains the ID for the Position object and the ID for the Orientation member: Object ID Member ID MSB LSB 0000000100011010 Position Object Orientation Member This two-byte string translates to 0x011A in hexidecimal. F01U082206 | 1.0 | 2008.04 Instruction Book Bosch Security Systems, Inc. BiCom Protocol for Bosch PTZ Cameras BiCom Protocol Syntax | en 5 Operation Identifies the Operation type to be preformed on the object/member. The Generic Operations Type table, below, describes the operations in the range 0x00–0x7F that are common to all object/members (not all operations are available on all object/members). See Section 3.5 Generic Operations, page 7, for a complete description of the Generic operations. Every object can also define its own unique operations, which reside in the range 0x80–0xFF. Operation Get Set SetGet Inc IncGet Code 0x01 0x02 0x03 0x04 0x05 Description Returns the object value. Sets the object value. Sets the object value and returns it. Increments the object value with a predefined value. Increments the object value with a predefined value and returns Dec DecGet 0x06 0x07 it. Decrements the object value with a predefined value. Decrements the object value with a predefined value and returns SetDefault 0x08 SetGetDefault 0x09 it. Resets the object value to the default value. Resets the object value to the default value and returns the new Nop GetMax GetMin Reserved Error Event 0x0A 0x0B 0x0C 0x0D–0x06E 0x6F 0x70–0x7F value. No function. The operation is used to check if an object exists. Returns the maximum value of the object. Returns the minimum value of the object. Error Returns a value on an event (not requested). Data Byte 1...Data Byte n The Data Byte 1 and the Data Byte n parameters consist of one byte each. The command syntax allows 15 Data Bytes (Data Byte 1 through Data Byte 15). CRC-8 Checksum A checksum is a form of redundancy check, a simple way to protect the integrity of data by detecting errors in data that are sent to a serial device. It works by adding up the basic components of a message, typically the asserted bits, and storing the resulting value. Anyone can later perform the same operation on the data, compare the result to the authentic checksum, and (assuming that the sums match) conclude that the message was most likely not corrupted. The checksum is the sum of each 8-bit number (including the Length Byte) for the entire command syntax. To calculate the checksum value: 1. Convert any binary numbers into a hexadecimal value. 2. Add each hexidecimal value, using a scientific calculator, to arrive at the message packet subtotal. 3. 4. 5. Convert the hexadecimal value to a binary value. Find the two’s complement of the binary value: a. Invert the bits (a bit of value “1” becomes a bit of value “0” and vice versa). b. Increment the binary value by 1. Convert the binary value back into a hexadecimal value to arrive at the CRC-8 checksum value. Bosch Security Systems, Inc. Instruction Book F01U082206 | 1.0 | 2008.04 6 en | BiCom Protocol Syntax BiCom Protocol for Bosch PTZ Cameras Example: Calculating a CRC-8 Checksum A BiCom message packet contains the following values: 0x8B 0x00 0x00 0x00 0x60 0x01 0x01 0x02 0x00 0x01 0x04 Add the hexadecimal values to arrive at the message packet subtotal: 8B+00+00+00+60+01+01+02+00+01 = F4 Convert the hexadecimal value to binary value F4 = 1111 0100 Find the two’s complement by first inverting the binary values: 1111 0100 --> 0000 1011 Then, increment the binary value by 1: 0000 1011 + 1 = 0000 1100 Finally, convert the binary value back into a hexadecimal value to arrive at the CRC-8 Checksum value: 0000 1100 = 0x0C 3.3 Server Applications For the application view every device is split up into several entities or servers. Each of these servers performs one group of related functions (and/or services) within the system. The VG4 AutoDome contains the following servers: Server Name Device Server Server ID Description 0x00 0x020 Controls those functions that influence all other functions including: firmware download, configuration upload/download, and key I/O Server emulation. 0x00 0x0A0 Handles all input/output functionality of the camera. Content Analysis (CA) Server 0x00 0x080 Controls motion detection, object recognition, Camera Server and tracking, among other features. 0x00 0x040 Contains the functions that influence image quality including: video level, white balance, PTZ Server locking, and iris control. 0x00 0x060 Controls the pan, tilt, zoom position and the “manual” focus of the camera. The following sections describe the objects for the Camera and the PTZ server. The table below describes the Data Formats codes used in following sections: Code us ss uc s Data Format unsigned short signed short unsigned char string ul a endian) unsigned long Unsigned 32-bit value (highest byte first/big endian) unsigned char array Array of unsigned 8-bit values F01U082206 | 1.0 | 2008.04 Description Unsigned 16-bit value (high byte first/big endian) Signed 16-bit value (high byte first/big endian) Unsigned 8-bit value String of Unicode-based characters (Unicode values are big Instruction Book Bosch Security Systems, Inc. BiCom Protocol for Bosch PTZ Cameras 3.4 BiCom Protocol Syntax | en 7 Message Structure The protocol structure is an object-oriented protocol that is defined in several levels. The first definition is the selection of the server. The next definition is the selection of the object, which must be allowed by the server, based on the Object ID. The Object ID can be split into two bytes: the first byte is the object selection and the second byte is the member selection. Using the object/member pair allows you to group settings in one object. For example, the object VideoMotion contains the members Sensitivity and Area (among others). From the total of 16 bits (2 bytes for each Object ID), 12 bits are reserved for the Object (VideoMotion) and four bits are reserved for the Member (Sensitivity or Area). 3.5 Generic Operations This section describes the format of the generic operations. The description of each operation shows the structure of the message sent to the VG4 AutoDome, the structure of the reply message (if applicable), and the structure of the error message. 3.5.1 Get/GetMax/GetMin Operations When a VG4 Series AutoDome receives any Get operation, it returns the actual data object. The GetMax and the GetMin operations have the same message format as the Get operation, but return the maximum or minimum value for the object. 3.5.2 Message Object ID Reply Object ID Error Object ID Get Get Data1 Datan Error Error Code Set Operation When a VG4 Series AutoDome receives a Set operation it changes the current setting of the Object or Object/Member pair to the value sent in the message. This operation does not return a reply message. Message Object ID No Reply Set Data1 Datan 3.5.3 Error Object ID Error Error Code SetGet Operation When a VG4 Series AutoDome receives a SetGet operation it changes the current setting of the Object or Object/Member pair to the value sent in the message and returns a reply message. Bosch Security Systems, Inc. Message Object ID Reply Object ID Error Object ID SetGet Data1 Datan SetGet Data1 Datan Error Error Code Instruction Book F01U082206 | 1.0 | 2008.04 8 en | BiCom Protocol Syntax 3.5.4 BiCom Protocol for Bosch PTZ Cameras Inc Operation When the VG4 Series AutoDome receives an Inc operation, it increments the current setting of the Object or Object/Member pair by a pre-defined step. This operation does not return a reply message. Message Object ID No Reply Inc 3.5.5 Error Object ID Error Error Code IncGet Operation When the VG4 Series AutoDome receives an IncGet operation, it increments the current setting of the Object or Object/Member pair by a pre-defined step and returns a reply message. 3.5.6 Message Object ID Reply Object ID Error Object ID IncGet IncGet Data1 Datan Error Error Code Dec Operation When the VG4 Series AutoDome receives a Dec operation, it decrements the current setting of the Object or Object/Member pair by a pre-defined step. This operation does not return a reply message. Message Object ID No Reply Dec 3.5.7 Error Object ID Error Error Code DecGet Operation When the VG4 Series AutoDome receives a DecGet operation, it decrements the current setting of the Object or Object/Member pair by a pre-defined step and returns a reply message. F01U082206 | 1.0 | 2008.04 Message Object ID Reply Object ID Error Object ID DecGet DecGet Data1 Datan Error Error Code Instruction Book Bosch Security Systems, Inc. BiCom Protocol for Bosch PTZ Cameras 3.5.8 BiCom Protocol Syntax | en 9 Nop Operation The Nop operation checks if a VG4 AutoDome supports an Object or Object/Member pair. If the Object/Member exists, the AutoDome returns a reply, else the AutoDome returns an error. 3.5.9 Message Object ID Reply Object ID Error Object ID Nop Nop Error Error Code Event Operation An Event is a message that a server transmits without a request from a client. Event Message Object ID Data1 Datan 3.6 Error Codes The error message is sent when an illegal object ID or an operation is received. The message contains a 16-bit error code. The range is again split up in two parts, 0x0000–0x007F for generic error codes and the rest for server or object related codes. The following table describes the generic error codes: Error Code Description 0x0001 Illegal object ID or object not supported 0x0002 Illegal member ID or member not supported1 0x0003 Illegal operation or operation not supported 0x0010 Out of range 0x0011 Illegal data size 0x0020 Not allowed2 0x0021 1. On-screen Display (OSD) active3 Illegal object ID is returned on an access to the main object (low nibble is 0). Illegal member ID has the same meaning but is returned when a member is accessed (low nibble unequal to 0). 2. This code is returned when the object/member is (temporarily) disabled. For example, v-phase adjust is disabled when locking is not complete (online mode). 3. Bosch Security Systems, Inc. This code is returned when the object/member can not be changed because the OSD menu is active. Instruction Book F01U082206 | 1.0 | 2008.04 10 4 en | Server Applications BiCom Protocol for Bosch PTZ Cameras Server Applications The following sections describe the objects and members contained in each server. The tables in each section summarizes the objects, members, and their parameters (the data field is two bytes, if not otherwise stated). In each table the Object Name and the Object ID are in bold type; Member Names and Member IDs are in regular type below the Object to which they belong. To specify a valid Object/Member ID pair in the command syntax, use the table to find the Object ID, then locate the Member for the selected Object and identify the Member ID. For example, use the Camera Server table to find the ID for the Shutter Object and the Speed Member. The table shows that the Object/Member ID for Shutter/Speed is 0x011.1. This ID translates to <0x01><0x11> in the BiCom message packet. 4.1 Device Server (ID 0x00 0x020) The Device Server contains commands that allow you to identify a PTZ camera, change parameters such as the IP Address and Gateway Address, view release levels, and to update the firmware. The CPU columns identify which operations are applicable for specific modules and indicate special notes: F01U082206 | 1.0 | 2008.04 Instruction Book Bosch Security Systems, Inc. BiCom Protocol for Bosch PTZ Cameras Object Name/ Object ID/ Member Name Member ID Type1 0x010.0 Get VariationID 0x010.1 Get (Gen3 AutoDome) Operation Type Server Applications | en Send/Receive Data Bytes Data 11 500 300 200 Format us Two bytes that contain a Family ID and a Variation ID us Family ID: 0x00 Variation IDs: Bosch Security Systems, Inc. – 0x10 = Sony 780, NTSC – 0x11 = Sony 780, PAL – 0x12 = Sony 480A, NTSC – 0x13 = Sony 480A, PAL – 0x14 = Sony 48A, NTSC – 0x15 = Sony 48A, PAL – 0x16 = Sony 45, NTSC – 0x17 = Sony 45 PAL – 0x1E = Sony 45M, EIA – 0x1F = Sony 45M, CCIR – 0x20 = Sony 780B, NTSC – 0x21 = Sony 780B, PAL – 0x24 = Sony 480B, NTSC – 0x25 = Sony 480B, PAL – 0x26 = Sony 48E, NTSC – 0x27 = Sony 48E, PAL – 0x28 = Sony 45E, NTSC – 0x29 = Sony 45E, PAL – 0x2A = Sony 45EM, EIA – 0x2B = Sony 45EM, CCIR – 0x30 = Sony 980C, NTSC – 0x31 = Sony 980C, PA – 0x32 = Sony 980CS, NTSC – 0x33 = Sony 980CS, PAL – 0x34 = Sony 480C, NTSC – 0x35 = Sony 480C, PAL – 0x36 = Sony 48C, NTSC – 0x37 = Sony 48C, PAL – 0x38 = Sony 45C, NTSC – 0x39 = Sony 45C, PAL – 0x42 = Sony 1000C, NTSC – 0x43 = Sony 1000C, PAL – 0x44 = Sony 1010D, NTSC – 0x45 = Sony 1010D, PAL Instruction Book F01U082206 | 1.0 | 2008.04 12 en | Server Applications Object Name/ Object ID/ Member Name Member ID VariationID 0x010.1 BiCom Protocol for Bosch PTZ Cameras Operation Type Send/Receive Data Bytes Data Get Two bytes that contain a Family ID and a Variation ID 500 300 200 Format (VG4 AutoDome) Family ID: 0x03 Variation IDs: – 0x00 = Bootloader – 0x10 = System Controller Boot – 0x11 = System Controller Standard – 0x12 = System Controller Basic – 0x13 = System Controller Fixed – 0x14 to 0x1F = Reserved – 0x20 = VCA Boot – 0x21 = VCA – 0x22 to 0x2F = Reserved – 0x30 = Sony 980C, NTSC – 0x31 = Sony 980C, PAL – 0x32 = Sony 980CS, NTSC – 0x33 = Sony 980CS, PAL – 0x34 = Sony 480C, NTSC – 0x35 = Sony 480C, PAL – 0x38 = Sony 45C, NTSC – 0x39 = Sony 45C, PAL – 0x40 to 0x5F = Reserved – 0x60 = FPGA SC – 0x61 = FPGA VCA – 0x70 = Standard COM Module – 0x71 = Unity COM Module – 0x72 to 0x77 = Reserved for non-intelligent COM Module – SoftwareVersion1 0x011.0 Get HardwareVersion 0x012.0 Get 0x78 = IP COM Module Contains a major and a minor version field, both 1 byte. us For example, version 5.2 is <0x05><0x02> Contains a generation (family type) and an iteration us field (variation). For example: 0x03 0x01 = Gen3A 0x03 0x02 = Gen3B 0x04 0x01 = VG4 SerialNumber 0x013.0 SetGet 0 to 999,999 ul MACAddress1 0x014.0 SetGet 6-byte MAC address. a A PC application returns the first MAC address from the standard Windows API enumeration. If there is no address, the API sets the address to zero. IPAddress 0x014.1 SetGet 4-byte IP Address a SubNetMask 0x014.2 SetGet 4-byte IP Address a DefaultGateWay 0x014.3 SetGet 4-byte IP Address a F01U082206 | 1.0 | 2008.04 Instruction Book Bosch Security Systems, Inc. BiCom Protocol for Bosch PTZ Cameras Object Name/ Object ID/ Member Name Member ID Status 0x014.4 Server Applications | en Operation Type Send/Receive Data Bytes Set IP range = 0x00 to 0x0F Data 13 500 300 200 Format us SC range = 0x10 to 0x1F Reserved = 0xF0 to 0xFF 0 = Running 1 = Rebooting 2 = Failure IDString 0x015.0 SetGet 17 characters (max. length) s Position 0x015.1 SetGet 0 = Off us 1 = Top 2 = Bottom Password 0x016.0 SetGet 0 to 65,535 Configuration 0x017.0 SetGet Use the FactoryReset operation to restore the factory us FactoryReset (0x80) defaults. Event Use the Event operation to confirm that the factory defaults are restored. Address 0x017.1 SetGet Set once and then increments automatically. ul The range for the value is 0 to 0xFFFFFFFF Blocksize 0x017.2 SetGet Determines the number of data bytes used by the Set us and Get operation for the Configuration object. The range for the value is 1 to 32 Firmware 0x018.0 3 Set Erase (0x80) EraseAll (0x81) EraseBusy (0x82) Address 0x018.1 SetGet 0 to 0xFFFFFFFF ul BlockSize 0x018.2 SetGet 1 to 32 us NrBlocks 0x018.3 SetGet 0 to 65,535 us Download Device 0x018.4 Get 1 to 14 us 0 = Only device-camera communication us Set CameraOnly 0x018.5 SetGet 1 = Other communication allowed Checksum 0x018.6 SubComponent 0x018.7 Get 0 to 0xFF us 0 = Current active subcomp us Set SetGet 1 = System Controller 2 = System C. Bootloader 3 = Camera 4 = FPGA 5 = Ext. Communication 6 = VCA 7 = VCA Bootloader StringID 0x018.8 Get StringIDLength 0x018.9 Get DebugData 0x018.A SetGet Bosch Security Systems, Inc. 8 characters (maximum) s us 32 bytes (maximum) Instruction Book a F01U082206 | 1.0 | 2008.04 14 en | Server Applications Object Name/ Object ID/ Member Name Member ID UI 0x019.0 (see section ) BiCom Protocol for Bosch PTZ Cameras Operation Type Send/Receive Data Bytes Get Event Options Event 0 = No OSD Menu Open EnterMenu (0x80) 1 = An Open Menu Data 500 300 200 Format us EnterMenu Options 0x002E = Main Menu 0x0321 = Factory Setting Adjust Menu 0x7D0 = BLC Edit Menu 0x7D1 = VMD area 1 Edit Menu 0x7D2 = VMD area 2 Edit Menu 0x7D3 = VMD area 3 Edit Menu 0x7D4 = VMD area 4 Edit Menu Keys 0x019.1 Press (0x80) Key Code Release (0x81) 0 = No Key us 1 = Left 2 = Right 3 = Up 4 = Down 5 = Select OSD 0x019.2 SetGet us 0 = Off 1 = On Menu/Key Enable/Disable OSDFeedbackLocation 0x019.3 SetGet 0 to 31 us OSDFeedback SetGet 0 = Off us 0x019.4 1 = Show OSD Feedback OSDTitleFeedback 0x019.5 SetGet us 0 = Off 1 = Show shot/sector titles permanently 2= Flash show shot/sector titles momentarily OSDCameraFeedback 0x019.6 SetGet 0 = Off us 1 = Show feedback from camera functions Language 0x019.7 SetGet From the local language ID table from Microsoft® us OSDBrightness 0x019.8 SetGet 0 to 10 us CableCompensation 0x01A.0 Length 0x01A.1 Get 0 to 10,000 m us 0 to 15 us 0 to 4 us 0 = 9600 us Measure2 Level 0x01A.2 (0x80) SetGet GetMax IncGet DecGet CableType 0x01A.4 SetGet ACTS 0x01B.0 Pass (0x80) Meet 0x01C.0 Pass (0x80) RS232_RS485 0x01D.0 BaudRate 0x01D.1 SetGet 1 = 19200 2 = 38400 3 = 57600 4 = 2400 5 = 4800 AutoBaud 0x01D.2 SetGet 0 = Off us 1 = On F01U082206 | 1.0 | 2008.04 Instruction Book Bosch Security Systems, Inc. BiCom Protocol for Bosch PTZ Cameras Object Name/ Object ID/ Member Name Member ID CommandLock 0x01E.0 Server Applications | en Operation Type Send/Receive Data Bytes SetGet 0 = Unlocked Data 15 500 300 200 Format us 1 = Locked FastAddress 0x01F.0 Test 0x020.0 SetGet 0 to 9999 InvertReliable1 0x020.1 SetGet InvertBestEffort1 0x020.2 SetGet Bist 0x021.0 Get Bit mask for test results. Run (0x80) For each bit: (Issuing a Get or a 0 = Fail us a a us Run while any test is 1 = Pass running returns a Bit masks defined: NOT_ALLOWED Bit 0 = DataFlash error message.) Bit 1 = FPGA Bit 2 = Bilinx Bit 3 = Digital I/O Bit 4 = Homing Log 0x022.0 Erase Entries (0x80) Erase Counters (0x80) Length 0x022.1 Get Entry 0x022.2 SetGet 0 to 255 us us Counter 0x022.3 SetGet 0 to 127 us ExtCommModule 0x023.0 Heartbeat (0x080) Heartbeat signal indicating status of the Comm module, uc SoftwareVersion 0x023.1 Get 4 bytes updated every 2 seconds a (major, minor, build, patch) HardwareVersion 0x023.2 Get Type 0x023.3 Get 2 bytes us (major. minor) 0x00 = VG4 AutoDome us 0x80 = CTFID ComponentIDString 0x023.4 Get 8 characters maximum s AudioBiphaseSelect 0x023.5 SetGet 0 = Biphase us ControllerVersion 0x024.0 Get Minimum controller version with which the device is 1 = Audio us compatible InternalTemperature 0x025.0 Temperatures in °C x 10 (-13.6°C becomes -136) Current 0x025.1 Get Range = -1000 to 1000 Highest 0x025.2 Get Range = -1000 to 1000 Lowest 0x025.3 Get Range = -1000 to 1000 ss ss ss 1. Mandatory for the Device Server. 2. Special message format for Measure operation. 3. The data type of the Firmware object is: x bytes, where x is equal to the value of the BlockSize member. Bosch Security Systems, Inc. Instruction Book F01U082206 | 1.0 | 2008.04 16 en | Server Applications 4.2 BiCom Protocol for Bosch PTZ Cameras I/O Server (ID 0x00 0x0A0) The commands in the I/O Server allow you to set input and output parameters and to configure alarm actions and rules. Object Name/ Object ID/ Member Name Member ID Input1 0x010.0 Active2 0x010.1 Operation Type Send/Receive Data Bytes Data 500 300 200 Format Get 0 = Inactive Event 1 = Active SetGet 0 = Disabled us us 1 = Active High 2 = Active Low 3 = Edge ActionModeSwitch 0x010.2 SetGet 0 = Off us 1–3 = New Mode 100 = Mono ActionGoToShot 0x010.3 SetGet 0 = Off us 1–99 = Preposition ActionOSD 0x010.4 SetGet 0 = Off ActionTransmit 0x010.5 SetGet 0 = Off us 1 = On us 1 = On ActionTrack 0x010.6 SetGet 0 = Off us 1 = On ActionActivateRelay 0x010.7 Input21 0x011.0 Input31 0x012.2 Input41 0x013.0 SetGet 0 = Off us 1 = On 3 Output1 0x080.0 SetGet 0 = Inactive Event 1 = Active Contact (N.O. or N.C.) 0x080.1 SetGet 0 = Normally Open us us 1 = Normally Closed Period 0x080.2 SetGet 0 = Follows us 1 = 1 second 2 = 2 seconds 3 = 3 seconds 4 = 4 seconds 5 = 5 seconds 6 = 10 seconds 7 = 15 seconds 8 = 30 seconds 9 = 60 seconds 10 = 120 seconds 11 = 180 seconds 12 = 240 seconds 13 = 300 seconds 14 = 600 seconds 15 = Latched F01U082206 | 1.0 | 2008.04 Instruction Book Bosch Security Systems, Inc. BiCom Protocol for Bosch PTZ Cameras Object Name/ Object ID/ Member Name Member ID Source 0x080.3 Server Applications | en Operation Type Send/Receive Data Bytes SetGet 0 = Remote Data 17 500 300 200 Format us 1 = VMD 2 = IR Filter (Day/Night only) 3 = Filter Move (Day/Night only) Output25 0x081.0 Output35 0x082.0 Output45 0x083.0 4 TrackerPeriod 0x100.0 SetGet 0 = Follows us 1 = 1 second 2 = 2 seconds 3 = 3 seconds 4 = 4 seconds 5 = 5 seconds 6 = 10 seconds 7 = 15 seconds 8 = 30 seconds 9 = 60 seconds 10 = 120 seconds 11 = 180 seconds 12 = 240 seconds 13 = 300 seconds 14 = 600 seconds 15 = Latched InputOption1 0x200.0 Type 0x200.1 SetGet 0 = None us 1 = Alarm Input 1 2 = Alarm Input 2 3 = Alarm Input 3 4 = Alarm Input 4 5 = Alarm Input 5 6 = Alarm Input 6 7 = Alarm Input 7 8 = Alarm Input 8 9 = Aux ON 10 = Aux OFF 11 = Shot 12 = Tracking 13 = Motion Detection Bosch Security Systems, Inc. Instruction Book F01U082206 | 1.0 | 2008.04 18 en | Server Applications Object Name/ Object ID/ Member Name Member ID Data 0x200.2 BiCom Protocol for Bosch PTZ Cameras Operation Type Send/Receive Data Bytes SetGet If Type9 = Physical (Alarm) Input is 1 or 2: Data 500 300 200 Format – 1 = N.O. – 2 = N.C. – 3 = N.C.S. – 4 = N.O.S. us If Type10 = Physical (Alarm) Input is 3, 4, 5, 6, or 7: – 5 = N.O. – 6 = N.C. If Type = Aux or Shot: – 1 to 99 If Type = Tracking – No send byte necessary If Type = Motion Detection – 6 InputOption2 No send byte necessary 0x201.0 … InputOption326 0x21F.0 OutputOption1 0x220.0 Type 0x220.1 SetGet 0 = None us 1 = Alarm Output 1 2 = Alarm Output 2 3 = Alarm Output 3 4 = Alarm Relay 5 = Aux ON 6 = Aux OFF 7 = Shot 8 = OSD 9 = Transmit 10 = Tracking Data 0x220.0 SetGet If Type = Physical (Alarm) Output x: – 1 = N.O. – 2 = N.C. us If Type = Aux or Shot: – 1 to 99 If Type = Transmit – No send byte necessary If Type = Tracking OutputOption27 0x221.0 … … OutputOption327 0x23F.0 AlarmRule1 0x240.0 Mode 0x240.1 – 7 = On – 8 = Off … … … SetGet 0 = Disabled us 1 = Enabled 2 = Empty 3 = Invalid State 0x240.2 Get 0 = Output(s) not activated us 1 = Output(s) activated F01U082206 | 1.0 | 2008.04 Instruction Book Bosch Security Systems, Inc. BiCom Protocol for Bosch PTZ Cameras Object Name/ Object ID/ Server Applications | en Operation Type Send/Receive Data Bytes Data Member Name Member ID Title 0x240.3 SetGet String s Inputs 0x240.4 SetGet 0 to 0xFFFF us 19 500 300 200 Format Bit Mask representing the InputOption for each of the 4 allowed inputs per rule: Bits 15:12 – Input4 Option Bits 11:8 – Input3 Option Bits 7:4 – Input2 Option Bits 3:0 – Input1 Option Outputs 0x240.5 SetGet us 0 to 0xFFFF Bit Mask representing the OutputOption (from the 12 available) for each of the 4 allowed outputs per rule: Bits 15:12 – Output4 Option Bits 11:8 – Output3 Option Bits 7:4 – Output2 Option Bits 3:0 – Output1 Option Output Period1 0x240.6 SetGet Index into array of seconds: us 0 = Follows 1 = 1 second 2 = 2 seconds 3 = seconds 4 = seconds 5 = seconds 6 = 10 seconds 7 = 15 seconds 8 = 30 seconds 9 = 60 seconds 10 = 120 seconds 11 = 180 seconds 12 = 240 seconds 13 = 300 seconds 14 = 600 seconds 15 = Latched OutputPeriod2 0x240.7 SetGet See options for Output Period1 us OutputPeriod3 0x240.8 SetGet See options for Output Period1 us OutputPeriod4 0x240.9 SetGet See options for Output Period1 us AlarmRule28 0x241.0 … … … … … AlarmRule328 0x25F.0 1. Same format (members and operations) as object Input1. 2. Active implements inactive/active low/active high/edge. 3. Range 0x14.0–0x07F.F reserved for additional inputs. 4. Range 0x84.0–0x0FF.F reserved for additional outputs. 5. Same format (members and operations) as object Output1. 6. Same format (members and operations) as object InputOption1. 7. Same format (members and operations) as object OutputOption1. 8. Same format (members and operations) as object AlarmRule1. 9. Values apply only to Alarm Inputs 1 and 2, not to Alarm Inputs 3 to 7. 10. Values apply only to Alarm Inputs 3 to 7, not to Alarm Inputs 1 or 2. Bosch Security Systems, Inc. Instruction Book F01U082206 | 1.0 | 2008.04 20 en | Server Applications 4.3 BiCom Protocol for Bosch PTZ Cameras Content Analysis (CA) Server (ID 0x00 0x080) The Content Analysis Server contains commands that allow you to define motion detection areas, to enable virtual and privacy masks, and to define AutoTrack sensitivity. Object Name/ Object ID/ Member Name Member ID EditMode1 0x001.0 SetGet MotionActive 0x010.0 SetGet Operation Type Send/Receive Data Bytes Data 500 300 200 Format 0 = Motion Disabled (all areas) 1 = SIL 2 = OSD MotionArea1 0x020.0 Event 0 to 127 Get (actual level of detected motion) Reset (0x80) Active 0x020.1 SetGet XposTL 0x020.2 SetGet 0 = Disabled 1 = Enabled 1 to 32 us SetGet 1 to 26 (PAL) us GetMax 1 to 24 (NTSC) SetGet 1 to 32 us us GetMax YposTL 0x020.3 XposBR 0x020.4 GetMax YposBR 0x020.5 SetGet 1 to 26 (PAL) GetMax 1 to 24 (NTSC) 1 to 127 us Sensitivity 0x020.6 SetGet GetMax (minimum amount when event is triggered) MotionArea22 0x021.0 Event 0 to 127 Get (actual level of detected motion) Reset (0x80) MotionArea32 0x022.0 Event 0 to 127 Get (actual level of detected motion) Reset (0x80) MotionArea42 0x23.0 Event 0 to 127 Get (actual level of detected motion) Reset (0x80) VirtualMaskGlobalEnable 0x024.0 SetGet 0 = Disable ROIGlobalEnable SetGet 0 = Disable us 1 = Enable 0x025.0 us 1 = Enable AutoTrackSensitivity 0x026.0 us us us Level 0x026.1 SetGet VirtualMask1 0x380.0 SetGet 0 to 20, where 0 equals Auto Enable 0x380.1 SetGet 0 = Disable Data 0x380.2 SetGet Specific command for VG4 series AutoDomes. VirtualMask2 0x381.0 SetGet Enable 0x381.1 SetGet 1 = Enable a The 44 bytes are not interpreted by clients. us 0 = Disable 1 = Enable Data 0x382.2 SetGet Specific command for VG4 series AutoDomes. a The 44 bytes are not interpreted by clients. … VirtualMask1283 0x3FF.0 SetGet ROI1 (Region of Interest) 0x480.0 SetGet F01U082206 | 1.0 | 2008.04 Instruction Book Bosch Security Systems, Inc. BiCom Protocol for Bosch PTZ Cameras Object Name/ Object ID/ Member Name Member ID Enable 0x480.1 Server Applications | en Operation Type Send/Receive Data Bytes SetGet 0 = Disable Data 21 500 300 200 Format us 1 = Enable Data 0x480.2 SetGet Specific command for VG4 series AutoDomes. a The 44 bytes are not interpreted by clients. ROI2 0x481.0 SetGet Enable 0x481.1 SetGet Data 0x481.2 SetGet 0 = Disable us 1 = Enable Specific command for VG4 series AutoDomes. a The 44 bytes are not interpreted by clients. … ROI1284 0x4FF.0 SetGet 1. See Camera Server. 2. Same format (members and operations) as object MotionArea1. 3. Same format (members and operations) as object VirtualMask2. 4. Same format (members and operations) as object ROI2. Bosch Security Systems, Inc. Instruction Book F01U082206 | 1.0 | 2008.04 22 en | Server Applications 4.4 BiCom Protocol for Bosch PTZ Cameras Camera Server (0x00 0x040) The Camera Server contains all functionality that influences the image quality including: video level, white balance, locking, and iris control. Object Name/ Object ID/ Member Name Member ID EditMode 0x001.0 Operation Type Send/Receive Data Bytes Data 500 300 200 Special Notes Format us Set Get SetGet VideoLevel 0x010.0 Set -15 to +15 ss 0 = Fast us Get SetGet Inc IncGet Dec DecGet ControlSpeed 0x010.1 SetGet 1 = Normal 2 = Slow PeakAverage 0x010.2 -15 to +15 ss Set 0 = Off us Get 1 = AES with fixed camera SetGet 2 = FL only. 3 = AutoSlow AutoSlow not valid for SetGet IncGet DecGet Shutter 0x011.0 √ √ * * Valid for 200 Series fixed cameras nor for 18x color cameras. Only Off and AutoSlow valid for all Speed 0x011.1 Set 1 to 10,000 Get (shutter 1/x, slow and fast) us √ √ * other cameras. * Valid for 200 Series with fixed camera SetGet only. Inc Speeds below 1/60 IncGet (1/50) not valid for Dec the 18x color camera. DecGet MaxSensUp 0x011.2 Set 1 to 10 fields us * * Valid for 200 Series Get with fixed camera SetGet only. Inc IncGet Dec DecGet F01U082206 | 1.0 | 2008.04 Instruction Book Bosch Security Systems, Inc. BiCom Protocol for Bosch PTZ Cameras Object Name/ Object ID/ Member Name Member ID DefaultAutoSpeed 0x011.3 Server Applications | en Operation Type Send/Receive Data Bytes Set 1 to 10,000 Get (shutter 1/x, slow and fast) Data 23 500 300 200 Special Notes Format * us * Valid for 200 Series with fixed camera only. SetGet Inc IncGet Dec DecGet AutoSlowShutterMin 0x011.4 Stabilization 0x012.0 Set 1 to 60 (50) (shutter 1/x) us √ √ * * Valid for 200 Series Get with fixed camera SetGet only. Set 0 = Off Get 1 = On us √ SetGet Crop Video 0x012.1 Set 0 = Off Get 1 = On us SetGet AGC 0x013.0 Set 0 = Off Get 1 = On us √ √ √ √ √ √ √ √ √ SetGet Manual 0x013.1 0 to 28 us 0 to 28 us Set 0 = Off us Get 1 = Forced Set Get SetGet Inc IncGet Dec DecGet AutoMax 0x013.2 Set Get SetGet Inc IncGet Dec DecGet NightSense NightMode 0x013.3 0x014.0 SetGet 2 = Auto Set 0 = Off Get 1 = On SetGet 2= Auto us Day/Night cameras only Event Threshold 0x014.1 Set 10 to 55, by increments of 5 us √ √ √ Get Day/Night cameras only SetGet Color Priority 0x014.2 0x014.3 Set 0 = B/W Get 1 = Color SetGet (B/W or color during NightMode) Set 0 = Color Get 1 = Motion us √ √ √ Day/Night cameras only us SetGet Bosch Security Systems, Inc. Instruction Book F01U082206 | 1.0 | 2008.04 24 en | Server Applications Object Name/ Object ID/ Member Name Member ID SwitchLevel 0x014.4 BiCom Protocol for Bosch PTZ Cameras Operation Type Send/Receive Data Bytes Data Set -15 to +15 us 500 300 200 Special Notes Format Get SetGet Inc IncGet Dec DecGet IR Contrast 0x014.5 us Set Get SetGet Monoburst 0x014.6 ss Set Get SetGet FilterMove 0x014.7 Event 0 = Filter Stop us 1 = Filter Moving BLC 0x015.0 us √ √ √ -15 to +15 ss √ √ √ 1 to 16 us Set 1 to 13 (PAL) us Get 1 to 12 (NTSC) Set 0 = Off Get 1 = On SetGet Level 0x015.1 Set Get SetGet Inc IncGet Dec DecGet XposTL 0x015.2 Set Get SetGet GetMax YposTL 0x015.3 SetGet GetMax XposBR 0x015.4 1 to 16 us Set 1 to 13 (PAL) ss Get 1 to 12 (NTSC) Set Get SetGet GetMax YposBR 0x015.5 SetGet GetMax AutoBlack 0x016.0 Set 0 = Off Get 1 = On us SetGet F01U082206 | 1.0 | 2008.04 Instruction Book Bosch Security Systems, Inc. BiCom Protocol for Bosch PTZ Cameras Object Name/ Object ID/ Member Name Member ID Level 0x016.1 Server Applications | en Operation Type Send/Receive Data Bytes Data Set -50 to +50 ss Set 0 = Fixed us Get 1 = Auto 25 500 300 200 Special Notes Format Get SetGet Inc IncGet Dec DecGet Contour 0x017.0 SetGet Level 0x017.1 -15 to +15 ss Set 0 = Off us Get 1 = Auto Set Get SetGet Inc IncGet Dec DecGet DNR 0x018.0 SetGet Colour WhiteBalanceMode 0x019.0 0x019.1 Get 0 = B/W Event 1 = Color Set 0 = Auto Get 1 = Indoor SetGet 2 = Outdoor us ss √ √ √ 3 = One push/white balance hold 4 = Extended white balance 5 = Manual Speed RedGain 0x019.2 0x019.3 ss Set 0 = Fast Get 1 = Normal SetGet 2 = Slow Set -50 to +50 ss -50 to +50 ss Get SetGet Inc IncGet Dec DecGet BlueGain 0x019.4 Set Get SetGet Inc IncGet Dec DecGet Bosch Security Systems, Inc. Instruction Book F01U082206 | 1.0 | 2008.04 26 en | Server Applications Object Name/ Object ID/ Member Name Member ID GreenGain 0x019.5 BiCom Protocol for Bosch PTZ Cameras Operation Type Send/Receive Data Bytes Data Set -50 to +50 ss -15 to +5 ss -5 to +5 ss -5 to +5 ss -5 to +5 ss -5 to +5 us Set 0 = Line Lock ss Get 1 = Internal SetGet 2 = Genlock (P) 500 300 200 Special Notes Format Get SetGet Inc IncGet Dec DecGet Saturation 0x019.6 Set Get SetGet Inc IncGet Dec DecGet AutoRedPaint 0x019.7 Set Get SetGet Inc IncGet Dec DecGet AutoBluePaint 0x019.8 Set Get SetGet Inc IncGet Dec DecGet HoldRedPaint 0x019.9 Set Get SetGet Inc IncGet Dec DecGet HoldBluePaint 0x019.A Set Get SetGet Inc IncGet Dec DecGet Locking (Mode) 0x01A.0 √ √ √ 3 = hv-lock (P) F01U082206 | 1.0 | 2008.04 Instruction Book Bosch Security Systems, Inc. BiCom Protocol for Bosch PTZ Cameras Object Name/ Object ID/ Member Name Member ID VPhase 0x01A.1 Server Applications | en Operation Type Send/Receive Data Bytes Data Set 0 to 359° us √ √ √ us √ √ √ 0 to 255 us √ √ √ 1 to 15 us √ √ √ 1 to 10 us √ √ √ Set 0 = Normal us √ √ √ Get 1 = Reversed 27 500 300 200 Special Notes Format Get SetGet Inc IncGet Dec DecGet HPhase 0x01A.2 Set -25 to +125 Get SetGet Inc IncGet Dec DecGet SubcarrierPhase 0x01A.3 Set 0 to 359° Get SetGet Inc IncGet Dec DecGet SyncInImpedence 0x01A.4 Set 0 = 75 Ω Get 1 = High SetGet Iris (Control) 0x01B.0 Set 0 = Auto Get 1 = Manual SetGet MoveMom(0x84) MoveCount(0x82) Position 0x01B.1 Set Get SetGet Inc IncGet Dec DecGet AutoLevelAdjust 0x01B.2 Set Get SetGet Inc IncGet Dec DecGet Speed 0x01B.3 Set Get SetGet Polarity 0x01B.4 SetGet Bosch Security Systems, Inc. Instruction Book F01U082206 | 1.0 | 2008.04 28 en | Server Applications Object Name/ Object ID/ Member Name Member ID LensControl 0x01C.0 BiCom Protocol for Bosch PTZ Cameras Operation Type Send/Receive Data Bytes Data Set 0 = Auto us Get 1 = Video SetGet 2 = DC Iris 500 300 200 Special Notes Format 3 = Manual Speed 0x01C.1 Set 0 = Fast Get 1 = Slow us SetGet DigitalZoom 0x01D.0 Set 0 = Off Get 1 = On us √ √ √ √ √ √ SetGet DigitalZoomLens 0x01D.1 Get Digital magnification factor (10x, us ApertureCorrection 0x01E.0 Set 1 to 16 us √ √ √ (Sharpness) Get us √ √ √ 0 to 255 us √ √ √ 1 to 8 us √ √ √ Set 0 = Normal us √ √ √ Get 1 = Reversed 12x …) x 10 SetGet Focus (Control) 0x01F.0 Set 0 = Spot Get 1 = Auto SetGet 2 = Manual (mode) MoveMom(0x84) MoveCont(0x082) Position 0x01F.1 Set Get SetGet Inc IncGet Dec DecGet Speed 0x01F.2 Set Get SetGet Polarity 0x01F.3 SetGet Mode 0x020.0 1 to 3 us Set Character String s Get (max. length = 20 characters) Set Get SetGet FactoryReset (0x80) ReInit (0x81) Event IDString 0x020.1 SetGet EDR 0x021.0 Set 0 = Off Get 1 = Low SetGet 2 = Medium ss 3 = High F01U082206 | 1.0 | 2008.04 Instruction Book Bosch Security Systems, Inc. BiCom Protocol for Bosch PTZ Cameras Object Name/ Object ID/ Member Name Member ID Type 0x022.0 Server Applications | en Operation Type Send/Receive Data Bytes Data Get Returns FamilyVariation of the us 29 500 300 200 Special Notes Format √ √ √ √ √ camera LSB of the variation signifies NTSC (0) or PAL (1) Heater 0x023.0 Set 0 = Off Get 1 = Start us SetGet VideoBlanking 0x025.0 Set 0 = Video On Get 1 = Video Black us SetGet Wide DynamicRange 0x026.0 Set 0 = Off Get 1 = Auto us Requires a high resolution camera SetGet Bosch Security Systems, Inc. Instruction Book F01U082206 | 1.0 | 2008.04 30 en | Server Applications 4.5 BiCom Protocol for Bosch PTZ Cameras PTZ Server (ID 0x00 0x060) The PTZ server actually controls what the camera is looking at. This server allows you to control the pan, tilt and zoom position. Also the “manual” focus function is implemented in the PTZ because the requested focus changes along with the position. Object Name/ Object/Member ID Operation Type Send/Receive Data Bytes Member Name AutoPanScan Data 500 300 200 Format 0x010.0 Set Get SetGet Mode Speed 0x010.1 0x010.2 Set 0 = Off Get 1 = 360 us √ √ √ SetGet 2 = Between limits Set 0 to 60 deg/sec us √ √ √ Radians x 10,000 us √ √ √ Radians x 10,000 us √ √ √ Get 0 = Disable us √ √ √ Set 1 = Enable us √ √ √ Radians x 10,000 ss √ √ √ Radians x 10,000 ss √ √ √ 0 to 255 ticks ss √ √ √ FocalLength x 100 ss √ √ √ 1 to 15 us √ √ √ Get SetGet RightLimit 0x010.3 LeftLimit 0x010.4 Store Shot Store Shot Position 0x011.0 Event GetMask (0xA0–0xAF) SetMask (0xC0–0xCF) MoveContFixSpeed (0x82) MoveFixSpeedForPeriod (0x83) MoveContVarSpeed (0x85) MoveMomVarSpeed (0x88) MoveContVarFinSpeed (0x89) ClearAllLimits (0xB0) GlobalPMEnable (0xB1) AutoPivot 0x011.1 Set 0 = Off Get 1 = On SetGet Pan 0x011.2 Set Get SetGet GetMax Tilt 0x011.3 Set Get SetGet GetMax ZoomTicks 0x011.4 Set Get SetGet ZoomFocalLength 0x011.5 Set Get SetGet FixedSpeedControlSpeed 0x011.6 Set Get SetGet F01U082206 | 1.0 | 2008.04 Instruction Book Bosch Security Systems, Inc. BiCom Protocol for Bosch PTZ Cameras Object Name/ Server Applications | en Data Object/Member ID Operation Type Send/Receive Data Bytes 0x011.9 30, 20, 10, 5 Hz us √ √ √ Set 0 = Normal us √ √ √ Get 1 = Inverted Radians x 1000 us √ √ √ Radians x 1,000 us √ √ √ Radians x 1,000 us √ √ √ Radians x 1,000 us √ √ √ Set 0 = Normal us √ √ √ Get 1 = Inverted 1 to 7 us √ √ √ Set 0 = Normal us √ √ √ Get 1 = Reversed us √ √ √ Set Magnification factor (for example, us √ √ √ Get 18X) x 10 us √ √ √ 0 to 255 (Get only) us √ √ √ 0 to 20 us √ √ √ Member Name AutoReport 31 500 300 200 Format Set Get SetGet Orientation 0x011.A SetGet PanLeftLimit 0x011.B Store Shot Clear (0x80) PanRightLimit 0x011.C Store Shot Clear (0x80) TiltUpLimit 0x011.D Store Shot Clear (0x80) TiltDownLimit 0x011.E Store Shot Clear (0x80) Zoom (Control) 0x012.0 SetGet GetMax MaxSpeed 0x012.1 Set Get SetGet Polarity 0x012.2 SetGet WideAngleFocalLengthX10 0x012.5 0 to 255 Set Get SetGet ZoomLens 0x012.6 SetGet PrePositions 0x013.0 TourPeriod 0x013.1 Set Index into a zero-based array of Get seconds SetGet (3, 4, 5, 10, 15, 20, 25, 30, 40, 50, Inc 60, 120, 180, 240, 300, 600) IncGet for example, 2 = 5 seconds and Dec 4 = 15 seconds DecGet MaxNumber 0x013.2 Set Get SetGet TitleLength 0x013.3 Set Get SetGet Bosch Security Systems, Inc. Instruction Book F01U082206 | 1.0 | 2008.04 32 en | Server Applications Object Name/ BiCom Protocol for Bosch PTZ Cameras Object/Member ID Operation Type Send/Receive Data Bytes 0x013.4 Set 0 = Tour off Get 1 = Tour on Data Member Name Tour 500 300 200 Format us √ √ √ us √ √ √ us √ √ √ us √ √ √ us √ √ √ us √ √ √ ul √ √ √ √ √ √ √ √ √ us √ √ √ 0 to 255 (Get only) us √ √ √ 0 to 20 us √ √ √ Set 0 = Tour off us √ √ √ Get 1 = Tour on us √ √ √ SetGet FreezeFrame 0x013.5 Set 0 = Off Get 1 = On SetGet InactivityReturn Period 0x014.0 0x014.1 Set 0 = Off Get 1 = Preset 1 SetGet 2 = Previous AUX Set Index into a zero-based array of Get seconds SetGet (3, 4, 5, 10, 15, 20, 25, 30, 40, 50, 60, 120, 180, 240, 300, 600) for example, 2 = 5 seconds and 4 = 15 seconds Home 0x015.0 Store 1 = Perform homing operation (Set only) TourA 0x016.0 Record (0x80) 0 = Off PlaybackCont (0x81) 1 = Playback PlaybackSingle (0x82) 2 = Record Stop (0x83) Size 0x016.1 0 to 262,143 (256 k bytes) Set Get SetGet TourB5 0x017.0 PrePositionsCustom 0x018.0 Reset (0x80) Same format (members and operations) as the PrePositions Object. Reset operation clears the tour. TourPeriod 0x018.1 Set Index into a zero-based array of Get seconds SetGet (3, 4, 5, 10, 15, 20, 25, 30, 40, 50, IncGet 60, 120, 180, 240, 300, 600) Inc for example, 2 = 5 seconds and Dec 4 = 15 seconds DecGet MaxNumber 0x018.2 Set Get SetGet TitleLength 0x018.3 Set Get SetGet Tour 0x018.4 SetGet Slot 0x018.5 Set Data[15:8] = Slot number Get Data[7:0] = Preposition number SetGet Sectors 0x088.0 F01U082206 | 1.0 | 2008.04 Instruction Book Bosch Security Systems, Inc. BiCom Protocol for Bosch PTZ Cameras Object Name/ Server Applications | en Object/Member ID Operation Type Send/Receive Data Bytes Data 0x088.1 0 to 32 us √ √ Set Data[31:0] = Sectors 32–1 ul √ √ Get (if Data = 5, then sectors 1 and 4 SetGet are masked) Set 0 to 20 us √ √ Set 0 = Off us √ Get 1 = On us √ √ Member Name NumberOfSectors 33 500 300 200 Format Set √ Get SetGet Mask TitleLength 0x088.2 0x088.3 Get SetGet AutoTracker 0x0A0.0 SetGet Version 0x0A0.1 Get CameraHeight 0x0A0.2 Set 0 to 255 feet us Set 0 = Disabled us Get 1 = Enabled Get SetGet Communications 0x0A0.3 SetGet Status 0x0A0.4 Get Bit 7 to 5: Waiting for system info 0x01 = Waiting for CCD 0x02 = Waiting for lens 0x03 = Waiting for height bit 4: Rx fail bit 3: Fatal error bit 2: Video loss √ √ bit 1: Tracking on bit 0: Currently tracking Logging 0x0A1.0 TimeOnPan 0x0A1.1 Get Minutes (lb) ul Hours (3-hb) TimeOnTilt 0x0A1.2 Get Minutes (lb) ul Hours (3-hb) PowerOns 0x0A1.3 Get Number of times power switched ul OperationHours 0x0A1.4 Get Number of hours of operation TotalPanDegrees 0x0A1.5 Get Number of pan degrees executed ul TotalTiltDegrees 0x0A1.6 Get Number of tilt degrees executed ul Temperature 0x0A2.0 CurrentHousing 0x0A2.1 on Get ul Current temperature in °C, -50 to ss +100 CurrentBody 0x0A2.2 Get Current temperature in °C, -50 to ss CurrentMotor 0x0A2.3 Get Current temperature in °C, -50 to ss CurrentBase 0x0A2.4 Get +100 +100 Current temperature in °C, -50 to ss +100 MinimumHousing 0x0A2.5 Get Minimum temperature in °C, -50 ss MinimumBody 0x0A2.6 Get Minimum temperature in °C, -50 ss to +100 to +100 Bosch Security Systems, Inc. Instruction Book F01U082206 | 1.0 | 2008.04 34 en | Server Applications Object Name/ BiCom Protocol for Bosch PTZ Cameras Object/Member ID Operation Type Send/Receive Data Bytes Data 0x0A2.7 Minimum temperature in °C, -50 Member Name MinimumMotor 500 300 200 Format Get ss to +100 MinimumBase 0x0A2.8 Get Minimum temperature in °C, -50 ss MaximumHousing 0x0A2.9 Get Maximum temperature in °C, -50 ss MaximumBody 0x0A2.A Get Maximum temperature in °C, -50 ss MaximumMotor 0x0A2.B Get Maximum temperature in °C, -50 ss MaximumBase 0x0A2.C Get Maximum temperature in °C, -50 ss PrePosition1 0x200.0 Store (0x80) to +100 to +100 to +100 to +100 to +100 √ Shot (0x081) SetGet Enable 0x200.1 us √ Character String s √ Radians x 10,000 us √ Radians x 10,000 us √ FocalLength x 100 us √ Set 0 = Fixed us √ Get 1 = Auto us √ us √ us √ Set 0 = Disabled Get 1 = Enabled SetGet Title 0x200.2 Set Get SetGet PanPosition 0x200.3 Set Get SetGet TiltPosition 0x200.4 Set Get SetGet ZoomPosition 0x200.5 Set Get SetGet GainSettings 0x200.6 SetGet SceneDeleted 0x200.7 Set 0 = No Get 1 = Yes SetGet BLC 0x200.8 Set 0 = Off Get 1 = On SetGet ManualFocus 0x200.9 Set 0 = Off Get 1 = On SetGet ManualIris 0x200.A Set 0 = Off Get 1 = On us SetGet Tour 0x200.B Set 0 = Off Get 1 = On us √ SetGet PrePosition25 √ 0x201.0 √ √ … F01U082206 | 1.0 | 2008.04 Instruction Book Bosch Security Systems, Inc. BiCom Protocol for Bosch PTZ Cameras Object Name/ Server Applications | en Object/Member ID Operation Type Send/Receive Data Bytes Data Member Name 35 500 300 200 Format PrePosition2555 0x262.0 Sector1 0x300.0 Mask 0x300.1 √ √ us √ √ Character String s √ √ Set 0 = Disabled us √ √ Get 1 = Enabled Set 0 = Not masked Get 1 = Masked SetGet Title 0x300.2 Set √ Get SetGet Sector26 0x301.0 … Sector1286 0x37F.0 PrivacyMask1 0x380.0 Set Get SetGet Enable 0x380.1 SetGet PanPosition Radians x 10,000 us Radians x 10,000 us FocalLength x 100 us 0 to 255 us 0 to 255 us Radians x 10,000 us Radians x 10,000 us Set VG4 AutoDome specific. a √ √ Get Clients do not interpret the 44 SetGet bytes. Set 0 = Black us √ √ Get 1 = White SetGet 2 = Blurred 0x381.0 √ √ 0x3FF.0 √ √ 0x380.2 Set Get SetGet TiltPosition 0x380.3 Set Get SetGet ZoomPosition 0x380.4 Set Get SetGet Height 0x380.5 Set Get SetGet Width 0x380.6 Set Get SetGet PanPositionWideAngle 0x380.7 Set Get SetGet TiltPositionWideAngle 0x380.8 Set Get SetGet Data Style PrivacyMask27 0x380.9 0x380.A … PrivacyMask1287 Bosch Security Systems, Inc. Instruction Book F01U082206 | 1.0 | 2008.04 36 en | Examples BiCom Protocol for Bosch PTZ Cameras 5 Examples This section presents two real-world examples of sending commands to a VG4 AutoDome using Opcode 14. To communicate with the VG4 AutoDome, the operator uses the following syntax: <length_with_bit_7_set><Address_MSB><Address_LSB><0x14><Server_ID_MSB> <Server_ID_LSB><Object/ Member_ID_MSB><Object/Member_ID_LSB><Operation><Data_Byte_1>…<Data_Byte_n><checksum> 5.1 Setting the AutoPanScan Speed To set the AutoPanScan speed of Fast Address camera 8 to 30°/seconds, the operator issues <0x00> <0x60> <0x01> SLIP END character CRC-8 Data_Byte_2 Data_Byte_1 Operation Member_ID Object/ID Server_ID_LSB Server_ID_MSB <0xC0> <0x8B> <0x00> <0x07> Address_LSB SLIP END character Value Description END Address_MSB Syntax length_with_bit_7_set the following command to the camera: <0x02> <0x02> <0x00> <0x1E> <0xEB> <0xC0> length camera number 8 VG4 PTZ server AutoPanScan Speed Set 30°/second END This command does not return a value to the operator. F01U082206 | 1.0 | 2008.04 Instruction Book Bosch Security Systems, Inc. BiCom Protocol for Bosch PTZ Cameras 5.2 Examples | en 37 Inverting the Camera Image To set the Position/Orientation (Object/Member) to invert the image for Fast Address camera <0x00> <0x60> <0x01> <0x1A> <0x03> <0x00> <0x01> length camera number 8 VG4 PTZ server Position Orientation SetGet Value 1 = Invert SLIP END character CRC-8 Data_Byte_2 Data_Byte_1 Operation Member_ID Object/ID Server_ID_LSB Server_ID_MSB <0xC0> <0x8B> <0x00> <0x07> Address_LSB SLIP END character Value Description END Address_MSB Syntax length_with_bit_7_set 8 and to get the setting for the Position/Orientation issue the following command: <0xEF> <0xC0> END The operator sends the command above to set the Orientation to invert the camera image. The VG4, then, returns the command below that confirms that the camera accepted the <0x00> <0x60> <0x01> <0x1A> <0x03> <0x00> <0x01> checksum Data_Byte_2 Data_Byte_1 Operation Member_ID Object/ID Address_LSB Server_ID_LSB <0x8B> <0x00> <0x07> Server_ID_MSB length_with_bit_7_set Value Address_MSB Syntax setting. <0x65> Description length camera number 8 VG4 PTZ server Position Orientation SetGet Value 1 = Invert The return command mirrors the send command except for the Opcode constant value, which in turn changes the value for checksum. In this case, the camera confirms that the image is inverted because the Data Byte packets are the same as in the send command. Bosch Security Systems, Inc. Instruction Book F01U082206 | 1.0 | 2008.04 38 6 en | Appendix: Hardware Configuration BiCom Protocol for Bosch PTZ Cameras Appendix: Hardware Configuration Bosch Security System controller-based products employ a high speed serial data line to communicate with remote AutoDome series PTZ cameras and/or LTC 8560 and LTC 8561 series Receiver/Drivers. This data communication scheme has the following characteristics: – Default RS-232 parameters for receiver/drivers are: 9600 baud, 1 stop bit, 8 data bits, no parity, and no handshake. – The data communication scheme uses an Application Specific Integrated Circuit (ASIC) transceiver design, based on the now discontinued National chip set “DP8342” (transmitter) and “DP8343” (receiver). – The ASIC chip handles the data processing and is sent in a “message packet” format. – If the data consists of a single command (such as those associated with preposition or auxiliary control commands), only a single message packet may be transmitted. If the data sent is continuous (such as those associated with an Allegiant keyboard PTZ operation), the packets are repeated at the rate of 20 times per second. – The message packet duration depends upon the type of data being sent and may vary from approximately 2.8 milliseconds (i.e., a single preposition command) to over 28 milliseconds (i.e., Allegiant “Crosspoint” data). – The transmission circuit utilizes a transformer coupled design having 120 ohm characteristic line impedance. – When no data is sent, the transmission line is completely non-active -- no carrier signal or other voltage is present. – The overall amplitude can vary significantly (it is a differential type signal), but typically it ranges between 1 and 3 volts peak-to-peak. – A concept of the data transmission link is shown in the following diagram: ASIC Data IC (Tx mode) 1:1 56 Ohms 1:1 +Data -Data Data Input and Control Signal Lines F01U082206 | 1.0 | 2008.04 ASIC Data IC (Rx mode) +Data -Data 56 Ohms Drive Circuitry Instruction Book 18 Gage Shielded Twisted Pair Typical 100 Ohms Data Output and Control Signal Lines Bosch Security Systems, Inc. Americas Bosch Security Systems, Inc. 850 Greenfield Road Lancaster, Pennsylvania 17601 USA Telephone +1 888-289-0096 Fax +1 585-223-9180 Email: [email protected] www.boschsecurity.us Europe, Middle East, Africa: Bosch Security Systems B.V. P.O. Box 80002 5600 JB Eindhoven, The Netherlands Phone: + 31 40 2577 284 Fax: +31 40 2577 330 [email protected] www.boschsecurity.com Asia-Pacific: Bosch Security Systems Pte Ltd 38C Jalan Pemimpin Singapore 577180 Phone: +65 6319 3450 Fax: +65 6319 3499 [email protected] www.boschsecurity.com © Bosch Security Systems, Inc. 2008; F01U082206 | 1.0 | 2008.04; Data subject to change without notice.
© Copyright 2024 ExpyDoc