После долгого поиска я нашел решение, которое хорошо работает для меня и может помочь вам:
Код в основном взят отсюда.
Получить код
Существует сценарий Python, который может активировать разъем для наушников. Этот код взят из ektor5 на GitHub. Вам нужно скачать скрипт, поместить его где-нибудь, где ваша система найдет его, и сделать его исполняемым. Вы можете сделать все это с помощью этой строки:
sudo wget https://raw.githubusercontent.com/ektor5/init-headphone/master/init-headphone -O /usr/local/sbin/init-headphone && sudo chmod +x /usr/local/sbin/init-headphone
Установить зависимости
init-headphone
нужны зависимости, которые можно установить с помощью:
sudo apt-get install python-smbus
Добавить флаг grub
Кроме того, ваше ядро должно быть запущено с включенным дополнительным флагом. Вы можете сделать это, отредактировав файл ''/etc/default/grub ''. Измени эту строку
GRUB_CMDLINE_LINUX=""
к этому
GRUB_CMDLINE_LINUX="acpi_enforce_resources=lax"
После этого запуска
sudo update-grub
Загрузка модулей при запуске
Кроме того, скрипт должен загружать модули. А именно «i2c_dev» и «i2c_i801». Они могут быть загружены во время выполнения с
modprobe i2c_dev
modprobe i2c_i801
Теперь вы можете проверить, работает ли он, запустив «inito-наушники».
Чтобы автоматически загрузить модули при запуске, добавьте следующие строки в «/etc/modules»:
i2c_dev
i2c_i801
Создать скрипт запуска
И наконец, мы хотим, чтобы скрипт запускался автоматически, когда наш компьютер перезагружается или возвращается из приостановленного состояния. Для этого поместите следующий скрипт в ´ /etc /pm /sleep.d /´.
sudo gedit /etc/pm/sleep.d/init-headphone
Добавьте следующие строки
#!/bin/sh
if [ ! -x /usr/local/sbin/init-headphone ]; then
exit 0
fi
case $1 in
resume|thaw)
/usr/local/sbin/init-headphone
;;
esac
И не забудьте сделать файл исполняемым
sudo chmod +x /etc/pm/sleep.d/init-headphone
Я надеюсь, что это поможет, дайте мне знать, если у вас есть какие-либо проблемы.
cbandera