After desolder the R3 from encoder 4, the “select” function works as expected,
but the scroll function doesn’t work
I don’t have All in one board, but same type encoders as you have - KY-040. After removing R3 on all encoder boards i got my homemade board to work, but reacting to encoder movement and selecting with knobs leaves room to improvement. I don’t have here same type encoders as Jofomodo uses, so maybe this is an another issue, where KY-040 encoders behave differently. I have some ideas, but first i must test here.
Alternative way is wiring all encoder boards Vcc pin to +5V. MCP23017 have internal 100k pullups, but this may be not enough. At least recommended pullup on TTL logic are somewhere 5…10k range. This is a probable reason, why these 10k resistors on encoder boards interfere with MCP23017 pins, if encoder Vcc pin left unconnected.
Update: removing all resistors on encoder boards helped my setup, now encoders and switches work as expected. One problem remains - i have feeling that in zyncoder library (zyncoder.c) not all input pullups on MCP23017 are enabled, but this is another issue to be doublechecked.