Настраиваем плату MMDVM_pog
для цифрового узла/репитера

ЛЕТО 2018

В этой статье я расскажу как обновить прошивку или запрограммировать плату из проекта MMDVM_pog, На примере конструкции RN6LJT. Эта плата устанавливается в разьём RaspberryPi и заменяет собой Arduino_DUE + шилд.

Вопросы связанные с этой платой, мы обсуждаем в группе C4FM D-Star DMR в мессенджере ТамТам.

Запишем на SD-карту образ Pi-Star, с помощью программы Win32 Disk Imager.

MMDVM узел состоит из следующих элементов: RaspberryPi3, плата MMDVM_pog, радиостанция GM-340. Настройка очень проста и заключается в установке девиации передатчика 2.75кГц. Подробное описание на сайте f5uii.

Уровень приёма регулировать не нужно. Резистор R31 (уровень RX) должен быть повёрнут до упора по часовой стрелке. В файле кофигурации ставьте RXLevel=150.

В меню 'Modem Type' выбираем указанную на картинке выше плату.

Тесты и сравнения MMDVM узла на Ардуино+шилд RA4NHY и плате MMDVM_pog, показали примерно одинаковые результаты, которые вы видите ниже.

MMDVM_pog имеет меньше контактных соединений, что положительно скажется на её надёжности. Самодельный шилд (без внешнего генератора), немного уступает этой плате, по качеству приёма слабых сигналов. Плата MMDVM_POG протестирована в режимах симплекса (узел) и дуплекса (репитер).

Таблица качества декодирования двух плат подключенных к одной радиостанции GM-350, с полосой 25кГц. Смотрите видео этого эксперимента.


У многих радиолюбителей вызывает затруднение, программирование платы MMDVM_pog, так как автор проекта не дал подробных инструкций.

Сформировать прошивку и 'залить' в плату можно разными способами. Взять готовую и загрузить в плату прямо из RaspberryPi3 или через ST-LINK в Windows. Скомпилировать кросскомпирятором под Win или Linux, а потом 'залить' и тд. Остановимся на двух, самых простых:

Вариант 1
Если у вас есть программатор ST-LINK и вы любите Windows, возьмите готовый файл mmdvm.hex и 'залейте' его в плату, с помощью STM32 ST-LINK Utility.

Смотрите видео-инструкцию с пошаговым описанием (первого варианта) процесса программирования.

Программатор ST Link v2 продаётся в китайских магазинах, а драйвера для windows и программу нужно взять на сайте STMicroelectronics.

Вариант 2
Создание среды и пошаговое компилирование прошивки из исходников с последующим программированием платы, прямо в RaspberryPI, на примере свежеустановленного образа Pi-Star. Смотрите видео-инструкцию.

Вы должны использовать терминал PUTTY для подключения к 'Малине' по SSH. Выполните следующие команды:

Заходим в консоль через ssh:
(эти четыре команды выполняем только один (первый) раз)
sudo -s
rpi-rw
pistar-expand
reboot

Заходим в консоль через ssh:
rpi-rw
sudo -s
apt-get update
cd /srv
git clone https://github.com/N4IRS/MMDVM-Install.git
cd /srv/MMDVM-Install/STM32-DVM
chmod +x *.sh
./required-libs.sh
./get-src.sh

Останавливаем сервисы:
systemctl stop pistar-watchdog
systemctl stop mmdvmhost

Редактируем конфиг:
cd /usr/src/MMDVM
nano Config.h

Проверяем наличие gcc:
apt-get install gcc-arm-none-eabi

Компилируем исходники:
make -f Makefile.CMSIS

Cмотрим, появились ли файлы:
ls -l /usr/src/MMDVM/bin/

Отсоединить плату (если была подключена),
закорачиваем перемычку JP1,
вставляем плату в разьем

Начинаем прошивать плату:
program-STM32_DVM_PiHat

После окончания процесса, отсоединяем плату, 
снимаем перемычку, 
вставляем плату назад в 'Малину'.

В файле Config.h нужно разблокировать следующие строки:

#define EXTERNAL_OSC 19200000
#define ARDUINO_MODE_PINS
#define STM32F1_POG
#define SEND_RSSI_DATA

Хочу заметить, что некоторые китайские платы без проблем прошиваются через программатор, но не хотят 'шиться' через 'Малину'. Если у вас плата с USB-соединением - используйте только программатор.

Вариант 3
Прошить можно и через последовательный порт, смотрите видео Прошивка через ком порт, программой Flash_Loader_Demonstrator. Там же есть ссылка на готовый комплект программатора.


Для MMDVM узла подойдёт любая радиостанция с режимом 9600бод. Оптимальная полоса пропускания приёмного тракта, зависит от цифровой моды. Ширину ПЧ ставьте 25кГц для DMR/C4FM, а для D-Star 12.5кГц (GM-340 позволяет менять).

На форумах я нашел рекомендацию по установке разного уровня девиации для каждого цифрового режима: D-STAR ~1,2KHz, DMR ~2,8KHz, C4FM ~4,0KHz.

Настроить девиацию в YSF можно и на слух, станции при более менее нормальной девиации начинают сразу декодировать сигналы. DMR и D-Star нужно настраивать по методике f5uii c помощью USB RTL.

После тестов MMDVM узла с разными платами и в разных режимах, складывается устойчивое ощущение что D-Star и YSF(C4FM) сигналы узел принимает лучше чем DMR, особенно это относится к слабым сигналам из эфира.

Ссылки:  
Проект MMDVM-POG на Гитхабе
DV на Кавказе  
Что такое Yaesu System Fusion?  
ДУК RA3APW для D-STAR  
Группа C4FM D-Star DMR в мессенджере ТамТам  

UA6HJQ