Common PCF8574 i2c LCD module as Button interface.

Here is simple code to utilize common/cheap ebay i2c lcd adapter for buttons instead.

To wire it put your buttons between GND Pin #1 (nearest i2c connections with square around it) and:
Pin #4 (button 1)
Pin #5 (button 2)
Pin #6 (button 3)
Pin #11 (button 4)

The following pins are also suitable/available:
Pin #12
Pin #13
Pin #14

note: can also change i2c address using solder jumpers A0, A1 & A2


byte x=0;

void setup()

void loop()
    Wire.requestFrom(0x27,1); // <-- if you need to find your devices address
    if(Wire.available())     //If the request is available
    {;       //Receive the data

     if (x==246) Serial.println(1);
     else if (x==245) Serial.println(2);
     else if (x==243) Serial.println(3);
     else if (x==231) Serial.println(4);
       // else if (x==247) Serial.println(0);//uncomment if needed
    //Serial.println(x);uncomment to see raw data