alex-courtis / way-displays

way-displays: Auto Manage Your Wayland Displays
MIT License
239 stars 12 forks source link

Feature: Specify Exact Refresh Rate #128

Closed GrabbenD closed 10 months ago

GrabbenD commented 10 months ago

Issue

After starting the compositor the screen goes black and half of it is visible if I move my mouse. If I start a application like foot terminal emulator the screen blinks black when nothing is moving. As soon as I launch a game everything works as intended.

It seems like damage tracking is acting up?

Setup

River config (~/.config/river/init)

Default (https://github.com/riverwm/river/blob/master/example/init) except for:

way-displays > /tmp/way-displays.${XDG_VTNR}.${USER}.log 2>&1 &

Way-Displays config (~/.config/way-displays/cfg.yaml)

Default except for:

MODE:
    - NAME_DESC: DP-2
      WIDTH: 3840
      HEIGHT: 1600
      HZ: 119.982
alex-courtis commented 10 months ago

That's no good... everything should work on river. I see you have also opened #129

I'll ask some questions in both issues, which should apply to both.

alex-courtis commented 10 months ago

What happens when you run the sway compositor? You can add way-displays as per https://github.com/alex-courtis/way-displays#sway

That should give us some insight as to whether this is an amdgpu/wlroots/mesa/vulkan issue vs a river issue.

GrabbenD commented 10 months ago

Thanks for taking a look at this!

I'll ask some questions in both issues, which should apply to both.

Let's start with this issue! I realized that I get a similar issue when gaming with VRR if my refresh rate is wrong.

What happens when you run the sway compositor? You can add way-displays as per https://github.com/alex-courtis/way-displays#sway

Seems like way-displays enables VRR (as that's the default) as intended but my refresh rate is wrong. I'm running this command after starting Sway with Way-Displays 1.8.2

> wlr-randr
DP-3 "Dell Inc. Dell AW3821DW #HLAYMxgwABTR (DP-3)"
  Make: Dell Inc.
  Model: Dell AW3821DW
  Serial: #HLAYMxgwABTR
  Physical size: 880x370 mm
  Enabled: yes
  Modes:
    3840x1600 px, 59.993999 Hz (preferred, current)
    3840x1600 px, 143.998001 Hz
    3840x1600 px, 120.044998 Hz
    3840x1600 px, 119.982002 Hz
    3840x1600 px, 99.970001 Hz
    3840x1600 px, 96.036003 Hz
    3840x1600 px, 84.971001 Hz
    3840x1600 px, 72.019997 Hz
    3840x1600 px, 60.007999 Hz
    3840x1600 px, 50.002998 Hz
    3840x1600 px, 48.008999 Hz
    3840x1600 px, 29.971001 Hz
    3840x1600 px, 30.000000 Hz
    3840x1600 px, 25.000999 Hz
    3840x1600 px, 23.976000 Hz
    3840x1600 px, 24.002001 Hz
    1920x1200 px, 59.993999 Hz
    1920x1080 px, 59.993999 Hz
    1600x1200 px, 59.993999 Hz
    1680x1050 px, 59.993999 Hz
    1280x1024 px, 59.993999 Hz
    1440x900 px, 59.993999 Hz
    1280x800 px, 59.993999 Hz
    1280x720 px, 59.993999 Hz
    1024x768 px, 60.004002 Hz
    800x600 px, 60.317001 Hz
    640x480 px, 60.000000 Hz
    640x480 px, 59.939999 Hz
  Position: 0,0
  Transform: normal
  Scale: 1.000000
  Adaptive Sync: enabled

For reference:

swaymsg -t get_outputs ```json [ { "id": 3, "type": "output", "orientation": "none", "percent": 1.0, "urgent": false, "marks": [ ], "layout": "output", "border": "none", "current_border_width": 0, "rect": { "x": 0, "y": 0, "width": 3840, "height": 1600 }, "deco_rect": { "x": 0, "y": 0, "width": 0, "height": 0 }, "window_rect": { "x": 0, "y": 0, "width": 0, "height": 0 }, "geometry": { "x": 0, "y": 0, "width": 0, "height": 0 }, "name": "DP-3", "window": null, "nodes": [ ], "floating_nodes": [ ], "focus": [ 4 ], "fullscreen_mode": 0, "sticky": false, "primary": false, "make": "Dell Inc.", "model": "Dell AW3821DW", "serial": "#HLAYMxgwABTR", "modes": [ { "width": 3840, "height": 1600, "refresh": 59994, "picture_aspect_ratio": "none" }, { "width": 3840, "height": 1600, "refresh": 143998, "picture_aspect_ratio": "none" }, { "width": 3840, "height": 1600, "refresh": 120045, "picture_aspect_ratio": "none" }, { "width": 3840, "height": 1600, "refresh": 119982, "picture_aspect_ratio": "none" }, { "width": 3840, "height": 1600, "refresh": 99970, "picture_aspect_ratio": "none" }, { "width": 3840, "height": 1600, "refresh": 96036, "picture_aspect_ratio": "none" }, { "width": 3840, "height": 1600, "refresh": 84971, "picture_aspect_ratio": "none" }, { "width": 3840, "height": 1600, "refresh": 72020, "picture_aspect_ratio": "none" }, { "width": 3840, "height": 1600, "refresh": 60008, "picture_aspect_ratio": "none" }, { "width": 3840, "height": 1600, "refresh": 50003, "picture_aspect_ratio": "none" }, { "width": 3840, "height": 1600, "refresh": 48009, "picture_aspect_ratio": "none" }, { "width": 3840, "height": 1600, "refresh": 29971, "picture_aspect_ratio": "none" }, { "width": 3840, "height": 1600, "refresh": 30000, "picture_aspect_ratio": "none" }, { "width": 3840, "height": 1600, "refresh": 25001, "picture_aspect_ratio": "none" }, { "width": 3840, "height": 1600, "refresh": 23976, "picture_aspect_ratio": "none" }, { "width": 3840, "height": 1600, "refresh": 24002, "picture_aspect_ratio": "none" }, { "width": 1920, "height": 1200, "refresh": 59994, "picture_aspect_ratio": "none" }, { "width": 1920, "height": 1080, "refresh": 59994, "picture_aspect_ratio": "none" }, { "width": 1600, "height": 1200, "refresh": 59994, "picture_aspect_ratio": "none" }, { "width": 1680, "height": 1050, "refresh": 59994, "picture_aspect_ratio": "none" }, { "width": 1280, "height": 1024, "refresh": 59994, "picture_aspect_ratio": "none" }, { "width": 1440, "height": 900, "refresh": 59994, "picture_aspect_ratio": "none" }, { "width": 1280, "height": 800, "refresh": 59994, "picture_aspect_ratio": "none" }, { "width": 1280, "height": 720, "refresh": 59994, "picture_aspect_ratio": "none" }, { "width": 1024, "height": 768, "refresh": 60004, "picture_aspect_ratio": "none" }, { "width": 800, "height": 600, "refresh": 60317, "picture_aspect_ratio": "none" }, { "width": 640, "height": 480, "refresh": 60000, "picture_aspect_ratio": "4:3" }, { "width": 640, "height": 480, "refresh": 59940, "picture_aspect_ratio": "none" } ], "non_desktop": false, "active": true, "dpms": true, "power": true, "scale": 1.0, "scale_filter": "nearest", "transform": "normal", "adaptive_sync_status": "enabled", "current_workspace": "1", "current_mode": { "width": 3840, "height": 1600, "refresh": 59994, "picture_aspect_ratio": "none" }, "max_render_time": 0, "focused": true, "subpixel_hinting": "unknown" } ] ```

Way-Displays log Are Permission denied messages normal? Edit: Fixed by adding user to input group

/tmp/way-displays.1.game.log ```log I [10:42:38] way-displays version 1.8.2 I [10:42:38] I [10:42:38] Found configuration file: /home/game/.config/way-displays/cfg.yaml W [10:42:38] WARNING: Ignoring invalid MODE DP-3 HZ 119.982 I [10:42:38] I [10:42:38] Active configuration: I [10:42:38] Arrange in a ROW aligned at the TOP I [10:42:38] Order: I [10:42:38] DP-3 I [10:42:38] Scaling: ON I [10:42:38] Auto scale: OFF W [10:42:38] W [10:42:38] WARNING: libinput open /dev/input/event1 failed: 13 Permission denied W [10:42:38] W [10:42:38] WARNING: libinput open /dev/input/event0 failed: 13 Permission denied W [10:42:38] W [10:42:38] WARNING: libinput open /dev/input/event257 failed: 13 Permission denied W [10:42:38] W [10:42:38] WARNING: libinput open /dev/input/event258 failed: 13 Permission denied W [10:42:38] W [10:42:38] WARNING: libinput open /dev/input/event259 failed: 13 Permission denied W [10:42:38] W [10:42:38] WARNING: libinput open /dev/input/event14 failed: 13 Permission denied W [10:42:38] W [10:42:38] WARNING: libinput open /dev/input/event16 failed: 13 Permission denied W [10:42:38] W [10:42:38] WARNING: libinput open /dev/input/event17 failed: 13 Permission denied W [10:42:38] W [10:42:38] WARNING: libinput open /dev/input/event18 failed: 13 Permission denied W [10:42:38] W [10:42:38] WARNING: libinput open /dev/input/event19 failed: 13 Permission denied W [10:42:38] W [10:42:38] WARNING: libinput open /dev/input/event20 failed: 13 Permission denied W [10:42:38] W [10:42:38] WARNING: libinput open /dev/input/event2 failed: 13 Permission denied W [10:42:38] W [10:42:38] WARNING: libinput open /dev/input/event3 failed: 13 Permission denied W [10:42:38] W [10:42:38] WARNING: libinput open /dev/input/event4 failed: 13 Permission denied W [10:42:38] W [10:42:38] WARNING: libinput open /dev/input/event5 failed: 13 Permission denied W [10:42:38] W [10:42:38] WARNING: libinput open /dev/input/event12 failed: 13 Permission denied W [10:42:38] W [10:42:38] WARNING: libinput open /dev/input/event13 failed: 13 Permission denied W [10:42:38] W [10:42:38] WARNING: libinput open /dev/input/event15 failed: 13 Permission denied W [10:42:38] W [10:42:38] WARNING: libinput open /dev/input/event21 failed: 13 Permission denied W [10:42:38] W [10:42:38] WARNING: libinput open /dev/input/event29 failed: 13 Permission denied W [10:42:38] W [10:42:38] WARNING: libinput open /dev/input/event30 failed: 13 Permission denied W [10:42:38] W [10:42:38] WARNING: libinput open /dev/input/event31 failed: 13 Permission denied W [10:42:38] W [10:42:38] WARNING: libinput open /dev/input/event256 failed: 13 Permission denied W [10:42:38] W [10:42:38] WARNING: libinput open /dev/input/event6 failed: 13 Permission denied W [10:42:38] W [10:42:38] WARNING: libinput open /dev/input/event7 failed: 13 Permission denied W [10:42:38] W [10:42:38] WARNING: libinput open /dev/input/event8 failed: 13 Permission denied W [10:42:38] W [10:42:38] WARNING: libinput open /dev/input/event9 failed: 13 Permission denied W [10:42:38] W [10:42:38] WARNING: libinput open /dev/input/event22 failed: 13 Permission denied W [10:42:38] W [10:42:38] WARNING: libinput open /dev/input/event23 failed: 13 Permission denied W [10:42:38] W [10:42:38] WARNING: libinput open /dev/input/event24 failed: 13 Permission denied W [10:42:38] W [10:42:38] WARNING: libinput open /dev/input/event25 failed: 13 Permission denied W [10:42:38] W [10:42:38] WARNING: libinput open /dev/input/event26 failed: 13 Permission denied W [10:42:38] W [10:42:38] WARNING: libinput open /dev/input/event27 failed: 13 Permission denied W [10:42:38] W [10:42:38] WARNING: libinput open /dev/input/event28 failed: 13 Permission denied W [10:42:38] W [10:42:38] WARNING: libinput open /dev/input/event11 failed: 13 Permission denied W [10:42:38] W [10:42:38] WARNING: libinput open /dev/input/event10 failed: 13 Permission denied I [10:42:38] I [10:42:38] DP-3 Arrived: I [10:42:38] info: I [10:42:38] name: 'DP-3' I [10:42:38] make: 'Dell Inc.' I [10:42:38] model: 'Dell AW3821DW' I [10:42:38] serial: '#HLAYMxgwABTR' I [10:42:38] desc: 'Dell Inc. Dell AW3821DW #HLAYMxgwABTR (DP-3)' I [10:42:38] width: 880mm I [10:42:38] height: 370mm I [10:42:38] dpi: 110.34 @ 3840x1600 I [10:42:38] mode: 3840 x 1600 @ 144 Hz 143,998 mHz I [10:42:38] mode: 3840 x 1600 @ 120 Hz 120,045 mHz 119,982 mHz I [10:42:38] mode: 3840 x 1600 @ 100 Hz 99,970 mHz I [10:42:38] mode: 3840 x 1600 @ 96 Hz 96,036 mHz I [10:42:38] mode: 3840 x 1600 @ 85 Hz 84,971 mHz I [10:42:38] mode: 3840 x 1600 @ 72 Hz 72,020 mHz I [10:42:38] mode: 3840 x 1600 @ 60 Hz 60,008 mHz 59,994 mHz (preferred) I [10:42:38] mode: 3840 x 1600 @ 50 Hz 50,003 mHz I [10:42:38] mode: 3840 x 1600 @ 48 Hz 48,009 mHz I [10:42:38] mode: 3840 x 1600 @ 30 Hz 30,000 mHz 29,971 mHz I [10:42:38] mode: 3840 x 1600 @ 25 Hz 25,001 mHz I [10:42:38] mode: 3840 x 1600 @ 24 Hz 24,002 mHz 23,976 mHz I [10:42:38] mode: 1920 x 1200 @ 60 Hz 59,994 mHz I [10:42:38] mode: 1920 x 1080 @ 60 Hz 59,994 mHz I [10:42:38] mode: 1680 x 1050 @ 60 Hz 59,994 mHz I [10:42:38] mode: 1600 x 1200 @ 60 Hz 59,994 mHz I [10:42:38] mode: 1440 x 900 @ 60 Hz 59,994 mHz I [10:42:38] mode: 1280 x 1024 @ 60 Hz 59,994 mHz I [10:42:38] mode: 1280 x 800 @ 60 Hz 59,994 mHz I [10:42:38] mode: 1280 x 720 @ 60 Hz 59,994 mHz I [10:42:38] mode: 1024 x 768 @ 60 Hz 60,004 mHz I [10:42:38] mode: 800 x 600 @ 60 Hz 60,317 mHz I [10:42:38] mode: 640 x 480 @ 60 Hz 60,000 mHz 59,940 mHz I [10:42:38] current: I [10:42:38] scale: 1.000 (1.149) I [10:42:38] position: 0,0 I [10:42:38] mode: 3840x1600@60Hz (59,994mHz) (preferred) I [10:42:38] VRR: off ```

Here's my second attempt at setting the right mode:

# Default (`~/.config/way-displays/cfg.yaml`) except for:
ORDER:
  - 'DP-3'

MODE:
    # WARNING: Ignoring invalid MODE Dell Inc. Dell AW3821DW #HLAYMxgwABTR HZ 119.982
    #- NAME_DESC: 'Dell Inc. Dell AW3821DW #HLAYMxgwABTR'
    #  WIDTH: 3840
    #  HEIGHT: 1600
    #  HZ: 119.982 # I've also tried: 119,982 / 119.982002 / 119,982002 / 119.982 mHz / 119,982 mHz

    # WARNING: Ignoring invalid MODE DP-3 HZ 119.982002
    - NAME_DESC: DP-3
      WIDTH: 3840
      HEIGHT: 1600
      HZ: 119.982 # I've also tried: 119,982 / 119.982002 / 119,982002 / 119.982 mHz / 119,982 mHz

#VRR_OFF:
#   - DP-3

I can disable VRR if I uncomment the last 2 lines! Am I setting the refresh rate wrong?

GrabbenD commented 10 months ago

I'm actually able to set the refresh rate if I do HZ: 120 with both NAME_DESC: DP-3 and NAME_DESC: 'Dell Inc. Dell AW3821DW #HLAYMxgwABTR'

I [11:08:55] DP-3 Changing:
I [11:08:55]   from:
I [11:08:55]     scale:    1.000 (1.149)
I [11:08:55]     position: 0,0
I [11:08:55]     mode:     3840x1600@60Hz (59,994mHz) (preferred)
I [11:08:55]     VRR:      off
I [11:08:55]   to:
I [11:08:55]     mode:     3840x1600@120Hz (120,045mHz)
I [11:08:55]
I [11:08:55] Changes successful

Luckily it doesn't use a round number which would otherwise trigger a MCLK bug in AMDGPU (https://gitlab.freedesktop.org/drm/amd/-/issues/2657)

Nonetheless, is it possible to use use 119,982mHz instead of 120,045mHz?

alex-courtis commented 10 months ago

Nonetheless, is it possible to use use 119,982mHz instead of 120,045mHz?

Unfortunately user defined Hz is an integer and in your case will be rounded to 120 truncated to 119. 120 will use the higher value 120,045 and would only fall back to 119,982 on failure.

This can be changed: monitors specify refresh as an even number of milliHz. The pragmatic means to achieve this would simply be to change HZ in cfg.yaml and CLI to be a decimal rounded to 3 D.P.

alex-courtis commented 10 months ago

Are you able to use 144Hz? Monitors are not always happy with some modes, despite their advertising them.

GrabbenD commented 10 months ago

Due to bandwidth limitation of DP 1.4 and lack of DSC in my monitor I can either choose between:

For mysterious reasons I sometimes get unstable screen brightness (flicker) with 120.045 mHz, I found 119.982 mHz to work the best!

The ability to switch to precise modes like with Sway/Hyprland would be highly appreciated

alex-courtis commented 10 months ago

@GrabbenD I'd be most grateful if you could test this feature.

Your exact refresh in cfg.yaml HZ: 119.982 wil be applied if available.

Also available via CLI way-displays --set MODE 'Dell AW3821DW' 3840 1600 119.982

git clone git@github.com:alex-courtis/way-displays.git
cd way-displays
git checkout 128-exact-refresh
git submodule update --init
make
sudo make install

When you are done you can

sudo make uninstall
GrabbenD commented 10 months ago

Great work @alex-courtis !! Works just as intended:

HZ: 144 (works)

wlr-randr ``` DP-3 "Dell Inc. Dell AW3821DW #HLAYMxgwABTR (DP-3)" Make: Dell Inc. Model: Dell AW3821DW Serial: #HLAYMxgwABTR Physical size: 880x370 mm Enabled: yes Modes: 3840x1600 px, 59.993999 Hz (preferred) 3840x1600 px, 143.998001 Hz (current) 3840x1600 px, 120.044998 Hz 3840x1600 px, 119.982002 Hz 3840x1600 px, 99.970001 Hz 3840x1600 px, 96.036003 Hz 3840x1600 px, 84.971001 Hz 3840x1600 px, 72.019997 Hz 3840x1600 px, 60.007999 Hz 3840x1600 px, 50.002998 Hz 3840x1600 px, 48.008999 Hz 3840x1600 px, 29.971001 Hz 3840x1600 px, 30.000000 Hz 3840x1600 px, 25.000999 Hz 3840x1600 px, 23.976000 Hz 3840x1600 px, 24.002001 Hz 1920x1200 px, 59.993999 Hz 1920x1080 px, 59.993999 Hz 1600x1200 px, 59.993999 Hz 1680x1050 px, 59.993999 Hz 1280x1024 px, 59.993999 Hz 1440x900 px, 59.993999 Hz 1280x800 px, 59.993999 Hz 1280x720 px, 59.993999 Hz 1024x768 px, 60.004002 Hz 800x600 px, 60.317001 Hz 640x480 px, 60.000000 Hz 640x480 px, 59.939999 Hz Position: 0,0 Transform: normal Scale: 1.000000 Adaptive Sync: enabled ```

HZ: 143.998001 (works)

wlr-randr ``` DP-3 "Dell Inc. Dell AW3821DW #HLAYMxgwABTR (DP-3)" Make: Dell Inc. Model: Dell AW3821DW Serial: #HLAYMxgwABTR Physical size: 880x370 mm Enabled: yes Modes: 3840x1600 px, 59.993999 Hz (preferred) 3840x1600 px, 143.998001 Hz (current) 3840x1600 px, 120.044998 Hz 3840x1600 px, 119.982002 Hz 3840x1600 px, 99.970001 Hz 3840x1600 px, 96.036003 Hz 3840x1600 px, 84.971001 Hz 3840x1600 px, 72.019997 Hz 3840x1600 px, 60.007999 Hz 3840x1600 px, 50.002998 Hz 3840x1600 px, 48.008999 Hz 3840x1600 px, 29.971001 Hz 3840x1600 px, 30.000000 Hz 3840x1600 px, 25.000999 Hz 3840x1600 px, 23.976000 Hz 3840x1600 px, 24.002001 Hz 1920x1200 px, 59.993999 Hz 1920x1080 px, 59.993999 Hz 1600x1200 px, 59.993999 Hz 1680x1050 px, 59.993999 Hz 1280x1024 px, 59.993999 Hz 1440x900 px, 59.993999 Hz 1280x800 px, 59.993999 Hz 1280x720 px, 59.993999 Hz 1024x768 px, 60.004002 Hz 800x600 px, 60.317001 Hz 640x480 px, 60.000000 Hz 640x480 px, 59.939999 Hz Position: 0,0 Transform: normal Scale: 1.000000 Adaptive Sync: enabled ```

HZ: 143.998 (works)

wlr-randr ``` DP-3 "Dell Inc. Dell AW3821DW #HLAYMxgwABTR (DP-3)" Make: Dell Inc. Model: Dell AW3821DW Serial: #HLAYMxgwABTR Physical size: 880x370 mm Enabled: yes Modes: 3840x1600 px, 59.993999 Hz (preferred) 3840x1600 px, 143.998001 Hz (current) 3840x1600 px, 120.044998 Hz 3840x1600 px, 119.982002 Hz 3840x1600 px, 99.970001 Hz 3840x1600 px, 96.036003 Hz 3840x1600 px, 84.971001 Hz 3840x1600 px, 72.019997 Hz 3840x1600 px, 60.007999 Hz 3840x1600 px, 50.002998 Hz 3840x1600 px, 48.008999 Hz 3840x1600 px, 29.971001 Hz 3840x1600 px, 30.000000 Hz 3840x1600 px, 25.000999 Hz 3840x1600 px, 23.976000 Hz 3840x1600 px, 24.002001 Hz 1920x1200 px, 59.993999 Hz 1920x1080 px, 59.993999 Hz 1600x1200 px, 59.993999 Hz 1680x1050 px, 59.993999 Hz 1280x1024 px, 59.993999 Hz 1440x900 px, 59.993999 Hz 1280x800 px, 59.993999 Hz 1280x720 px, 59.993999 Hz 1024x768 px, 60.004002 Hz 800x600 px, 60.317001 Hz 640x480 px, 60.000000 Hz 640x480 px, 59.939999 Hz Position: 0,0 Transform: normal Scale: 1.000000 Adaptive Sync: enabled ```

HZ: 143.99 (works)

wlr-randr ``` DP-3 "Dell Inc. Dell AW3821DW #HLAYMxgwABTR (DP-3)" Make: Dell Inc. Model: Dell AW3821DW Serial: #HLAYMxgwABTR Physical size: 880x370 mm Enabled: yes Modes: 3840x1600 px, 59.993999 Hz (preferred) 3840x1600 px, 143.998001 Hz (current) 3840x1600 px, 120.044998 Hz 3840x1600 px, 119.982002 Hz 3840x1600 px, 99.970001 Hz 3840x1600 px, 96.036003 Hz 3840x1600 px, 84.971001 Hz 3840x1600 px, 72.019997 Hz 3840x1600 px, 60.007999 Hz 3840x1600 px, 50.002998 Hz 3840x1600 px, 48.008999 Hz 3840x1600 px, 29.971001 Hz 3840x1600 px, 30.000000 Hz 3840x1600 px, 25.000999 Hz 3840x1600 px, 23.976000 Hz 3840x1600 px, 24.002001 Hz 1920x1200 px, 59.993999 Hz 1920x1080 px, 59.993999 Hz 1600x1200 px, 59.993999 Hz 1680x1050 px, 59.993999 Hz 1280x1024 px, 59.993999 Hz 1440x900 px, 59.993999 Hz 1280x800 px, 59.993999 Hz 1280x720 px, 59.993999 Hz 1024x768 px, 60.004002 Hz 800x600 px, 60.317001 Hz 640x480 px, 60.000000 Hz 640x480 px, 59.939999 Hz Position: 0,0 Transform: normal Scale: 1.000000 Adaptive Sync: enabled ```

HZ: 143.9 (works)

wlr-randr ``` DP-3 "Dell Inc. Dell AW3821DW #HLAYMxgwABTR (DP-3)" Make: Dell Inc. Model: Dell AW3821DW Serial: #HLAYMxgwABTR Physical size: 880x370 mm Enabled: yes Modes: 3840x1600 px, 59.993999 Hz (preferred) 3840x1600 px, 143.998001 Hz (current) 3840x1600 px, 120.044998 Hz 3840x1600 px, 119.982002 Hz 3840x1600 px, 99.970001 Hz 3840x1600 px, 96.036003 Hz 3840x1600 px, 84.971001 Hz 3840x1600 px, 72.019997 Hz 3840x1600 px, 60.007999 Hz 3840x1600 px, 50.002998 Hz 3840x1600 px, 48.008999 Hz 3840x1600 px, 29.971001 Hz 3840x1600 px, 30.000000 Hz 3840x1600 px, 25.000999 Hz 3840x1600 px, 23.976000 Hz 3840x1600 px, 24.002001 Hz 1920x1200 px, 59.993999 Hz 1920x1080 px, 59.993999 Hz 1600x1200 px, 59.993999 Hz 1680x1050 px, 59.993999 Hz 1280x1024 px, 59.993999 Hz 1440x900 px, 59.993999 Hz 1280x800 px, 59.993999 Hz 1280x720 px, 59.993999 Hz 1024x768 px, 60.004002 Hz 800x600 px, 60.317001 Hz 640x480 px, 60.000000 Hz 640x480 px, 59.939999 Hz Position: 0,0 Transform: normal Scale: 1.000000 Adaptive Sync: enable ```

HZ: 143 (not valid as expected)

wlr-randr ``` DP-3 "Dell Inc. Dell AW3821DW #HLAYMxgwABTR (DP-3)" Make: Dell Inc. Model: Dell AW3821DW Serial: #HLAYMxgwABTR Physical size: 880x370 mm Enabled: yes Modes: 3840x1600 px, 59.993999 Hz (preferred, current) 3840x1600 px, 143.998001 Hz 3840x1600 px, 120.044998 Hz 3840x1600 px, 119.982002 Hz 3840x1600 px, 99.970001 Hz 3840x1600 px, 96.036003 Hz 3840x1600 px, 84.971001 Hz 3840x1600 px, 72.019997 Hz 3840x1600 px, 60.007999 Hz 3840x1600 px, 50.002998 Hz 3840x1600 px, 48.008999 Hz 3840x1600 px, 29.971001 Hz 3840x1600 px, 30.000000 Hz 3840x1600 px, 25.000999 Hz 3840x1600 px, 23.976000 Hz 3840x1600 px, 24.002001 Hz 1920x1200 px, 59.993999 Hz 1920x1080 px, 59.993999 Hz 1600x1200 px, 59.993999 Hz 1680x1050 px, 59.993999 Hz 1280x1024 px, 59.993999 Hz 1440x900 px, 59.993999 Hz 1280x800 px, 59.993999 Hz 1280x720 px, 59.993999 Hz 1024x768 px, 60.004002 Hz 800x600 px, 60.317001 Hz 640x480 px, 60.000000 Hz 640x480 px, 59.939999 Hz Position: 0,0 Transform: normal Scale: 1.000000 Adaptive Sync: enabled ```

HZ: 120.044998 (works)

wlr-randr ``` DP-3 "Dell Inc. Dell AW3821DW #HLAYMxgwABTR (DP-3)" Make: Dell Inc. Model: Dell AW3821DW Serial: #HLAYMxgwABTR Physical size: 880x370 mm Enabled: yes Modes: 3840x1600 px, 59.993999 Hz (preferred) 3840x1600 px, 143.998001 Hz 3840x1600 px, 120.044998 Hz (current) 3840x1600 px, 119.982002 Hz 3840x1600 px, 99.970001 Hz 3840x1600 px, 96.036003 Hz 3840x1600 px, 84.971001 Hz 3840x1600 px, 72.019997 Hz 3840x1600 px, 60.007999 Hz 3840x1600 px, 50.002998 Hz 3840x1600 px, 48.008999 Hz 3840x1600 px, 29.971001 Hz 3840x1600 px, 30.000000 Hz 3840x1600 px, 25.000999 Hz 3840x1600 px, 23.976000 Hz 3840x1600 px, 24.002001 Hz 1920x1200 px, 59.993999 Hz 1920x1080 px, 59.993999 Hz 1600x1200 px, 59.993999 Hz 1680x1050 px, 59.993999 Hz 1280x1024 px, 59.993999 Hz 1440x900 px, 59.993999 Hz 1280x800 px, 59.993999 Hz 1280x720 px, 59.993999 Hz 1024x768 px, 60.004002 Hz 800x600 px, 60.317001 Hz 640x480 px, 60.000000 Hz 640x480 px, 59.939999 Hz Position: 0,0 Transform: normal Scale: 1.000000 Adaptive Sync: enabled ```

HZ: 120 (works)

wlr-randr ``` DP-3 "Dell Inc. Dell AW3821DW #HLAYMxgwABTR (DP-3)" Make: Dell Inc. Model: Dell AW3821DW Serial: #HLAYMxgwABTR Physical size: 880x370 mm Enabled: yes Modes: 3840x1600 px, 59.993999 Hz (preferred) 3840x1600 px, 143.998001 Hz 3840x1600 px, 120.044998 Hz (current) 3840x1600 px, 119.982002 Hz 3840x1600 px, 99.970001 Hz 3840x1600 px, 96.036003 Hz 3840x1600 px, 84.971001 Hz 3840x1600 px, 72.019997 Hz 3840x1600 px, 60.007999 Hz 3840x1600 px, 50.002998 Hz 3840x1600 px, 48.008999 Hz 3840x1600 px, 29.971001 Hz 3840x1600 px, 30.000000 Hz 3840x1600 px, 25.000999 Hz 3840x1600 px, 23.976000 Hz 3840x1600 px, 24.002001 Hz 1920x1200 px, 59.993999 Hz 1920x1080 px, 59.993999 Hz 1600x1200 px, 59.993999 Hz 1680x1050 px, 59.993999 Hz 1280x1024 px, 59.993999 Hz 1440x900 px, 59.993999 Hz 1280x800 px, 59.993999 Hz 1280x720 px, 59.993999 Hz 1024x768 px, 60.004002 Hz 800x600 px, 60.317001 Hz 640x480 px, 60.000000 Hz 640x480 px, 59.939999 Hz Position: 0,0 Transform: normal Scale: 1.000000 Adaptive Sync: enabled ```

HZ: 119.982002 (works)

wlr-randr ``` DP-3 "Dell Inc. Dell AW3821DW #HLAYMxgwABTR (DP-3)" Make: Dell Inc. Model: Dell AW3821DW Serial: #HLAYMxgwABTR Physical size: 880x370 mm Enabled: yes Modes: 3840x1600 px, 59.993999 Hz (preferred) 3840x1600 px, 143.998001 Hz 3840x1600 px, 120.044998 Hz 3840x1600 px, 119.982002 Hz (current) 3840x1600 px, 99.970001 Hz 3840x1600 px, 96.036003 Hz 3840x1600 px, 84.971001 Hz 3840x1600 px, 72.019997 Hz 3840x1600 px, 60.007999 Hz 3840x1600 px, 50.002998 Hz 3840x1600 px, 48.008999 Hz 3840x1600 px, 29.971001 Hz 3840x1600 px, 30.000000 Hz 3840x1600 px, 25.000999 Hz 3840x1600 px, 23.976000 Hz 3840x1600 px, 24.002001 Hz 1920x1200 px, 59.993999 Hz 1920x1080 px, 59.993999 Hz 1600x1200 px, 59.993999 Hz 1680x1050 px, 59.993999 Hz 1280x1024 px, 59.993999 Hz 1440x900 px, 59.993999 Hz 1280x800 px, 59.993999 Hz 1280x720 px, 59.993999 Hz 1024x768 px, 60.004002 Hz 800x600 px, 60.317001 Hz 640x480 px, 60.000000 Hz 640x480 px, 59.939999 Hz Position: 0,0 Transform: normal Scale: 1.000000 Adaptive Sync: enabled ```

HZ: 119 (not valid as expected)

wlr-randr ``` DP-3 "Dell Inc. Dell AW3821DW #HLAYMxgwABTR (DP-3)" Make: Dell Inc. Model: Dell AW3821DW Serial: #HLAYMxgwABTR Physical size: 880x370 mm Enabled: yes Modes: 3840x1600 px, 59.993999 Hz (preferred, current) 3840x1600 px, 143.998001 Hz 3840x1600 px, 120.044998 Hz 3840x1600 px, 119.982002 Hz 3840x1600 px, 99.970001 Hz 3840x1600 px, 96.036003 Hz 3840x1600 px, 84.971001 Hz 3840x1600 px, 72.019997 Hz 3840x1600 px, 60.007999 Hz 3840x1600 px, 50.002998 Hz 3840x1600 px, 48.008999 Hz 3840x1600 px, 29.971001 Hz 3840x1600 px, 30.000000 Hz 3840x1600 px, 25.000999 Hz 3840x1600 px, 23.976000 Hz 3840x1600 px, 24.002001 Hz 1920x1200 px, 59.993999 Hz 1920x1080 px, 59.993999 Hz 1600x1200 px, 59.993999 Hz 1680x1050 px, 59.993999 Hz 1280x1024 px, 59.993999 Hz 1440x900 px, 59.993999 Hz 1280x800 px, 59.993999 Hz 1280x720 px, 59.993999 Hz 1024x768 px, 60.004002 Hz 800x600 px, 60.317001 Hz 640x480 px, 60.000000 Hz 640x480 px, 59.939999 Hz Position: 0,0 Transform: normal Scale: 1.000000 Adaptive Sync: enabled ```
alex-courtis commented 10 months ago

Thank you for the detailed testing!

I'll look into a release for this shortly.

GrabbenD commented 8 months ago

Sway has just also implemented this feature 🙂 https://github.com/swaywm/sway/pull/7783 (ref: https://github.com/swaywm/sway/issues/7599#issuecomment-1765212668)

alex-courtis commented 8 months ago

Sway has just also implemented this feature 🙂 swaywm/sway#7783 (ref: swaywm/sway#7599 (comment))

Nice!