HP EliteBook
Включение звука на HP EliteBook 840 G3 (Conexant CX20724)
Проблема: после установки ALT Linux с GNOME звук не работает на встроенных динамиках, хотя система видит звуковую карту.
Причина: драйвер ядра пытается использовать современный аудиостек SOF (Sound Open Firmware), который не
поддерживает устаревший кодек Conexant CX20724. Кроме того, драйвер по умолчанию отключает динамики,
считая, что подключены наушники.
Отключение SOF и настройка ядра
1. Откройте файл конфигурации GRUB:
su - nano /etc/default/grub
2. Найдите строку GRUB_CMDLINE_LINUX и добавьте в неё параметры:
snd_intel_dspcfg.dsp_driver=3 snd_hda_intel.dmic_detect=0 snd_hda_intel.power_save=0
Пример итоговой строки:
GRUB_CMDLINE_LINUX='failsafe vga=normal snd_intel_dspcfg.dsp_driver=3 snd_hda_intel.dmic_detect=0 snd_hda_intel.power_save=0'
3. Сохраните файл и обновите GRUB:
su - grub-mkconfig -o /boot/grub/grub.cfg
💡 Что делают параметры:
- snd_intel_dspcfg.dsp_driver=3 — отключает SOF, использует классический драйвер snd_hda_intel
- snd_hda_intel.dmic_detect=0 — отключает поиск несуществующего цифрового микрофона
- snd_hda_intel.power_save=0 — предотвращает отключение звука из-за энергосбережения
Создание скрипта для включения динамиков
1. Создайте каталог и скрипт:
mkdir -p ~/.local/bin nano ~/.local/bin/fix-hp-audio.sh
2. Вставьте следующее содержимое:
#!/bin/bash
amixer -c0 set 'Auto-Mute Mode' 'Disabled' 2>/dev/null || true
amixer -c0 set 'Speaker+LO' unmute 2>/dev/null || true
amixer -c0 set 'Speaker+LO' 85% 2>/dev/null || true
3. Сделайте скрипт исполняемым:
chmod +x ~/.local/bin/fix-hp-audio.sh
Мы её отключаем. Speaker+LO — это именно встроенные динамики на вашем ноутбуке. По умолчанию они выключены ([off]) и на 0% громкости.
Настройка автоматического запуска при входе
1. Создайте пользовательский systemd-сервис:
mkdir -p ~/.config/systemd/user nano ~/.config/systemd/user/hp-audio-fix.service
2. Вставьте:
[Unit]
Description=Fix HP EliteBook 840 G3 Audio
After=pipewire.service wireplumber.service
Wants=pipewire.service
[Service]
Type=oneshot
ExecStart=/bin/bash -c 'sleep 20 && %h/.local/bin/fix-hp-audio.sh'
RemainAfterExit=yes
[Install]
WantedBy=default.target
3. Включите сервис:
systemctl --user daemon-reload systemctl --user enable hp-audio-fix.service
Перезагрузка и проверка
su - reboot
После входа в GNOME подождите 20–30 секунд, затем проверьте звук:
speaker-test -t wav -c 2 -l 1 -f 440
Вы должны услышать попеременный звук в левом и правом динамике.
Также проверьте в Параметры ⇾ Звук — должен работать тест и регулировка громкости.
Теперь звук автоматически включается при каждой перезагрузке. Вы можете регулировать громкость как обычно — через значок звука в GNOME.
Встроенный микрофон не работает при записи видео на HP EliteBook 840 G3/G4/G5 с Conexant CX20724
Проблема: микрофон определяется системой, но не работает в приложениях (браузер, OBS, Zoom и др.), особенно при включённой камере.
Решение: микрофон работает — просто система по умолчанию выбирает не тот вход.
Исправляется простым скриптом.
Как была найдена причина
1. Сначала проверили:
arecord -D hw:0,0 -f cd -d 3 test.wav
→ Запись работает → микрофон исправен на уровне драйвера.
2. Но в приложениях — тишина. Установили pavucontrol и увидели: По умолчанию выбран «Микрофон (подключено)» — микрофон не работает. При ручном выборе «Встроенный микрофон (отключено)» — всё заработало!
3. Выяснили: Аудиокодек Conexant CX20724 (используется в HP EliteBook 840 G3/G4/G5) ложно считает, что в аудиоразъём что-то вставлено, и переключается на несуществующий внешний микрофон. Встроенный микрофон остаётся активным, но не используется по умолчанию.
4. После перезагрузки выбор сбрасывается, и приходится снова выбирать вручную.
Итоговое решение: автоматический выбор правильного микрофона
Ниже — пошаговая инструкция для неподготовленного пользователя. Всё делается через терминал, но команды простые и безопасные.
Установка утилит для управления звуком
Откройте терминал и выполните:
su - apt-get update su - apt-get install pulseaudio-utils
Это установит команду pactl, которая позволяет управлять микрофоном в PipeWire (звуковой системе ALT Linux).
Создание каталога для скрипта
mkdir -p ~/.config/autostart
Создание скрипта, который будет включать правильный микрофон
Выполните:
nano ~/.config/autostart/fix-mic.sh
В открывшемся окне вставьте следующий текст (скопируйте целиком):
#!/bin/bash
sleep 3
SOURCE="alsa_input.pci-0000_00_1f.3.analog-stereo"
PORT="analog-input-internal-mic"
if pactl list sources short 2>/dev/null | grep -q "$SOURCE"; then
pactl set-source-port "$SOURCE" "$PORT"
pactl set-source-mute "$SOURCE" 0
pactl set-source-volume "$SOURCE" 100%
fi
Сохраните файл: Нажмите Ctrl+O, затем Enter, Нажмите Ctrl+X, чтобы выйти.
Теперь сделайте файл исполняемым:
chmod +x ~/.config/autostart/fix-mic.sh
Создание файла автозапуска
Выполните:
nano ~/.config/autostart/fix-mic.desktop
Вставьте (замените ваш_логин на ваше имя пользователя):
[Desktop Entry]
Type=Application
Name=Fix HP Microphone
Exec=/home/ваш_логин/.config/autostart/fix-mic.sh
Hidden=false
NoDisplay=true
X-GNOME-Autostart-enabled=true
Сохраните (Ctrl+O, Enter → Ctrl+X).
Перезагрузка компьютера
su - reboot
Проверка после перезагрузки
1. Войдите в систему.
2. Откройте терминал и запустите:
pavucontrol
если не установлен —
su - apt-get install pavucontrol
3. Перейдите во вкладку «Input Devices».
4. Убедитесь, что выбран «Встроенный микрофон».
5. Поговорите — полоска уровня должна прыгать.
6. Запустите запись видео (в браузере, OBS и т.д.) — звук должен быть.
Почему это работает? Скрипт запускается автоматически при входе в систему. Он принудительно выбирает встроенный микрофон (analog-input-internal-mic), игнорируя ложное обнаружение внешнего разъёма.
Устанавливает громкость и снимает «mute» — на всякий случай.
Подходит для HP EliteBook 840 G3, G4, G5 с аудиокодеком Conexant CX20724. Работает в ALT Linux с PipeWire (стандартная конфигурация начиная с p11).
Готово!
Теперь ваш микрофон работает всегда — и при обычной записи, и при видеоконференциях, и после каждой перезагрузки.
Больше не нужно лезть в настройки — всё настроено один раз и навсегда.