LINUX.ORG.RU

Как отключить adaptive brightness (CABC) на ноуте asus rog strix (intel/nvidia)?

 , ,


1

1

Content Adaptive Brightness Control – это которое автоматически меняет яркость монитора в зависимости от яркости картинки на нём. Оно активно хоть при intel igpu, хоть при nvidia. Что нагуглил – либо не помогло, либо не про мою душу (у меня нет ни kde, ни systemd: система artix/runit/openbox). Может кто из здесь присутствующих нарывался и лечил как-то низкоуровнево?

UPD. На арчефоруме нашлось что надо выключить smart energy saver. Но если начать смотреть соответствующие опции ядра, то выглядит это как-то слишком радикально. Мне не нужно, чтобы ноут непрерывно шуровал на всех парах.

SOLVED: тыц (linux.org.ru) и камент над ним.

★★★★★

Последнее исправление: dimgel (всего исправлений: 7)

Обычно добиваться работы подобных фич в Linux приходится с диким красноглазием. Если оно работает «искаропки», вероятно, что фича аппаратная.

carasin ★★★★★
()
Ответ на: комментарий от err

Сенькс, видел. Backlight мне не влом и при запуске из ~/.config/openbox/autostart установить. Но и не помогает оно против этой говнофичи.

dimgel ★★★★★
() автор топика
Ответ на: комментарий от anonymous

Угу, только вот на ноутбучном мониторе OSD-меню взяться неоткуда.

dimgel ★★★★★
() автор топика
Ответ на: комментарий от err

Причём судя по увиденному краем глаза пока гуглил, может и не весь монитор сразу, а областями. Например, у меня окна не на весь экран, а справа виден кусочек десктопа и gkrellm на нём. И когда я переключаю с тёмно-серого фона LOR на почти-чёрный фон консоли, этот gkrellm становится существенно ярче.

dimgel ★★★★★
() автор топика
Последнее исправление: dimgel (всего исправлений: 1)
Ответ на: комментарий от cobold

Я видел рецепты и про настройки kde, и про systemd-сервис iio-sensor-proxy, который нужно загасить (но у меня нет ни systemd, ни чего-либо напоминающего этот сервис – да и вообще sensor это скорее про освещённость в комнате, а не про яркость картинки), и про параметры ядра i915… и Nvreg_… Пока что всё мимо.

dimgel ★★★★★
() автор топика
Последнее исправление: dimgel (всего исправлений: 4)
Ответ на: комментарий от dimgel

Ааа, то есть это штука типа как в телефоне, когда вокруг ярко, то и яркость дисплея поднимается. Я думал это про яркость подсветки в зависимости от картинки на экране

cobold ★★★★★
()

Здесь https://github.com/admtrv/ScreenPadian/blob/main/main.cpp есть /sys/class/backlight/asus_screenpad/bl_power. У себя посмотрел, в нём /sys/class/backlight/acpi_video1/bl_power 0. Пробуй echo '1' > /sys/class/backlight/здесь твоё/bl_power, может оно. Или посмотреть какие ещё у тебя в директории есть файлы.

spawn_sp ★★★★
()
Ответ на: комментарий от spawn_sp

Не то. Писал и в intel, и в nvidia, 0/1/4 – пофиг ей. Имеется ощущение, что писать надо в монитор (/sys/class/drm/…), но также имеется ощущение, что писать методом тыка что попало куда попало – надёжный способ достаточно быстро окирпичить железо.

dimgel ★★★★★
() автор топика
Ответ на: комментарий от carasin

Если оно работает «искаропки», вероятно, что фича аппаратная.

Ну дискотеку я отключил таки-всю (даже ту что на крышке; вообще, это конечно полный #%№$^&ц) с помощью asusctl. Жаль в сабж оно не умеет. Вспомнил тут, что у меня ж винда десятая есть на внешнем ssd, может завтра попробую из-под неё похимичить, авось получится и не потеряется при перезагрузке.

dimgel ★★★★★
() автор топика
Ответ на: комментарий от dimgel

Если при перезагрузке будет сохраняться, ставлю на то, что вся эта кухня хранится в EC.

А вообще в таких ситуациях я бы надеялся на какой-нибудь WireShark под Виндой.

carasin ★★★★★
()
Последнее исправление: carasin (всего исправлений: 2)

автоматически меняет яркость монитора в зависимости от яркости картинки на нём.

В смысле для темных повышает для светлых понижает?

ya-betmen ★★★★★
()
Последнее исправление: ya-betmen (всего исправлений: 1)
Ответ на: комментарий от ya-betmen

Да. Ирония в том, что в результате менее контрастная картинка становится ещё менее контрастной, т.к. для светло-серого шрифта на тёмно-сером фоне яркость становится ниже, чем для белого шрифта на чёрном фоне.

dimgel ★★★★★
() автор топика
Ответ на: комментарий от dimgel

Сегодня забрал из Озона новенький Asus TUF Gaming A14 2026 FA401EA. Пока проверял на стоковой Win11, тоже обнаружил аналогичное поведение подсветки дисплея. Fedora пока ещё не накатывал, однако уже «предвкушаю», что меня также ожидает такой же квест. Хотя, зная, как в Linux поддерживается данная модель, квестов будет несколько больше.

carasin ★★★★★
()
Ответ на: комментарий от carasin

Моя пирацкая десятка не захотела обновляться до последнего билда, где появилось отключение сабжа. А ты в своей 11 попробуй заранее его выключить перед установкой линукса, авось прокатит. (Мне бы кто подсказал, прежде чем я свою 11 OEM снёс.)

dimgel ★★★★★
() автор топика
Ответ на: комментарий от carasin

У меня для amd это отключается в /sys/class/drm/card1-eDP-1/amdgpu/panel_power_savings Цифры от 0 до 4. Для интелов есть аналогичный интерфейс. Поройся в /sys/class/drm/

Jeronimo ★★★
()
Последнее исправление: Jeronimo (всего исправлений: 1)
Ответ на: комментарий от carasin

На выходных попробую. Я гуй не ставил, но вроде по всем режимам консоли проходился (и на большинство она ругалась, что железо не поддерживает такое).

dimgel ★★★★★
() автор топика
Ответ на: комментарий от carasin

Зараза, а у меня нету. Возможно как-то связано с ошибками, видными на скриншоте.

// Кто бы знал, какого гимора мне стоило запустить эту хрень – на системе без systemd (причём – какая ирония – в AUR есть пакет без systemd, но он вообще не завёлся), без вяленого (нашёл asusctl-x11, asusd запускал из консоли от рута) и без кедов (чтобы не фаталило «The name org.freedesktop.Notifications was not provided by any .service files», поставил dunst). А ещё модуль ядра asus-armoury входит в состав ядра начиная с 6.19, а у меня 6.18 lts, на гитхабе устаревшая некомпиляющаяся версия, но тут как раз просто: рядышком с linux-lts воткнул linux и перезагрузился. Думал, ну теперь появится больше возможностей, чем я в предыдущем каменте жаловался что ни черта нету; а вот хрен.

// Ну теперь надо ухитриться воткнуть на usb ssd винду 11, которая, как известно, на usb ssd категорически не встаёт. Даже через rufus и wintousb: при первом запуске после установки что-то там шурует, перегружается, а затем вылетает INACCESSIBLE_BOOT_DEVICE. Пишут, это мол потому что usb 3. А usb 2 у меня нет.

dimgel ★★★★★
() автор топика

Эта гадость живет не в видеоадапере, а в матрице. Впервые это появилось на древнем Dell XPS, и там это на одной из матриц комплектации было вообще не отключаемым,а на второй лечилось перешиванием контроллера матрицы щедро выложенной поддержкой Делл утилитой.

Чем думал мегамозг который это изобрел не знаю, скорее всего жопой. Но кроме адской ненависти и потока проклятий на всех форумах владельцев Делл эта штука ничего не принесла. По одной легенде она должна была сберегать энергию, по другой повышать контрастность. В любом случае у меня сложилось впечаление что это говно отовсюду выпилиили - ну по крайней мере у Делл. Но видимо асусы решили подобрать говнотехологию, остается только надеяться что оно там отключаемо либо вендовым драйвером либо какой-то фирменной утилитой перешивания контроллера матрицы.

Qui-Gon ★★★★★
()
Ответ на: комментарий от carasin

Бояре сумлеваются. Заказал M.2 SSD, буду Win11 OEM ставить в дуал-бут. Гы, туда-сюда-обратно; нахрена спрашивается сносил. Ну хоть заодно и DA:O погоняю, а то под вайном оно уже давно глючит, а уж как выпилили из него multilib, так вообще всё 32-битное убили. Кстати, win10 до win11 на USB SSD обновляться тоже не захотела. Суки.

dimgel ★★★★★
() автор топика
Ответ на: комментарий от Qui-Gon

Это скорее всего чтобы в играх в темных углах противника лучше было видно Asus захотели, геймерские ноутбуки ведь заваливают рынок. Просто на ноуте это реально не нужно, где контроля в мониторе нет. Вот только есть одно но, в соревновательных играх типо кс2, это уже есть в самой игре, типо более контрастные модели, и даже киберспортмены уже так жестко не выкручивают на самом мониторе ибо на разных турнирах сейчас разные мониторы и разная герцовка, а не как раньше один и тот же Zowie с одной и той же герцовкой у всех. Проще выкрутить в игре и в панели nvidia ибо там хотя бы все одинаковое софтово.

anonymous_sama ★★★★★
()
Последнее исправление: anonymous_sama (всего исправлений: 1)
Ответ на: комментарий от anonymous_sama

ну в геймерских ноутах сам Аллах велел ставить амоледы с минимальным откликом и идеальной контратсностью, а не выкручивать онанизм вприсядку с разными негодными технологиями чтобы кое-как выжать капельки из тормознутой по определению технологии IPS. Но тут похоже цена решает - и технологии вполне себе работают на витрине при хорошо продуманном демо но адски гадят в реальном использовании. Да идля игр она годится никак. СОвсем никак. Потому что она адски медленная - там задержка отрабатывания в секунды. А если у тебя на экране микс светлого и темного да еще и динамический - то поведение этого алгоритма абсолютно непредсказуемо и создается эффект умирающей подсветки матрицы которая не в состоянии держать постоянную яркость и елозит туда-сюда.

Собственно физика процесса. Как устроен амолед - да просто. Есть подсветка (белая) которая светит. Всегда. Равномерно (в идеале) - то есть яркий белый лист. Сверху жидкие кристаллы которые перекрывают этот поток света. То есть белая точка - это открытый пиксель(по факту их 3 со светофильтрами RGB), черная - закрытый. Подсветке пофиг. Поэтому IPS жрет одинаково. Что черный жкран что белый - подсветка жарит одинаково. И еще она посачивается сквозь пиксели и дает сероватый фон. И вот какой-то дебилушка придумал - а если у нас черный экран - то мы же впустую светим. А давайте мы будем эту подсветку на темном экране выключать - это ж экономия энергии! И вшили в контроллер матрицы некую лабуду которая рассчитывает соотношение темных и светых пикселей и если темных больше - то снижает яркость подсветки. При этом правда снижается и яркость букв и изображений на темном фоне тоже - но об этом говноиженер не думал. На тот момент надо было вывести волшебную цифирьку автономности на 50% яркости любой ценой. Ну вот вывели. Просто сдеоав по сути «обманку» которая при определенной картинке превращает 50% яркости в 15.

Qui-Gon ★★★★★
()
Последнее исправление: Qui-Gon (всего исправлений: 1)
Ответ на: комментарий от Qui-Gon

Они наоборот ставят OLED матрицы в линейки для дизайнеров без видюх, типо Vivobook (кстати достаточно бюджетные на фоне игровых). Короче наверное как всегда лучше смотреть отдельную модельку в целом, типо сразу говорить что весь ASUS говно не стоит, но очень много вот таких странных решений маркетологов.

anonymous_sama ★★★★★
()
Последнее исправление: anonymous_sama (всего исправлений: 1)
Ответ на: комментарий от anonymous_sama

Ну никто и не говорит что весь асус говно - они делают кучу моделей, как впрочем и остальные производители. За что заплатишь - то и получишь, и при ограниченном бюджете часто приходится идти на компромиссы - скажем брать видюху пожирнее но жертвовать матрицей. Или наоборот.

Qui-Gon ★★★★★
()
Ответ на: комментарий от Qui-Gon

За что заплатишь - то и получишь

Заплатил я за самый топчик. И докладываю: в винде галка есть (Win+I / System / Display / справа от ползунка Brightness стрелка вниз / Change brightness based on content), но она не работает. :D И другие нагугленные галки не работают, а в aurmoury crate нагугленной галки нет. Все драйвера и весь софт – самый свежак по ссылкам с сайта asus support.

dimgel ★★★★★
() автор топика
Последнее исправление: dimgel (всего исправлений: 2)
Ответ на: комментарий от dimgel

ну видимо в асусе считают что если у человека столько денег чтобы заплатить за топчик - то не надо ему в нищебродский линукс а надо сидеть на дорогой топовой венде со всеми галками и палками…

То бишь скорее всего людей которые отваливают столько денег и сидят в линуксе настолько ничтожно мало, что нико не взломал какйую последовательность битов венда заталкивает в матрицу чтобы отключить говнофичу. Но вот почему они взяв столько бабла пожидились на нормальный амолед при том что у асуса свои отношения и цены с самсунгом на матрицы так что даже на вивобуки амоледы ставят - большой вопрос..

Qui-Gon ★★★★★
()
Ответ на: комментарий от dimgel

тогда это точно контролируется железом матрицы и единственный способ - перепрошить матрицу если есть прошивка бе говна (что сомнительно) или поменять матрицу. Но учитывая сколко стоит оное чудо копаться в нем грязными руками и ставить матрицу с алика оставляя следы вскрытия и снижая продажную стоимость - дело неблагодарное.

Qui-Gon ★★★★★
()
Ответ на: комментарий от Qui-Gon

Так. Стоило кинуть лапки кверху, как решение нашлось – но только ДЛЯ ВИНДЫ, после перезагрузки в линукс опять эта дрянь активна.

Для винды:

  • Win+I / System / Display / expand brightness / Change brightness based on content := Off (3-state, хз нужно ли оно, или двух следующих пунктов достаточно)
  • Win+I / System / Display / HDR := off (нужно для следующего пункта)
  • Armoury Crate / Devices / your device / System / SDR Backlight Control := One Zone (3-state, ключевая настройка, при включённом HDR задизаблена-залочена на другом дурацком режиме)

Возможно также роляло, что ранее я отключал:

  • Win+I / Personalization / Dynamic Lighting / Use Dynamic Lighting on my devices := off
  • Win+I / Personalization / Dynamic Lighting / Compatible apps in the foreground always control lighting := off

Ну авось со временем и до линукса эти галки доберутся.

UPD. Щас сюда скрины вылью.

dimgel ★★★★★
() автор топика
Последнее исправление: dimgel (всего исправлений: 2)
Ответ на: комментарий от dimgel

УРА МАТЬ ВАШУ !!! Теперь знал что гуглить:

asus «sdr backlight control» in linux

# cat /sys/devices/platform/asus-nb-wmi/available_mini_led_mode
0 1 2
# echo 0 > /sys/devices/platform/asus-nb-wmi/mini_led_mode

(Note: 0 is generally single-zone SDR, 1 is balanced multi-zone, and 2 is strong multi-zone/HDR).

dimgel ★★★★★
() автор топика
  • Markdown
Пустая строка (два раза Enter) начинает новый абзац. Знак '>' в начале абзаца выделяет абзац курсивом цитирования.
Внимание: прочитайте описание разметки Markdown.
Используйте Ctrl-Enter для размещения комментария