• 2 Posts
  • 18 Comments
Joined 1 year ago
cake
Cake day: November 26th, 2023

help-circle
  • Signal padding, there happen to be empty/blank pixels sent which make things easier for display controllers when detecting timings, historically those blank pixels were there to give time for CRT electron beams to move to where the next line or frame began.

    For BOE panels at 90hz, they receive frames which happen to be 858x1320 pixels in size, with an active area of 800x1280, while SDC panels use frames which are 1128x1312 in size, also with an 800x1280 active area.

    So…

    for BOE: 858x1320x90 = 101930400; ie a clock of ~101.93MHz; though in reality the panel runs at 102mhz so has a refresh rate of ~90.0615Hz.

    and for SDC: 1128x1312x90 = 133194240; so a clock of 133.194mhz; but they run at 133.200MHz instead which gives a refresh rate of ~90.004Hz

    Reducing how large of a padding area gets sent may be possible, but without having an SDC panel deck myself I’m not able to test to which degree, if any, that would be possible.







  • But it’s below the treshold for human perception

    Not exactly true, depending on which sense and , humans can perceive differences down to amounts quite small, even tiny values like 5-10 microseconds for hearing frequencies are noticeable.

    For input-visual response time, differences down 0.5-1 milliseconds can be perceived by those sensitive to it and/or trained for it, 2 milliseconds happens to be well above that, though on average 4-6 milliseconds would be an expected threshold without knowing what to expect.

    When using gyro-to-mouse input, difference between 60 and 70hz is perceivable, though a small change and not immediately noticeable, often it would be to enough to throw off my inputs for timing-sensitive things should I forget about increasing refresh rate.

    Motion inputs often have significantly higher sensitivity to response time variation, adding say, 2msec extra latency into a VR headset and you would be far likelier to end up feeling nauseous after/during use.


  • I do not have a deck with a Samsung panel currently so unfortunately I can not perform manual timing tuning like I was able to do with a BOE panel deck (which was quite annoying to get given they only shipped LE ones to US&Canada, luckily I had access to an old secondary steam account and could order from that, got kinda worried with shipping but despite the box being a bit wet given it was left out in the rain briefly, everything turned out okay)

    If I do end up receiving enough donations to buy a second OLED deck than I intend on ordering one so that I can hand-tune Samsung panel timings. Without one though, it looks like SDC decks will be limited to ~98hz for now.

    I will likely update my code to handle SDC and BOE decks separately to avoid enabling modes SDC decks can not function at.




  • I did change how 90Hz mode works slightly [I manually tuned all 80 modes from 40hz to 120Hz] so using this will push BOE OLED panel controllers slightly more at 90hz than stock would, but it should still be well within expected panel tolerances. I would not expect any harm to come from that.

    Modes that will drive BOE panels at rates higher than stock: 46-48, 50, 53-54, 58, 60-63, 65-64, 68-69, 75-79, 82-83, 86, 89-120

    All other modes will drive BOE panels at rates lower than stock.

    For SDC, all modes from 45 through 90 will drive panel at stock rate, for 40-44 they’ll be lower than stock, 91-120 will be higher than stock.

    For LCD decks, only 61-70 would push panel harder, but there’s very little risk comparatively there, especially given many, including myself, have run LCD decks at 70hz for extended periods without issue.