diff --git a/hardware/opentrons_hardware/firmware_bindings/constants.py b/hardware/opentrons_hardware/firmware_bindings/constants.py index 372323b1385..61387ea798d 100644 --- a/hardware/opentrons_hardware/firmware_bindings/constants.py +++ b/hardware/opentrons_hardware/firmware_bindings/constants.py @@ -145,6 +145,7 @@ class MessageId(int, Enum): instrument_info_request = 0x306 pipette_info_response = 0x307 gripper_info_response = 0x308 + hepauv_info_response = 0x309 set_serial_number = 0x30A get_motor_usage_request = 0x30B get_motor_usage_response = 0x30C diff --git a/hardware/opentrons_hardware/firmware_bindings/messages/message_definitions.py b/hardware/opentrons_hardware/firmware_bindings/messages/message_definitions.py index 8417309ca27..9af02770745 100644 --- a/hardware/opentrons_hardware/firmware_bindings/messages/message_definitions.py +++ b/hardware/opentrons_hardware/firmware_bindings/messages/message_definitions.py @@ -898,3 +898,12 @@ class GetMotorUsageResponse(BaseMessage): message_id: Literal[ MessageId.get_motor_usage_response ] = MessageId.get_motor_usage_response + + +@dataclass +class HepaUVInfoResponse(BaseMessage): # noqa: D101 + payload: payloads.HepaUVInfoResponsePayload + payload_type: Type[ + payloads.HepaUVInfoResponsePayload + ] = payloads.HepaUVInfoResponsePayload + message_id: Literal[MessageId.hepauv_info_response] = MessageId.hepauv_info_response diff --git a/hardware/opentrons_hardware/firmware_bindings/messages/payloads.py b/hardware/opentrons_hardware/firmware_bindings/messages/payloads.py index 62244449d0e..650c5d1e30c 100644 --- a/hardware/opentrons_hardware/firmware_bindings/messages/payloads.py +++ b/hardware/opentrons_hardware/firmware_bindings/messages/payloads.py @@ -627,3 +627,11 @@ def build(cls, data: bytes) -> "GetMotorUsageResponsePayload": return inst usage_elements: List[MotorUsageTypeField] + + +@dataclass(eq=False) +class HepaUVInfoResponsePayload(EmptyPayload): + """A response carrying data about an attached gripper.""" + + model: utils.UInt16Field + serial: SerialDataCodeField