Summary
The DALI04 is a Domintell bus power supply module used in the Domintell2 home automation system. It is controlled indirectly via the Domintell LightProtocol over a Secured WebSocket (wss) connection to a New Generation Ethernet master module (DNET01, DNET02, DGQG02, DGQG04, ...). This spec covers the LightProtocol transport and the DALI04-specific IO format (PS4 module type, IO index /51/1); direct commands for the power supply are not documented — only its presence in the bus topology.
Transport
# LightProtocol rides on Secured WebSocket (wss) - the data are encrypted
# frames carried over HTTP. HTTPS/TLS is implicit in "wss".
# Default port is 17481 (stated). Authentication uses salted SHA-512 token.
protocols:
- tcp
addressing:
port: 17481
base_url: "" # UNRESOLVED: no HTTP base URL - the WebSocket endpoint is wss://<ip>:17481
auth:
type: password
# Login sequence: REQUESTSALT@<username> -> hash password+salt with SHA-512,
# prepend nonce, SHA-512 again, send LOGINPSW@<user>:<hashedtoken>
Traits
# UNRESOLVED: DALI04 is a bus power supply. No power-on/off, routing, query,
# or level commands documented in source for this specific module.
# - powerable (not stated for DALI04)
# - routable (not stated for DALI04)
# - queryable (not stated for DALI04)
# - levelable (not stated for DALI04)
Actions
# DALI04-specific commands are not documented in the source.
# Below are the LightProtocol master-level commands required to reach and
# identify any module (including DALI04) on the bus.
# UNRESOLVED: DALI04 (PS4) commands - none documented in source.
- id: get_lightprotocol_version
label: Get LightProtocol Version
kind: query
command: "GETLPVER"
params: []
- id: discover
label: Discover Device
kind: query
command: "DISCOVER"
params: []
- id: request_salt
label: Request Salt for User
kind: query
command: "REQUESTSALT@{username}"
params:
- name: username
type: string
- id: login_password
label: Open Session (Password)
kind: action
command: "LOGINPSW@{username}:{hashedtoken}"
params:
- name: username
type: string
- name: hashedtoken
type: string
description: sha512( sha512(password+salt) + nonce ) as hex
- id: login_password_legacy
label: Open Session (Legacy, no password)
kind: action
command: "LOGINPSW@:"
params: []
- id: logout
label: Close Session
kind: action
command: "LOGOUT"
params: []
- id: hello
label: Keep Session Open
kind: action
command: "HELLO"
params: []
- id: set_timeout
label: Set Session Timeout
kind: action
command: "TIMEOUT={n}"
params:
- name: n
type: integer
description: Minutes (0 disables timeout)
- id: appinfo
label: Download List of Modules (APPINFO)
kind: query
command: "APPINFO"
params: []
- id: ping
label: Refresh All Statuses
kind: query
command: "PING"
params: []
Feedbacks
# LightProtocol server -> client system messages, framed as
# INFO:...:INFO or ERROR:...:ERROR
- id: info_waiting_for_login
type: string
description: "Server welcome message requesting LOGIN"
example: "INFO:Waiting for LOGINPSW:INFO"
- id: info_requestsalt
type: string
description: "Reply to REQUESTSALT - supplies username, nonce, salt"
example: "INFO:REQUESTSALT:USERNAME=toto:NONCE=9301906811536867321:SALT=1007182019:INFO"
- id: info_session_opened
type: string
example: "INFO:Session opened:INFO"
- id: info_session_closed_by_server
type: string
example: "INFO:Session closed by server:INFO"
- id: info_session_timeout
type: string
example: "INFO:Session timeout:INFO"
- id: info_world
type: string
description: "Reply to HELLO"
example: "INFO:World:INFO"
- id: info_timeout_disabled
type: string
example: "INFO:Timeout disabled. Socket will never be closed unless you send LOGOUT or the connecion is lost !:INFO"
- id: info_timeout_set
type: string
description: "Confirms timeout value in minutes"
example: "INFO:Timeout set to <n>min:INFO"
- id: info_discover_reply
type: string
description: "Reply to DISCOVER (since PROG M 43.7)"
example: "INFO:I AM A DGQG04-192.168.1.250-169.254.162.138-17481-54000001WSS:INFO"
- id: error_invalid_loginpsw
type: string
example: "ERROR:Invalid LOGINPSW. Use REQUESTSALT@<username> and LOGINPSW@<username>:<hashedpsw>:ERROR"
- id: error_deprecated_login
type: string
example: "ERROR:Deprecated. Use REQUESTSALT@<username> and LOGINPSW@<username>:<hashedpsw>:ERROR"
- id: error_readonly_user
type: string
description: "Viewer attempting write command (PROG M 43.7+)"
example: "ERROR:Command denied. Read-only user:ERROR"
- id: dali04_io_presence
type: string
description: "DALI04 appears in APPINFO with module type PS4 and IO index /51/1"
example: "PS4/51/1Bus power supply"
# UNRESOLVED: DALI04-specific status payloads (PS4 IO data format) - source
# refers to section 4.8.k for full IO format which is not present in this excerpt.
Variables
# UNRESOLVED: DALI04 has no documented settable parameters in the source.
Events
# UNRESOLVED: DALI04-specific unsolicited events are not documented.
Macros
# UNRESOLVED: no multi-step sequences specific to DALI04 documented.
Safety
confirmation_required_for: []
interlocks: []
# UNRESOLVED: DALI04 is a bus power supply. Source does not document safety
# warnings, interlocks, or power-on sequencing for the DALI04 specifically.
# (General Ethernet wiring warning: "Do NOT connect Domintell bus on the RJ45
# connector, this can cause fatal damages to the module." - applies to all
# NewGen Ethernet masters, not DALI04.)
Notes
- The DALI04 is a "Bus power supply" (PS4) module type, minimum DAP version 40.1. It exposes a single IO at APPINFO index
/51/1. The source defers its full IO data format to section 4.8.k of the LightProtocol guide, which is not present in this excerpt. - This spec therefore covers the LightProtocol master transport (wss://:17481, SHA-512 password hash login, INFO/ERROR system messages) required to reach the DALI04 on the bus, rather than DALI04-specific control commands.
- Default port is 17481 for both DNET01/DNET02 and DGQG02/DGQG04.
- DNET01/DNET02: max 8 simultaneous wss connections; DGQG02/DGQG04: max 2.
- IP addressing: DHCP or static (static recommended).
- Legacy UDP support is limited to 1 channel on DNET01/DNET02 (backward compat for DETH02).
- Available login generation depends on firmware: empty user DB / legacy
LOGINPSW@:(no password) / salted-SHA-512LOGINPSW@<user>:<token>. - Authentication algorithm:
sha512( sha512(password + salt) + nonce ), SHA-512 throughout, hex-encoded. - From PROG M 43.7: role-based permissions (None / Viewer / Administrator).
Provenance
source_domains:
- pro2.mydomintell.com
- domintell.com
source_urls:
- https://pro2.mydomintell.com/share/manual/lightprotocol/domintell_ligthprotocol-v16-20250319.pdf
- https://www.domintell.com/en/products/system/power-supply/dali04/
- "https://pro2.mydomintell.com/share/manual/DALI04/Product%20Datasheet%20-%20DALI04%20-%20EN-NL-FR%20-%20V1.pdf"
retrieved_at: 2026-07-03T08:52:46.425Z
last_checked_at: 2026-07-07T11:32:17.194Z
Verification Summary
verdict: verified
checked_at: 2026-07-07T11:32:17.194Z
matched_actions: 10
action_count: 10
confidence: medium
summary: "All 10 LightProtocol session commands matched verbatim in source; only VOICEINFO (voice-assistant-only) is unrepresented. (10 unresolved item(s) noted in Known Gaps.)"
Known Gaps
- VOICEINFO
- "DALI04 is a power supply with no specific command set in the source; only its IO mapping (/51/1, module type PS4) is documented. Power, voltage, and current specifications are not stated."
- "no HTTP base URL - the WebSocket endpoint is wss://<ip>:17481"
- "DALI04 is a bus power supply. No power-on/off, routing, query,"
- "DALI04 (PS4) commands - none documented in source."
- "DALI04-specific status payloads (PS4 IO data format) - source"
- "DALI04 has no documented settable parameters in the source."
- "DALI04-specific unsolicited events are not documented."
- "no multi-step sequences specific to DALI04 documented."
- "DALI04 is a bus power supply. Source does not document safety"
- "DALI04 firmware compatibility, electrical specifications (voltage/current/power), fault behavior, and any DALI04-specific commands are not present in the source."
From the AI4AV catalog (https://ai4av.net) · ODbL-1.0