diff --git a/epicardium/modules/buttons.c b/epicardium/modules/buttons.c
index ce640f85d4864b790a5ca9960c43e351c2ada3f4..8c0d6ed1bfb88d8ff66b7b5d55adc591152e4204 100644
--- a/epicardium/modules/buttons.c
+++ b/epicardium/modules/buttons.c
@@ -6,13 +6,13 @@
 #define TOP_RIGHT 6
 
 static const uint8_t ButtonPin[] = { BOTTOM_LEFT, BOTTOM_RIGHT, TOP_RIGHT };
-static uint8_t button_states[4]; //as defined by button pin, 3->reset button
 
 uint8_t epic_buttons_read(uint8_t mask)
 {
 	uint8_t retval = 0;
 	if (portexpander_detected() && (mask % 8)) {
-		uint8_t button_status = ~portexpander_get();
+		/* Not using PB_Get() here as that performs one I2C transcation per button */
+		uint8_t button_status = portexpander_get();
 		for (int i = 0; i < 3; i++) {
 			if ((mask >> i) & 1) {
 				retval += ((button_status >> ButtonPin[i]) & 1)