Конечно можно.point5217 писал(а):У кого какие мысли, на этот счет ?
LinuxCNC + Orange Pi (allwincnc)
-
wzor
- Кандидат
- Сообщения: 88
- Зарегистрирован: 27 сен 2014, 09:21
- Репутация: 12
- Настоящее имя: NO
- Контактная информация:
Re: LinuxCNC + Orange Pi
- technican
- Новичок
- Сообщения: 8
- Зарегистрирован: 03 апр 2020, 13:35
- Репутация: 1
- Настоящее имя: Денис
- Откуда: Владивосток
- Контактная информация:
Re: LinuxCNC + Orange Pi
Да, заценил проект. Даже купил под это дело Orange PI PC на H3 проце.
Очень все круто, скачал, поставил армбиан buster, даже все запустилось (правда на удаленный X сервер, монитора лишнего нету). Но вот чото не хочет работать arisc модуль. Ну как не хочет: на запись утилита для командной строки говорит OK, а вот чтение - подвисает и не отвечает. LinuxCNC тоже говорит USRMOT: command timeout. Хотя GPIO кусок драйвера работает не хуже чем Atom D425, судя по латенси-тесту.
Куда копать ума не приложу, логов особо нет, в syslog ничего, в messages ничего. Даже в dmesg ничего... тулчейн хотел стравить для компиляции arisc прошивки, поотлаживаться, а он чет качается уже часов 10, скорости нет совсем...
Короче, респект и уважуха за труд, если всё получится хотя бы на коленке запустить, то чем-нить готов помочь проекту в части материальной, да и в части как прогер кое-что могу.
Очень все круто, скачал, поставил армбиан buster, даже все запустилось (правда на удаленный X сервер, монитора лишнего нету). Но вот чото не хочет работать arisc модуль. Ну как не хочет: на запись утилита для командной строки говорит OK, а вот чтение - подвисает и не отвечает. LinuxCNC тоже говорит USRMOT: command timeout. Хотя GPIO кусок драйвера работает не хуже чем Atom D425, судя по латенси-тесту.
Куда копать ума не приложу, логов особо нет, в syslog ничего, в messages ничего. Даже в dmesg ничего... тулчейн хотел стравить для компиляции arisc прошивки, поотлаживаться, а он чет качается уже часов 10, скорости нет совсем...
Короче, респект и уважуха за труд, если всё получится хотя бы на коленке запустить, то чем-нить готов помочь проекту в части материальной, да и в части как прогер кое-что могу.
- MX_Master
- Мастер
- Сообщения: 7488
- Зарегистрирован: 27 июн 2015, 19:45
- Репутация: 3113
- Настоящее имя: Михаил
- Откуда: Алматы
- Контактная информация:
Re: LinuxCNC + Orange Pi
Если долго отчечает, значит, прошивка сопроцессора ваще не пашет в этот момент. Прошивку заливает в память и запускает скрипт для uboot. Скрипт и прошивка должны лежать в папке /boot. Если их там нет, то всё понятно. А вот если они туда только что скопированы, то всё заработает только после перезагрузки. Маркером успешного запуска сопроцессора являются строки со словом ARISC в выводе при старте мини ПК.
- technican
- Новичок
- Сообщения: 8
- Зарегистрирован: 03 апр 2020, 13:35
- Репутация: 1
- Настоящее имя: Денис
- Откуда: Владивосток
- Контактная информация:
Re: LinuxCNC + Orange Pi
Да, у меня первая мысль была что скрипт не выполнился и прога не загрузилась в сопроц, но нет, подключил монитор специально к ней и увидел, что все что залито в /boot - скрипт загрузки выполняется, при uboot выводит как будто все ок.MX_Master писал(а):Маркером успешного запуска сопроцессора являются строки со словом ARISC в выводе при старте мини ПК.
Отсюда и вопрос куда копать?
Скачал тулчейн, пересобрал прошивку, пока без результата. Такое ощущение, что несмотря на сообщения об успешной загрузке она не подхватывается и не загружается в сопроц.
- MX_Master
- Мастер
- Сообщения: 7488
- Зарегистрирован: 27 июн 2015, 19:45
- Репутация: 3113
- Настоящее имя: Михаил
- Откуда: Алматы
- Контактная информация:
Re: LinuxCNC + Orange Pi
Видимо, в последних правках я таки шо то сломал (: Ща исправлю..
- technican
- Новичок
- Сообщения: 8
- Зарегистрирован: 03 апр 2020, 13:35
- Репутация: 1
- Настоящее имя: Денис
- Откуда: Владивосток
- Контактная информация:
Re: LinuxCNC + Orange Pi
Брал все с ветки master. А может есть заведомо работающий бинарник прошивки и драйвера arisc для linuxcnc? Ну чтобы проверить что это не у меня что-то не так настроено.MX_Master писал(а):Видимо, в последних правках я таки шо то сломал
- MX_Master
- Мастер
- Сообщения: 7488
- Зарегистрирован: 27 июн 2015, 19:45
- Репутация: 3113
- Настоящее имя: Михаил
- Откуда: Алматы
- Контактная информация:
Re: LinuxCNC + Orange Pi
Я у себя проверил на свежем Armbian Stretch, у меня тоже не работает (: Так что всё сходится. Последние правки были в основном про stepgen, так что gpio модуль я не проверял. А в нём, видимо, что-то поломалось. Будем посмотреть...
ЗЫ ещё одна мысль - в свежих Armbian могли что-то замутить с той областью SRAM A2, куда пишется и откуда работает прошивка сопроцессора. Надо тоже глянуть..
ЗЫ ещё одна мысль - в свежих Armbian могли что-то замутить с той областью SRAM A2, куда пишется и откуда работает прошивка сопроцессора. Надо тоже глянуть..
- technican
- Новичок
- Сообщения: 8
- Зарегистрирован: 03 апр 2020, 13:35
- Репутация: 1
- Настоящее имя: Денис
- Откуда: Владивосток
- Контактная информация:
Re: LinuxCNC + Orange Pi
А какой был несвежий? Может его поставить просто и не париться пока?
А по части использования обасти памяти для сопроца, я посмотрел что там какие фиксапы грузяца на старте в buster, вроде ничего криминального не увидел. Но в этом я вообще нуб, может и не должен был увидеть )
А по части использования обасти памяти для сопроца, я посмотрел что там какие фиксапы грузяца на старте в buster, вроде ничего криминального не увидел. Но в этом я вообще нуб, может и не должен был увидеть )
- MX_Master
- Мастер
- Сообщения: 7488
- Зарегистрирован: 27 июн 2015, 19:45
- Репутация: 3113
- Настоящее имя: Михаил
- Откуда: Алматы
- Контактная информация:
Re: LinuxCNC + Orange Pi
Проверил на Debian Jessie (Armbian 5.77) тестовую прошивку (мигает светодиодами) - всё работает. На свежем Debian Buster (Armbian 20.02.1) та же прошивка - не работает
Вощем, диагноз ясен. В новых образах Armbian (или в свежем ядре linux) сопроцессор или область SRAM A2 начали подо что-то юзать. Хотя ранее их не трогали. Возможно, это связано с внедрением VPU. Завтра изучу вопрос
Вощем, диагноз ясен. В новых образах Armbian (или в свежем ядре linux) сопроцессор или область SRAM A2 начали подо что-то юзать. Хотя ранее их не трогали. Возможно, это связано с внедрением VPU. Завтра изучу вопрос
- MX_Master
- Мастер
- Сообщения: 7488
- Зарегистрирован: 27 июн 2015, 19:45
- Репутация: 3113
- Настоящее имя: Михаил
- Откуда: Алматы
- Контактная информация:
Re: LinuxCNC + Orange Pi
Короче, проверил ручную загрузку и старт прошивки сопроцессора через консольный интерфейс старого и нового uboot. Через старый uboot всё чики-пуки, а через новый те же команды эффекта не дают. Ощущение, что в новом uboot добавили каких-то опций безопасности. Они не дают править уязвимые области памяти. Раньше эти области нельзя было править из userspace области ядра linux. Видимо, теперь из под uboot тоже нельзя.
Как говорится, не успеешь тут новый установщик расчехлить, как доступ к сопроцессору в новых версиях отовсюду закрыли
Надо попробовать из области ядра linux потрогать те области памяти, которые отвечают за сопроцессор. Может че-ньть и получится
Как говорится, не успеешь тут новый установщик расчехлить, как доступ к сопроцессору в новых версиях отовсюду закрыли
Надо попробовать из области ядра linux потрогать те области памяти, которые отвечают за сопроцессор. Может че-ньть и получится
- technican
- Новичок
- Сообщения: 8
- Зарегистрирован: 03 апр 2020, 13:35
- Репутация: 1
- Настоящее имя: Денис
- Откуда: Владивосток
- Контактная информация:
Re: LinuxCNC + Orange Pi
Вообще, кажется использование этой недокументированной фичи те еще грабли конечно. Взяли вот так - и вырубили ее.MX_Master писал(а):Они не дают править уязвимые области памяти. Раньше эти области нельзя было править из userspace области ядра linux. Видимо, теперь из под uboot тоже нельзя.
Так что шо-то мне кажется что придется внешний степген какой-то ваять на STM32 по образу и подобию как на arisc и подключать его по SPI. Начал пилить, посмотрим что выйдет... )
- MX_Master
- Мастер
- Сообщения: 7488
- Зарегистрирован: 27 июн 2015, 19:45
- Репутация: 3113
- Настоящее имя: Михаил
- Откуда: Алматы
- Контактная информация:
Re: LinuxCNC + Orange Pi
http://www.cnc-club.ru/forum/viewtopic. ... 69#p467869technican писал(а):Так что шо-то мне кажется что придется внешний степген какой-то ваять на STM32 по образу и подобию как на arisc и подключать его по SPI. Начал пилить, посмотрим что выйдет... )
Тенденция усиления безопасности в новых версиях - обычное дело. Например, в 3-ей версии ядра linux правку любых областей памяти могла делать любая программа. Абсолютно любая, Карл!technican писал(а):Вообще, кажется использование этой недокументированной фичи те еще грабли конечно. Взяли вот так - и вырубили ее.
В идеале, канеш, надо заливать прошивку в память модулем ядра (*.ko). С соответствующими правами доступа. И только при старте LinuxCNC.
-
kmike
- Новичок
- Сообщения: 4
- Зарегистрирован: 01 мар 2020, 19:11
- Репутация: 0
- Настоящее имя: Михаил
- Контактная информация:
Re: LinuxCNC + Orange Pi
Добрый день!
Поставил с нуля все на Orange PI PC. С arisc-драйверами не заводится. Есть надежда исправить?
Поставил с нуля все на Orange PI PC. С arisc-драйверами не заводится. Есть надежда исправить?
-
nevkon
- Почётный участник

- Сообщения: 2471
- Зарегистрирован: 17 июл 2015, 10:25
- Репутация: 310
- Настоящее имя: Константин
- Откуда: Балаково (Саратовская обл.)
- Контактная информация:
Re: LinuxCNC + Orange Pi
А почитать? Возьмите Armbian 5.77 - в нем должно работать.
-
avmartugin
- Новичок
- Сообщения: 37
- Зарегистрирован: 01 июл 2019, 10:27
- Репутация: 0
- Контактная информация:
Re: LinuxCNC + Orange Pi
а где найти эту версию?nevkon писал(а):А почитать? Возьмите Armbian 5.77 - в нем должно работать.
в архивных образах ее нет https://dl.armbian.com/orangepipc2/archive/
-
nevkon
- Почётный участник

- Сообщения: 2471
- Зарегистрирован: 17 июл 2015, 10:25
- Репутация: 310
- Настоящее имя: Константин
- Откуда: Балаково (Саратовская обл.)
- Контактная информация:
Re: LinuxCNC + Orange Pi
У меня последний скачанный 5.41, могу поделиться если подойдет.
-
kmike
- Новичок
- Сообщения: 4
- Зарегистрирован: 01 мар 2020, 19:11
- Репутация: 0
- Настоящее имя: Михаил
- Контактная информация:
Re: LinuxCNC + Orange Pi
Если есть preempt_rt_kernel для 5.41 - поделитесь. Образ 5.41 и пакеты ядра.
-
avmartugin
- Новичок
- Сообщения: 37
- Зарегистрирован: 01 июл 2019, 10:27
- Репутация: 0
- Контактная информация:
Re: LinuxCNC + Orange Pi
Прошу расширить на облако какой-то образ armbian где будет меньше проблем с инсталлером.nevkon писал(а):У меня последний скачанный 5.41, могу поделиться если подойдет.
- MX_Master
- Мастер
- Сообщения: 7488
- Зарегистрирован: 27 июн 2015, 19:45
- Репутация: 3113
- Настоящее имя: Михаил
- Откуда: Алматы
- Контактная информация:
Re: LinuxCNC + Orange Pi
В новых версиях загрузчика (u-boot) правку системной памяти приубавили. А прошивку сопроцессора загружает в системную память именно загрузчик. Но надежда, конечно же, есть..kmike писал(а):С arisc-драйверами не заводится. Есть надежда исправить?
Немного новостей:
Уже недельку на практике изучаю разработку модулей ядра Linux. Поясню в двух словах для чего.. Модуль ядра Linux (*.ko) не имеет ограничений на доступ к системной памяти. Это даёт возможность загружать прошивку сопроцессора через модуль ядра на лету, когда это нужно.
Первую версию такого модуля я уже накатал. При старте он создаёт в системе новое устройство /dev/arisc_admin. Из под админа мы можем писать в это устройство текстовые команды и, соответственно, читать от устройства ответы. Выглядит это примерно так:
Такой способ управления невероятно удобен и практичен. Драйвер LinuxCNC может юзать этот способ для загрузки любой прошивки в любой момент времени. Это позволит иметь под каждую конкретную задачу свою прошивку с нужным набором инструментов. К примеру, если энкодеры не используются, то можно загрузить прошивку, которая выводит только step/dir, не отвлекаясь на прочие ненужности. Это повышает эффективность и частоту вывода/обработки сигналов# указываем имя нашего чипа (варианты H2/H3/H5)
echo "H3" > /dev/arisc_admin
# удаляем из памяти чипа текущую прошивку
echo "erase" > /dev/arisc_admin
# указываем файл новой прошивки
echo "/boot/arisc-fw.code" > /dev/arisc_admin
# загружаем новую прошивку в память чипа
echo "upload" > /dev/arisc_admin
# команды можно сгруппировать и в одну строку, например
echo "H3 /boot/arisc-fw.code upload" > /dev/arisc_admin
# последний ответ от устройства можно прочесть так
cat /dev/arisc_admin
# ответ будет содержать список последних команд и статус их выполнения, например
H3:ok
/boot/arisc-fw.code:ok
upload:ok
Ну и, в конце концов, руками рулить сопроцессором из консоли тоже удобно, особенно, при разработке
Вощем, на этой неделе, доведу сей модуль до ума, добавлю его в установщик и подправлю ARISC драйвер для работы с этим модулем. Так что, товарищи, где-то через недельку, сопроцессор будет снова в строю. Ну а потом уже подумаем о разных версиях прошивки под конкретные задачи..
ЗЫ всех со прошедшим днём космонавтики
-
kmike
- Новичок
- Сообщения: 4
- Зарегистрирован: 01 мар 2020, 19:11
- Репутация: 0
- Настоящее имя: Михаил
- Контактная информация:
Re: LinuxCNC + Orange Pi
Спасибо. Информация обнадеживает. Буду ждать и обязательно тестировать 