Summary
Hitachi CP-A Series projectors support RS-232C serial and network control through TCP ports 23 and 9715. The documented command format for RS-232C and TCP #23 is a 7-byte header plus 6-byte command data. Serial uses 19200bps 8N1. TCP #9715 wraps the 13-byte network control command in its own frame and supports MD5 challenge-response authentication when authentication is enabled. The command table documents binary-encoded hex sequences for power, input selection, image adjustment, audio, and system settings.
Transport
protocols:
- serial
- tcp
addressing:
ports:
- 23
- 9715
serial:
baud_rate: 19200
data_bits: 8
parity: none
stop_bits: 1
flow_control: null
auth:
type: UNRESOLVED # Port 1 authentication can be enabled; its authentication procedure is not specified.
tcp_auth:
port2_auth_type: md5_challenge_response # Authentication can be enabled; the default setting is enabled.
Traits
- powerable
- routable
- queryable
- levelable
Actions
- id: power_on
label: Power On
kind: action
params: []
- id: power_off
label: Power Off
kind: action
params: []
- id: power_get
label: Get Power State
kind: action
params: []
- id: input_set
label: Set Input Source
kind: action
params:
- name: source
type: integer
description: >
Setting code: 0=COMPUTER1, 1=VIDEO, 2=S-VIDEO,
4=COMPUTER2, 5=COMPONENT
- id: input_get
label: Get Input Source
kind: action
params: []
- id: error_status_get
label: Get Error Status
kind: action
params: []
- id: brightness_get
label: Get Brightness
kind: action
params: []
- id: brightness_increment
label: Brightness Increment
kind: action
params: []
- id: brightness_decrement
label: Brightness Decrement
kind: action
params: []
- id: contrast_get
label: Get Contrast
kind: action
params: []
- id: contrast_increment
label: Contrast Increment
kind: action
params: []
- id: contrast_decrement
label: Contrast Decrement
kind: action
params: []
- id: picture_mode_set
label: Set Picture Mode
kind: action
params:
- name: mode
type: integer
description: >
0=NORMAL, 1=CINEMA, 4=DYNAMIC, 0x20=BOARD(BLACK),
0x21=BOARD(GREEN), 0x22=WHITEBOARD, 0x40=DAYTIME
- id: picture_mode_get
label: Get Picture Mode
kind: action
params: []
- id: gamma_set
label: Set Gamma
kind: action
params:
- name: preset
type: integer
description: >
#1-#6 DEFAULT: 0x20-0x25 respectively;
#1-#6 CUSTOM: 0x10-0x15 respectively
- id: gamma_get
label: Get Gamma
kind: action
params: []
- id: color_temp_set
label: Set Color Temperature
kind: action
params:
- name: mode
type: integer
description: >
1=LOW, 2=MID, 3=HIGH, 0x08=Hi-BRIGHT-1, 0x09=Hi-BRIGHT-2,
0x0A=Hi-BRIGHT-3, 0x11=CUSTOM-3(LOW), 0x12=CUSTOM-2(MID),
0x13=CUSTOM-1(HIGH), 0x18=CUSTOM-4(Hi-BRIGHT-1),
0x19=CUSTOM-5(Hi-BRIGHT-2), 0x1A=CUSTOM-6(Hi-BRIGHT-3)
- id: color_temp_get
label: Get Color Temperature
kind: action
params: []
- id: color_get
label: Get Color
kind: action
params: []
- id: tint_get
label: Get Tint
kind: action
params: []
- id: sharpness_get
label: Get Sharpness
kind: action
params: []
- id: aspect_set
label: Set Aspect Ratio
kind: action
params:
- name: ratio
type: integer
description: 0=4:3, 1=16:9, 9=14:9, 0x10=NORMAL
- id: aspect_get
label: Get Aspect Ratio
kind: action
params: []
- id: mute_set
label: Set Mute
kind: action
params:
- name: state
type: integer
description: 0=OFF, 1=ON
- id: mute_get
label: Get Mute
kind: action
params: []
- id: volume_get
label: Get Volume
kind: action
params: []
- id: volume_increment
label: Volume Increment
kind: action
params: []
- id: volume_decrement
label: Volume Decrement
kind: action
params: []
- id: auto_adjust_execute
label: Auto Adjust
kind: action
params: []
- id: freeze_set
label: Set Freeze
kind: action
params:
- name: state
type: integer
description: 0=NORMAL, 1=FREEZE
- id: freeze_get
label: Get Freeze
kind: action
params: []
- id: lamp_time_get
label: Get Lamp Time
kind: action
params: []
- id: filter_time_get
label: Get Filter Time
kind: action
params: []
- id: my_memory_load
label: My Memory Load
kind: action
params:
- name: slot
type: integer
description: 0-3 (memory slots 1-4)
- id: my_memory_save
label: My Memory Save
kind: action
params:
- name: slot
type: integer
description: 0-3 (memory slots 1-4)
- id: blank_set
label: Set Blank Screen
kind: action
params:
- name: screen
type: integer
description: 0x03=BLUE, 0x05=WHITE, 0x06=BLACK, 0x20=MyScreen, 0x40=ORIGINAL
- id: blank_get
label: Get Blank Screen
kind: action
params: []
- id: auto_on_set
label: Set Auto On
kind: action
params:
- name: state
type: integer
description: 0=OFF, 1=ON
- id: auto_on_get
label: Get Auto On
kind: action
params: []
- id: auto_off_get
label: Get Auto Off Timer
kind: action
params: []
- id: speaker_set
label: Set Speaker
kind: action
params:
- name: state
type: integer
description: 0=OFF, 1=ON
- id: speaker_get
label: Get Speaker
kind: action
params: []
- id: closed_caption_display_set
label: Set Closed Caption Display
kind: action
params:
- name: state
type: integer
description: 0=OFF, 1=ON, 2=AUTO
- id: closed_caption_display_get
label: Get Closed Caption Display
kind: action
params: []
- id: closed_caption_mode_set
label: Set Closed Caption Mode
kind: action
params:
- name: mode
type: integer
description: 0=CAPTIONS, 1=TEXT
- id: closed_caption_mode_get
label: Get Closed Caption Mode
kind: action
params: []
- id: brightness_reset
label: Brightness Reset
kind: action
params: []
- id: contrast_reset
label: Contrast Reset
kind: action
params: []
- id: user_gamma_pattern_set
label: Set User Gamma Pattern
kind: action
params:
- name: pattern
type: integer
description: Off, 9 steps grayscale, 15 steps grayscale, Ramp
- id: user_gamma_pattern_get
label: Get User Gamma Pattern
kind: action
params: []
- id: user_gamma_point_get
label: Get User Gamma Point
kind: action
params:
- name: point
type: integer
description: 1-8
- id: user_gamma_point_increment
label: User Gamma Point Increment
kind: action
params:
- name: point
type: integer
description: 1-8
- id: user_gamma_point_decrement
label: User Gamma Point Decrement
kind: action
params:
- name: point
type: integer
description: 1-8
- id: color_temp_gain_get
label: Get Color Temperature Gain
kind: action
params:
- name: channel
type: string
description: R, G, B
- id: color_temp_gain_increment
label: Color Temperature Gain Increment
kind: action
params:
- name: channel
type: string
description: R, G, B
- id: color_temp_gain_decrement
label: Color Temperature Gain Decrement
kind: action
params:
- name: channel
type: string
description: R, G, B
- id: color_temp_offset_get
label: Get Color Temperature Offset
kind: action
params:
- name: channel
type: string
description: R, G, B
- id: color_temp_offset_increment
label: Color Temperature Offset Increment
kind: action
params:
- name: channel
type: string
description: R, G, B
- id: color_temp_offset_decrement
label: Color Temperature Offset Decrement
kind: action
params:
- name: channel
type: string
description: R, G, B
- id: color_increment
label: Color Increment
kind: action
params: []
- id: color_decrement
label: Color Decrement
kind: action
params: []
- id: color_reset
label: Color Reset
kind: action
params: []
- id: tint_increment
label: Tint Increment
kind: action
params: []
- id: tint_decrement
label: Tint Decrement
kind: action
params: []
- id: tint_reset
label: Tint Reset
kind: action
params: []
- id: sharpness_increment
label: Sharpness Increment
kind: action
params: []
- id: sharpness_decrement
label: Sharpness Decrement
kind: action
params: []
- id: sharpness_reset
label: Sharpness Reset
kind: action
params: []
- id: progressive_set
label: Set Progressive
kind: action
params:
- name: mode
type: integer
description: TURN OFF, TV, FILM
- id: progressive_get
label: Get Progressive
kind: action
params: []
- id: video_nr_set
label: Set Video NR
kind: action
params:
- name: level
type: integer
description: LOW, MID, HIGH
- id: video_nr_get
label: Get Video NR
kind: action
params: []
- id: overscan_get
label: Get Over Scan
kind: action
params: []
- id: overscan_increment
label: Over Scan Increment
kind: action
params: []
- id: overscan_decrement
label: Over Scan Decrement
kind: action
params: []
- id: overscan_reset
label: Over Scan Reset
kind: action
params: []
- id: v_position_get
label: Get V Position
kind: action
params: []
- id: v_position_increment
label: V Position Increment
kind: action
params: []
- id: v_position_decrement
label: V Position Decrement
kind: action
params: []
- id: v_position_reset
label: V Position Reset
kind: action
params: []
- id: h_position_get
label: Get H Position
kind: action
params: []
- id: h_position_increment
label: H Position Increment
kind: action
params: []
- id: h_position_decrement
label: H Position Decrement
kind: action
params: []
- id: h_position_reset
label: H Position Reset
kind: action
params: []
- id: h_phase_get
label: Get H Phase
kind: action
params: []
- id: h_phase_increment
label: H Phase Increment
kind: action
params: []
- id: h_phase_decrement
label: H Phase Decrement
kind: action
params: []
- id: h_size_get
label: Get H Size
kind: action
params: []
- id: h_size_increment
label: H Size Increment
kind: action
params: []
- id: h_size_decrement
label: H Size Decrement
kind: action
params: []
- id: h_size_reset
label: H Size Reset
kind: action
params: []
- id: color_space_set
label: Set Color Space
kind: action
params:
- name: mode
type: integer
description: AUTO, RGB, SMPTE240, REC709, REC601
- id: color_space_get
label: Get Color Space
kind: action
params: []
- id: component_set
label: Set Component
kind: action
params:
- name: mode
type: integer
description: COMPONENT, SCART RGB
- id: component_get
label: Get Component
kind: action
params: []
- id: c_video_format_set
label: Set C-Video Format
kind: action
params:
- name: format
type: integer
description: AUTO, NTSC, PAL, SECAM, NTSC4.43, M-PAL, N-PAL
- id: c_video_format_get
label: Get C-Video Format
kind: action
params: []
- id: s_video_format_set
label: Set S-Video Format
kind: action
params:
- name: format
type: integer
description: AUTO, NTSC, PAL, SECAM, NTSC4.43, M-PAL, N-PAL
- id: s_video_format_get
label: Get S-Video Format
kind: action
params: []
- id: frame_lock_set
label: Set Frame Lock
kind: action
params:
- name: channel
type: string
description: COMPUTER1, COMPUTER2
- name: state
type: integer
description: TURN OFF, TURN ON
- id: frame_lock_get
label: Get Frame Lock
kind: action
params:
- name: channel
type: string
description: COMPUTER1, COMPUTER2
- id: computer_in_sync_set
label: Set Computer Input Sync
kind: action
params:
- name: channel
type: string
description: COMPUTER IN1, COMPUTER IN2
- name: mode
type: integer
description: SYNC ON G ON, SYNC ON G OFF
- id: computer_in_sync_get
label: Get Computer Input Sync
kind: action
params:
- name: channel
type: string
description: COMPUTER IN1, COMPUTER IN2
- id: d_zoom_get
label: Get D-ZOOM
kind: action
params: []
- id: d_zoom_increment
label: D-ZOOM Increment
kind: action
params: []
- id: d_zoom_decrement
label: D-ZOOM Decrement
kind: action
params: []
- id: d_zoom_reset
label: D-ZOOM Reset
kind: action
params: []
- id: d_shift_get
label: Get D-SHIFT
kind: action
params:
- name: direction
type: string
description: V, H
- id: d_shift_increment
label: D-SHIFT Increment
kind: action
params:
- name: direction
type: string
description: V, H
- id: d_shift_decrement
label: D-SHIFT Decrement
kind: action
params:
- name: direction
type: string
description: V, H
- id: d_shift_reset
label: D-SHIFT Reset
kind: action
params:
- name: direction
type: string
description: V, H
- id: keystone_v_get
label: Get Keystone V
kind: action
params: []
- id: keystone_v_increment
label: Keystone V Increment
kind: action
params: []
- id: keystone_v_decrement
label: Keystone V Decrement
kind: action
params: []
- id: keystone_v_reset
label: Keystone V Reset
kind: action
params: []
- id: whisper_set
label: Set Whisper
kind: action
params:
- name: mode
type: integer
description: NORMAL, WHISPER
- id: whisper_get
label: Get Whisper
kind: action
params: []
- id: mirror_set
label: Set Mirror
kind: action
params:
- name: mode
type: integer
description: NORMAL, H:INVERT, V:INVERT, H&V:INVERT
- id: mirror_get
label: Get Mirror
kind: action
params: []
- id: volume_source_get
label: Get Volume Source
kind: action
params:
- name: source
type: string
description: COMPUTER1, COMPUTER2, COMPONENT, S-VIDEO, VIDEO
- id: volume_source_increment
label: Volume Source Increment
kind: action
params:
- name: source
type: string
description: COMPUTER1, COMPUTER2, COMPONENT, S-VIDEO, VIDEO
- id: volume_source_decrement
label: Volume Source Decrement
kind: action
params:
- name: source
type: string
description: COMPUTER1, COMPUTER2, COMPONENT, S-VIDEO, VIDEO
- id: audio_source_set
label: Set Audio Source
kind: action
params:
- name: source
type: string
description: COMPUTER1, COMPUTER2, COMPONENT, S-VIDEO, VIDEO
- name: input
type: integer
description: AUDIO1, AUDIO2, AUDIO3, Turn off
- id: audio_source_get
label: Get Audio Source
kind: action
params:
- name: source
type: string
description: COMPUTER1, COMPUTER2, COMPONENT, S-VIDEO, VIDEO
- id: remote_receive_set
label: Set Remote Receive
kind: action
params:
- name: location
type: string
description: FRONT, TOP
- name: state
type: integer
description: Off, On
- id: remote_receive_get
label: Get Remote Receive
kind: action
params:
- name: location
type: string
description: FRONT, TOP
- id: remote_frequency_set
label: Set Remote Frequency
kind: action
params:
- name: frequency
type: string
description: NORMAL, HIGH
- name: state
type: integer
description: Off, On
- id: remote_frequency_get
label: Get Remote Frequency
kind: action
params:
- name: frequency
type: string
description: NORMAL, HIGH
- id: language_set
label: Set Language
kind: action
params:
- name: language
type: integer
description: ENGLISH, FRANÇAIS, DEUTSCH, ESPAÑOL, ITALIANO, NORSK, NEDERLANDS, PORTUGUÊS, SVENSKA, PУCCKИЙ, SUOMI, POLSKI, TÜRKÇE
- id: language_get
label: Get Language
kind: action
params: []
- id: menu_position_get
label: Get Menu Position
kind: action
params:
- name: direction
type: string
description: H, V
- id: menu_position_increment
label: Menu Position Increment
kind: action
params:
- name: direction
type: string
description: H, V
- id: menu_position_decrement
label: Menu Position Decrement
kind: action
params:
- name: direction
type: string
description: H, V
- id: menu_position_reset
label: Menu Position Reset
kind: action
params:
- name: direction
type: string
description: H, V
- id: blank_on_off_set
label: Set Blank On/Off
kind: action
params:
- name: state
type: integer
description: TURN OFF, TURN ON
- id: blank_on_off_get
label: Get Blank On/Off
kind: action
params: []
- id: start_up_set
label: Set Start Up
kind: action
params:
- name: mode
type: integer
description: MyScreen, ORIGINAL, TURN OFF
- id: start_up_get
label: Get Start Up
kind: action
params: []
- id: myscreen_lock_set
label: Set MyScreen LOCK
kind: action
params:
- name: state
type: integer
description: TURN OFF, TURN ON
- id: myscreen_lock_get
label: Get MyScreen LOCK
kind: action
params: []
- id: message_set
label: Set Message
kind: action
params:
- name: state
type: integer
description: TURN OFF, TURN ON
- id: message_get
label: Get Message
kind: action
params: []
- id: auto_search_set
label: Set Auto Search
kind: action
params:
- name: state
type: integer
description: TURN OFF, TURN ON
- id: auto_search_get
label: Get Auto Search
kind: action
params: []
- id: auto_off_increment
label: Auto Off Increment
kind: action
params: []
- id: auto_off_decrement
label: Auto Off Decrement
kind: action
params: []
- id: lamp_time_reset
label: Lamp Time Reset
kind: action
params: []
- id: filter_time_reset
label: Filter Time Reset
kind: action
params: []
- id: my_button_set
label: Set My Button
kind: action
params:
- name: button
type: integer
description: MY BUTTON-1, MY BUTTON-2
- name: function
type: string
description: COMPUTER1, COMPUTER2, COMPONENT, S-VIDEO, VIDEO, INFORMATION, MY MEMORY, PICTURE MODE, FILTER RESET, e-SHOT, VOLUME +, VOLUME -, AV MUTE
- id: my_button_get
label: Get My Button
kind: action
params:
- name: button
type: integer
description: MY BUTTON-1, MY BUTTON-2
- id: magnify_get
label: Get Magnify
kind: action
params: []
- id: magnify_increment
label: Magnify Increment
kind: action
params: []
- id: magnify_decrement
label: Magnify Decrement
kind: action
params: []
- id: e_shot_set
label: Set e-SHOT
kind: action
params:
- name: image
type: string
description: OFF, IMAGE1, IMAGE2, IMAGE3, IMAGE4
- id: e_shot_get
label: Get e-SHOT
kind: action
params: []
- id: e_shot_image_delete
label: e-SHOT Image Delete
kind: action
params:
- name: image
type: integer
description: IMAGE1, IMAGE2, IMAGE3, IMAGE4
- id: closed_caption_channel_set
label: Set Closed Caption Channel
kind: action
params:
- name: channel
type: integer
description: 1, 2, 3, 4
- id: closed_caption_channel_get
label: Get Closed Caption Channel
kind: action
params: []
Feedbacks
- id: power_state
label: Power State
type: enum
values: [on, off]
query_command: Get
- id: input_state
label: Input Source
type: enum
values:
- VIDEO
- S-VIDEO
- COMPUTER1
- COMPUTER2
- COMPONENT
query_command: Get
- id: error_reply
label: Error Reply Code
type: string
description: >
'15H' = command not understood, '1CH'+'xxxxH' = cannot execute,
'1FH'+'0400H' = authentication error
- id: data_reply
label: Data Reply
type: string
description: "'1DH' + 2 bytes data returned in response to Get commands"
query_command: Get
Variables
# UNRESOLVED: projector internal setup values readable via Get command;
# full variable list not enumerated in source - only representative
# commands from the command table are documented above in Actions
Events
# UNRESOLVED: projector sends test data when power is switched on and when
# the lamp is lit; source does not document a systematic event taxonomy.
Macros
# None documented in source
Safety
confirmation_required_for: []
interlocks: []
# UNRESOLVED: no explicit interlock or safety sequencing procedure in source.
# Note: command not accepted during warm-up period (per source).
# Note: provide >=40ms interval between response code and any other code.
# Note: projector outputs test data on power-on and lamp-lit; ignore.
Notes
TCP #9715 uses MD5 challenge-response authentication when authentication is enabled. The default authentication setting for Port2 is enabled. The projector returns a random 8-byte challenge; the client concatenates the challenge and password, computes MD5, and prepends the digest to commands. Subsequent commands on the same connection may omit the authentication data. Port1 (TCP #23) authentication is disabled by default, but can be enabled; its authentication procedure is not specified in the source. The authentication password is shared between Port1 and Port2, and its default setting is blank. The RS-232C and TCP #23 command formats both use a 7-byte header and 6-byte command data. TCP #9715 uses a distinct frame: 1-byte header 02, 1-byte length 0D, 13-byte command, 1-byte checksum, and 1-byte connection ID. The connection ID is attached to reply data. TCP #9715 auto-disconnects after 30 seconds without communication. Commands are rejected during projector warm-up.
Provenance
source_domains:
- support.maxellproav.com
- applicationmarket.crestron.com
source_urls:
- https://support.maxellproav.com/wp-content/uploads/Support/OG/Hitachi_CP-A100_UM_Technical.pdf
- https://applicationmarket.crestron.com/content/Help/Hitachi/hitachi_cp-a100_v1_0_help.pdf
retrieved_at: 2026-10-07T13:51:04.101Z
last_checked_at: 2026-10-07T13:51:04.101Z
Verification Summary
verdict: verified
checked_at: 2026-10-07T13:51:04.101Z
matched_actions: 161
action_count: 161
confidence: medium
summary: "All 161 units map to source commands and transport supported; generic volume_* overlap volume_source_* (many-to-one). (8 unresolved item(s) noted in Known Gaps.)"
Known Gaps
- "CP-A52 model family membership inferred from Crestron module; not directly confirmed in source"
- "projector internal setup values readable via Get command;"
- "projector sends test data when power is switched on and when"
- "no explicit interlock or safety sequencing procedure in source."
- "precise type code values for variables other than power/input/brightness/contrast — source provides hex command frames but no semantic type code mapping beyond examples shown in command table"
- "Port1 (TCP #23) authentication procedure — the source says authentication can be enabled and is disabled by default, but does not specify its procedure."
- "Lamp hour alarm threshold, filter replacement interval — not in source"
- "CP-A52 model confirmed via Crestron module; source document does not confirm this model."
From the AI4AV catalog (https://ai4av.net) · ODbL-1.0