OK - Having another bash at this, hopefully @Louis can see what i’m doing wrong
Panel is 32x32 and I believe I have tried all the predefined panels and none work 100%
The panel is labeled as P6-3535-8S-HL2.0 from which I am presuming that means modscan8 given the modscan 16 doesn’t work
Steps to test
- Checkout master of library 792f99e28dbeb8216c18697564867cf1771773ec
- Open MultiRowRefreshMapping
- Do not follow 100% what value I should be using for kMatrixHeight - presuming the /2 etc refers to modcan, then should I be using 32 and kMatrixWidth also be 32?
- What kPanelType should I be using? SM_PANELTYPE_HUB75_16ROW_MOD8SCAN ?
- Include the right file for my shield setup
- Run
Doing so does then appear to light only a single pixel at a time, basically doing the right hand side of the panel first and then flipping to to the left hand side
So far so good. The first issue is that the notes say it will start as red the go to yellow, but I actually get blue, cyan, magenta then white
If I continue on …
SmartMatrixCommonHub75.h does not exist but if I edit MatrixCommonHub75.h and add
#define SM_PANELTYPE_HUB75_32ROW_32COL_MOD8SCAN 13
#define SMARTMATRIX_HUB75_32ROW_32COL_MOD8SCAN SM_PANELTYPE_HUB75_32ROW_32COL_MOD8SCAN
CONVERT_PANELTYPE_TO_MATRIXPANELHEIGHT
(x == SMARTMATRIX_HUB75_32ROW_32COL_MOD8SCAN ? 32 : 0))
CONVERT_PANELTYPE_TO_MATRIXROWPAIROFFSET
(x == SMARTMATRIX_HUB75_32ROW_32COL_MOD8SCAN ? 16 : 0))
CONVERT_PANELTYPE_TO_MATRIXSCANMOD
(x == SMARTMATRIX_HUB75_32ROW_32COL_MOD8SCAN ? 8 : 0))
CONVERT_PANELTYPE_TO_MATRIXPANELWIDTH
(x == SMARTMATRIX_HUB75_32ROW_32COL_MOD8SCAN ? 32 : 0))
At this point the MODE_MAP_REVERSE_ENGINEERING and MODE_MAP_TESTING and SMARTMATRIX_HUB75_32ROW_32COL_MOD8SCAN gives output that starts on the top right quater then disspears before then showing bottom right
There is no PanelMaps.cpp, but if I edit MatrixPanelMaps.cpp and try and use the map suggested by merlinux after adding
case SMARTMATRIX_HUB75_32ROW_32COL_MOD8SCAN:
return panelMap32x32Mod8;
Then I get scanning on the top right quadrant, then top left quad, then bottom right then finally bottom left. Note, as per the reverse enginer, it does not scan each quadrant in linear fashion,but alternating top/middle, top+1, middle+1 etc