Skip to content

add ArduinoSevenSegmentTM1637 #6608

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 1 commit into
base: main
Choose a base branch
from
Open

Conversation

kolod
Copy link
Contributor

@kolod kolod commented Jul 16, 2025

Add ArduinoSevenSegmentTM1637 library

📋 Library Information

📝 Description

Modern Arduino library for controlling 4-digit seven segment displays with TM1636/TM1637 driver ICs. This library provides dual ecosystem support for both Arduino IDE and PlatformIO, with comprehensive CI/CD testing and enhanced code quality.

✨ Key Features

  • 📦 Dual Platform Support: Works with both Arduino IDE and PlatformIO
  • 🔧 LCD API v1.0 Compliance: Compatible with standard LCD library interfaces
  • 🎨 Print Class Integration: Supports all standard print methods (print(), println(), etc.)
  • 🚀 Multi-Platform Testing: Automated CI/CD across AVR, ESP8266, ESP32, and STM32
  • 🎯 Extended Functionality: Includes fun classes with animations (bombtimer, nightrider, bouncingBall)
  • 📚 Comprehensive Examples: 6 working examples covering all major use cases

🔧 Technical Details

  • Category: Display
  • Architectures: * (Universal compatibility)
  • Framework: Arduino
  • Supported Chips: TM1636, TM1637
  • License: Open source

📁 Library Structure Validation

  • library.properties: Compliant with Arduino Library Specification 1.5
  • src/ folder: Contains all source files
  • examples/ folder: 6 working examples (Basic, PrintNumber, SerialPrint, ExtClock, FunPrintAll, LowLevel)
  • keywords.txt: Proper syntax highlighting definitions
  • LICENSE: Open source license included
  • README.md: Comprehensive documentation

🚀 Quality Assurance

  • Automated Testing: GitHub Actions CI/CD with multi-platform builds
  • Code Quality: Fixed C++ compatibility issues, const correctness
  • Example Validation: All examples compile successfully on supported platforms
  • Semantic Versioning: Proper version tagging (v1.1.2)

@github-actions github-actions bot added the topic: submission Add library to the list label Jul 16, 2025
Copy link
Contributor

ERROR: Arduino Lint found errors with https://github.com/kolod/ArduinoTM1637:

Linting library in ArduinoTM1637
INFO: No header file found matching library name (ArduinoSevenSegmentTM1637.h). Best practices are for primary header   
      filename to match library name.                                                                                   
      See: https://arduino.github.io/arduino-cli/latest/library-specification/#libraryproperties-file-format            
      (Rule LS008)                                                                                                      
ERROR: Library name ArduinoSevenSegmentTM1637 starts with "Arduino". These names are reserved for official libraries.
       See: https://arduino.github.io/arduino-cli/latest/library-specification/#libraryproperties-file-format        
       (Rule LP012)                                                                                                  

Linter results for project: 1 ERRORS, 0 WARNINGS

-------------------

Linting sketch in ArduinoTM1637/examples/Basic

Linter results for project: no errors or warnings

-------------------

Linting sketch in ArduinoTM1637/examples/ExtClock

Linter results for project: no errors or warnings

-------------------

Linting sketch in ArduinoTM1637/examples/ExtScoreboard

Linter results for project: no errors or warnings

-------------------

Linting sketch in ArduinoTM1637/examples/FunPrintAll

Linter results for project: no errors or warnings

-------------------

Linting sketch in ArduinoTM1637/examples/FunPrintLevel

Linter results for project: no errors or warnings

-------------------

Linting sketch in ArduinoTM1637/examples/LowLevel

Linter results for project: no errors or warnings

-------------------

Linting sketch in ArduinoTM1637/examples/PrintNumber

Linter results for project: no errors or warnings

-------------------

Linting sketch in ArduinoTM1637/examples/SerialPrint

Linter results for project: no errors or warnings

-------------------

Linter results for projects: 1 ERRORS, 0 WARNINGS

Copy link
Contributor

Thanks for your interest in contributing to the Arduino Library Manager index @kolod
Please resolve the error(s) mentioned in the previous comment.

After resolving the issue, trigger this check again by doing one of the following:

  • Commit the required change to the branch you submitted this pull request from.
  • Comment here, mentioning @ArduinoBot in the comment.

NOTE: It is not necessary to open a new pull request. ❗

More information:
https://github.com/arduino/library-registry/blob/main/README.md#if-the-problem-is-with-the-pull-request

@per1234 per1234 self-assigned this Jul 16, 2025
Copy link
Contributor

@per1234 per1234 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hello @kolod. Thanks for your interest in contributing to the Arduino Library Manager.

I see the bot reported a problem with your submission that will block its acceptance:

ERROR: Library name ArduinoSevenSegmentTM1637 starts with "Arduino". These names are reserved for official libraries.
       See: https://arduino.github.io/arduino-cli/latest/library-specification/#libraryproperties-file-format        
       (Rule LP012)    

Please fix the problem so we can proceed with your submission.

You will need to do the following things:

  1. Change the value of the name property in the library's library.properties metadata file to a unique name that meets the requirements defined here.
    You can search the Arduino IDE Library Manager to check if a prospective name is already taken.
  2. Bump the value of the version property in the library's library.properties metadata file.
  3. Create a new release or tag in the library repository.
  4. Add a comment here in the pull request thread that mentions @ArduinoBot.

After that, the automated checks will run again. Once those are passing, your library will be automatically added to Library Manager.

If you have any questions or concerns, please let me know.

Regards, Per

@per1234 per1234 added the status: waiting for information More information must be provided before work can proceed label Jul 16, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
status: waiting for information More information must be provided before work can proceed topic: submission Add library to the list
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants