Руководство пользователя

Страница содержит руководство по подготовке программной части, сборке rootfs и ядра Linux для модуля Q7_KOMDIV_MK, а также примеры применения модуля в составе пользовательских устройств.

Документ предназначен для инженеров, которые разрабатывают, собирают или интегрируют программное обеспечение для устройств на базе Q7_KOMDIV_MK.

В качестве демонстрационных сценариев рассматриваются использование модуля в роботизированной руке на сервоприводах с ШИМ-управлением и применение модуля в сервере для считывания показаний датчиков.

Общая информация

Q7_KOMDIV_MK используется как вычислительный модуль в составе встраиваемых и серверных систем. Для работы модуля требуется подготовить загрузчик, ядро Linux и корневую файловую систему.

В рамках данной страницы используется следующее окружение:

Компонент	Версия / описание
Хостовая ОС	Ubuntu 24.04
Rootfs	Buildroot 2025.02.7 + buildroot-external-inmys
Ядро Linux	k5500vk018-linux
Архитектура	KOMDIV-64 (MIPS64)
Сборка rootfs	через Docker-контейнер komdiv-sdk

Состав программной части Q7_KOMDIV_MK

Для работы модуля требуется три основных компонента:

Компонент	Описание	Доступ
Загрузчик	barebox	Приватный репозиторий с доступом по токену
Ядро Linux	Linux с поддержкой k5500vk018	Приватный репозиторий с доступом по токену
Rootfs	Buildroot 2025.02.7 + buildroot-external-inmys	Публичный GitHub Inmys

На текущий момент загрузчик находится в репозитории с приватным доступом. Ядро Linux с поддержкой k5500vk018 доступно публично в GitLab Inmys.

Подготовка окружения

Сборка выполняется на Ubuntu 24.04.

Перед началом работы необходимо обновить список пакетов и установить кросс-компилятор для MIPS:

sudo apt update
sudo apt install -y cpp-mips64el-linux-gnuabi64

Также предполагается, что на хостовой машине установлен Docker.

Сборка BareBox

git clone gitlab.inmys.inline ...
make ARCH=mips CROSS_COMPILE=mips64el-linux-gnuabi64- srisa_defconfig
make ARCH=mips CROSS_COMPILE=mips64el-linux-gnuabi64- -j24

Результат сборки находится по пути images/barebox-rbm_c1k5500vk018-el.img

Сборка образа системы

Введите логин и токен вместо XXXXX и YYYYY и выполните команду:

LOGIN="XXXXX"; TOKEN="YYYYY"; printf "machine gitlab.inmys.online\nlogin %s\npassword %s\n" "$LOGIN" "$TOKEN" > .gitlab.netrc

Выполните следующие команды:

mkdir -p container
cd container
wget https://nextcloud.inmys.online/nextcloud/index.php/s/ZJFE4wx3pMwf9yn/download -O Dockerfile
sudo docker build -t komdiv-sdk .
cd ..
wget https://buildroot.org/downloads/buildroot-2025.02.7.tar.gz
tar -xf buildroot-2025.02.7.tar.gz
git clone https://github.com/inmys/buildroot-external-inmys.git -b nms-q7-k5500vk018
sudo docker run -it -e USER=$USER -e USERID=$UID -v $(pwd):/BR -v "$(pwd)/.gitlab.netrc:/root/.netrc:ro" --cpus=12 -t komdiv-sdk bash

В Docker-контейнере выполнить:

make BR2_EXTERNAL=$PWD/buildroot-external-inmys -C buildroot-2025.02.7 O=$PWD/output br_defconfig
cd output
export FORCE_UNSAFE_CONFIGURE=1
make -j12

После завершения сборки необходимо выйти из контейнера сочетанием клавиш Ctrl + D

Результаты сборки находятся в директории output/images/

Работа с SPI-флешкой

Осуществляется программатором FT2232H-56Q Mini Module с установленным переходником FT2232H-56Q Mini Module_Adapter

Необходимо подключить программатор FT2232H-56Q Mini Module к ПК и подключить прищепку к плате, красным проводом вверх. Правильное положение прищепки достигается, если плата Q7_KOMDIV_MK установлена в отладочную плату NMS-Q7-EVM-MINI

Linux

Пример прошивки с Ubuntu 24.04, используется скрипт burn-barebox.sh:

sudo apt update && sudo apt install flashrom -y
./burn-barebox.sh barebox-rbm_c1k5500vk018-el.img

Windows

Скачать и установить flashrom для windows https://github.com/therealdreg/flashrom_build_windows_x64

Через Zadig заменить драйвер ftdi на winusb. Подоходит вот эта инструкция: https://docs.mikron.ru/wiki/dev-tools/debuggers/ft2232.html

Открыть через командную строку flashrom.exe с правами администратора

Выполнить команду обнаружения микросхемы

Загрузить нужный файл

Определение флешки программатором:

.\flashrom.exe -p ft2232_spi:type=2232H,port=A,divisor=4

Чтение файла из памяти:

.\flashrom.exe --progress -V -c "W25Q32JV" -p ft2232_spi:type=2232H,port=A,divisor=4 -r filename.bin

Запись файла в память:

.\flashrom.exe --progress -V -c "W25Q32JV" -p ft2232_spi:type=2232H,port=A,divisor=4 -w filename.bin