Raspberry pi 4 включить hdmi

Обновлено: 07.07.2024

Это важный пост от rpi_newbie (нашего эксперта по Broadcom HDMI) о том, как настроить на RAspberru Pi вывод HDMI. Дублирую его здесь. Возможно, этот пост стоит выложить куда-то еще, но пока оставлю в этом разделе в прикрепленных постах.

Внимание! Этот пост необходимо читать лишь в том случае, если картинка у вас есть, но не в том формате/разрешении!

Если экран остается черным независимо от того, какие изменения вы вносите в config.txt, то, возможно, дело в том, что Pi просто не загружается. Если сомневаетесь, почитайте статью о проблемах с загрузкой.

Обычно опциональные настройки видео хранятся в самом мониторе, в виде EDID-данных. При запуске Raspberry Pi запрашивает у монитора информацию о нем самом. Эта информация возвращается от монитора в виде структуры данных, именуемой «блок EDID» (имейте в виду, что в данном случае перед загрузкой Pi телевизор/монитор, как правило, нужно включить) и используемой для того, чтобы Pi выбрала оптимальные настройки для подключенного к ней монитора.

Иногда, впрочем, этот процесс не работает либо вам требуются какие-то другие настройки. Вот тут-то нам и пригодится config.txt. Он выполняет примерно ту же функцию, что и BIOS на обычном ПК – содержит в себе кучу самых разнообразных настроек. Но мы сосредоточимся только на тех, что относятся к видео.

Обратите внимание, что config.txt используется только в операционных системах на базе Linux (вроде Raspbian). Впрочем, в установщике NOOBS он не используется, т.к. в NOOBS для настройки видео имеется другой механизм (хотя NOOBS может создать config.txt для устанавливаемой ОС и, более того, может делать это автоматически, если его попросят сделать определенную настройку постоянной). Более подробно о config.txt можно прочесть на сайте компании-производителя.

Есть две логические группы конфигурационных настроек – CEA (Consumer Electronics Association) и DMT (Display Monitor Timings), и ниже как раз перечислен список форматов для двух этих групп (точнее, для версий CEA-861 E и DMT V1 r12, соответственно). То есть, config.txt позволяет использовать эти режимы напрямую – просто откройте файл и присвойте параметрам «hdmi_group» и «hdmi_mode» необходимые значения из числа тех, что перечислены ниже. Имейте в виду, что Raspberry Pi поддерживает не все из этих режимов (это особенно касается режимов с высокими разрешением и частотой кадров), а все доступные режимы находятся под «опекой» EDID-механизма, которым оснащен ваш телевизор/монитор.

Если файла config.txt нет или если выходной формат не установлен, то система выберет выходной формат самостоятельно, следуя указанному ниже алгоритму:

  1. Формат будет выбран, если поддерживается EDID.
  2. Если формат не поддерживается EDID, система сформирует определенную иерархию поддерживаемых форматов, а затем выберет формат, обладающий в этой иерархии наибольшим количеством баллов.

Если выбранный формат является DMT-форматом, режимом по умолчанию будет DVI. То есть, если вам нужен HDMI, то в «hdmi_drive» надо указать «2». И внимание – в режиме DVI нет звука!

Если вы при помощи config.txt хотите выбрать другой формат по умолчанию, надо проделать следующее:

  1. В «hdmi_group» указать значение «1» (для CEA-форматов) или «2» (для DMT-форматов)
  2. В «hdmi_mode» указать код, соответствующий тому или иному формату из списков для CEA и DMT (см. выше)
  3. Если вы выбрали DMT-формат, то для переключения на HDMI в параметре «hdmi_drive» нужно указать «2» (при выборе CEA-формата переключение на HDMI осуществится автоматически)

Чтобы получить список поддерживаемых форматов, сделайте выходным форматом VGA 60 Гц, а затем следуйте нижеприведенным инструкциям – с их помощью будет проведен анализ EDID, в результате которого по пути /opt/vc/bin появится итоговый файл со списком поддерживаемых форматов.

  1. Для списка поддерживаемых CEA-форматов запускаем «tvservice –m CEA»
  2. Для списка поддерживаемых DMT-форматов запускаем «tvservice –m DMT»
  3. Для определения текущего формата запускаем «tvservice –s»

Или можно проделать следующее:

  1. Чтобы получить EDID монитора, запускаем «tvservice –d <file>»
  2. «Скармливаем» этот файл EDID-анализатору. Запускаем «edidparser <file>»

После этого EDID-анализатор (или «EDID-парсер») выдаст список EDID-поддерживаемых форматов (включая те, что не поддерживаются Raspberry Pi) плюс те форматы, которые он отфильтровал. В конце списка будет показан формат, выбираемый по умолчанию. Имейте в виду, что EDID-анализатор – это внутренний код Raspberry Pi, работающий через командную строку.

Если Pi сделала дефолтным какой-то странный формат, в комментариях можете смело показывать EDID своих мониторов (и результат, который выдал EDID-анализатор). Только, пожалуйста, укажите также производителя и номер модели телевизора/монитора.

У меня есть малина Pi, работающая Raspbmc , подключенная через HDMI к немому HDTV. (Не поддерживает HDMI-CEC).

Если я одновременно включаю телевизор (как у источника, так и через пульт дистанционного управления) и Raspbmc, все работает нормально.

Если я подключаюсь к Raspbmc и телевизору, но телевизор не включается. Спустя некоторое время я использую пульт телевизора для включения телевизора, после чего я получаю пустой экран на телевизоре через HDMI. Это не заставка, потому что использование пульта XBMC ничего не меняет. Raspbmc активен, потому что я могу ping и подключиться к нему с помощью SSH .

Есть ли параметр в Raspbmc, который я могу изменить, чтобы он всегда включал HDMI , независимо от того, включен или выключен телевизор?

2 ответа

Добавьте эти две строки в /boot/config.txt и перезагрузите Raspbmc:

hdmi_force_hotplug=1 устанавливает Raspbmc для использования режима HDMI, даже если монитор HDMI не обнаружен. hdmi_drive=2 устанавливает режим Raspbmc в обычный режим HDMI (звук будет отправлен, если поддерживается и включен). Без этой строки Raspbmc по умолчанию переключится на DVI (без звука).

Хотя этот вопрос очень старый, я хотел бы опубликовать свой ответ, который я нашел недавно. Я бегу Raspberry PI 2 Model B с 2,8 PiTFT capactive дисплеем. Как только я понял, как заставить мой дисплей в режиме реального времени работать с малиновым PI, я не мог заставить малиновый PI переключиться на выход HDMI независимо от того, что я сделал. Затем я наткнулся на эту информацию, которая работала для меня.

Есть два способа сделать это. В старых установках Pi используйте фреймбуфер fb0, когда вы хотите отображать информацию на экране HDMI /TV, например: FRAMEBUFFER = /dev /fb0 startx будет использовать фреймбуфер HDMI /TV для X-окон вместо PiTFT

На Jessie Pi устанавливается, запускается sudo nano /usr/share/X11/xorg.conf.d/99-fbdev.conf для редактирования файла конфигурации и убедитесь, что он содержит: Копировать код

измените опцию «fbdev» «/dev /fb0» на параметр «fbdev» «/dev /fb1», если вы хотите, чтобы xdisplay на PiTFT или fb1 был fb0 для выхода HDMI.

У меня Raspberry Pi с Raspbmc, подключенным через HDMI к тупому HDTV. (Не поддерживает HDMI-CEC).

Если я одновременно включаю телевизор (как на источнике, так и на дисплее через пульт) и Raspbmc, то все работает нормально.

Если я включаю Raspbmc и телевизор, но дисплей телевизора не включается. Некоторое время спустя я использую пульт ДУ телевизора для включения дисплея телевизора, затем на телевизоре через HDMI появляется пустой дисплей . Это не заставка, потому что использование пульта XBMC ничего не меняет. Raspbmc активен, потому что я могу пропинговать его и подключиться к нему с помощью SSH .

Есть ли в Raspbmc параметр, который я могу изменить, чтобы он всегда включал HDMI , независимо от того, включен или выключен дисплей телевизора?

Это обычное поведение; Raspberry Pi может выводить только ЛИБО аналоговый выход RCA или HDMI, но не оба одновременно. Наличие выхода RCA невозможно проверить электронным способом, поэтому по умолчанию проверяется HDMI, а затем прибегают к RCA, если устройство HDMI не найдено.

Добавьте эти две строки /boot/config.txt и перезагрузите Raspbmc:

hdmi_force_hotplug=1 устанавливает Raspbmc в режим HDMI, даже если монитор HDMI не обнаружен. hdmi_drive=2 устанавливает Raspbmc в обычный режим HDMI (звук будет отправляться, если поддерживается и включен). Без этой линии Raspbmc переключился бы в режим DVI (без звука) по умолчанию.

config.txt читается графическим процессором, поэтому он будет работать на каждом дистрибутиве. Деннис Уильямсон: Спасибо, это сработало. Но звук не работал. Я исправил это, добавив hdmi_drive = 2 Спасибо, это хорошо работает. Однако, когда я включаю монитор, он мигает - кажется, что он меняется между разрешением 1024 и 1920 примерно 5 раз в секунду. Это не сработало для меня. Я раскомментировал эти две строки, упомянутые в ответе, и перезагрузил мой пи. На мониторе абсолютно ничего нет. Я продолжаю переключаться на дисплей PiTFT, а не монитор через HDMI.

Хотя этот вопрос очень старый, я хотел бы опубликовать свой ответ, который я недавно нашел. Я использую Raspberry PI 2 Model B с емкостным дисплеем 2,8 PiTFT. Как только я понял, как заставить мой дисплей pitft работать с Raspberry PI, я не смог заставить Raspberry PI переключиться на выход HDMI, что бы я ни делал. Затем я наткнулся на эту информацию, которая работала на меня.

Есть два способа сделать это. В более старых установках Pi используйте кадровый буфер fb0, если вы хотите отобразить материал на дисплее HDMI / TV, например: FRAMEBUFFER = / dev / fb0 startx будет использовать кадровый буфер HDMI / TV для X-окон вместо PiTFT

На установках Jessie Pi запустите sudo nano /usr/share/X11/xorg.conf.d/99-fbdev.conf, чтобы отредактировать файл конфигурации и убедиться, что он содержит:

измените строку Option "fbdev" "/ dev / fb0" на Option "fbdev" "/ dev / fb1", если вы хотите, чтобы xdisplay на PiTFT или fb1 на fb0 для выхода HDMI.

Одноплатник Raspberry Pi дружит не только с компьютерными мониторами и телевизорами, но и с более экзотическими девайсами. Рассказываем, какие бывают способы вывести изображение с RPi на внешние устройства.

Способ №1: Порт HDMI

К Raspberry Pi можно подключить любой встраиваемый или портативный экран, оснащённый стандартным портом HDMI. Достаточно воткнуть кабель, и через секунду изображение появится на экране.

В большинстве случаев Linux сам выбирает оптимальный режим, но если понадобится изменить разрешение или частоту обновления экрана — заходите в файл /boot/config.txt , где хранятся детальные настройки вывода изображения. Например, чтобы установить разрешение 1024×600 с частотой 60 герц и отношением сторон 15:9, подойдёт такая конфигурация.

Первая пара настроек говорит о том, что мы хотим выбрать произвольный режим. А вот hdmi_cvt задаёт этот самый режим: ширину, высоту, частоту и отношение сторон (параметр 6 — это пропорция 15:9). На официальном сайте Raspberry Pi выложено подробное описание, какие параметры видео за что отвечают.

Некоторые HDMI-дисплеи оснащаются встроенным тачскрином, сигнал которого передаётся на RPi через отдельный USB-кабель и требует установки драйверов. Процесс несложный — смотрите инструкции с примерами на нашей Вики.

HDMI-дисплей для Raspberry Pi

Обладателям Raspberry Pi 4 повезло: она поддерживает разрешения вплоть до 4K (2160p) при 60 Гц в режиме одного монитора. А если подключить к ней второй монитор, то сигнал делится напополам, и малина потянет до 2160p/30 Гц на обоих экранах. Не забудьте обзавестись кабелями Micro-HDMI.

Способ №2: Порты GPIO

Существуют дисплеи для Raspberry Pi в виде шилдов, которые надеваются на плату и общаются с ней по интерфейсу SPI. Они дешевле и мобильнее своих HDMI-собратьев.

Одноплатник здорово сочетается с компактным сенсорным ЖК-дисплеем и мини-клавиатурой: покидали всё в рюкзак — и вот у вас под рукой полноценный портативный компьютер на Linux.

SPI-дисплей для Raspberry Pi

Однако, помимо преимуществ у SPI-дисплеев есть и ряд технических ограничений:

  • Дисплей требует обязательной установки драйвера.
  • Скорости обновления по SPI не хватает для видео.
  • Интерфейс SPI дополнительно нагружает CPU.

Используйте SPI-дисплей для пользовательских интерфейсов, которые по большей части статичны.

Способ №3: Удалённый доступ

А можно обойтись вовсе без дисплеев: достаточно один раз настроить удалённый рабочий стол, чтобы дистанционно подключаться к Raspberry Pi и транслировать изображение по сети. Этот способ пригодится, если плата смонтирована в труднодоступном месте и подключать лишние провода — совсем не вариант.

Как настроить удалённый доступ

  • VNC Server входит в ОС Raspbian из коробки. Чтобы разрешить доступ, зайдите в настройки Raspberry Pi:
  • Выберите пункт меню «Interfacing Options→VNC» и включите VNC Server кнопкой «Yes».
  • Запустите VNC-сервер:
  • Запишите IP-адрес и порт для внешнего доступа, которые отобразятся после запуска.
  • В случае с Windows у вас уже есть средство для подключения к удалённому рабочему столу. Для других систем рекомендуем установить RealVNC Viewer.
  • Запустите VNC-клиент и вбейте в адресной строке IP-адрес, который был выдан при запуске VNC-сервера.
  • Укажите логин и пароль для входа в систему Raspberry Pi. По умолчанию это ‘pi’ и ‘raspberry’.
  • В клиенте VNC появится рабочий стол. Готово!

Удалённый рабочий стол для Raspberry Pi

Способ №4: Композитный видеовыход

Можете тряхнуть стариной и вспомнить такой олдскульный интерфейс, как композитное видео. Конечно, по качеству изображения он не сможет тягаться с цифровым HDMI, но и у «тюльпана» есть подходящее применение.

Если вы превратите свою Raspberry Pi 4 в ретро-консоль, кинескопный телевизор станет завершающим штрихом, чтобы полностью перенестись в эпоху пиксель-арта. Берите комбинированный кабель 3,5 мм с композитным выходом, чтобы вывести чересстрочное аналоговое изображение 480i с малинки на ЭЛТ-телевизор. Мы так и поступили, когда делали крутой аркадный автомат, который радует вас у входа в московский офис Амперки.

В итоге

Теперь вы точно не пропадёте, если понадобится вывести изображение с малинки куда угодно! Осталось только выбрать, какой вариант удобнее для ваших проектов на RPi.

Простой способ использовать ваш ноутбук в качестве дисплея для Raspberry Pi, если у вас нет под рукой HD монитора.

Этот урок появился тогда, когда мы работали над нашей "малиной", но под рукой не было ни одного HD-дисплея. Так появилась идея, которая поможет другим в такой же ситуации, - когда они могли бы использовать свой ноутбук в качестве монитора для своей Raspberry Pi.

Как мы знаем, Raspberry Pi известен как «Карманный компьютер» (англ. - Pocket-Size PC), но для отладки и проектных целей слишком громоздко иметь дополнительный дисплей для "малины". Кроме того, многие не имеют доступа к дисплею HDMI, поэтому мы выяснили, как можно легко подключить Pi к дисплею ноутбука.


Как это работает?

Чтобы подключить Raspberry Pi к дисплею ноутбука, вы можете использовать сетевой кабель.

Графический интерфейс пользователя Raspberry Pi (GUI - Graphical User Interface) можно просматривать через дисплей ноутбука используя Ethernet-соединение на 100 Мбит/сек.

Есть много доступных программ, которые могут установить соединение между "малиной" и вашим ноутбуком. Мы использовали программное обеспечение сервера VNC для подключения Pi к нашему ноутбуку.

Установка VNC-сервера на ваш Pi позволяет удаленно видеть рабочий стол Raspberry Pi, используя мышь и клавиатуру, как будто вы сидите прямо перед своим Pi.

Это также означает, что вы можете перенести плату куда-нибудь еще дома и все еще сможете её контролировать. Кроме того, интернет можно расшарить от WiFi вашего ноутбука через Ethernet. Это также позволит получить доступ к Интернету на Pi.

Настройка Raspberry Pi

Прежде чем перейти к подключению своего малинового Pi к дисплею вашего ноутбука, вам потребуется SD-карта с предустановленной ОС или нужно будет установить Raspbian на пустую SD-карту.

Если вы не знакомы с командами Raspberry Pi, ознакомьтесь с руководством Basic Linux Commands, также в ближайших статьях мы постараемся создать небольшое руководство по подготовке SD-карты для "малины".

В целом, можно даже найти в продаже SD-карты с предустановленной операционной системой Raspbian и NOOB.


Дальше действуем по шагам:

  1. После настройки SD-карты вставьте её в Raspberry Pi.
  2. Затем подключите кабель микро-USB к "малине", чтобы включить её.
  3. Подключите свой Raspberry к ноутбуку через кабель Ethernet.
  4. Подключите к нему клавиатуру и мышь.
  5. Подключите HDMI-дисплей (HDMI требуется только для запуска Pi в первый раз).
  6. Включите питание Pi.

Теперь пойдем дальше для подключения Raspberry Pi к дисплею ноутбука.

Расшаривание Интернета через Ethernet

Этот шаг объяснит то, как вы можете поделиться своим интернетом ноутбука с Raspberry Pi с помощью Ethernet кабеля.

В Windows: для совместного использования Интернета с несколькими пользователями через Ethernet, перейдите в "Центр управления сетями и общим доступом". Затем нажмите на сеть WiFi:


Нажмите «Свойства» (см. ниже), затем перейдите в раздел «Совместное использование» и нажмите «Разрешить другим пользователям сети подключаться» (англ. - Allow other network users to connect).

Убедитесь, что сетевое подключение изменено на «Подключение по локальной сети» (англ. - Local Area Connection):


Примечание! Выполнение этих действий будет обеспечивать динамический IP-адрес порта Ethernet на вашем ноутбуке и других устройствах, подключенных к вашему ноутбуку.

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



Как показано выше, IP-адрес, назначенный ноутбуку: 192.168.137.1. Чтобы проверить IP-адрес, назначенный подключенному Ethernet-устройству, выполните действия ниже.

Учитывая, что IP-адрес, назначенный вашему ноутбуку, 192.168.137.1, а маска подсети 255.255.255.0:

  • Откройте командную строку
  • Пропингуйте адрес вашего IP-адреса. Например: ping 192.168.137.255
  • Остановите пинг через 5 секунд
  • Проверьте ответ с устройства: arp -a

Настройка VNC-сервера для подключения Raspberry Pi к ноутбуку

Если у вас есть дисплей HDMI

Используя подключенный дисплей HDMI к вашему Pi, вы должны установить VNC-сервер на свою плату. Откройте LX-Terminal и введите следующие команды для установки VNC:

$ sudo apt-get update
$ sudo apt-get install tightvncserver

Если у вас нет дисплея HDMI

Если у вас нет дисплея даже для разовой настройки, вам не нужно беспокоиться. Установите Putty в соответствии с вашей конфигурацией Windows и через SSH вы можете подключиться к вашему Raspberry Pi. Когда вы получаете доступ к своему терминалу Pi, запустите те же команды, что и выше, для установки VNC.

Запуск VNC-сервера на Pi

Чтобы запустить VNC, введите в терминал SSH следующую команду:

$ vncserver :1

Теперь VNC-сервер работает на вашем Pi и теперь мы можем попытаться подключиться к нему. Во-первых, мы должны переключиться на ноутбук, из которого мы хотим управлять Pi. Затем настром клиент VNC для подключения к Pi.

Настройка клиентской стороны (ноутбук)

Скачайте VNC-клиент VNC и установите его. Когда вы впервые запускаете средство просмотра VNC, вы увидите следующее:




Наконец, рабочий стол Raspberry Pi должен появиться как окно VNC. Вы сможете получить доступ к графическому интерфейсу и делать всё, как если бы вы использовали клавиатуру, мышь и монитор с Pi напрямую. Как и в случае с SSH, так как всё находится в вашей сети, ваш Pi может быть расположен где угодно, пока он подключен к сети.


Запуск VNC-сервера во время запуска Raspberry Pi GUI

Соединение вашей Pi удаленно с VNC отлично работает, пока вам не нужно перезагрузиться.

Если всё-таки необходимость появилась вам нужно либо подключиться к SSH, либо перезапустить сервер VNC, либо организовать запуск VNC-сервера после перезагрузки Raspberry Pi.

Чтобы гарантировать, что VNC запускается автоматически каждый раз при загрузке, выполните следующие команды в терминале - см. ниже.

Откройте папку «.config» на Pi: пользовательская папка (скрытая папка).

$ cd /home/pi
$ cd .config

Создайте в ней папку «autostart». Кроме того, создайте файл под названием «tightvnc.desktop» в этой папке. Вы можете использовать любой известный текстовый редактор для создания файлов. Для этого мы использовали gnome-text-editor:

$ mkdir autostart
$ cd autostart
$ gnome tightvnc.desktop

Измените содержимое файла следующим образом и сохраните файл:

[Desktop Entry]
Type=Application
Name=TightVNC
Exec=vncserver :1
StartupNotify=false

В следующий раз, когда вы перезагрузите свой Pi, vncserver запустится автоматически и без проблем подключит ваш Raspberry Pi к дисплею для ноутбука.

Всякий раз, когда вы хотите что-то сделать с вашим Pi, просто подключите его к ноутбуку с помощью кабеля Ethernet и включите его. Затем откройте VNCViewer, укажите IP-адрес вашего Pi, и вы можете использовать дисплей вашего ноутбука в качестве монитора Raspberry Pi.

Читайте также: