NeoCat / ESP32-P3RGB64x32MatrixPanel

ESP32 Arduino library for the P3 64x32 RGB matrix panels
MIT License
137 stars 30 forks source link

Can I connect multiple panel? #7

Open metingul opened 5 years ago

metingul commented 5 years ago

Hello, Can I use two or more panels , I need a bigger size than 1 panel.

Thank you.

NeoCat commented 5 years ago

No, this library does not support panel sizes other than 64x32 as the size is hard-coded.

However, you can daisy-chain dual 64x32 panels and modify the library to use them as a 128x32 panel. Check out https://github.com/NeoCat/ESP32-P3RGB64x32MatrixPanel/tree/128x32 branch please.

img_0553 img_0554

metingul commented 5 years ago

Hi @NeoCat , I am going to check that branch, actually I need to run 4 panel so I need 256 X 32 , the PxMatrix library support chaining but it works only with 2 panels. If there is any possibility to work with 4 panels it would be great, if not I am going to try with two ESP32 cards and share data, this solution is not to easy way. thank you and please advice.

metingul commented 5 years ago

I use your 128X32 branch and it works well with 2 panel. And I tried to change values 128 to 256 but id did not work with 4 panels, ESP32 reboting. Does esp32 speed capable to work 4 panel? or did I mistake with codes.

NeoCat commented 5 years ago

That is because the timer interrupt routine is using too much time. You need also reduce the frequency of the timer interrupt here: https://github.com/NeoCat/ESP32-P3RGB64x32MatrixPanel/blob/128x32/P3RGB64x32MatrixPanel.cpp#L42

This is currently invoking the routine every 60 microsecond, so please change this to maybe 120 or so.

Please note that slower drawing means that the panels would flicker more.

kntkimura commented 2 years ago

I have modified 128x32 to 64x64 with inserting "if (y >= 32) { y -= 32; x += 64; }" like that

https://imgur.com/YUzBILj

in the file of ESP32-P3RGB64x32MatrixPanel-64x64\P3RGB64x32MatrixPanel.cpp .

NeoCat commented 2 years ago

https://imgur.com/YUzBILj

I believe you intend to point here: :) https://github.com/NeoCat/ESP32-P3RGB64x32MatrixPanel/blob/128x32/P3RGB64x32MatrixPanel.cpp#L83