Merge branch 'mdev' into ESP32-HUB75-MatrixPanel-DMA

This commit is contained in:
Will Tatam
2024-02-22 21:39:53 +00:00
27 changed files with 3651 additions and 3269 deletions

View File

@@ -49,6 +49,7 @@ String PinManagerClass::getOwnerText(PinOwner tag) {
case PinOwner::DMX : return(F("DMX out")); break; // 'DMX' == hard-coded to IO2
case PinOwner::HW_I2C : return(F("I2C (hw)")); break; // 'I2C' == hardware I2C pins (4&5 on ESP8266, 21&22 on ESP32)
case PinOwner::HW_SPI : return(F("SPI (hw)")); break; // 'SPI' == hardware (V)SPI pins (13,14&15 on ESP8266, 5,18&23 on ESP32)
case PinOwner::DMX_INPUT : return(F("DMX Input")); break;
case PinOwner::HUB75 : return(F("Hub75")); break; // 'Hub75' == Hub75 driver
case PinOwner::UM_Audioreactive : return(F("AudioReactive (UM)")); break; // audioreactive usermod - analog or digital audio input
@@ -447,7 +448,9 @@ bool PinManagerClass::allocateMultiplePins(const managed_pin_type * mptArray, by
bool PinManagerClass::allocatePin(byte gpio, bool output, PinOwner tag)
{
// HW I2C & SPI pins have to be allocated using allocateMultiplePins variant since there is always SCL/SDA pair
if (!isPinOk(gpio, output) || (gpio >= WLED_NUM_PINS) || tag==PinOwner::HW_I2C || tag==PinOwner::HW_SPI) {
// DMX_INPUT pins have to be allocated using allocateMultiplePins variant since there is always RX/TX/EN triple
if (!isPinOk(gpio, output) || (gpio >= WLED_NUM_PINS) || tag==PinOwner::HW_I2C || tag==PinOwner::HW_SPI
|| tag==PinOwner::DMX_INPUT) {
#ifdef WLED_DEBUG
if (gpio < 255) { // 255 (-1) is the "not defined GPIO"
if (!isPinOk(gpio, output)) {