Ник:
Пароль:

Контакты

E-mail: info@starterkit.ru
тел.: +7 922 680-21-73
тел.: +7 922 680-21-74
Телеграм: t.me/starterkit_ru

Способы оплаты

User Info


Добро пожаловать,
Guest

Регистрация или входРегистрация или вход
Потеряли пароль?Потеряли пароль?

Ник:
Пароль:

ПользователейПользователей:0
Поисковых ботовПоисковых ботов:3
ГостейГостей:1

ОбновитьПодробнееВсегоВсего:4
Форум » starterkit.ru » Процессорные модули » SK-A40i-SODIMM
SK-A40i-SODIMM Проблемы с прошивкой
Kis
Добавлено 10.03.2023 08:26 Редактировалось 02.11.2023 18:30
0
Сообщение: 1
Kis
0

Пункты: 213
Регистрация: 10.03.2023
Написал детальную простыню текста. При попытке отправить - получил "вы произвели запрещенное действие"... Ну приплыли... Очень печальный баг, исправьте.

Но ближе к делу. Кратко.
После успешной установки драйверов в диспетчере устройств отображается "Unknown Device #1", т.е. так же как было до их установки. А после попытки поставить сборку из DFU-HDMI по microUSB получил следующее:
Код
argc = 6
argv[0] = sunxi-fel
argv[1] = -d
argv[2] = 1:4
argv[3] = -v
argv[4] = uboot
argv[5] = u-boot-sunxi-with-spl.bin
found DT name in SPL header: sun8i-a40i-sodimm-sk
Stack pointers: sp_irq=0x00002000, sp=0x00005E08
MMU is not enabled by BROM
=> Executing the SPL... done.
Writing image "U-Boot 2022.04 for sunxi board", 529392 bytes @ 0x4A000000.
Starting U-Boot (0x4A000000).
Device detached
argc = 7
argv[0] = dfu-util
argv[1] = -p
argv[2] = 1-1.2
argv[3] = -a
argv[4] = emmc
argv[5] = -D
argv[6] = sdcard.img
Warning: Invalid DFU suffix signature
A valid DFU suffix will be required in a future dfu-util release
Cannot open DFU device 1f3a:1010 found on devnum 4 (LIBUSB_ERROR_NOT_SUPPORTED)
No DFU capable USB device available


Нужна помощь. Мануал изучил от корки до корки. Цель - установить на плату линукс. В планах использовать на большом кол-ве проектов в качестве юрлица.
Спуститься к концу Подняться к началу
Персональная информация
Pavel Ivanchenko
Добавлено 10.03.2023 09:37 Редактировалось 10.03.2023 09:57 Сообщение: 2
Pavel Ivanchenko
Admin
4.32

Пункты: 93767
Регистрация: 24.03.2009
Пол: Мужчина
Подобное происходит когда запущена виртуальная машина, которая автоматом забирает себе появляющиеся устройства (если при первом подключении устройства ей это разрешили).
Спуститься к концу Подняться к началу
Персональная информация
sasamy
Добавлено 10.03.2023 10:05 Редактировалось 10.03.2023 10:07 Сообщение: 3
sasamy
4.71

Пункты: 86398
Регистрация: 14.08.2009
Цитата

Cannot open DFU device 1f3a:1010 found on devnum 4 (LIBUSB_ERROR_NOT_SUPPORTED)
No DFU capable USB device available


драйвер DFU установлен ? У меня при тестах на win7 автоматически установился а на win11 пришлось явно указать чтобы ос искала совместимый драйвер для неизвестного устройства. Посмотрите в диспетчере устройств после смены идентификатора устройства как оно определяется системой.

Вообще всё намного проще если использовать на хост системе Linux (напрямую без вирткалки) а не Windows.
Спуститься к концу Подняться к началу
Персональная информация
Pavel Ivanchenko
Добавлено 10.03.2023 10:42 Редактировалось 10.03.2023 10:43 Сообщение: 4
Pavel Ivanchenko
Admin
4.32

Пункты: 93767
Регистрация: 24.03.2009
Пол: Мужчина
Цитата
Вообще всё намного проще если использовать на хост системе Linux (напрямую без виртуалки) а не Windows.
Дык к применению виртуалки при программировании никто и не склоняет (про это ни слова в описании), другое дело, что она обычно работает и отучить ее от устройства (единожды подключенного) бывает не получается - она говорит, что устройство не подключено, но и в винде оно тоже не появляется.
Но это скорее всего больше связано с уникальной спецификой установки и настроек.

Сейчас обнаружил еще один момент, раньше замечал, что программирование по DFU бывает капризничает и прошивается не с первого раза.
Сейчас нашел один модуль, который шьется 1 раз и 3-4 попыток.
Подключил модуль напрямую к хосту PC (до этого подключался через хаб) и обнаружил, что теперь ни один модуль не прошивается (кстати, примерно с теми же "криками" из топика).
Надо разбираться в происходящем, используйте вариант программирования с использованием USB флешки.
Спуститься к концу Подняться к началу
Персональная информация
sasamy
Добавлено 10.03.2023 11:20 Редактировалось 10.03.2023 11:23 Сообщение: 5
sasamy
4.71

Пункты: 86398
Регистрация: 14.08.2009
Цитата
Дык к применению виртуалки при программировании никто и не склоняет


я к тому что утилита загрузки sunxi-fel хоть и работает в win, первичная платформа для которой эти инструменты (https://linux-sunxi.org/Sunxi-tools) написаны и тестируются - linux, к тому же в линуксе нет выноса мозга с драйверами USB
Спуститься к концу Подняться к началу
Персональная информация
Pavel Ivanchenko
Добавлено 10.03.2023 11:23 Редактировалось 22.04.2025 11:52 Сообщение: 6
Pavel Ivanchenko
Admin
4.32

Пункты: 93767
Регистрация: 24.03.2009
Пол: Мужчина
Итак, после серии экспериментов:
1) если подключать USB 3.X хосту, работать нормально не будет
2) если подключать через USB3.X хаб, некоторые экземпляры не будут программироваться, при программировании могут возникать сбои
3) если подключать к USB2.0 хосту - работает нормально, сбоев не наблюдал (на тех экземплярах которые с трудом через USB3.X хаб записывались)

Итого: подключайте к хосту USB2.0 (черный пластик) или используйте хаб USB2.0!
Для бОльшей надежности, ставьте на паузу виртуальную машину.

UPD собрал некоторую статистику на записи средних партий DFU методом (без использования внешней USB флешки).
При программировании на специальной материнке (по 4 модуля за раз, на плате стоит свой usb хаб) - всегда без ошибок.
Если записывать на SK-A40i-SODIMM-MB подключаемую к USB3.X: ~70% запишется с первого раза, на ~25% при записи может возникнуть ошибка но со второго-третьего раза запишется, ~5% не записываются. Если использовать внешний USB 2.0 хаб для подключения материнки, все модули программируются без ошибок с первого раза.
Спуститься к концу Подняться к началу
Персональная информация
Kis
Добавлено 10.03.2023 15:43 Редактировалось 10.03.2023 15:52 Сообщение: 7
Kis
0

Пункты: 213
Регистрация: 10.03.2023
Виртуальной машины нет, так что забирать устройство некому. USB-порт на ноуте версии 2.0.

Меня смутило, что устройство так и не определилось по-нормальному и осталось "Unknown Device #1".

Попробовал прошить с использованием флешки. Лог первоначального запуска следующий:
Код

C:\Users\xxx\Desktop\HDMI\HDMI>boot.bat

C:\Users\xxx\Desktop\HDMI\HDMI>sunxi-fel.exe -v uboot u-boot-sunxi-with-spl.bin write 0x42000000 zImage write 0x43000000 sun8i-a40i-sodimm-min-sk.dtb write 0x43100000 boot.scr write 0x43300000 rootfs.cpio.uboot
Stack pointers: sp_irq=0x00002000, sp=0x00005E08
MMU is not enabled by BROM
=> Executing the SPL... done.
Writing image "U-Boot 2022.04 for sunxi board", 529296 bytes @ 0x4A000000.
Passing boot info via sunxi SPL: script address = 0x43100000, uEnv length = 0
Starting U-Boot (0x4A000000).

C:\Users\xxx\Desktop\HDMI\HDMI>


Устройство пару раз переподключилось по USB за первую минуту, но я подождал еще 20 минут, затем отсоединил устройство и подключил его к HDMI-монитору. Запустился Linux дистрибутива Buildroot (пробил командой cat /etc/*release). Значит все прошилось несмотря на "Unknown Device #1". Хотелось конечно, чтобы прошилось и без использования промежуточного звена в виде флешки. Но будем считать, что этот вариант еще до конца не отлажен.

Как я понял, вместе с утилитами прошивки поставляется "специальный" дистрибутив линукса. Посему 3 ламерских вопроса, заранее до моих самостоятельных потуг:
1. Есть ли какая-то особенность у этого "специального" дистрибутива в плане ограничений на запуск служб (демонов) в этой сборке? Или я вообще зря применил это слово в кавычках? Сразу говорю, в линуксах вообще не шарю, где-то год юзал Ubuntu в 2011 году, писал какие-то консольки под нее. На данный момент есть 2 варианта использования вашей платы и в обоих случаях будут крутиться службы. Нюанс в том, что в одном из них предполагается наличие .NET-рантайма (тот, что в 2023 году кроссплатформенный). Из документации, зависимости у него следующие:
GNU C Library (glibc)
GNU C++ Library
GCC low-level runtime library
ICU
Kerberos
Open SSL
zlib compression library
2. Нужно ли на Buildroot искать/ставить драйвер для работы с Ethernet-портами? С конфигурированием сети, думаю, разберусь, погуглю.
3. Правильно ли я понял, что чтобы накатить другую сборку линукса на плату, файл sdcard.img необходимо создавать с помощью vmware?
Спуститься к концу Подняться к началу
Персональная информация
Pavel Ivanchenko
Добавлено 10.03.2023 16:52 Редактировалось 10.03.2023 17:25 Сообщение: 8
Pavel Ivanchenko
Admin
4.32

Пункты: 93767
Регистрация: 24.03.2009
Пол: Мужчина
Цитата
Виртуальной машины нет, так что забирать устройство некому. USB-порт на ноуте версии 2.0.
Значит есть смысл попробовать с другими USB кабелями.
Цитата
Устройство пару раз переподключилось по USB за первую минуту, но я подождал еще 20 минут, затем отсоединил устройство и подключил его к HDMI-монитору. Запустился Linux дистрибутива Buildroot (пробил командой cat /etc/*release). Значит все прошилось несмотря на "Unknown Device #1".
Не факт, как правило, штатная прошивка идет с выводом на HDMI. Тем более если 20 минут ничего не происходило, т.к. штатный скрипт записи запускаемый с флешки (надеюсь его скопировали) перезагружает систему в конце. HDMI.ZIP - образ с флешки пишется в р-не 2-3 минут и перезагружает систему.
Цитата
Меня смутило, что устройство так и не определилось по-нормальному и осталось "Unknown Device #1"
Дык с каким названием оно "родилось" с тем и осталось, если не изменить его название в zdiag.
Цитата

1. Есть ....
2. Нужно ...
3. Правильно ли ...
Все вопросы не связанные с топиком темы выделяйте в отдельные темы.
Спуститься к концу Подняться к началу
Персональная информация
sasamy
Добавлено 11.03.2023 11:38 Редактировалось 12.03.2023 12:33 Сообщение: 9
sasamy
4.71

Пункты: 86398
Регистрация: 14.08.2009
Цитата
Хотелось конечно, чтобы прошилось и без использования промежуточного звена в виде флешки.


если вы запустите boot.bat с платой без USB флешки она будет эмулировать usb mass storage c cодержимым emmc - в Windows должен появиться USB диск, имидж sdcard.img можно записать на этот диск любой подходящей утилитой, например

https://www.balena.io/etcher

1 Не знаю что за демоны в .NET-рантайм, перечисленные в зависимостях библиотеки можно собрать в buildroot а сам рантайм помоему нужно просто распаковать из архива

https://learn.microsoft.com/en-us/dotnet/core/install/linux-scripted-manual?source=recommendations

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

3. Чтобы что-то поменять в файловой системе образа нужен какой-то работающий Linux - в виртуалке или нативный роли не играет, я давно не пользуюсь windows - возможно и WSL на что-то годится но это не точно. Образ диска записать на носитель можно и в windows - см например https://www.balena.io/etcher
Спуститься к концу Подняться к началу
Персональная информация
Kis
Добавлено 13.03.2023 12:14 Редактировалось 13.03.2023 12:46 Сообщение: 10
Kis
0

Пункты: 213
Регистрация: 10.03.2023
Цитата
Не факт, как правило, штатная прошивка идет с выводом на HDMI. Тем более если 20 минут ничего не происходило

Так я и не говорил, что 20 минут ничего не происходило. Что именно произошло в первую минуту, я описал - она пару раз переподключилась к винде, при этом мигая светодиодом. А дальше я просто дал плате 20 минут, не трогая ее и занимаясь другими делами, но миганий больше вроде как не было.

Цитата
если вы запустите boot.bat с платой без USB флешки она будет эмулировать usb mass storage c cодержимым emmc - в Windows должен появиться USB диск, имидж sdcard.img можно записать на этот диск

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

Цитата
Не знаю что за демоны в .NET-рантайм

Нет никаких демонов в .NET. Про демонов я упомянул в предложении с linux-сборкой. Буду говорить проще - "служба".

Скрытый текст
Скрытый текст виден только зарегистрированным пользователям.





Теперь снова по плате. Хочется все же разобраться, поставилась сборка или нет. Вы меня заставили задуматься словами "не факт".
До того, как я что-либо прошил, я подключил плату к HDMI. Да, я действительно получил изображение со штатной прошивки. А именно, приветствие наподобие:
Код
Welcome to Buildroot
enter login:


После прошивки img-файла из архива HDMI я получил графическую оболочку с WaylandTerminal:
фото
ссылка на фото

Прошилось или нет?

На данный момент поставил виртуалку на Lubuntu (не знаю почему именно она, но вы в мануале написали именно про нее). Изучаю на хабре сборку дистрибутива Buildroot (https://habr.com/ru/post/448638/). Думаю, вопросы еще будут. Если я правильно понял, сейчас цель - получить img файл buildroot, но с необходимыми мне зависимостями (и это даже не для .NET, а для службы одной scada-системы).

P.S. Загрузка картинок через форму ответа у вас не работает. Требует забытый всеми FlashPlayer.
Спуститься к концу Подняться к началу
Персональная информация
Форум » starterkit.ru » Процессорные модули » SK-A40i-SODIMM