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

Обновлено зимой 2019

В этой статье я расскажу как обновить прошивку или запрограммировать плату из проекта 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. Смотрите видео-инструкцию.

Информация устарела! В новых версиях 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, вставляем плату в разьем
или (вариант 2) 
закорачиваем перемычку JP1 и кратковременно закорачиваем конденсатор С3, 
загорятся 3 светодиода, в этом случае, плату вынимать не нужно.

Начинаем прошивать плату:
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. Там же есть ссылка на готовый комплект программатора.

Вариант 4
Прошить в Pi-Star не вытаскивая плату из разъёма. Делаем всё как в варианте 2, но перед последней командой:

- закорачиваем JP1

- кратко закорачиваем конденсатор С3 (после этого должны загорется 3-и светодиода)
- даём команду на прошивку (program-STM32_DVM_PiHat)
- перезагружаемся (команда reboot)

Смотрите на картинку ниже.

Для этого варианта не нужен отдельный программатор и не нужно вытаскивать плату из 40пин. разъёма Raspberry.

Вариант 5
Дистанционная прошивка платы MMDVM_pog в Pi-Star, на удалённой точке доступа. Требуется подключение к интернету, для скачивания прошивки. Модифицированная плата MMDMV-POG, будет обновлена свежей прошивкой не зависимо от версии Pi-Star.

ВНИМАНИЕ! Будет работать только с модифицированной платой, на которой установлены две дополнительные перемычки и подпаяны соответствующие контакты (как на фото ниже)! Без них используйте предыдущие варианты прошивки!

Информация устарела! В новых версиях Pi-Star изменилась часть команд!

Заходим в консоль через ssh 

Прошиваем плату одной командой:
wget -O- http://kavkaz.qrz.ru/stm32 | sudo bash

Наблюдаем процесс прошивки и ждём когда Pi-Star перезагрузится.

Версию прошивки платы видно в разделе Dashboard → Radio Info → FW. Вопросы по платам и прошивке вы можете задавать Алексею RN6LJT.


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

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

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

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

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

UA6HJQ