Index: firmware/App/Controllers/AirPump.c =================================================================== diff -u -ra25d5c24569e3d77487a75498a4e10dd83ada9c4 -r3074682de43568567f244e2663d1f75b7e6ea85e --- firmware/App/Controllers/AirPump.c (.../AirPump.c) (revision a25d5c24569e3d77487a75498a4e10dd83ada9c4) +++ firmware/App/Controllers/AirPump.c (.../AirPump.c) (revision 3074682de43568567f244e2663d1f75b7e6ea85e) @@ -32,10 +32,7 @@ #define AIR_PUMP_DATA_PUB_INTERVAL ( MS_PER_SECOND / TASK_GENERAL_INTERVAL ) ///< Air pump data publish interval. #define DATA_PUBLISH_COUNTER_START_COUNT 13 ///< Air pump data publish start counter. -#define AIR_PUMP_DUTY_CYCLE_MIN 0.0F ///< Air pump minimum duty cycle in percentage -#define AIR_PUMP_DUTY_CYCLE_MAX 100.0F ///< Air pump maximum duty cycle in percentage - #pragma pack(push, 1) /// Payload record structure for air pump test set command message payload. typedef struct @@ -280,7 +277,9 @@ AIR_PUMP_SET_CMD_PAYLOAD_T payload; memcpy( &payload, msgPayload, sizeof( AIR_PUMP_SET_CMD_PAYLOAD_T ) ); - if ( payload.h12Power >= AIR_PUMP_DUTY_CYCLE_MIN && payload.h12Power <= AIR_PUMP_DUTY_CYCLE_MAX ) + + // need to pass the result immediately to user when user enter invalid range + if ( ( payload.h12Power >= AIR_PUMP_DUTY_CYCLE_MIN ) && ( payload.h12Power <= AIR_PUMP_DUTY_CYCLE_MAX ) ) { setAirPumpState( (AIR_PUMP_STATE_T)payload.h12State, payload.h12Power ); result = TRUE; Index: firmware/App/Drivers/GLXferPump.c =================================================================== diff -u -ra25d5c24569e3d77487a75498a4e10dd83ada9c4 -r3074682de43568567f244e2663d1f75b7e6ea85e --- firmware/App/Drivers/GLXferPump.c (.../GLXferPump.c) (revision a25d5c24569e3d77487a75498a4e10dd83ada9c4) +++ firmware/App/Drivers/GLXferPump.c (.../GLXferPump.c) (revision 3074682de43568567f244e2663d1f75b7e6ea85e) @@ -30,8 +30,6 @@ #define AIR_PUMP_PWM_TIME 20 ///< Time (in 10ns increments) per PWM register count for the air pump = 20 kHz. #define AIR_PUMP_MAX_PWM 255 ///< Air pump maximum PWM. -#define AIR_PUMP_DUTY_CYCLE_MIN 0.0F ///< Air pump minimum duty cycle in percentage -#define AIR_PUMP_DUTY_CYCLE_MAX 100.0F ///< Air pump maximum duty cycle in percentage // ********** private data ********** Index: firmware/App/Drivers/GLXferPump.h =================================================================== diff -u -ra25d5c24569e3d77487a75498a4e10dd83ada9c4 -r3074682de43568567f244e2663d1f75b7e6ea85e --- firmware/App/Drivers/GLXferPump.h (.../GLXferPump.h) (revision a25d5c24569e3d77487a75498a4e10dd83ada9c4) +++ firmware/App/Drivers/GLXferPump.h (.../GLXferPump.h) (revision 3074682de43568567f244e2663d1f75b7e6ea85e) @@ -34,6 +34,8 @@ // ********** public definitions ********** #define AIR_PUMP_MOTOR_OFF 0.0F ///< Power level setting (PWM) for H12 air pump to turn pump off. +#define AIR_PUMP_DUTY_CYCLE_MIN 0.0F ///< Air pump minimum duty cycle in percentage +#define AIR_PUMP_DUTY_CYCLE_MAX 100.0F ///< Air pump maximum duty cycle in percentage // ********** public function prototypes **********