Ok ! Let’s do this !
For the duration of the troubleshoot these settings don’t change:
const uint8_t kRefreshDepth = 24; // known working: 24, 36, 48
const uint8_t kDmaBufferRows = 2; // known working: 2-4, use 2 to save memory, more to keep from dropping frames and automatically lowering refresh rate
const uint8_t kMatrixOptions = (SMARTMATRIX_OPTIONS_NONE);
const uint8_t kBackgroundLayerOptions = (SM_BACKGROUND_OPTIONS_NONE);
SMARTMATRIX_ALLOCATE_BUFFERS(matrix, kMatrixWidth, kMatrixHeight, kRefreshDepth, kDmaBufferRows, kPanelType, kMatrixOptions);
SMARTMATRIX_ALLOCATE_BACKGROUND_LAYER(backgroundLayer, kMatrixWidth, kMatrixHeight, COLOR_DEPTH, kBackgroundLayerOptions);
Settings 1
that I used to do the Panel Map
#if (SKETCH_MODE == MODE_MAP_REVERSE_ENGINEERING)
const uint8_t kMatrixWidth = 128;
const uint8_t kMatrixHeight = 16;
const uint8_t kPanelType = SMARTMATRIX_HUB75_16ROW_MOD8SCAN;
#endif
Video 1: LED_Debug_1-1 - YouTube
Video 2: LED_Debug_1-2 - YouTube
Both videos are running with SKETCH_MODE == MODE_MAP_REVERSE_ENGINEERING
The difference is where I’ve put this: backgroundLayer.fillScreen({0,0,0});
resulting in this Panel Map:
const PanelMappingEntry panelMapP5_2727_64x32[] = {
{0,64,64},
{8,0,64},
{0,0,0}
};
This is how it works: LED_Debug_1-3 - YouTube
using the MODE_MAP_TESTING
:
#if (SKETCH_MODE == MODE_MAP_TESTING)
const uint8_t kMatrixWidth = 64;
const uint8_t kMatrixHeight = 32;
const uint8_t kPanelType = SMARTMATRIX_HUB75_32ROW_64COL_MOD8SCAN_P5_2727;
#endif