Index: firmware/App/Modes/FPModes/FPOperationModes.h =================================================================== diff -u -rc554353ba10c84377f0b9f7218f911543a293598 -r4360891b921388dcc35e7b0362c3e4e246714e36 --- firmware/App/Modes/FPModes/FPOperationModes.h (.../FPOperationModes.h) (revision c554353ba10c84377f0b9f7218f911543a293598) +++ firmware/App/Modes/FPModes/FPOperationModes.h (.../FPOperationModes.h) (revision 4360891b921388dcc35e7b0362c3e4e246714e36) @@ -1,17 +1,17 @@ /************************************************************************** * -* Copyright (c) 2024-2024 Diality Inc. - All Rights Reserved. +* Copyright (c) 2025-2026 Diality Inc. - All Rights Reserved. * * THIS CODE MAY NOT BE COPIED OR REPRODUCED IN ANY FORM, IN PART OR IN * WHOLE, WITHOUT THE EXPLICIT PERMISSION OF THE COPYRIGHT OWNER. * * @file FPOperationModes.h * -* @author (last) Sean -* @date (last) 15-Nov-2024 +* @author (last) Raghu Kallala +* @date (last) 06-Apr-2026 * -* @author (original) Sean -* @date (original) 15-Nov-2024 +* @author (original) Michael Garthwaite +* @date (original) 08-Sep-2025 * ***************************************************************************/ @@ -34,17 +34,31 @@ #define NO_FP_SUB_STATE 0xFF ///< value for when submode does not have specific substates and is not applicable. +#pragma pack(push, 1) /// Payload record structure for op mode broadcast message typedef struct { U32 opMode; ///< Current operating mode U32 subMode; ///< Current sub-mode of current operating mode } OP_MODE_PAYLOAD_T; +/// Payload structure for FP defeatured status request +typedef struct +{ + BOOL isFPDefeatured; ///< FP defeatured status +} FP_DEF_STATUS_PAYLOAD_T; + +/// Payload structure for FP boost pump status request +typedef struct +{ + BOOL isFPBoostPumpInstalled; ///< FP boost pump installation status +} FP_BOOST_PUMP_INSTALL_STATUS_PAYLOAD_T; +#pragma pack(pop) + // ********** public function prototypes ********** void initFPOperationModes( void ); // Initialize this unit -void execFPOperationModes( void ); +void execFPOperationModes( void ); // Execute the FP operation mode state machine (scheduled periodic call) void requestNewFPOperationMode( FP_OP_MODE_T newMode ); // Request a transition to a new operation mode FP_OP_MODE_T getCurrentFPOperationMode( void ); // Get the current operation mode @@ -59,7 +73,10 @@ void setCurrentFP4thLevelState( U32 state ); // Set the current 4th level state. BOOL testSetFPOperationMode( MESSAGE_T *message ); // Set operation mode override BOOL testSetFPOpModePublishIntervalOverride( MESSAGE_T *message ); // Set operation mode publish interval override -BOOL testSetGeneratePermeateSignal( MESSAGE_T *message ); // Set start stop generate permeate. +BOOL testSetGeneratePermeateSignal( MESSAGE_T *message ); // Set start stop generate permeate. +BOOL testGetFPDefeaturedStatus( MESSAGE_T *message ); // Send a response message with FP defeatured status payload +BOOL testGetFPBoostPumpInstallStatus( MESSAGE_T *message ); // Send a response message with FP boost pump installation status payload +BOOL testSetFPOperationSubMode( MESSAGE_T *message ); // Set operation sub mode override /**@}*/