Skip to content

Releases: jasonacox/TM1637TinyDisplay

Added flipDisplay() Function for Device Orientation

11 May 02:29
Compare
Choose a tag to compare

v1.5.0

  • Added support for device orientation, flipping display upside down if selected during
    initialization or through a function call.
  // Flip display
  display.flipDisplay(true);
  display.showNumber(12.34);

Full Changelog: v1.4.4...v1.5.0
Issue #2

Bug Fix for showNumber() Floating Point Placement

21 Feb 19:44
Compare
Choose a tag to compare

v1.4.4

  • Bug Fix for showNumber() for floating point numbers where position is greater than zero. Fix applies to both TM1637TinyDisplay and TM1637TinyDisplay6 classes.
  // Example code that demonstrates the bug and fix.

  // showNumber(num, decimal_length, length, pos)
  display.showNumber(9.87, 2, 3, 0);
  display.showNumber(1.23, 2, 3, 3);

Full Changelog: v1.4.3...v1.4.4
Issue: #15

Added 6-Digit Animation Support

03 Jan 18:09
Compare
Choose a tag to compare

v1.4.3

  • Updated TM1637TinyDisplay6 to support true 6-digit animation.
  • Added interactive Animator Tool for 6-Digit Display's showAnimation() function (See Link)
const uint8_t ANIMATION[16][6] = {
  { 0x08, 0x00, 0x00, 0x00, 0x00, 0x00 },  // Frame 0
  { 0x00, 0x08, 0x00, 0x00, 0x00, 0x00 },  // Frame 1
  { 0x00, 0x00, 0x08, 0x00, 0x00, 0x00 },  // Frame 2
  { 0x00, 0x00, 0x00, 0x08, 0x00, 0x00 },  // Frame 3
  { 0x00, 0x00, 0x00, 0x00, 0x08, 0x00 },  // Frame 4
  { 0x00, 0x00, 0x00, 0x00, 0x00, 0x08 },  // Frame 5
  { 0x00, 0x00, 0x00, 0x00, 0x00, 0x04 },  // Frame 6
  { 0x00, 0x00, 0x00, 0x00, 0x00, 0x02 },  // Frame 7
  { 0x00, 0x00, 0x00, 0x00, 0x00, 0x01 },  // Frame 8
  { 0x00, 0x00, 0x00, 0x00, 0x01, 0x00 },  // Frame 9
  { 0x00, 0x00, 0x00, 0x01, 0x00, 0x00 },  // Frame 10
  { 0x00, 0x00, 0x01, 0x00, 0x00, 0x00 },  // Frame 11
  { 0x00, 0x01, 0x00, 0x00, 0x00, 0x00 },  // Frame 12
  { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00 },  // Frame 13
  { 0x20, 0x00, 0x00, 0x00, 0x00, 0x00 },  // Frame 14
  { 0x10, 0x00, 0x00, 0x00, 0x00, 0x00 }   // Frame 15
};

display.showAnimation(ANIMATION, FRAMES(ANIMATION), TIME_MS(10));

Add Dots Param to showString()

24 Aug 04:40
Compare
Choose a tag to compare
  • Added dots parameter to showString() and showString_P() functions.
  // void showString(const char s[], uint8_t length = MAXDIGITS, uint8_t pos = 0, uint8_t dots = 0);
  
  display.showString("HHSS",4,0,0b01000000);  // Expect: HH:SS or HH.SS
  display.showString("1234",4,0,0b01000000);  // Expect: 12:34 or 12.34

Large Number Display Fix

10 Apr 20:03
Compare
Choose a tag to compare
  • Bug Fix for 6-digit display - Changed to long num for showNumberDec() and uint32_t num for showNumberBaseEx() to display values > 32,768. See Issue #10
  • Updated 6-digit test sketch to include > 32,768 value tests with decimal settings.
  display.showNumberDec(987654, 0b10101000, false);       // Expect: 3.03.03.
  display.showNumberDec(123456, 0b11111100, false);       // Expect: 1.2.3.4.5.6.

6-Digit Display Support

31 Mar 05:37
Compare
Choose a tag to compare
  • Added support for 6-digit displays using TM1637TinyDisplay6 class (see README)
  • Update showString() for variable display size and optimized code.
  • Created global digits[] scratch storage for all functions.
  • Update showNumber() to handle long integers.

Lookup Tables PROGMEM

19 Nov 04:47
Compare
Choose a tag to compare

v1.3.0

  • Converted global digitToSegment[] and asciiToSegment[] lookup tables to PROGMEM space to save RAM
  • Fixed comparison between signed and unsigned integer expressions warning #5
  • Saves ~1.5kB in the ATtiny85 example by using showNumber() instead of sprintf() #6
  • Fixed implicit case fall through and signed/unsigned comparison warnings #7

Floating Point Numbers

02 Aug 04:12
Compare
Choose a tag to compare
  • Added floating number support to showNumber() for TM1637 displays with decimal points.

Examples

TM1637TinyDisplay display(CLK, DIO);

// Display floating point number
display.showNumber(1.234);    // Displays: 1.234
         
// Display floating point numbers with 2 decimal place formatting
display.showNumber(0.123456, 2);    // Displays: _0.12

// Display integer number (without decimal)
display.showNumber(42);    // Displays: __42

Animation Tool

04 Jul 01:29
Compare
Choose a tag to compare
  • Added interactive Animator Tool to create frame data for the showAnimation() function.
  • Added demo sketch to showcase functions and animation features.

Initial release

30 Jun 05:27
Compare
Choose a tag to compare

This is an Arduino library for the tiny 4-digit 7-segment display modules based on the TM1637 chip.

  • Easy to use functions like showNumber(), showString(), showLevel() and showAnimation()
  • Display will scroll text for larger strings
  • Functions support screen splitting for easy number + text formatting
  • Runs well on tiny controllers including the ATtiny85.