Index: leahi_dialin/fp/modules/valves.py =================================================================== diff -u -rfe60234ecfea0f8634a5a35dee686f0b1fdcf4c3 -r1b36df741816a4ef251028d721235daebea88558 --- leahi_dialin/fp/modules/valves.py (.../valves.py) (revision fe60234ecfea0f8634a5a35dee686f0b1fdcf4c3) +++ leahi_dialin/fp/modules/valves.py (.../valves.py) (revision 1b36df741816a4ef251028d721235daebea88558) @@ -236,3 +236,31 @@ override_text = str(state), logger = self.logger, can_interface = self.can_interface) + + def cmd_set_valve_recovery_config(self, recovery_state: int) -> int: + """ + Constructs and sends the FP valve recovery command + Constraints: + Must be logged into FP. + Given valve ID must be one of the recovery valve IDs listed below. + NO_RECOVERY = 0, ///< NO recovery + MEDIUM_RECOVERY, ///< Medium recovery + MAX_RECOVERY, ///< Maximum recovery + NUM_OF_RECOVERY_STATES ///< Number of recovery states + @param recovery_state: int + @return: 1 if successful, zero otherwise + """ + rcv = integer_to_bytearray(recovery_state) + payload = rcv + + + return cmd_generic_override( + payload = payload, + reset = 0, + channel_id = DenaliChannels.dialin_to_fp_ch_id, + msg_id = MsgIds.MSG_ID_FP_SET_RECOVERY_VALVES_REQUEST, + entity_name = f'FP Recovery Valve set', + override_text = str(recovery_state), + logger = self.logger, + can_interface = self.can_interface) +