AsyncFlipSecondaries Difficulty

Hi Psychtoolbox Community,

I have a ViewPixx and a console monitor that I am attempting to mirror. My setup works fine with multiple x-screens (showing the task on the ViewPixx and the GUI on the console.

I’ve tried to instead create a configuration for a single x-screen with ‘AsyncFlipSecondaries.’ The console monitor has a native resolution of 1920 x 1200 @ 60 hz so it is a higher resolution than the ViewPixx (1920 x 1080 @ 120 hz).

From the help, it looks like the higher resolution display is selected as the primary display. When I use: PsychImaging(‘AddTask’, ‘General’, ‘MirrorDisplayToSingleSplitWindow’,0, 1920, 1080]); I end up with mirrored displays at 60 hz. However, I haven’t been able to get the mirror to instead prioritize the ViewPixx 120 hz display.

If I set the resolution of the console monitor to be equal to the ViewPixx and select ViewPixx as the primary monitor in the display settings, I get errors that it is not able to measure the vsync and synchronization fails. I’ve pasted my X11 configuration below. My graphics card is a Radeon WX4100 and I am using Ubuntu 22.0.4 with Psychtoolbox 3.0.19.

Section "ServerFlags"
  Option "AutoAddGPU" "false"
EndSection

Section "Device"
  Identifier  "Card0"
  Driver      "amdgpu"
  Option     "VariableRefresh" "off"
  Option     "AsyncFlipSecondaries" "on"
EndSection

Thanks so much,
Anthony

In principle this looks correct, assuming the Viewpixx is really set as the “RandR primary output”, and whatever you set in some display settings GUI does not mean something else: If both outputs have same resolution, the Viewpixx output must be set as primary, e.g., xrandr in a terminal should label it as “primary”, or you could execute, e.g., xrandr --output DisplayPort-0 --primary if DisplayPort-0 would be the name of the output where the Viewpixx is connected.

If the console monitor has a lower resolution than the Viewpixx it should also work - the “primary output” just acts as a tie-breaker in case of identical resolution.

Unfortunately the lack of funding by our users made it not feasible at the time to invest more of my work time to implement finer grained control about this stuff in the X-Server. I barely managed to add this AsyncFlipSecondaries improvement in time for Ubuntu 22.04 / X-Server 21… All the nice things we could have if our users supported us more financially…

-mario