Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Virtual panel 1x4 #679

Open
aidarishkulov opened this issue Sep 25, 2024 · 2 comments
Open

Virtual panel 1x4 #679

aidarishkulov opened this issue Sep 25, 2024 · 2 comments

Comments

@aidarishkulov
Copy link

aidarishkulov commented Sep 25, 2024

I launch by placing 4 panels on top of each other. Connection from bottom left to top.
In the first lower module, the x coordinates are the same, and in the 3 upper ones they are shifted by one pixel. In the 2nd and 4th panels, x is shifted to the left, and in the 3rd panel to the right by one pixel.
The у coordinates are the same.
Controller HD-WF2.
64x32 panels, FM6124 driver.
`#define R1_PIN 2
#define R2_PIN 3
#define G1_PIN 6
#define G2_PIN 7
#define B1_PIN 10
#define B2_PIN 11
#define A_PIN 39
#define B_PIN 38
#define C_PIN 37
#define D_PIN 36
#define E_PIN 21
#define OE_PIN 35
#define CLK_PIN 34
#define LAT_PIN 33
#define PANEL_RES_X 64 // Number of pixels wide of each INDIVIDUAL panel module.
#define PANEL_RES_Y 32 // Number of pixels tall of each INDIVIDUAL panel module.
#define NUM_ROWS 4 // Number of rows of chained INDIVIDUAL PANELS
#define NUM_COLS 1 // Number of INDIVIDUAL PANELS per ROW
#define PANEL_CHAIN NUM_ROWS*NUM_COLS // total number of panels chained one to another
#include <ESP32-VirtualMatrixPanel-I2S-DMA.h>
HUB75_I2S_CFG::i2s_pins _pins_x1 = {
R1_PIN,
G1_PIN,
B1_PIN,
R2_PIN,
G2_PIN,
B2_PIN,
A_PIN,
B_PIN,
C_PIN,
D_PIN,
E_PIN,
LAT_PIN,
OE_PIN,
CLK_PIN
};
#define VIRTUAL_MATRIX_CHAIN_TYPE CHAIN_BOTTOM_LEFT_UP
MatrixPanel_I2S_DMA *dma_display = nullptr;
// placeholder for the virtual display object
VirtualMatrixPanel *virtualDisp = nullptr;

void setup()
{
HUB75_I2S_CFG mxconfig(
PANEL_RES_X, // module width
PANEL_RES_Y, // module height
PANEL_CHAIN, // Chain length
_pins_x1 // pin mapping for port X1
);
mxconfig.i2sspeed = HUB75_I2S_CFG::HZ_20M;
mxconfig.latch_blanking = 4;
//mxconfig.clkphase = false;
mxconfig.driver = HUB75_I2S_CFG::FM6124;
mxconfig.double_buff = 0;
//mxconfig.min_refresh_rate = 30;
dma_display = new MatrixPanel_I2S_DMA(mxconfig);
dma_display->setBrightness8(255); //0-255
dma_display->begin();
dma_display->clearScreen();
virtualDisp = new VirtualMatrixPanel((*dma_display), NUM_ROWS, NUM_COLS, PANEL_RES_X, PANEL_RES_Y, VIRTUAL_MATRIX_CHAIN_TYPE);
virtualDisp->fillScreen(virtualDisp->color444(0,0,0));
virtualDisp->setPhysicalPanelScanRate(NORMAL_TWO_SCAN);
}
void loop()
{
if((!(0))) {
virtualDisp->drawPixel((5), (5), virtualDisp->color444((255), (0), (255)));
}
if((!(0))) {
virtualDisp->drawLine((1), (1), (1), (126), virtualDisp->color444((0), (255), (250)));
}
}`

Test

@aidarishkulov
Copy link
Author

I had to look here, now it's normal. #134 (comment)

@aidarishkulov
Copy link
Author

aidarishkulov commented Sep 25, 2024

Another problem was found: the color shades of modules 1 and 3 are different from 2 and 4 in the example above. The panels are normal, when swapped, the shades remain the same. White turns bluish.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant