Raspberry Pi 4 разное

  • Заказывал  RPi4 2G KIT Bundle 5 тут. Все шикарно, никаких нареканий. Есть особенности при включении, сборке, использовании, но они относятся в целом к RPi4, а не этому KIT (подробнее ниже). Комплектация:
    • RPi4 2G
    • Sandisk MicroSD 16G
    • Black ABS case with fan
    • Card reader
    • Heat sinks (небольшие)
    • 5V 3A Power Supply
    • 1 micro HDMI кабель
  • Конкурент RPi – OrangePI, есть, например, SATA
  • BCM2711 – SoC нового RPi. Основной виновник нагрева.
  • Второй HDMI не передает звук, это нормально
  • На RPi нет grub’а, там закрытый загрузчик в памяти eeprom. Аргументы загрузки ядра указываются в файле cmdline.txt на boot-разделе.
  • При подключении по VNC к RPi может быть reject с ошибкой “cannot currently show the desktop”. Скорей всего причиной является отсутствие подключения RPi к монитору – подключаем монитор или указываем разрешение в конфиге RPi, перезагружаем RPi.
The RPi must be set to boot to desktop (service mode).
If a HDMI monitor is not attached then you need to specify a screen resolution in config.txt
Use GUI config tool or sudo raspi-config to do that.

sudo raspi-config
Select 7 Advanced Operations
Then
Select 5 Resolution
Thanks, this worked for me!
  • retropie – система с разными играми, например Dendy (pacman, mario, танчики, duck tales, алладин, контра, etc).
Черный экран

Не нужно удивляться если при старте ничего не работает (нет вывода даже на экран). Чаще всего причиной будет являться отсутствие ОС на microSD. Качаем Raspberry PI Imager и создаем загрузочный образ на Micro SD. Так же потенциальные варианты:

    • raspberry может не поддерживать высокое разрешение монитора/телевизора (hd), нужно сделать меньше (напр. 1280х720)
    • на некоторых дисплеях не работает HDMI
    • кабель HDMI нужно подключать еще до запуска Raspberry
    • проблема с SPI EEPROM и нужна перепрошивка (см. Recovery)
Экранная клавиатура

В дистрибутиве по умолчанию нет экранной клавиатуры. В моем случае это было важно т.к. мышка “лишняя” была, а вот клавиатуры нет. При этом удаленно подключиться без первичной настройки (Wi-Fi, разрешения SSH/VNC) с клавиатурой не получится.

Вылечить можно так:

  1. в установочном меню задаем пароль sudo для учетной записи pi по названию любой папки (через переименование)
  2. берем usb flash
  3. добавляем в него текстовый файл c паролем для wifi (или подключаем ethernet кабелем в сеть)
    — вариант 1: настраиваем vnc и подключаемся с другого ПК на pi, ставим необходимый софт (Preferences -> Raspberry Pi Configuration)
    — вариант 2: добавляем строки по установке экранной клавиатуры на usb flash
sudo apt update
sudo apt upgrade
sudo apt install matchbox-keyboard
Задержка при просмотре RTSP потока в VLC/FFPLAY

подробно описано тут

Перегрев

RPi 4 перегревается и это факт. При перегреве начинает работать троттлинг процессора. Для мониторинга перегрева проще всего поставить applet на панель. Так же можно использовать команды в cli.

Троттлинг (от английского throttling) представляет собой механизм защиты процессора от термических повреждений при перегреве системы. Чем выше температура действует на микропроцессор, тем больше машинных тактов он пропускает.

pi@raspberrypi:~ $ vcgencmd measure_temp
temp=48.0'C
pi@raspberrypi:~ $ cat /sys/class/thermal/thermal_zone0/temp | sed 's/...$//'
49

# cli monitoring
pi@raspberrypi:~ $ while true; do vcgencmd measure_temp; sleep 10; done
pi@raspberrypi:~ $ while true; do temp=$(vcgencmd measure_temp); date=$(date); echo "$date;$temp"; sleep 60; done

# thermal zones (не только RPi)
Существуют разные типы зон - x86_pkg_temp (с CPU), acpitz (чаще всего не напрямую с CPU). По каждой зоне созданной в /sys/class/thermal/thermal_zone* можно посмотреть ее тип и температуру в ней.
/sys/class/thermal/thermal_zone0/type
acpitz
/sys/class/thermal/thermal_zone2/type
x86_pkg_temp

Решение в виде обновления прошивки, небольших по размеру радиаторов (пассивного охлаждения), использования RPi 4 без корпуса не очень эффективны. По факту для гарантии нормальной работы нужен или большой радиатор или активное охлаждение.

# проверка/обновление ПО
pi@raspberrypi:~ $ sudo rpi-eeprom-update
BCM2711 detected
BOOTLOADER: up-to-date
CURRENT: Thu 16 Apr 2020 05:11:26 PM UTC (1587057086)
LATEST: Thu 16 Apr 2020 05:11:26 PM UTC (1587057086)
FW DIR: /lib/firmware/raspberrypi/bootloader/critical
VL805: up-to-date
CURRENT: 000137ad
LATEST: 000137ad
Cooling Option Min Temp (°C) Max temp (°C) CPU throttled?
Bare Pi 50 77 NO
Pi in official case (no fan) 51 82 YES
Pi in official case (with fan) 39 61 NO
Bare Pi with ICE tower, fan off) 31 51 NO
Bare Pi with ICE tower, fan on) 29 39 NO
Bare Pi — after fw update 38 69 NO
Pi in official case — after fw update 43 76 NO

Кулер, который я купил в комплекте с Ali справляется с перегревом. Единственное, нужно знать особенности распиновки GPIO на RPi4, иначе кулер может работать не так, как хочется:

  • кулер может вообще не работать, если не подключить его к питанию и земле
  • большинство на ali жалуются что кулер слишком громкий. Причина в том, что он при подключении в 5v (напр. пин 4) работает на максимальных оборотах. В итоге охлаждение так же самое максимальное, но это может очень мешать (и это так, он нереально громкий).

  • при подключении в 3.3v (напр. пин 1) кулер работает значительно тише, хотя и не так эффективно с точки зрения охлаждения. Для подключения пришлось пины на кабеле разбить т.к. GPIO не имеет двух параллельно стоящих 3.3v + GND.

Активное охлаждение

Я остановился на варианте 3.3v – результирующего RPM кулера достаточно для полноценного охлаждения в любом из режимов работы CPU:

  • В стандартном режиме работы (15 мин ролика на youtube в 1080p) охлаждение позволило не заходить за 45 градусов CPU, тогда как при passive cooling (heat sink) в этом же корпусе и с последним апдейтом firmware/bootloader CPU быстро переходил за 80 градусов с последующим троттлингом.
  • В стрессовом режиме работы (100% загрузка CPU в течении 6 часов при использовании aircrack) с кулером температура достигала максимум 60 градусов без тенденции роста со временем.

 

Пассивное охлаждение на базе существующей комплектации

Без кулера, кейса и на базе купленных небольших радиаторов температура:

  • В простое не поднимается выше 50 градусов (12 часовой тест без нагрузки)
  • В стандартном режиме работы (15 мин ролика на youtube в 1080p) не выше 75 градусов
  • В режиме просмотра одного rtsp стрима (12 часов) не выше 65 (vlc) – 75 (ffplay) градусов

Leave a Reply