Unit 8 encoder
- 
					
					
					
					
 Hi Im trying to use the unit 8 encoder with M5 Paper. I want to get the LED to change colour with pressing the rotary dial in using getbuttonstatus. I have managed to record the button press however it returns to its previous state without repressing the button. Any advice where Im going wrong? Here is my code: #include "UNIT_8ENCODER.h" 
 #include <M5EPD.h>UNIT_8ENCODER sensor; 
 M5EPD_Canvas canvas(&M5.EPD);int32_t encoder[8] = {0}; 
 uint8_t btn_status[8] = {0};void show_encoder_value(void) { for (int i = 0; i < 8; i++) { btn_status[i] = sensor.getButtonStatus(i); encoder[i] = sensor.getEncoderValue(i);} 
 if (btn_status[i] ==true) {
 sensor.setLEDColor(i, 0x00ff00);
 }
 else {
 sensor.setLEDColor(i, 0xff0000);
 }
 }
 }void setup() { 
 sensor.begin(&Wire, ENCODER_ADDR, 25, 32, 100000UL);
 M5.begin(true,true,true,true,true);
 M5.RTC.begin();
 M5.EPD.SetRotation(90);
 M5.EPD.Clear(true);
 canvas.createCanvas(540, 960);
 }void loop() { 
 // put your main code here, to run repeatedly:
 show_encoder_value();canvas.setTextSize(3);canvas.drawString(String(encoder[0]), 60, 30); 
 canvas.drawString(String(encoder[1]), 125, 30);
 canvas.drawString(String(encoder[2]), 190, 30);
 canvas.drawString(String(encoder[3]), 255, 30);
 canvas.drawString(String(encoder[4]), 60, 60);
 canvas.drawString(String(encoder[5]), 125, 60);
 canvas.drawString(String(encoder[6]), 190, 60);
 canvas.drawString(String(encoder[7]), 255, 60);canvas.drawString(String(btn_status[0]), 60, 130); canvas.drawString(String(btn_status[1]), 125, 130); canvas.drawString(String(btn_status[2]), 190, 130); canvas.drawString(String(btn_status[3]), 255, 130); canvas.drawString(String(btn_status[4]), 60, 160); canvas.drawString(String(btn_status[5]), 125, 160); canvas.drawString(String(btn_status[6]), 190, 160); canvas.drawString(String(btn_status[7]), 255, 160); canvas.pushCanvas(0, 0, UPDATE_MODE_DU4);delay(100); } Thanks David