@@ -399,12 +399,14 @@ void ArtNetDriverMod::loop() {
399399 void HUB75DriverMod::loop () {
400400 }
401401
402- #if CONFIG_IDF_TARGET_ESP32S3 || CONFIG_IDF_TARGET_ESP32S2
403- #include " I2SClockLessLedDriveresp32s3.h"
404- static I2SClocklessLedDriveresp32S3 driverP; // sizeof(driver) = 1080K !
405- #elif CONFIG_IDF_TARGET_ESP32
406- #include " I2SClocklessLedDriver.h"
407- static I2SClocklessLedDriver driverP;
402+ #if HP_PHYSICAL_DRIVER_S3
403+ #if CONFIG_IDF_TARGET_ESP32S3 || CONFIG_IDF_TARGET_ESP32S2
404+ #include " I2SClockLessLedDriveresp32s3.h"
405+ static I2SClocklessLedDriveresp32S3 driverP; // sizeof(driver) = 1080K !
406+ #elif CONFIG_IDF_TARGET_ESP32
407+ #include " I2SClocklessLedDriver.h"
408+ static I2SClocklessLedDriver driverP;
409+ #endif
408410 #endif
409411
410412 void PhysicalDriverMod::setup () {
@@ -430,49 +432,51 @@ void ArtNetDriverMod::loop() {
430432 initDone = true ;
431433 ESP_LOGD (TAG , " sortedPins #:%d" , layerV->layerP ->sortedPins .size ());
432434
433- #if CONFIG_IDF_TARGET_ESP32S3 || CONFIG_IDF_TARGET_ESP32S2 || CONFIG_IDF_TARGET_ESP32
434- int pins[NUMSTRIPS ]; // max 16 pins
435- int lengths[NUMSTRIPS ];
436- int nb_pins=0 ;
437-
438- for (const SortedPin &sortedPin : layerV->layerP ->sortedPins ) {
439- ESP_LOGD (TAG , " sortedPin s:%d #:%d p:%d" , sortedPin.startLed , sortedPin.nrOfLights , sortedPin.pin );
440- if (nb_pins < NUMSTRIPS ) {
441- pins[nb_pins] = sortedPin.pin ;
442- lengths[nb_pins] = sortedPin.nrOfLights ;
443- nb_pins++;
444- }
445- }
435+ #if HP_PHYSICAL_DRIVER_S3
436+ #if CONFIG_IDF_TARGET_ESP32S3 || CONFIG_IDF_TARGET_ESP32S2 || CONFIG_IDF_TARGET_ESP32
437+ int pins[NUMSTRIPS ]; // max 16 pins
438+ int lengths[NUMSTRIPS ];
439+ int nb_pins=0 ;
440+
441+ for (const SortedPin &sortedPin : layerV->layerP ->sortedPins ) {
442+ ESP_LOGD (TAG , " sortedPin s:%d #:%d p:%d" , sortedPin.startLed , sortedPin.nrOfLights , sortedPin.pin );
443+ if (nb_pins < NUMSTRIPS ) {
444+ pins[nb_pins] = sortedPin.pin ;
445+ lengths[nb_pins] = sortedPin.nrOfLights ;
446+ nb_pins++;
447+ }
448+ }
446449
447- // fill the rest of the pins with the pins already used
448- // preferably NUMSTRIPS is a variable...
449- if (nb_pins > 0 ) {
450- for (uint8_t i = nb_pins; i < NUMSTRIPS ; i++) {
451- pins[i] = pins[i%nb_pins];
452- lengths[i] = 0 ;
453- }
454- }
455- ESP_LOGD (TAG , " pins[" );
456- for (int i=0 ; i<nb_pins; i++) {
457- ESP_LOGD (TAG , " , %d" , pins[i]);
458- }
459- ESP_LOGD (TAG , " ]\n " );
460-
461- if (nb_pins > 0 ) {
462- #if CONFIG_IDF_TARGET_ESP32S3 | CONFIG_IDF_TARGET_ESP32S2
463- driverP.initled ((uint8_t *) layerV->layerP ->lights .leds , pins, nb_pins, lengths[0 ]); // s3 doesn't support lengths so we pick the first
464- // colorOrder ??
465- // void initled( uint8_t * leds, int * pins, int numstrip, int NUM_LED_PER_STRIP)
466- #else
467- driverP.initled ((uint8_t *) layerV->layerP ->lights .leds , pins, lengths, nb_pins, (colorarrangment)colorOrder);
468- #if ML_LIVE_MAPPING
469- driver.setMapLed (&mapLed);
470- #endif
471- // void initled(uint8_t *leds, int *Pinsq, int *sizes, int num_strips, colorarrangment cArr)
450+ // fill the rest of the pins with the pins already used
451+ // preferably NUMSTRIPS is a variable...
452+ if (nb_pins > 0 ) {
453+ for (uint8_t i = nb_pins; i < NUMSTRIPS ; i++) {
454+ pins[i] = pins[i%nb_pins];
455+ lengths[i] = 0 ;
456+ }
457+ }
458+ ESP_LOGD (TAG , " pins[" );
459+ for (int i=0 ; i<nb_pins; i++) {
460+ ESP_LOGD (TAG , " , %d" , pins[i]);
461+ }
462+ ESP_LOGD (TAG , " ]\n " );
463+
464+ if (nb_pins > 0 ) {
465+ #if CONFIG_IDF_TARGET_ESP32S3 | CONFIG_IDF_TARGET_ESP32S2
466+ driverP.initled ((uint8_t *) layerV->layerP ->lights .leds , pins, nb_pins, lengths[0 ]); // s3 doesn't support lengths so we pick the first
467+ // colorOrder ??
468+ // void initled( uint8_t * leds, int * pins, int numstrip, int NUM_LED_PER_STRIP)
469+ #else
470+ driverP.initled ((uint8_t *) layerV->layerP ->lights .leds , pins, lengths, nb_pins, (colorarrangment)colorOrder);
471+ #if ML_LIVE_MAPPING
472+ driver.setMapLed (&mapLed);
473+ #endif
474+ // void initled(uint8_t *leds, int *Pinsq, int *sizes, int num_strips, colorarrangment cArr)
475+ #endif
476+ // Variable("Fixture", "brightness").triggerEvent(onChange, UINT8_MAX, true); //set brightness (init is true so bri value not send via udp)
477+ driverP.setBrightness (setMaxPowerBrightnessFactor / 256 ); // not brighter then the set limit (WIP)
478+ }
472479 #endif
473- // Variable("Fixture", "brightness").triggerEvent(onChange, UINT8_MAX, true); //set brightness (init is true so bri value not send via udp)
474- driverP.setBrightness (setMaxPowerBrightnessFactor / 256 ); // not brighter then the set limit (WIP)
475- }
476480 #endif
477481 }
478482 }
@@ -482,23 +486,25 @@ void ArtNetDriverMod::loop() {
482486
483487 if (layerV->layerP ->lights .header .isPositions == 0 ) {
484488
485- #if CONFIG_IDF_TARGET_ESP32S3 || CONFIG_IDF_TARGET_ESP32S2 || CONFIG_IDF_TARGET_ESP32
486- if (driverP._brightness != layerV->layerP ->lights .header .brightness * setMaxPowerBrightnessFactor >> 8 ) {
487- ESP_LOGD (TAG , " setBrightness %d" , layerV->layerP ->lights .header .brightness );
488- driverP.setBrightness (layerV->layerP ->lights .header .brightness * setMaxPowerBrightnessFactor >> 8 );
489- }
489+ #if HP_PHYSICAL_DRIVER_S3
490+ #if CONFIG_IDF_TARGET_ESP32S3 || CONFIG_IDF_TARGET_ESP32S2 || CONFIG_IDF_TARGET_ESP32
491+ if (driverP._brightness != layerV->layerP ->lights .header .brightness * setMaxPowerBrightnessFactor >> 8 ) {
492+ ESP_LOGD (TAG , " setBrightness %d" , layerV->layerP ->lights .header .brightness );
493+ driverP.setBrightness (layerV->layerP ->lights .header .brightness * setMaxPowerBrightnessFactor >> 8 );
494+ }
490495
491- if (driverP._gammar != layerV->layerP ->lights .header .red /255.0 || driverP._gammag != layerV->layerP ->lights .header .green /255.0 || driverP._gammab != layerV->layerP ->lights .header .blue /255.0 ) {
492- ESP_LOGD (TAG , " setColorCorrection r:%d, g:%d, b:%d" , layerV->layerP ->lights .header .red , layerV->layerP ->lights .header .green , layerV->layerP ->lights .header .blue );
493- driverP.setGamma (layerV->layerP ->lights .header .red /255.0 , layerV->layerP ->lights .header .green /255.0 , layerV->layerP ->lights .header .blue /255.0 );
494- }
496+ if (driverP._gammar != layerV->layerP ->lights .header .red /255.0 || driverP._gammag != layerV->layerP ->lights .header .green /255.0 || driverP._gammab != layerV->layerP ->lights .header .blue /255.0 ) {
497+ ESP_LOGD (TAG , " setColorCorrection r:%d, g:%d, b:%d" , layerV->layerP ->lights .header .red , layerV->layerP ->lights .header .green , layerV->layerP ->lights .header .blue );
498+ driverP.setGamma (layerV->layerP ->lights .header .red /255.0 , layerV->layerP ->lights .header .green /255.0 , layerV->layerP ->lights .header .blue /255.0 );
499+ }
495500
496- #if CONFIG_IDF_TARGET_ESP32S3 || CONFIG_IDF_TARGET_ESP32S2
497- if (driverP.ledsbuff != nullptr )
498- driverP.show ();
499- #else
500- if (driverP.total_leds > 0 )
501- driverP.showPixels (WAIT );
501+ #if CONFIG_IDF_TARGET_ESP32S3 || CONFIG_IDF_TARGET_ESP32S2
502+ if (driverP.ledsbuff != nullptr )
503+ driverP.show ();
504+ #else
505+ if (driverP.total_leds > 0 )
506+ driverP.showPixels (WAIT );
507+ #endif
502508 #endif
503509 #endif
504510 }
0 commit comments