Reset problem with I2c backpack- HT16K33

EL Wire/Tape/Panels, LEDs, pixels and strips, LCDs and TFTs, etc products from Adafruit

Moderators: adafruit_support_bill, adafruit

Please be positive and constructive with your questions and comments.
Locked
User avatar
jayHamlin
 
Posts: 1
Joined: Wed Nov 14, 2012 10:20 am

Reset problem with I2c backpack- HT16K33

Post by jayHamlin »

I have 4 of the 4 digit 7-Segment displays on an Arduino and was having trouble with the Adafruit I2c library frequently hanging inside begin(). I noticed in the HT16K33 datasheet that you should allow at least 1MS after enabling the clock so I added 2 delays in begin... problem solved! My begin now looks like this:

void Adafruit_LEDBackpack::begin(uint8_t _addr = 0x70) {
i2c_addr = _addr;

Wire.begin();
Wire.beginTransmission(i2c_addr);
Wire.write(0x21); // turn on oscillator
Wire.endTransmission();
delay(5); // <- My addition
blinkRate(HT16K33_BLINK_OFF);
delay(5); // <-- My addition
setBrightness(15); // max brightness
}

Reset is now 100% reliable. Best of luck. Jay.

adafruit
 
Posts: 12151
Joined: Thu Apr 06, 2006 4:21 pm

Re: Reset problem with I2c backpack- HT16K33

Post by adafruit »

thanks for the note!

Locked
Please be positive and constructive with your questions and comments.

Return to “Glowy things (LCD, LED, TFT, EL) purchased at Adafruit”