hzeller / rpi-rgb-led-matrix

Controlling up to three chains of 64x64, 32x32, 16x32 or similar RGB LED displays using Raspberry Pi GPIO
GNU General Public License v2.0
3.63k stars 1.15k forks source link

Maximum Refresh Rate #969

Open AyoubWalid opened 4 years ago

AyoubWalid commented 4 years ago

Hello Zeller,

I am developing an application where it is required to have a very high refresh rate, the application requires a camera to take a photo at a certain instant of the LED matrix display, and a high refresh rate is required to avoid conflicts with the camera shutter speed, and frame rate to avoid a case where a photo is taken in between transitions (or while scanning) This is an example of what I required to avoid. https://www.danielbowen.com/2016/03/03/photographing-led-displays/

I have found LED matrix display with relatively high refresh rates at around 3.8kHz, my question is whether there is a hardware or software limitation to achieve such high rates using this library in combination with a controller such as the Active 3.

marcmerlin commented 4 years ago

@WalidAyyoub see https://github.com/hzeller/rpi-rgb-led-matrix/pull/971 and https://github.com/hzeller/rpi-rgb-led-matrix/issues/918 The higher the resolution, the less refresh rate you get (also if you have 1/4 panels, i.e. AB panels) instead of ABCD or ABCDE (/16 or /32), the refresh won't look as bad). What panels/resolution are you seeing 3.8Khz on? Seems easy/possible with 64x32 AB panels, but harder with 128x64 panels, where I only seem to get 500Hz best case, which is 8 times slower than what you're seeing when the resolution is only 4 times less, so I'm not sure where the 2x factor went.

hzeller commented 4 years ago

3.8kHz you typically see on 32x16 panels with 1:4 multiplexing.

marcmerlin commented 4 years ago

Right, with a panel that small (16 times smaller than the one I tested), the math adds up. @WalidAyyoub basically what this means though is that you're only going to get such a high refresh rate by having a CPU/FPGA drive small panels independently. No chaining, no big panels. That said if you get /4 or /8 panels (AB or ABC), even if you don't get a super high refresh rate, each line will be displayed a longer amount of time, and will be less likely to look flickery when using a camera.

greatballoflazers commented 2 years ago

You will not be able to get really high refresh like that without S-PWM or quality reduction. Receiver cards can which these are made for can.