antiriad wrote: ↑
Wed Oct 23, 2019 3:48 pm
- is shimmering a problem due to RPi4 and cannot be solved in any way?
I haven't compared to a Pi3.
Gert has already made comment that dotcrawl is inherent in having cross talk between highspeed GPIOs, and that is totally true.
As I've already commented, Pi4 is using a totally different clock structure. Having checked with a colleague, the pixel clock is being derived via a fractional divider from a 750MHz clock. That fractional divide will cause jitter on the sample clock. The 750MHz clock can not be changed as it also drives things like the ethernet clock.
In theory it would be possible to shift to using the divider off the core clock, and the core clock could be adjusted to make it an integer divider, but it is such a niche use case that it won't be high up the priority list to investigate. (Something very similar is done for the SDTV output for the same reasons, but that is one of the main features of the board, and is not on by default because it compromises performance).
antiriad wrote:- why custom resolutions (which work well on RPi3) don't work on RPi4, using the same hardware (VGA666, cables, CRT TV)?
Custom resolutions do work, with the minor quirk over odd values in the timings.
The Pi DPI interface is not specified to drive your particular cabling arrangements, or indeed any. It is up to the designer of that hardware to ensure it is within tolerances.
I'm suspecting that the Pi4 has changed the electrical output characteristics on the GPIO lines, and is now not driving the sync line on your display strongly enough. This is why I have queried how your VGA to SCART lead is combining the H & V sync signals to generate the composite sync signal required on SCART.
The VGA666 docs
already acknowledge that the sync lines are out of spec on the GPIOS:
The design violates the GPIO specification. You should not draw more than 16mA from a pin. Thus
the minimum resistor is 3.3/0.016 = 206 Ohms. But you will notice that the HSYNC and VSYNC
resistor are less. I tried 200 Ohm but found that it does not work on some monitors. On the prototype I
used 100 Ohm resistors, you might even have to go down to 80 ohms
So if your conversion to composite sync takes the GPIO drive further out of spec then you really are on your own.
Please investigate your hardware before making further complaints.
At the present time I have satisfied for myself that custom timings to the DPI interface are working as they should.
I will look at fixing up the odd horizontal timings values automatically, but that's more of a cleanup than anything else.