sparkfun / SparkFun_Alphanumeric_Display_Arduino_Library

Arduino Library for the SparkX Qwiic Alphanumeric Display
Other
22 stars 13 forks source link

Decimal and colon freezes Artemis #6

Closed ArrowRaider closed 4 years ago

ArrowRaider commented 4 years ago

Description of the issue

If the colon or decimal point is lit on the Qwiic Alphanumeric Display and the board is a RedBoard Artemis Nano, the board hangs.

Workbench

Steps to reproduce

Attach Artemis Nano and Display together using Qwiic cable. Upload the following sketch


HT16K33 display;

void setup() {
  Wire.begin();
  if (!display.begin())
    while (1);
}

void loop() {
  display.print("FOO.");
  digitalWrite(LED_BUILTIN, HIGH);
  delay(500);
  display.print("BAR");
  digitalWrite(LED_BUILTIN, LOW);
  delay(500);
}

You can also replace the decimal with a colon and the same behavior will happen. It will also happen if you use the Colon() or Decimal() functions. If you send simply, "FOO", it will work correctly but without lighting the segments of course.

Expected behavior

It should alternate between FOO. and BAR and the LED should blink.

Actual behavior

It says FOO. and stops

This issue may need to be filed at https://github.com/sparkfun/Arduino_Apollo3/, I am not sure.

makin-stuff commented 4 years ago

Hi there @ArrowRaider. Working on replicating this issue now. Need a bit of time. Thanks.

makin-stuff commented 4 years ago

Hey there @ArrowRaider. I've committed some changes to master. Will you please clone the current library repo or download the zip and let me know if the issues still persist. If everything checks out, I'll release a new version of the library and get the Arduino library manager up to date.

ArrowRaider commented 4 years ago

It is fixed, thanks! Also, I recently learned of the F() macro and I can confirm that this additionally works: display.print(F("FOO."))

Thanks for fixing the library metadata too.