HL7 EAC_U07 Automated Equipment Command

HL7 message structure EAC_U07 groups and segments from HL7 v2.5.1 Hide structure

These are the generated groups and segments for the version selected at the top of the page. The article explains the workflow, and this panel follows the chosen HL7 version.

Message Structure

SegmentNameRequiredRepeatable
Message Header Yes No
Software Segment No Yes
Equipment Detail Yes No
EAC_U07.COMMAND
Command group Yes Yes
Equipment Command Yes No
Timing/Quantity No No
EAC_U07.SPECIMEN_CONTAINER
Specimen Container group No No
Specimen Container detail Yes No
Specimen No Yes
Clear Notification No No
Role No No

EAC_U07 sends an equipment command from one application to another, most often from a Laboratory Automation System or middleware component to an analyzer, track, aliquoter, sorter, or storage device.

This is not just "status with an imperative mood." A command can change real equipment behavior, move a specimen, clear a notification, schedule work, or ask the device to perform a defined automation action. Treat it like an operational transaction, not a casual message.

A small EAC U07 example

MSH|^~\&|LAS|CITYHOSP|TRACK01|CORELAB|20260723110500||EAC^U07^EAC_U07|EAC070001|P|2.5.1 EQU|TRACK01^Automation Track 1^CITYHOSP|20260723110500|IDLE^Idle^HL70365|REMOTE^Remote control^L|N^Normal^HL70367 ECD|800101|LOADCARRIER^Load carrier^L|Y^Yes^HL70136|20260723111000|RACK7 TQ1|1||||||20260723111000|||R^Routine^HL70485 SAC|||TUBE12345^CITYHOSP|||||||RACK^Rack^L|RACK7|04 SPM|1|SPEC12345^CITYHOSP||SER^Serum^HL70487 CNS|900100|900120|20260723100000|20260723110000|DU001^Detector drift^L|DU001^Detector drift^L

What workflow it represents

A system with orchestration authority tells equipment to perform an agreed action. The command might load a carrier, move a tube, start a prepared operation, clear a notification, or perform another site-profiled automation step.

The application-level answer is usually EAR_U08. A transport or application ACK only tells you the command message was received; it does not prove the equipment actually completed the command.

How to read the structure

MSH identifies the command event. Optional SFT can describe the sending software. Required EQU identifies the equipment being commanded.

Each COMMAND group starts with required ECD, where the command number, command code, response requirement, requested completion time, and parameters live. Optional TQ1 adds timing.

The optional SPECIMEN_CONTAINER group adds SAC and optional SPM when the command is tied to a container or specimen. Optional CNS clears one or more equipment notifications as part of the command flow.

Implementation traps

The biggest trap is under-specifying the command vocabulary. ECD-2 must be a tightly agreed code set. If "LOAD", "MOVE", and "START" mean different things to the LAS and the device, the interface is not safe to operate.

Make command identifiers durable. ECD-1 is how the EAR_U08 response can be matched back to the command that caused it, especially when multiple commands are in flight.

Be explicit about rejection, timeout, and retry behavior. Integration Soup or another interface engine can monitor command-response pairs, but only if the profile says what a missing or negative response means.

Reference notes

HL7 v2+ describes EAC_U07 as the message for sending equipment commands between applications, for example from a Laboratory Automation System to automated equipment. The local v2.5.1 structure centers on EQU plus repeating ECD-led command groups.