mirror of
https://github.com/arendst/Tasmota.git
synced 2025-07-27 04:36:31 +00:00
Add filtration toggle
This commit is contained in:
parent
100e95f2cf
commit
1e2f2385b8
@ -732,8 +732,11 @@ const char HTTP_SNS_NEOPOOL_STATUS_ACTIVE[] PROGMEM = "filter:invert(1)";
|
|||||||
* Commands
|
* Commands
|
||||||
*
|
*
|
||||||
* NPFiltration {<state> {speed}}
|
* NPFiltration {<state> {speed}}
|
||||||
* get/set manual filtration (state = 0|1, speed = 1..3)
|
* get/set manual filtration (state = 0..2, speed = 1..3)
|
||||||
* get filtration state if <state> is omitted, otherwise set new state
|
* get filtration state if <state> is omitted, otherwise set new state
|
||||||
|
* 0 - switch filtration pump off
|
||||||
|
* 1 - switch filtration pump on
|
||||||
|
* 2 - toggle filtration pump
|
||||||
* for non-standard filtration types additional speed control is possible
|
* for non-standard filtration types additional speed control is possible
|
||||||
*
|
*
|
||||||
* NPFiltrationMode {<mode>}
|
* NPFiltrationMode {<mode>}
|
||||||
@ -2129,12 +2132,19 @@ void CmndNeopoolFiltration(void)
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (value[0] >= 0 && value[0] <= 1) {
|
if (value[0] >= 0 && value[0] <= 2) {
|
||||||
// Set MBF_PAR_FILT_MODE
|
// Set MBF_PAR_FILT_MODE
|
||||||
if (NEOPOOL_MODBUS_OK != NeoPoolWriteRegisterWord(MBF_PAR_FILT_MODE, MBV_PAR_FILT_MANUAL)) {
|
if (NEOPOOL_MODBUS_OK != NeoPoolWriteRegisterWord(MBF_PAR_FILT_MODE, MBV_PAR_FILT_MANUAL)) {
|
||||||
NeopoolResponseError();
|
NeopoolResponseError();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
if (2 == value[0]) {
|
||||||
|
if (NEOPOOL_MODBUS_OK != NeoPoolReadRegister(MBF_PAR_FILTRATION_STATE, &data, 1)) {
|
||||||
|
NeopoolResponseError();
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
value[0] = data ? 0 : 1;
|
||||||
|
}
|
||||||
// Set filtration mode to manual
|
// Set filtration mode to manual
|
||||||
if (NEOPOOL_MODBUS_OK != NeoPoolWriteRegisterWord(MBF_PAR_FILT_MANUAL_STATE, value[0])) {
|
if (NEOPOOL_MODBUS_OK != NeoPoolWriteRegisterWord(MBF_PAR_FILT_MANUAL_STATE, value[0])) {
|
||||||
NeopoolResponseError();
|
NeopoolResponseError();
|
||||||
|
Loading…
x
Reference in New Issue
Block a user