Metadata-Version: 2.4
Name: DIYables-MicroPython-4Digit7Segment-TM1637
Version: 1.0.1
Summary: MicroPython library for 4-digit 7-segment display with TM1637 driver IC. Supports colon separator. Supports ESP32, Raspberry Pi Pico, Arduino Nano ESP32, Arduino Nano R1 WiFi.
Home-page: https://diyables.io/products/4-digit-7-segment-display-led-tm1637-with-colon
Author: DIYables
Author-email: DIYables <DIYables.io@gmail.com>
License: MIT
Project-URL: Homepage, https://diyables.io/products/4-digit-7-segment-display-led-tm1637-with-colon
Project-URL: Repository, https://github.com/DIYables/DIYables-MicroPython-4Digit7Segment-TM1637
Keywords: micropython,7-segment,TM1637,display,LED,ESP32,Raspberry Pi Pico,Arduino Nano ESP32,4-digit,colon,clock display,DIYables
Classifier: Programming Language :: Python :: Implementation :: MicroPython
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Requires-Python: >=3.4
Description-Content-Type: text/markdown
License-File: LICENSE
Dynamic: license-file

## DIYables_MicroPython_4Digit7Segment_TM1637

MicroPython library for 4-digit 7-segment LED display driven by TM1637 driver IC. Supports colon separator for clock display.

![TM1637 4-Digit 7-Segment Display Module](https://newbiely.com/images/tutorial/4-digit-7-segment-display-pinout.jpg)

Product Link: [DIYables 4-Digit 7-Segment Display LED TM1637 Driver with Colon Separator](https://diyables.io/products/4-digit-7-segment-display-led-tm1637-with-colon)


## Features
- Display integers (-999 to 9999)
- Display alphabetic characters (A-U, Y)
- Display special characters (degree °, dash -, underscore _)
- Zero-padding support
- Temperature display with degree symbol (°C / °F)
- Time display (HH:MM) with blinking colon separator
- Colon separator control
- String display with inline dots
- 8-level brightness control (0-7)
- No Timer or refresh loop needed (TM1637 has built-in display memory)
- 2-wire interface (CLK + DIO)


## Tested Hardware

| Board                   | Tested |
|-------------------------|:------:|
| ESP32                   |   ✅   |
| Raspberry Pi Pico       |   ✅   |
| [DIYables ESP32 Development Board](https://diyables.io/esp32-board) |   ✅   |
| [DIYables ESP32 S3, Uno-form factor](https://diyables.io/products/esp32-s3-development-board-with-esp32-s3-wroom-1-n16r8-wifi-bluetooth-uno-compatible-form-factor-works-with-arduino-ide) |   ✅   |
| Arduino Nano ESP32              |   Not yet, expected to work   |
| Arduino Giga R1 WiFi            |   Not yet, expected to work   |
| Other MicroPython boards |   Not yet, expected to work    |

## Tutorials
- [ESP32 MicroPython - 4-Digit 7-Segment Display TM1637](https://newbiely.com/tutorials/esp32-micropython/esp32-micropython-tm1637-4-digit-7-segment-display)
- [Raspberry Pi Pico - 4-Digit 7-Segment Display TM1637](https://newbiely.com/tutorials/raspberry-pico/raspberry-pi-pico-tm1637-4-digit-7-segment-display)


## References

* [DIYables 4-Digit 7-Segment Display TM1637 Library References](https://newbiely.com/library-references/diyables-micropython-tm1637-4-digit-7-segment-display-library-reference)

## Installation


You can install this library from PyPI using `mpremote`:

```
mpremote mip install DIYables-MicroPython-4Digit7Segment-TM1637
```

Or install via pip and copy to your board:

```
pip install DIYables-MicroPython-4Digit7Segment-TM1637
```

## Documentation

See [DIYables_MicroPython_4Digit7Segment_TM1637 Library Reference](https://newbiely.com/library-references/diyables-micropython-tm1637-4-digit-7-segment-display-library-reference) for the complete API documentation including all constructors, methods, and constants.

## Examples

| Example | Description |
|---------|-------------|
| [example_integer.py](examples/example_integer.py) | Display integers with optional zero-padding |
| [example_text_and_degree.py](examples/example_text_and_degree.py) | Display text, degree symbol, and temperature |
| [example_time.py](examples/example_time.py) | Display time with blinking colon separator |
| [example_individual_digits.py](examples/example_individual_digits.py) | Set individual digits, characters, and colon |
| [example_blink.py](examples/example_blink.py) | Blink integers and text using off()/on() |
