72 заметки с тегом

OrangePI PC

Ctrl + ↑ Позднее

LMS on the OrangePI (Armbian Ubuntu xenial)

Logitech Media Server (LMS) Ставил на Armbian_5.25_Orangepipc_Ubuntu_xenial_default_3.4.113_desktop

apt-get update && apt-get upgrade -y

Ночные сборки Logitech Media Server: Debian Installer Package (ARM)
http://downloads.slimdevices.com/nightly/?ver=7.9

последнюю сборку можно установить автоматом выполнив скрипт в терминале:

latest_lms=$(wget -q -O - "http://www.mysqueezebox.com/update/?version=7.9.2&revision=1&geturl=1&os=deb")
mkdir -p /tmp/sources && cd /tmp/sources
wget $latest_lms
lms_deb=$(echo $latest_lms|cut -d "/" -f8)
dpkg -i $lms_deb
service logitechmediaserver stop
wget http://ua3nbw.ru/files/deb/CPAN.tar.gz
tar -xzvf CPAN.tar.gz -C /usr/share/squeezeboxserver

в файл /etc/rc.local вставляем строку:


chown -R squeezeboxserver:nogroup /var/log/squeezeboxserver


запуск сервера:

chown -R squeezeboxserver:nogroup /var/log/squeezeboxserver
service logitechmediaserver start

рулим сервером: http://Ip_вашей_OrPI:9000/

squeezelite для Ubuntu

Аудио плеер squeezelite с дополнительными опциями — поддержка ffmpeg, lirc, DSD over PCM (DoP).

встроена опция -S Absolute path to script to launch on power commands from LMS
для вкл/выкл плеера в LMS. Что-бы включать выключать усилитель мощности.

wget http://ua3nbw.ru/files/deb/squeezelite_ubuntu.tar.gz
tar xzvf squeezelite_ubuntu.tar.gz
mv squeezelite /usr/bin
mv gpiopower.sh /usr/local/bin
apt install libflac8 libmad0 libvorbisfile3 libfaad2 libmpg123-0 libavcodec-ffmpeg56 libavformat-ffmpeg56

запуск плеера с опцией S

squeezelite -o hw:CARD=audiocodec,DEV=0 -S /usr/local/bin/gpiopower.sh

редактируя скрипт gpiopower.sh , можно менять GPIO_OUT.
по умолчанию используется 28 нога гребёнки.
логическая единица на этом gpio — сигнал выключения усилителя.

Тут про установку squeezelite на debian Аудио плеер squeezelite с дополнительными опциями.

2017   armbian   Logitech Media Server   OrangePI PC

Кусок блокнота(8)

Мультик по телнету

apt install telnet
telnet towel.blinkenlights.nl

Дата сборки имиджа вашего armbian

cat /etc/armbian.txt  | grep Build

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

echo '%CPU %MEM   PID COMMAND' && ps hgaxo %cpu,%mem,pid,comm | sort -nrk1 | head -n 10

Чиним sources.list в любой Ubuntu

1.Заходим на сайт repogen.simplylinux.ch;
2.Выбираем страну (надо только для выбора сервера, поэтому можно и не выбирать);
3.Выбираем свой дистрибутив (а вот это надо);
4.Ставим галочки на все, что хотим. Тут рекомендую загалить все, что не “3rd Parties Repos”;
5.Посмотреть на список “3rd Parties Repos”, и выбрать свои любимые софтины;
6.Нажать на пимпу “Generate List”.

Вам будет сгенерирован файл sources.list для вашего дистриба со всеми необходимыми репами.
для дистрибутивов Debian https://debgen.simplylinux.ch/


If someone also does not want to create a secondary account just paste this in the console.
more information at /etc/profile.d/check_first_login.sh

rm -f "$HOME/.not_logged_in_yet"

.” Чем больше у меня проблем, тем лучше мои песни “
— Фредди Меркьюри

Свежие посты сместили “живое радио” Фредди Меркьюри

2017   armbian   OrangePI PC   блокнот

Kodi 18 alpha and mpv with Hardware Decoding

Проектом MPV ведётся разработка открытого видеоплеера, построенного на основе ответвления от кодовой базы MPlayer2.
Тестировал на OrangePi PC с armbian “Ubuntu Xenial Legacy 3.4.113 Desktop”, карта 4Gb.
прямая ссылка на имидж armbian для OrangePi PC https://dl.armbian.com/orangepipc/Ubuntu_xenial_default_desktop.7z
после установки системы проверим встроенный плеер mpv, в PyTTY вводим:

DISPLAY=:0 mpv --vo=vdpau --hwdec=vdpau --hwdec-codecs=all --fs  http://ow.ly/10tB0C

Наблюдаем на мониторе, что Big Buck Bunny бегает шустро и в другом терминале htop не зашкаливает нагрузка на ядра процессора, значит Hardware Decoding работает и можно прикрутить MPV в качестве внешнего плеера к Kodi.

apt-get update && apt-get upgrade -y
apt install libpcrecpp0v5 libtag1v5-vanilla libtinyxml2.6.2v5 libmicrohttpd10 libssh-4 libva-drm1

Ставим драйвер mali с поддержкой фреймбуфера

wget http://ua3nbw.ru/files/deb/libmali_f.tar.gz
tar -xzvf libmali_f.tar.gz -C /

и пакет Kodi 18 alfa, с предыдущего поста Kodi 18 alfa на OrangePI PC 

wget http://ua3nbw.ru/files/deb/kodi_201704072156-git-1_armhf.deb
dpkg -i kodi_201704072156-git-1_armhf.deb
reboot

тут интересный момент, даже два, у меня иногда OrangePiPC в этот момент команду reboot воспринимает, как poweroff.
очевидное решение передёрнуть питание и второй момент – коди не запускается, если не инсталлировать какой-нибудь пакет, ну эти пакеты нам необходимы:

apt -y install mesa-utils libx11-dev libxext-dev xutils-dev libdrm-dev x11proto-xf86dri-dev libxfixes-dev libcurl3 x11proto-dri2-dev xorg-dev xutils-dev libltdl-dev libtool

ну и запуск kodi:

DISPLAY=:0 kodi

Выходим из kodi: в терминале CTR+C
Быстрая проверка :

DISPLAY=:0 kodi http://ow.ly/10tB0C

Смотрим загрузку CPU и растущую температуру и жмакаем CTR+C, а то перегреется.

Тут про подключение внешнего плеера : External players
для теста создаю файл playercorefactory.xml в /root/.kodi/userdata :

<playercorefactory>
 <players>
  <player name="mpv" type="ExternalPlayer" video="true">
   <filename>mpv</filename>
   <args>--vo=vdpau --hwdec=vdpau --hwdec-codecs=all --fs --sub-auto=all</args>
   <hidexbmc>false</hidexbmc>
   <hideconsole>false</hideconsole>
   <warpcursor>none</warpcursor>
  </player>
 </players>
 <rules action="prepend">
  <rule video="true" player="mpv"/>
 </rules>
</playercorefactory>

перезагружаем kodi и

DISPLAY=:0 kodi http://ow.ly/10tB0C

ну и утки взлетают (файл можно найти в инете)
Ducks.Take.Off.1080p.QHD.CRF25.x264-CtrlHD.mkv

Profit!
Запуск kodi из терминала:

DISPLAY=:0 kodi

Да, коди запускает видео with Hardware Decoding на внешнем плеере, но рулить внешним плеером, пока не удаётся (фокус не передаётся на внешний плеер ), выслушаю ваши мнения в комментариях , возможно решение на поверхности. Спасибо.

2017   armbian   MPV   OrangePI PC

Kodi 18 alpha на OrangePI PC

Без особых проблем собрал пакет «Kodi 18 Leia» на orange pi pc с поддержкой OpenGL ES 2.0.
ffmpeg поддерживает h.265 и h.265 video codec, но для коди это фиалетово, правда можно подключить внешние плеера , у меня работали mplayer и mpv. На Raspberry Pi, тоже используют с kodi внешний плеер, правда все плеера используют исходники ffmpeg.

По сравнению с Kodi 17.1-Krypton, интерфейс у альфы «Kodi 18 Leia» показался полегче . Ну ещё был интерес вставить “ simple PVR tv addon” , ну и звук поправить. после установки аудио идет с HDMI разъёма. CPU temp показывает корректно и т. д. патч от jernej для сборки kodi17 сработал.

Устанавливаем Armbian Ubuntu Server OrangePI PC Armbian_5.25_Orangepipc_Ubuntu_xenial_default_3.4.113.img

Обращаю ваше внимание, все команды я выполняю от root’а на терминале PuTTY .
Если вставили карту, первый раз после записи имиджа,
создайте пароль и нового пользователя, перезагрузитесь и подождите несколько минут для снятия lock.
Немного упростил установку, можно поставить на карту 2Gb:

install required libraries :

apt-get update 
apt -y install mesa-utils libx11-dev libxext-dev xutils-dev libdrm-dev x11proto-xf86dri-dev libxfixes-dev libpcrecpp0v5 libtinyxml2.6.2v5 libpython2.7 libyajl2 libtag1v5-vanilla liblcms2-2 libmicrohttpd10 libssh-4 libxslt1.1 libsmbclient libpulse0 libvdpau1 libva1 libva-drm1 libva-x11-1 libump libdri2-1 libcurl3 x11proto-dri2-dev libfreetype6  xorg-dev xutils-dev libltdl-dev libtool libcdio13

install mali driver и Kodi 18 alfa

mkdir /tmp/kodi_install && cd /tmp/kodi_install
wget http://ua3nbw.ru/files/deb/libmali_f.tar.gz
tar -xzvf libmali_f.tar.gz -C /
wget http://ua3nbw.ru/files/deb/libk_201704072156-git-1_armhf.deb
wget http://ua3nbw.ru/files/deb/kodi_201704072156-git-1_armhf.deb
dpkg -i *.deb

если монитор или телевизор с поддержкой 1080, можно:

h3disp -m 1080p60

и reboot

reboot

ну и запуск:

echo 0 > /sys/class/graphics/fbcon/cursor_blink
kodi
Собирал с опциями:
cmake ..  -DENABLE_OPENGL=OFF -DENABLE_X11=OFF -DENABLE_OPENGLES=ON -DENABLE_VAAPI=OFF -DENABLE_VDPAU=OFF -DENABLE_CEC=OFF -DCPU=cortex-a7 -DWITH_ARCH=arm -DCORE_SYSTEM_NAME=linux  -DLIRC_DEVICE=/run/lirc/lircd

переключить аудио с HDMI на AV можно с помощью файла .asoundrc в директории root.
внешний плеер подключается так : http://kodi.wiki/view/external%20players
пример файла playercorefactory.xml для mpv

<playercorefactory>
<players>
<player name="mpv" type="ExternalPlayer" video="true">
<filename>mpv</filename>
<args>--vo=vdpau --hwdec=vdpau --hwdec-codecs=all --fs --sub-auto=all</args>
<hidexbmc>false</hidexbmc>
<hideconsole>false</hideconsole>
<warpcursor>none</warpcursor>
</player>
</players>
<rules action="prepend">
<rule video="true" player="mpv"/>
</rules>
</playercorefactory>

Ложка дегтя к внешним плеерам, mpv с fbdev не работает (с X неплохо работает), но есть патч для mpv на гите последнее обновление 15 года, для новых версий этот патч не поддерживается. ffmpay тоже в сторонке, mplayer работает, но внутренний плеер kodi, не хуже.
Попробую mpv c simple directMedia layer. Склоняюсь использовать софт, не применяя крайне необходимых патчей. У jernej, ну очень много патчей под определенную версию. Естественно при выходе , допустим свежей и обновленной версии kodi, снова тема на примерно 200 страниц http://www.orangepi.org/orangepibbsen/forum.php?mod=viewthread&tid=648&extra=page%3D1.

Да в пост добавлю: имидж alfa( как есть, так и есть ) Kodi 18 alfa на OrangePI PC
https://drive.google.com/file/d/0B3COWn8ZF1MBN05lZ28wX1dnWW8/view?usp=sharing
pass:orangepi

2017   armbian   Kodi   OrangePI PC

Кусок блокнота(7)


Включить SPI на сборках с 4.4.x ядром можно поместив код в /boot/armbienEnv.txt :

overlays=sun8i-h3-spi0-spidev

На сборках с 26.03.2017 можно включить PWM на PA5 поместив код в /boot/armbienEnv.txt :

overlays=pwm

Пример использования:

set duty cycle to 1us, period to 2us

echo 1000 > /sys/class/pwm/pwmchip0/pwm0/duty_cycle
echo 2000 > /sys/class/pwm/pwmchip0/pwm0/period

Обновиться с jessie на stretch можно так:

sed -i 's/jessie/stretch/g' /etc/apt/sources.list
apt-get update
apt-get dist-upgrade -o Dpkg::Options::="--force-confold"
cat /etc/debian_version
9.0

Полезная утилита pastebinit

apt install pastebinit

примеры использования:

dmesg | pastebinit

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


Свежие посты сместили “живое радио” Фредди Меркьюри

2017   armbian   OrangePI PC   блокнот

Аудио плеер squeezelite с дополнительными опциями.

Дополнение для Logitech Media Server (LMS) on the OrangePI PC
Собрал squeezelite с гита: squeezelite
с опциями: LINUX ALSA EVENTFD RESAMPLE FFMPEG VISEXPORT IR GPIO DSD LINKALL

поддержка ffmpeg, lirc, DSD over PCM (DoP).
встроена опция -S Absolute path to script to launch on power commands from LMS
для вкл/выкл плеера в LMS. Что-бы включать выключать усилитель мощности.
по умолчанию используется 28 нога гребёнки.
тестировал на

uname -a
Linux orangepipc 3.4.113-sun8i #10 SMP PREEMPT Thu Feb 23 19:55:00 CET 2017 armv7l GNU/Linux

Установка плеера squeezelite:

apt upgrade
apt install ffmpeg libmad0 libvorbisfile3 libfaad2  libmpg123-0 libavcodec56  libavformat56  liblircclient0 
wget http://ua3nbw.ru/files/squeezelite-armv6hf.tar.gz
tar xzvf squeezelite-armv6hf.tar.gz
mv squeezelite-armv6hf /usr/bin
mv gpiopower.sh /usr/local/bin

запуск плеера с опцией S

squeezelite-armv6hf -o hw:CARD=audiocodec,DEV=0 -S /usr/local/bin/gpiopower.sh

редактируя скрипт gpiopower.sh , можно менять GPIO_OUT.
логическая единица на этом gpio – сигнал выключения усилителя.

2017   armbian   ffmpeg   GPIO   Logitech Media Server   OrangePI PC

Установка OpenELEC chroot на Armbian

OpenELEC работает очень хорошо и стабильно, но дистрибутив OpenELEC весьма ограничен. Ну и запустим его в chroot, и будем рулить системой как на обычной Armbian.

chroot — операция изменения корневого каталога в Unix-подобных операционных системах. Программа, запущенная с изменённым корневым каталогом, будет иметь доступ только к файлам, содержащимся в данном каталоге. Изменение корня это процесс изменения видимой на диске корневой директории (и текущего запуска процессов) на другую корневую директорию. Когда вы изменили корневую директорию на другую, вы больше не имеете доступа к файлам и командам за пределами этой директории.
-- источник
тестировал на debian server
Linux orangepipc 3.4.113 #1 SMP PREEMPT Tue Feb 21 19:21:53 CET 2017 armv7l GNU/Linux
как обычно через WinSCP Обновим систему:

apt-get update && apt-get upgrade -y
apt install pulseaudio
h3disp -m 1080p60
reboot

Качаем и распаковываем файлы OpenELEC:

wget https://down.nu/updates/OpenELEC-H3.arm-7.0-devel-20170221190834-r23330-g94644893c.tar
tar -xf OpenELEC-H3.arm-7.0-devel-*.tar
tail -c+65 < OpenELEC-H3.arm-7.0-devel-*/target/KERNEL > /boot/vmlinuz-openelec

Переносим openelec-root в /opt, создаем точку монтирования и симлинк для загрузки ядра OpenELEC:

mv OpenELEC-H3.arm-7.0-devel-*/target/SYSTEM /opt/openelec-root
mkdir /opt/openelec
cd /boot
rm zImage
ln -s vmlinuz-openelec zImage

Создаем домашнюю директорию, и скрипт запуска kodi в chroot окружении:

mkdir /storage
nano /storage/start.sh

вставляем:


mount -t devtmpfs /dev /dev
mount -t proc /proc /proc
mount -t sysfs /sys /sys

modprobe mali

mkdir /run/connman/
echo "nameserver 8.8.8.8" > /run/connman/resolv.conf

export HOME=/storage
/usr/lib/kodi/kodi.sh --standalone -fs &

Создаем скрипт запуска chroot:

nano /root/kodi-start.sh

вставляем:


mount -o loop /opt/openelec-root /opt/openelec
mount -o bind /storage /opt/openelec/storage
mount -o bind /var /opt/openelec/var
mount -o bind /run /opt/openelec/run

pulseaudio --system --daemonize

chroot /opt/openelec/ /storage/start.sh

Даём права скриптам на запуск:

chmod +x /storage/start.sh
chmod +x /root/kodi-start.sh
reboot

Для запуска после перезагрузки:

nano /etc/rc.local

вставляем:


# disable console cursor blinking
echo 0 > /sys/class/graphics/fbcon/cursor_blink

/root/kodi-start.sh &

exit 0

2017   armbian   chroot   OpenELEC   OrangePI PC

Прошивка логического анализатора на микроконтроллере CY7C68013A.

Прошиваем на OrangePi. Тестировал на armbian.

uname -a
Linux orangepipc 3.4.113-sun8i #28 SMP PREEMPT Thu Feb 2 02:01:28 CET 2017 armv7l GNU/Linux

Я использовал плату LCSOFT CY7C68013A mini board

Сердце платы – микроконтроллер CY7C68013A из семейства EZ-USB FX2LP фирмы Cypress. Способен поддерживать высокоскоростной обмен данными по стандарту USB. На базе ядра 8051, собственной памяти программ не имеет, здесь только RAM.
Прошивка хранится во внешней памяти, при включении микроконтроллер проверяет наличие микросхемы памяти, если она есть – грузит из нее программу в свое ОЗУ. В противном случае, пустую внешнюю память можно сначала “прошить”, а потом уже работать с этой прошивкой, тогда микроконтроллер выступает в качестве программатора, для этого у Cypress есть специальное ПО.
apt-get install fxload sdcc
wget http://www.triplespark.net/elec/periph/USB-FX2/eeprom/fxload-full-2008_10_13-ww3.tar.gz
tar -zxvf fxload-full-2008_10_13-ww3.tar.gz
cd fxload-2008_10_13
make
git clone git://sigrok.org/sigrok-firmware-fx2lafw
cd sigrok-firmware-fx2lafw
./autogen.sh
./configure
make
cd ..

в папке /root/fxload-2008_10_13/sigrok-firmware-fx2lafw/hw смотрим в какие устройства можем прошить наш клон.
ну например, в saleae.
копируем fx2lafw-saleae-logic.ihx в рабочую директорию:

cp /root/fxload-2008_10_13/sigrok-firmware-fx2lafw/hw/saleae-logic/fx2lafw-saleae-logic.ihx  /root/fxload-2008_10_13

Подключаем плату с вставленной адресной перемычкой, команда lsusb

lsusb
[...]
Bus 004 Device 004: ID 04b4:8613 Cypress Semiconductor Corp. CY7C68013 EZ-USB FX2 USB 2.0 Development Kit
[...]

видим: Bus 004 Device 004, прошиваем eeprom:

./fxload -D /dev/bus/usb/004/004 -I fx2lafw-saleae-logic.ihx -c 0x01 -s Vend_Ax.hex -t fx2

Перед прошивкой можно очистить EEPROM командой:

./fxload -D /dev/bus/usb/004/004 -E -s Vend_Ax.hex -t fx2lp -v

передернув плату , команда lsusb выдает:

lsusb
[...]
Bus 004 Device 005: ID 0925:3881 Lakeview Research Saleae Logic
[...]

Аналогично прошивается в braintechnology-usb-lps, usbeezx,dx,sx, cypress-fx2, hantek-6022be,bl, sainsmart-dds120, sigrok-fx2-16ch

2017   armbian   CY7C68013A   OrangePI PC

Прошивка AVR микроконтроллеров с помощью Orange Pi

AVRDUDE  – мощная программа для прошивки микроконтроллеров Atmel серии AVR. Разработчик Brian S. Dean. Программа поддерживает множество программаторов. AVRDUDE кросплатформенная.

apt-get install bison flex
git clone https://github.com/kcuzner/avrdude
cd ./avrdude/avrdude
./bootstrap
./configure --prefix=/usr
make
sudo make install

После инсталляции avrdude посмотрим что он умеет:

avrdude -c ?type

В списке программаторов должны увидеть linuxspi – это то, что нам нужно.

Подключаем микроконтроллер к Orange Pi по следующей схеме:

в файле /usr/etc/avrdude.conf
меняем строку reset = 25; на reset = 19;
Используя библиотеку WiringOtherPi и команду gpio readiall вывод reset можно заменить на любой другой, смотрим в столбце BCM.

читаем Flash и пишем в файл dump.hex

avrdude -p m328p -c linuxspi -P /dev/spidev0.0  -U flash:r:dump.hex:i

выполняем сравнение (верификацию) Flash памяти с указанным hex файлом

avrdude -p m328p -c linuxspi -P /dev/spidev0.0  -U flash:v:dump.hex

Подробнее о AVRDUDE и примеры использования можно найти здесь AVRDUDE Windows, или в документации AVRDUDE – AVR Downloader/UploaDEr.

2017   armbian   AVRDUDE   OrangePI PC   SPI

Дисплей HD4478 на OrangePi

HD44780 (а также совместимый с ним KS0066) — контроллер монохромных жидкокристаллических знакосинтезирующих дисплеев с параллельным 4- или 8-битным интерфейсом. Разработан фирмой Hitachi. Управляющий интерфейс и протокол являются де-факто стандартом для такого типа дисплеев.


Типовой 14-пиновый интерфейс дисплеев на HD44780:

Подача питания подсветки может различаться от модели к модели в зависимости от её типа. Обычно подсветка питается от 5 вольт, токоограничительный резистор (50-100 Ом) обычно обязателен.

Дисплей может работать в 4- или 8-битном режимах. В первом случае ножки с седьмой по десятую не используются, а данные передаются через 11-14 ножки, по четыре бита за такт (старший полубайт, затем младший полубайт).


У меня оказался дисплей LMB162ABC-1, с питанием 3.3 v, он не требует дополнительной обвязки.


Используем библиотеку WiringOtherPi
ставим WiringOtherPi :

git clone https://github.com/lanefu/WiringOtherPi.git
cd WiringOtherPi
sudo ./build
cd ..

подключаем дисплей и тестируем

cd /root/WiringOtherPi/examples
nano lcd.c

Меняем строку lcdHandle = lcdInit (rows, cols, 4, 11,10, 4,5,6,7,0,0,0,0) ;
на lcdHandle = lcdInit (rows, cols, 4, 30,21, 22,23,24,25,0,0,0,0) ;


соответствие выводов подключения можно посмотреть командой gpio readall столбец: wPi

make lcd
./lcd 4 16 2
2017   armbian   GPIO   HD4478   OrangePI PC
Ctrl + ↓ Ранее