Merge pull request #10316 from techman83/fix_mcp230xx_input

Only apply mcp230xx_oldoutpincount when USE_MCP230xx_OUTPUT set
This commit is contained in:
Theo Arends 2020-12-30 13:51:20 +01:00 committed by GitHub
commit ea224a681f
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 2 additions and 0 deletions

View File

@ -196,6 +196,7 @@ void MCP230xx_ApplySettings(void)
I2cWrite8(USE_MCP230xx_ADDR, MCP230xx_GPIO+mcp230xx_port, reg_portpins);
#endif // USE_MCP230xx_OUTPUT
}
#ifdef USE_MCP230xx_OUTPUT
TasmotaGlobal.devices_present -= mcp230xx_oldoutpincount;
mcp230xx_oldoutpincount = 0;
for (uint32_t idx=0;idx<mcp230xx_pincount;idx++) {
@ -206,6 +207,7 @@ void MCP230xx_ApplySettings(void)
int_millis[idx]=millis();
}
TasmotaGlobal.devices_present += mcp230xx_oldoutpincount;
#endif // USE_MCP230xx_OUTPUT
mcp230xx_int_en = int_en;
MCP230xx_CheckForIntCounter(); // update register on whether or not we should be counting interrupts
MCP230xx_CheckForIntRetainer(); // update register on whether or not we should be retaining interrupt events for teleperiod