fhd552 XB rs232 Sicp Guide
fhd552 XB rs232 Sicp Guide
fhd552 XB rs232 Sicp Guide
1.1 Purpose
The purpose of this document is to explain in detail the commands and steps that can be used to control a
Philips display via RS232C.
Philips Signage displays use RXD, TXD and GND pins for RS-232C control. For RS-232C cable, the reverse
type cable should be used.
Control commands can be sent from a host controller via the RS232 connection. A new command should not
be sent until the previous command is acknowledged. However, if a response is not received within 500
milliseconds a retry may be triggered. Every valid command receives an ACK. A command that is valid but not
supported in the current implementation will be responded to with a NAV (Not Available). If the command
buffer is corrupt (transmission errors) the command will be responded to with a NACK. The display operates
according to the received command. If the command is a valid “Get” command, the display responds with the
requested info. If the command is a valid “Set” command allowed, the display performs the requested operation.
Figure1 and Figure2 explain the mechanism of the Get and Set commands.
Host controller Monitor
Get command
Get requested
Command code DATA[0] = x parameter
from Monitor
Get command Internal
cycle with processing:
report from collect report
Monitor NACK data
NAV
Set command
Set parameter
Command code DATA[0] = y in Monitor
Set command Command data DATA[1..N] Acknowledge
cycle with reception of
Acknowledge Set command
from Monitor ACK
ACK= Ok
NACK
or
NAV NACK= Not Ok
or
NAV= Not avail
Every field of packet format consists of one byte – MsgSize = 1 byte, etc.
In detail:
Number of Field Name of Field Description
Message Size has to be calculated in the fallowing way:
MsgSize + Control + Data(0) + … + Data(N) + Checksum
Byte 1: MsgSize
Range = 3 to 40 (0x3 to 0x28).
Message Control.
Bit 7..0: Monitor ID
Data.
Data[0] to
Byte 4 to Byte 39: This field can be also empty.
Data[N]
If not empty then the range of Data Size, N = 0 to 36 (0x24).
Checksum.
Range = 0 to 255 (0xFF).
Algorithm: The EXCLUSIVE-OR (XOR) of all bytes in the message except the
Last Byte: Checksum checksum itself.
Checksum = [MSG-SIZE] XOR [CONTROL] XOR DATA[0] … XOR
DATA[N]
3. MESSAGES - SYSTEM
This defines the feedback command from monitor to host controller when it receives the display command from
the host controller, depending on the commands availability, the command reported back to host controller can
be one of the ACK, NACK or NAV.
Note: there is no reply message when the wrong ID address is being used.
3.1.1 Message-Report
This command provides the SICP protocol version and the display Software version to the host controller.
3.2.1 Message-Get
3.2.2 Message-Report
4.1.1 Message-Get
4.1.2 Message-Report
4.1.3 Message-Set
The following commands are used to lock/unlock the Remote Control and the Local Keyboard functionality
corresponding.
4.2.1 Message-Get
4.2.2 Message-Report
Example: Lock Keyboard and unlocked Remote Control (Display address 01)
MsgSize Control Group Data (0) Data (1) Checksum
0x06 0x01 0xnn 0x1D 0x01 0xnn
4.2.3 Message-Set
Example: Unlock local Keyboard and unlock remote control (Display address 01)
MsgSize Control Group Data (0) Data (1) Checksum
0x06 0x01 0x00 0x1C 0x03 0xnn
4.2.4 Message-Get
Bytes Bytes Description Bits Description
DATA[0] 0x1B = User Input Control Get the lock/unlock state for
State – Get All/Voume/Power
4.2.5 Message-Report
Example: Lock all except Volume key for both Remote Control and Local Keyboard (Display address 01)
MsgSize Control Group Data (0) Data (1) Data (2) Checksum
0x07 0x01 0xnn 0x1B 0x02 0x02 0xnn
4.2.6 Message-Set
Example: Lock all except Volume key for both Remote Control and Local Keyboard (Display address 01)
MsgSize Control Group Data (0) Data (1) Data (2) Checksum
0x07 0x01 0x00 0x1A 0x02 0x02 0xnn
4.3 Power state at Cold Start
Command is used to set the cold start power state, the cold start power state are updated and stored by this
command.
4.3.1 Message-Get
4.3.2 Message-Report
Example: Current Power state at Cold Start state: Last Status (Display address 01)
MsgSize Control Group Data (0) Data (1) Checksum
0x06 0x01 0xnn 0xA4 0x02 0xnn
4.3.3 Message-Set
The value is stored and it is applied only when the display starts up from cold start power state the next time:
Power Off:
The monitor will be automatically switched to Power Off mode (even if the last status was on) whenever the
mains power is turned on or resumed after the power interruption.
Forced On:
The monitor will be automatically switched to ON mode whenever the mains power is turned on or resumed
after the power interruption.
Last Status:
The monitor will be automatically switched to the last status (either Power Off or On) whenever the mains
power is turned on or resumed after the power interruption.
Example: Set Power state at cold start to last status (Display address 01)
MsgSize Control Group Data (0) Data (1) Checksum
0x06 0x01 0x00 0xA3 0x02 0xnn
5. MESSAGES - INPUT SOURCES
5.1.1 Message-Set
Example: Set on DVI-D with Source label displaying on OSD (Display address 01)
MsgSize Control Group Data (0) Data (1) Data (2) Data (3) Data (4) Checksum
0x09 0x01 0x00 0xAC 0x09 0x01 0x01 0x00 0xnn
5.2.1 Message-Get
5.2.2 Message-Report
DATA[2] Input Source Number For Input Source Type: 0x00, 0x01, 0x02, 0x03
0x01…0x63 = Channel Number (only for
smartcard)
5.3.1 Message-Get
5.3.2 Message-Report
5.3.3 Message-Set
Example: Set the Display to the fallowing: Auto Signal Detecting Off (Display address 01)
MsgSize Control Group Data (0) Data (1) Checksum
0x06 0x01 0x00 0xAE 0x00 0xnn
6. MESSAGES - VIDEO
The following commands are used to get/set video parameters as it is defined below.
6.1.1 Message-Get
6.1.2 Message-Report
Example: All video parameters are set to 55 % (0x37) (Display address 01)
MsgSize Control Group Data (0) Data (1) Data (2) Data (3) Data (4) Data (5) Data (6) Data (7)
0x0C 0x01 0xnn 0x33 0x37 0x37 0x37 0x37 0x37 0x37 0x03
Checksum
0xnn
6.1.3 Message-Set
Example: Set all video parameters to 0x37 (55 %) (Display address 01)
MsgSize Control Group Data (0) Data (1) Data (2) Data (3) Data (4) Data (5) Data (6) Data (7)
0x0C 0x01 0x00 0x32 0x37 0x37 0x37 0x37 0x37 0x37 0x03
Checksum
0x0C
The following commands are used to get/set the color temperature.
6.1.4 Message-Get
6.1.5 Message-Report
Example: The current color temperature is set to Nature (Display address 01)
MsgSize Control Group Data (0) Data (1) Checksum
0x06 0x01 0xnn 0x35 0x01 0xnn
6.1.6 Message-Set
Example: The current color temperature is set to Nature (Display address 01)
MsgSize Control Group Data (0) Data (1) Checksum
0x06 0x01 0x00 0x34 0x01 0xnn
The following commands are used to get/set the color parameters for specific color temperature.
6.1.7 Message-Get
6.1.8 Message-Report
Example: All color parameters are set to 255 (0xFF) (Display address 01)
MsgSize Control Group Data (0) Data (1) Data (2) Data (3) Data (4) Data (5) Data (6) Chec
0x0B 0x01 0xnn 0x37 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xnn
6.1.9 Message-Set
Example: All color parameters are set to 255 (0xFF) (Display address 01)
MsgSize Control Group Data (0) Data (1) Data (2) Data (3) Data (4) Data (5) Data (6) Chec
0x0B 0x01 0x00 0x36 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xnn
6.2 Picture Format
6.2.1 Message-Get
6.2.2 Message-Report
Example: Current Picture Format is Widescreen on Full Display (Display address 01)
MsgSize Control Group Data (0) Data (0) Checksum
0x06 0x01 0xnn 0x3B 0x03 0xnn
6.2.3 Message-Set
The display shall respond with NAV if it receives a Picture Format that is not relevant to its Display Aspect
Ratio.
The display shall ignore the [Picture Format - Set] if it receives a Picture Format that it cannot execute.
Example: Set Picture Format to Widescreen on Full Display (Display address 01)
MsgSize Control Group Data (0) Data (0) Checksum
0x06 0x01 0x00 0x3A 0x03 0xnn
Picture Format Description
0x00 Normal
0x01 Custom
0x02 Real
0x03 Full
0x04 21:9
0x05 Dynamic
This command is used to control the VGA video parameters.
Value in(0,10,20,30,40,50,60,70,80,90,100)
6.2.4 Message-Get
6.2.5 Message-Report
Example: All VGA video parameters are set to 55 % (0x37) (Display address 01)
MsgSize Control Group Data (0) Data (1) Data (2) Data (3) Data (4) Checksum
0x09 0x01 0xnn 0x39 0x37 0x37 0x37 0x37 0xnn
6.2.6 Message-Set
Example: Set all VGA video parameters to 0x37 (55 %) (Display address 01)
MsgSize Control Group Data (0) Data (1) Data (2) Data (3) Data (4) Checksum
0x09 0x01 0x00 0x38 0x37 0x37 0x37 0x37 0xnn
6.3.1 Message-Get
Example: Current PIP setting is enabling and located at position 2 (Display address 01)
MsgSize Control Group Data (0) Data (1) Data (2) Data (3) Data (4) Checksum
0x09 0x01 0xnn 0x3D 0x01 0x02 0x00 0x00 0xnn
6.3.3 Message-Set
6.4.1 Message-Get
This command is used to get the source for the PIP window when PIP feature is activated.
6.4.2 Message-Report
This command is used to select the source for the PIP window before the PIP feature is activated.
7.1 Volume
7.1.1 Message-Get
The interface to set Software must be such that they also modify the variables representing these current
parameters.
To mute the display, send Volume = 0. This command does not overwrite the system mute status of the display.
7.1.2 Message-Report
7.1.3 Message-Set
Example: Set the Display Volume to 77% (0x4D) (Display address 01)
MsgSize Control Group Data (0) Data (1) Checksum
0x06 0x01 0x00 0x44 0x4D 0xnn
7.2 Volume Limits
This command is used to set the volume limit (minimum, maximum and switch on volume).
7.2.1 Message-Set
Example: Set the Display to the following: 10% (0x0A), 77% (0x4D), 50% (0x32) (Display address 01)
MsgSize Control Group Data (0) Data (1) Data (2) Data (3) Checksum
0x08 0x01 0x00 0xB8 0x0A 0x4D 0x32 0xnn
7.3 Audio Parameters
7.3.1 Message-Get
7.3.2 Message-Report
Example: Current Display settings: Treble:80% (0x50) , Bass:93% (0x5D) (Display address 01)
MsgSize Control Group Data (0) Data (1) Data (2) Checksum
0x07 0x01 0xnn 0x43 0x50 0x5D 0xnn
7.3.3 Message-Set
The interface to set Software must be such that they modify the variables representing these current parameters
Example: Set the Display to the fallowing: Treble:77% (0x4D) , Bass:77% (0x4D) (Display address 01)
MsgSize Control Group Data (0) Data (1) Data (2) Checksum
0x07 0x01 0x00 0x42 0x4D 0x4D 0xnn
8 MISCELLANEOUS
8.1.1 Message-Get
8.1.2 Message-Report
Example: Current Display Operation Hours counter value (Display address 01)
MsgSize Control Group Data (0) Data (1) Data (2) Checksum
0x07 0x01 0xnn 0x0F 0x4D 0x00 0xnn
8.2 Power Saving Mode
This command is used for dimming back light power consumption control. Different levels of power
consumptions can be achieved by using this command.
8.2.1 Message-Get
8.2.2 Message-Report
Example: Current Display settings: Power Saving Mode setting is Low (Display address 01)
MsgSize Control Group Data (0) Data (1) Checksum
0x06 0x01 0xnn 0xDE 0x01 0xnn
8.2.3 Message-Set
Example: Set the Display to Medium SmartPower Level (Display address 01)
MsgSize Control Group Data (0) Data (1) Checksum
0x06 0x01 0x00 0xDD 0x02 0xnn
Note1: This command controls the level of power-saving when the display is active-on.
Note2: Exactly how this feature is implemented, or whether it can be done at all, depends on the platform. It is
possible that the picture-quality might be compromised as a trade-off.
8.3 Auto Adjust
This command works for VGA (host controller) video auto adjust.
8.3.1 Message-Set
8.4.1 Message-Get
8.4.2 Message-Report
Example: Current Temp Sensor read out: Sensor 1 = 28°C (Display address 01)
8.5.1 Message-Get
8.5.2 Message-Report
Example: Current Display settings: Serial Code = HA1A0917123456 (Display address 01)
MsgSize Control Group Data (0) Data (1) Data (2) Data (3) Data (4) Data (5) Data (6) Data (7)
0x13 0x01 0xnn 0x15 0x48 0x41 0x31 0x41 0x30 0x39 0x31
Data (8) Data (9) Data (10) Data (11) Data (12) Data (13) Data (14) Checksum
0x37 0x31 0x32 0x33 0x34 0x35 0x36 0xnn
8.6 Tiling
8.6.1 Message-Get
8.6.2 Message-Report
Note 1:
(1) For Zero Bezel models, the maximum Position value is 150 (hexadecimal value is 0x96).
(2) For other models, the maximum Position value is 25 (hexadecimal value is 0x19).
(3) The Position is counted from left to right, then up to down in the Tiling Wall.
Example: See Figure 3 for the hexadecimal Position value in a 4x3 (H Monitors x V Monitors) Tiling Wall.
Example: See Figure 4 for the hexadecimal Position value in a 5x5 (H Monitors x V Monitors) Tiling Wall.
Example: See Figure 5 for the hexadecimal Position value in a 15x10 (H Monitors x V Monitors) Tiling Wall.
Note 2:
(1) For Zero Bezel models, the maximum H Monitors are 15 and the maximum V Monitors are 10. The
formulas for DATA[4], V Monitors, and H Monitors are as follows:
H Monotirs = MOD(Data[4], 15) (Data[4] ÷ 15, take the remainder)
V Monitors = INT(Data[4], 15) + 1 (Data[4] ÷ 15, take the quotient and plus one)
Data[4]= (V Monitors – 1) x 15 + H Monitors
Example: If H Monitors = 12 and V Monitors = 6, the Data[4] value will be (6–1) x 15 + 12 = 87
(2) For other models, the maximum H Monitors and V Monitors are 5, and the formulas for DATA[4], V
Monitors, and H Monitors are as follows:
H Monotors = MOD(Data[4], 5) (Data[4] ÷ 5, take the remainder)
V Monitors = INT(Data[4], 5) + 1 (Data[4] ÷ 5, take the quotient and plus one)
Data[4]= (V Monitors – 1) x 5 + H Monitors
Example: If H Monitors = 4 and V Monitors = 3, the Data[4] value will be (3–1) x 5 + 4 = 14.
Figure 3. The hexadecimal Position value in a 4x3 (H Monitors x V Monitors) Tiling Wall.
Figure 4. The hexadecimal Position value in a 5x5 (H Monitors x V Monitors) Tiling Wall.
Figure 5. The hexadecimal Position value in a 15x10 (H Monitors x V Monitors) Tiling Wall.
8.6.3 Message-Set
The command is used to set/get the light sensor status as it is defined as below.
8.7.1 Message-Get
8.7.2 Message-Report
8.7.3 Message-Set
Example: Set the Display to the fallowing: Light Sensor Off (Display address 01)
MsgSize Control Group Data (0) Data (1) Checksum
0x06 0x01 0x00 0x24 0x00 0xnn
8.8 OSD Rotating
The command is used to set/get the OSD menu direction as it is defined as below.
8.8.1 Message-Get
8.8.2 Message-Report
8.8.3 Message-Set
Example: Set the Display to the fallowing: OSD Rotating Off (Display address 01)
MsgSize Control Group Data (0) Data (1) Checksum
0x06 0x01 0x00 0x26 0x00 0xnn
8.9 Information OSD
The command is used to set/get the Information OSD Feature as it is defined as below.
8.9.1 Message-Get
8.9.2 Message-Report
Example: Current Display Information OSD Feature settings: Off (Display address 01)
MsgSize Control Group Data (0) Data (1) Checksum
0x06 0x01 0xnn 0x2D 0x00 0xnn
8.9.3 Message-Set
Example: Set the Display to the fallowing: Information OSD Feature: Off (Display address 01)
MsgSize Control Group Data (0) Data (1) Checksum
0x06 0x01 0x00 0x2C 0x00 0xnn
8.10 MEMC Effect
8.10.1 Message-Get
8.10.2 Message-Report
8.10.3 Message-Set
Example: Set the Display to the fallowing: MEMC Effect Off (Display address 01)
MsgSize Control Group Data (0) Data (1) Checksum
0x06 0x01 0x00 0x28 0x00 0xnn
8.11 Touch Feature
8.11.1 Message-Get
8.11.2 Message-Report
Example: Current Display Touch Feature settings: Off (Display address 01)
MsgSize Control Group Data (0) Data (1) Checksum
0x06 0x01 0xnn 0x1F 0x00 0xnn
8.11.3 Message-Set
Example: Set the Display to the fallowing: Touch Feature Off (Display address 01)
MsgSize Control Group Data (0) Data (1) Checksum
0x06 0x01 0x00 0x1E 0x00 0xnn
8.12 Noise Reduction
The command is used to set/get the Noise reduction Feature as it is defined as below.
8.12.1 Message-Get
8.12.2 Message-Report
Example: Current Display Noise Reduction Feature settings: Off (Display address 01)
MsgSize Control Group Data (0) Data (1) Checksum
0x06 0x01 0xnn 0x2B 0x00 0xnn
8.12.3 Message-Set
Example: Set the Display to the fallowing: Noise Reduction Feature Off (Display address 01)
MsgSize Control Group Data (0) Data (1) Checksum
0x06 0x01 0x00 0x2A 0x00 0xnn
8.13 Scan Mode
The command is used to set/get the Scan Mode Feature as it is defined as below.
8.13.1 Message-Get
8.13.2 Message-Report
Example: Current Display Scan Mode Feature settings: Overscan (Display address 01)
MsgSize Control Group Data (0) Data (1) Checksum
0x06 0x01 0xnn 0x51 0x00 0xnn
8.13.3 Message-Set
Example: Set the Display to the fallowing: Scan Mode Feature Overscan (Display address 01)
MsgSize Control Group Data (0) Data (1) Checksum
0x06 0x01 0x00 0x50 0x00 0xnn
8.14 Scan Conversion
The command is used to set/get the Scan Conversion Feature as it is defined as below.
8.14.1 Message-Get
8.14.2 Message-Report
Example: Current Display Scan Conversion Feature settings: Progressive (Display address 01)
MsgSize Control Group Data (0) Data (1) Checksum
0x06 0x01 0xnn 0x53 0x00 0xnn
8.14.3 Message-Set
Example: Set the Display to the fallowing: Scan Conversion Feature Progressive (Display address 01)
MsgSize Control Group Data (0) Data (1) Checksum
0x06 0x01 0x00 0x52 0x00 0xnn
8.15 Switch On Delay (Tiling)
The command is used to set/get the Switch On Delay (Tiling) Feature as it is defined as below.
Value in(OFF(0), 2, 4, 6, 8, 10, 20, 30, 40, 50, Auto(60))
8.15.1 Message-Get
8.15.2 Message-Report
Example: Current Display Switch On Delay (Tiling) Feature settings: Off (Display address 01)
MsgSize Control Group Data (0) Data (1) Checksum
0x06 0x01 0xnn 0x55 0x00 0xnn
8.15.3 Message-Set
Example: Set the Display to the fallowing: Switch On Delay (Tiling) Feature: Off (Display address 01)
MsgSize Control Group Data (0) Data (1) Checksum
0x06 0x01 0x00 0x54 0x00 0xnn
8.16.1 Message-Set
The following commands are used to get/set scheduling parameters as it is defined below.
9.1.1 Message-Get
9.1.2 Message-Report
Example: Report page1 with HDMI starts at 06:30 and ends at 22:00 every day.
MsgSize Control Group Data (0) Data (1) Data (2) Data (3) Data (4) Data (5)
0x0C 0x01 0xnn 0x5B 0x01 0x06 0x1E 0x16 0x00
Data (6) Data (7) Checksum
0x0A 0xFF 0xnn
9.1.3 Message-Set
Example: Set page1 with HDMI starts at 06:30 and ends at 22:00 every day.
MsgSize Control Group Data (0) Data (1) Data (2) Data (3) Data (4) Data (5)
0x0C 0x01 0x00 0x5A 0x10 0x06 0x1E 0x16 0x00
Data (6) Data (7) Checksum
0x0A 0xFF 0xnn
10. Group ID
10.1.1 Message-Get
10.1.2 Message-Report
10.1.3 Message-Set
Message Control.
Bit 7..6: (reserved; set to 00)
Control
Byte 2:
(first case)
Bit 5..0: Monitor ID [Display Address range from 0 to 64]
Message Control.
Bit 7: Does not allow Replies.
Set to 1 to indicate no ACK or Report is expected.
Control Bit 6: (reserved; set to zero)
for
Byte 2:
Broadcast Bit 5..0: Monitor ID [Display Address range from 0 to 64]
commands
Reserved for RS232 chaining: all zeroes means all devices in
the chain.
Message Control.
Bit 7..0: Monitor ID
V1.85 V1.86
1. Add Group byte