Notebook fancontrol как пользоваться

Notebook fancontrol как пользоваться

БИОСы ноутбуков самостоятельно управляют оборотами кулера, и обычно больше не нужно ничего делать. Но иногда, автоматическое изменение скорости работает не так, как хотелось бы. Например, процессор греется слишком сильно, а вентилятор не собирается разгоняться до максимальных оборотов. Но чаще наоборот, когда просто читаешь с ноутбука, а он шумит. Для таких случаев есть специальная программа для управления кулером.

В предыдущей статье про управление кулерами в компьютере я описал программу SpeedFan. Но SpeedFan не работает с вентилятором ноутбука, ну может быть подойдёт только для очень старых моделей.

Основные настройки программы Notebook FanControl

Это бесплатная программа, которая подходит для большинства современных ноутбуков: Lenovo, Acer, Asus, Packard Bell, Sony, Toshiba, Xiaomi, HP, Dell и других, часто обновляется.

Пролистайте страницу немного вниз, и скачайте программу по любой ссылке:

Устанавливаем программу NBFC и запускаем. Для управления кулером нужно выбрать свой ноутбук из списка:

  • Нажимаем на кнопку с тремя точками в поле «Select Config»
  • Выбираем модель или серию своего ноутбука
  • Нажимаем кнопку «Apply» (Применить настройки)

Если всё прошло гладко, то теперь вы должны увидеть текущую температуру процессора (Temperature CPU) и текущую скорость вентилятора в процентах от максимальной (Current fan speed). По умолчанию, программа не управляет кулером, а только считывает текущие показания, посмотрите на переключатели:

  • Disabled: все функции отключены
  • Read-only: режим «только-чтение» текущих параметров
  • Enabled: включена ручная или автоматическая регулировка оборотов вентилятора

Чтобы выставить фиксированную скорость вращения кулера нужно включить режим «Enabled» и передвинуть ползунок Fan:

На скриншоте я настроил вентилятор на скорость в 51.6% и получил реальное значение 52.9% от максимально возможного. Тютелька-в-тютельку не обязательно получится.

Настройка автоматического управления оборотами кулера ноутбука

Для включения автоматического управления, ползунок нужно передвинуть вправо до упора, появится значение «Auto». Теперь Notebook Fan Control будет изменять скорость вращения в зависимости от температуры, и это поведение можно настроить: нажимаем на кнопку «…» (где выбирали модель ноутбука) и далее «Edit».

На вкладке «Basic Configuration» изменяется параметр «Critical Temperature» — критическая температура, при которой автоматически включится максимальная скорость кулера (100%).

Это число подтягивается автоматически для выбранной модели ноута, но я рекомендую не оставлять значение выше 85 градусов, ноутбук дольше прослужит!

Переходим на вкладку «Fan Configuration», кликаем по единственной строчке в таблице и нажимаем «edit»:

Далее нужно перейти на вкладку «Temperature Thresholds» (температурные пороги).

Удобное окно с ползунками появляется с помощью двойного клика по строчке. Дальше всё просто, для каждого диапазона температуры процессора ноутбука выставляется скорость вращения:

  • Up threshold – верхняя граница температуры
  • Down threshold – нижняя граница температуры
  • Fan Speed – скорость кулера

Например, у меня указано, что при температуре от 35 до 50 градусов будет применена скорость в 30.3% для охлаждения процессора. После внесения изменений нажимаем «ОК -> save -> Apply -> Enabled»

Автоматический запуск программы

В главном окне программы NBFC нажмите на значок шестерёнки в правом нижнем углу:

  • «Start with Windows» — программа будет загружаться вместе с Windows
  • «Close to tray» — если свернуть или закрыть программу, то она попадёт в системный трей (рядом с часиками) и будет показывать текущую скорость кулера, при этом не будет занимать место на панели задач
  • «Tray icon color» — цвет значка со значением скорости

Посмотрите видео по работе с программой:

Ответы и Вопросы

Стоит отметить, что если выйти из программы, то кулер останется крутиться на установленной программой скорости. Поэтому будьте осторожны! Если поставили маленькую скорость и вышли из программы, думая что сейчас всё закрутиться как обычно, то нет, и процессор может сильно нагреться!

Программа записывает значения в EC-контроллер и далее не требуется её присутствие в памяти, кроме как для автоматической регулировки.

Чтобы вернуть оригинальное поведение ноутбука, нужно открыть программу и поменять переключатель «Enabled» на «Disabled» или «Read-only». Если это невозможно сделать и ноутбук перестал включаться, тогда для сброса значений EC по умолчанию нужно:

  • Выключить ноутбук и достать батарею на 20 секунд
  • Поставить батарею назад и включить ноутбук
  • Если батарея несъёмная, то включайте его, удерживая нажатой кнопку питания 15-20 секунд
  • В других случаях обращайтесь к руководству пользователя

В ряде случаев на переносных компьютерах с видеокартами Nvidia может быть что при запуске игр перестанет работать автоматическое управление. Это техническая особенность и никак не решается.

Если вашего лэптопа нет в списке ноутбуков, то поищите похожий, высока вероятность что программа заработает. Также можно создать конфигурацию вручную, для этого есть инструкция на английском языке https://github.com/hirschmann/nbfc/wiki/How-to-create-a-NBFC-config

Что делать, если не сохраняются настройки порогов

Если по каким-либо причинам не сохраняются настройки пороговых значений температуры, то нужно вручную отредактировать XML-файл настроек. Для этого:

  • В проводнике Windows пройдите по пути: «c:Program Files (x86)NoteBook FanControlConfigs»
  • Найдите файл с именем вашей конфигурацией (моделью ноутбука). Совет: отсортируйте отображение файлов по времени изменения, и ваша конфигурация окажется в самом верху списка.
  • Откройте конфиг в блокноте
  • Найдите через поиск раздел и отредактируйте значения вручную
  • Сохраните файл

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

Изменение режима работы лопастей в BIOS

Некоторые производители сделали возможным управление кулером ноутбука прямо из BIOS. Для этого не требуется установка специальных приложений, все необходимое в системе уже имеется:

  1. Войдите в BIOS ноутбука, для чего обычно в самом начале загрузки требуется нажать Del.
  2. Найдите раздел POWER, а в нем строчку HW Monitor Configuration. Здесь есть опция, при помощи которой осуществляется настройка вентилятора на ноутбуке. Следует искать строчку со словом «Fun» – точное название команды в разных моделях устройств может различаться.
  3. Здесь можно выбрать один из режимов работы кулера, например, «Turbo», который будет управлять им в режиме агрессивного охлаждения, что может быть полезным, например, при разгоне системы.
Читайте также:  Застревает бумага в автоподатчике

После того как настройка была изменена, необходимо сохранить новые параметры работы системы и перезагрузить устройство.

Если BIOS не позволяет осуществлять управление кулерами ноутбука, то эта же задача может быть успешно решена при использовании простых и часто бесплатных сторонних приложений. Регулировку скорости с их помощью можно осуществлять в любых пределах вплоть до полной остановки вентилятора. Более того, работать утилиты могут сразу со всеми кулерами ноутбука, установленными в системе.

Работа с программой SpeedFan

Эта утилита является сегодня одной из наиболее востребованных. Широкому ее распространению способствует бесплатность, простой интерфейс, при помощи которого осуществляется регулировка скорости вращения кулера на ноутбуке, а также возможность мониторинга в реальном времени параметров работы системных аппаратных компонентов.

Важной особенностью приложения является то, что оно может работать на ноутбуке, скорость вращения вентилятора в котором регулируется из BIOS. Зачастую этот стандартный способ позволяет изменять обороты кулера только центрального процессора, игнорируя графический. Опишем далее, как настроить кулер на ноутбуке с утилитой SpeedFan:

  1. Если вращение вентилятора ноутбука изменяется в BIOS, эту опцию необходимо отключить. В противном случае в первый момент работы программа может получить заниженные результаты определения максимальной скорости вращения кулера, в результате чего утилита не сможет обеспечить управление скоростью вентилятора ноутбука на полных оборотах.
  2. Установите и запустите приложение. Во вкладке «Readings» или «Показатели» можно увидеть температуры компонентов и скорость выбранного вентилятора.
  3. Как изменить скорость кулера на ноутбуке, можно определить опытным путем, изменяя параметры переключателей для каждого из элементов системы охлаждения. Можно настроить параметры вращения вентилятора для охлаждения не только ЦП, но и жесткого диска, графического процессора.

Во вкладке «Скорости» есть возможность также изменить параметры, в пределах которых будет изменяться вращение. Здесь есть всего два переключателя, которыми для каждого кулера задается нижний и верхний пределы диапазона вращения лопастей.

Другие приложения для изменения скорости вращения лопастей лэптопа

Способ, описывающий, как настроить вентилятор на ноутбуке с помощью SpeedFan, может по разным причинам не подойти для некоторых пользователей в силу разных причин. В этом случае можно воспользоваться другими утилитами:

  1. AMD OverDrive, основное предназначение которой – разгон систем, где управление производится процессорами AMD. Здесь одной из опций является контроль кулера на ноутбуке.
  2. Riva Tuner для работы с чипами Intel, принцип работы которой также интуитивно понятен.

Главное, о чем не стоит забывать, осуществляя самостоятельное управление вентилятором ноутбука – контроль температуры. Для этого можно использовать дополнительные утилиты, например, CPU-Z и им подобные. Помните, что понизив обороты, вы рискуете перегревом процессора. Напротив, повышение скорости увеличивает шумность системы охлаждения и энергопотребление, в результате чего время работы устройства без подзарядки несколько уменьшится.

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

Нет, конечно, я слышал про всякие программы, которые могут вмешиваться в управление охлаждением и вроде кто-то ими успешно пользуется, но лично мне с ними вечно не везло, точнее не везло с железом, на котором я пытался их завести. Например, какое-то время назад я пробовал настроить fancontrol на довольно старом ноутбуке HP nc8430 с Убунтой. В итоге, известный скрипт sensors-detect не смог найти ни одного вентилятора в системе, а без этого fancontrol не работает. На разных форумах периодически появляются люди с похожими проблемами, но никто им толком помочь не может.

Тогда я в очередной раз забросил эту тему и вернулся к ней только на днях, когда читал обзоры, подыскивая себе новый ноутбук, и уже вроде бы выбрал почти всем хороший Sony S15, как опять в одном из обзоров читаю про него, что вентилятор в нем вообще не останавливается никогда, даже когда точно можно. Постоянно шумящий ноутбук я больше не хочу, а выбирать как всегда особо не из чего, учитывая, что надо 15", что TN матрицу я тоже больше не хочу, и бюджет ограничен. Ну сами знаете, как оно бывает. Может быть на нем все-таки заведется fancontrol и все будет хорошо, но а если нет? Никаких отчетов по его установке на этот ноутбук найти не удалось. Это побудило меня еще раз копнуть тему программного управления вентиляторами и пройти довольно непростой, но очень увлекательный квест.

Как оно в Windows

Я решил, что если мне удастся разобраться с охлаждением моего HP, то и с новым Sony скорее всего справлюсь. Если нет, придется искать другой ноутбук. Погуглив немного, удалось узнать, что под Windows есть замечательная программа Notebook Hardware Control, она бесплатная, её все хвалят. Что же, надо попробовать. Перезагрузился в Windows, скачал, запустил – программа действительно работает. Можно задать температуры, при которых вентилятор будет выключен совсем, работать на низких оборотах, средних и высоких, а самое главное можно задать мощности моторчика вентилятора в процентах для всех трех режимов. Именно мощности, а не обороты в секунду, но какая разница.

Оказалось, что в этом ноутбуке по умолчанию самым низким оборотам соответствует 55% мощности. Т. е. либо вентилятор молчит совсем, либо довольно громко гудит на своих 55%, а при повышении температуры еще громче: 70%, 80% и 100%. При этом молчит он только до 50 градусов, а потом сразу начинает работать. Процессор стоит довольно горячий – Core 2 Duo T7600, меньше 50 градусов он бывает только сразу после включения, потом температура быстро становится выше, даже при нулевой нагрузке, и уже ни в какую не хочет опускаться ниже 50 C, только если раскрутить вентилятор на полную и оставить так на несколько минут, и то когда в комнате не очень жарко. На дефолтных 55% у вентилятора просто нет никаких шансов охладить процессор обратно ниже 50 С. Хотя может быть надо просто попробовать термопасту поменять, но сейчас речь не об этом.

Читайте также:  Appnhost что это за программа

С помощью программы я просто установил минимальную мощность равной 30% и поднял минимальную температуру, при которой включается вентилятор до 60 С. Температура корпуса при этом на ощупь почти не изменилась, как было довольно горячо, так и осталось, а вот тише стало намного. Днем вентилятор на 30% мощности можно услышать только если поднести к нему ухо. Ночью в тихой комнате его вполне слышно, но терпимо. Это гораздо лучше, чем было. Если еще чуть-чуть поднять минимальную температуру и перевести процессор и видеокарту в режим энергосбережения, можно получить абсолютно тихий ноутбук, только жесткий диск слышно как вращается, но это решается только заменой его на SSD, что вобщем-то в любом случае хорошо бы сделать. Короче, оказывается возможность полностью контролировать температуру и шум есть. Тут бы и сказочки конец, но это же под Windows, а мне надо под Linux!

Как оно под Linux

Под Linux такой программы нет. И как она работает, я честно говоря до сих пор до конца не понимаю, а на тот момент я там только подсмотрел ключевые слова, которые потом очень пригодились: ACPI и DSDT. К ним я еще вернусь позже. А пока, я перезагрузился обратно в Ubuntu и начал внимательно изучать предварительно нагугленный путь в sysfs: /sys/class/thermal. Там оказалось вот что:

Целых 10 cooling_devices и 6 thermal_zones. С термальными зонами более менее все ясно, температуры CPU, GPU, какие-то еще три точки, не особо важно. А последняя thermal_zone5 – это вовсе не температура, как выяснилось опытным путем, а текущая мощность вентилятора. Браво HP! Теперь понятно почему sensors-detect ничего не нашел, тут такой бардак, что черт ногу сломит. Вот так вот просто записав какое-нибудь число в thermal_zone5/temp поменять мощность нельзя. Файл только для чтения, оно и понятно.

Теперь посмотрим на cooling_device*, зачем их 10? Внутри каждой папки примерно вот такое содержание:

В файлах type для cooling_device c 0 по 6 написано Fan, в 7-8 — Processor, а в 9 — LCD. Хм, я точно знаю, что у меня в ноутбуке только один вентилятор. Процессоров, можно сказать, действительно два и есть один LCD экран, это правда. Но это же не cooling devices, зачем они тут? Ладно, будем пробовать разбираться дальше в этом бардаке. В файлах cur_state бывает либо 0, либо 1. Ага, похоже на какую-то такую развесистую битовую маску. Если попробовать во все cur_state записать нули с помощью «echo 0 | sudo tee /sys/thermal/cooling_device*/cur_state», то вентилятор остановится. А если записать единицу в cooling_device3/cur_state, то вентилятор закрутится на 55%. Ура, у меня получилось управлять вентилятором вручную в Убунте. Тут бы можно было бы сколхозить какой-нибудь демон на Питоне, который бы ставил нужные мощности при определенных температурах, но во-первых, так можно установить только «стандартные» мощности из набора 0, 55, 70, 80, 100, а мне теперь надо 30. А во-вторых, что-то же еще в системе меняет эти биты. Надо бы попробовать разобраться, что именно этим занимается и как на это можно влиять. Иначе говоря, «we have to go deeper». Тут я вспомнил про первое ключевое слово подсказанное той программой под Windows: ACPI.

Вроде есть такой демон в Убунте acpid. Может это он управляет всем этим? Но нет, судя по описанию он только следит за нажатием на кнопку выключения, опусканием крышки и всем таким прочим. И действительно, даже если его остановить, вентилятор продолжит работать как ни в чём не бывало, точно также меняя мощность в зависимости от температуры. Но я же видел в той программе, что в ACPI есть много чего, в том числе некая таблица DSDT (Differentiated System Description Table), которая на самом деле не совсем таблица, а скорее код на языке, который называется AML (ACPI Machine Language). Точнее, код пишется на ASL (ACPI Source Language), а потом компилируется в AML, т. е. AML — это байт-код, его, в свою очередь, легко декомпилировать обратно в ASL. Надеюсь я вас не запутал, уважаемые читатели. Кроме DSDT есть и другие таблицы — SSDT и т.д., в них тоже AML-код и данные, но самое интересное обычно содержится в DSDT. В коде этих таблиц находится описание всех устройств компьютера и алгоритмы управления их питанием, в том числе, конечно же, и вентилятора.

Раз есть байт-код, значит где-то должен быть интерпретатор, который будет его исполнять. И действительно, ядро каждой ОС, которая поддерживает ACPI, должно содержать виртуальную машину для выполнения AML-кода DSDT и других таблиц. Есть она и в Linux. Вот и нашлось то, что меняет эти битики в файлах cur_state, это само ядро.

Код таблиц можно взять в sysfs, в директории /sys/firmware/acpi/tables/. Но сначала надо установить интеловский компилятор для ASL/AML, в Debian-based системах это делается так: «sudo apt-get install iasl». Потом просто сделав «sudo cat /sys/firmware/acpi/tables/DSDT > /tmp/dsdt.dat» и «iasl -d /tmp/dsdt.dat», мы получим исходный код DSDT в файле /tmp/dsdt.dsl. ASL хоть и трудно читаемый, но довольно простой сам по себе язык, видимо, специально спроектированный так, чтобы было легче писать его интерпретаор, т. к. для каждой ОС он должен быть свой. Я довольно быстро разобрался как мне поменять мощности вентилятора, просто поискал те самые мощности (55, 70, 80, 100) переведя в шестнадцатеричную ситему и они сразу нашлись. Сборка делается командой «iasl -tc /tmp/dsdt.dsl».

Читайте также:  Кому отдать улики рукера deus ex

При этом могут вылезти ошибки и предупреждения, причем в тех строках, которые вы и не трогали. Все говорят, что происходит это потому что почти все производители биосов пользуются компилятором от Microsoft, а он просто игнорирует многие ошибки, интеловский гораздо строже. Но у меня есть версия, что программисты просто отказываются нормально писать на этом дурацком языке. Помимо прочего, я в своем DSDT нашел довольно досадную опечатку в названии метода, который возвращает текущий уровень подсветки экрана из-за этого ядро при загрузке всегда ругалось «[Firmware Bug]: ACPI: No _BQC method, cannot determine initial brightness», и при выходе из сна настройки подсветки всегда сбивались. Так что даже если с охлаждением у вас все в порядке, повод посмотреть на свой DSDT все равно есть. В сети полно рецептов, как исправлять те или иные ошибки в DSDT, здесь я не буду на этом подробно останавливаться.

Получается, что если мы можем декомпилировать, редактировать и компилировать обратно в байт-код DSDT и другие таблицы, то мы можем делать всё что угодно с питанием любых устройств. Теперь надо только как-то подсунуть ядру патченный DSDT. Делать это опасно, можно что-нибудь сжечь по неосторожности, поэтому 100 раз подумайте нужно ли оно вам, прежде чем делать что-либо из описанного ниже.

Как заставить ядро выполнять пропатченный DSDT

Весь AML-код хранится в BIOS и ядро, по умолчанию, берет его оттуда. Первое, что приходит в голову, сделать свой образ BIOS с патченной DSDT и прошить его. Риск получить кирпич очень велик, зато при удачном исходе все изменения будут доступны сразу во всех ОС, которые вы используете. Но, конечно, есть способы получше и побезопаснее.

Перед тем, как писать эту статью поискал, что есть на Хабре на эту тему и очень позавидовал тому, как просто это делается во FreeBSD.
Для Linux во всяких HowTo чаще всего советуют пересобрать ядро из исходников интегрировав туда свой DSDT. Таких инструкций много, там ничего сложного, на Хабре тоже про это есть, так что не буду про это ещё раз.

Раньше, до версии ядра 2.6, был удобный способ загрузки через initrd, но потом пришел Линус и сказал, что так делать плохо, а надо либо хорошо, либо никак, и способ убрали. Линусу придется поверить, раз он говорит, что так надо, значит надо.
Говорят, что ещё можно через GRUB2 ядру передать нужный DSDT. Ядро мне пересобирать очень не хотелось и я решил попробовать. Сначала я прописывал в конфиг груба только DSDT, у автора той статьи так работало, но ядро вообще его не грузило, в логе было примерно следующее:

Соответственно, ACPI вообще не работал. Страшное дело, между прочим. Wi-fi у меня при этом не работал, кнопка выключения выключала все сразу, а не запускала нормальный shutdown. Короче, пользоваться совсем нельзя. Потом я еще попробовал вообще все таблицы передать в параметрах, получилось так:

На этот раз была попытка загрузить DSDT, но там видимо есть какая-то ссылка на таблицу FACS, которую в данном окружении не получается разрешить. Немного помучившись с этим, раз 20 перезагрузив систему, мне так и не удалось заставить все работать этим способом. Плюнув на всё, поставил пересобираться ядро и лег спать, с утра все заработало как надо:

Можно было бы открывать шампанское и праздновать успех, но в голове свербила мысль, что можно же сделать как-то лучше. Ведь та программа под Windows позволяла все менять вообще на ходу. Оказывается и в Linux так тоже можно сделать, вот документация. Об этом способе на форумах почти не пишут, а способ на самом деле замечательный. Обычно-то и надо переопределить один-два метода, а если при этом ещё и перезагружаться не надо, то это же вообще красота.

Я подготовил .aml файл с переписанным методом управления вентилятором и, радостно предвкушая как сейчас все замечательно заработает набираю «sudo cat ./fan-speeds.aml > /sys/kernel/debug/acpi/custom_method» и… получаю «zsh: permission denied: /sys/kernel/debug/acpi/custom_method». Как так permission denied? Я не забыл сделать sudo, директория /sys/kernel/debug/acpi/ судя по permissions открыта на запись для рута, нет никаких там immutable атрибутов и прочего. WTF? Оказалось, что эту фичу объявили дырой, т. к. якобы бывают такие окружения, где рут может не всё. Например, не может грузить модули ядра после того, как система полностью загрузится. Зачем и кому такое нужно, я честно говоря даже предполагать боюсь, но факт. Вроде бы в любой Убунте рут точно может делать все, что угодно, поэтому не очень понятно почему их Security Team тоже считает, что это очень серьезная уязвимость. К счастью, совсем это не выпилили из ядра, а просто выключили в конфиге по умолчанию и сделали возможность грузить отдельно, как модуль. Ну что же, собрать один модуль, это не тоже самое, что все ядро, а подключение модулей нам в Убунте, слава богу, пока не запретили.

Исходники ядра у меня уже были, поэтому по инструкции я собрал, поставил и включил модуль custom_method. Теперь все работало просто прекрасно.

Осталось как следует, а не по диагонали почитать спецификацию ACPI на досуге и подумать, что еще можно улучшить в ноутбуке. Программных проблем в системах охлаждения ноутбуков я теперь точно не боюсь. Надеюсь, что и вы теперь тоже, если вдруг боялись раньше.

Ссылка на основную публикацию
Hp com go techcenter pcdiags что делать
You may not be able to visit this page because of: an out-of-date bookmark/favourite a search engine that has an...
Bright starts хохотунчики как поменять батарейку
Данный товар недоступен для доставки в Ваш регион Мы всегда стремимся к лучшему, чтобы радовать своих покупателей самыми выгодными ценами....
Cdfs как открыть на windows 7
0 расширения(ы) и 1 псевдоним(ы) в нашей базе данных Ниже вы можете найти ответы на следующие вопросы: Что такое .cdfs...
Ibridge 3 не видит компьютер
Leef iBridge 32GB (LIB000KK032R6) При подключении Leef iBRIDGE iPAD не видит это устройство. ЧТО ДЕЛАТЬ? Ответы 1 Пробуйте разные компьютеры,...
Adblock detector