mirror of
https://github.com/arendst/Tasmota.git
synced 2025-07-24 11:16:34 +00:00
PROJECTOR_CTRL: Add WARMING states [NEC]
NEC V300W returns undocumented states 0x01 and 0x02 during warming up Consider Projector already powered-up
This commit is contained in:
parent
cabd9bdffc
commit
2793402027
@ -35,6 +35,8 @@ static const struct projector_ctrl_command_info_s projector_ctrl_commands[] = {
|
||||
};
|
||||
#define PROJECTOR_CTRL_QRYPWR_ON 0x04
|
||||
#define PROJECTOR_CTRL_QRYPWR_COOLING 0x05
|
||||
#define PROJECTOR_CTRL_QRYPWR_STARTING 0x01 //undocumented state, seen on V300W
|
||||
#define PROJECTOR_CTRL_QRYPWR_WARMING 0x02 //undocumented state, seen on V300W
|
||||
|
||||
|
||||
#elif defined(USE_PROJECTOR_CTRL_OPTOMA)
|
||||
@ -59,6 +61,8 @@ static const struct projector_ctrl_command_info_s projector_ctrl_commands[] = {
|
||||
};
|
||||
#define PROJECTOR_CTRL_QRYPWR_ON 0x31
|
||||
#define PROJECTOR_CTRL_QRYPWR_COOLING 0x31 //placebo
|
||||
#define PROJECTOR_CTRL_QRYPWR_STARTING 0x31 //placebo
|
||||
#define PROJECTOR_CTRL_QRYPWR_WARMING 0x31 //placebo
|
||||
|
||||
|
||||
#else
|
||||
|
@ -328,11 +328,19 @@ projector_ctrl_loop(struct projector_ctrl_softc_s *sc)
|
||||
break;
|
||||
case PROJECTOR_CTRL_S_IDLE:
|
||||
if ((oldstate==PROJECTOR_CTRL_S_QRY_PWR)&&(sc->sc_ser_result==PROJECTOR_CTRL_R_PASS)){
|
||||
if(((sc->sc_ser_value==PROJECTOR_CTRL_QRYPWR_ON)||(sc->sc_ser_value==PROJECTOR_CTRL_QRYPWR_COOLING))&&(sc->sc_dev_state!=PROJECTOR_CTRL_DEV_PWR_ON)){
|
||||
if(( (sc->sc_ser_value==PROJECTOR_CTRL_QRYPWR_ON)
|
||||
||(sc->sc_ser_value==PROJECTOR_CTRL_QRYPWR_COOLING)
|
||||
||(sc->sc_ser_value==PROJECTOR_CTRL_QRYPWR_STARTING)
|
||||
||(sc->sc_ser_value==PROJECTOR_CTRL_QRYPWR_WARMING)
|
||||
)&&(sc->sc_dev_state!=PROJECTOR_CTRL_DEV_PWR_ON)){
|
||||
sc->sc_dev_state=PROJECTOR_CTRL_DEV_PWR_ON;
|
||||
ExecuteCommandPower(sc->sc_device, POWER_ON, SRC_IGNORE);
|
||||
};
|
||||
if(((sc->sc_ser_value!=PROJECTOR_CTRL_QRYPWR_ON)&&(sc->sc_ser_value!=PROJECTOR_CTRL_QRYPWR_COOLING))&&(sc->sc_dev_state!=PROJECTOR_CTRL_DEV_PWR_OFF)){
|
||||
if(( (sc->sc_ser_value!=PROJECTOR_CTRL_QRYPWR_ON)
|
||||
&&(sc->sc_ser_value!=PROJECTOR_CTRL_QRYPWR_COOLING)
|
||||
&&(sc->sc_ser_value!=PROJECTOR_CTRL_QRYPWR_STARTING)
|
||||
&&(sc->sc_ser_value!=PROJECTOR_CTRL_QRYPWR_WARMING)
|
||||
)&&(sc->sc_dev_state!=PROJECTOR_CTRL_DEV_PWR_OFF)){
|
||||
sc->sc_dev_state=PROJECTOR_CTRL_DEV_PWR_OFF;
|
||||
ExecuteCommandPower(sc->sc_device, POWER_OFF, SRC_IGNORE);
|
||||
};
|
||||
|
Loading…
x
Reference in New Issue
Block a user