Настройки MMDVM.ini для Orange PI zero 3 (часть 5)

Настройки MMDVM.ini для Orange PI zero 3

Никаких внятных объяснений на русских сайтах я не нашёл про настройки MMDVM.ini для MMDVMHost по «неопределённым» мне переменным. Таким образом я R2AADR сам экспериментальным путём, путём проб и ошибок нормально настроил свой MMDVM_HS_Dual_Hat (MMDVM) без советов тех людей кто в этом не шарит или что-то слышал или ссылок на забугорные сайты. Выше на картинке указано схемотическое шлейфовое подключение платы разъёмов радиомодема и компьютера (по «ключу»). Между ними находится у меня вентилятор 5В обдувающий плату «Апельсинки» и её радиаторы. Далее по тексту я представляю свою настройку файл MMDVM.ini для Orange PI zero 3 «Апельсинки». В частности, хочу обратить особое внимание на строку, с которой я очень долго промучался, что даже пришлось научиться программировать GPIO из-за этого: [Modem] UARTPort=/dev/ttyAS5 UARTSpeed=115200, а не как везде пишут: UARTPort=/dev/ttyS0!!!! или /ttyAMO0…нихрена у вас не получится и нигде это не описано (почему именно так), на «Апельсинке» этот порт называется «ttAS5» (Ти Ти Эй Эс ПЯТЬ) что было мной найдено опытным путём! При правильной прописке порта ваш модем должен в логах определится примерно так: MMDVM_HS_Dual_Hat-v1.5.2 20201108 14.7456MHz dual ADF7021 FW by CA6JAU GitID #89daa20. И радостно заработать на все китайские деньги моргая оранжевым светодиодиком на своей плате DMR+ и красным PTT (и ещё двумя)! А не MMDMV (unknown)! Так же вы можете скачать MMDVM.ini файл примера мой файл настроек, поменяв самостоятельно на достаточно простые пункты на свои под плату радиомодема Duplex для DMR:

[General]
Callsign=R2R2R2
Id=2500777
Timeout=160
# Duplex=1
Duplex=1
# ModeHang=10
RFModeHang=3
NetModeHang=2
Display=OLED
# Display=CAST
Daemon=0

[Info]
RXFrequency=434560000
TXFrequency=431560000
Power=1
# The following lines are only needed if a direct connection to a DMR master is being used
Latitude=55.7648257
Longitude=37.4732676
Height=12
Location=KO83RD, Moscow
Description=MMDVM_HS_Dual_Hat
URL=helpset.ru

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

[CW Id]
Enable=1
Time=30
Callsign=R2R2R2

[DMR Id Lookup]
File=DMRIds.dat
Time=12

[NXDN Id Lookup]
File=NXDN.csv
Time=12

[Modem]
# Valid values are «null», «uart», «udp», and (on Linux) «i2c»
Protocol=uart
# Protocol=null
# The port and speed used for a UART connection
# UARTPort=\\.\COM4
# UARTPort=/dev/ttyS0
# UARTPort=/dev/kmsg
# UARTPort=/dev/i2c-3
# UARTSpeed=460800
# UARTPort=/dev/ttyACM0
UARTPort=/dev/ttyAS5
UARTSpeed=115200
# The port and address for an I2C connection
# I2CPort=/dev/i2c
# I2CAddress=0x22
# IP parameters for UDP connection
ModemAddress=127.0.0.1
ModemPort=3334
LocalAddress=127.0.0.1
LocalPort=3335

TXInvert=1
RXInvert=0
PTTInvert=0
TXDelay=10
RXOffset=0
TXOffset=0
DMRDelay=0
RXLevel=75
TXLevel=55
RXDCOffset=0
TXDCOffset=0
RFLevel=100
# CWIdTXLevel=50
# D-StarTXLevel=50
# DMRTXLevel=55
# YSFTXLevel=50
# P25TXLevel=50
# NXDNTXLevel=50
# M17TXLevel=50
# POCSAGTXLevel=50
# FMTXLevel=50
# AX25TXLevel=50
RSSIMappingFile=RSSI.dat
UseCOSAsLockout=0
Trace=0
Debug=0

[Transparent Data]
Enable=0
RemoteAddress=192.168.0.15
RemotePort=40094
LocalPort=40095
# SendFrameType=0

[D-Star]
Enable=0
Module=C
SelfOnly=0
AckReply=1
AckTime=750
AckMessage=0
ErrorReply=1
RemoteGateway=0
# ModeHang=10
WhiteList=

[DMR]
Enable=1
Beacons=0
BeaconInterval=120
BeaconDuration=1
ColorCode=1
SelfOnly=0
EmbeddedLCOnly=0
DumpTAData=1
# Prefixes=250
# Slot1TGWhiteList=
# Slot2TGWhiteList=
CallHang=2
TXHang=3
# ModeHang=1
TGRewriteSlot1=0
TGRewriteSlot2=0
BMAutoRewrite=0
BMRewriteReflectorVoicePrompts=0
# OVCM Values, 0=off, 1=rx_on, 2=tx_on, 3=both_on, 4=force off
# OVCM=3

[System Fusion]
Enable=0
LowDeviation=0
SelfOnly=0
TXHang=4
RemoteGateway=0
# ModeHang=10

[P25]
Enable=0
NAC=293
SelfOnly=0
OverrideUIDCheck=0
RemoteGateway=0
TXHang=5
# ModeHang=10

[NXDN]
Enable=0
RAN=1
SelfOnly=0
RemoteGateway=0
TXHang=5
# ModeHang=10

[M17]
Enable=0
CAN=0
SelfOnly=0
TXHang=5
# ModeHang=10

[POCSAG]
Enable=0
Frequency=439987500

[FM]
Enable=0
Callsign=R2R2R2
CallsignSpeed=20
CallsignFrequency=1000
CallsignTime=10
CallsignHoldoff=0
CallsignHighLevel=50
CallsignLowLevel=20
CallsignAtStart=1
CallsignAtEnd=1
CallsignAtLatch=0
RFAck=K
ExtAck=N
AckSpeed=20
AckFrequency=1750
AckMinTime=4
AckDelay=1000
AckLevel=50
# Timeout=180
TimeoutLevel=80
CTCSSFrequency=88.4
CTCSSThreshold=30
# CTCSSHighThreshold=30
# CTCSSLowThreshold=20
CTCSSLevel=20
KerchunkTime=0
HangTime=7
# AccessMode values are:
#   0 — Carrier access with COS
#   1 — CTCSS only access without COS
#   2 — CTCSS only access with COS
#   3 — CTCSS only access with COS to start, then carrier access with COS
AccessMode=1
# LinkMode=1 to remove almost all of the logic control
LinkMode=0
COSInvert=0
NoiseSquelch=0
SquelchThreshold=30
# SquelchHighThreshold=30
# SquelchLowThreshold=20
RFAudioBoost=1
MaxDevLevel=90
ExtAudioBoost=1
# ModeHang=10

[AX.25]
Enable=0
TXDelay=300
RXTwist=6
SlotTime=30
PPersist=128
Trace=1

[D-Star Network]
Enable=0
LocalAddress=127.0.0.1
LocalPort=20011
GatewayAddress=127.0.0.1
GatewayPort=20010
# ModeHang=3
Debug=0

[DMR Network]
Enable=1
# Type may be either ‘Direct’ or ‘Gateway’. When Direct you must provide the Master’s
# address as well as the Password, and for DMR+, Options also.
Type=Direct
LocalAddress=192.168.0.15
LocalPort=62032
# RemoteAddress=44.131.4.1
RemoteAddress=2502.master.brandmeister.network
RemotePort=62031
Password=nagoresiditkorol
RSSI=0
Jitter=250
Slot1=1
Slot2=1
# Options=
# Options=»StartRef=250;RelinkTime=15;UserLink=1;TS2_1=2505;TS2_2=2501;»
Debug=0

[System Fusion Network]
Enable=0
LocalAddress=127.0.0.1
LocalPort=3200
GatewayAddress=127.0.0.1
GatewayPort=4200
# ModeHang=3
Debug=0

[P25 Network]
Enable=0
LocalAddress=127.0.0.1
LocalPort=32010
GatewayAddress=127.0.0.1
GatewayPort=42020
# ModeHang=3
Debug=0

[NXDN Network]
Enable=0
Protocol=Icom
LocalAddress=127.0.0.1
LocalPort=14021
GatewayAddress=127.0.0.1
GatewayPort=14020
# ModeHang=3
Debug=0

[M17 Network]
Enable=0
LocalAddress=127.0.0.1
LocalPort=17011
GatewayAddress=127.0.0.1
GatewayPort=17010
# ModeHang=3
Debug=0

[POCSAG Network]
Enable=0
LocalAddress=127.0.0.1
LocalPort=3800
GatewayAddress=127.0.0.1
GatewayPort=4800
# ModeHang=3
Debug=0

[FM Network]
Enable=0
# Protocol=USRP
LocalAddress=127.0.0.1
LocalPort=3810
GatewayAddress=127.0.0.1
GatewayPort=4810
PreEmphasis=1
DeEmphasis=1
TXAudioGain=1.0
RXAudioGain=1.0
# ModeHang=3
Debug=0

[AX.25 Network]
Enable=0
Port=/dev/ttyp7
Speed=9600
Debug=0

[TFT Serial]
# Port=modem
Port=/dev/i2c-3
Brightness=50

[HD44780]
Rows=2
Columns=16

# For basic HD44780 displays (4-bit connection)
# rs, strb, d0, d1, d2, d3
Pins=11,10,0,1,2,3

# Device address for I2C
I2CAddress=0X3C
# I2CAddress=0X3C

# PWM backlight
PWM=1
PWMPin=21
PWMBright=100
PWMDim=16

DisplayClock=1
UTC=0

[Nextion]
# Port=modem
Port=/dev/i2c-3
Brightness=50
DisplayClock=1
UTC=0
#Screen Layout: 0=G4KLX 2=ON7LDS
ScreenLayout=2
IdleBrightness=20

[OLED]
Type=6
Brightness=0
Invert=0
Scroll=0
Rotate=0
Cast=0
LogoScreensaver=1

[LCDproc]
Address=localhost
Port=13666
#LocalPort=13667
DimOnIdle=0
DisplayClock=1
UTC=0

[Lock File]
Enable=0
File=/tmp/MMDVM_Active.lck

[Remote Control]
Enable=0
Address=127.0.0.1
Port=7642

Эти настройки боевые и работают на моём домашнем хотспоте чутли не каждый день для DMR. Проверить себя можно настроив: Private call id=250997 Parrot (Попугая) поорав матом от радости в свою рацию 🙂 Экран OLED (type=6) тоже перепрограммирован под порт /dev/i2c-3, но натройки разработчиков в этих настройках MMDVM.ini никак не влияют на него (дебилы блин разрабы, со своим pi-star, почему нельзя было для OLED… ммммм да). По-этому экран надо самостоятельно перекомпелировать из исходников ArduinoOLED.cpp под этот порт i23c — об этом другая будет статья (не без гемороя)! Экран у вас сам не заработает просто так 100%! По-поводу BER и offset=0 у меня всё точно настроено, а +-10 — можно пренебреч, т.к. ширина полосы DMR с головой перекрывает на Q5 эти копейки! И так у меня всё прекрасно работает, без глюков, включая экран! Здесь был R2AADR. Михаил. Всем хорошего дня и 73!

PS: И ещё. Если у вас связь идёт с обрывами то скорее всего грешите на «разрывы интернету». В моём случае с WiFi это был китайский пигтейл, тот что я не мог защёлкнуть нормально на плате (заказал ещё два штука из другой партии с Али). Ну а разъём там с жопу муровья, если вы знаете, уже третий раз у меня гнётся (стали из делать из позолоченной фольги видать, а не как раньше из консервных банок), и ни с микроскопом, ни с говноскопом, ни шилом, ни иглой — его «до характерного щелчка» его не защёлкнуть в плату. Будут разрывы связи 100% по ВайФай! И будет «рваться сигнал»! Переподключите вашу «Апельсинку» на кабель RG45 и повторите эксперимент. В добавок рекомендую для радиомодема MMDVM Duplex использовать нормалотные антенны от LoRaWAN складные, там КСВ=1 на 430MHz и выше — а не те писюны, что идут в комплекте с платой. А то будете дуть из антенны в антенну, даже не разведя их в разные стороны. Удачи!