Update changelogs

Add support for PCA9632 4-channel 8-bit PWM driver as light driver by Pascal Heinrich (#17557)
This commit is contained in:
Theo Arends 2023-01-01 14:29:41 +01:00
parent 25b4040283
commit 14ee8decf7
8 changed files with 17 additions and 12 deletions

View File

@ -5,6 +5,7 @@ All notable changes to this project will be documented in this file.
## [12.3.1.3] ## [12.3.1.3]
### Added ### Added
- Support for PCA9632 4-channel 8-bit PWM driver as light driver by Pascal Heinrich (#17557)
### Breaking Changed ### Breaking Changed

View File

@ -72,6 +72,7 @@ In addition to @arendst the following code is mainly owned by:
| xdrv_61_ds3502 | f-reiling | xdrv_61_ds3502 | f-reiling
| xdrv_62_improv | @arendst | xdrv_62_improv | @arendst
| xdrv_63_modbus_bridge | @jeroenst | xdrv_63_modbus_bridge | @jeroenst
| xdrv_64_pca9632 | Pascal Heinrich
| | | |
| xdrv_79_esp32_ble | @staars, @btsimonh | xdrv_79_esp32_ble | @staars, @btsimonh
| xdrv_81_esp32_webcam | @gemu, @philrich | xdrv_81_esp32_webcam | @gemu, @philrich

View File

@ -109,4 +109,4 @@ Index | Define | Driver | Device | Address(es) | Description
72 | USE_INA3221 | xsns_100 | INA3221 | 0x40-0x43 | 3-channels Voltage and Current sensor 72 | USE_INA3221 | xsns_100 | INA3221 | 0x40-0x43 | 3-channels Voltage and Current sensor
73 | USE_HMC5883L | xsns_101 | HMC5883L | 0x1E | 3-channels Magnetic Field Sensor 73 | USE_HMC5883L | xsns_101 | HMC5883L | 0x1E | 3-channels Magnetic Field Sensor
74 | USE_DISPLAY_TM1650 | xdsp_20 | TM1650 | 0x24 - 0x27, 0x34 - 0x37 | Four-digit seven-segment LED controller 74 | USE_DISPLAY_TM1650 | xdsp_20 | TM1650 | 0x24 - 0x27, 0x34 - 0x37 | Four-digit seven-segment LED controller
75 | USE_PCA9632 | xdrv_91 | PCA9632 | 0x60 | 4-channel 4-bit pwm driver 75 | USE_PCA9632 | xdrv_64 | PCA9632 | 0x60 | 4-channel 4-bit pwm driver

View File

@ -113,6 +113,7 @@ The latter links can be used for OTA upgrades too like ``OtaUrl https://ota.tasm
- Support for IPv6 DNS records (AAAA) and IPv6 ``Ping`` for ESP32 and ESP8266 [#17417](https://github.com/arendst/Tasmota/issues/17417) - Support for IPv6 DNS records (AAAA) and IPv6 ``Ping`` for ESP32 and ESP8266 [#17417](https://github.com/arendst/Tasmota/issues/17417)
- Support for IPv6 only networks on Ethernet (not yet Wifi) - Support for IPv6 only networks on Ethernet (not yet Wifi)
- Support for TM1650 display as used in some clocks by Stefan Oskamp [#17594](https://github.com/arendst/Tasmota/issues/17594) - Support for TM1650 display as used in some clocks by Stefan Oskamp [#17594](https://github.com/arendst/Tasmota/issues/17594)
- Support for PCA9632 4-channel 8-bit PWM driver as light driver by Pascal Heinrich [#17557](https://github.com/arendst/Tasmota/issues/17557)
- Berry support for ``crypto.SHA256`` [#17430](https://github.com/arendst/Tasmota/issues/17430) - Berry support for ``crypto.SHA256`` [#17430](https://github.com/arendst/Tasmota/issues/17430)
- Berry crypto add ``EC_P256`` and ``PBKDF2_HMAC_SHA256`` algorithms required by Matter protocol [#17473](https://github.com/arendst/Tasmota/issues/17473) - Berry crypto add ``EC_P256`` and ``PBKDF2_HMAC_SHA256`` algorithms required by Matter protocol [#17473](https://github.com/arendst/Tasmota/issues/17473)
- Berry crypto add ``random`` to generate series of random bytes - Berry crypto add ``random`` to generate series of random bytes

View File

@ -632,7 +632,7 @@
// #define USE_PCA9685 // [I2cDriver1] Enable PCA9685 I2C HW PWM Driver - Must define I2C Address in #define USE_PCA9685_ADDR below - range 0x40 - 0x47 (+1k4 code) // #define USE_PCA9685 // [I2cDriver1] Enable PCA9685 I2C HW PWM Driver - Must define I2C Address in #define USE_PCA9685_ADDR below - range 0x40 - 0x47 (+1k4 code)
// #define USE_PCA9685_ADDR 0x40 // Enable PCA9685 I2C Address to use (Must be within range 0x40 through 0x47 - set according to your wired setup) // #define USE_PCA9685_ADDR 0x40 // Enable PCA9685 I2C Address to use (Must be within range 0x40 through 0x47 - set according to your wired setup)
// #define USE_PCA9685_FREQ 50 // Define default PWM frequency in Hz to be used (must be within 24 to 1526) - If other value is used, it will rever to 50Hz // #define USE_PCA9685_FREQ 50 // Define default PWM frequency in Hz to be used (must be within 24 to 1526) - If other value is used, it will rever to 50Hz
// #define USE_PCA9632 // [I2cDriver75] Enable PCA9632 I2C HW PWM Driver // #define USE_PCA9632 // [I2cDriver75] Enable PCA9632 I2C HW PWM Driver (+1k8 code)
// #define USE_PCA9632_ADDR 0x60 // Define PCA9685 I2C Address to use (Must be within range 0x60 through 0x63 - set according to your wired setup) // #define USE_PCA9632_ADDR 0x60 // Define PCA9685 I2C Address to use (Must be within range 0x60 through 0x63 - set according to your wired setup)
// #define USE_PCA9632_CM_0 0 // Mapping for channel 0 // #define USE_PCA9632_CM_0 0 // Mapping for channel 0
// #define USE_PCA9632_CM_1 1 // Mapping for channel 1 // #define USE_PCA9632_CM_1 1 // Mapping for channel 1

View File

@ -864,8 +864,9 @@ void ResponseAppendFeatures(void)
#if defined(USE_I2C) && defined(USE_DISPLAY) && defined(USE_DISPLAY_TM1650) #if defined(USE_I2C) && defined(USE_DISPLAY) && defined(USE_DISPLAY_TM1650)
feature9 |= 0x00001000; // xdsp_20_tm1650.ino feature9 |= 0x00001000; // xdsp_20_tm1650.ino
#endif #endif
#if defined(USE_I2C) && defined(USE_PCA9632)
// feature9 |= 0x00002000; feature9 |= 0x00002000;
#endif
// feature9 |= 0x00004000; // feature9 |= 0x00004000;
// feature9 |= 0x00008000; // feature9 |= 0x00008000;

View File

@ -1,5 +1,5 @@
/* /*
xdrv_91_pca9632.ino - Support for I2C PCA9632 4-channel 8-bit hardware PWM driver on Tasmota xdrv_64_pca9632.ino - Support for I2C PCA9632 4-channel 8-bit hardware PWM driver on Tasmota
Copyright (C) 2022 Pascal Heinrich Copyright (C) 2022 Pascal Heinrich
@ -25,7 +25,7 @@
* I2C Address: 0x60 .. 0x63 * I2C Address: 0x60 .. 0x63
\*********************************************************************************************/ \*********************************************************************************************/
#define XDRV_91 91 #define XDRV_64 64
#define XI2C_75 75 // See I2CDEVICES.md #define XI2C_75 75 // See I2CDEVICES.md
#define PCA9632_REG_MODE1 0x00 #define PCA9632_REG_MODE1 0x00
@ -41,7 +41,7 @@
#define PCA9632_AUTO_INC 0x80 #define PCA9632_AUTO_INC 0x80
#ifndef USE_PCA9632_ADDR #ifndef USE_PCA9632_ADDR
#define USE_PCA9632_ADDR 0x62 #define USE_PCA9632_ADDR 0x60
#endif #endif
#ifndef USE_PCA9632_CM_0 #ifndef USE_PCA9632_CM_0
@ -244,7 +244,7 @@ uint8_t PCA9632_PinMapping(uint8_t pin) {
} }
} }
bool Xdrv91(uint32_t function) { bool Xdrv64(uint32_t function) {
if (!I2cEnabled(XI2C_75)) { return false; } if (!I2cEnabled(XI2C_75)) { return false; }
bool result = false; bool result = false;
@ -262,7 +262,7 @@ bool Xdrv91(uint32_t function) {
} }
break; break;
case FUNC_COMMAND_DRIVER: case FUNC_COMMAND_DRIVER:
if (XDRV_91 == XdrvMailbox.index) { if (XDRV_64 == XdrvMailbox.index) {
result = PCA9632_Command(); result = PCA9632_Command();
} }
break; break;

View File

@ -203,7 +203,8 @@ a_setoption = [[
],[ ],[
"(ESP32) Show ESP32 internal temperature sensor", "(ESP32) Show ESP32 internal temperature sensor",
"(MQTT) Disable publish SSerialReceived MQTT messages, you must use event trigger rules instead", "(MQTT) Disable publish SSerialReceived MQTT messages, you must use event trigger rules instead",
"","", "(Light) start DMX ArtNet at boot, listen to UDP port as soon as network is up",
"(Wifi) prefer IPv6 DNS resolution to IPv4 address when available. Requires `#define USE_IPV6`",
"","","","", "","","","",
"","","","", "","","","",
"","","","", "","","","",
@ -289,7 +290,7 @@ a_features = [[
"USE_SGP40","USE_LUXV30B","USE_CANSNIFFER","USE_QMC5883L", "USE_SGP40","USE_LUXV30B","USE_CANSNIFFER","USE_QMC5883L",
"USE_MODBUS_ENERGY","USE_SHELLY_PRO","USE_DALI","USE_BP1658CJ", "USE_MODBUS_ENERGY","USE_SHELLY_PRO","USE_DALI","USE_BP1658CJ",
"USE_DINGTIAN_RELAY","USE_HMC5883L","USE_LD2410","USE_ME007", "USE_DINGTIAN_RELAY","USE_HMC5883L","USE_LD2410","USE_ME007",
"USE_DISPLAY_TM1650","","","", "USE_DISPLAY_TM1650","USE_PCA9632","","",
"","","","", "","","","",
"","","","", "","","","",
"","","","", "","","","",