mirror of
https://github.com/arendst/Tasmota.git
synced 2025-07-27 12:46:34 +00:00
Add support for TM1637 seven segment display by Ajith Vasudevan (#10889)
This commit is contained in:
parent
a1a731001b
commit
14206e46a1
@ -210,6 +210,7 @@
|
|||||||
| USE_DISPLAY_SSD1351 | - | - | - | - | - | - | x |
|
| USE_DISPLAY_SSD1351 | - | - | - | - | - | - | x |
|
||||||
| USE_DISPLAY_RA8876 | - | - | - | - | - | - | x |
|
| USE_DISPLAY_RA8876 | - | - | - | - | - | - | x |
|
||||||
| USE_DISPLAY_ST7789 | - | - | - | - | - | - | x |
|
| USE_DISPLAY_ST7789 | - | - | - | - | - | - | x |
|
||||||
|
| USE_DISPLAY_TM1637 | - | - | - | - | - | - | x |
|
||||||
| | | | | | | | |
|
| | | | | | | | |
|
||||||
| USE_FT5206 | - | - | - | - | - | - | - |
|
| USE_FT5206 | - | - | - | - | - | - | - |
|
||||||
| USE_FTC532 | - | - | - | - | - | - | - |
|
| USE_FTC532 | - | - | - | - | - | - | - |
|
||||||
|
@ -13,6 +13,7 @@ All notable changes to this project will be documented in this file.
|
|||||||
- Berry file system support
|
- Berry file system support
|
||||||
- Filesystem commands ``Ufs``, ``UfsType``, ``UfsSize``, ``UfsFree``, ``UfsDelete``, ``UfsRename`` and ``UfsRun``
|
- Filesystem commands ``Ufs``, ``UfsType``, ``UfsSize``, ``UfsFree``, ``UfsDelete``, ``UfsRename`` and ``UfsRun``
|
||||||
- Support for filesystem ``autoexec.bat`` to execute sequential commands like backlog
|
- Support for filesystem ``autoexec.bat`` to execute sequential commands like backlog
|
||||||
|
- Support for TM1637 seven segment display by Ajith Vasudevan (#10889)
|
||||||
|
|
||||||
### Changed
|
### Changed
|
||||||
- IRremoteESP8266 library from v2.7.14 to v2.7.15
|
- IRremoteESP8266 library from v2.7.14 to v2.7.15
|
||||||
|
@ -112,6 +112,7 @@ The attached binaries can also be downloaded from http://ota.tasmota.com/tasmota
|
|||||||
- Support for IR inverted leds using ``#define IR_SEND_INVERTED true`` [#10301](https://github.com/arendst/Tasmota/issues/10301)
|
- Support for IR inverted leds using ``#define IR_SEND_INVERTED true`` [#10301](https://github.com/arendst/Tasmota/issues/10301)
|
||||||
- Support for disabling 38kHz IR modulation using ``#define IR_SEND_USE_MODULATION false`` [#10301](https://github.com/arendst/Tasmota/issues/10301)
|
- Support for disabling 38kHz IR modulation using ``#define IR_SEND_USE_MODULATION false`` [#10301](https://github.com/arendst/Tasmota/issues/10301)
|
||||||
- Support for SPI display driver for ST7789 TFT by Gerhard Mutz [#9037](https://github.com/arendst/Tasmota/issues/9037)
|
- Support for SPI display driver for ST7789 TFT by Gerhard Mutz [#9037](https://github.com/arendst/Tasmota/issues/9037)
|
||||||
|
- Support for TM1637 seven segment display by Ajith Vasudevan [#10889](https://github.com/arendst/Tasmota/issues/10889)
|
||||||
- Support for time proportioned (``#define USE_TIMEPROP``) and optional PID (``#define USE_PID``) relay control [#10412](https://github.com/arendst/Tasmota/issues/10412)
|
- Support for time proportioned (``#define USE_TIMEPROP``) and optional PID (``#define USE_PID``) relay control [#10412](https://github.com/arendst/Tasmota/issues/10412)
|
||||||
- Support for 24/26/32/34 bit RFID Wiegand interface (D0/D1) by Sigurd Leuther [#3647](https://github.com/arendst/Tasmota/issues/3647)
|
- Support for 24/26/32/34 bit RFID Wiegand interface (D0/D1) by Sigurd Leuther [#3647](https://github.com/arendst/Tasmota/issues/3647)
|
||||||
- Support for SM2135 current selection using GPIO ``SM2135 DAT`` index [#10634](https://github.com/arendst/Tasmota/issues/10634)
|
- Support for SM2135 current selection using GPIO ``SM2135 DAT`` index [#10634](https://github.com/arendst/Tasmota/issues/10634)
|
||||||
|
@ -635,13 +635,15 @@
|
|||||||
// #define USE_DISPLAY_RA8876 // [DisplayModel 10] [I2cDriver39] (Touch)
|
// #define USE_DISPLAY_RA8876 // [DisplayModel 10] [I2cDriver39] (Touch)
|
||||||
// #define USE_DISPLAY_ST7789 // [DisplayModel 12] Enable ST7789 module
|
// #define USE_DISPLAY_ST7789 // [DisplayModel 12] Enable ST7789 module
|
||||||
// #define USE_DISPLAY_SSD1331 // [DisplayModel 14] Enable SSD1331 module
|
// #define USE_DISPLAY_SSD1331 // [DisplayModel 14] Enable SSD1331 module
|
||||||
// #define USE_DISPLAY_TM1637 // [DisplayModel 15] Enable TM1637 module
|
|
||||||
// #define USE_RC522 // Add support for MFRC522 13.56Mhz Rfid reader (+6k code)
|
// #define USE_RC522 // Add support for MFRC522 13.56Mhz Rfid reader (+6k code)
|
||||||
// #define USE_RC522_DATA_FUNCTION // Add support for reading data block content (+0k4 code)
|
// #define USE_RC522_DATA_FUNCTION // Add support for reading data block content (+0k4 code)
|
||||||
// #define USE_RC522_TYPE_INFORMATION // Add support for showing card type (+0k4 code)
|
// #define USE_RC522_TYPE_INFORMATION // Add support for showing card type (+0k4 code)
|
||||||
|
|
||||||
#endif // USE_SPI
|
#endif // USE_SPI
|
||||||
|
|
||||||
|
//#define USE_DISPLAY // Add Display support
|
||||||
|
// #define USE_DISPLAY_TM1637 // [DisplayModel 15] Enable TM1637 module
|
||||||
|
|
||||||
// -- Serial sensors ------------------------------
|
// -- Serial sensors ------------------------------
|
||||||
//#define USE_MHZ19 // Add support for MH-Z19 CO2 sensor (+2k code)
|
//#define USE_MHZ19 // Add support for MH-Z19 CO2 sensor (+2k code)
|
||||||
//#define USE_SENSEAIR // Add support for SenseAir K30, K70 and S8 CO2 sensor (+2k3 code)
|
//#define USE_SENSEAIR // Add support for SenseAir K30, K70 and S8 CO2 sensor (+2k3 code)
|
||||||
|
@ -715,7 +715,9 @@ void ResponseAppendFeatures(void)
|
|||||||
#if defined(USE_ENERGY_SENSOR) && defined(USE_SDM72)
|
#if defined(USE_ENERGY_SENSOR) && defined(USE_SDM72)
|
||||||
feature7 |= 0x20000000; // xnrg_18_sdm72.ino
|
feature7 |= 0x20000000; // xnrg_18_sdm72.ino
|
||||||
#endif
|
#endif
|
||||||
// feature7 |= 0x40000000;
|
#if defined(USE_DISPLAY) && defined(USE_DISPLAY_TM1637)
|
||||||
|
feature7 |= 0x40000000;
|
||||||
|
#endif
|
||||||
// feature7 |= 0x80000000;
|
// feature7 |= 0x80000000;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -301,26 +301,26 @@
|
|||||||
#undef USE_BLE_ESP32 // (ESP32 only) Disable support for native BLE on ESP32 - use new driver
|
#undef USE_BLE_ESP32 // (ESP32 only) Disable support for native BLE on ESP32 - use new driver
|
||||||
#undef USE_MI_ESP32 // (ESP32 only) Disable support for ESP32 as a BLE-bridge (+9k2 mem, +292k flash)
|
#undef USE_MI_ESP32 // (ESP32 only) Disable support for ESP32 as a BLE-bridge (+9k2 mem, +292k flash)
|
||||||
|
|
||||||
|
#define USE_DISPLAY // Add Display Support (+2k code)
|
||||||
|
#define USE_DISPLAY_TM1637 // [DisplayModel 15] Enable TM1637 module
|
||||||
|
|
||||||
#define USE_I2C // I2C using library wire (+10k code, 0k2 mem, 124 iram)
|
#define USE_I2C // I2C using library wire (+10k code, 0k2 mem, 124 iram)
|
||||||
#define USE_DISPLAY // Add I2C Display Support (+2k code)
|
#define USE_DISPLAY_MODES1TO5 // Enable display mode 1 to 5 in addition to mode 0
|
||||||
#define USE_DISPLAY_MODES1TO5 // Enable display mode 1 to 5 in addition to mode 0
|
#define USE_DISPLAY_LCD // [DisplayModel 1] Enable Lcd display (I2C addresses 0x27 and 0x3F) (+6k code)
|
||||||
#define USE_DISPLAY_LCD // [DisplayModel 1] Enable Lcd display (I2C addresses 0x27 and 0x3F) (+6k code)
|
#define USE_DISPLAY_SSD1306 // [DisplayModel 2] Enable SSD1306 Oled 128x64 display (I2C addresses 0x3C and 0x3D) (+16k code)
|
||||||
#define USE_DISPLAY_SSD1306 // [DisplayModel 2] Enable SSD1306 Oled 128x64 display (I2C addresses 0x3C and 0x3D) (+16k code)
|
#define USE_DISPLAY_MATRIX // [DisplayModel 3] Enable 8x8 Matrix display (I2C adresseses see below) (+11k code)
|
||||||
#define USE_DISPLAY_MATRIX // [DisplayModel 3] Enable 8x8 Matrix display (I2C adresseses see below) (+11k code)
|
#define USE_DISPLAY_SEVENSEG // [DisplayModel 11] [I2cDriver47] Enable sevenseg display (I2C addresses 0x70 - 0x77) (<+11k code)
|
||||||
#define USE_DISPLAY_SEVENSEG // [DisplayModel 11] [I2cDriver47] Enable sevenseg display (I2C addresses 0x70 - 0x77) (<+11k code)
|
#define USE_DISPLAY_SH1106 // [DisplayModel 7] Enable SH1106 Oled 128x64 display (I2C addresses 0x3C and 0x3D)
|
||||||
#define USE_DISPLAY_SH1106 // [DisplayModel 7] Enable SH1106 Oled 128x64 display (I2C addresses 0x3C and 0x3D)
|
|
||||||
|
|
||||||
#define USE_SPI // Hardware SPI using GPIO12(MISO), GPIO13(MOSI) and GPIO14(CLK) in addition to two user selectable GPIOs(CS and DC)
|
#define USE_SPI // Hardware SPI using GPIO12(MISO), GPIO13(MOSI) and GPIO14(CLK) in addition to two user selectable GPIOs(CS and DC)
|
||||||
#define USE_DISPLAY_ILI9341 // [DisplayModel 4] Enable ILI9341 Tft 480x320 display (+19k code)
|
#define USE_DISPLAY_ILI9341 // [DisplayModel 4] Enable ILI9341 Tft 480x320 display (+19k code)
|
||||||
#define USE_DISPLAY_EPAPER_29 // [DisplayModel 5] Enable e-paper 2.9 inch display (+19k code)
|
#define USE_DISPLAY_EPAPER_29 // [DisplayModel 5] Enable e-paper 2.9 inch display (+19k code)
|
||||||
#define USE_DISPLAY_EPAPER_42 // [DisplayModel 6] Enable e-paper 4.2 inch display
|
#define USE_DISPLAY_EPAPER_42 // [DisplayModel 6] Enable e-paper 4.2 inch display
|
||||||
#define USE_DISPLAY_ILI9488 // [DisplayModel 8]
|
#define USE_DISPLAY_ILI9488 // [DisplayModel 8]
|
||||||
#define USE_DISPLAY_SSD1351 // [DisplayModel 9]
|
#define USE_DISPLAY_SSD1351 // [DisplayModel 9]
|
||||||
#define USE_DISPLAY_RA8876 // [DisplayModel 10]
|
#define USE_DISPLAY_RA8876 // [DisplayModel 10]
|
||||||
#define USE_DISPLAY_ST7789 // [DisplayModel 12] Enable ST7789 module
|
#define USE_DISPLAY_ST7789 // [DisplayModel 12] Enable ST7789 module
|
||||||
#define USE_DISPLAY_SSD1331 // [DisplayModel 14] Enable SSD1331 module
|
#define USE_DISPLAY_SSD1331 // [DisplayModel 14] Enable SSD1331 module
|
||||||
#define USE_DISPLAY_TM1637 // [DisplayModel 15] Enable TM1637 module
|
|
||||||
|
|
||||||
#undef DEBUG_THEO // Disable debug code
|
#undef DEBUG_THEO // Disable debug code
|
||||||
#undef USE_DEBUG_DRIVER // Disable debug code
|
#undef USE_DEBUG_DRIVER // Disable debug code
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
/*
|
/*
|
||||||
xdsp_15_tm1637.ino - Support for TM1637 seven-segment display (upto 6 digits) for Tasmota
|
xdsp_15_tm1637.ino - Support for TM1637 seven-segment display (upto 6 digits) for Tasmota
|
||||||
|
|
||||||
Copyright (C) 2020 Ajith Vasudevan
|
Copyright (C) 2021 Ajith Vasudevan
|
||||||
|
|
||||||
This program is free software: you can redistribute it and/or modify
|
This program is free software: you can redistribute it and/or modify
|
||||||
it under the terms of the GNU General Public License as published by
|
it under the terms of the GNU General Public License as published by
|
||||||
@ -17,9 +17,9 @@
|
|||||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
#ifdef USE_DISPLAY
|
||||||
/*
|
#ifdef USE_DISPLAY_TM1637
|
||||||
|
/*********************************************************************************************\
|
||||||
This driver enables the display of numbers (both integers and floats) and basic text
|
This driver enables the display of numbers (both integers and floats) and basic text
|
||||||
on the inexpensive TM1637-based seven-segment modules (tested on both 4- and 6-digit variants).
|
on the inexpensive TM1637-based seven-segment modules (tested on both 4- and 6-digit variants).
|
||||||
Raw segments can also be displayed.
|
Raw segments can also be displayed.
|
||||||
@ -132,16 +132,6 @@
|
|||||||
"DisplayClock 2" // 24 hr format
|
"DisplayClock 2" // 24 hr format
|
||||||
"DisplayClock 0" // turn off clock
|
"DisplayClock 0" // turn off clock
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
*/
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
#ifdef USE_DISPLAY
|
|
||||||
#ifdef USE_DISPLAY_TM1637
|
|
||||||
/*********************************************************************************************\
|
|
||||||
* TM1637 support
|
|
||||||
\*********************************************************************************************/
|
\*********************************************************************************************/
|
||||||
|
|
||||||
#define XDSP_15 15
|
#define XDSP_15 15
|
||||||
|
@ -245,7 +245,7 @@ a_features = [[
|
|||||||
"USE_DISPLAY_ILI9488","USE_DISPLAY_SSD1351","USE_DISPLAY_RA8876","USE_DISPLAY_ST7789",
|
"USE_DISPLAY_ILI9488","USE_DISPLAY_SSD1351","USE_DISPLAY_RA8876","USE_DISPLAY_ST7789",
|
||||||
"USE_DISPLAY_SSD1331","USE_UFILESYS","USE_TIMEPROP","USE_PID",
|
"USE_DISPLAY_SSD1331","USE_UFILESYS","USE_TIMEPROP","USE_PID",
|
||||||
"USE_BS814A2","USE_SEESAW_SOIL","USE_WIEGAND","USE_NEOPOOL",
|
"USE_BS814A2","USE_SEESAW_SOIL","USE_WIEGAND","USE_NEOPOOL",
|
||||||
"USE_TOF10120","USE_SDM72","",""
|
"USE_TOF10120","USE_SDM72","USE_DISPLAY_TM1637",""
|
||||||
],[
|
],[
|
||||||
"","","","",
|
"","","","",
|
||||||
"","","","",
|
"","","","",
|
||||||
@ -282,7 +282,7 @@ else:
|
|||||||
obj = json.load(fp)
|
obj = json.load(fp)
|
||||||
|
|
||||||
def StartDecode():
|
def StartDecode():
|
||||||
print ("\n*** decode-status.py v20210122 by Theo Arends and Jacek Ziolkowski ***")
|
print ("\n*** decode-status.py v20210217 by Theo Arends and Jacek Ziolkowski ***")
|
||||||
|
|
||||||
# print("Decoding\n{}".format(obj))
|
# print("Decoding\n{}".format(obj))
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user