Как собрать raspberry pi 4 с дисплеем

Обновлено: 07.07.2024

Этот обзор будет посвящен аппаратной платформе на базе одноплатного компьютера Raspberry Pi 4B, которую я собрал для сервера управления умным домом Home Assistant. Я расскажу полностью о всех ее частях, вплоть до выбора кабеля питания, а о установке операционной системы и сервера Home Assistant — можно будет узнать из видеоурока на моем канале youtube

Содержание

Ссылки на все компоненты показанные в обзоре -

    — цена на дату публикации $ 59.87 — цена на дату публикации $ 12,72 — цена на дату публикации $ 26.32 за 32 Гб — цена на дату публикации $ 2.39 за вариант из обзора

Raspberry Pi 4B

Начну с главного — с одноплатника. На сегодняшний день существует 3 версии, отличающиеся объемом оперативной памяти, 1, 2 и 4 GB. Я выбрал максимальную версию — на 4 GB, сэкономить несколько долларов на более легких версиях не видел смысла.

В базовой поставке имеется только одноплатник размером 88 x 58 мм и инструкции, все остальные компоненты, про которые я расскажу далее, нужно покупать отдельно.


Сердцем устройства является 64х разрядный, 4х ядерный процессор Broadcom BCM2711, частотой 1,5 ГГц, графический процессор VideoCore VI с OpenGL ES 1.1, 2.0, 3.0 Как я уже сказал — в моей версии установлено 4 GB оперативной памяти. Одноплатник оснащен интерфейсами CSI и DSI для подключения камеры и дисплея, а также 40 пиновым разъемом GPIO


Разъем питания — в формате USB Type C, что облегчает покупку кабеля, к которой нужно отнестись внимательно — устройство достаточно мощное. Разъемов для видео — теперь два, в формате microHDMI (до 4Kp60). Так же имеется композитный 3.5 jack для вывода звука/видео


Четыре порта USB, два из которых стандарта 3.0 и гигабитный порт Ethernet, беспроводные коммуникации представлены двухдиапазонным Wi-Fi адаптером (2.4GHz / 5GHz) стандарта IEEE 802.11 b/g/n/ac, и Bluetooth 5.0 BLE


Встроенной памяти, к сожалению, в устройстве нет, штатный способ установки носителя — слот формата micro SD. На данный момент, напомню, поддержки загрузки с USB — нет. Хотя можно использовать карту памяти только для загрузки, а операционную систему устанавливать на внешний диск, либо, так поступил я, использовать EMMC память с разъемом под micro SD


Корпус

Мой личный опыт, показывает, что корпус и охлаждение лучше совмещать, это весьма эффективно, к тому же позволяет обходится без активных элементов — вентиляторов. Такой корпус я и приобрел для своей платформы. Цвет выбрал черный, он лучше смотрится в моих условиях.

Этот вариант корпуса — полностью закрытый, сделан из металла, отверстия имеются только для интерфейсных разъемов.


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


Сначала устройство устанавливается в нижнюю часть корпуса, с той стороны теплоотводов нет. Все отверстия идеально совпадают с разъемами


Благодаря специальным выступам совпадающих с отверстиями на плате миникомпа — он отлично фиксируется на одном месте


Вид со стороны Ethernet и USB портов — все совпадает с точностью до миллиметра.


4 теплоотвода предназначены для процессора, чипа оперативной памяти, беспроводного и сетевого контроллера. Это главные горячие точки.


Стоит ли говорить о том, что в этом случае тоже все совпадает идеально.


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


Теперь можно соединить обе части корпуса, как видим — качество сборки на высоте, все совпадает, все отверстия там, где и должны быть


На одном из торцов имеется узкая вентиляционная щель выполняющая роль воздухозаборника, при этом пыль в нее попадать не будет


Части корпуса соединяются при помощи четырех винтов, которые идут в комплекте. Кроме соединения корпуса, они обеспечивают фиксацию платы и надежный тепловой контакт с чипами.


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


Теперь мини компьютер в сборе и почти готов к установке операционной системы и сервера умного дома


EMMC to micro SD

Вместо ненадежной карты памяти, я приобрел более надежный модуль EMMC с адаптером для установки в слот micro SD. Упакован он был во много слоев пузырьковой пленки.


Модуль памяти и адаптер под micro SD — сделаны раздельно, в комплекте еще есть пара крепежных винтов, правда они мне не пригодились


Соединяются они между собой через 20 контактный разъем, на модуле с памятью есть наклейка где указан его объем


Модуль в сборе — довольно громоздкий, и будет торчать из корпуса, но такова плата за надежность.


Еще один момент, для записи на этот модуль нужно иметь внешний USB картридер. У меня нашелся вот такой, все подошло замечательно.


Через встроенный в ноутбук картридер — увидеть память не получилось. C USB — все отлично.


При использовании этого картридера я получил вот такие показатели скорости, но думаю тут основное бутылочное горлышко — сам картридер, в малину модуль ставится напрямую


Кабель питания

Я не поленился купить и отдельный кабель питания для одноплатника, обратившись к многократно проверенному производителю — Ugreen


Кабель имеет заявленную пропускную способность по току до 3А, я взял полуметровой длины, мне достаточно.


Я специально выбрал вариант с Г образным разъемом, кстати точно такие же кабеля но micro USB используется у меня для 3х версий raspberry


В случае с USB Type C — все гораздо удобнее, так как разъем симметричен и может подключаться любой стороной.


Например если нужны разъемы micro HDMI — то его можно развернуть его таким образом


Я их не использую поэтому развернул кабель в сторону Ethernet и USB портов.


Из за громоздкости модуля EMMC я посчитал что удобнее будет расположить корпус, так сказать вверх ногами, хотя это конечно понятие относительное.

Одноплатный компьютер Raspberry Pi 4 Model B — полноценный бесшумный компьютер размером с банковскую карту из семейства «малиновых пирогов». На борту платы расположены четыре порта USB, беспроводной модуль Wi-Fi / Bluetooth и полноценный гигабитный Ethernet, чтобы сразу приступить к работе.


Raspberry Pi 4 выпускается в разных версиях, в зависимости от количества оперативной памяти:

Платы отличаются только количеством оперативной памяти, процессор и другие характеристики одинаковы.

Видеообзор платформы

Установка и настройка

Для начало работы с одноплатником Raspberry Pi 4 выполните шаги из мануала по подготовке и настройке Raspberry Pi.

Элементы платы


Чип SoC Broadcom BCM2711

Сердце компьютера Raspberry Pi 4 Model B — чип SoC Broadcom BCM2711, который выполнен по технологии SoC (англ. System-on-a-Chip — система на кристалле). Кристалл включает в себя 4-ядерный процессор CPU Cortex-A72 с тактовой частотой 1,5 ГГц и графический двухъядерный сопроцессор GPU VideoCore VI с тактовой частотой 500 МГц.

Оперативная память LPDDR2 SDRAM

За выполнения и хранения данных в реальном времени на одноплатнике расположена оперативная память LPDDR2 SDRAM объёмом от 1 ГБ до 8 ГБ, которая делится между CPU и GPU. В зависимости от количества памяти, малины хватит для задач от управления датчиками до создания IPTV приставки для просмотра телеканалов.

Объём оперативной памяти зависит от выбранной модели Raspberry Pi 4.

Модуль Wi-Fi и Bluetooth

За беспроводную передачу данных отвечает микросхема Cypress CYW43438 с поддержкой Wi-Fi 802.11b/g/n/ac (2,4 и 5 ГГц) и Bluetooth 5.0 с BLE.

Цифровые HDMI аудио/видеовыходы

HDMI-разъёмы предназначены для вывода цифрового видео и звука на мультимедийные устройства, например на HDMI-дисплеи или мониторы. Два разъёма позволяют одновременно выводить изображение на разные экраны. Для коммуникации используйте HDMI-кабель с дополнительным переходником или готовый кабель HDMI — micro-HDMI.

Аналоговый аудио/видеовыход

Комбинированный 4-контактный разъём 3,5 мм служит выходом для аналогового аудио и композитного видео PAL/NTSC.

Разъём питания

Разъём USB Type-C предназначен для питания Raspberry Pi.

Потребляемый ток может достигать до 3 ампер. Для стабильной работы используйте зарядник на 5 В совместно с кабелем USB (A — Type C).

USB-порты

На торце платы находится два порта USB 2.0 и два USB 3.0, которые предназначены для подключения мультимедийной периферии: клавиатуры, мыши и других USB-девайсов.

Светодиодная индикация

Имя светодиода Назначение
PWR Индикация питания платы.
ACT Индикация активности с SD-картой. Во время работы с картой должен активно мигать.

Пины управления питанием платы и процессора

Имя пина Назначение
PEN Контакт предназначен для управление питанием платы (Power ENable) и всех органов управления. При подаче низкого уровня, напряжение на плату максимально ограничено и одноплатник выключен, при подачи высокого — малина переходит в штатный режим работы. Подключите пин к внешнему контроллеру и управляйте включением малины удалённо.
RUN Контакт предназначен для управление питанием процессора BCM2711. При подаче низкого уровня одноплатник переход в спящий режим, при подачи высокого — в штатный режим работы. Используйте пин для внешней перезагрузки малины.

Пины ввода-вывода

На Raspberry Pi 4 Model B находятся 40 контактов GPIO для подключения цифровых датчиков, модулей расширения и другой периферии. Все подробности о пинах читайте в разделе распиновка.

К сожалению, в компьютерах Raspberry Pi нет встроенного аналого-цифрового преобразователя для подключения аналоговых датчиков. Используйте плату расширения Troyka Cap, которая добавит малине аналоговые пины.

Порт камеры CSI

Разъём CSI под шлейф предназначен для подключения MIPI камер для Raspberry Pi.

Порт DSI

Разъём DSI под шлейф предназначен для подключения RGB-дисплеев для Raspberry Pi.

Cлот microSD

На обратной стороне платы, расположен cлот для установки microSD-карты с операционная системой в Raspberry Pi. Перед началом работы запишите свежий образ Raspberry Pi OS на карту памяти или воспользуйтесь готовым решением.

Распиновка


Physical Board Pin: 40 пинов: 1 – 40
На плате расположена гребенка из 40 контактов, которые условно можно поделить на пины питания и пины ввода-вывода. По умолчанию будем использовать именно нумерацию физических контактов.

Пины питания

3V3: 2 пина: 1 и 17
Выходные пин от стабилизатора напряжения с выходом 3,3 вольта. На плате контакты электрически связаны между собой. GND: 8 пинов: 6 , 9 , 14 , 20 , 25 , 30 , 34 и 39 .
Вывод общей земли. На плате контакты электрически связаны между собой.

Пины ввода-вывода (GPIO)

Внимание! В отличие от плат Arduino, напряжение логических уровней Raspberry Pi является 3,3 В. Максимальное напряжение, которое могут выдержать пины ввода-вывода составляет 3,3 В, а не 5 В. Подав напряжение, например 5 В, можно вывести одноплатник из строя.

Шаг первый: проектирование
Работу мастер начал с того, что спроектировал корпус, а затем начал размещать Raspberry Pi и другие компоненты внутри корпуса так, чтобы OLED-дисплей был виден спереди, а все порты Pi были доступны на передней или боковой стороне корпуса.

OLED-дисплей крепится двумя маленькими выступами на корпусе вдоль верхнего края и небольшим напечатанным на 3D-принтере зажимом с винтом для удержания нижнего края.

Raspberry Pi и кулер устанавливаются внутри корпуса с помощью монтажных стоек которые поставляются с ними поставляются в комплекте.
Карта памяти устанавливается сзади Raspberry Pi. Мастер не собирается ее извлекать, поэтому отверстие в корпусе не предусмотрено, но если пользователю нужно, то его не сложно сделать.




Шаг второй: 3D-печать
Дальше мастер напечатал детали корпуса на своем 3D-принтере. При печати использовал черную PLA. Толщина слоя 0,2 мм, заполнение 15%. Частично, в местах где есть конструкционные отверстия, печать с опорами.

После того, как две части будут напечатаны, нужно будет удалить опоры и очистить края ножом.
Файлы для 3D-печати можно скачать здесь .






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

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










Теперь нужно установить OLED-дисплей.
Припаивает к контактным площадкам дисплея четыре штырька.
Устанавливает край дисплея под верхнюю планку окошка. Нижнюю часть закрепляет с помощью напечатанного зажима.
Затем отрезает 4-х жильный кабель нужной длины. Устанавливает разъемы с обеих сторон кабеля и подключает один конец кабеля к дисплею, второй к Raspberry Pi.

Схема подключения следующая:
VCC к контакту 1 (3.3 В питания)
GND к контакту 14 (GND)
SCL к Pin3 (SCL)
SDA к Pin2 (SDA)









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









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





После изготовления панелей прикручивает к одной из них вентилятор. Подключает провод от него к устройству. Прикручивает панели на место.








Шаг пятый: программирование OLED-дисплея
Дальше нужно вывести информацию на дисплей. За основу мастер взял библиотеку Python Adafruit , с небольшими изменениями (была добавлена температура процессора и изменен формат отображения).

Загрузить скрипт и ознакомиться с пошаговой инструкцией по запуску кода можно здесь .


linux ubuntu raspberry pi4 arm
  • Raspberry Pi 4 Model B – это компактный одноплатный компьютер на базе 4-ядерного процессора Broadcom BCM2711, Cortex-A72 @ 1.5GHz с 4GB оперативной памяти (есть так же версии с 1GB, 2GB и 8GB). Разработчики добавили в Raspberry Pi 4 такие востребованные интерфейсы как USB 3.0, Gigabit Ethernet, Bluetooth 5.0, micro HDMI и реализовали поддержку видео 4К. Также появился новый разъем питания USB Type-C вместо старого разъема micro USB.
  • Вместо полноразмерного разъема HDMI в Raspberry Pi реализованы 2 порта micro HDMI, что дает возможность подключить 2 монитора с разрешением 4K.
  • 40-пиновый GPIO-разъём позволяет подключать к микрокомпьютеру разнообразные датчики, индикацию, элементы управления, программируемые микроконтроллеры, исполняющие устройства и использовать Raspberry Pi в самых различных сферах, таких как – «умный дом», автоматизация процессов, робототехника и т.п.

Техническая спецификация

  • Процессор: Broadcom BCM2711 (4-core), ARMv8 Cortex-A72 64-bit @ 1.5GHz;
  • Память: 1GB/2GB/4GB/8GB LPDDR4-3200;
  • Связь: 10/100/1000M Ethernet, Bluetooth 5.0 Low Energy (BLE), WiFi 2.4GHz/5GHz IEEE 802.11 b/g/n/ac;
  • USB Host: USB 2.0 х 2, USB 3.0 х 2;
  • Слот MicroSD: MicroSD x 1 для системного загрузчика и данных;
  • LED: Power LED x 1, System LED x 1;
  • GPIO: 2.54mm pitch 40-пиновая колодка с поддержкой 4 × UART, 4 × SPI и 4 × I2C;
  • USB Type-C: Power Input (5V/3A) (блок питания в комплект не входит);
  • HDMI: Micro HDMI x 2;
  • A/V-выходы: 3.5mm jack 4 pin, разъем MIPI DSI, разъем MIPI CSI;
  • Размеры: 88 x 58 x 17mm;
  • Рабочая температура: -20℃ to 70℃;
  • Вес платы: 48g.

Распаковка и сборка





  • Приклеиваем термопроводящие прокладки на чипы, соединяем две части радиатора и прикручиваем их друг к другу винтиками из комплекта;

Программное обеспечение (Ubuntu Mate 20.04)

  • В записанном образе, по умолчанию размер основного раздела равен около 5ГБ, это очень мало, и если оставить его таким, то при первом запуске, во время первоначальной настройки Ubuntu Mate будут возникать ошибки. Поэтому первым делом необходимо увеличить размер этого раздела хотя бы до 8ГБ. Проще всего воспользоваться для этой процедурой программой GParted.





Запуск Ubuntu Mate без монитора (headless)

При первом запуске Ubuntu Mate на Raspberry Pi, запускается программа-установщик, в которой указывается имя компьютера, временная зона. Во время первого запуска создаётся пользователь для работы, а так же устанавливается и обновляется ряд программ. Если к Raspberry Pi не подключен монитор, клавиатура и мышь – завершить установку почти невозможно.

Для того, чтобы закончить процесс установки Ubuntu Mate без монитора – воспользуемся UART-портом на Raspberry Pi и маленьким USB-донглом USB2UART от компании FriendlyELEC.

Первый блок команд отключает запрет отображения логов запуска ядра на консольном порту, а второй блок команд добавляет запуск сервиса serial-getty для порта ttyS0 в oem-config.target SystemD. При первом запуске Ubuntu Mate будет загружаться таргет oem-config.target.

После того как мы подготовили карточку с Ubuntu Mate к загрузке – подключим консоль нашего Raspberry Pi к имеющемуся компьютеру. На официальной странице документации есть понятные картинки, показывающие как нужно подключаться к UART-порту Raspberry Pi.

  • На схеме видно, что нам нужно будет подключаться к пинам 6 (GND), 8 (TXD) и 10 (RXD).

На фотографии видно, что я взял небольшой кабель, и подготовил один разъём для подключения к USB-донглу USB2UART, а второй разъём для подключения к Raspberry Pi. Основная идея в том, что пины GND (земля) должны совпадать у обоих устройств (чёрный провод), а пины TXD и RXD должны быть соединены "крест-накрест". Т.е. пин TXD у Raspberry Pi должен быть подключён к пину RX у USB2UART (белый провод), а пин RXD у Raspberry Pi должен быть подключён к пину TX у USB2UART (жёлтый провод). Это необходимо для того, чтобы данные передаваемые (transmit) на стороне Raspberry Pi – принимались (receive) на стороне USB2UART и наоборот.

Теперь подключаем к Raspberry Pi сетевой кабель и кабель питания USB Type-C.

  • А после наших изменений, вывод в консоли должен выглядеть примерно так:

Т.е. во-первых отображается процесс загрузки операционной системы, а во-вторых появилось приглашение для логина. Если планируете в дальнейшем использовать эту консоль для работы – обратите внимание на эту заметку (раздел Облагораживание консоли).

Первый вход в систему

Для первого входа в систему воспользуемся сервисной учётной записью oem, у которой пароль по умолчанию тоже oem:

  • Проверим, что Raspberry Pi получила IP-адрес от DHCP-сервера, и что есть доступ в Интернет:
  • Далее нам необходимо установить SSH-сервер. Если сразу после загрузки Raspberry Pi попытаться его установить – мы получим ошибку:
  • Нам пишут, что в данный момент запущен механизм автоматических обновлений, поэтому ручная установка программ недоступна. Для того, чтобы узнать, когда автоматические обновления завершатся – запустим просмотр соответствующих логов:
  • На последней строчке написано, что теперь запущено обновление пакетов (dpkg), поэтому нажмём Ctrl+C и запустим просмотр другого лог-файла:
  • Через какое-то время (в моём случае это заняло около получаса) – добавление новых записей в лог-файл прекратится и мы сможем продолжить работу. Нажмём Ctrl+C, обновим систему и установим SSH-сервер:
  • Теперь попробуем подключиться к нашему Raspberry Pi через ssh:
  • SSH-сервер работает, теперь установим и запустим RDP-сервер, для подключения к Raspberry Pi в графическом режиме:
  • После запуска RDP-сервера, подключимся к нему используя логин и пароль oem. На рабочем столе нажмём правой кнопкой мыши и кликнем по пункту Open Terminal. Далее в терминале выполним следующие команды:

Команду xhost + необходимо выполнять перед sudo oem-config , в противном случае программе oem-config не хватит прав для отображения под учётной записью oem .

  • Таким образом мы запустим графический процесс установки Ubuntu Mate. Нужно будет выбрать язык, временную зону, указать название компьютера и создать пользовательскую учётную запись:
  • После завершения программы oem-config необходимо восстановить нормальную загрузку Ubuntu Mate (в настоящее время симлинк default.target указывает на oem-config.target ):

Удаление программы oem-config:

  • После перезагрузки логинимся под пользовательской учётной записью, которую создали на предыдущем шаге и выполняем следующую команду:





Удаление сервисной учётной записи oem:

Установка дополнительных утилит и настройка рабочего окружения в bash:

Далее можно настроить рабочее окружение в bash по этой заметке. А графическую часть Ubuntu Mate можно настроить по этой заметке (читать начиная с пункта Настройка после установки).

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