Fix display freeze: move I2C work out of interrupt context #8
6
tube.ino
6
tube.ino
@@ -6,7 +6,11 @@ char tubeText[5] = "";
|
||||
void initTube() {
|
||||
// Wire initialized by BME280 sensor
|
||||
tube.setTubeType(TYPE_4, TYPE_4_DEFAULT_I2C_ADDR);
|
||||
tube.setBrightness(15);
|
||||
// Brightness drives LED current. The freeze correlates with '8' on the last
|
||||
// multiplexed digit (most segments lit -> peak current) at full brightness 15,
|
||||
// which points at a supply/I2C-bus glitch. Lowered to probe that hypothesis;
|
||||
// raise back toward 15 if the display is too dim and freezes don't return.
|
||||
tube.setBrightness(4);
|
||||
tube.setBlinkRate(BLINK_OFF);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user