Summary
Binary control protocol for NEC NP-PH1202HL Series projectors over RS-232 serial and TCP/IP (wired LAN). Commands are sent as fixed-format hex byte sequences with a trailing checksum. Covers power, input switching, mute, picture/volume adjustment, lens control, shutter, freeze, eco mode, edge blending, PIP/Picture-by-Picture, and extensive status querying.
Transport
protocols:
- serial
- tcp
serial:
baud_rate: [115200, 38400, 19200, 9600, 4800]
data_bits: 8
parity: none
stop_bits: 1
flow_control: hardware # RTS/CTS pin assignment documented
addressing:
port: 7142 # TCP port for wired LAN command interface
auth:
type: none # inferred: no auth procedure in source
Traits
traits:
- powerable # inferred from POWER ON / POWER OFF commands
- routable # inferred from INPUT SW CHANGE command
- queryable # inferred from extensive status request commands
- levelable # inferred from VOLUME ADJUST, PICTURE ADJUST commands
- muteable # inferred from picture/sound/onscreen mute commands
Actions
actions:
- id: power_on
label: Power On
kind: action
command_hex: "02 00 00 00 00 02"
description: "Turns on the projector. No other commands accepted during power-on sequence."
params: []
- id: power_off
label: Power Off
kind: action
command_hex: "02 01 00 00 00 03"
description: "Turns off the projector. No other commands accepted during power-off and cooling."
params: []
- id: input_switch
label: Switch Input
kind: action
command_hex: "02 03 00 00 02 01 <DATA01> <CKS>"
description: "Switches the input terminal. DATA01 specifies the input terminal code."
params:
- name: input_terminal
type: integer
description: "Input terminal hex code (model-specific, see appendix)"
- id: picture_mute_on
label: Picture Mute On
kind: action
command_hex: "02 10 00 00 00 12"
description: "Turns picture mute on. Automatically cancelled on input or signal switch."
params: []
- id: picture_mute_off
label: Picture Mute Off
kind: action
command_hex: "02 11 00 00 00 13"
description: "Turns picture mute off."
params: []
- id: sound_mute_on
label: Sound Mute On
kind: action
command_hex: "02 12 00 00 00 14"
description: "Turns sound mute on. Automatically cancelled on input switch, signal switch, or volume adjust."
params: []
- id: sound_mute_off
label: Sound Mute Off
kind: action
command_hex: "02 13 00 00 00 15"
description: "Turns sound mute off."
params: []
- id: onscreen_mute_on
label: Onscreen Mute On
kind: action
command_hex: "02 14 00 00 00 16"
description: "Turns onscreen mute on. Automatically cancelled on input or signal switch."
params: []
- id: onscreen_mute_off
label: Onscreen Mute Off
kind: action
command_hex: "02 15 00 00 00 17"
description: "Turns onscreen mute off."
params: []
- id: picture_adjust
label: Picture Adjust
kind: action
command_hex: "03 10 00 00 05 <DATA01> FF <DATA02> <DATA03> <DATA04> <CKS>"
description: "Adjusts picture parameters (brightness, contrast, color, hue, sharpness)."
params:
- name: target
type: integer
description: "00h=Brightness, 01h=Contrast, 02h=Color, 03h=Hue, 04h=Sharpness"
- name: mode
type: integer
description: "00h=Absolute value, 01h=Relative value"
- name: value
type: integer
description: "Adjustment value (16-bit, low byte then high byte)"
- id: volume_adjust
label: Volume Adjust
kind: action
command_hex: "03 10 00 00 05 05 00 <DATA01> <DATA02> <DATA03> <CKS>"
description: "Adjusts sound volume."
params:
- name: mode
type: integer
description: "00h=Absolute value, 01h=Relative value"
- name: value
type: integer
description: "Adjustment value (16-bit, low byte then high byte)"
- id: aspect_adjust
label: Aspect Adjust
kind: action
command_hex: "03 10 00 00 05 18 00 00 <DATA01> 00 <CKS>"
description: "Sets the aspect ratio. DATA01 values are model-specific."
params:
- name: aspect_value
type: integer
description: "Aspect code (model-specific, see appendix)"
- id: lamp_adjust
label: Lamp Adjust / Light Adjust
kind: action
command_hex: "03 10 00 00 05 96 FF <DATA03> <DATA04> <DATA05> <CKS>"
description: "Adjusts lamp/light output level."
params:
- name: mode
type: integer
description: "00h=Absolute value, 01h=Relative value"
- name: value
type: integer
description: "Adjustment value (16-bit, low byte then high byte)"
- id: remote_key_code
label: Remote Key Code
kind: action
command_hex: "02 0F 00 00 02 <DATA01> <DATA02> <CKS>"
description: "Sends a remote control key code. See key code table in source."
params:
- name: key_code
type: integer
description: "WORD key code (DATA01=low, DATA02=high)"
- id: shutter_close
label: Shutter Close
kind: action
command_hex: "02 16 00 00 00 18"
description: "Closes the lens shutter."
params: []
- id: shutter_open
label: Shutter Open
kind: action
command_hex: "02 17 00 00 00 19"
description: "Opens the lens shutter."
params: []
- id: lens_control
label: Lens Control
kind: action
command_hex: "02 18 00 00 02 <DATA01> <DATA02> <CKS>"
description: "Adjusts lens position (zoom, focus, shift H/V, periphery focus). Timed drive or continuous."
params:
- name: target
type: integer
description: "00h=Zoom, 01h=Focus, 02h=Lens Shift H, 03h=Lens Shift V, 06h=Periphery Focus"
- name: content
type: integer
description: "00h=Stop, 01h-03h=Plus drive (1s/0.5s/0.25s), 7Fh=Plus continuous, 81h=Minus continuous, FDh-FFh=Minus drive (0.25s/0.5s/1s)"
- id: lens_control_2
label: Lens Control 2 (Absolute/Relative)
kind: action
command_hex: "02 1D 00 00 04 <DATA01> <DATA02> <DATA03> <DATA04> <CKS>"
description: "Adjusts lens position with absolute or relative value."
params:
- name: target
type: integer
description: "00h=Zoom, 01h=Focus, 02h=Lens Shift H, 03h=Lens Shift V, FFh=Stop"
- name: mode
type: integer
description: "00h=Absolute value, 02h=Relative value"
- name: value
type: integer
description: "Adjustment value (16-bit, low byte then high byte)"
- id: lens_memory_control
label: Lens Memory Control
kind: action
command_hex: "02 1E 00 00 01 <DATA01> <CKS>"
description: "Controls lens memory (MOVE, STORE, RESET)."
params:
- name: operation
type: integer
description: "00h=MOVE, 01h=STORE, 02h=RESET"
- id: reference_lens_memory_control
label: Reference Lens Memory Control
kind: action
command_hex: "02 1F 00 00 01 <DATA01> <CKS>"
description: "Controls reference lens memory (MOVE, STORE, RESET) for the selected profile."
params:
- name: operation
type: integer
description: "00h=MOVE, 01h=STORE, 02h=RESET"
- id: lens_memory_option_set
label: Lens Memory Option Set
kind: action
command_hex: "02 21 00 00 02 <DATA01> <DATA02> <CKS>"
description: "Sets lens memory options."
params:
- name: target
type: integer
description: "00h=LOAD BY SIGNAL, 01h=FORCED MUTE"
- name: value
type: integer
description: "00h=OFF, 01h=ON"
- id: lens_profile_set
label: Lens Profile Set
kind: action
command_hex: "02 27 00 00 01 <DATA01> <CKS>"
description: "Selects the reference lens memory profile number."
params:
- name: profile
type: integer
description: "00h=Profile 1, 01h=Profile 2"
- id: freeze_control
label: Freeze Control
kind: action
command_hex: "01 98 00 00 01 <DATA01> <CKS>"
description: "Controls the freeze function."
params:
- name: operation
type: integer
description: "01h=Freeze On, 02h=Freeze Off"
- id: eco_mode_set
label: Eco Mode Set
kind: action
command_hex: "03 B1 00 00 02 07 <DATA01> <CKS>"
description: "Sets the eco mode. Values are model-specific."
params:
- name: eco_mode
type: integer
description: "Eco mode value (model-specific, see appendix)"
- id: lan_projector_name_set
label: LAN Projector Name Set
kind: action
command_hex: "03 B1 00 00 12 2C <DATA01-16> 00 <CKS>"
description: "Sets the projector name (up to 16 bytes)."
params:
- name: name
type: string
description: "Projector name (up to 16 bytes)"
- id: pip_pbp_set
label: PIP/Picture-by-Picture Set
kind: action
command_hex: "03 B1 00 00 03 C5 <DATA01> <DATA02> <CKS>"
description: "Sets PIP or Picture-by-Picture mode."
params:
- name: target
type: integer
description: "00h=MODE, 01h=START POSITION, 02h=SUB INPUT/1, 09h=SUB INPUT 2, 0Ah=SUB INPUT 3"
- name: value
type: integer
description: "Setting value (mode: 00h=PIP, 01h=PbP; position: 00h-03h=TL/TR/BL/BR; sub input: model-specific)"
- id: edge_blending_set
label: Edge Blending Set
kind: action
command_hex: "03 B1 00 00 03 DF 00 <DATA01> <CKS>"
description: "Sets edge blending on or off."
params:
- name: value
type: integer
description: "00h=OFF, 01h=ON"
- id: audio_select_set
label: Audio Select Set
kind: action
command_hex: "03 C9 00 00 03 09 <DATA01> <DATA02> <CKS>"
description: "Sets audio input source."
params:
- name: input_terminal
type: integer
description: "Input terminal code (model-specific)"
- name: setting
type: integer
description: "00h=Same as specified terminal, 01h=BNC, 02h=COMPUTER"
Feedbacks
feedbacks:
- id: error_status
label: Error Status
type: binary
command_hex: "00 88 00 00 00 88"
description: "Returns 12 bytes of error bit flags (cover, fan, temperature, lamp, formatter, mirror, interlock, etc.). Bit=0 normal, Bit=1 error."
- id: projector_information
label: Projector Information
type: binary
command_hex: "03 8A 00 00 00 8D"
description: "Returns projector name (DATA01-49), lamp usage time in seconds (DATA83-86), filter usage time in seconds (DATA87-90)."
- id: filter_usage
label: Filter Usage Information
type: binary
command_hex: "03 95 00 00 00 98"
description: "Returns filter usage time (seconds) and filter alarm start time (seconds)."
- id: lamp_information
label: Lamp Information
type: binary
command_hex: "03 96 00 00 02 <DATA01> <DATA02> <CKS>"
description: "Returns lamp usage time or remaining life percentage."
params:
- name: lamp
type: integer
description: "00h=Lamp 1, 01h=Lamp 2"
- name: content
type: integer
description: "01h=Usage time (seconds), 04h=Remaining life (%)"
- id: carbon_savings
label: Carbon Savings Information
type: binary
command_hex: "03 9A 00 00 01 <DATA01> <CKS>"
description: "Returns carbon savings in kg and mg."
params:
- name: target
type: integer
description: "00h=Total Carbon Savings, 01h=Carbon Savings during operation"
- id: running_status
label: Running Status
type: binary
command_hex: "00 85 00 00 01 01 87"
description: "Returns power status, cooling status, power on/off process status, and operation status."
- id: input_status
label: Input Status
type: binary
command_hex: "00 85 00 00 01 02 88"
description: "Returns signal switch process, signal list number, selection signal type, test pattern display, and content displayed."
- id: mute_status
label: Mute Status
type: binary
command_hex: "00 85 00 00 01 03 89"
description: "Returns picture mute, sound mute, onscreen mute, forced onscreen mute, and onscreen display status."
- id: model_name
label: Model Name
type: string
command_hex: "00 85 00 00 01 04 8A"
description: "Returns the projector model name (NUL-terminated string, up to 32 bytes)."
- id: cover_status
label: Cover Status
type: enum
command_hex: "00 85 00 00 01 05 8B"
description: "Returns mirror/lens cover status."
values: ["normal (cover opened)", "cover closed"]
- id: lens_control_request
label: Lens Position Values
type: binary
command_hex: "02 1C 00 00 02 <DATA01> 00 <CKS>"
description: "Returns current value and adjustment range for zoom/focus/lens shift."
params:
- name: target
type: integer
description: "00h=Zoom, 01h=Focus, 02h=Lens Shift H, 03h=Lens Shift V"
- id: lens_memory_option_request
label: Lens Memory Option
type: enum
command_hex: "02 20 00 00 01 <DATA01> <CKS>"
description: "Returns lens memory option setting."
params:
- name: target
type: integer
description: "00h=LOAD BY SIGNAL, 01h=FORCED MUTE"
- id: lens_information
label: Lens Information
type: binary
command_hex: "02 22 00 00 01 00 25"
description: "Returns lens motor operation status (lens memory, zoom, focus, lens shift H/V). Bit flags: 0=Stop, 1=During operation."
- id: lens_profile_request
label: Lens Profile
type: enum
command_hex: "02 28 00 00 00 2A"
description: "Returns the selected reference lens memory profile."
values: ["Profile 1", "Profile 2"]
- id: gain_parameter
label: Gain Parameter
type: binary
command_hex: "03 05 00 00 03 <DATA01> 00 00 <CKS>"
description: "Returns adjustment range, default, and current value for brightness/contrast/color/hue/sharpness/volume/lamp adjust."
params:
- name: target
type: integer
description: "00h=Brightness, 01h=Contrast, 02h=Color, 03h=Hue, 04h=Sharpness, 05h=Volume, 96h=Lamp/Light Adjust"
- id: setting_request
label: Projector Settings
type: binary
command_hex: "00 85 00 00 01 00 86"
description: "Returns base model type, sound function availability, and profile number."
- id: information_string
label: Information String
type: string
command_hex: "00 D0 00 00 03 00 <DATA01> 01 <CKS>"
description: "Returns horizontal or vertical sync frequency as a string."
params:
- name: info_type
type: integer
description: "03h=Horizontal sync frequency, 04h=Vertical sync frequency"
- id: eco_mode_request
label: Eco Mode
type: integer
command_hex: "03 B0 00 00 01 07 BB"
description: "Returns the current eco mode setting (model-specific values)."
- id: lan_projector_name_request
label: LAN Projector Name
type: string
command_hex: "03 B0 00 00 01 2C E0"
description: "Returns the projector name (up to 17 bytes, NUL-terminated)."
- id: mac_address
label: MAC Address
type: string
command_hex: "03 B0 00 00 02 9A 00 4F"
description: "Returns the projector MAC address (6 bytes)."
- id: pip_pbp_request
label: PIP/Picture-by-Picture
type: binary
command_hex: "03 B0 00 00 02 C5 <DATA01> <CKS>"
description: "Returns PIP/PbP mode, start position, or sub input setting."
params:
- name: target
type: integer
description: "00h=MODE, 01h=START POSITION, 02h=SUB INPUT/1, 09h=SUB INPUT 2, 0Ah=SUB INPUT 3"
- id: edge_blending_request
label: Edge Blending Mode
type: enum
command_hex: "03 B0 00 00 02 DF 00 94"
description: "Returns edge blending status."
values: ["OFF", "ON"]
- id: base_model_type_request
label: Base Model Type
type: binary
command_hex: "00 BF 00 00 01 00 C0"
description: "Returns base model type and model name."
- id: serial_number_request
label: Serial Number
type: string
command_hex: "00 BF 00 00 02 01 06 C8"
description: "Returns the projector serial number (up to 16 bytes, NUL-terminated)."
- id: basic_information_request
label: Basic Information
type: binary
command_hex: "00 BF 00 00 01 02 C2"
description: "Returns operation status, content displayed, signal type, video/sound/onscreen mute, and freeze status."
Variables
variables:
- id: brightness
label: Brightness
type: integer
description: "Picture brightness level. Adjustable via PICTURE ADJUST (target 00h)."
# UNRESOLVED: valid range not explicitly stated for NP-PH1202HL; gain parameter request returns range dynamically
- id: contrast
label: Contrast
type: integer
description: "Picture contrast level. Adjustable via PICTURE ADJUST (target 01h)."
- id: color
label: Color
type: integer
description: "Picture color level. Adjustable via PICTURE ADJUST (target 02h)."
- id: hue
label: Hue
type: integer
description: "Picture hue level. Adjustable via PICTURE ADJUST (target 03h)."
- id: sharpness
label: Sharpness
type: integer
description: "Picture sharpness level. Adjustable via PICTURE ADJUST (target 04h)."
- id: volume
label: Volume
type: integer
description: "Sound volume level. Adjustable via VOLUME ADJUST."
Events
# UNRESOLVED: no unsolicited notification events documented in source; all responses are command-reply
Macros
# UNRESOLVED: no multi-step sequences explicitly described in source
Safety
confirmation_required_for: []
interlocks: []
notes: >-
The error status response (command 009) includes interlock switch open detection (DATA09 Bit1),
cover error (DATA01 Bit0), and mirror cover error (DATA03 Bit5).
No explicit safety interlock procedure is documented in the command reference.
# UNRESOLVED: full safety/interlock procedures not documented in this command reference
Notes
The protocol is entirely binary (hex byte sequences), not ASCII. Each command frame includes a checksum calculated as the low byte of the sum of all preceding bytes. Responses include error codes (ERR1/ERR2) on failure. The device uses a Control ID (ID1) and Model Code (ID2) in responses that vary per unit.
Power ON/OFF commands block all other commands during the power transition (including cooling time for power off). Some models cannot receive LAN commands in standby mode.
Picture mute, sound mute, and onscreen mute are automatically cancelled on input terminal switch or video signal switch. Sound mute is also cancelled on volume adjustment.
Lens control supports both timed drives (0.25s, 0.5s, 1s) and continuous drives (stop by sending 00h). While the lens is being driven, the same command can be reissued without stopping first.
Usage time counters update at one-minute intervals despite returning one-second precision.
The supplementary appendix tables for input terminal codes, aspect values, and eco mode values do not include a specific row for the NP-PH1202HL series; only NP4100, NP-Mxxx, and NP-MExxx models are listed.
Provenance
source_domains:
- sharpdisplays.eu
source_urls:
- https://www.sharpdisplays.eu/p/download/cp/Products/Projectors/Shared/CommandLists/NEC-ExternalControlManual-english.pdf
retrieved_at: 2026-04-29T13:52:30.761Z
last_checked_at: 2026-06-02T22:11:02.732Z
Verification Summary
verdict: verified
checked_at: 2026-06-02T22:11:02.732Z
matched_actions: 28
action_count: 28
confidence: medium
summary: "All 28 spec actions traced to source (dip-safe re-verify). (12 unresolved item(s) noted in Known Gaps.)"
Known Gaps
- "specific input terminal hex codes for NP-PH1202HL not listed in the supplementary tables; the appendix tables only cover NP4100, NP-Mxxx, and NP-MExxx models"
- "eco mode value mapping for NP-PH1202HL not listed in appendix"
- "aspect value mapping for NP-PH1202HL not listed in appendix"
- "valid range not explicitly stated for NP-PH1202HL; gain parameter request returns range dynamically"
- "no unsolicited notification events documented in source; all responses are command-reply"
- "no multi-step sequences explicitly described in source"
- "full safety/interlock procedures not documented in this command reference"
- "input terminal hex codes for NP-PH1202HL not in appendix"
- "aspect value mapping for NP-PH1202HL not in appendix"
- "eco mode value mapping for NP-PH1202HL not in appendix"
- "standby mode LAN/serial command reception behavior for NP-PH1202HL not listed"
- "display signal type mapping may differ for NP-PH1202HL"
From the AI4AV catalog (https://ai4av.net) · ODbL-1.0