DMR MMDVM-Hotspot

DMR сети, репитеры, терминалы
R0AET
Сообщения: 403
Зарегистрирован: 20 фев 2015, 09:40
позывной: R0AET
CиБи позывной: Путник
Имя: Владимир
Откуда: Мой QTH NO88PB (RDA-КК29)
Контактная информация:

DMR MMDVM-Hotspot

Сообщение R0AET » 26 мар 2017, 13:05

В этой теме будет описание создания MMDVM-Hotspot на базе Orange PI PC+ и ArduinoDUE.
Сразу скажу, что при первой попытке сделать данный девайс у меня ничего не получилось. Причиной тому стало - "кривая" плата ArduinoDUE.
Плата была заказана на Алиэкспресс. Явных неисправностей нет, прошивается и определяется нормально, но уровни сигналов не соответствуют стандартным. В итоге был заказан комплект платы вместе с шилдом от http://mmdvm.blogspot.ru/p/packages.html
Вышло дороговато, но зато все в "коробке".
IMG_20170324_154118.jpg
Плата от http://mmdvm.blogspot.ru/p/packages.html
Дальнейшее повествование отложу на вечер, так как требует детального подхода. А пока еще несколько фото.
IMG_20170324_154236.jpg
Работает от LAN
IMG_20170324_154850.jpg
От модема YOTA
IMG_20170325_223136.jpg
В сборе
Ну и отвечу на вопросы.
Последний раз редактировалось R0AET 26 мар 2017, 13:37, всего редактировалось 1 раз.
R0AET
R0AET
Сообщения: 403
Зарегистрирован: 20 фев 2015, 09:40
позывной: R0AET
CиБи позывной: Путник
Имя: Владимир
Откуда: Мой QTH NO88PB (RDA-КК29)
Контактная информация:

Re: DMR MMDVM-Hotspot

Сообщение R0AET » 26 мар 2017, 13:22

Ну пока продолжу.
На Оранж была установлена серверная версия Debian Jessie от сюда https://www.armbian.com/orange-pi-pc-plus/#nightly
Процесс установки не отличается от стандарта. Т.е. записываем образ на SD, вставляем карточку в Оранж и... все...
В итоге получаем чистую серверную Ось без графического интерфейса. Дальнейшие действия были по инструкции для Raspberry. Под спойлером исправленная (точнее урезанная) инструкция по которой делал.
Инструкция по установке MMDVMHost на Raspberry
Красным - не делал
Синим - делал
Use Raspbian Jessie Lite (Если будете делать Hot-Spot для D-STAR на чистом образе Raspbian Jessie Lite, нужно будет еще поставить ircddbgateway, а можно взять готовый софт для D-STAR узла от сюда http://file.so/files/2016-02-26-raspbia ... v3.img.zip, и установить на него MMDVMHost по этой инструкции, и удалить dstarrepeater (командой: sudo apt-get remove dstarrepeater), а ircddbgateway настроить как обычно. У меня все работает.

1. Expand File System
# sudo raspi-config

2. Update Raspberr Pi

# sudo apt-get update
# sudo apt-get upgrade

3. Install Pre-Requisite Software
# sudo apt-get install git screen

4. Download MMDVM Software
# cd /opt
# sudo git clone https://github.com/g4klx/MMDVMHost.git
# sudo git clone https://github.com/g4klx/MMDVMCal.git

5. Build MMDVM Host Software
# cd /opt/MMDVMHost
# sudo make
# sudo nano MMDVM.ini
Edit Settings according to Format
**Make sure you change the port settings**

6. Build MMDVM Calibration Tool
# cd /opt/MMDVMCal
# sudo make

7. Create Service
# sudo nano /lib/systemd/system/mmdvmhost.service

[Unit]
Description=MMDVM Host Service
After=syslog.target network.target

[Service]
User=root
WorkingDirectory=/opt/MMDVMHost
ExecStart=/usr/bin/screen -S MMDVMHost -D -m /opt/MMDVMHost/MMDVMHost /opt/MMDVMHost/MMDVM.ini
ExecStop=/usr/bin/screen -S MMDVMHost -X quit

[Install]
WantedBy=multi-user.target


# sudo chmod 755 /lib/systemd/system/mmdvmhost.service

Create a symbolic link between your script and a special location under /etc:
# sudo ln -s /lib/systemd/system/mmdvmhost.service /etc/systemd/system/mmdvmhost.service

8. Create Timer
# sudo nano /lib/systemd/system/mmdvmhost.timer

[Timer]
OnStartupSec=60

[Install]
WantedBy=multi-user.target

# sudo chmod 755 /lib/systemd/system/mmdvmhost.timer

Create a symbolic link between your script and a special location under /etc:
# sudo ln -s /lib/systemd/system/mmdvmhost.timer /etc/systemd/system/mmdvmhost.timer


9. Make systemd aware of your new service

# sudo systemctl daemon-reload
# sudo systemctl enable mmdvmhost.timer
# sudo reboot

Service should start 60 sec after bootup.


Эти команды работают:
Appendix A

Start Service manually
# sudo systemctl start mmdvmhost.service

Stop Service manually
# sudo systemctl stop mmdvmhost.service

Restart Service manually
# sudo systemctl restart mmdvmhost.service

Service Status
# sudo systemctl status mmdvmhost.service


Connect to Screen Output
# sudo screen -r MMDVMHost
Ctrl+a then d to disconnect from screen and keep the service running.


Run MMDVMHost
# sudo /opt/MMDVMHost/MMDVMHost /opt/MMDVMHost/MMDVM.ini

Run MMDVMCal
# sudo /opt/MMDVMHost/MMDVMCal /dev/ttyACM0



Appendix B

Update MMDVM Host Software
# cd /opt/MMDVMHost
# sudo git pull
# sudo make
# sudo nano MMDVM.ini
Edit Settings according to Format
**Make sure you change the port settings**



Update MMDVM Calibration Tool
# cd /opt/MMDVMCal
# sudo git pull
# sudo make
Сразу скажу почему не сделал sudo apt-get upgrade... При первой попытке сборки, я запустил апгрейд, и он завис на каком-то этапе. Пришлось ось переустанавливать. Второй раз не стал терять время на эксперименты и просто пропустил этот пункт.
Дальше выложу конфиг файл со своими настройками. В нем я все отключил, кроме DMR.
R0AET
R0AET
Сообщения: 403
Зарегистрирован: 20 фев 2015, 09:40
позывной: R0AET
CиБи позывной: Путник
Имя: Владимир
Откуда: Мой QTH NO88PB (RDA-КК29)
Контактная информация:

Re: DMR MMDVM-Hotspot

Сообщение R0AET » 26 мар 2017, 13:54

Конфиг с отключенными функциями, кроме DMR
Конфиги все же буду под спойлер прятать. Специфицеская вещь такая - кому надо - тот откроет.
[General]
Callsign=ВАШ ПОЗЫВНОЙ (вводил большими буквами)
Timeout=180
Duplex=0 // Для дуплекса - 1 симплекс-0
# ModeHang=10
RFModeHang=10
NetModeHang=3
Display=None
Daemon=0

[Info]
RXFrequency=145450000
TXFrequency=145450000
Power=15
Latitude=58.075998 // Комментарии только для информации при использовании - УДАЛИТЬ!!! )
Longitude=97.304063 // Координаты с точностью до метров 2-3 - у меня прямо на дом показывает - ВСТАВИТЬ СВОИ!!!)
Height=10
Location=NO88PB // Город село поселок - вводить английскими буквами - я не заморачивался ввел QTH-Loc )
Description=MMDVM-Hotspot //Просто инфа для вывода в дашборде.)
URL=www.24DX.ru

[Log]
# Logging levels, 0=No logging
DisplayLevel=1
FileLevel=1
FilePath=.
FileRoot=MMDVM

[CW Id]
Enable=0
Time=10

[DMR Id Lookup] // Файл закинул вручную, так как скрипт обновления качал файл c DMR-Marc , а наш скрипт выдавал ошибку.
File=DMRIds.dat
Time=0 // 0 - отключение автообновления. Иначе затрет...


[Modem]
Port=/dev/ttyAСM0 // АСМ0 - для ардуино
# Port=\\.\COM3
TXInvert=0 //Зависят от радиостанции и подбирается при калибровке.
RXInvert=0 //Зависят от радиостанции и подбирается при калибровке.
PTTInvert=0
TXDelay=100
DMRDelay=0
RXLevel=50 //Зависят от радиостанции и подбирается при калибровке.
TXLevel=50 //Зависят от радиостанции и подбирается при калибровке.
OscOffset=0
Debug=0

[D-Star]
Enable=0 //Отключаем ди-стар
Module=C

[DMR]
Enable=1 //Включаем ДМР
Beacons=0
Id=250****** //Вводим свой ID - получать отдельный не обязательно. Работает с одинаковыми ID в программе и в рации
ColorCode=1
SelfOnly=0
EmbeddedLCOnly=0
DumpTAData=1
# Prefixes=234,235
# Slot1TGWhiteList=
# Slot2TGWhiteList=
CallHang=3 // Изменил на 2
TXHang=4 // Изменил на 2

[System Fusion]
Enable=0
Parrot=1

[D-Star Network]
Enable=0 //Отключаем ди-стар транспорт
GatewayAddress=127.0.0.1
GatewayPort=20010
LocalPort=20011
Debug=0

[DMR Network]
Enable=1 //Включаем ДМР транспорт
Address=master-east.dstar.su // НАШ СЕРВЕР!!! :D
#Address=bm.dmrx.net
Port=62031
Password=passw0rd
Slot1=0 //Для симплекса первый слот отключаем!
Slot2=1
Debug=0

[System Fusion Network]
Enable=0
Address=44.131.4.1
Port=32768
Debug=1

[TFT Serial]
Port=/dev/ttyAMA0
Brightness=50

[HD44780]
Rows=2
Columns=16
R0AET
Аватара пользователя
UB0AGO
Сообщения: 546
Зарегистрирован: 30 дек 2013, 11:07
позывной: UB0AGO
CиБи позывной: Пришелец
Имя: Евгений
Откуда: с Новосёлово (NO54LX79eh)

Re: DMR MMDVM-Hotspot

Сообщение UB0AGO » 27 мар 2017, 11:36

Владимир, вопрос такой: GM-350 имеется, канальная, возможно ли на её основе сотворить такое же устройство?
Калина-2 (Ягодка), в ней ОПТИМ APOLLO-1 (ver 3.0), на ней LEMM AT-73
В карманах - ANYSECU DM-960 + Radioddity GD-77,и ещё -
VX-6R (всё доработано)
R0AET
Сообщения: 403
Зарегистрирован: 20 фев 2015, 09:40
позывной: R0AET
CиБи позывной: Путник
Имя: Владимир
Откуда: Мой QTH NO88PB (RDA-КК29)
Контактная информация:

Re: DMR MMDVM-Hotspot

Сообщение R0AET » 27 мар 2017, 13:10

У меня на GM-350 и сделано.
viewtopic.php?f=53&t=2606&p=64413#p64413

Но!!! На GM-350 слабый вход. Без операционного усилителя в цепи TX не хотело работать. И настройка девиации очень не "красивая". Рассматриваю данный вариант как временный.
Заказал GM340 и GM360. По окончании экспериментов отпишусь какая лучше.
R0AET
R0AET
Сообщения: 403
Зарегистрирован: 20 фев 2015, 09:40
позывной: R0AET
CиБи позывной: Путник
Имя: Владимир
Откуда: Мой QTH NO88PB (RDA-КК29)
Контактная информация:

Re: DMR MMDVM-Hotspot

Сообщение R0AET » 27 мар 2017, 13:18

Дополню тонкости...
При заказе плат OrangePI PC+ или Raspberry PI3 лучше брать комплектом с радиаторами и блоком питания. Корпус в нашем случае - это лишнее.
Про Orange PI PC+ - отличительная особенность - встроенная флеш-память на которую переносится операционка. Работает быстрее, и долговечнее(так утверждают некоторые). Ну и цена ее по сравнению с распбери ниже. Для наших проектов вполне пригодна. Но если хотите универсальную сборку- а ля кавказ, http://goryham.qrz.ru/voip/mmdvm-img.htm
где:
+ Официальный Raspbian Jessie with PIXEL с сайта raspberrypi.org
+ Логин (pi) и пароль (raspberry) стандартные
+ Ethernet сеть настроена на статически адрес 192.168.0.85 шлюз 192.168.0.1
+ WI-FI сеть настроена на статически адрес 192.168.1.85 шлюз 192.168.1.1
+ Отключен блютуз
+ Укреплена защита
+ Включены VNC и SSH
+ Обновлено радиолюбительское меню
+ Свежие версии MMDVMHost, MMDVMCalibration, Arduino IDE
+ Файл MMDVM.ini предварительно настроен, осталось добавить свои данные
+ Добавлен APRS маяк для DMR (смотреть на сайте aprs.fi)
+ Активирован dashboard DG9VH на 80-ом порту
+ Задержка автоматического запуска MMDVMHost, на 2 минуты
+ Управление ircDDB Gateway из меню
+ В меню встроен YSF Gateway и Parrot для C4FM
+ Добавлен скрипт для прошивки радиостанции Retevis RT3
+ DMR ID Database обновляется на диске RN6LKO

то лучше заказывать Raspberry PI3. На оранж это не ставиться....
R0AET
Аватара пользователя
enthru
Сообщения: 1072
Зарегистрирован: 30 ноя 2015, 23:27
позывной: R0AFJ
Имя: Глеб
Откуда: Красноярск
Контактная информация:

Re: DMR MMDVM-Hotspot

Сообщение enthru » 27 мар 2017, 23:18

R0AET писал(а): Сразу скажу почему не сделал sudo apt-get upgrade... При первой попытке сборки, я запустил апгрейд, и он завис на каком-то этапе. Пришлось ось переустанавливать. Второй раз не стал терять время на эксперименты и просто пропустил этот пункт.

Ну и зря, он наверное просто initramfs долго билдил.
R0AET
Сообщения: 403
Зарегистрирован: 20 фев 2015, 09:40
позывной: R0AET
CиБи позывной: Путник
Имя: Владимир
Откуда: Мой QTH NO88PB (RDA-КК29)
Контактная информация:

Re: DMR MMDVM-Hotspot

Сообщение R0AET » 27 мар 2017, 23:27

enthru писал(а):
R0AET писал(а): Сразу скажу почему не сделал sudo apt-get upgrade... При первой попытке сборки, я запустил апгрейд, и он завис на каком-то этапе. Пришлось ось переустанавливать. Второй раз не стал терять время на эксперименты и просто пропустил этот пункт.

Ну и зря, он наверное просто initramfs долго билдил.
Часа два?! Наврядле...
R0AET
Аватара пользователя
xitry
Сообщения: 60
Зарегистрирован: 26 сен 2014, 12:31
Имя: дмитрий
Откуда: красноярск

Re: DMR MMDVM-Hotspot

Сообщение xitry » 30 мар 2017, 21:09

А можно поподробнее о подключении моторолы через аксесуарный разьем какие пины использовать по приему и какие настройки ,суть старый ноутбук с запущеным dcdplus ,отключены все фильтра в моторолле но пакеты все равно идут с ошибками ,пробовал gm300 gm360 p040 gp340 а вот кенвуд тм 733 работает на ура но это и понятно у него есть порт 9600 для подключения.
R0AET
Сообщения: 403
Зарегистрирован: 20 фев 2015, 09:40
позывной: R0AET
CиБи позывной: Путник
Имя: Владимир
Откуда: Мой QTH NO88PB (RDA-КК29)
Контактная информация:

Re: DMR MMDVM-Hotspot

Сообщение R0AET » 30 мар 2017, 21:28

Экспериментируя с различными образами на Малину (Буду так называть Raspberry PI3 - для краткости), столкнулся с одной неприятностью.
Скачав образ "весом" 2гига и распаковав - обнаружил файл имиджа "весом" 30 гигов !!!!! Причем на флешку 32г (29.8 - определялось) этот образ не влезал...
Облазив весь интернет на тему уменьшения образа (требовалось всего лишь убрать из образа пустое пространство), и перепробовав множество программ - сделал неутешительный вывод - не все так просто.
Если бы была флешка на 64гига - то все нормально, но покупать ради одного преобразования флеху за два рубля не было желания. Спас ситуацию USB-винт и ноут с Убунтой...
Наверно можно было это сделать и в винде, но мне показалось проще на Убунте. И так...
Закачав образ на свободное место в убунту, штатной программой записал ("развернул") его на винт ПРИ ЭТОМ ТЕРЯЕТСЯ ВСЯ ИНФОРМАЦИЯ НА ВИНТЕ!!!!
Прграммой GPART - уменьшил размер раздела на винте до приемлемого размера. (Тут я поторопился, и сделал для 32г флешки, а надо было хотя бы для 16г.) И опять же стандартными командами типа -

Команды требовали ROOT, а в убунте это делается так:
В терминале вводим su и вводим пароль - терминал работает теперь от имени root...

sudo mkdir /mnt/usbf //Создаем файл для монтирования флешки на которую будем писать образ с USB-HDD
sudo mount /dev/sdс /mnt/usbf //Монтируем сюда свою флешку у меня определилась как sdc

sudo dd bs=4M if=/dev/sda(ТУТ СВОЙ ЖЕСТКИЙ ДИСК ИЛИ ЧЕГО ТАМ У ВАС) of=/mnt/usbf/my_raspbian.img

После этого такое ощущение было - что "все пропало!!!" - но процесс длительный - около получаса занял. И в результате на флешке уже был образ Малины. Вставил в плату малины - и все отлично! Работает...
Будут вопросы - а они скорее всего могут возникнуть у желающих повторить, отвечу. Сейчас подробнее не смогу, так как пишу по памяти, и все не упомню...
R0AET
Ответить