Вопрос или проблема
У меня есть HP Spectre x360, который является трансформером и может превращаться в планшет. Я использую версию 18.04 с MATE. У него есть датчики вращения, которые отключают клавиатуру и тачпад, когда он переворачивается в режим планшета или даже когда его просто кладут на бок. Я хотел бы это отключить или иметь скрипт, чтобы переключать это. Я часто люблю использовать свой ноутбук, лежа на боку, и постоянное отключение клавиатуры и тачпада раздражает. Есть ли способ это сделать? Я попробовал удалить iio-sensor-proxy, но это не помогло.
Вы пробовали отключить iio-sensor-proxy вместо его удаления?
Я думаю, это решило бы проблему, и вы можете вернуть его обратно, когда захотите.
sudo systemctl stop iio-sensor-proxy.service
sudo systemctl disable iio-sensor-proxy.service
Не знаю, нужен ли этот ответ кому-нибудь еще, но на всякий случай, если кто-то зайдет сюда и попытается найти ответ, я спросил у своего папы, и он разобрался.
Вам нужно активировать «Безопасный режим» (я не спрашивал, как это сделать, извините 😅)
Когда активируете безопасный режим, вам нужно найти датчик UMDF (снова извините, я не знаю, как его найти, вероятно, в настройках UEFI или чем-то таком, что появляется в безопасном режиме, возможно, придется поискать)
Когда вы отключите этот драйвер, вы можете перезагрузить ноутбук, и в режиме планшета он работает идеально, И клавиатура остается включенной, когда вы находитесь боком, возможно, придется поэкспериментировать с настройками панели задач, потому что настройки оптимизации для режима планшета могут их испортить!
Ответ или решение
Владельцам конвертируемых ноутбуков, таких как HP Spectre x360, часто приходится сталкиваться с неудобствами, связанными с функцией автоматического поворота, которая отключает клавиатуру и тачпад при использовании устройства в режиме планшета или при его размещении под наклоном. Особенно это может быть актуально для пользователей системы Ubuntu 18.04 с рабочей средой MATE. В текущем ответе я подробно рассмотрю возможные способы управления этой функцией, чтобы она не мешала пользованию устройством в нестандартных положениях.
Теория
Ноутбуки трансформеры, как правило, оснащены различными сенсорами, такими как акселерометры и гироскопы, которые позволяют определить, в каком положении находится устройство. Так, iio-sensor-proxy — это демон в системах на основе Linux, который взаимодействует с этими сенсорами и отправляет соответствующие сигналы системе для блокировки клавиатуры и тачпада, когда ноутбук находится в определенных позициях (например, в режиме планшета).
Для остановки этих сенсоров возможно использование управляющих команд системы или внесение изменений в настройки BIOS/UEFI. Однако прежде чем приступить к переключению функций, важно понимать последствия отключения этих сенсоров. Хотя отключение сенсоров повернет контроль в руки пользователя, это также может лишить устройства некоторых иных функций, например, автоматического поворота дисплея.
Пример
Рассмотрим несколько подходов к отключению функции автоматического поворота, которые соответствуют вашему запросу.
-
Использование системных команд для управления iio-sensor-proxy:
- Простой способ отключить сенсоры состоит в приостановке работы сервиса
iio-sensor-proxy
. Чтобы отключить его, выполните следующие команды в терминале:sudo systemctl stop iio-sensor-proxy.service sudo systemctl disable iio-sensor-proxy.service
Этим вы остановите текущую работу сенсоров и предотвратите их автоматическое запускание при старте системы. При необходимости, вы можете вернуть всё в исходное состояние, заменив
stop
иdisable
наstart
иenable
соответственно.
- Простой способ отключить сенсоры состоит в приостановке работы сервиса
-
Поиск и отключение драйвера UMDF-сенсора:
- В случае, если первый метод неудовлетворителен, возможно отключение драйвера UMDF-сенсора через BIOS/UEFI или в безопасном режиме (Safe Mode). Это может потребовать углубленного исследования документации вашего устройства или запросов на форуме поддержки HP, так как доступ к настройкам BIOS отличается в зависимости от модели ноутбука.
-
Использование пользовательских скриптов:
- При желании создать более гибкое решение, вы можете написать скрипт, который будет переключать режимы работы сенсора. Такой скрипт может использовать системные команды Bash для простого переключения между режимами активированного и деактивированного состояния сервиса.
Применение
Перед выполнением вышеописанных действий, создайте резервную копию всех критически важных данных. Любые изменения в системных файлах или BIOS несут потенциальный риск изменения поведения системы.
Если необходимо удобное решение с возможностью быстрого включения и выключения функции, создание Bash-скрипта с возможностью выбора между режимами может предоставить большую гибкость. Для этого проектируйте интерфейс скрипта, который будет считывать ввод пользователя и переключать режимы методом применения описанных ранее команд.
Пример скрипта может выглядеть следующим образом:
#!/bin/bash
echo "Выберите действие: "
echo "1. Отключить сенсоры"
echo "2. Включить сенсоры"
read -p "Введите номер действия: " action
case $action in
1)
sudo systemctl stop iio-sensor-proxy.service
sudo systemctl disable iio-sensor-proxy.service
echo "Сенсоры отключены."
;;
2)
sudo systemctl enable iio-sensor-proxy.service
sudo systemctl start iio-sensor-proxy.service
echo "Сенсоры включены."
;;
*)
echo "Неверный выбор."
;;
esac
Эти практические советы позволят вам эффективно управлять устройством в конфигурации, которая наиболее подходит для ваших нужд. В случае трудностей, не стесняйтесь обращаться к специализированным сообществам или к поддержке Hewlett-Packard для получения дополнительной помощи.