Add Quarter scan panel in 3 steps #622
Replies: 5 comments 8 replies
-
Part 2
we are interested in the part that relates to 16 pixels height panels - that is, after this condition:
To be honest, I don’t really understand what exactly is written here. In my opinion, this code belongs to some old version, and now it just not works. The video in the previous message confirms this. And even stronger proof that this code is incorrect will be that I change it and the matrix will work.
it only needs to be adjusted a little to be used with 16 pixels height:
The result: stage2a.mp4Looks better. |
Beta Was this translation helpful? Give feedback.
-
Part 3. stage3a.mp4The edited code:
The difference is amazing. Almost exactly what we need. The only issue that in the first four lines each "pixel base" are filled in in reverse order.
And video finala.mp4@mrcodetastic , thanks for the library. |
Beta Was this translation helpful? Give feedback.
-
Thanks @mrcodetastic to the fix #621, it is now possible to add your own Quarter_Scan panel coordinate transformations without changing the main library code. To do this, it is enough to define a new virtual panel class directly in the sketch, inheriting it from the library's
!!! Important note - you don't need to set PhysicalPanelScanRate when use your own virtual panel class. |
Beta Was this translation helpful? Give feedback.
-
See the #677 as practical example of using the technology discussed above. |
Beta Was this translation helpful? Give feedback.
-
Tried everything from #677 , also set pxbase to 1. VID_20240925_155859.mp4 |
Beta Was this translation helpful? Give feedback.
-
I am goimg to show how I added support for my 1/4 scan panel to the library.
It is a p10 32x16 1/4 scan matrix, and what is typical for 32x16 panels is that not only 4 lines are updated simultaneously, but the pixels are connected in an ambiguous order, which at first glance seems random.
First, I tried to use the panel with the code from
Four_Scan_Panel
example. Let's change the dimensions of the matrixand select the scanning mode:
FourScanPanel->setPhysicalPanelScanRate(FOUR_SCAN_16PX_HIGH);
Instead of graphics, we will paint the panel pixel by pixel with the selected color:
The result shown on video:
stage1a.mp4
It can be seen that the panel is not working correctly. The main sign of this is that the entire cycle is completed, but the pixels on the panel are not fully lit.
(to be continued)
Beta Was this translation helpful? Give feedback.
All reactions