Orange pi установка на флешку
Установка прошивки Klipper. Обращаем Ваше внимание, что установка самого Linux, как и его детальная настройка не входит в объемы данной статьи. Детальные руководства по установке Linux на Вашу систему поможет найти Яндекс, Google или Bing.
Содержание
Для использования программного комплекса Klipper, Вам потребуется:
- Компьютер, с процессором не менее 1Ггц, 512 мб оперативной памяти, а так же один свободный USB порт.
- 8 гб свободного места на диске или другом энергонезависимом носителе, например флешка.
Под это требования подходят почти все одноплатные компьютеры семейства Raspberry Pi, Orange Pi, Banana Pi, Khadas Vim3, Radxa, старые ноутбуки, iMac mini и многое многое другое. В рамках данной статьи будут рассматриваться только одноплатные компьютеры семейства Raspberry Pi а именно:
- Raspberry Pi Zero W
- Raspberry Pi 3b+
- Raspberry Pi 4b
Одноплатный компьютер семейства Orange Pi
А так же установка на х86 совместимый компьютер
Установка на другие устройства принципиально не отличается от устройств рассмотренных ниже, но если Вы устанавливаете Linux в первый раз , то настоятельно рекомендуется использование одноплатных компьютеров семейства Raspberry Pi 3b+/4b. Лучше сразу потратить чуть больше денег на беспроблемный одноплатный компьютер, чем потратить кучу времени на то, чтобы заставить его правильно работать. Но этот выбор делает каждый из Вас самостоятельно.
Среди программного обеспечения потребуется (данные программы рекомендуются, но возможно Вы сможете заменить их аналогами)
- для Windows:
- Текстовый редактор (например Notepadd++ или VSCode), ни в коем случае не надо пользоваться стандартным Блокнотом или WordPad! Так как спец символы разметки (пробел, табуляция, конец строки и тп.) обрабатываются по разному для операционных систем Windows и Linux.
- Программа для создания загрузочных дисков (например Rufus)
- Программа для подключения по SSH (например putty)
- Программа для копирования файлов по FTP (например WinSCP)
- Текстовый редактор VSCode
- Программа для создания загрузочных дисков BalenaEtcher или Raspberry Pi Imager для заливки образа на SD-карту
- И стандартный набор консольных утилит ssh и scp для копирования файлов.
Установка данного образа возможна ТОЛЬКО на одноплатных компьютерах семейства Raspberry Pi
Перед установкой образа, его необходимо скачать с сайта Raspberry Pi OS образ прошивки Raspberry Pi OS Lite, либо запустить Raspberry Pi Imager и выбрать в программе этот образ, который она скачает и зальет на карточку сама.
Данный образ содержит в себе минимально необходимый пакет программного обеспечения для запуска операционной системы Linux, его в последствии необходимо будет вносить дополнительные настройки, а так же устанавливать дополнительные пакеты.
Установка данного образа возможна на почти все одноплатные компьютеры семейств Raspberry Pi, Orange Pi, Khadas и другие.
Перед установкой образа, его необходимо скачать с сайта Armbian OS На примере Orange Pi Zero 2 Выбираем Buster на ядре 4.9
Данный образ содержит в себе минимально необходимый пакет программного обеспечения для запуска операционной системы Linux, его в последствии необходимо будет вносить дополнительные настройки, а так же устанавливать дополнительные пакеты.
Установка данного образа возможна ТОЛЬКО на одноплатных компьютерах семейства Raspberry Pi. Данный образ является предсконфигурированным образом, в нем УЖЕ установлен Klipper, Moonracker, Fluidd. Таким образом данный образ позволяет начать пользоваться Klipper'ом максимально быстро. Но как и у всех решений, данное имеет свои нюансы: версия программного обеспечения на нем актуальна на дату формирования образа. Вы вполне можете получить неработоспособную сборку с используемым принтером или отдельными частями конфигурационного файла, так как поддержка принтера или новых возможностей Klipper вышла позже. Даже для данной сборки рекомендуется использование инструмента KIAUH.
Скачиваем актуальную версию образа FluiddPi
Ставим MicroSD в кардридер и подключаем его к компьютеру.
Запускаем Rufus В графе Устройство выбираем MicroSD. Потом нажимаем на кнопку ВЫБРАТЬ и выбираем скаченный ранее образ. Нажимаем кнопку СТАРТ и ждем пока завершится процесс.
По окончанию процесса записи образа на MicroSD в проводнике появится новый раздел Boot.
- При установке образа Raspbian необходимо выполнить следующие действия:
В типовом для большинства случаев, подключение будет производиться по сети WiFi c использованием пароля. Создаем текстовый файл wpa_supplicant.conf в появившемся разделе Boot и открываем его текстовым редактором Notepad++, и вносим в него следующую информацию:
Для примера WiFi сеть будет называться: Klippernet, пароль: SecretPassw0rd2021 - тогда файл конфигурации будет выглядеть следующим образом:
Кроме того, так же в разделе Boot необходимо создать пустой файл с именем ssh, обращаю внимание что у него не должно быть никакого расширения. Данное файл в этом разделе сообщает системе Raspbian что при загрузке необходимо активировать и запустить SSH Server.
- При установке сборки FluiddPi в данном разделе нас интересует файл fluiddpi-wpa-supplicant.txt.
В типовом для большинства случаев, подключение будет производиться по сети WiFi c использованием пароля. Открываем данный файл с помощью Notepad++ (Открытие данного файла программами Word, Wordpad и им подобными приведет к повреждению файла настроек). В данном файле нас интересуют строки:
Для примера WiFi сеть будет называться: Klippernet, пароль: SecretPassw0rd2021 - тогда файл конфигурации будет выглядеть следующим образом
- При установке образа Armbian необходимо выполнить следующие действия:
После вышеописанных действий отключаем подключенный MicroSD и вставляем его в одноплатный компьютер и включаем его. На этом установка образа системы завершена.Для установки на прочие, а именно х86 совместимые устройства, рекомендуется выбрать Linux дистрибутив либо Debian, либо Ubuntu LTS.
На сайте Debian расположена достаточно подробная инструкция. Кроме того в разделе 6.4. Загрузка отсутствующих микропрограмм описан процесс загрузки драйверов для сетевых карт.
В процессе установки нужно обратить внимание на:
- Hostname - имя машины в сети;
- Domain name - имя домена, как правило пустое, а если вы не знаете что это, то и подавно пустое;
- Root password - Если поставить данное поле пустым, вы не сможете войти под ученой записью root в консоли, а только через обычного пользователя с использованием su, рекомендуется установить пароль;
- Username - имя пользователя под которым будете работать в дальнейшем (регистр имеет значение!);
При выборе пакетов, следует выбрать:
- SSH Server
- Standart system utilites
По окончанию установки, компьютер перезагрузится. В рамках данной статьи не будет разбираться установка и настройка сетевых интерфейсов, считаем что они работают сразу правильно, даже если они не работают.
На этом этап установки базовой системы Linux завершен.sudo (Substitute User and do, дословно «подменить пользователя и выполнить») — программа для системного администрирования UNIX-систем, позволяющая делегировать те или иные привилегированные ресурсы пользователям с ведением протокола работы. Основная идея — дать пользователям как можно меньше прав, при этом достаточных для решения поставленных задач. Программа поставляется для большинства UNIX и UNIX-подобных операционных систем.
В большинстве случаев грамотная настройка sudo делает небезопасную работу от имени суперпользователя ненужной. Все действия оказываются выполнимы из-под аккаунта пользователя, которому разрешено использовать sudo без ограничений. Имеется возможность запрещать и разрешать определённым пользователям или группам выполнение конкретного набора программ, а также разрешить выполнение определённых программ без необходимости ввода своего пароля.
По умолчанию, команда sudo запрашивает пароль на каждый свой вызов, в случае если вы четко осознаете что вам такое поведение команды sudo избыточно, можно перевести ее в режим без запроса пароля, для этого выполняем следующую команду:
, в появившемся редакторе находим блок:
и приводим его к виду:
Обращаю Ваше внимание, что это изменение может нести потенциальные угрозы безопасности.
KIAUH - Klipper Installation And Update Helper - это утилита для автоматизации установки Klipper и других приложений. Ссылка на проект на GitHub
Подключаемся к компьютеру по SSH через putty. Для этого в поле Hostname указываем IP, в моем случае это 192.168.33.82, но данный ip адрес может отличаться для каждой из систем.
В процессе подключения у Вас запросят логин: pi и пароль: raspberry.
После успешного входа в систему, выполняем следующий набор команд для установки и запуска KIAUH:
Если после установки вы видите следующий текст (но у Вас при первом запуске все будет "Not installed!", за исключением пользователей FluiddPi):
Навигация по меню осуществляется цифрами, после ввода цифры необходимо подтвердить выбор клавишей Enter
Для установки работоспособной системы Вам потребуется по очереди установить Klipper, Moonraker и веб интерфейс Fluidd или Mainsail.
Уже установленные пакеты можно обновлять в ручном режиме, а именно через команду git pull Для примера обновим пакет klipper:
но не стоит забывать, что после обновления пакета необходимо так же выполнить скрипт установки этого пакета каждый раз после его обновления:
В данном случае выбран скрипт для установки на системы Debian.
Подключаемся к системе через SSH. Открываем файл конфигурации подготовленный для вашего принтера на странице Klipper
В моем случае это Creality Ender 3v2 - printer-creality-ender3-v2-2020.cfg. Скачиваем данный файл и переименовываем его в printer.cfg, а в дальнейшем данный файл будет размещен в
/klipper_config (полный путь /home/pi/klipper_config). Открываем данный файл Notepad++, нас интересует следующий блок:
В нем говорится что используется процессор STM32F103, загрузчик - 28KiB
Переходим обратно в pytty и выполняем следующие команды (команды можно копировать, в putty они вставляются Правой кнопкой мыши):
Micro-Controller architecture - выбираем STM32
Processor model - выбираем STM32F103
Bootloader offset - 28KiB bootloader
Убираем звездочку с "Use USB for communication" (для плат SKR Mini E3 звездочка должна стоять)
Нажимаем Q, сохраняя внесенные изменения и компилируем прошивку:
Если все прошло успешно, putty в консоли сообщит:
Это означает что прошивка скомпилировалась и находится в папке
/klipper/out/klipper.bin (полный путь к файлу: /home/pi/klipper/out/klipper.bin) Запускаем WinSCP, подключаемся к компьютеру, скачиваем данный файл, сохраняем его на MicroSD принтера и прошиваем принтер. Прошивка занимает около минуты.
По завершению прошивки подключаем принтер к RaspberryPi USB проводом, переходим в putty и выполняем команду:
В связи с тем, что на моей плате OrangePi Plus есть встроенная EMMS память, я решил сэкономить на флешке и установить на данную флеш память операционную систему. Я рассмотрю 2 варианта установки системы на EMMS.
Вариант 1. Установка официальной версии ОС.
Переходим на официальный сайт OrangePI скачиваем на ]]> странице ]]> образ Lubuntu_1404_For_OrangePiplus_v0_9_0_.img.xz, но по ссылке в Google Disk открывается Lubuntu_1404_For_OrangePiplus_v0_8_0, а для того, чтобы скачать в Baidu нужно поставить клиент на компьютер либо телефон, то я выкладываю ссылку на уже скачанный дистрибутив, скачиваете и заливаете на флешку аналогично как по инструкции.
После этого ставите флешку в плату и включаете, должен загорется красный светодиод, и через несколько секунд линк на сетевой карте. После загружузки, смотрим на роутере какой айпи получила плата и подключаемся используя программу putty и логин с паролем orangepi/orangepi, если не знакомы с Putty, вот инструкция по использованию Putty.
Зайдя на сервер, на время настройки авторизируемся как пользователь root выполнив команду:Выполним команду для расширения корневого раздела на все свободное пространство флешки:
На запрос системы на то, что будет изменен раздел, нажимаем y
После выполнения изменений перезагружаем наш мини сервер командой:После загрузки, подключаемся к серверу по SSH используя программу Filezilla и копируете образ ранее скачанный и разархивированный Lubuntu_1404_For_OrangePiplus_v0_9_0_.img в папку пользователя orangepi. Зайдя на сервер, на время настройки снова авторизируемся как root выполнив команду:
Приступаем к записи образа Lubuntu на EMMS.
Открываем файл /home/orangepi/burn-image-to-emmc/readme.txt и читаем инструкцию по заливке операционной системы из образа на EMMS:
В системе внешняя флешка видится как /dev/mmcblk0, а EMMS как /dev/mmcblk1
Так как ранее мы авторизировались как root, sudo перед командой нам вводить не нужно. Копируем скачанный образ Lubuntu на EMMS выполнив команду:
Перезагружаем плату выполнив команду:
Зайдя на сервер, на время настройки снова авторизируемся как пользователь root выполнив команду:
Запускаем запись загрузчика в EMMS выполнив команду:
Выключаем наш мини сервер выполнив команду:
Отключаем питание и вытаскиваем флешку, включаем питание на плате, должен загорется красный светодиод и через некоторое время линк на сетевой карте. Смотрим на роутере какой айпи выдало плате автоматически и подключаемся к серверу используя программу putty и логин orangepi с паролем orangepi
Авторизируемся как root и расширяем корневой раздел на все свободное место выполнив команду:
Перезагружаем сервер выполнив куоманду:
После этого если Вы используете данную плату как консольный сервер, удаляете графику, браузер итд. Если же используете как медиа центр, то подключайте монитор и проверяйте его в работе.
Минус этого первого способа в том, что если вы используете как сервер, то много хлама установлено с графикой, и как ни удалял, не получилось очистить на столько, как получается при установке чистого дистрибутива без графики. Но плюс, это при использовании как медиа устройство, меньше телодвижений, все должно работать из коробки.Вариант 2. Установка версии ОС от Loboris.
Хорошим человеком ]]> Loboris ]]> скомпилированы образы, разных операционных систем на одноплатники. Также подготовлены скрипты как по обновлению ядра, так и по установке необходимых графических систем на рабочий стол для использования как медиа устройства. Этот вариант мне лично нравится гораздо больше, так как устанавливается голая ось, и из потребностей доустанавливается то, что необходимо. Также гораздо практичнее и проще работает установка системы на EMMS.
Установку я буду делать на примере версии Debian Jessie, пробовал также и Debian Wheezy никаких отличий.
На странице ]]> Google Disk ]]> скачиваем образ Debian_jessie_mini.img.xz
Разархивируем скачанный образ и заливаем на флешку по примеру как в инструкции.
После заливки, в флешке на фат разделе можно увидеть список файлов для загрузки разных версий OrangePi:
Нам необходимо переименовать на примере для моей платы OrangrPi Plus:
Разрешение экрана выбирайте свое, я выбрал как в своем мониторе. После этого извлекаем флешку из компьютера и вставляем в плату, включаем, должен загорется красный светодиод, и через несколько секунд линк сетевой карты, если вы подключили сеть.
Смотрим на роутере какой айпи получила плата, заходим удаленно сети используя программу Putty введя логин orangepi и пароль orangepi
После авторизации на сервере, расширяем корневую файловую систему на все свободное пространство введя команду:
Перегружаем плату выполнив команду:
После загрузки снова подключаемся к плате, авторизируемся как root dsgjkybd команду:
и запускаем установку системы на встроенную EMMS память выполнив команду:
на запрос скрипта о том, что EMMS будет перезаписан нажимаем y
После установки Debian на флеш EMMS в мини сервер OrangePi, заходим на сервер используя программу putty, устанавливаем нужные программы и можем установить и запустить программу htop, увидеть загрузку и количество ядер, оперативной памяти и запущенные процессы:
Если Вы используете свою плату как мини сервер, то достаточно кстановить нужные Вам программы, настроить и плата будет работать тихо и незаметно.
Если Вам необходимо установить графическую систему, для использования как медиа сервера, Вам необхлодимо установить графическую систему. Loboris подготовил несколько скриптов по установке разных графических столов, запускаем нужный скрипт для установки выбранного Вами рабочего стола:
Единственный минус собранного ядра от Lobioris, это отключенный multiport для iptables, что накладывает ограничение на использование Fail2Ban, если Вы используете плату как сервер. Решение данной проблемы я выложу немного позже.
Сегодня мы установили Debian Jessie на одноплатный мини компьютер OrangePi Plus двумя вариантами, какой из них выбрать решать Вам.
Установить (записать) образ ОС для Orange Pi PC используя компьютер с Windows - очень просто. Для этого нам потребуется карта памяти MicroSD и последняя версия Win32Imager, скачайте, установите и запустите данную утилиту (образ желаемой ОС уже должен быть скачан и распакован из архива, итоговый файл должен быть с расширением .img).
В окне Win32 Disk Imager выберите файл образа, находящийся на Вашем диске и букву диска, которая соответствует карте памяти microSD на которую необходимо записать образ операционной системы и нажмите Write, а затем подтвердите запись на карту памяти нажатием Yes в окне подтверждения (будьте внимательны, этот процесс полностью удалит все данные с карты памяти).
Установка образа Linux из Mac OS
Запись образа из Mac OS будет выполнятся только при помощи встроенных системных утилит.
Проблемы
- Ошибка dd: invalid number '1m' - замените bs=1m на bs=1M в команде записи.
- Если команда записи все еще возвращает ошибку - попробуйте записывать напрямую в карту памяти, без /dev/rdisk2, просто в /dev/disk2
Установка образа Linux из Linux
Перед началом скачайте предпочитаемый образ ОС и распакуйте его из архива в удобное для Вас место (в примере этот файл будет на рабочем столе), а также подключите карту памяти microSD в кард-ридер компьютера.
- Нужно определить системный путь к карте памяти, выполните команду df -h. В левой колонке будут перечислены все диски примонтированные в данный момент, карта памяти будет иметь название похожее на одно из следующих /dev/mmcblk0p1 или /dev/sdс1. p1 или 1 это номер раздела на диске, а нам нужен сам диск, потому используем /dev/mmcblk0 или /dev/sdc
- Отмонтируйте все разделы карты памяти примонтированные в систему автоматически. В нашем случае только один раздел p1
- Приступаем к записи.
if= - Путь с образу ОС. То есть "то, что будем копировать".
of= - Путь к диску, место назначения. То есть - "то, куда будем копировать".
bs=4M - Размер блока данных (чем больше - тем быстрее запись). При ошибках записи понижайте это значение до 1M. - Выполните команду sync чтобы все данные из кэша были окончательно записаны на диск.
Установка образа Linux в eMMC (NAND)
Образы ОС Linux для Orange Pi построены таким образом, что они не могут быть записаны напрямую во внутреннюю память устройства (NAND), потому для установки ОС на eMMC чип придется сначала установить на карту памяти, запустить плату с microSD карты и встроенными в сборку ОС средствами перенести систему во внутреннюю память платы. Эта инструкция применима с платами Orange Pi Plus, Orange Pi Plus 2 и Orange Pi PC Plus.
В разных сборках ОС свои скрипты для переноса ОС во внутреннюю память, здесь мы упомянем все известные нам ОС и как их перенести в NAND.
Armbian
В ОС Armbian есть встроенная утилита (скрипт) nand-sata-install, при выполнении данной команды запустится интуитивный мастер переноса ОС во внутреннюю память устройства или подключенный SATA диск.
Сборки от loboris
- Установите ОС на карту памяти по инструкциям выше и запустите свой Orange Pi
- Выполните команду
- По окончанию процесса отключите питание и извлеките карту памяти из платы.
- Включите питание. Загрузка начнется из внутренней памяти платы.
Обратите внимание, если вы снова загрузите плату с картой памяти на которой записана рабочая ОС, загрузка будет произведена с карты памяти, так как она имеет высший приоритет над встроенной памятью, отформатируйте карту памяти перед использованием в качестве дополнительного хранилища.
Вы можете использовать файловую систему btrfs со сжатием "compress=lzo" что поможет сохранить до 40% дискового пространства. Для этого - переносите ОС такой командой
Перенос ОС из встроенной eMMC на microSD карту
- Запустите плату без подключенной microSD карты.
- После загрузки подключите карту памяти в слот
- Выполните команду
- Готово. Теперь у Вас 2 независимые копии ОС, во внутренней памяти и на microSD карте. microSD карту Вы можете запустить на любом другом Orange Pi.
Установка на USB флешку
Перенос и загрузка системы может осуществлятся так же с USB флешкой. Для этого в сборках ОС от loboris присутствует скрипт install_to_usb.
- Для запуска процесса выполните команду
/dev/sdXn - Путь к USB флешке, можно посмотреть командой df -h
btrfs - Если добавить этот параметр (не обязательный) флешка будет отформатирована в btrfs вместо ext4
noformat - При использовании данного параметра - USB флешка не будет отформатирована. Данные будут объединены. Используется для обновления резервной копии системы на USB диске. - По окончанию процесса копирования - перезагрузите плату, загрузка начнется с USB флешки.
Более детальные инструкции по этому процессу описаны в теме форума "Перенос системы Orange Pi на USB флешку".
Уже не раз замечал интерес к новой плате-клону всем известной Raspberry Pi от китайских энтузиастов из компании Xunlong под звучным названием Orange Pi PC. Прославилась она, в основном, своим неплохим «железом» (4-ядерный процессор Allwinner H3, 1Gb RAM и GPU Mali-400MP2 600MHz), наличием неплохого функционала (HDMI, AV, Ethernet, 3 USB, microUSB-OTG, инфракрасный порт для управления с пульта и GPIO-гребенка, по словам разработчиков, якобы «100% совместимая с Raspberry Pi), а главное — ЦЕНА. Создатели оценили свой девайс всего лишь в $15, ПЯТНАДЦАТЬ долларов, Карл! (скоро мы увидим, что это на самом деле весьма лукавое заявление, и конечный девайс стоит дороже).
Итак, давайте рассмотрим данную плату повнимательнее.
В рунете уже есть на нее обзоры, но все они представляли из себя нечто вида „установил андроид и подключил к телеку на кухне“. Я предлагаю взглянуть на плату с другой стороны, а именно — установить туда линукс, поюзать её как настоящий ПК, и даже немного поиграть.
Для тех, кому лень читать полностью, прорезюмирую:
Интересная штука, на данный момент вполне юзабельная, но имеется огромное количество огрехов и косяков, требующих допиливания напильником. Покупать только на свой страх и риск! Простому пользователю, рассчитывающему иметь готовое решение „из коробки“, я бы посоветовал обратить внимание на ТВ-боксы на базе Android или Windows. Продвинутому пользователю, знакомому с Linux, который не боится неизведанных челенджей в сыром продукте, и которому хотелось бы иметь неттоп для интернет-серфинга, работы с документами, программирования и скромных игр — must have! Особенно с учетом цены.
0. Предыстория. Немного о Raspberry Pi и его клонах
Raspberry Pi Model A, изображение из гуглаКогда в 2011 году создатели Raspberry Pi огласили на весь мир свои планы сделать миниатюрный (площадью примерно с пластиковую карту) и недорогой ($25) компьютер, весь мир компьютерных энтузиастов и гиков был в экстазе. Все только-только отходили от революции в домашней электронике „для Кузьмичей“, которую свершила Arduino со своей концепцией доступных и простых отладочных плат, а тут практически за те же деньги полноценный ПК на Linux!
Конечно, на ARM-процессоре от мобильного телефона с 256Мб оперативки особо не разгуляешься, но даже несмотря на все существовавшие ограничения, любители и гики пытались запускать на „малинке“ игры, серфили интернет, делали из нее всевозможные домашние серверы и, конечно, использовали в качестве „мозга“ во всевозможных DIY-проектах благодаря встроенному GPIO.
Но время шло. Несмотря на то, что первоначально Raspberry Pi задумывался как современный аналог BBC Micro — как простой, недорогой и всеми способами доступный компьютер для обучения школьников программированию и компьютерной науке, „малинка“ все же завоевала сердца простых обывателей, у которых были запросы более требовательные к железу, нежели интерпретатор Python'a и моргание светодиодом через GPIO. Гикам хотелось, чтобы их игрушка могла проигрывать качественные видео, запускать красивые 3D-игрушки и резво отрисовывать „тяжелые“ веб-страницы.
Поэтому в феврале 2015 создатели „малинки“ выпустили новую модель — Raspberry Pi 2. Тут уже был „полный фарш“ — процессор обзавелся 4 ядрами для распараллеливания „тяжелых“ задач и 1 гигабайтом оперативной памяти для облегчения жизни пользователей. Но было уже поздно.Пока производители Raspberry Pi медлили с выпуском новой версии, у них появилось множество „идейных последователей“, в том числе и из Китая, которые кинулись выпускать клоны Raspberry Pi, в целом преследуя одну и ту же цель — удовлетворить спрос массового пользователя на недорогие и мощные платы.
Так появился целый сонм различных альтернатив „малинке“ — ODROID, Banana Pi, PandaBoard, Сubieboard, BeagleBone и многие другие (более полный список можно увидеть здесь, здесь и здесь ). Одной из этих альтернатив стала плата Orange Pi — мини-пк на базе двухъядерного SoC Allwinner A20. Позднее ее производитель, китайская компания Xunlong, выпустила ее обновленую версию, Orange Pi 2 на базе четырехъядерного SoC Allwinner H3, кастрированной версией которой и является герой нашего обзора — Orange Pi PC.
Обошелся он мне в $18.52 с доставкой почтой Финляндии. Заказ был сделан 26 октября, а 17 ноября заказ был уже у меня (довольно быстро, особенно если учесть многочисленные предупреждения от продавца о том, что в связи с высоким спросом отправка может занять дольше обычного).
1. Комплектация и внешний вид
Минимальная комплектация: сама плата, коробка и инструкцияИтак, начнем с комплектации. Её нет. От слова совсем. Ведь я заказывал самую дешевую версию платы, без каких-либо ништяков. У продавца в наличии есть еще различные наборы — сама плата, блок питания, корпус из орг.стекла, радиатор, карточка памяти и т.д.
Я решил пойти самым спартанским путем, поэтому мне в дополнение к плате досталась лишь коробочка с плохенькой полиграфией, склеенная, по ощущениям, вручную, и мятая бумажка с какими-то увещеваниями на тему „не суйте пальцы в розетку“, видимо, необходимая для соответствия различным гос.требованиям США и ЕС.Рассмотрим плату со всех сторон:
На самой плате отчетливо выделяются:
— чип Allwinner H3 — не самый плохой, но Allwinner — контора все-таки довольно гнилая, уже ставшая печально известной своим нарушением открытых лицензий, а ее чипы — невыносимой прожорливостью слона и тепловыделением, сравнимым с небольшим вулканом. Единственным их преимуществом остается низкая цена, а это порождает вокруг чипов огромное коммьюнити (плодами которого, кстати, мы и будем пользоваться);
— два чипа оперативной памяти DDR3L Samsung K4B4G16460-HYKO по 512Mb каждый, дающие в сумме 1Gb RAM.С верхней стороны платы мы видим IR-приемник и гребенку GPIO. Кому интересно, вот распиновка:
С правой стороны мы видим 3 USB 2.0 разъема и порт Ethernet 10/100.
Снизу мы видим дурацкий нестандартный разъем питания (сделанный таким, видимо, для того, чтобы увеличить продажи кастомных блоков питания у производителя плат), гребенку для подключения UART (распиновка GND, RX, TX — все штырьки подписаны), полноценный HDMI-разъем, микрофон и разъем 3,5 для вывода на „колокольчики“.
Надо сказать пару слов про питание. В документации сказано, что плата очень прожорливая и требует твердых 5В и 2А от блока питания. Производитель платы продает к ней блоки питания на 5В и аж 3А (!), поэтому советую приобрести именно такой, на случай, если амперы в вашем блоке питания окажутся „китайскими“, иначе возможны „фризы“. С нестандартным разъемом бороться можно просто — плату можно запитать через шину GPIO: +5В подключаем на 2 или 4 пин, „землю“ на 6 пин.
С левой стороны мы имеем microUSB-OTG, разъем для подключения камеры (модуль камеры продается у производителя за безумные $8.76 с доставкой), непонятную кнопку (якобы „Power Switch“, но в Lubuntu он не работает). Так же под разъемом для камеры находится разъем для подключения MicroSD карт памяти.
Ну что ж, пока плата выглядит неплохо. Есть свои „специфические моменты“, но пока они выглядят терпимо, скажете вы… Но на самом деле, интересное еще впереди!
Что нужно сделать, прежде чем включать плату. Это важно!
Даже производитель не рекомендует работать с Orange Pi PC без радиатора! Без охлаждения чип греется до адских 70-80 градусов и выше, и в лучшем случае, это закончится троттлингом процессора, поочередным отключением ядер процессора и фризом, в худшем — процессор будет безнадежно сожжен! Конечно, это можно и обойти вас стороной, но я бы все же не стал рисковать.
Я заблаговременно приобрел мини-радиаторы для Raspberry Pi, выглядят они вот так:Стоят они доллар на алиэкспрессе, имеют самоклеющуюся поверхность и неплохо рассеивают тепло за свои деньги. Некоторые пользователи Orange Pi PC подключают активное охлаждение, кулеры и т.д., но я отказался от этого, ниже объясню почему.
Потом, как пишут на всех форумах, плата очень требовательна к скорости microSD карты! Рекомендуется брать карту со скоростью не ниже Class 10 UHS-1, иначе ни одна ОС приемлемо работать не будет, проверено на себе.
Последнее: если вы хотите использовать Wi-Fi, то учтите, встроенного wi-fi нет! Необходимо приобрести свисток, причем на определенном чипе. Умельцы запилили поддержку свистков на чипах Rtl8188cus, Rtl8192cu, Rtl8188eu/eus/etv, RT5370.
Ну и конечно, перед работой неплохо бы подготовить некоторую периферию: мышь, клавиатуру и так далее.
Помимо указанного свистка и мини-радиатора я использую переходник HDMI-VGA чтобы подключиться к обычному компьютерному монитору, переходник USB-PS/2, чтобы использовать старую компьютерную клавиатуру, USB-геймпад, MicroSD карточку class 10 uhs-1 LD 16Gb, приехавшую по акции с JD и чудо-мышь со встроенным MicroSD-кардридером и колонкой (!), подключенной во встроенную в мышь USB-звуковуху (!). Очень удобно.
Как мы видим, уже само требование наличия блока питания ($5), радиатора ($1), wi-fi ($4) и microsd-карточки ($5) уже делает плату значительно дороже первоначальных $15 и приближает по стоимости к дешевым Android ТВ-боксам. Тем не менее, если все это у вас уже было, то с покупкой платы вам не придется переплачивать за ненужные опции (к примеру, вместо WiFi можно прекрасно использовать встроенный Ethernet).
2. Устанавливаем ОС
Первым делом, нам понадобится программа Win32DiskImager, скачать ее можно на sourceforge. Потом, нам понадобится образ ОС. Я использую образ Lubuntu от Jacer, в котором полноценно работает GPU Mali-400 и GPIO через библиотеку WiringOP (порт с Banana Pi) — ссылка. После установки Win32DiskImager и загрузки образа ОС, открываем программу, выбираем там нужный файл с образом, удостоверяемся, что пишем его на нужную карту памяти и нажимаем Write:
После успешного завершения записи на карту, у вас от карты в системе будем виден лишь крохотный BOOT раздел FAT32. На него необходимо скинуть правильный script.bin и uImage. Скачиваем этот архив, извлекаем из него файлы script.bin и uImage и скидываем с перезаписью на нашу карту. После этого вставляем ее в наш девайс и подключаем к нему питание. Если вы все сделали правильно, то на плате загорится красный LED и начнет загружаться система.
После включения система потребует ввести имя и пароль.
Имя пользователя — orangepi
Пароль — orangepiНе забудьте открыть окно терминала (ctrl+alt+T) и ввести sudo fs_resize, чтобы „подогнать“ разметку диска в системе под размер вашей карточки.
3. Фиксим оверкерлокинг
Теперь очередная „особенность“ этой платы, а точнее — свинья, подсунутая производителем. Две основные проблемы, с которыми сталкиваются пользователи — перегрев процессора (а также связанный с ним троттлинг, отключение ядер, зависание плат» и просадки вольтажа (которые тоже вызывают зависания) имеют общие корни:
Для того, чтобы прорекламировать свою плату как «самую мощную, мощнее чем Raspberry Pi», производитель плат Xunlong зарядил дефолтный клокинг ядер ЦПУ на 1536 МГц, что является номинальным «верхним потолком» по документации на чип, но даже сам производитель не рекомендовал использовать его на этой частоте, предупреждая о проблемах с перегревом.
Мне лично вполне хватает плавающего клокинга на 480-1200МГц, в зависимости от задач, поэтому рекомендую накатить следующий скрипт (за него и за всю исследовательскую работу спасибо юзеру bronco с офиц. форума):
if [ "$(id -u)" != «0» ]; then
echo «This script must be executed as root. Exiting» >&2
exit 1
fiFex2Bin="$(which fex2bin)"
if [ «X$» = «X» ]; then
apt-get -f -q -y install sunxi-tools
fiPath2ScriptBin="$(df | awk -F" " '/^\/dev\/mmcblk0p1/ ')"
if [! -f "$/script.bin" ]; then
echo «Can not find script.bin. Ensure boot partition is mounted» >&2
exit 1
fiMyTmpFile="$(mktemp /tmp/$.XXXXXX)"
trap «rm \»$\"; exit 0" 0 1 2 3 15bin2fex <"$/script.bin" | grep -v "^LV" | grep -v "^max_freq" | grep -v "^min_freq" | grep -v "^extremity_freq" >"$"
if [ $? -ne 0 ]; then
echo «Could not convert script.bin to fex. Exiting» >&2
exit 1
fi
cp -p "$/script.bin" "$/script.bin.bak"sed -i '/\[dvfs_table\]/a \
extremity_freq = 1296000000\
max_freq = 1200000000\
min_freq = 480000000\
LV_count = 7\
LV1_freq = 1296000000\
LV1_volt = 1320\
LV2_freq = 1200000000\
LV2_volt = 1240\
LV3_freq = 1104000000\
LV3_volt = 1180\
LV4_freq = 1008000000\
LV4_volt = 1140\
LV5_freq = 960000000\
LV5_volt = 1080\
LV6_freq = 816000000\
LV6_volt = 1020\
LV7_freq = 480000000\
LV7_volt = 980' "$"fex2bin "$" "$/script.bin" >/dev/null
if [ $? -ne 0 ]; then
mv "$/script.bin.bak" "$/script.bin"
echo «Writing script.bin went wrong. Nothing changed» >&2
exit 1
fiecho «Successfully repaired broken overvolting/overclocking settings. Reboot necessary for changes to take effect»
Скопируйте и сохраните этот скрипт как fix.sh в домашней директории, после чего откройте терминал и выполните:
chmod +x fix.sh
sudo ./fix.sh
sudo rebootПосле перезагрузки у вас окажется стабильная и холодная машинка, которой вполне будет хватать минимального пассивного охлаждения.
4. Тест-драйв
Не знаю, что еще можно дельного сказать на этом этапе. По месячному опыту использования платы с нормальным клокингом и поддержкой GPU, могу сказать, что устройство вполне может заменить неттоп на одно/двухъядерном атоме.
LibreOffice отлично и шустро работает
Chromium работает как полноценный настольный браузер
Youtube-плагин для SMPlayer шустро переваривает и 720р, и 1080р потоковое видео (в предустановленном Chromium поддержки аппаратного декодирования пока нет)
Можно даже попрограммировать в Eclipse или в Code::blocks!4к видео я тоже проверял, играет вроде нормально, но не без шероховатостей. Смысла пока в нем не вижу, 1080р хватает за глаза.
GPIO вроде как работает, поморгал светодиодом, дальше не стал разбираться, может когда-нибудь руки и дойдут.
Отдельная тема — это игры, как же без них? Предлагаю оценить производительность в классике компьютерных игр, которая имеется под Linux — Quake 3 Arena.
ln -s /usr/include/khronos/GLES /usr/include/GLES
cp /usr/include/khronos/EGL/* /usr/include/khronos/GLES1. Клонируем исходный код:
2. Переходим в папку:
make -j5 ARCH=arm
4. Переносим папочку чтоб было аккуратно:
5. Кладем файлики игры pk*.pk3 (можно найти на диске с оригинальной игрой) в папку
6. Запускаем файл ioquake3-smp.arm.
Результат на видео:
От себя: идет идеально, по крайней мере я никаких глюков не заметил. Ребята молодцы, хорошо постарались, когда портировали драйвер GPU Mali под линукс!
Еще немного демонстрации графических/игровых способностей:
Orange Pi PC: Reicast - Dreamcast emulator - Sonic Adventure 2В целом я покупкой весьма доволен. За относительно небольшие деньги я вдоволь наигрался с линуксом и получил мини-ПК, способный эмулировать старые консоли, играть игры, серфить интернет с комфортом на 10+ вкладках полноценного браузера и играть видео с ютьюба.Что еще для счастья надо? В будущем планирую задействовать железку в каком-нибудь проекте DIY с использованием библиотеки компьютерного зрения OpenCV, благо в отличие от ардуины у нее хватит ресурсов на обработку видео.
Кому я категорически НЕ порекомендовал бы брать эту железяку:
— тем, кто на «Вы» с линуксом;
— тем, кто хочет готовое решение «из коробки»;
— тем, у кого мало свободного времени и плохо с английским для чтения форумов;
— тем, кому нужна возможность поставить Windows;
— тем, кому нужна хорошая поддержка коммьюнити, уровня Raspberry Pi и Arduino;
— тем, кому надо побольше ядер и оперативки непонятно зачем.5. Вместо послесловия
На волне нового «тренда» производителей плат мини-пк выпускать ультра-дешевые изделия (C.H.I.P за $9, Raspberry Pi Zero за $5), создатели «апельсинки» Xunlong объявили о новом своем продукте: Orange Pi ONE и Orange Pi Lite (ссылка на официальный форум).
Новинка будет стоить $12 и $9.99 и размером будет меньше кредитной карты. Версия за 9,99 долларов, судя по анонсу, будет почти идентична герою обзора, но будет иметь лишь 512Mb RAM и 1 USB-порт (плюс один microUSB хост). Конечно, не разгуляешься, но должен признать, что это выглядит гораздо интригующе, чем 1-ядерные старенькие чипы на CHIP и RPi Zero.
Надеюсь лишь только, что вместе с выпуском плат Xunlong начнет, наконец, оказывать пользователям и сообществу нормальную поддержку в плане допиливания софта.
Читайте также: