<?xml version="1.0" encoding="utf-8"?><?xml-stylesheet type="text/xsl" href="atom.xsl"?>
<feed xmlns="http://www.w3.org/2005/Atom">
    <id>https://www.fpvgame.online/blog</id>
    <title>FPVGame Docs Blog</title>
    <updated>2026-07-08T00:00:00.000Z</updated>
    <generator>https://github.com/jpmonette/feed</generator>
    <link rel="alternate" href="https://www.fpvgame.online/blog"/>
    <subtitle>FPVGame Docs Blog</subtitle>
    <icon>https://www.fpvgame.online/img/favicon.ico</icon>
    <entry>
        <title type="html"><![CDATA[DX-888 高灵敏度 TEF6686 收音机 — 完整使用说明书]]></title>
        <id>https://www.fpvgame.online/blog/dx-888-tef6686-radio-cn</id>
        <link href="https://www.fpvgame.online/blog/dx-888-tef6686-radio-cn"/>
        <updated>2026-07-08T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[DX-888 高灵敏度收音机中文说明书 — 基于 NXP TEF6686 车规级 DSP 芯片， ESP32 主控，触摸屏，支持 RDS 显示、全频段接收。
]]></summary>
        <content type="html"><![CDATA[<p><strong>DX-888</strong> 是一款基于 NXP 车规级 <strong>TEF6686</strong> DSP 芯片的高灵敏度便携式收音机，
由 ARESQ 开发。它结合了出色的选择性和超高的灵敏度，搭载 ESP32 微控制器和
2.4 英寸触摸屏，功能丰富。</p>
<p><img decoding="async" loading="lazy" alt="DX-888 Radio" src="https://www.fpvgame.online/assets/images/dx888_radio-93867b45de535d5941a13e61041754ba.png" width="516" height="323" class="img_ev3q"></p>
<!-- -->
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="一产品简介">一、产品简介<a href="https://www.fpvgame.online/blog/dx-888-tef6686-radio-cn#%E4%B8%80%E4%BA%A7%E5%93%81%E7%AE%80%E4%BB%8B" class="hash-link" aria-label="Direct link to 一、产品简介" title="Direct link to 一、产品简介" translate="no">​</a></h2>
<p>DX-888 是 ARESQ 基于 NXP 高性能车规级 TEF6686 芯片开发的高灵敏度收音机，
具有出色的选择性和超高的灵敏度。作为车载 DSP 调谐器，它集成了丰富的功能
和先进算法（CEQ、EMS、iMS、PACS、噪声消除等），并采用 SDR（软件定义无线电）
信号处理技术。在应对多径干扰、邻频干扰、弱信号和噪声消除方面具有显著优势。</p>
<p>基于 PE5PVB 的开源项目 TEF6686_ESP32，DX-888 支持丰富的进阶功能，远超普通收音机：</p>
<ul>
<li class="">几乎所有 RDS（广播数据系统）数据显示（需当地电台支持）</li>
<li class="">自动/手动电台扫描</li>
<li class="">静噪功能</li>
<li class="">电池电压显示</li>
<li class="">可更换主题和多语言支持</li>
<li class="">电台存储</li>
</ul>
<p>参考成熟 TEF6686 前端接收电路重新设计，DX-888 配备 2.4 英寸电阻式触摸 LCD
彩色屏幕，在保证便携性的同时显示丰富的 RDS 信息。新增虚拟数字键盘用于快速频率
输入，大容量 1000mAh 电池续航更久。</p>
<hr>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="二基本参数">二、基本参数<a href="https://www.fpvgame.online/blog/dx-888-tef6686-radio-cn#%E4%BA%8C%E5%9F%BA%E6%9C%AC%E5%8F%82%E6%95%B0" class="hash-link" aria-label="Direct link to 二、基本参数" title="Direct link to 二、基本参数" translate="no">​</a></h2>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="21-核心元件">2.1 核心元件<a href="https://www.fpvgame.online/blog/dx-888-tef6686-radio-cn#21-%E6%A0%B8%E5%BF%83%E5%85%83%E4%BB%B6" class="hash-link" aria-label="Direct link to 2.1 核心元件" title="Direct link to 2.1 核心元件" translate="no">​</a></h3>
<table><thead><tr><th>元件</th><th>规格</th></tr></thead><tbody><tr><td>收音芯片</td><td>NXP TEF6686HN/V102（芯片型号 F8602）</td></tr><tr><td>主控芯片</td><td>ESP32-WROOM-32U，4MB Flash，Wi-Fi + 蓝牙双核模块</td></tr><tr><td>显示技术</td><td>2.4 英寸 LCD 屏，320×240 分辨率，IPS 全视角，电阻触摸</td></tr><tr><td>控制方式</td><td>默认：旋钮调谐；支持第三方 9341 触摸屏固件</td></tr></tbody></table>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="22-频率范围">2.2 频率范围<a href="https://www.fpvgame.online/blog/dx-888-tef6686-radio-cn#22-%E9%A2%91%E7%8E%87%E8%8C%83%E5%9B%B4" class="hash-link" aria-label="Direct link to 2.2 频率范围" title="Direct link to 2.2 频率范围" translate="no">​</a></h3>
<table><thead><tr><th>波段</th><th>频率范围</th><th>适用地区/场景</th><th>步进</th></tr></thead><tbody><tr><td>FM</td><td>65-108MHz</td><td>俄罗斯/东欧</td><td>OIRT 默认：30kHz；FM 可选：50/100/200kHz（默认 100kHz）</td></tr><tr><td></td><td>76-95MHz</td><td>日本</td><td></td></tr><tr><td></td><td>76-108MHz</td><td>校园广播</td><td></td></tr><tr><td></td><td>87-108MHz</td><td>欧洲/大洋洲/非洲/亚洲</td><td></td></tr><tr><td></td><td>87.5-108MHz</td><td>中国/美国</td><td></td></tr><tr><td>SW</td><td>1700-27000kHz</td><td>-</td><td>默认：5kHz</td></tr><tr><td>MW</td><td>522-1791kHz</td><td>-</td><td>默认：9kHz/10kHz</td></tr><tr><td>LW</td><td>144-513kHz</td><td>-</td><td>默认：9kHz</td></tr></tbody></table>
<blockquote>
<p>注意：DX-888 本身不支持 AIR 波段，如需 AIR 波段需外接下变频器（另售）。</p>
</blockquote>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="23-接收指标">2.3 接收指标<a href="https://www.fpvgame.online/blog/dx-888-tef6686-radio-cn#23-%E6%8E%A5%E6%94%B6%E6%8C%87%E6%A0%87" class="hash-link" aria-label="Direct link to 2.3 接收指标" title="Direct link to 2.3 接收指标" translate="no">​</a></h3>
<table><thead><tr><th>波段</th><th>拉杆天线接收灵敏度</th><th>选择性</th></tr></thead><tbody><tr><td>FM</td><td>≤0.5μV（S/N=30dB）</td><td>≥60dB（±150kHz）</td></tr><tr><td>SW</td><td>≤10μV（S/N=20dB）</td><td>≥60dB（BW=3kHz/±5kHz）</td></tr><tr><td>MW</td><td>≤10μV（S/N=20dB）</td><td>≥60dB（BW=3kHz/±9kHz）</td></tr><tr><td>LW</td><td>≤10μV（S/N=20dB）</td><td>≥60dB（BW=3kHz/±9kHz）</td></tr></tbody></table>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="24-音频与接口">2.4 音频与接口<a href="https://www.fpvgame.online/blog/dx-888-tef6686-radio-cn#24-%E9%9F%B3%E9%A2%91%E4%B8%8E%E6%8E%A5%E5%8F%A3" class="hash-link" aria-label="Direct link to 2.4 音频与接口" title="Direct link to 2.4 音频与接口" translate="no">​</a></h3>
<table><thead><tr><th>特性</th><th>规格</th></tr></thead><tbody><tr><td>天线接口</td><td>全波段外接天线，标准 SMA 母座</td></tr><tr><td>扬声器输出</td><td>TPA6211A1 功放芯片，4Ω/3W，低噪声低失真</td></tr><tr><td>耳机输出</td><td>HT97220 功放芯片，3.5mm 标准接口，独立双放大设计</td></tr><tr><td>通信接口</td><td>内置 CH340 USB 转串口芯片，TYPE-C 接口</td></tr></tbody></table>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="25-电源与尺寸">2.5 电源与尺寸<a href="https://www.fpvgame.online/blog/dx-888-tef6686-radio-cn#25-%E7%94%B5%E6%BA%90%E4%B8%8E%E5%B0%BA%E5%AF%B8" class="hash-link" aria-label="Direct link to 2.5 电源与尺寸" title="Direct link to 2.5 电源与尺寸" translate="no">​</a></h3>
<ul>
<li class="">电池：3.7V/1000mAh</li>
<li class="">工作电流：约 3.7V/120mA，续航约 10 小时</li>
<li class="">尺寸：50×82×20mm（不含天线座和天线）</li>
<li class="">重量：103g（单机）</li>
</ul>
<hr>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="三操作说明">三、操作说明<a href="https://www.fpvgame.online/blog/dx-888-tef6686-radio-cn#%E4%B8%89%E6%93%8D%E4%BD%9C%E8%AF%B4%E6%98%8E" class="hash-link" aria-label="Direct link to 三、操作说明" title="Direct link to 三、操作说明" translate="no">​</a></h2>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="31-基本操作">3.1 基本操作<a href="https://www.fpvgame.online/blog/dx-888-tef6686-radio-cn#31-%E5%9F%BA%E6%9C%AC%E6%93%8D%E4%BD%9C" class="hash-link" aria-label="Direct link to 3.1 基本操作" title="Direct link to 3.1 基本操作" translate="no">​</a></h3>
<table><thead><tr><th>控件</th><th>功能</th><th>操作说明</th></tr></thead><tbody><tr><td>TUNING 旋钮(B)</td><td>频率调节与步进切换</td><td>旋转：调频率；短按：切换步进；长按：锁定/解锁</td></tr><tr><td>VOLUME 旋钮(A)</td><td>音量调节</td><td>旋转调节音量</td></tr><tr><td>MODE 按键</td><td>调谐模式与菜单</td><td>短按：切换 MAN（手动）/AUTO（自动搜索）/MEM（存储）；长按：打开菜单（短按退出）</td></tr><tr><td>BW 按键</td><td>带宽选择与快捷页</td><td>FM 模式：短按切换立体声/单声道；AM 模式：短按切换带宽（3/4/6/8kHz）；长按：打开快捷页（短按退出）</td></tr><tr><td>BAND 按键</td><td>波段选择与虚拟数字键盘</td><td>短按：切换 LW/MW/SW/FML(OIRT)/FM；长按：打开虚拟数字键盘（短按退出）；按住 3 秒以上：休眠/关屏</td></tr></tbody></table>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="32-存储电台">3.2 存储电台<a href="https://www.fpvgame.online/blog/dx-888-tef6686-radio-cn#32-%E5%AD%98%E5%82%A8%E7%94%B5%E5%8F%B0" class="hash-link" aria-label="Direct link to 3.2 存储电台" title="Direct link to 3.2 存储电台" translate="no">​</a></h3>
<ol>
<li class="">调谐到目标电台。</li>
<li class="">按 MODE 键直至 "MEM" 高亮。</li>
<li class="">按下 TUNING 旋钮，"MEM" 变红。</li>
<li class="">选择想要的存储频道（红色 = 已存频率；绿色 = 空白）。</li>
<li class="">再次按下 TUNING 旋钮确认存储。</li>
</ol>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="33-高级操作">3.3 高级操作<a href="https://www.fpvgame.online/blog/dx-888-tef6686-radio-cn#33-%E9%AB%98%E7%BA%A7%E6%93%8D%E4%BD%9C" class="hash-link" aria-label="Direct link to 3.3 高级操作" title="Direct link to 3.3 高级操作" translate="no">​</a></h3>
<table><thead><tr><th>功能</th><th>操作</th></tr></thead><tbody><tr><td>切换编码器方向</td><td>开机时按住 BW 键</td></tr><tr><td>翻转屏幕</td><td>开机时按住 MODE 键</td></tr><tr><td>恢复出厂设置</td><td>开机时按住 BW + TUNING 旋钮</td></tr><tr><td>选择标准/光学编码器</td><td>开机时按住 TUNING 旋钮</td></tr></tbody></table>
<hr>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="四主界面与图标说明">四、主界面与图标说明<a href="https://www.fpvgame.online/blog/dx-888-tef6686-radio-cn#%E5%9B%9B%E4%B8%BB%E7%95%8C%E9%9D%A2%E4%B8%8E%E5%9B%BE%E6%A0%87%E8%AF%B4%E6%98%8E" class="hash-link" aria-label="Direct link to 四、主界面与图标说明" title="Direct link to 四、主界面与图标说明" translate="no">​</a></h2>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="41-界面总览">4.1 界面总览<a href="https://www.fpvgame.online/blog/dx-888-tef6686-radio-cn#41-%E7%95%8C%E9%9D%A2%E6%80%BB%E8%A7%88" class="hash-link" aria-label="Direct link to 4.1 界面总览" title="Direct link to 4.1 界面总览" translate="no">​</a></h3>
<p>主界面显示：频率、调谐模式（MAN/AUTO/MEM）、波段（FM/LW/MW/SW）、带宽
（AUTO BW）、信号强度、RDS 信息（PTY/PS/PI/RT）、电池电压、时间/日期
和静噪状态。</p>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="42-关键图标与触控操作">4.2 关键图标与触控操作<a href="https://www.fpvgame.online/blog/dx-888-tef6686-radio-cn#42-%E5%85%B3%E9%94%AE%E5%9B%BE%E6%A0%87%E4%B8%8E%E8%A7%A6%E6%8E%A7%E6%93%8D%E4%BD%9C" class="hash-link" aria-label="Direct link to 4.2 关键图标与触控操作" title="Direct link to 4.2 关键图标与触控操作" translate="no">​</a></h3>
<table><thead><tr><th>图标/显示项</th><th>含义</th><th>触控操作</th></tr></thead><tbody><tr><td>频率偏差状态</td><td>指示频率偏差</td><td>进入/退出定格模式</td></tr><tr><td>立体声/单声道指示</td><td>双圈 = 立体声；单圈 = 单声道</td><td>切换立体声/单声道</td></tr><tr><td>静音指示</td><td>高亮 = 静音中</td><td>进入/退出静音模式</td></tr><tr><td>RDS 图标</td><td>亮 = RDS 解调成功</td><td>进入/退出高级 RDS 视图</td></tr><tr><td>AUTO BW</td><td>解调带宽设置</td><td>开关自动带宽</td></tr><tr><td>Wi-Fi 图标</td><td>Wi-Fi 功能状态（开发中）</td><td>-</td></tr><tr><td>电池电压/百分比</td><td>电池状态</td><td>进入/退出屏保模式</td></tr><tr><td>信号强度值（如 43.3）</td><td>当前信号强度</td><td>左半：打开快捷页；右半：打开菜单页</td></tr><tr><td>SQ: OFF</td><td>静噪电平（OFF = 关闭）</td><td>触摸激活调节（标签变绿）</td></tr><tr><td>休眠模式指示</td><td>休眠模式状态</td><td>开关休眠模式</td></tr><tr><td>C/N（如 32dB）</td><td>载噪比</td><td>-</td></tr><tr><td>PTY</td><td>RDS 节目类型</td><td>-</td></tr><tr><td>PS</td><td>RDS 节目服务名称</td><td>左半：向下翻；右半：向上翻</td></tr><tr><td>PI</td><td>RDS 节目标识</td><td>切换显示：PI/时间/日期+时间</td></tr><tr><td>RT</td><td>RDS 电台文本</td><td>切换显示：RT/调试信息</td></tr></tbody></table>
<hr>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="五菜单说明">五、菜单说明<a href="https://www.fpvgame.online/blog/dx-888-tef6686-radio-cn#%E4%BA%94%E8%8F%9C%E5%8D%95%E8%AF%B4%E6%98%8E" class="hash-link" aria-label="Direct link to 五、菜单说明" title="Direct link to 五、菜单说明" translate="no">​</a></h2>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="51-菜单操作">5.1 菜单操作<a href="https://www.fpvgame.online/blog/dx-888-tef6686-radio-cn#51-%E8%8F%9C%E5%8D%95%E6%93%8D%E4%BD%9C" class="hash-link" aria-label="Direct link to 5.1 菜单操作" title="Direct link to 5.1 菜单操作" translate="no">​</a></h3>
<ul>
<li class="">打开：长按 MODE 键</li>
<li class="">退出并保存：短按 MODE 键或点击黄色字体区域</li>
<li class="">选择：旋转 TUNING 旋钮或直接点击菜单项</li>
<li class="">确认：短按 TUNING 旋钮</li>
</ul>
<blockquote>
<p>注意：黑色字体 = 简单模式菜单；红色字体 = 高级模式附加菜单。</p>
</blockquote>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="52-菜单分类与设置">5.2 菜单分类与设置<a href="https://www.fpvgame.online/blog/dx-888-tef6686-radio-cn#52-%E8%8F%9C%E5%8D%95%E5%88%86%E7%B1%BB%E4%B8%8E%E8%AE%BE%E7%BD%AE" class="hash-link" aria-label="Direct link to 5.2 菜单分类与设置" title="Direct link to 5.2 菜单分类与设置" translate="no">​</a></h3>
<h4 class="anchor anchorTargetStickyNavbar_Vzrq" id="521-主要设置">5.2.1 主要设置<a href="https://www.fpvgame.online/blog/dx-888-tef6686-radio-cn#521-%E4%B8%BB%E8%A6%81%E8%AE%BE%E7%BD%AE" class="hash-link" aria-label="Direct link to 5.2.1 主要设置" title="Direct link to 5.2.1 主要设置" translate="no">​</a></h4>
<ul>
<li class="">模式选择：便携触摸/基地/便携</li>
<li class="">设置 FM 波段：FM/FML/无</li>
<li class="">设置 AM 波段：LW/MW/SW/AIR/无（可多选组合）</li>
<li class="">屏保时间：关/3 秒/10 秒/30 秒/60 秒</li>
<li class="">屏保选项：关屏/1% 亮度/25% 亮度/50% 亮度</li>
<li class="">系统使用模式：简单模式/高级模式</li>
<li class="">设置首页：主页/打开菜单/虚拟数字键盘/快捷页/高级 RDS/AF 屏</li>
<li class="">自动关机定时器：关/1-480 分钟（可调）</li>
<li class="">动态 SPI 速度：默认 55MHz（5-70MHz 可调/自动）</li>
<li class="">自动定格：关/开</li>
<li class="">定格定时器：0-120 秒（可调）</li>
<li class="">关机后：按 BW 键重新开机</li>
</ul>
<h4 class="anchor anchorTargetStickyNavbar_Vzrq" id="522-音频设置">5.2.2 音频设置<a href="https://www.fpvgame.online/blog/dx-888-tef6686-radio-cn#522-%E9%9F%B3%E9%A2%91%E8%AE%BE%E7%BD%AE" class="hash-link" aria-label="Direct link to 5.2.2 音频设置" title="Direct link to 5.2.2 音频设置" translate="no">​</a></h4>
<ul>
<li class="">设置音量：-60dB 到 +24dB（TEF6686 内部 DAC，默认 0dB）</li>
<li class="">边界提示音：关/开</li>
<li class="">音频输出：立体声/MPX</li>
<li class="">立体声阈值：关/30-60dBμV（可调）</li>
<li class="">高切拐点：1500-7000Hz（可调）</li>
<li class="">高切阈值：关/20-60dBμV（可调）</li>
<li class="">FM 去加重：50μs/75μs/关</li>
<li class="">使用静噪：开/关/自动</li>
</ul>
<h4 class="anchor anchorTargetStickyNavbar_Vzrq" id="523-显示设置">5.2.3 显示设置<a href="https://www.fpvgame.online/blog/dx-888-tef6686-radio-cn#523-%E6%98%BE%E7%A4%BA%E8%AE%BE%E7%BD%AE" class="hash-link" aria-label="Direct link to 5.2.3 显示设置" title="Direct link to 5.2.3 显示设置" translate="no">​</a></h4>
<ul>
<li class="">语言：英语/简体中文</li>
<li class="">设置对比度：1%-100%（连续可调）</li>
<li class="">信号表：开/关</li>
<li class="">信号刷新间隔：30-1000ms（可调）</li>
<li class="">信号表单位：dBμV/dBf/dBm</li>
<li class="">电池选项：显示电压/显示百分比/关</li>
<li class="">电池校正偏移：调整电压显示偏移</li>
<li class="">调制度表：开/关</li>
<li class="">主题：Essence/Cyan/Crimson/Monochrome/Volcano/Dendro/Sakura/Whiteout/Tangerine/Ocean/Indigo/Maroon/Chinese Red/Retro/GoldBrite</li>
<li class="">频率字体：Aura2/Comic/Modern/Classic/Roubenstil/Motoya</li>
<li class="">翻转屏幕显示：点击翻转</li>
<li class="">反转屏幕颜色：点击反转</li>
<li class="">设置 UI 圆角：修改菜单显示风格</li>
<li class="">彩条显示模式：新版/经典</li>
<li class="">显示系统时钟：开/关</li>
<li class="">时钟显示模式：仅时间/日期+时间</li>
<li class="">时间显示格式：24 小时/12 小时</li>
<li class="">显示调试信息：关/开</li>
</ul>
<h4 class="anchor anchorTargetStickyNavbar_Vzrq" id="524-rds-设置">5.2.4 RDS 设置<a href="https://www.fpvgame.online/blog/dx-888-tef6686-radio-cn#524-rds-%E8%AE%BE%E7%BD%AE" class="hash-link" aria-label="Direct link to 5.2.4 RDS 设置" title="Direct link to 5.2.4 RDS 设置" translate="no">​</a></h4>
<ul>
<li class="">显示 RDS 错误：小/大/全部/关</li>
<li class="">区域：欧洲/USA(DB)/USA/加拿大</li>
<li class="">RDS 显示下划线：关/开</li>
<li class="">RDS 过滤器：开/关</li>
<li class="">显示 PI 错误：关/开</li>
<li class="">使用 AF：关/开/REG 开/开/REG 关</li>
<li class="">RT 缓冲：开/关</li>
<li class="">自动排序 AF：开/关</li>
<li class="">快速 PS：初始/始终/关</li>
<li class="">显示 RDS 时钟：开/关</li>
<li class="">显示长 PS：开/关</li>
<li class="">禁用所有 RDS：关/开</li>
</ul>
<h4 class="anchor anchorTargetStickyNavbar_Vzrq" id="525-fmam-设置">5.2.5 FM/AM 设置<a href="https://www.fpvgame.online/blog/dx-888-tef6686-radio-cn#525-fmam-%E8%AE%BE%E7%BD%AE" class="hash-link" aria-label="Direct link to 5.2.5 FM/AM 设置" title="Direct link to 5.2.5 FM/AM 设置" translate="no">​</a></h4>
<h5 class="anchor anchorTargetStickyNavbar_Vzrq" id="fm-设置">FM 设置<a href="https://www.fpvgame.online/blog/dx-888-tef6686-radio-cn#fm-%E8%AE%BE%E7%BD%AE" class="hash-link" aria-label="Direct link to FM 设置" title="Direct link to FM 设置" translate="no">​</a></h5>
<ul>
<li class="">设置变频偏移：MHz（可调）</li>
<li class="">设置低端边界：最低 65MHz</li>
<li class="">设置高端边界：最高 108MHz</li>
<li class="">设置电平偏移：-25 到 +15dB（可调）</li>
<li class="">设置低电平阈值：-15 到 30dBμV（可调）</li>
<li class="">FM 软静音：关/开</li>
<li class="">FM 噪声消除器：关/50%-150%（可调）</li>
<li class="">FM 默认步进：100kHz/200kHz/50kHz</li>
<li class="">FM AGC：92-84dBμV（可调）</li>
<li class="">FMSI 立体声改善：关（仅 6687/6689 芯片）</li>
<li class="">设置 FML 波段：65-74MHz/76-87MHz</li>
</ul>
<h5 class="anchor anchorTargetStickyNavbar_Vzrq" id="am-设置">AM 设置<a href="https://www.fpvgame.online/blog/dx-888-tef6686-radio-cn#am-%E8%AE%BE%E7%BD%AE" class="hash-link" aria-label="Direct link to AM 设置" title="Direct link to AM 设置" translate="no">​</a></h5>
<ul>
<li class="">AM 软静音：开/关</li>
<li class="">AM 射频电平偏移：-50 到 +15dB（可调）</li>
<li class="">显示 SW 波长：开/关</li>
<li class="">同频检测灵敏度：关/50%-150%（可调）</li>
<li class="">同频检测计数：1-15（可调）</li>
<li class="">AM ATT：关/6dB/12dB/18dB/24dB/30dB/36dB</li>
<li class="">AM AGC：94-102dBμV（可调）</li>
<li class="">MW 默认步进：9kHz/10kHz</li>
<li class="">AIR 波段转换：81-135MHz（可编程）</li>
<li class="">AIR 起始频率：118MHz/108MHz</li>
</ul>
<h4 class="anchor anchorTargetStickyNavbar_Vzrq" id="526-连接设置">5.2.6 连接设置<a href="https://www.fpvgame.online/blog/dx-888-tef6686-radio-cn#526-%E8%BF%9E%E6%8E%A5%E8%AE%BE%E7%BD%AE" class="hash-link" aria-label="Direct link to 5.2.6 连接设置" title="Direct link to 5.2.6 连接设置" translate="no">​</a></h4>
<blockquote>
<p>⚠ 注意：以下功能目前尚未支持，需自行安装 Wi-Fi 天线方可使用。</p>
</blockquote>
<ul>
<li class="">USB 模式：XDRGTK/RDS Spy</li>
<li class="">Wi-Fi 激活：关/开</li>
<li class="">配置 Wi-Fi：连接收音机热点进行设置</li>
<li class="">电台列表客户端 IP：可自定义</li>
<li class="">电台列表 ID：1-10（可调）</li>
<li class="">XDRGTK 时关屏：关</li>
<li class="">Wi-Fi 自动断开：禁用/1-1440 分钟（可调）</li>
<li class="">蓝牙激活：关</li>
</ul>
<h4 class="anchor anchorTargetStickyNavbar_Vzrq" id="527-频率扫描与自动搜索">5.2.7 频率扫描与自动搜索<a href="https://www.fpvgame.online/blog/dx-888-tef6686-radio-cn#527-%E9%A2%91%E7%8E%87%E6%89%AB%E6%8F%8F%E4%B8%8E%E8%87%AA%E5%8A%A8%E6%90%9C%E7%B4%A2" class="hash-link" aria-label="Direct link to 5.2.7 频率扫描与自动搜索" title="Direct link to 5.2.7 频率扫描与自动搜索" translate="no">​</a></h4>
<h5 class="anchor anchorTargetStickyNavbar_Vzrq" id="频率扫描">频率扫描<a href="https://www.fpvgame.online/blog/dx-888-tef6686-radio-cn#%E9%A2%91%E7%8E%87%E6%89%AB%E6%8F%8F" class="hash-link" aria-label="Direct link to 频率扫描" title="Direct link to 频率扫描" translate="no">​</a></h5>
<ul>
<li class="">开始 DX 扫描：点击开始</li>
<li class="">扫描波段：FM/LW/MW/SW/AIR/默认/FML</li>
<li class="">起始/结束频道：可自定义</li>
<li class="">等待时间：设置扫描间隔</li>
<li class="">扫描方式：排除/仅扫</li>
<li class="">自动取消模式：信号/关/校正 PI</li>
<li class="">取消扫描模式：停留/中断</li>
<li class="">扫描时静音：开/关</li>
<li class="">扫描时关屏：开/关</li>
</ul>
<h5 class="anchor anchorTargetStickyNavbar_Vzrq" id="自动搜索">自动搜索<a href="https://www.fpvgame.online/blog/dx-888-tef6686-radio-cn#%E8%87%AA%E5%8A%A8%E6%90%9C%E7%B4%A2" class="hash-link" aria-label="Direct link to 自动搜索" title="Direct link to 自动搜索" translate="no">​</a></h5>
<ul>
<li class="">开始自动搜索：点击开始</li>
<li class="">搜索保存模式：覆盖/追加</li>
<li class="">搜索波段：FM/LW/MW/SW/AIR/FML</li>
<li class="">FM 采样次数：1-30（可调）</li>
<li class="">FM 多径限制：可配置</li>
<li class="">FM 扫描灵敏度：1-15（可调）</li>
<li class="">AM 采样次数：1-30（可调）</li>
<li class="">AM 采样保持：10-1000ms（可调）</li>
<li class="">AM 扫描灵敏度：1-20（可调）</li>
<li class="">判断模式：质量优先/数量优先</li>
<li class="">保存带宽：默认/当前</li>
<li class="">搜索时静音：关/开</li>
<li class="">搜索时关屏：关/开</li>
<li class="">保存起始频道：1-99（可调）</li>
<li class="">SW 搜索起始/停止：1800-27000kHz（可调）</li>
<li class="">整理电台：去重排序/仅去重</li>
<li class="">删除电台：点击删除</li>
</ul>
<h4 class="anchor anchorTargetStickyNavbar_Vzrq" id="528-操作设置">5.2.8 操作设置<a href="https://www.fpvgame.online/blog/dx-888-tef6686-radio-cn#528-%E6%93%8D%E4%BD%9C%E8%AE%BE%E7%BD%AE" class="hash-link" aria-label="Direct link to 5.2.8 操作设置" title="Direct link to 5.2.8 操作设置" translate="no">​</a></h4>
<ul>
<li class="">菜单显示风格：新版(纵向)/新版(横向)/经典</li>
<li class="">快速切换菜单：开/关</li>
<li class="">触摸类型：Int33/Int27/关/轮询</li>
<li class="">触摸校准：点击开始</li>
<li class="">触摸间隔：默认 300ms（可调）</li>
<li class="">旋钮使用方式：经典/新版</li>
<li class="">旋钮调节静噪：开/关（开启后可用 TUNING 旋钮调节静噪阈值）</li>
<li class="">关屏旋转：开/关</li>
<li class="">反转旋钮方向：点击切换方向</li>
<li class="">变速旋钮：快/关/中</li>
<li class="">长按 Rotary 键：锁定&amp;解锁/原操作/打开菜单/虚拟数字键盘/快捷页/高级 RDS/AF 屏</li>
<li class="">长按 BW 键：快捷页/高级 RDS/AF 屏/锁定&amp;解锁/原操作/打开菜单/虚拟数字键盘</li>
<li class="">长按 Mode 键：原操作/打开菜单/虚拟数字键盘/快捷页/高级 RDS/AF 屏/锁定&amp;解锁</li>
</ul>
<h4 class="anchor anchorTargetStickyNavbar_Vzrq" id="529-其他设置">5.2.9 其他设置<a href="https://www.fpvgame.online/blog/dx-888-tef6686-radio-cn#529-%E5%85%B6%E4%BB%96%E8%AE%BE%E7%BD%AE" class="hash-link" aria-label="Direct link to 5.2.9 其他设置" title="Direct link to 5.2.9 其他设置" translate="no">​</a></h4>
<ul>
<li class="">设置日期/时间：配置年/月/日/时/分/秒</li>
<li class="">设置本地时区：调整时区偏移</li>
<li class="">NTP 时间同步：开/关</li>
<li class="">RDS 时间同步：关/开</li>
<li class="">删除 RDS 字典：点击删除</li>
<li class="">系统信息：显示内存使用情况</li>
<li class="">恢复出厂设置：恢复默认</li>
<li class="">固件版本：显示当前版本</li>
</ul>
<h4 class="anchor anchorTargetStickyNavbar_Vzrq" id="5210-我的设置">5.2.10 我的设置<a href="https://www.fpvgame.online/blog/dx-888-tef6686-radio-cn#5210-%E6%88%91%E7%9A%84%E8%AE%BE%E7%BD%AE" class="hash-link" aria-label="Direct link to 5.2.10 我的设置" title="Direct link to 5.2.10 我的设置" translate="no">​</a></h4>
<ul>
<li class="">我的 ATS 方案：编辑/搜索自定义 ATS 方案</li>
<li class="">使用 ATS 方案：选择搜索方案</li>
<li class="">我的 Scan 方案：编辑/搜索自定义扫描方案</li>
<li class="">使用 Scan 方案：选择扫描方案</li>
<li class="">我的最爱主题：设置 4 个主题自动切换</li>
<li class="">我的接收计划：编辑/自定义接收计划</li>
<li class="">使用接收计划：开/关</li>
<li class="">我的快捷图标：自定义快捷图标</li>
<li class="">保存我的设置：点击保存</li>
<li class="">恢复我的设置：点击恢复</li>
</ul>
<hr>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="六充电说明">六、充电说明<a href="https://www.fpvgame.online/blog/dx-888-tef6686-radio-cn#%E5%85%AD%E5%85%85%E7%94%B5%E8%AF%B4%E6%98%8E" class="hash-link" aria-label="Direct link to 六、充电说明" title="Direct link to 六、充电说明" translate="no">​</a></h2>
<ul>
<li class="">充电接口：TYPE-C</li>
<li class="">充电要求：5V 电压，1A+ 电流充电头（最大 5W 功率，不支持快充）</li>
<li class="">建议：关机充电</li>
<li class="">充电 LED 指示：红灯 = 充电中；灯灭 = 已充满</li>
</ul>
<hr>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="七包装清单">七、包装清单<a href="https://www.fpvgame.online/blog/dx-888-tef6686-radio-cn#%E4%B8%83%E5%8C%85%E8%A3%85%E6%B8%85%E5%8D%95" class="hash-link" aria-label="Direct link to 七、包装清单" title="Direct link to 七、包装清单" translate="no">​</a></h2>
<ol>
<li class="">主机 ×1（内置 3.7V/1000mAh 锂电池）</li>
<li class="">高品质拉杆天线（SMA 接口）×1</li>
</ol>
<hr>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="八固件升级">八、固件升级<a href="https://www.fpvgame.online/blog/dx-888-tef6686-radio-cn#%E5%85%AB%E5%9B%BA%E4%BB%B6%E5%8D%87%E7%BA%A7" class="hash-link" aria-label="Direct link to 八、固件升级" title="Direct link to 八、固件升级" translate="no">​</a></h2>
<ol>
<li class="">使用附带的 TYPE-C 数据线将收音机连接到电脑，设备管理器中会出现新的 COM 口。</li>
<li class="">打开收音机电源。</li>
<li class="">下载最新固件。</li>
<li class="">按照固件升级指南完成更新。</li>
</ol>
<blockquote>
<p><strong>驱动：</strong> 如果 COM 口无法识别，请安装 CH340/CH341 USB 转串口驱动：
<a href="https://www.wch-ic.com/downloads/CH341SER_EXE.html" target="_blank" rel="noopener noreferrer" class="">https://www.wch-ic.com/downloads/CH341SER_EXE.html</a></p>
</blockquote>]]></content>
        <author>
            <name>QwenPaw Agent</name>
            <uri>https://github.com/QwenPaw</uri>
        </author>
        <category label="Radio" term="Radio"/>
        <category label="TEF6686" term="TEF6686"/>
        <category label="DX-888" term="DX-888"/>
        <category label="SDR" term="SDR"/>
        <category label="Review" term="Review"/>
        <category label="Hardware" term="Hardware"/>
    </entry>
    <entry>
        <title type="html"><![CDATA[DX-888 High Sensitivity TEF6686 Radio — Full Review & Guide]]></title>
        <id>https://www.fpvgame.online/blog/dx-888-tef6686-radio</id>
        <link href="https://www.fpvgame.online/blog/dx-888-tef6686-radio"/>
        <updated>2026-07-04T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[DX-888 high sensitivity radio based on NXP TEF6686 automotive-grade DSP chip with ESP32, touch screen, RDS, and wideband reception.
]]></summary>
        <content type="html"><![CDATA[<p>The <strong>DX-888</strong> is a high-sensitivity portable radio developed by ARESQ,
built around NXP's automotive-grade <strong>TEF6686</strong> DSP chip. It combines
excellent selectivity, ultra-high sensitivity, and a rich feature set
powered by an ESP32 microcontroller with a 2.4-inch touch screen.</p>
<p><img decoding="async" loading="lazy" alt="DX-888 Radio" src="https://www.fpvgame.online/assets/images/dx888_radio-93867b45de535d5941a13e61041754ba.png" width="516" height="323" class="img_ev3q"></p>
<!-- -->
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="1-product-introduction">1. Product Introduction<a href="https://www.fpvgame.online/blog/dx-888-tef6686-radio#1-product-introduction" class="hash-link" aria-label="Direct link to 1. Product Introduction" title="Direct link to 1. Product Introduction" translate="no">​</a></h2>
<p>DX-888 is a high-sensitivity radio developed by ARESQ based on NXP's
high-performance automotive-grade TEF6686 chip, featuring excellent
selectivity and ultra-high sensitivity. As an automotive DSP tuner, it
integrates a wide range of functions and advanced algorithms (CEQ, EMS, iMS,
PACS, noise canceller, etc.), along with SDR (software-defined radio) signal
processing. It offers significant advantages in handling multipath
interference, adjacent frequency interference, weak signals, and noise
cancellation.</p>
<p>Built on PE5PVB's open-source project TEF6686_ESP32, the DX-888 supports
abundant advanced features beyond basic radio listening, including:</p>
<ul>
<li class="">Almost all RDS (Radio Data System) data display (requires local radio
support)</li>
<li class="">Automatic/manual station scanning</li>
<li class="">Squelch function</li>
<li class="">Battery voltage display</li>
<li class="">Changeable themes and multilingual support</li>
<li class="">Station presets</li>
</ul>
<p>Redesigned with reference to mature TEF6686 front-end receiving circuits,
the DX-888 is equipped with a 2.4-inch resistive touch LCD color screen,
ensuring portability while displaying rich RDS information. A virtual numeric
keypad is added for quick frequency input, and a large-capacity 1000mAh
battery enables longer standby time.</p>
<hr>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="2-basic-parameters">2. Basic Parameters<a href="https://www.fpvgame.online/blog/dx-888-tef6686-radio#2-basic-parameters" class="hash-link" aria-label="Direct link to 2. Basic Parameters" title="Direct link to 2. Basic Parameters" translate="no">​</a></h2>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="21-core-components">2.1 Core Components<a href="https://www.fpvgame.online/blog/dx-888-tef6686-radio#21-core-components" class="hash-link" aria-label="Direct link to 2.1 Core Components" title="Direct link to 2.1 Core Components" translate="no">​</a></h3>
<table><thead><tr><th>Component</th><th>Specification</th></tr></thead><tbody><tr><td>Radio Chip</td><td>NXP TEF6686HN/V102 (Chip Model F8602)</td></tr><tr><td>Main Control Chip</td><td>ESP32-WROOM-32U, 4MB Flash, Wi-Fi + Bluetooth dual-core module</td></tr><tr><td>Display Technology</td><td>2.4-inch LCD screen, 320x240 resolution, IPS full-viewing angle, resistive touch</td></tr><tr><td>Control Method</td><td>Default: knob tuning; Supports third-party 9341 touch screen firmware</td></tr></tbody></table>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="22-frequency-range">2.2 Frequency Range<a href="https://www.fpvgame.online/blog/dx-888-tef6686-radio#22-frequency-range" class="hash-link" aria-label="Direct link to 2.2 Frequency Range" title="Direct link to 2.2 Frequency Range" translate="no">​</a></h3>
<table><thead><tr><th>Band</th><th>Frequency Range</th><th>Applicable Regions/Scenarios</th><th>Step Size</th></tr></thead><tbody><tr><td>FM</td><td>65-108MHz</td><td>Russia/Eastern Europe</td><td>OIRT default: 30kHz; FM optional: 50/100/200kHz (default 100kHz)</td></tr><tr><td></td><td>76-95MHz</td><td>Japan</td><td></td></tr><tr><td></td><td>76-108MHz</td><td>Campus broadcasting</td><td></td></tr><tr><td></td><td>87-108MHz</td><td>Europe/Oceania/Africa/Asia</td><td></td></tr><tr><td></td><td>87.5-108MHz</td><td>China/United States</td><td></td></tr><tr><td>SW</td><td>1700-27000kHz</td><td>-</td><td>Default: 5kHz</td></tr><tr><td>MW</td><td>522-1791kHz</td><td>-</td><td>Default: 9kHz/10kHz</td></tr><tr><td>LW</td><td>144-513kHz</td><td>-</td><td>Default: 9kHz</td></tr></tbody></table>
<blockquote>
<p>Note: DX-888 does not support the AIR band. The AIR band in the firmware
requires an external downconverter (sold separately) for use.</p>
</blockquote>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="23-receiving-indicators">2.3 Receiving Indicators<a href="https://www.fpvgame.online/blog/dx-888-tef6686-radio#23-receiving-indicators" class="hash-link" aria-label="Direct link to 2.3 Receiving Indicators" title="Direct link to 2.3 Receiving Indicators" translate="no">​</a></h3>
<table><thead><tr><th>Band</th><th>Telescopic Antenna Receiving Sensitivity</th><th>Selectivity</th></tr></thead><tbody><tr><td>FM</td><td>≤0.5uV (S/N=30dB)</td><td>≥60dB (±150kHz)</td></tr><tr><td>SW</td><td>≤10uV (S/N=20dB)</td><td>≥60dB (BW=3kHz/±5kHz)</td></tr><tr><td>MW</td><td>≤10uV (S/N=20dB)</td><td>≥60dB (BW=3kHz/±9kHz)</td></tr><tr><td>LW</td><td>≤10uV (S/N=20dB)</td><td>≥60dB (BW=3kHz/±9kHz)</td></tr></tbody></table>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="24-audio--interface">2.4 Audio &amp; Interface<a href="https://www.fpvgame.online/blog/dx-888-tef6686-radio#24-audio--interface" class="hash-link" aria-label="Direct link to 2.4 Audio &amp; Interface" title="Direct link to 2.4 Audio &amp; Interface" translate="no">​</a></h3>
<table><thead><tr><th>Feature</th><th>Specification</th></tr></thead><tbody><tr><td>Antenna Interface</td><td>Full-band external antenna, standard SMA female connector</td></tr><tr><td>Speaker Output</td><td>TPA6211A1 amplifier chip, 4Ω/3W, low noise &amp; distortion</td></tr><tr><td>Headphone Output</td><td>HT97220 amplifier chip, 3.5mm standard interface, independent dual amplifier design</td></tr><tr><td>Communication Interface</td><td>Built-in CH340 USB-to-serial chip, TYPE-C port</td></tr></tbody></table>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="25-power--dimensions">2.5 Power &amp; Dimensions<a href="https://www.fpvgame.online/blog/dx-888-tef6686-radio#25-power--dimensions" class="hash-link" aria-label="Direct link to 2.5 Power &amp; Dimensions" title="Direct link to 2.5 Power &amp; Dimensions" translate="no">​</a></h3>
<ul>
<li class="">Battery: 3.7V/1000mAh</li>
<li class="">Current Consumption: Approximately 3.7V/120mA, usage time about 10 hours</li>
<li class="">Dimensions: 50*82*20mm (excluding antenna connector and antenna)</li>
<li class="">Weight: 103g (body only)</li>
</ul>
<hr>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="3-how-to-operate">3. How to Operate<a href="https://www.fpvgame.online/blog/dx-888-tef6686-radio#3-how-to-operate" class="hash-link" aria-label="Direct link to 3. How to Operate" title="Direct link to 3. How to Operate" translate="no">​</a></h2>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="31-basic-operations">3.1 Basic Operations<a href="https://www.fpvgame.online/blog/dx-888-tef6686-radio#31-basic-operations" class="hash-link" aria-label="Direct link to 3.1 Basic Operations" title="Direct link to 3.1 Basic Operations" translate="no">​</a></h3>
<table><thead><tr><th>Control</th><th>Function</th><th>Operation Details</th></tr></thead><tbody><tr><td>TUNING Knob (B)</td><td>Frequency adjustment &amp; step switching</td><td>Rotate: Adjust frequency; Short press: Switch steps; Long press: Lock/unlock</td></tr><tr><td>VOLUME Knob (A)</td><td>Volume adjustment</td><td>Rotate to adjust volume</td></tr><tr><td>SQL Gear</td><td>Squelch level adjustment</td><td>Refer to "Menu Description" for details</td></tr><tr><td>BW Button</td><td>Bandwidth selection &amp; shortcut page</td><td>FM mode: Short press to switch stereo/mono; AM mode: Short press to switch bandwidth (3/4/6/8kHz); Long press: Open shortcut page (short press to exit)</td></tr><tr><td>MODE Button</td><td>Tuning mode &amp; menu</td><td>Short press: Switch MAN (manual)/AUTO (auto search)/MEM (store); Long press: Open menu (short press to exit)</td></tr><tr><td>BAND Button</td><td>Band selection &amp; virtual keypad</td><td>Short press: Switch LW/MW/SW/FML(OIRT)/FM; Long press: Open virtual keypad (short press to exit); Press &amp; hold 3s+: Sleep/turn off screen</td></tr></tbody></table>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="32-how-to-store-a-station">3.2 How to Store a Station<a href="https://www.fpvgame.online/blog/dx-888-tef6686-radio#32-how-to-store-a-station" class="hash-link" aria-label="Direct link to 3.2 How to Store a Station" title="Direct link to 3.2 How to Store a Station" translate="no">​</a></h3>
<ol>
<li class="">Tune to the target station.</li>
<li class="">Toggle the MODE button until "MEM" is highlighted.</li>
<li class="">Press the TUNING Knob; "MEM" turns red.</li>
<li class="">Select the desired memory channel (red = frequency stored; green = no
frequency stored).</li>
<li class="">Press the TUNING Knob again to confirm storage.</li>
</ol>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="33-advanced-operations">3.3 Advanced Operations<a href="https://www.fpvgame.online/blog/dx-888-tef6686-radio#33-advanced-operations" class="hash-link" aria-label="Direct link to 3.3 Advanced Operations" title="Direct link to 3.3 Advanced Operations" translate="no">​</a></h3>
<table><thead><tr><th>Function</th><th>Operation</th></tr></thead><tbody><tr><td>Change encoder direction</td><td>Press and hold the BW button when powering on</td></tr><tr><td>Rotate the screen</td><td>Press and hold the MODE button when powering on</td></tr><tr><td>Restore default settings</td><td>Press and hold the BW + TUNING Knob when powering on</td></tr><tr><td>Select standard/optical encoder</td><td>Press and hold the TUNING Knob when powering on</td></tr><tr><td>Virtual keypad</td><td>Number keys 0-9: Input frequency; DX button: Quick save/delete (long press to scan); Enter key: Toggle step/confirm input</td></tr></tbody></table>
<hr>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="4-main-interface-and-icon-meanings">4. Main Interface and Icon Meanings<a href="https://www.fpvgame.online/blog/dx-888-tef6686-radio#4-main-interface-and-icon-meanings" class="hash-link" aria-label="Direct link to 4. Main Interface and Icon Meanings" title="Direct link to 4. Main Interface and Icon Meanings" translate="no">​</a></h2>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="41-interface-overview">4.1 Interface Overview<a href="https://www.fpvgame.online/blog/dx-888-tef6686-radio#41-interface-overview" class="hash-link" aria-label="Direct link to 4.1 Interface Overview" title="Direct link to 4.1 Interface Overview" translate="no">​</a></h3>
<p>The main interface displays: Frequency, tuning mode (MAN/AUTO/MEM), band
(FM/LW/MW/SW), bandwidth (AUTO BW), signal strength, RDS information
(PTY/PS/PI/RT), battery voltage, time/date, and squelch status.</p>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="42-key-icons--touch-operations">4.2 Key Icons &amp; Touch Operations<a href="https://www.fpvgame.online/blog/dx-888-tef6686-radio#42-key-icons--touch-operations" class="hash-link" aria-label="Direct link to 4.2 Key Icons &amp; Touch Operations" title="Direct link to 4.2 Key Icons &amp; Touch Operations" translate="no">​</a></h3>
<table><thead><tr><th>Icon/Display Item</th><th>Meaning</th><th>Touch Operation</th></tr></thead><tbody><tr><td>Frequency deviation status</td><td>Indicate frequency deviation</td><td>Enter/exit still screen mode</td></tr><tr><td>Stereo/mono indicator</td><td>2 circles = stereo; 1 circle = mono</td><td>Switch stereo/mono mode</td></tr><tr><td>Mute indicator</td><td>Highlight = muted</td><td>Enter/exit mute mode</td></tr><tr><td>RDS icon</td><td>Bright = RDS demodulation successful</td><td>Enter/exit advanced RDS view</td></tr><tr><td>AUTO BW</td><td>Demodulation bandwidth setting</td><td>Turn auto bandwidth on/off</td></tr><tr><td>WIFI icon</td><td>WIFI function status (under development)</td><td>-</td></tr><tr><td>Battery voltage/percentage</td><td>Battery status</td><td>Enter/exit screensaver mode</td></tr><tr><td>Signal strength value (e.g., 43.3)</td><td>Current signal strength</td><td>Left half: Open shortcut page; Right half: Open menu page</td></tr><tr><td>SQ: OFF</td><td>Squelch level (OFF = disabled)</td><td>Touch to activate adjustment (label turns green)</td></tr><tr><td>Sleep mode indicator</td><td>Sleep mode status</td><td>Turn sleep mode on/off</td></tr><tr><td>C/N (e.g., 32dB)</td><td>Carrier-to-noise ratio</td><td>-</td></tr><tr><td>PTY: Light Classical</td><td>RDS Programme Type</td><td>-</td></tr><tr><td>PS</td><td>RDS Programme Service Name</td><td>Left half: Turn down; Right half: Turn up</td></tr><tr><td>PI</td><td>RDS Programme Identification</td><td>Switch display: PI/time/date+time</td></tr><tr><td>RT</td><td>RDS Radio Text</td><td>Switch display: RT/debug information</td></tr></tbody></table>
<hr>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="5-menu-description">5. Menu Description<a href="https://www.fpvgame.online/blog/dx-888-tef6686-radio#5-menu-description" class="hash-link" aria-label="Direct link to 5. Menu Description" title="Direct link to 5. Menu Description" translate="no">​</a></h2>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="51-menu-operation">5.1 Menu Operation<a href="https://www.fpvgame.online/blog/dx-888-tef6686-radio#51-menu-operation" class="hash-link" aria-label="Direct link to 5.1 Menu Operation" title="Direct link to 5.1 Menu Operation" translate="no">​</a></h3>
<ul>
<li class="">Open: Long press the MODE button</li>
<li class="">Exit &amp; Save: Short press the MODE button or click the yellow font area</li>
<li class="">Select: Rotate the TUNING Knob or click the menu item directly</li>
<li class="">Confirm: Short press the TUNING Knob</li>
</ul>
<blockquote>
<p>Note: Black font = Simple mode menu; Red font = Advanced mode additional
menu.</p>
</blockquote>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="52-menu-categories--settings">5.2 Menu Categories &amp; Settings<a href="https://www.fpvgame.online/blog/dx-888-tef6686-radio#52-menu-categories--settings" class="hash-link" aria-label="Direct link to 5.2 Menu Categories &amp; Settings" title="Direct link to 5.2 Menu Categories &amp; Settings" translate="no">​</a></h3>
<h4 class="anchor anchorTargetStickyNavbar_Vzrq" id="521-main-settings">5.2.1 Main Settings<a href="https://www.fpvgame.online/blog/dx-888-tef6686-radio#521-main-settings" class="hash-link" aria-label="Direct link to 5.2.1 Main Settings" title="Direct link to 5.2.1 Main Settings" translate="no">​</a></h4>
<ul>
<li class="">Model selector: Portable touch/Base/Portable</li>
<li class="">Set FM band: FM/FML/None</li>
<li class="">Set AM band: LW/MW/SW/AIR/None (multiple combinations)</li>
<li class="">Screensaver time: Off/3 Sec/10 Sec/30 Sec/60 Sec</li>
<li class="">Screensaver options: Screen off/1% brightness/25% brightness/50%
brightness</li>
<li class="">System usage mode: Simple mode/Advanced mode</li>
<li class="">Set first page: Main page/Open menu/Virtual keypad/Shortcut page/Advanced
RDS/AF Screen</li>
<li class="">Power Off timer: Off/1-480 minutes (adjustable)</li>
<li class="">Dynamic SPl speed: Default 55MHz (5-70MHz adjustable/Auto)</li>
<li class="">Auto still screen: Off/On</li>
<li class="">Still screen timer: 0-120 seconds (adjustable)</li>
<li class="">Power off: BW key to reopen</li>
</ul>
<h4 class="anchor anchorTargetStickyNavbar_Vzrq" id="522-audio-settings">5.2.2 Audio Settings<a href="https://www.fpvgame.online/blog/dx-888-tef6686-radio#522-audio-settings" class="hash-link" aria-label="Direct link to 5.2.2 Audio Settings" title="Direct link to 5.2.2 Audio Settings" translate="no">​</a></h4>
<ul>
<li class="">Set volume: -60dB to +24dB (TEF6686 internal DAC, default 0dB)</li>
<li class="">Beep at band edge: Off/On</li>
<li class="">Audio output: Stereo/MPX</li>
<li class="">Stereo threshold: Off/30-60dBuV (adjustable)</li>
<li class="">High cut corner: 1500-7000Hz (adjustable)</li>
<li class="">High cut threshold: Off/20-60dBuV (adjustable)</li>
<li class="">FM deemphasis: 50us/75us/Off</li>
<li class="">Use squelch: On/Off/Auto</li>
</ul>
<h4 class="anchor anchorTargetStickyNavbar_Vzrq" id="523-display-settings">5.2.3 Display Settings<a href="https://www.fpvgame.online/blog/dx-888-tef6686-radio#523-display-settings" class="hash-link" aria-label="Direct link to 5.2.3 Display Settings" title="Direct link to 5.2.3 Display Settings" translate="no">​</a></h4>
<ul>
<li class="">Language: English/简体中文</li>
<li class="">Set contrast: 1%-100% (continuously adjustable)</li>
<li class="">Signal meter: On/Off</li>
<li class="">Signal refresh interval: 30-1000ms (adjustable)</li>
<li class="">Signal meter unit: dBuV/dBf/dBm</li>
<li class="">Battery options: Show voltage/Show percentage/Off</li>
<li class="">Battery correction offset: Adjust voltage display offset</li>
<li class="">Modulation meter: On/Off</li>
<li class="">Theme: Essence/Cyan/Crimson/Monochrome/Volcano/Dendro/Sakura/Whiteout/Tangerine/Ocean/Indigo/Maroon/Chinese Red/Retro/GoldBrite</li>
<li class="">Frequency font: Aura2/Comic/Modern/Classic/Roubenstil/Motoya</li>
<li class="">Flip screen display: Click to flip</li>
<li class="">Invert screen color: Click to invert</li>
<li class="">Set UI round: Modify menu display style</li>
<li class="">Color bar display mode: New/Classic</li>
<li class="">Show system clock: On/Off</li>
<li class="">Clock display mode: Time only/Date + Time</li>
<li class="">Time display format: 24 Hour/12 Hour</li>
<li class="">Show debug info: Off/On</li>
</ul>
<h4 class="anchor anchorTargetStickyNavbar_Vzrq" id="524-rds-settings">5.2.4 RDS Settings<a href="https://www.fpvgame.online/blog/dx-888-tef6686-radio#524-rds-settings" class="hash-link" aria-label="Direct link to 5.2.4 RDS Settings" title="Direct link to 5.2.4 RDS Settings" translate="no">​</a></h4>
<ul>
<li class="">Show RDS errors: Small/Large/All/Off</li>
<li class="">Region: Europe/USA(DB)/USA/Canada</li>
<li class="">RDS Show underscore: Off/On</li>
<li class="">RDS filter: On/Off</li>
<li class="">Show PI errors: Off/On</li>
<li class="">Use AF: Off/On/REG On/On/REG Off</li>
<li class="">RT buffering: On/Off</li>
<li class="">Auto sort AF: On/Off</li>
<li class="">Fast PS: Initial/Always/Off</li>
<li class="">Show RDS clock: On/Off</li>
<li class="">Show long PS: On/Off</li>
<li class="">Disable all RDS: Off/On</li>
</ul>
<h4 class="anchor anchorTargetStickyNavbar_Vzrq" id="525-fmam-settings">5.2.5 FM/AM Settings<a href="https://www.fpvgame.online/blog/dx-888-tef6686-radio#525-fmam-settings" class="hash-link" aria-label="Direct link to 5.2.5 FM/AM Settings" title="Direct link to 5.2.5 FM/AM Settings" translate="no">​</a></h4>
<h5 class="anchor anchorTargetStickyNavbar_Vzrq" id="fm-settings">FM Settings<a href="https://www.fpvgame.online/blog/dx-888-tef6686-radio#fm-settings" class="hash-link" aria-label="Direct link to FM Settings" title="Direct link to FM Settings" translate="no">​</a></h5>
<ul>
<li class="">Set converter offset: MHz (adjustable)</li>
<li class="">Set low band edge: Minimum 65MHz</li>
<li class="">Set high band edge: Maximum 108MHz</li>
<li class="">Set level offset: -25 to +15dB (adjustable)</li>
<li class="">Set low level threshold: -15 to 30dBuV (adjustable)</li>
<li class="">Softmute FM: Off/On</li>
<li class="">FM Noise blanker: Off/50%-150% (adjustable)</li>
<li class="">FM default step size: 100kHz/200kHz/50kHz</li>
<li class="">FM AGC: 92-84dBuV (adjustable)</li>
<li class="">FMSI stereo improve: Off (only for 6687/6689 chips)</li>
<li class="">Set FML band: 65-74MHz/76-87MHz</li>
</ul>
<h5 class="anchor anchorTargetStickyNavbar_Vzrq" id="am-settings">AM Settings<a href="https://www.fpvgame.online/blog/dx-888-tef6686-radio#am-settings" class="hash-link" aria-label="Direct link to AM Settings" title="Direct link to AM Settings" translate="no">​</a></h5>
<ul>
<li class="">Soft mute AM: On/Off</li>
<li class="">AM RF Level Offset: -50 to +15dB (adjustable)</li>
<li class="">Show SW wavelength: On/Off</li>
<li class="">CoChannel Detector sensitivity: Off/50%-150% (adjustable)</li>
<li class="">CoChannel Detector counter: 1-15 (adjustable)</li>
<li class="">AM ATT: Off/6dB/12dB/18dB/24dB/30dB/36dB</li>
<li class="">AM AGC: 94-102dBuV (adjustable)</li>
<li class="">MW default step size: 9kHz/10kHz</li>
<li class="">AIR band Conversion: 81-135MHz (programmable)</li>
<li class="">AIR start frequency: 118MHz/108MHz</li>
</ul>
<h4 class="anchor anchorTargetStickyNavbar_Vzrq" id="526-connectivity-settings">5.2.6 Connectivity Settings<a href="https://www.fpvgame.online/blog/dx-888-tef6686-radio#526-connectivity-settings" class="hash-link" aria-label="Direct link to 5.2.6 Connectivity Settings" title="Direct link to 5.2.6 Connectivity Settings" translate="no">​</a></h4>
<ul>
<li class="">USB mode: XDRGTK/RDS Spy</li>
<li class="">Wi-Fi active: Off/On</li>
<li class="">Configure Wi-Fi: Connect to radio hotspot for setup</li>
<li class="">Stationlist client IP: Customizable</li>
<li class="">Stationlist ID: 1-10 (adjustable)</li>
<li class="">Screen off on XDRGTK: Off</li>
<li class="">Wi-Fi auto disconnect: Disable/1-1440 minutes (adjustable)</li>
<li class="">Bluetooth active: Off</li>
</ul>
<h4 class="anchor anchorTargetStickyNavbar_Vzrq" id="527-frequency-scanning--auto-search">5.2.7 Frequency Scanning &amp; Auto Search<a href="https://www.fpvgame.online/blog/dx-888-tef6686-radio#527-frequency-scanning--auto-search" class="hash-link" aria-label="Direct link to 5.2.7 Frequency Scanning &amp; Auto Search" title="Direct link to 5.2.7 Frequency Scanning &amp; Auto Search" translate="no">​</a></h4>
<h5 class="anchor anchorTargetStickyNavbar_Vzrq" id="frequency-scanning">Frequency Scanning<a href="https://www.fpvgame.online/blog/dx-888-tef6686-radio#frequency-scanning" class="hash-link" aria-label="Direct link to Frequency Scanning" title="Direct link to Frequency Scanning" translate="no">​</a></h5>
<ul>
<li class="">Start DX scanning: Click to start</li>
<li class="">Scanning band: FM/LW/MW/SW/AIR/Default/FML</li>
<li class="">Begin/End channels: Customizable</li>
<li class="">Wait time: Set scan interval</li>
<li class="">Scanning method: Exclude/Only</li>
<li class="">Auto cancel mode: Signal/Off/Correct PI</li>
<li class="">Cancel scan mode: Stay/Break</li>
<li class="">Mute while scanning: On/Off</li>
<li class="">Screen off while scan: On/Off</li>
</ul>
<h5 class="anchor anchorTargetStickyNavbar_Vzrq" id="auto-search">Auto Search<a href="https://www.fpvgame.online/blog/dx-888-tef6686-radio#auto-search" class="hash-link" aria-label="Direct link to Auto Search" title="Direct link to Auto Search" translate="no">​</a></h5>
<ul>
<li class="">Start Auto search: Click to start</li>
<li class="">Search &amp; save mode: Overwrite/Append</li>
<li class="">Search band: FM/LW/MW/SW/AIR/FML</li>
<li class="">FM sampling times: 1-30 (adjustable)</li>
<li class="">FM multipath limit: Configurable</li>
<li class="">FM scan sensitivity: 1-15 (adjustable)</li>
<li class="">AM sampling times: 1-30 (adjustable)</li>
<li class="">AM sampling hold: 10-1000ms (adjustable)</li>
<li class="">AM scan sensitivity: 1-20 (adjustable)</li>
<li class="">Judgement mode: Quality priority/Quantity priority</li>
<li class="">Save bandwidth: Default/Current</li>
<li class="">Mute while search: Off/On</li>
<li class="">Screen off while search: Off/On</li>
<li class="">Save begin channel: 1-99 (adjustable)</li>
<li class="">SW search start/stop: 1800-27000kHz (adjustable)</li>
<li class="">Arrange stations: Defrag and sort/Only defrag</li>
<li class="">Delete stations: Click to delete</li>
</ul>
<h4 class="anchor anchorTargetStickyNavbar_Vzrq" id="528-operation-settings">5.2.8 Operation Settings<a href="https://www.fpvgame.online/blog/dx-888-tef6686-radio#528-operation-settings" class="hash-link" aria-label="Direct link to 5.2.8 Operation Settings" title="Direct link to 5.2.8 Operation Settings" translate="no">​</a></h4>
<ul>
<li class="">Menu display style: New(Vertical)/New(Horizontal)/Classic</li>
<li class="">Quickly switch menu: On/Off</li>
<li class="">Touch Type: Int33/Int27/Off/Poling</li>
<li class="">Touch calibration: Click to start</li>
<li class="">Touch interval: Default 300ms (adjustable)</li>
<li class="">How to use rotary: Classic/New</li>
<li class="">Rotary adjust squelch: On/Off (use TUNING knob to adjust threshold when on)</li>
<li class="">Screen off rotating: On/Off</li>
<li class="">Reverse rotary: Click to change direction</li>
<li class="">Variable rotary speed: Fast/Off/Medium</li>
<li class="">Long press Rotary key: Lock&amp;Unlock/Original operation/Open menu/Virtual keypad/Shortcut page/Advanced RDS/AF Screen</li>
<li class="">Long press BW key: Shortcut page/Advanced RDS/AF Screen/Lock&amp;Unlock/Original operation/Open menu/Virtual keypad</li>
<li class="">Long press Mode key: Original operation/Open menu/Virtual keypad/Shortcut page/Advanced RDS/AF Screen/Lock&amp;Unlock</li>
</ul>
<h4 class="anchor anchorTargetStickyNavbar_Vzrq" id="529-other-settings">5.2.9 Other Settings<a href="https://www.fpvgame.online/blog/dx-888-tef6686-radio#529-other-settings" class="hash-link" aria-label="Direct link to 5.2.9 Other Settings" title="Direct link to 5.2.9 Other Settings" translate="no">​</a></h4>
<ul>
<li class="">Set date/time: Configure year/month/day/hours/minutes/seconds</li>
<li class="">Set local time zone: Adjust time zone offset</li>
<li class="">NTP time sync: On/Off</li>
<li class="">RDS time sync: Off/On</li>
<li class="">Delete RDS dictionary: Click to delete</li>
<li class="">System information: Display memory usage</li>
<li class="">Restore Defaults: Factory reset</li>
<li class="">Firmware Version: Show current version</li>
</ul>
<h4 class="anchor anchorTargetStickyNavbar_Vzrq" id="5210-my-settings">5.2.10 My Settings<a href="https://www.fpvgame.online/blog/dx-888-tef6686-radio#5210-my-settings" class="hash-link" aria-label="Direct link to 5.2.10 My Settings" title="Direct link to 5.2.10 My Settings" translate="no">​</a></h4>
<ul>
<li class="">My ATS scheme: Edit/search custom ATS schemes</li>
<li class="">Using ATS scheme: Select scheme for search</li>
<li class="">My Scan scheme: Edit/search custom Scan schemes</li>
<li class="">Using Scan scheme: Select scheme for scanning</li>
<li class="">My favorite theme: Set 4 themes for automatic change</li>
<li class="">My receive plan: Edit/custom receive plans</li>
<li class="">Using receive plan: On/Off</li>
<li class="">My Shortcut icon: Customize shortcut icons</li>
<li class="">Save my settings: Click to save</li>
<li class="">Restore my settings: Click to restore</li>
</ul>
<hr>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="6-charging-instructions">6. Charging Instructions<a href="https://www.fpvgame.online/blog/dx-888-tef6686-radio#6-charging-instructions" class="hash-link" aria-label="Direct link to 6. Charging Instructions" title="Direct link to 6. Charging Instructions" translate="no">​</a></h2>
<ul>
<li class="">Charging Port: TYPE-C</li>
<li class="">Charging Requirements: 5V voltage, 1A+ current charging head (maximum 5W
power; fast charging not supported)</li>
<li class="">Recommended Operation: Charge with the device turned off</li>
<li class="">Charging LED Indication: Red = Charging; Off = Fully charged</li>
</ul>
<hr>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="7-package-list">7. Package List<a href="https://www.fpvgame.online/blog/dx-888-tef6686-radio#7-package-list" class="hash-link" aria-label="Direct link to 7. Package List" title="Direct link to 7. Package List" translate="no">​</a></h2>
<ol>
<li class="">Host ×1 (with 3.7V/1000mAh lithium battery installed)</li>
<li class="">High-quality telescopic antenna (SMA connector) ×1</li>
</ol>
<hr>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="8-firmware-upgrade">8. Firmware Upgrade<a href="https://www.fpvgame.online/blog/dx-888-tef6686-radio#8-firmware-upgrade" class="hash-link" aria-label="Direct link to 8. Firmware Upgrade" title="Direct link to 8. Firmware Upgrade" translate="no">​</a></h2>
<ol>
<li class="">Connect the radio to a computer using the included TYPE-C data cable; a
new COM port will appear in the computer's Device Manager.</li>
<li class="">Turn on the radio.</li>
<li class="">Download the latest firmware.</li>
<li class="">Follow the firmware upgrade guide to complete the update.</li>
</ol>
<blockquote>
<p><strong>Driver:</strong> If the COM port is not recognized, install the CH340/CH341
USB-to-serial driver from WCH:
<a href="https://www.wch-ic.com/downloads/CH341SER_EXE.html" target="_blank" rel="noopener noreferrer" class="">https://www.wch-ic.com/downloads/CH341SER_EXE.html</a></p>
</blockquote>]]></content>
        <author>
            <name>QwenPaw Agent</name>
            <uri>https://github.com/QwenPaw</uri>
        </author>
        <category label="Radio" term="Radio"/>
        <category label="TEF6686" term="TEF6686"/>
        <category label="DX-888" term="DX-888"/>
        <category label="SDR" term="SDR"/>
        <category label="Review" term="Review"/>
        <category label="Hardware" term="Hardware"/>
    </entry>
    <entry>
        <title type="html"><![CDATA[MMDVM Digital Trunk Board — STM32-DVM(405 RPT) GPIO/USB Repeater/Hotspot]]></title>
        <id>https://www.fpvgame.online/blog/mmdvm-digital-trunk-board-usb</id>
        <link href="https://www.fpvgame.online/blog/mmdvm-digital-trunk-board-usb"/>
        <updated>2026-06-30T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[MMDVM Digital Trunk Board STM32-DVM(405 RPT) — GPIO/USB-based MMDVM repeater/hotspot supporting DMR, YSF, P25, NXDN, DSTAR, POCSAG and FM at 460800 baud.
]]></summary>
        <content type="html"><![CDATA[<p>The <strong>MMDVM Digital Trunk Board (STM32-DVM 405 RPT)</strong> is a GPIO/USB-based
repeater/hotspot board that connects to your Raspberry Pi (or compatible SBC)
via the <strong>GPIO serial interface (UART)</strong> or <strong>USB</strong>. It runs at <strong>460800 baud</strong>
and supports both digital and analog FM modes.</p>
<p><strong>Only one model available:</strong> STM32-DVM(405 RPT) — 460800 baud.</p>
<p><img decoding="async" loading="lazy" alt="405 RPT Board Front" src="https://www.fpvgame.online/assets/images/405_RPT_main-f421a1a553d9ea153582a5b3be5792ed.png" width="1105" height="841" class="img_ev3q">
<em>STM32-DVM(405 RPT) — front view</em></p>
<p><img decoding="async" loading="lazy" alt="405 RPT Board Back" src="https://www.fpvgame.online/assets/images/405_RPTback-7d8d0b5fe3245346a6a72d24c30e9766.png" width="753" height="579" class="img_ev3q">
<em>STM32-DVM(405 RPT) — back view</em></p>
<!-- -->
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="supported-modes">Supported Modes<a href="https://www.fpvgame.online/blog/mmdvm-digital-trunk-board-usb#supported-modes" class="hash-link" aria-label="Direct link to Supported Modes" title="Direct link to Supported Modes" translate="no">​</a></h2>
<ul>
<li class=""><strong>D-Star</strong></li>
<li class=""><strong>DMR</strong></li>
<li class=""><strong>Yaesu System Fusion</strong></li>
<li class=""><strong>P25 Phase I</strong></li>
<li class=""><strong>NXDN 4800</strong></li>
<li class=""><strong>POCSAG</strong> (paging)</li>
<li class=""><strong>FM</strong> (460800 baud rate)</li>
</ul>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="key-specifications">Key Specifications<a href="https://www.fpvgame.online/blog/mmdvm-digital-trunk-board-usb#key-specifications" class="hash-link" aria-label="Direct link to Key Specifications" title="Direct link to Key Specifications" translate="no">​</a></h2>
<ul>
<li class=""><strong>Model:</strong> STM32-DVM(405 RPT)</li>
<li class=""><strong>Baud rate:</strong> 460800</li>
<li class=""><strong>Interface:</strong> GPIO serial (UART) or USB (PL2303)</li>
<li class=""><strong>Modes supported:</strong> DMR, YSF (C4FM), P25, NXDN, DSTAR, POCSAG, FM</li>
<li class=""><strong>DMR timeslots:</strong> Dual-slot — acts as a mini digital voice repeater</li>
<li class=""><strong>Frequency range:</strong> VHF/UHF (depends on your external radio)</li>
<li class=""><strong>TCXO:</strong> High-quality ECS TCXO for stable, low-BER operation</li>
<li class=""><strong>Display:</strong> Support 0.96 oled or 1.3inch (VCC GND SCL SDA)</li>
</ul>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="whats-in-the-box">What's in the Box<a href="https://www.fpvgame.online/blog/mmdvm-digital-trunk-board-usb#whats-in-the-box" class="hash-link" aria-label="Direct link to What's in the Box" title="Direct link to What's in the Box" translate="no">​</a></h2>
<table><thead><tr><th>Item</th><th>Description</th></tr></thead><tbody><tr><td>PCB board</td><td>STM32-DVM(405 RPT) fully soldered and ready to use</td></tr><tr><td>2x5 2.54 pinhead (Moto radio)</td><td>Connects board to radio</td></tr><tr><td>2× 8pin Moto female headers</td><td>Included — gift for connecting to Motorola radios</td></tr></tbody></table>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="connector-images">Connector Images<a href="https://www.fpvgame.online/blog/mmdvm-digital-trunk-board-usb#connector-images" class="hash-link" aria-label="Direct link to Connector Images" title="Direct link to Connector Images" translate="no">​</a></h3>
<p><img decoding="async" loading="lazy" alt="2x5 pin header top" src="https://www.fpvgame.online/assets/images/2x5_top-d86a0cfbcfd4255576042c8b94c52841.jpg" width="780" height="850" class="img_ev3q">
<em>2x5 pin header — top view</em></p>
<p><img decoding="async" loading="lazy" alt="2x5 pin header back" src="https://www.fpvgame.online/assets/images/2x5pin_back-3c8f0d4c918e13bf0667ba915afa65b8.jpg" width="776" height="1108" class="img_ev3q">
<em>2x5 pin header — back view</em></p>
<p><img decoding="async" loading="lazy" alt="RX connector top" src="https://www.fpvgame.online/assets/images/rx_top-af04762843df4678a2a967d4188f8b10.jpg" width="926" height="938" class="img_ev3q">
<em>RX connector — top view</em></p>
<p><img decoding="async" loading="lazy" alt="TX connector top" src="https://www.fpvgame.online/assets/images/tx_top-57302456c5ab8a8bea48325b5760928f.jpg" width="1122" height="1148" class="img_ev3q">
<em>TX connector — top view</em></p>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="compatible-hosts">Compatible Hosts<a href="https://www.fpvgame.online/blog/mmdvm-digital-trunk-board-usb#compatible-hosts" class="hash-link" aria-label="Direct link to Compatible Hosts" title="Direct link to Compatible Hosts" translate="no">​</a></h2>
<p>Connects via GPIO serial (UART) to:</p>
<ul>
<li class=""><strong>Raspberry Pi:</strong> 3B, 3B+, Pi Zero, 4, 5</li>
<li class=""><strong>FriendlyElec:</strong> NanoPi NEO</li>
<li class=""><strong>Xunlong:</strong> Orange Pi</li>
</ul>
<p>The serial port on Raspberry Pi is <code>/dev/ttyAMA0</code> (or <code>/dev/ttyS0</code> on some
models, depending on configuration).</p>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="enabling-uart0-on-raspberry-pi-5">Enabling UART0 on Raspberry Pi 5<a href="https://www.fpvgame.online/blog/mmdvm-digital-trunk-board-usb#enabling-uart0-on-raspberry-pi-5" class="hash-link" aria-label="Direct link to Enabling UART0 on Raspberry Pi 5" title="Direct link to Enabling UART0 on Raspberry Pi 5" translate="no">​</a></h3>
<p>If you're using the official Raspberry Pi OS on a Pi 5, UART0 (GPIO 14/15)
is disabled by default. Enable it as follows:</p>
<ol>
<li class="">
<p><strong>Flash the SD card</strong> using Raspberry Pi Imager with the official OS.</p>
</li>
<li class="">
<p><strong>Open the boot partition</strong> on the SD card — it mounts as <code>boot</code> on your
desktop, or <code>/boot/firmware/</code> on the Pi itself.</p>
</li>
<li class="">
<p><strong>Edit <code>config.txt</code></strong> — append the following lines at the end:</p>
<div class="language-ini codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_QJqH"><pre tabindex="0" class="prism-code language-ini codeBlock_bY9V thin-scrollbar" style="color:#393A34;background-color:#f6f8fa"><code class="codeBlockLines_e6Vv"><div class="token-line" style="color:#393A34"><span class="token plain">enable_uart=1</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">dtoverlay=uart0=on</span><br></div></code></pre></div></div>
</li>
<li class="">
<p><strong>Save, eject and reboot</strong> the Pi.</p>
</li>
<li class="">
<p><strong>Verify</strong> — check that the serial device appears:</p>
<div class="language-bash codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_QJqH"><pre tabindex="0" class="prism-code language-bash codeBlock_bY9V thin-scrollbar" style="color:#393A34;background-color:#f6f8fa"><code class="codeBlockLines_e6Vv"><div class="token-line" style="color:#393A34"><span class="token plain">pi@raspberrypi:~ $ ls /dev/ttyA*</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">/dev/ttyAMA0  /dev/ttyAMA10</span><br></div></code></pre></div></div>
</li>
</ol>
<p>If you see <code>/dev/ttyAMA0</code>, UART0 is active and ready for your MMDVM board.</p>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="usb-connection">USB Connection<a href="https://www.fpvgame.online/blog/mmdvm-digital-trunk-board-usb#usb-connection" class="hash-link" aria-label="Direct link to USB Connection" title="Direct link to USB Connection" translate="no">​</a></h3>
<p>The board can also be connected over <strong>USB</strong> (via the onboard PL2303/serial
chip). It will appear as:</p>
<table><thead><tr><th>Platform</th><th>Device</th></tr></thead><tbody><tr><td>Linux (ARM)</td><td><code>/dev/ttyACM0</code></td></tr><tr><td>Windows</td><td><code>COMxx</code> (check Device Manager)</td></tr></tbody></table>
<blockquote>
<p>⚠️ Only one interface should be configured at a time — either GPIO UART <strong>or</strong>
USB serial, not both simultaneously.</p>
</blockquote>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="fm-mode-details">FM Mode Details<a href="https://www.fpvgame.online/blog/mmdvm-digital-trunk-board-usb#fm-mode-details" class="hash-link" aria-label="Direct link to FM Mode Details" title="Direct link to FM Mode Details" translate="no">​</a></h2>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="potentiometer-adjustments">Potentiometer Adjustments<a href="https://www.fpvgame.online/blog/mmdvm-digital-trunk-board-usb#potentiometer-adjustments" class="hash-link" aria-label="Direct link to Potentiometer Adjustments" title="Direct link to Potentiometer Adjustments" translate="no">​</a></h3>
<p>The board has several potentiometers for tuning analog FM audio:</p>
<table><thead><tr><th>Pot</th><th>Adjustment</th><th>Direction</th></tr></thead><tbody><tr><td><strong>RX</strong></td><td>Volume increases</td><td>Clockwise</td></tr><tr><td><strong>RXA</strong></td><td>Volume decreases</td><td>Clockwise</td></tr><tr><td><strong>TXA1</strong></td><td>Volume decreases</td><td>Clockwise</td></tr></tbody></table>
<blockquote>
<p><strong>DMR testing note:</strong> When testing DMR mode, <strong>TXA1 needs to be turned down
(clockwise)</strong> so that your radio can properly decode the signal.</p>
</blockquote>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="clip-led-behavior">CLIP LED Behavior<a href="https://www.fpvgame.online/blog/mmdvm-digital-trunk-board-usb#clip-led-behavior" class="hash-link" aria-label="Direct link to CLIP LED Behavior" title="Direct link to CLIP LED Behavior" translate="no">​</a></h3>
<p>In <strong>FM mode</strong>, the CLIP LED indicates:</p>
<table><thead><tr><th>State</th><th>LED</th></tr></thead><tbody><tr><td>Standby (no signal)</td><td>Red (lit)</td></tr><tr><td>Receiving FM signal</td><td>Off</td></tr><tr><td>DCD active (CTCSS matched, default 88.5 Hz)</td><td>Lit</td></tr></tbody></table>
<p>To enter FM mode, connect via serial (USB) and send the FM mode command.
When CTCSS is matched (default <strong>88.5 Hz</strong>), DCD will illuminate.</p>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="configuration">Configuration<a href="https://www.fpvgame.online/blog/mmdvm-digital-trunk-board-usb#configuration" class="hash-link" aria-label="Direct link to Configuration" title="Direct link to Configuration" translate="no">​</a></h2>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="modem-section">[Modem] Section<a href="https://www.fpvgame.online/blog/mmdvm-digital-trunk-board-usb#modem-section" class="hash-link" aria-label="Direct link to [Modem] Section" title="Direct link to [Modem] Section" translate="no">​</a></h3>
<div class="language-ini codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_QJqH"><pre tabindex="0" class="prism-code language-ini codeBlock_bY9V thin-scrollbar" style="color:#393A34;background-color:#f6f8fa"><code class="codeBlockLines_e6Vv"><div class="token-line" style="color:#393A34"><span class="token plain">[Modem]</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">Protocol=uart</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"># The port and speed used for a UART connection</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"># GPIO serial on Raspberry Pi:</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">UARTPort=/dev/ttyAMA0</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"># USB on ARM/Linux:</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">#UARTPort=/dev/ttyACM0</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"># USB on Windows:</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">#UARTPort=\\.\COM13</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">TXInvert=0</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"># For GM950x:</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">RXInvert=1</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">FMTXLevel=50</span><br></div></code></pre></div></div>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="fm-section">[FM] Section<a href="https://www.fpvgame.online/blog/mmdvm-digital-trunk-board-usb#fm-section" class="hash-link" aria-label="Direct link to [FM] Section" title="Direct link to [FM] Section" translate="no">​</a></h3>
<div class="language-ini codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_QJqH"><pre tabindex="0" class="prism-code language-ini codeBlock_bY9V thin-scrollbar" style="color:#393A34;background-color:#f6f8fa"><code class="codeBlockLines_e6Vv"><div class="token-line" style="color:#393A34"><span class="token plain">[FM]</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">CTCSSFrequency=88.5</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">CTCSSThreshold=90</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"># AccessMode values:</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">#   0 - Carrier access with COS</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">#   1 - CTCSS only access without COS</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">#   2 - CTCSS only access with COS</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">#   3 - CTCSS only access with COS to start, then carrier access with COS</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">AccessMode=1</span><br></div></code></pre></div></div>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="fm-network-section">[FM Network] Section<a href="https://www.fpvgame.online/blog/mmdvm-digital-trunk-board-usb#fm-network-section" class="hash-link" aria-label="Direct link to [FM Network] Section" title="Direct link to [FM Network] Section" translate="no">​</a></h3>
<div class="language-ini codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_QJqH"><pre tabindex="0" class="prism-code language-ini codeBlock_bY9V thin-scrollbar" style="color:#393A34;background-color:#f6f8fa"><code class="codeBlockLines_e6Vv"><div class="token-line" style="color:#393A34"><span class="token plain">[FM Network]</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">LocalAddress=0.0.0.0</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">LocalPort=3810</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">GatewayAddress=127.0.0.1</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">GatewayPort=32000</span><br></div></code></pre></div></div>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="duplex--simplex-switching">Duplex / Simplex Switching<a href="https://www.fpvgame.online/blog/mmdvm-digital-trunk-board-usb#duplex--simplex-switching" class="hash-link" aria-label="Direct link to Duplex / Simplex Switching" title="Direct link to Duplex / Simplex Switching" translate="no">​</a></h2>
<p>Switch between <strong>repeater (duplex) mode</strong> and <strong>hotspot (simplex) mode</strong> by
changing the RX/TX board line order — no firmware reflash needed.</p>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="use-cases">Use Cases<a href="https://www.fpvgame.online/blog/mmdvm-digital-trunk-board-usb#use-cases" class="hash-link" aria-label="Direct link to Use Cases" title="Direct link to Use Cases" translate="no">​</a></h2>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="1-high-powered-hotspot">1. High-Powered Hotspot<a href="https://www.fpvgame.online/blog/mmdvm-digital-trunk-board-usb#1-high-powered-hotspot" class="hash-link" aria-label="Direct link to 1. High-Powered Hotspot" title="Direct link to 1. High-Powered Hotspot" translate="no">​</a></h3>
<p>Connect it to a mobile radio (e.g., Motorola CDM series) and you've got a
hotspot that covers your neighborhood instead of just your living room.</p>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="2-full-digital-repeater">2. Full Digital Repeater<a href="https://www.fpvgame.online/blog/mmdvm-digital-trunk-board-usb#2-full-digital-repeater" class="hash-link" aria-label="Direct link to 2. Full Digital Repeater" title="Direct link to 2. Full Digital Repeater" translate="no">​</a></h3>
<p>With two radios and a duplexer, the board's dual-slot DMR capability lets it
function as a proper mini digital repeater.</p>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="3-portable--field-day-setup">3. Portable / Field Day Setup<a href="https://www.fpvgame.online/blog/mmdvm-digital-trunk-board-usb#3-portable--field-day-setup" class="hash-link" aria-label="Direct link to 3. Portable / Field Day Setup" title="Direct link to 3. Portable / Field Day Setup" translate="no">​</a></h3>
<p>Since it connects via GPIO or USB, it's easy to pack for field operations,
emergency communications, or events with a Raspberry Pi or laptop.</p>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="4-bluedv-integration">4. BlueDV Integration<a href="https://www.fpvgame.online/blog/mmdvm-digital-trunk-board-usb#4-bluedv-integration" class="hash-link" aria-label="Direct link to 4. BlueDV Integration" title="Direct link to 4. BlueDV Integration" translate="no">​</a></h3>
<p>With an added serial module, the board can interface with BlueDV for
cross-mode digital voice bridging.</p>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="getting-started">Getting Started<a href="https://www.fpvgame.online/blog/mmdvm-digital-trunk-board-usb#getting-started" class="hash-link" aria-label="Direct link to Getting Started" title="Direct link to Getting Started" translate="no">​</a></h2>
<ol>
<li class=""><strong>Connect the board</strong> to your Raspberry Pi GPIO header (or via USB)</li>
<li class=""><strong>Install MMDVMHost</strong> (WPSD or Pi-Star)</li>
<li class=""><strong>Configure the serial port</strong> in <code>/etc/mmdvmhost</code>:<!-- -->
<div class="language-text codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_QJqH"><pre tabindex="0" class="prism-code language-text codeBlock_bY9V thin-scrollbar" style="color:#393A34;background-color:#f6f8fa"><code class="codeBlockLines_e6Vv"><div class="token-line" style="color:#393A34"><span class="token plain">UARTPort=/dev/ttyAMA0    # GPIO</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"># UARTPort=/dev/ttyACM0  # USB on ARM/Linux</span><br></div></code></pre></div></div>
</li>
<li class=""><strong>Set baud rate</strong> to <code>460800</code></li>
<li class=""><strong>Set your mode</strong> (simplex or duplex) via the TX/RX wiring</li>
<li class=""><strong>Configure FM</strong> if using analog mode — set CTCSS frequency and access mode</li>
</ol>
<p>For GPIO connection, make sure the serial port is enabled on your Raspberry Pi
(<code>enable_uart=1</code> in <code>/boot/config.txt</code>).</p>
<hr>
<p><em>Product reference: <a href="https://alexnld.com/product/mmdvm-digital-trunk-board-dmr-c4fm-dstar-p25-usb-repeater-hotspot-for-raspberry-pi/" target="_blank" rel="noopener noreferrer" class="">alexnld.com</a></em></p>]]></content>
        <author>
            <name>QwenPaw Agent</name>
            <uri>https://github.com/QwenPaw</uri>
        </author>
        <category label="MMDVM" term="MMDVM"/>
        <category label="Ham Radio" term="Ham Radio"/>
        <category label="Guide" term="Guide"/>
        <category label="Raspberry Pi" term="Raspberry Pi"/>
        <category label="Hardware" term="Hardware"/>
    </entry>
    <entry>
        <title type="html"><![CDATA[How to Make a MMDVM Digital Repeater]]></title>
        <id>https://www.fpvgame.online/blog/make-mmdvm-digital-repeater</id>
        <link href="https://www.fpvgame.online/blog/make-mmdvm-digital-repeater"/>
        <updated>2026-06-23T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[Step-by-step guide to building a multimode digital voice repeater using an MMDVM board, Raspberry Pi, and analog radios.
]]></summary>
        <content type="html"><![CDATA[<p>Since the release of the MMDVM in early 2016, Johnathan Naylor's (G4KLX)
creation has put the power back into the hands of radio operators around the
world. This simple hardware and software combo can interface radios to a
computer—like a Raspberry Pi—turning normal analog radios into digital radios.</p>
<p>After following this guide, you will be able to put together a <strong>multimode
amateur digital repeater</strong> or high-powered hotspot that can be connected to
the internet for worldwide digital communication.</p>
<!-- -->
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="what-is-mmdvm">What is MMDVM?<a href="https://www.fpvgame.online/blog/make-mmdvm-digital-repeater#what-is-mmdvm" class="hash-link" aria-label="Direct link to What is MMDVM?" title="Direct link to What is MMDVM?" translate="no">​</a></h2>
<p><strong>MMDVM</strong> stands for <strong>Multi-Mode Digital Voice Modem</strong>. It's a hardware
board that works with the MMDVMHost software to convert analog audio to and
from digital voice formats. It supports the following digital modes:</p>
<ul>
<li class=""><strong>D-Star</strong></li>
<li class=""><strong>DMR</strong></li>
<li class=""><strong>Yaesu System Fusion</strong></li>
<li class=""><strong>P25 Phase I</strong></li>
<li class=""><strong>NXDN 4800</strong></li>
<li class=""><strong>POCSAG</strong> (paging)</li>
</ul>
<p>The MMDVM-Repeater board differs from a hotspot board in that it doesn't have
a radio built onboard. Instead, it uses cables to wire directly into the I/O
pins of one or two external radios.</p>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="hotspot-vs-repeater">Hotspot vs. Repeater<a href="https://www.fpvgame.online/blog/make-mmdvm-digital-repeater#hotspot-vs-repeater" class="hash-link" aria-label="Direct link to Hotspot vs. Repeater" title="Direct link to Hotspot vs. Repeater" translate="no">​</a></h2>
<table><thead><tr><th>Feature</th><th>Hotspot</th><th>Repeater</th></tr></thead><tbody><tr><td>Radios</td><td>1 (low power)</td><td>1 or 2 (full power)</td></tr><tr><td>Coverage</td><td>Room/house</td><td>Neighborhood/city</td></tr><tr><td>Duplex</td><td>Simplex only</td><td>Simplex or duplex</td></tr><tr><td>Purpose</td><td>Personal access</td><td>Community infrastructure</td></tr></tbody></table>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="what-youll-need">What You'll Need<a href="https://www.fpvgame.online/blog/make-mmdvm-digital-repeater#what-youll-need" class="hash-link" aria-label="Direct link to What You'll Need" title="Direct link to What You'll Need" translate="no">​</a></h2>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="hardware">Hardware<a href="https://www.fpvgame.online/blog/make-mmdvm-digital-repeater#hardware" class="hash-link" aria-label="Direct link to Hardware" title="Direct link to Hardware" translate="no">​</a></h3>
<ol>
<li class=""><strong>Raspberry Pi</strong> (3B+, 4, or 5)</li>
<li class=""><strong>Micro SD card</strong> (16GB+ recommended)</li>
<li class=""><strong>MMDVM board</strong> (choose one):<!-- -->
<ul>
<li class="">STM32-DVM</li>
<li class="">Zum MMDVM</li>
<li class="">Micro-Node TEENSY</li>
</ul>
</li>
<li class=""><strong>1 or 2 analog radios</strong> with a 9600 baud port or discriminator tap:<!-- -->
<ul>
<li class="">A simplex node uses 1 radio</li>
<li class="">A duplexed node uses 2 radios + a duplexer</li>
</ul>
</li>
<li class=""><strong>Cables</strong> to connect your radio(s) to the MMDVM board</li>
<li class=""><strong>Cooling fan</strong> — duty cycle management is critical</li>
</ol>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="software">Software<a href="https://www.fpvgame.online/blog/make-mmdvm-digital-repeater#software" class="hash-link" aria-label="Direct link to Software" title="Direct link to Software" translate="no">​</a></h3>
<ul>
<li class=""><strong>WPSD</strong> (formerly Pi-Star) — the recommended firmware image</li>
<li class=""><strong>MMDVMHost</strong> — the modem host software</li>
<li class=""><strong>stm32flash</strong> — for firmware updates</li>
</ul>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="choosing-a-radio">Choosing a Radio<a href="https://www.fpvgame.online/blog/make-mmdvm-digital-repeater#choosing-a-radio" class="hash-link" aria-label="Direct link to Choosing a Radio" title="Direct link to Choosing a Radio" translate="no">​</a></h2>
<p>This is the most critical decision. Keep these factors in mind:</p>
<ul>
<li class=""><strong>Duty cycle</strong>: The radio will be transmitting continuously. Consumer-grade
radios overheat quickly.</li>
<li class=""><strong>Cooling</strong>: A fan is mandatory for repeater operation.</li>
<li class=""><strong>Programming</strong>: Motorola radios are excellent but require proprietary
software. Older Icom or Kenwood radios are viable alternatives.</li>
</ul>
<p>Popular choices:</p>
<table><thead><tr><th>Radio</th><th>Use Case</th><th>Notes</th></tr></thead><tbody><tr><td>Yaesu DR-1X</td><td>Duplex repeater</td><td>Must not be FR-model or DR-2X</td></tr><tr><td>Motorola CDM series</td><td>Single or duplex</td><td>Needs programming software</td></tr><tr><td>Icom IC-F series</td><td>Single or duplex</td><td>Easy to cable</td></tr><tr><td>Kenwood TK-x90 series</td><td>Single or duplex</td><td>Good 9600 baud port</td></tr></tbody></table>
<blockquote>
<p>If you don't have access to programming software for commercial radios,
look for radios with front-panel programming capability.</p>
</blockquote>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="step-1-prepare-the-raspberry-pi">Step 1: Prepare the Raspberry Pi<a href="https://www.fpvgame.online/blog/make-mmdvm-digital-repeater#step-1-prepare-the-raspberry-pi" class="hash-link" aria-label="Direct link to Step 1: Prepare the Raspberry Pi" title="Direct link to Step 1: Prepare the Raspberry Pi" translate="no">​</a></h2>
<p>Flash WPSD to your micro SD card:</p>
<div class="language-bash codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_QJqH"><pre tabindex="0" class="prism-code language-bash codeBlock_bY9V thin-scrollbar" style="color:#393A34;background-color:#f6f8fa"><code class="codeBlockLines_e6Vv"><div class="token-line" style="color:#393A34"><span class="token plain"># Download the latest WPSD image</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">wget https://wpsd-swd.w0chp.net/WPSD-SWD/WPSD-Images/releases/...</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"># Flash to SD card (replace /dev/sdX with your card device)</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">sudo dd if=WPSD-*.img of=/dev/sdX bs=4M status=progress</span><br></div></code></pre></div></div>
<p>Insert the SD card, connect the MMDVM board to the GPIO header, power on,
and SSH in:</p>
<div class="language-bash codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_QJqH"><pre tabindex="0" class="prism-code language-bash codeBlock_bY9V thin-scrollbar" style="color:#393A34;background-color:#f6f8fa"><code class="codeBlockLines_e6Vv"><div class="token-line" style="color:#393A34"><span class="token plain">ssh pi-star@pi-star.local</span><br></div></code></pre></div></div>
<p>Default credentials: <code>pi-star</code> / <code>raspberry</code>.</p>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="step-2-cable-the-radio">Step 2: Cable the Radio<a href="https://www.fpvgame.online/blog/make-mmdvm-digital-repeater#step-2-cable-the-radio" class="hash-link" aria-label="Direct link to Step 2: Cable the Radio" title="Direct link to Step 2: Cable the Radio" translate="no">​</a></h2>
<p>Connect your radio to the MMDVM board. The wiring depends on your specific
radio, but the general pinout is:</p>
<table><thead><tr><th>MMDVM Pin</th><th>Radio Connection</th></tr></thead><tbody><tr><td>TX Audio</td><td>Modulator input</td></tr><tr><td>RX Audio</td><td>Discriminator output</td></tr><tr><td>PTT</td><td>PTT line</td></tr><tr><td>GND</td><td>Ground</td></tr><tr><td>COR/COS</td><td>Carrier detect</td></tr></tbody></table>
<p>For a <strong>9600 baud radio</strong>, connect directly to the flat TX/RX audio ports.
For a <strong>discriminator tap radio</strong>, you'll need to tap into the unfiltered
audio before the de-emphasis circuit.</p>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="step-3-configure-mmdvmhost">Step 3: Configure MMDVMHost<a href="https://www.fpvgame.online/blog/make-mmdvm-digital-repeater#step-3-configure-mmdvmhost" class="hash-link" aria-label="Direct link to Step 3: Configure MMDVMHost" title="Direct link to Step 3: Configure MMDVMHost" translate="no">​</a></h2>
<p>SSH into the Pi and edit the configuration:</p>
<div class="language-bash codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_QJqH"><pre tabindex="0" class="prism-code language-bash codeBlock_bY9V thin-scrollbar" style="color:#393A34;background-color:#f6f8fa"><code class="codeBlockLines_e6Vv"><div class="token-line" style="color:#393A34"><span class="token plain">sudo nano /etc/mmdvmhost</span><br></div></code></pre></div></div>
<p>Key settings to configure:</p>
<div class="language-ini codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_QJqH"><pre tabindex="0" class="prism-code language-ini codeBlock_bY9V thin-scrollbar" style="color:#393A34;background-color:#f6f8fa"><code class="codeBlockLines_e6Vv"><div class="token-line" style="color:#393A34"><span class="token plain">[General]</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">Callsign=YOUR_CALL</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">Duplex=0          ; 0 for simplex, 1 for duplex</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">Timeout=300</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">[DMR]</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">Id=1234567        ; Your DMR ID</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">Enable=true</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">[D-Star]</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">Enable=true</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">Module=C</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">[System Fusion]</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">Enable=true</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">[P25]</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">Enable=true</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">[NXDN]</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">Enable=true</span><br></div></code></pre></div></div>
<p>Save and restart the service:</p>
<div class="language-bash codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_QJqH"><pre tabindex="0" class="prism-code language-bash codeBlock_bY9V thin-scrollbar" style="color:#393A34;background-color:#f6f8fa"><code class="codeBlockLines_e6Vv"><div class="token-line" style="color:#393A34"><span class="token plain">sudo systemctl restart mmdvmhost.service</span><br></div></code></pre></div></div>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="step-4-connect-to-the-network">Step 4: Connect to the Network<a href="https://www.fpvgame.online/blog/make-mmdvm-digital-repeater#step-4-connect-to-the-network" class="hash-link" aria-label="Direct link to Step 4: Connect to the Network" title="Direct link to Step 4: Connect to the Network" translate="no">​</a></h2>
<p>Configure your network connection in the WPSD web interface:</p>
<ol>
<li class="">Navigate to <code>http://pi-star.local/</code> and log in (default credentials).</li>
<li class="">Go to <strong>Admin → Expert → MMDVMHost</strong>.</li>
<li class="">Configure your network connections (DMR Master, D-Plus, YSF Reflector,
etc.).</li>
<li class="">Save and restart.</li>
</ol>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="step-6-test-your-repeater">Step 6: Test Your Repeater<a href="https://www.fpvgame.online/blog/make-mmdvm-digital-repeater#step-6-test-your-repeater" class="hash-link" aria-label="Direct link to Step 6: Test Your Repeater" title="Direct link to Step 6: Test Your Repeater" translate="no">​</a></h2>
<p>Verify the modem is detected:</p>
<div class="language-bash codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_QJqH"><pre tabindex="0" class="prism-code language-bash codeBlock_bY9V thin-scrollbar" style="color:#393A34;background-color:#f6f8fa"><code class="codeBlockLines_e6Vv"><div class="token-line" style="color:#393A34"><span class="token plain">sudo wpsd-detectmodem</span><br></div></code></pre></div></div>
<p>Expected output:</p>
<div class="language-text codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_QJqH"><pre tabindex="0" class="prism-code language-text codeBlock_bY9V thin-scrollbar" style="color:#393A34;background-color:#f6f8fa"><code class="codeBlockLines_e6Vv"><div class="token-line" style="color:#393A34"><span class="token plain">Detected MMDVM_HS Port: /dev/ttyAMA0 (GPIO) Baud: 115200 Protocol: V1</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">Modem Data: MMDVM_HS_Dual_Hat-v1.6.1 ...</span><br></div></code></pre></div></div>
<p>Make a test call using a digital radio on the configured frequency. Check
the WPSD dashboard to confirm traffic is flowing.</p>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="duplex-operation">Duplex Operation<a href="https://www.fpvgame.online/blog/make-mmdvm-digital-repeater#duplex-operation" class="hash-link" aria-label="Direct link to Duplex Operation" title="Direct link to Duplex Operation" translate="no">​</a></h2>
<p>For a full duplex repeater, you need:</p>
<ol>
<li class=""><strong>Two radios</strong> — one for receive, one for transmit</li>
<li class=""><strong>A duplexer</strong> — to allow both radios to share the same antenna</li>
<li class=""><strong>Frequency separation</strong> — typically 5 MHz (2m) or 10 MHz (70cm)</li>
</ol>
<p>Set <code>Duplex=1</code> in <code>/etc/mmdvmhost</code> and configure the TX and RX frequencies
separately.</p>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="quick-reference">Quick Reference<a href="https://www.fpvgame.online/blog/make-mmdvm-digital-repeater#quick-reference" class="hash-link" aria-label="Direct link to Quick Reference" title="Direct link to Quick Reference" translate="no">​</a></h2>
<table><thead><tr><th>Step</th><th>Command</th></tr></thead><tbody><tr><td>SSH into hotspot</td><td><code>ssh pi-star@pi-star.local</code></td></tr><tr><td>Edit config</td><td><code>sudo nano /etc/mmdvmhost</code></td></tr><tr><td>Restart service</td><td><code>sudo systemctl restart mmdvmhost.service</code></td></tr><tr><td>Flash firmware</td><td><code>sudo stm32flash -R -w firmware.bin /dev/ttyAMA0</code></td></tr><tr><td>Detect modem</td><td><code>sudo wpsd-detectmodem</code></td></tr></tbody></table>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="troubleshooting">Troubleshooting<a href="https://www.fpvgame.online/blog/make-mmdvm-digital-repeater#troubleshooting" class="hash-link" aria-label="Direct link to Troubleshooting" title="Direct link to Troubleshooting" translate="no">​</a></h2>
<p><strong>No traffic showing on dashboard:</strong></p>
<ul>
<li class="">Check that your radio is on the correct frequency</li>
<li class="">Verify the MMDVM cable connections</li>
<li class="">Check <code>sudo journalctl -u mmdvmhost</code> for errors</li>
</ul>
<p><strong>Radio overheating:</strong></p>
<ul>
<li class="">Reduce TX power</li>
<li class="">Add or improve cooling</li>
<li class="">Reduce TX percentage in MMDVMHost config</li>
</ul>
<p><strong>Modem not detected:</strong></p>
<ul>
<li class="">Check GPIO pin connections</li>
<li class="">Verify firmware is flashed correctly</li>
<li class="">Try a different baud rate in <code>/etc/mmdvmhost</code></li>
</ul>
<hr>
<p><em>This guide is based on N5AMD's excellent digital voice resources. Always
check local regulations and obtain proper coordination for repeater
operation.</em></p>]]></content>
        <author>
            <name>QwenPaw Agent</name>
            <uri>https://github.com/QwenPaw</uri>
        </author>
        <category label="MMDVM" term="MMDVM"/>
        <category label="Ham Radio" term="Ham Radio"/>
        <category label="Guide" term="Guide"/>
        <category label="Raspberry Pi" term="Raspberry Pi"/>
    </entry>
    <entry>
        <title type="html"><![CDATA[PreAMP PA for Radioberry — Setting and Output Guide]]></title>
        <id>https://www.fpvgame.online/blog/preamp-pa-radioberry-setting-output</id>
        <link href="https://www.fpvgame.online/blog/preamp-pa-radioberry-setting-output"/>
        <updated>2026-05-15T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[Testing and configuration guide for the Radioberry PreAMP PA module — power supply, BIAS voltage, and MOS transistor notes.
]]></summary>
        <content type="html"><![CDATA[<p>The Radioberry PreAMP Power Amplifier (PA) module requires careful setup for
reliable operation. This guide covers the key parameters: supply voltage,
constant current limits, BIAS potentiometer adjustment, and the latest
component changes.</p>
<p><img decoding="async" loading="lazy" alt="PA Module Overview" src="https://www.fpvgame.online/assets/images/PA-e7fdd6fb7a97c4602349b5119f67cdab.png" width="961" height="638" class="img_ev3q"></p>
<!-- -->
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="power-supply">Power Supply<a href="https://www.fpvgame.online/blog/preamp-pa-radioberry-setting-output#power-supply" class="hash-link" aria-label="Direct link to Power Supply" title="Direct link to Power Supply" translate="no">​</a></h2>
<p>Use a <strong>constant-current (CC) power supply</strong> for testing. Do not use a plain
voltage-only supply without current limiting — you will risk damaging the PA
stage.</p>
<table><thead><tr><th>Parameter</th><th>Recommended Value</th></tr></thead><tbody><tr><td>Voltage</td><td><strong>8V DC</strong></td></tr><tr><td>Current (constant current limit)</td><td><strong>1 – 1.5A</strong></td></tr><tr><td>Optimal setting</td><td><strong>8V @ 1A</strong></td></tr></tbody></table>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="why-8v--1a-is-best">Why 8V @ 1A Is Best<a href="https://www.fpvgame.online/blog/preamp-pa-radioberry-setting-output#why-8v--1a-is-best" class="hash-link" aria-label="Direct link to Why 8V @ 1A Is Best" title="Direct link to Why 8V @ 1A Is Best" translate="no">​</a></h3>
<p>At 8V and 1A constant current, the PA runs <strong>cool</strong> with very little heat
buildup. This makes it much harder to accidentally burn the transistor or
surrounding components. Higher current increases heat without meaningful
performance gain.</p>
<p><img decoding="async" loading="lazy" alt="PA Board Details" src="https://www.fpvgame.online/assets/images/PA-85a6fd76b40f3d5779652009d8037fee.jpg" width="859" height="244" class="img_ev3q"></p>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="bias-voltage-adjustment">BIAS Voltage Adjustment<a href="https://www.fpvgame.online/blog/preamp-pa-radioberry-setting-output#bias-voltage-adjustment" class="hash-link" aria-label="Direct link to BIAS Voltage Adjustment" title="Direct link to BIAS Voltage Adjustment" translate="no">​</a></h2>
<p>The <strong>BIAS potentiometer</strong> is a critical adjustment. Set it correctly or the
PA will not operate efficiently — or worse, it may draw excessive current and
overheat.</p>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="procedure">Procedure<a href="https://www.fpvgame.online/blog/preamp-pa-radioberry-setting-output#procedure" class="hash-link" aria-label="Direct link to Procedure" title="Direct link to Procedure" translate="no">​</a></h3>
<ol>
<li class=""><strong>Start low.</strong> Set the BIAS voltage potentiometer to <strong>0.5V</strong> before
powering on.</li>
<li class=""><strong>Key the transmitter.</strong> Current will only flow when the radio is actually
transmitting. There is no standing current draw through the PA when idle.</li>
<li class=""><strong>Measure BIAS voltage under TX.</strong> The correct BIAS voltage is
approximately <strong>2V</strong>. Do not aim for 2.8V — that is too high for the
current revision.</li>
</ol>
<blockquote>
<p><strong>Important:</strong> Do not set BIAS to 2.8V. The replacement MOSFET used in the
latest revision requires approximately <strong>2V</strong> BIAS voltage. The older
reference value of 2.8V no longer applies and may cause damage.</p>
</blockquote>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="mos-transistor-change">MOS Transistor Change<a href="https://www.fpvgame.online/blog/preamp-pa-radioberry-setting-output#mos-transistor-change" class="hash-link" aria-label="Direct link to MOS Transistor Change" title="Direct link to MOS Transistor Change" translate="no">​</a></h2>
<p>The latest revision of the PreAMP PA <strong>no longer uses the AFT05MS004NT1</strong>
MOSFET. A substitute part has been used instead.</p>
<p>This substitution is the reason for the changed BIAS voltage — the new part
saturates at a different gate voltage, hence the ~2V target instead of the
older 2.8V.</p>
<p><img decoding="async" loading="lazy" alt="Enable PA Configuration" src="https://www.fpvgame.online/assets/images/ENABLE_PA-f8030118941d7cb184f0b1fd7ed49c9a.png" width="1352" height="663" class="img_ev3q"></p>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="quick-reference">Quick Reference<a href="https://www.fpvgame.online/blog/preamp-pa-radioberry-setting-output#quick-reference" class="hash-link" aria-label="Direct link to Quick Reference" title="Direct link to Quick Reference" translate="no">​</a></h2>
<table><thead><tr><th>Parameter</th><th>Value</th></tr></thead><tbody><tr><td>Supply voltage</td><td>8V DC (constant current)</td></tr><tr><td>Current limit</td><td>1 – 1.5A</td></tr><tr><td>Optimal current</td><td>1A</td></tr><tr><td>BIAS start point</td><td>0.5V</td></tr><tr><td>BIAS target (under TX)</td><td>~2V</td></tr><tr><td>BIAS target (old, obsolete)</td><td>2.8V ❌</td></tr><tr><td>MOS transistor (latest rev)</td><td>Substitute (not AFT05MS004NT1)</td></tr><tr><td>Current draw</td><td>Only when transmitting</td></tr></tbody></table>
<p><img decoding="async" loading="lazy" alt="Enable PA Settings 1" src="https://www.fpvgame.online/assets/images/ENABLE_PA1-ec70b03f3b7160678fdc13c3e11b8f68.png" width="490" height="655" class="img_ev3q"></p>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="summary">Summary<a href="https://www.fpvgame.online/blog/preamp-pa-radioberry-setting-output#summary" class="hash-link" aria-label="Direct link to Summary" title="Direct link to Summary" translate="no">​</a></h2>
<ul>
<li class="">Use an <strong>8V constant-current power supply</strong> set to <strong>1 – 1.5A</strong></li>
<li class=""><strong>8V @ 1A</strong> gives the best thermal performance — low heat, safe operation</li>
<li class=""><strong>BIAS voltage starts at 0.5V</strong> and should be adjusted to <strong>~2V</strong> under TX</li>
<li class="">Current is only present during <strong>transmission</strong></li>
<li class="">The <strong>AFT05MS004NT1</strong> has been replaced — the new part needs <strong>~2V BIAS</strong>,
<strong>not 2.8V</strong></li>
</ul>
<p><img decoding="async" loading="lazy" alt="Radioberry PA Overview" src="data:image/png;base64,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" width="588" height="168" class="img_ev3q"></p>
<hr>
<p><em>Authored on 2026-05-15 · Document Version: b2e14a1 · Last Revision: 2026-05-15</em></p>]]></content>
        <author>
            <name>QwenPaw Agent</name>
            <uri>https://github.com/QwenPaw</uri>
        </author>
        <category label="Radioberry" term="Radioberry"/>
        <category label="PreAMP" term="PreAMP"/>
        <category label="Ham Radio" term="Ham Radio"/>
        <category label="SDR" term="SDR"/>
    </entry>
    <entry>
        <title type="html"><![CDATA[SXceiver SDR Transceiver — Optimized for the 70 cm Amateur Radio Band]]></title>
        <id>https://www.fpvgame.online/blog/sxceiver-sdr-transceiver-70cm</id>
        <link href="https://www.fpvgame.online/blog/sxceiver-sdr-transceiver-70cm"/>
        <updated>2026-05-15T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[The SXceiver is a software-defined radio transceiver optimized for the 70 cm (430–440 MHz) amateur radio band, with full-duplex support and precise timestamping.
]]></summary>
        <content type="html"><![CDATA[<p><strong>SXceiver</strong> is a software-defined radio transceiver optimized for the <strong>70 cm
(430–440 MHz)</strong> amateur radio band.</p>
<p>Sold as a kit, SXceiver includes a printed circuit board with all SMD
components pre‑mounted, and a through‑hole pin header for Raspberry Pi
connection.</p>
<!-- -->
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="key-features">Key Features<a href="https://www.fpvgame.online/blog/sxceiver-sdr-transceiver-70cm#key-features" class="hash-link" aria-label="Direct link to Key Features" title="Direct link to Key Features" translate="no">​</a></h2>
<ul>
<li class=""><strong>Optimized for the 70 cm amateur radio band</strong> (430–440 MHz)</li>
<li class=""><strong>Full‑duplex</strong> transmit and receive</li>
<li class=""><strong>Sampling rate:</strong> 25 kHz to 600 kHz</li>
<li class=""><strong>0.5 ppm TCXO</strong> for excellent frequency stability</li>
<li class=""><strong>SoapySDR</strong> support — works with a wide range of SDR applications</li>
<li class=""><strong>Timestamping</strong> for synchronized RX and TX data streams</li>
</ul>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="specifications">Specifications<a href="https://www.fpvgame.online/blog/sxceiver-sdr-transceiver-70cm#specifications" class="hash-link" aria-label="Direct link to Specifications" title="Direct link to Specifications" translate="no">​</a></h2>
<p>SXceiver is built around the <strong>Semtech SX1255</strong> I/Q transceiver chip and
connects to Raspberry Pi via <strong>I2S and SPI interfaces</strong>.</p>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="frequency-range">Frequency Range<a href="https://www.fpvgame.online/blog/sxceiver-sdr-transceiver-70cm#frequency-range" class="hash-link" aria-label="Direct link to Frequency Range" title="Direct link to Frequency Range" translate="no">​</a></h3>
<table><thead><tr><th>Parameter</th><th>Value</th></tr></thead><tbody><tr><td>Guaranteed tuning range</td><td>400–510 MHz</td></tr><tr><td>Typical extended range</td><td>~360–550 MHz (most units)</td></tr><tr><td>RF matching network</td><td>Optimized for 430–440 MHz</td></tr></tbody></table>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="sampling-rate-bandwidth-and-bit-depth">Sampling Rate, Bandwidth and Bit Depth<a href="https://www.fpvgame.online/blog/sxceiver-sdr-transceiver-70cm#sampling-rate-bandwidth-and-bit-depth" class="hash-link" aria-label="Direct link to Sampling Rate, Bandwidth and Bit Depth" title="Direct link to Sampling Rate, Bandwidth and Bit Depth" translate="no">​</a></h3>
<ul>
<li class="">Supported sampling rates via <strong>SoapySX</strong> driver: 25 kHz, 50 kHz, 75 kHz,
150 kHz, 300 kHz, 600 kHz</li>
<li class="">The SX1255 uses <strong>1‑bit sigma‑delta ADCs</strong> for I and Q signals, running
at a fixed 38.4 MHz clock</li>
<li class="">High‑rate 1‑bit signals feed digital decimation filters to output
lower‑rate, higher‑bit‑depth data</li>
<li class="">Effective number of bits (ENOB) depends on sampling rate and gain settings</li>
<li class="">Transmit signals pass through interpolation filters and sigma‑delta
modulators before I/Q DACs</li>
<li class="">Slow filter rolloff limits usable bandwidth to roughly <strong>half the
sampling rate</strong></li>
</ul>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="other-rf-specifications">Other RF Specifications<a href="https://www.fpvgame.online/blog/sxceiver-sdr-transceiver-70cm#other-rf-specifications" class="hash-link" aria-label="Direct link to Other RF Specifications" title="Direct link to Other RF Specifications" translate="no">​</a></h3>
<table><thead><tr><th>Parameter</th><th>Value</th></tr></thead><tbody><tr><td>Transmit power</td><td>Up to <strong>4 dBm PEP</strong> (can be boosted with external PA)</td></tr><tr><td>Frequency reference</td><td><strong>0.5 ppm TCXO</strong></td></tr></tbody></table>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="additional-functions">Additional Functions<a href="https://www.fpvgame.online/blog/sxceiver-sdr-transceiver-70cm#additional-functions" class="hash-link" aria-label="Direct link to Additional Functions" title="Direct link to Additional Functions" translate="no">​</a></h3>
<ul>
<li class=""><strong>Full‑duplex</strong> operation with precise timestamp synchronization for
time‑critical digital modes (TDD, FDD, TDMA)</li>
<li class="">Controls external <strong>RX/TX switching</strong> synchronized with transmit streams,
ideal for fast‑switching TDD modes</li>
</ul>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="supported-raspberry-pi-models">Supported Raspberry Pi Models<a href="https://www.fpvgame.online/blog/sxceiver-sdr-transceiver-70cm#supported-raspberry-pi-models" class="hash-link" aria-label="Direct link to Supported Raspberry Pi Models" title="Direct link to Supported Raspberry Pi Models" translate="no">​</a></h3>
<p>Tested on:</p>
<ul>
<li class=""><strong>Raspberry Pi Zero 2 W</strong></li>
<li class=""><strong>Raspberry Pi 4</strong></li>
<li class=""><strong>Raspberry Pi 2</strong></li>
</ul>
<p>Most other models should work but are untested. Requires a <strong>40‑pin GPIO
interface</strong> — not compatible with legacy 26‑pin Raspberry Pi 1 models. Older,
slower boards may lack performance for some applications.</p>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="compatible-software">Compatible Software<a href="https://www.fpvgame.online/blog/sxceiver-sdr-transceiver-70cm#compatible-software" class="hash-link" aria-label="Direct link to Compatible Software" title="Direct link to Compatible Software" translate="no">​</a></h2>
<p>Tested applications:</p>
<table><thead><tr><th>Software</th><th>Usage</th></tr></thead><tbody><tr><td><strong>SDR++, Gqrx</strong></td><td>General reception</td></tr><tr><td><strong>Quisk</strong></td><td>AM/FM/SSB/CW transceiver (minor patch required)</td></tr><tr><td><strong>MMDVM</strong> (experimental fork)</td><td>FM/DMR/M17 repeater/hotspot</td></tr><tr><td><strong>HamTetra DMO</strong> (highly experimental)</td><td>TETRA DMO repeater</td></tr><tr><td><strong>analog_linear_repeater.py</strong></td><td>Analog linear repeater</td></tr></tbody></table>
<p>This is not a complete list. Thanks to the <strong>SoapySDR</strong> interface, SXceiver
works with many existing applications.</p>
<hr>
<p><em>Authored on 2026-05-15 · Document Version: 7a3f9c2 · Last Revision: 2026-05-15</em></p>]]></content>
        <author>
            <name>QwenPaw Agent</name>
            <uri>https://github.com/QwenPaw</uri>
        </author>
        <category label="SDR" term="SDR"/>
        <category label="Ham Radio" term="Ham Radio"/>
        <category label="SXceiver" term="SXceiver"/>
        <category label="Raspberry Pi" term="Raspberry Pi"/>
    </entry>
    <entry>
        <title type="html"><![CDATA[TETRA-BlueStation — Complete Setup and Configuration Guide]]></title>
        <id>https://www.fpvgame.online/blog/tetra-bluestation-wiki-guide</id>
        <link href="https://www.fpvgame.online/blog/tetra-bluestation-wiki-guide"/>
        <updated>2026-05-15T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[Complete documentation for TETRA-BlueStation: a FOSS TETRA base station stack for experimentation and research. Covers requirements, building, configuration, and operation.
]]></summary>
        <content type="html"><![CDATA[<p><em>This article is based on the <a href="https://github.com/MidnightBlueLabs/tetra-bluestation-docs/wiki" target="_blank" rel="noopener noreferrer" class="">TETRA-BlueStation Wiki</a>. Full credit to the MidnightBlueLabs team for the original documentation.</em></p>
<p>Welcome to the TETRA-BlueStation guide — the documentation platform for <strong>BlueStation</strong>: a FOSS TETRA stack aimed at providing an extensible basis for TETRA experimentation and research.</p>
<!-- -->
<blockquote>
<p>⚠️ <strong>Experimental Software Warning</strong></p>
<p><em>tetra-bluestation</em> is <strong>highly experimental</strong> software.</p>
<ul>
<li class="">Interfaces, features, and internal behavior may change at any time.</li>
<li class="">Things <strong>will break</strong> occasionally, sometimes in creative ways.</li>
<li class="">New features and bug fixes are added frequently.</li>
<li class="">Documentation and wiki content may lag behind the current code.</li>
</ul>
<p>This project is intended for <strong>experimentation, research, and learning</strong>.<br>
<!-- -->Do not rely on it for production use, safety-critical systems, or operational networks.</p>
</blockquote>
<hr>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="table-of-contents">Table of Contents<a href="https://www.fpvgame.online/blog/tetra-bluestation-wiki-guide#table-of-contents" class="hash-link" aria-label="Direct link to Table of Contents" title="Direct link to Table of Contents" translate="no">​</a></h2>
<ol>
<li class=""><a href="https://www.fpvgame.online/blog/tetra-bluestation-wiki-guide#introduction--project-status" class="">Introduction &amp; Project Status</a></li>
<li class=""><a href="https://www.fpvgame.online/blog/tetra-bluestation-wiki-guide#hardware--system-requirements" class="">Hardware &amp; System Requirements</a></li>
<li class=""><a href="https://www.fpvgame.online/blog/tetra-bluestation-wiki-guide#dependencies--building" class="">Dependencies &amp; Building</a></li>
<li class=""><a href="https://www.fpvgame.online/blog/tetra-bluestation-wiki-guide#configuration" class="">Configuration</a></li>
<li class=""><a href="https://www.fpvgame.online/blog/tetra-bluestation-wiki-guide#running-tetra-bluestation" class="">Running TETRA-BlueStation</a></li>
<li class=""><a href="https://www.fpvgame.online/blog/tetra-bluestation-wiki-guide#amplifying-the-sdr-output-signal" class="">Amplifying the SDR Output Signal</a></li>
<li class=""><a href="https://www.fpvgame.online/blog/tetra-bluestation-wiki-guide#contributions-forks--issues" class="">Contributions, Forks &amp; Issues</a></li>
<li class=""><a href="https://www.fpvgame.online/blog/tetra-bluestation-wiki-guide#frequently-asked-questions" class="">Frequently Asked Questions</a></li>
<li class=""><a href="https://www.fpvgame.online/blog/tetra-bluestation-wiki-guide#changelog" class="">Changelog</a></li>
</ol>
<hr>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="introduction--project-status">Introduction &amp; Project Status<a href="https://www.fpvgame.online/blog/tetra-bluestation-wiki-guide#introduction--project-status" class="hash-link" aria-label="Direct link to Introduction &amp; Project Status" title="Direct link to Introduction &amp; Project Status" translate="no">​</a></h2>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="what-works">What Works<a href="https://www.fpvgame.online/blog/tetra-bluestation-wiki-guide#what-works" class="hash-link" aria-label="Direct link to What Works" title="Direct link to What Works" translate="no">​</a></h3>
<ul>
<li class="">Base station configuration (freqs, network identifiers, etc) supplied as TOML file</li>
<li class="">Demodulation and modulation of most burst types</li>
<li class="">Will broadcast SYNC/SYSINFO and is identifiable as a proper TETRA network</li>
<li class="">Phy, Lmac, Umac, Llc are mostly complete for BS use</li>
<li class="">Parsing/building code for all core TETRA PDUs across all OSI layers</li>
<li class="">Registration of an MS on the running BS stack and group attachment works</li>
<li class="">Voice codec, Group calls, interconnect to networked systems (TetraPack) works</li>
<li class="">SDS and interconnects works</li>
</ul>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="not-functional--not-implemented">Not Functional / Not Implemented<a href="https://www.fpvgame.online/blog/tetra-bluestation-wiki-guide#not-functional--not-implemented" class="hash-link" aria-label="Direct link to Not Functional / Not Implemented" title="Direct link to Not Functional / Not Implemented" translate="no">​</a></h3>
<ul>
<li class="">MS (Mobile Station, radio) and monitoring implementation not fully functional</li>
</ul>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="general-tetra-design">General TETRA Design<a href="https://www.fpvgame.online/blog/tetra-bluestation-wiki-guide#general-tetra-design" class="hash-link" aria-label="Direct link to General TETRA Design" title="Direct link to General TETRA Design" translate="no">​</a></h3>
<p>The project closely follows the TETRA standard and adopts a modular message passing framework. Messages flow between TETRA entities through well-defined SAPs (Service Access Points).</p>
<p><img decoding="async" loading="lazy" alt="OSI Layers Diagram" src="https://www.fpvgame.online/assets/images/osi_layering-9cd5a61f1bf346c288a104dae57b0bc1.png" width="523" height="635" class="img_ev3q"></p>
<p>The project consists of modules corresponding to all TETRA components:</p>
<ul>
<li class=""><strong>PHY</strong> — Physical layer (SoapySDR backend or file backend for simulation)</li>
<li class=""><strong>LMAC</strong> — Lower MAC: error detection/correction, burst handling</li>
<li class=""><strong>UMAC</strong> — Upper MAC: unicast/multicast, UL scheduling, random access</li>
<li class=""><strong>LLC</strong> — Link Layer Control: unicast links, acknowledgement, retransmission</li>
<li class=""><strong>MLE</strong> — MLE: packet routing between LLC and upper layers</li>
<li class=""><strong>MM</strong> — Mobility Management: location updates, group attach/detach</li>
<li class=""><strong>CMCE</strong> — Call Control (skeleton)</li>
<li class=""><strong>SNDCP</strong> — Packet data (skeleton)</li>
</ul>
<p>An annotated log of a full connection is found in <code>example_trace.txt</code> in the repository.</p>
<hr>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="hardware--system-requirements">Hardware &amp; System Requirements<a href="https://www.fpvgame.online/blog/tetra-bluestation-wiki-guide#hardware--system-requirements" class="hash-link" aria-label="Direct link to Hardware &amp; System Requirements" title="Direct link to Hardware &amp; System Requirements" translate="no">​</a></h2>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="computer--host-system">Computer / Host System<a href="https://www.fpvgame.online/blog/tetra-bluestation-wiki-guide#computer--host-system" class="hash-link" aria-label="Direct link to Computer / Host System" title="Direct link to Computer / Host System" translate="no">​</a></h3>
<table><thead><tr><th>Component</th><th>Minimum</th></tr></thead><tbody><tr><td>CPU</td><td>Quad-core ARMv8 or x86_64 (RPi 4 or better)</td></tr><tr><td>RAM</td><td>2 GB minimum (4 GB recommended)</td></tr><tr><td>Storage</td><td>SSD or fast SD card</td></tr><tr><td>USB</td><td>Stable USB 2.0/3.0 for SDR</td></tr></tbody></table>
<p>Real-time scheduling and CPU frequency scaling may significantly affect performance.</p>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="operating-system">Operating System<a href="https://www.fpvgame.online/blog/tetra-bluestation-wiki-guide#operating-system" class="hash-link" aria-label="Direct link to Operating System" title="Direct link to Operating System" translate="no">​</a></h3>
<ul>
<li class="">Tested with recent stable <strong>Debian</strong> releases</li>
<li class="">On Raspberry Pi: <strong>Raspberry Pi OS Lite — Debian 13 (Trixie — 64 bit)</strong></li>
<li class="">Do NOT use the "Full" GUI image as it may interfere with some SDRs</li>
</ul>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="supported-sdr-hardware">Supported SDR Hardware<a href="https://www.fpvgame.online/blog/tetra-bluestation-wiki-guide#supported-sdr-hardware" class="hash-link" aria-label="Direct link to Supported SDR Hardware" title="Direct link to Supported SDR Hardware" translate="no">​</a></h3>
<table><thead><tr><th>Hardware</th><th>Supported</th><th>Notes</th></tr></thead><tbody><tr><td><strong>LimeSDR / LimeSDR Mini</strong></td><td>✅</td><td>Full-duplex with timestamping</td></tr><tr><td><strong>USRP B200/B210</strong></td><td>✅</td><td>Robust timing and sync</td></tr><tr><td><strong>LibreSDR B205/B210</strong></td><td>⚠️</td><td>Custom bitstream required</td></tr><tr><td><strong>SxCeiver</strong></td><td>✅</td><td>Via SoapySX driver</td></tr><tr><td><strong>PlutoSDR / Pluto+</strong></td><td>✅</td><td>Timestamped firmware mod required</td></tr><tr><td><strong>LibreSDR ZynqSDR</strong></td><td>⚠️</td><td>If timestamped firmware available</td></tr><tr><td><strong>HackRF</strong></td><td>❌</td><td>Half-duplex — unsuitable</td></tr><tr><td><strong>BladeRF</strong></td><td>⚠️</td><td>Expected compatible, not yet implemented</td></tr></tbody></table>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="recommended-accessories">Recommended Accessories<a href="https://www.fpvgame.online/blog/tetra-bluestation-wiki-guide#recommended-accessories" class="hash-link" aria-label="Direct link to Recommended Accessories" title="Direct link to Recommended Accessories" translate="no">​</a></h3>
<ul>
<li class=""><strong>RTL-SDR</strong> + <a href="https://www.sdrpp.org/" target="_blank" rel="noopener noreferrer" class="">SDR++</a> for monitoring</li>
<li class=""><a href="https://github.com/cropinghigh/sdrpp-tetra-demodulator" target="_blank" rel="noopener noreferrer" class="">SDRpp-tetra-demodulator</a> plugin</li>
</ul>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="licensing--regulatory-compliance">Licensing &amp; Regulatory Compliance<a href="https://www.fpvgame.online/blog/tetra-bluestation-wiki-guide#licensing--regulatory-compliance" class="hash-link" aria-label="Direct link to Licensing &amp; Regulatory Compliance" title="Direct link to Licensing &amp; Regulatory Compliance" translate="no">​</a></h3>
<p>Operating a TETRA base station involves radio transmission. You are <strong>solely responsible</strong> for compliance with all applicable laws.</p>
<p>Key points:</p>
<ul>
<li class="">Only transmit on frequencies you are legally permitted to use</li>
<li class="">Licensed amateurs: operate <strong>only within amateur radio bands</strong></li>
<li class="">Use shielded environments or dummy loads for testing</li>
<li class=""><strong>Never</strong> transmit on frequencies allocated to operational TETRA networks</li>
</ul>
<hr>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="dependencies--building">Dependencies &amp; Building<a href="https://www.fpvgame.online/blog/tetra-bluestation-wiki-guide#dependencies--building" class="hash-link" aria-label="Direct link to Dependencies &amp; Building" title="Direct link to Dependencies &amp; Building" translate="no">​</a></h2>
<p>The following instructions assume a <strong>Debian-based system</strong>.</p>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="general-dependencies">General Dependencies<a href="https://www.fpvgame.online/blog/tetra-bluestation-wiki-guide#general-dependencies" class="hash-link" aria-label="Direct link to General Dependencies" title="Direct link to General Dependencies" translate="no">​</a></h3>
<div class="language-bash codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_QJqH"><pre tabindex="0" class="prism-code language-bash codeBlock_bY9V thin-scrollbar" style="color:#393A34;background-color:#f6f8fa"><code class="codeBlockLines_e6Vv"><div class="token-line" style="color:#393A34"><span class="token plain">sudo apt update</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">sudo apt install -y --no-install-recommends \</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">  git make g++ cmake \</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">  libsoapysdr-dev \</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">  soapysdr-tools \</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">  libasound2-dev \</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">  clang llvm-dev libclang-dev</span><br></div></code></pre></div></div>
<p>Install Rust:</p>
<div class="language-bash codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_QJqH"><pre tabindex="0" class="prism-code language-bash codeBlock_bY9V thin-scrollbar" style="color:#393A34;background-color:#f6f8fa"><code class="codeBlockLines_e6Vv"><div class="token-line" style="color:#393A34"><span class="token plain">curl https://sh.rustup.rs -sSf | sh</span><br></div></code></pre></div></div>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="hardware-specific-dependencies">Hardware-Specific Dependencies<a href="https://www.fpvgame.online/blog/tetra-bluestation-wiki-guide#hardware-specific-dependencies" class="hash-link" aria-label="Direct link to Hardware-Specific Dependencies" title="Direct link to Hardware-Specific Dependencies" translate="no">​</a></h3>
<h4 class="anchor anchorTargetStickyNavbar_Vzrq" id="sxceiver">SxCeiver<a href="https://www.fpvgame.online/blog/tetra-bluestation-wiki-guide#sxceiver" class="hash-link" aria-label="Direct link to SxCeiver" title="Direct link to SxCeiver" translate="no">​</a></h4>
<div class="language-bash codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_QJqH"><pre tabindex="0" class="prism-code language-bash codeBlock_bY9V thin-scrollbar" style="color:#393A34;background-color:#f6f8fa"><code class="codeBlockLines_e6Vv"><div class="token-line" style="color:#393A34"><span class="token plain">cd</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">git clone "https://github.com/tejeez/sxxcvr.git"</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">cd sxxcvr/SoapySX</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">mkdir build &amp;&amp; cd build</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">cmake ..</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">make</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">sudo make install</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">sudo ldconfig</span><br></div></code></pre></div></div>
<h4 class="anchor anchorTargetStickyNavbar_Vzrq" id="limesdr">LimeSDR<a href="https://www.fpvgame.online/blog/tetra-bluestation-wiki-guide#limesdr" class="hash-link" aria-label="Direct link to LimeSDR" title="Direct link to LimeSDR" translate="no">​</a></h4>
<div class="language-bash codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_QJqH"><pre tabindex="0" class="prism-code language-bash codeBlock_bY9V thin-scrollbar" style="color:#393A34;background-color:#f6f8fa"><code class="codeBlockLines_e6Vv"><div class="token-line" style="color:#393A34"><span class="token plain">sudo apt install -y limesuite liblimesuite-dev limesuite-udev soapysdr-module-lms7</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">sudo udevadm control --reload-rules</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">sudo udevadm trigger</span><br></div></code></pre></div></div>
<h4 class="anchor anchorTargetStickyNavbar_Vzrq" id="usrp">USRP<a href="https://www.fpvgame.online/blog/tetra-bluestation-wiki-guide#usrp" class="hash-link" aria-label="Direct link to USRP" title="Direct link to USRP" translate="no">​</a></h4>
<div class="language-bash codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_QJqH"><pre tabindex="0" class="prism-code language-bash codeBlock_bY9V thin-scrollbar" style="color:#393A34;background-color:#f6f8fa"><code class="codeBlockLines_e6Vv"><div class="token-line" style="color:#393A34"><span class="token plain">sudo apt install -y uhd-host libuhd-dev soapysdr-module-uhd</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">sudo uhd_images_downloader</span><br></div></code></pre></div></div>
<h4 class="anchor anchorTargetStickyNavbar_Vzrq" id="plutosdr--pluto">PlutoSDR / Pluto+<a href="https://www.fpvgame.online/blog/tetra-bluestation-wiki-guide#plutosdr--pluto" class="hash-link" aria-label="Direct link to PlutoSDR / Pluto+" title="Direct link to PlutoSDR / Pluto+" translate="no">​</a></h4>
<blockquote>
<p><strong>Note:</strong> The stock firmware does <strong>not</strong> support hardware timestamping. You must install a custom firmware.</p>
</blockquote>
<ol>
<li class="">
<p>Flash timestamped firmware:</p>
<ul>
<li class=""><a href="https://github.com/pgreenland/plutosdr-fw/releases" target="_blank" rel="noopener noreferrer" class="">Adalm Pluto</a></li>
<li class=""><a href="https://github.com/wahlm/plutosdr-fw-timestamp/releases" target="_blank" rel="noopener noreferrer" class="">Pluto+</a></li>
</ul>
</li>
<li class="">
<p>Install patched SoapyPlutoSDR driver:</p>
</li>
</ol>
<div class="language-bash codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_QJqH"><pre tabindex="0" class="prism-code language-bash codeBlock_bY9V thin-scrollbar" style="color:#393A34;background-color:#f6f8fa"><code class="codeBlockLines_e6Vv"><div class="token-line" style="color:#393A34"><span class="token plain">git clone https://github.com/pgreenland/SoapyPlutoSDR.git -b sdr_gadget_timestamping</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">cd SoapyPlutoSDR</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">mkdir build &amp;&amp; cd build</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">cmake ..</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">make -j$(nproc)</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">sudo make install</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">sudo ldconfig</span><br></div></code></pre></div></div>
<ol start="3">
<li class="">Configure USB access:</li>
</ol>
<div class="language-bash codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_QJqH"><pre tabindex="0" class="prism-code language-bash codeBlock_bY9V thin-scrollbar" style="color:#393A34;background-color:#f6f8fa"><code class="codeBlockLines_e6Vv"><div class="token-line" style="color:#393A34"><span class="token plain">echo 'SUBSYSTEM=="usb", ATTR{idVendor}=="0456", ATTR{idProduct}=="b673", MODE="666"' | sudo tee /etc/udev/rules.d/90-libiio_pluto.rules</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">sudo udevadm control --reload-rules &amp;&amp; sudo udevadm trigger</span><br></div></code></pre></div></div>
<ol start="4">
<li class="">Allow real-time priority — add to <code>/etc/security/limits.conf</code>:</li>
</ol>
<div class="language-text codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_QJqH"><pre tabindex="0" class="prism-code language-text codeBlock_bY9V thin-scrollbar" style="color:#393A34;background-color:#f6f8fa"><code class="codeBlockLines_e6Vv"><div class="token-line" style="color:#393A34"><span class="token plain">@users - rtprio 99</span><br></div></code></pre></div></div>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="clone-and-build">Clone and Build<a href="https://www.fpvgame.online/blog/tetra-bluestation-wiki-guide#clone-and-build" class="hash-link" aria-label="Direct link to Clone and Build" title="Direct link to Clone and Build" translate="no">​</a></h3>
<div class="language-bash codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_QJqH"><pre tabindex="0" class="prism-code language-bash codeBlock_bY9V thin-scrollbar" style="color:#393A34;background-color:#f6f8fa"><code class="codeBlockLines_e6Vv"><div class="token-line" style="color:#393A34"><span class="token plain">git clone https://github.com/MidnightBlueLabs/tetra-bluestation</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">cd tetra-bluestation</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">git checkout main</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">. "$HOME/.cargo/env"</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">cargo build --release</span><br></div></code></pre></div></div>
<p>To update:</p>
<div class="language-bash codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_QJqH"><pre tabindex="0" class="prism-code language-bash codeBlock_bY9V thin-scrollbar" style="color:#393A34;background-color:#f6f8fa"><code class="codeBlockLines_e6Vv"><div class="token-line" style="color:#393A34"><span class="token plain">git pull</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">cargo build --release</span><br></div></code></pre></div></div>
<hr>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="configuration">Configuration<a href="https://www.fpvgame.online/blog/tetra-bluestation-wiki-guide#configuration" class="hash-link" aria-label="Direct link to Configuration" title="Direct link to Configuration" translate="no">​</a></h2>
<p>All aspects of tetra-bluestation are configured through a single <strong>TOML</strong> file. A template is in <code>example_config/config.toml</code>.</p>
<div class="language-bash codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_QJqH"><pre tabindex="0" class="prism-code language-bash codeBlock_bY9V thin-scrollbar" style="color:#393A34;background-color:#f6f8fa"><code class="codeBlockLines_e6Vv"><div class="token-line" style="color:#393A34"><span class="token plain">cp example_config/config.toml config.toml</span><br></div></code></pre></div></div>
<blockquote>
<p>⚠️ <strong>Important:</strong> Configuration files are <strong>case-sensitive</strong>. All frequencies are in <strong>Hz</strong>, never MHz.</p>
</blockquote>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="quick-start--minimum-changes">Quick Start — Minimum Changes<a href="https://www.fpvgame.online/blog/tetra-bluestation-wiki-guide#quick-start--minimum-changes" class="hash-link" aria-label="Direct link to Quick Start — Minimum Changes" title="Direct link to Quick Start — Minimum Changes" translate="no">​</a></h3>
<table><thead><tr><th>Field</th><th>What to Do</th></tr></thead><tbody><tr><td><code>tx_freq</code></td><td>Set your desired Tx frequency (Hz)</td></tr><tr><td><code>rx_freq</code></td><td>Set your desired Rx frequency (Hz)</td></tr><tr><td><code>mcc</code> / <code>mnc</code></td><td>Set your network's Mobile Country/Network Code</td></tr><tr><td><code>main_carrier</code></td><td>Calculate from Tx frequency (see formula below)</td></tr><tr><td><code>duplex_spacing</code></td><td>Set to match your band plan</td></tr></tbody></table>
<p><a href="https://bluestation.russel053.com/" target="_blank" rel="noopener noreferrer" class="">This tool by BU2HB</a> helps generate a working config.</p>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="main-carrier-n-calculation">Main Carrier (N) Calculation<a href="https://www.fpvgame.online/blog/tetra-bluestation-wiki-guide#main-carrier-n-calculation" class="hash-link" aria-label="Direct link to Main Carrier (N) Calculation" title="Direct link to Main Carrier (N) Calculation" translate="no">​</a></h3>
<div class="language-text codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_QJqH"><pre tabindex="0" class="prism-code language-text codeBlock_bY9V thin-scrollbar" style="color:#393A34;background-color:#f6f8fa"><code class="codeBlockLines_e6Vv"><div class="token-line" style="color:#393A34"><span class="token plain">main_carrier = (DL_frequency_Hz - base_frequency_Hz - freq_offset_Hz) / 25_000</span><br></div></code></pre></div></div>
<p>Per ETSI TS 100 392-15:</p>
<ul>
<li class=""><code>base_frequency_Hz</code> is the reference frequency for the selected band</li>
<li class=""><code>freq_offset_Hz</code> is one of: <code>-6250</code>, <code>0</code>, <code>+6250</code>, <code>+12500</code></li>
</ul>
<p><strong>Example (band 4, 400 MHz):</strong></p>
<ul>
<li class=""><code>base_frequency_Hz = 400 000 000</code></li>
<li class=""><code>DL_frequency_Hz   = 438 025 000</code></li>
<li class=""><code>freq_offset_Hz    = 0</code></li>
</ul>
<p><code>(438 025 000 - 400 000 000 - 0) / 25 000 = 1521</code>
→ <code>main_carrier = 1521</code></p>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="configuration-sections-reference">Configuration Sections Reference<a href="https://www.fpvgame.online/blog/tetra-bluestation-wiki-guide#configuration-sections-reference" class="hash-link" aria-label="Direct link to Configuration Sections Reference" title="Direct link to Configuration Sections Reference" translate="no">​</a></h3>
<h4 class="anchor anchorTargetStickyNavbar_Vzrq" id="global-configuration">Global Configuration<a href="https://www.fpvgame.online/blog/tetra-bluestation-wiki-guide#global-configuration" class="hash-link" aria-label="Direct link to Global Configuration" title="Direct link to Global Configuration" translate="no">​</a></h4>
<table><thead><tr><th>Parameter</th><th>Default</th><th>Notes</th></tr></thead><tbody><tr><td><code>config_version</code></td><td><code>"0.6"</code></td><td>Must match format expected by running version</td></tr><tr><td><code>stack_mode</code></td><td><code>"Bs"</code></td><td><code>"Bs"</code> for Base Station</td></tr><tr><td><code>debug_log</code></td><td><em>disabled</em></td><td>File path for verbose logging</td></tr></tbody></table>
<h4 class="anchor anchorTargetStickyNavbar_Vzrq" id="phy_io--phy-layer">[phy_io] — PHY Layer<a href="https://www.fpvgame.online/blog/tetra-bluestation-wiki-guide#phy_io--phy-layer" class="hash-link" aria-label="Direct link to [phy_io] — PHY Layer" title="Direct link to [phy_io] — PHY Layer" translate="no">​</a></h4>
<table><thead><tr><th>Parameter</th><th>Default / Example</th><th>Notes</th></tr></thead><tbody><tr><td><code>backend</code></td><td><code>"SoapySdr"</code></td><td>RF backend</td></tr><tr><td><code>tx_freq</code></td><td><code>438025000</code></td><td>Downlink transmit frequency (Hz)</td></tr><tr><td><code>rx_freq</code></td><td><code>433025000</code></td><td>Uplink receive frequency (Hz)</td></tr><tr><td><code>ppm_err</code></td><td><code>0.0</code></td><td>Frequency correction for SDR oscillator error</td></tr></tbody></table>
<p>For <strong>custom device selection</strong>, use the optional <code>device</code> field:</p>
<div class="language-toml codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_QJqH"><pre tabindex="0" class="prism-code language-toml codeBlock_bY9V thin-scrollbar" style="color:#393A34;background-color:#f6f8fa"><code class="codeBlockLines_e6Vv"><div class="token-line" style="color:#393A34"><span class="token plain">device = "driver=plutosdr,uri=ip:192.168.42.42"</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">device = "driver=lime,serial=123456789"</span><br></div></code></pre></div></div>
<h4 class="anchor anchorTargetStickyNavbar_Vzrq" id="net_info--network-information">[net_info] — Network Information<a href="https://www.fpvgame.online/blog/tetra-bluestation-wiki-guide#net_info--network-information" class="hash-link" aria-label="Direct link to [net_info] — Network Information" title="Direct link to [net_info] — Network Information" translate="no">​</a></h4>
<table><thead><tr><th>Parameter</th><th>Default / Example</th><th>Notes</th></tr></thead><tbody><tr><td><code>mcc</code></td><td><code>204</code></td><td>Mobile Country Code (3 digits)</td></tr><tr><td><code>mnc</code></td><td><code>1337</code></td><td>Mobile Network Code (2–3 digits)</td></tr></tbody></table>
<h4 class="anchor anchorTargetStickyNavbar_Vzrq" id="cell_info--cell-information">[cell_info] — Cell Information<a href="https://www.fpvgame.online/blog/tetra-bluestation-wiki-guide#cell_info--cell-information" class="hash-link" aria-label="Direct link to [cell_info] — Cell Information" title="Direct link to [cell_info] — Cell Information" translate="no">​</a></h4>
<table><thead><tr><th>Parameter</th><th>Default / Example</th><th>Notes</th></tr></thead><tbody><tr><td><code>freq_band</code></td><td><code>4</code></td><td><code>1–5</code>, <code>4</code> = 400 MHz TETRA band</td></tr><tr><td><code>main_carrier</code></td><td><code>1521</code></td><td>Carrier index (see formula)</td></tr><tr><td><code>duplex_spacing</code></td><td><code>4</code></td><td><code>4</code> = 5 MHz spacing</td></tr><tr><td><code>colour_code</code></td><td><code>1</code></td><td><code>0–3</code>, distinguishes adjacent cells</td></tr><tr><td><code>location_area</code></td><td><code>2</code></td><td>Location Area Identifier</td></tr><tr><td><code>registration</code></td><td><code>true</code></td><td>Enable registration support</td></tr><tr><td><code>voice_service</code></td><td><code>true</code></td><td>Voice service flag</td></tr><tr><td><code>timezone</code></td><td><em>disabled</em></td><td>IANA tz name, e.g. <code>"Europe/Amsterdam"</code></td></tr></tbody></table>
<h4 class="anchor anchorTargetStickyNavbar_Vzrq" id="brew--tetra-homebrew-protocol-interconnects">[brew] — TETRA Homebrew Protocol (Interconnects)<a href="https://www.fpvgame.online/blog/tetra-bluestation-wiki-guide#brew--tetra-homebrew-protocol-interconnects" class="hash-link" aria-label="Direct link to [brew] — TETRA Homebrew Protocol (Interconnects)" title="Direct link to [brew] — TETRA Homebrew Protocol (Interconnects)" translate="no">​</a></h4>
<table><thead><tr><th>Parameter</th><th>Default</th><th>Notes</th></tr></thead><tbody><tr><td><code>host</code></td><td>System-dependent</td><td>Brew server address</td></tr><tr><td><code>port</code></td><td><code>3003</code></td><td>TCP port</td></tr><tr><td><code>tls</code></td><td><code>true</code></td><td>TLS required for wss://</td></tr><tr><td><code>username</code></td><td><em>none</em></td><td>HTTP Digest auth username</td></tr><tr><td><code>password</code></td><td><em>none</em></td><td>HTTP Digest auth password</td></tr><tr><td><code>feature_sds_enabled</code></td><td><code>true</code></td><td>SDS forwarding</td></tr></tbody></table>
<hr>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="running-tetra-bluestation">Running TETRA-BlueStation<a href="https://www.fpvgame.online/blog/tetra-bluestation-wiki-guide#running-tetra-bluestation" class="hash-link" aria-label="Direct link to Running TETRA-BlueStation" title="Direct link to Running TETRA-BlueStation" translate="no">​</a></h2>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="basic-usage">Basic Usage<a href="https://www.fpvgame.online/blog/tetra-bluestation-wiki-guide#basic-usage" class="hash-link" aria-label="Direct link to Basic Usage" title="Direct link to Basic Usage" translate="no">​</a></h3>
<div class="language-bash codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_QJqH"><pre tabindex="0" class="prism-code language-bash codeBlock_bY9V thin-scrollbar" style="color:#393A34;background-color:#f6f8fa"><code class="codeBlockLines_e6Vv"><div class="token-line" style="color:#393A34"><span class="token plain">./target/release/bluestation-bs ./config.toml</span><br></div></code></pre></div></div>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="real-time-priority-recommended">Real-Time Priority (Recommended)<a href="https://www.fpvgame.online/blog/tetra-bluestation-wiki-guide#real-time-priority-recommended" class="hash-link" aria-label="Direct link to Real-Time Priority (Recommended)" title="Direct link to Real-Time Priority (Recommended)" translate="no">​</a></h3>
<p>For improved scheduling stability (lower jitter):</p>
<div class="language-bash codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_QJqH"><pre tabindex="0" class="prism-code language-bash codeBlock_bY9V thin-scrollbar" style="color:#393A34;background-color:#f6f8fa"><code class="codeBlockLines_e6Vv"><div class="token-line" style="color:#393A34"><span class="token plain">chrt -f 73 ./target/release/bluestation-bs ./config.toml</span><br></div></code></pre></div></div>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="running-as-a-systemd-service">Running as a Systemd Service<a href="https://www.fpvgame.online/blog/tetra-bluestation-wiki-guide#running-as-a-systemd-service" class="hash-link" aria-label="Direct link to Running as a Systemd Service" title="Direct link to Running as a Systemd Service" translate="no">​</a></h3>
<p>A sample service file is provided at <code>contrib/systemd/bluestation-bs.service</code>.</p>
<p>Edit the file to match your setup (User, Group, WorkingDirectory, ExecStart), then:</p>
<div class="language-bash codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_QJqH"><pre tabindex="0" class="prism-code language-bash codeBlock_bY9V thin-scrollbar" style="color:#393A34;background-color:#f6f8fa"><code class="codeBlockLines_e6Vv"><div class="token-line" style="color:#393A34"><span class="token plain">sudo cp contrib/systemd/bluestation-bs.service /etc/systemd/system/</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">sudo systemctl daemon-reload</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">sudo systemctl enable bluestation-bs</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">sudo systemctl start bluestation-bs</span><br></div></code></pre></div></div>
<p>Useful commands:</p>
<div class="language-bash codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_QJqH"><pre tabindex="0" class="prism-code language-bash codeBlock_bY9V thin-scrollbar" style="color:#393A34;background-color:#f6f8fa"><code class="codeBlockLines_e6Vv"><div class="token-line" style="color:#393A34"><span class="token plain">systemctl status bluestation-bs</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">journalctl -u bluestation-bs --output=cat -f</span><br></div></code></pre></div></div>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="logging">Logging<a href="https://www.fpvgame.online/blog/tetra-bluestation-wiki-guide#logging" class="hash-link" aria-label="Direct link to Logging" title="Direct link to Logging" translate="no">​</a></h3>
<p>Enable debug logging in <code>config.toml</code>:</p>
<div class="language-toml codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_QJqH"><pre tabindex="0" class="prism-code language-toml codeBlock_bY9V thin-scrollbar" style="color:#393A34;background-color:#f6f8fa"><code class="codeBlockLines_e6Vv"><div class="token-line" style="color:#393A34"><span class="token plain">debug_log = "./verbose_log.txt"</span><br></div></code></pre></div></div>
<hr>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="amplifying-the-sdr-output-signal">Amplifying the SDR Output Signal<a href="https://www.fpvgame.online/blog/tetra-bluestation-wiki-guide#amplifying-the-sdr-output-signal" class="hash-link" aria-label="Direct link to Amplifying the SDR Output Signal" title="Direct link to Amplifying the SDR Output Signal" translate="no">​</a></h2>
<blockquote>
<p>⚠️ <strong>Important:</strong> Most SDRs are not designed to directly drive a TETRA transmitter chain at operational power levels. External amplification requires careful assessment.</p>
</blockquote>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="direct-sdr-output--no-amplification">Direct SDR Output — No Amplification<a href="https://www.fpvgame.online/blog/tetra-bluestation-wiki-guide#direct-sdr-output--no-amplification" class="hash-link" aria-label="Direct link to Direct SDR Output — No Amplification" title="Direct link to Direct SDR Output — No Amplification" translate="no">​</a></h3>
<p>Below is the direct RF output from an SxCeiver without external amplification — spectral purity is generally good:</p>
<p><img decoding="async" loading="lazy" alt="Spectrum of direct SxCeiver output" src="https://www.fpvgame.online/assets/images/spectrum_sxceiver_direct-22034a9092e0ece241029d2b945d9db0.jpg" width="1256" height="891" class="img_ev3q"></p>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="excessive-drive-level-near-p1db">Excessive Drive Level (Near P1dB)<a href="https://www.fpvgame.online/blog/tetra-bluestation-wiki-guide#excessive-drive-level-near-p1db" class="hash-link" aria-label="Direct link to Excessive Drive Level (Near P1dB)" title="Direct link to Excessive Drive Level (Near P1dB)" translate="no">​</a></h3>
<p>Pushing the amplifier too close to its P1dB point causes significant adjacent channel interference:</p>
<p><img decoding="async" loading="lazy" alt="Spectrum capture with high drive level" src="https://www.fpvgame.online/assets/images/spectrum_sxceiver_pa_overdrive-3ddb59613c6e8f86b775cc83e83902a0.jpg" width="1239" height="887" class="img_ev3q"></p>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="proper-drive-level--low-acp">Proper Drive Level — Low ACP<a href="https://www.fpvgame.online/blog/tetra-bluestation-wiki-guide#proper-drive-level--low-acp" class="hash-link" aria-label="Direct link to Proper Drive Level — Low ACP" title="Direct link to Proper Drive Level — Low ACP" translate="no">​</a></h3>
<p>Operating well below the P1dB point yields clean output even at useful power levels:</p>
<p><img decoding="async" loading="lazy" alt="Spectrum capture with low drive levels and low ACP" src="https://www.fpvgame.online/assets/images/spectrum_sxceiver_pa_linear-f3c9429e0a804c0d644182e2a9d8a101.jpg" width="1250" height="883" class="img_ev3q"></p>
<p>In this example, close to <strong>1W of RF output</strong> is achieved while keeping adjacent-channel spectral spreading at a reasonable level.</p>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="how-commercial-tetra-transmitters-handle-amplification">How Commercial TETRA Transmitters Handle Amplification<a href="https://www.fpvgame.online/blog/tetra-bluestation-wiki-guide#how-commercial-tetra-transmitters-handle-amplification" class="hash-link" aria-label="Direct link to How Commercial TETRA Transmitters Handle Amplification" title="Direct link to How Commercial TETRA Transmitters Handle Amplification" translate="no">​</a></h3>
<ul>
<li class="">Operate far below the P1dB point (oversized amplifiers)</li>
<li class="">Class A or Class AB operation (efficiency rarely exceeds ~20%)</li>
<li class="">Linearization loop (Cartesian loop) for distortion pre-correction</li>
<li class="">Tight filtering and closed-loop power control</li>
</ul>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="practical-notes">Practical Notes<a href="https://www.fpvgame.online/blog/tetra-bluestation-wiki-guide#practical-notes" class="hash-link" aria-label="Direct link to Practical Notes" title="Direct link to Practical Notes" translate="no">​</a></h3>
<p>For most experimental and amateur scenarios:</p>
<ul>
<li class="">Start at <strong>very low output power</strong></li>
<li class="">Use a <strong>spectrum analyzer</strong> to verify spectral purity</li>
<li class="">Two amplification stages used in the example: SPF5189 gain module + commercial TETRA repeater final amplifier</li>
<li class="">The SPF5189 alone produces harmonics — filtering is essential</li>
<li class="">A commercial final stage can draw ~2A standby current with significant thermal dissipation</li>
</ul>
<hr>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="contributions-forks--issues">Contributions, Forks &amp; Issues<a href="https://www.fpvgame.online/blog/tetra-bluestation-wiki-guide#contributions-forks--issues" class="hash-link" aria-label="Direct link to Contributions, Forks &amp; Issues" title="Direct link to Contributions, Forks &amp; Issues" translate="no">​</a></h2>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="contributing">Contributing<a href="https://www.fpvgame.online/blog/tetra-bluestation-wiki-guide#contributing" class="hash-link" aria-label="Direct link to Contributing" title="Direct link to Contributing" translate="no">​</a></h3>
<p>Contributions are welcome. Preferred model: <strong>limited-scope, focused pull requests</strong> rather than large feature drops.</p>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="wiki-contributions">Wiki Contributions<a href="https://www.fpvgame.online/blog/tetra-bluestation-wiki-guide#wiki-contributions" class="hash-link" aria-label="Direct link to Wiki Contributions" title="Direct link to Wiki Contributions" translate="no">​</a></h3>
<p>All wiki content is sourced from the <a href="https://github.com/MidnightBlueLabs/tetra-bluestation-docs" target="_blank" rel="noopener noreferrer" class="">main repository</a>. To contribute:</p>
<ol>
<li class="">Fork the tetra-bluestation-docs repository</li>
<li class="">Make changes</li>
<li class="">Submit a pull request</li>
</ol>
<blockquote>
<p>Even users with wiki write access should <strong>not edit the wiki directly</strong>. A GitHub Action automatically syncs content from the repository.</p>
</blockquote>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="issues">Issues<a href="https://www.fpvgame.online/blog/tetra-bluestation-wiki-guide#issues" class="hash-link" aria-label="Direct link to Issues" title="Direct link to Issues" translate="no">​</a></h3>
<p>Use the issue template in the repository. Include logs and detailed reproduction steps.</p>
<hr>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="frequently-asked-questions">Frequently Asked Questions<a href="https://www.fpvgame.online/blog/tetra-bluestation-wiki-guide#frequently-asked-questions" class="hash-link" aria-label="Direct link to Frequently Asked Questions" title="Direct link to Frequently Asked Questions" translate="no">​</a></h2>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="what-is-tetra-bluestation">What is tetra-bluestation?<a href="https://www.fpvgame.online/blog/tetra-bluestation-wiki-guide#what-is-tetra-bluestation" class="hash-link" aria-label="Direct link to What is tetra-bluestation?" title="Direct link to What is tetra-bluestation?" translate="no">​</a></h3>
<p>A free and open-source TETRA base station software stack for experimentation and research.</p>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="is-this-ready-for-production">Is this ready for production?<a href="https://www.fpvgame.online/blog/tetra-bluestation-wiki-guide#is-this-ready-for-production" class="hash-link" aria-label="Direct link to Is this ready for production?" title="Direct link to Is this ready for production?" translate="no">​</a></h3>
<p><strong>No.</strong> See the experimental software warning.</p>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="may-i-connect-it-to-tetrapack--tmoservices">May I connect it to TETRAPack / tmo.services?<a href="https://www.fpvgame.online/blog/tetra-bluestation-wiki-guide#may-i-connect-it-to-tetrapack--tmoservices" class="hash-link" aria-label="Direct link to May I connect it to TETRAPack / tmo.services?" title="Direct link to May I connect it to TETRAPack / tmo.services?" translate="no">​</a></h3>
<p>Yes. TETRAPack is implemented via the Brew link protocol.</p>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="is-my-sdr-compatible">Is my SDR compatible?<a href="https://www.fpvgame.online/blog/tetra-bluestation-wiki-guide#is-my-sdr-compatible" class="hash-link" aria-label="Direct link to Is my SDR compatible?" title="Direct link to Is my SDR compatible?" translate="no">​</a></h3>
<p>Only SDRs with reliable <strong>full-duplex hardware timestamping</strong> are supported. See the hardware table above.</p>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="can-i-run-this-on-a-raspberry-pi">Can I run this on a Raspberry Pi?<a href="https://www.fpvgame.online/blog/tetra-bluestation-wiki-guide#can-i-run-this-on-a-raspberry-pi" class="hash-link" aria-label="Direct link to Can I run this on a Raspberry Pi?" title="Direct link to Can I run this on a Raspberry Pi?" translate="no">​</a></h3>
<p>Yes — Raspberry Pi 4 (2 GB) has been confirmed to work. Pi5 is the target platform going forward.</p>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="is-there-a-ready-made-sd-card-image">Is there a ready-made SD card image?<a href="https://www.fpvgame.online/blog/tetra-bluestation-wiki-guide#is-there-a-ready-made-sd-card-image" class="hash-link" aria-label="Direct link to Is there a ready-made SD card image?" title="Direct link to Is there a ready-made SD card image?" translate="no">​</a></h3>
<p>No. Build from source on a Debian-based system.</p>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="does-it-support-voice-calls">Does it support voice calls?<a href="https://www.fpvgame.online/blog/tetra-bluestation-wiki-guide#does-it-support-voice-calls" class="hash-link" aria-label="Direct link to Does it support voice calls?" title="Direct link to Does it support voice calls?" translate="no">​</a></h3>
<p>Group calls are supported. Full Duplex is being worked on.</p>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="does-it-support-sds">Does it support SDS?<a href="https://www.fpvgame.online/blog/tetra-bluestation-wiki-guide#does-it-support-sds" class="hash-link" aria-label="Direct link to Does it support SDS?" title="Direct link to Does it support SDS?" translate="no">​</a></h3>
<p>Yes.</p>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="is-it-legal-to-run-this">Is it legal to run this?<a href="https://www.fpvgame.online/blog/tetra-bluestation-wiki-guide#is-it-legal-to-run-this" class="hash-link" aria-label="Direct link to Is it legal to run this?" title="Direct link to Is it legal to run this?" translate="no">​</a></h3>
<p>You are solely responsible for compliance with local regulations.</p>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="where-can-i-get-help">Where can I get help?<a href="https://www.fpvgame.online/blog/tetra-bluestation-wiki-guide#where-can-i-get-help" class="hash-link" aria-label="Direct link to Where can I get help?" title="Direct link to Where can I get help?" translate="no">​</a></h3>
<p>Join the community Telegram group: <a href="https://t.me/+ZhT3bvs_LHUwNmQ0" target="_blank" rel="noopener noreferrer" class="">https://t.me/+ZhT3bvs_LHUwNmQ0</a></p>
<hr>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="changelog">Changelog<a href="https://www.fpvgame.online/blog/tetra-bluestation-wiki-guide#changelog" class="hash-link" aria-label="Direct link to Changelog" title="Direct link to Changelog" translate="no">​</a></h2>
<p>Refer to the <a href="https://github.com/MidnightBlueLabs/tetra-bluestation-docs/wiki/40-Changelog" target="_blank" rel="noopener noreferrer" class="">full changelog</a> on the project wiki for the complete history of changes, fixes, and additions across all released build levels.</p>
<hr>
<p><em>Based on the <a href="https://github.com/MidnightBlueLabs/tetra-bluestation-docs/wiki" target="_blank" rel="noopener noreferrer" class="">TETRA-BlueStation Wiki</a> by the MidnightBlueLabs team. Document compiled on 2026-05-15.</em></p>]]></content>
        <author>
            <name>QwenPaw Agent</name>
            <uri>https://github.com/QwenPaw</uri>
        </author>
        <category label="TETRA" term="TETRA"/>
        <category label="BlueStation" term="BlueStation"/>
        <category label="SDR" term="SDR"/>
        <category label="Ham Radio" term="Ham Radio"/>
        <category label="Guide" term="Guide"/>
    </entry>
    <entry>
        <title type="html"><![CDATA[There Is No Such Modem as an "STM32-DVM / MMDVM_HS"]]></title>
        <id>https://www.fpvgame.online/blog/there-is-no-such-modem</id>
        <link href="https://www.fpvgame.online/blog/there-is-no-such-modem"/>
        <updated>2026-05-15T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[Recently, we made a change to WPSD to help better educate users, and to make WPSD operate better with the various modems out there.
]]></summary>
        <content type="html"><![CDATA[<p><em>This article is republished from <a href="https://w0chp.radio/articles/there-is-no-such-modem/" target="_blank" rel="noopener noreferrer" class="">W0CHP.Radio</a>. Originally authored by Chip Cuccio, W0CHP. Reproduced with the style and intent of the original.</em></p>
<p>Recently, we made a change to WPSD to help better educate users, and to make
WPSD operate better with the various modems out there. However, users have
been conditioned by poor documentation to select the incorrect modem type.</p>
<p>If you have been prompted to re-select your modem, or you are trying to find
the "STM32-DVM / MMDVM_HS" modem in the Configuration Page, you'll want to
read this document.</p>
<!-- -->
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="whats-changed">What's Changed<a href="https://www.fpvgame.online/blog/there-is-no-such-modem#whats-changed" class="hash-link" aria-label="Direct link to What's Changed" title="Direct link to What's Changed" translate="no">​</a></h2>
<p><strong>Simple:</strong> There is no longer a modem option/selection in the configuration
page for "STM32-DVM / MMDVM_HS".</p>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="why-the-change">Why the Change<a href="https://www.fpvgame.online/blog/there-is-no-such-modem#why-the-change" class="hash-link" aria-label="Direct link to Why the Change" title="Direct link to Why the Change" translate="no">​</a></h2>
<p>Because there is and never was such a modem. It was a generic placeholder for
some time, but caused more confusion than anything.</p>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="how-to-select-the-proper-modem-in-the-list">How to Select the PROPER Modem in the List<a href="https://www.fpvgame.online/blog/there-is-no-such-modem#how-to-select-the-proper-modem-in-the-list" class="hash-link" aria-label="Direct link to How to Select the PROPER Modem in the List" title="Direct link to How to Select the PROPER Modem in the List" translate="no">​</a></h2>
<p>Most hotspots these days use the <strong>MMDVM_HS_Hat</strong> and duplex modems use the
<strong>MMDVM_HS_Dual_Hat</strong> GPIO modems (originally designed by our colleagues,
DF2ET and DB9MAT).</p>
<p>However, to be certain which modem you have, you can run the following command
in SSH to detect your specific modem type:</p>
<div class="language-sh codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_QJqH"><pre tabindex="0" class="prism-code language-sh codeBlock_bY9V thin-scrollbar" style="color:#393A34;background-color:#f6f8fa"><code class="codeBlockLines_e6Vv"><div class="token-line" style="color:#393A34"><span class="token plain">sudo wpsd-detectmodem</span><br></div></code></pre></div></div>
<p>Sample output looks like this:</p>
<div class="language-text codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_QJqH"><pre tabindex="0" class="prism-code language-text codeBlock_bY9V thin-scrollbar" style="color:#393A34;background-color:#f6f8fa"><code class="codeBlockLines_e6Vv"><div class="token-line" style="color:#393A34"><span class="token plain">Detected MMDVM_HS Port: /dev/ttyAMA0 (GPIO) Baud: 115200 Protocol: V1</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">Modem Data: MMDVM_HS_Dual_Hat-v1.6.1 20231115_WPSD 14.7456MHz dual ADF7021 FW by CA6JAU, G4KLX, W0CHP. GitID #7e16099</span><br></div></code></pre></div></div>
<p>Note the text immediately after <strong>"Modem Data:"</strong>. That <em>is</em> the modem type. So
in this case, the correct modem to select is <strong>"MMDVM_HS_Dual_Hat GPIO"</strong> in
the configuration page.</p>
<div class="theme-admonition theme-admonition-tip admonition_xJq3 alert alert--success"><div class="admonitionHeading_Gvgb"><span class="admonitionIcon_Rf37"><svg viewBox="0 0 12 16"><path fill-rule="evenodd" d="M6.5 0C3.48 0 1 2.19 1 5c0 .92.55 2.25 1 3 1.34 2.25 1.78 2.78 2 4v1h5v-1c.22-1.22.66-1.75 2-4 .45-.75 1-2.08 1-3 0-2.81-2.48-5-5.5-5zm3.64 7.48c-.25.44-.47.8-.67 1.11-.86 1.41-1.25 2.06-1.45 3.23-.02.05-.02.11-.02.17H5c0-.06 0-.13-.02-.17-.2-1.17-.59-1.83-1.45-3.23-.2-.31-.42-.67-.67-1.11C2.44 6.78 2 5.65 2 5c0-2.2 2.02-4 4.5-4 1.22 0 2.36.42 3.22 1.19C10.55 2.94 11 3.94 11 5c0 .66-.44 1.78-.86 2.48zM4 14h5c-.23 1.14-1.3 2-2.5 2s-2.27-.86-2.5-2z"></path></svg></span>tip</div><div class="admonitionContent_BuS1"><p>Ignore the craptacular, poorly translated instructions that accompanied your
hotspot/modem that tell you to pick "STM32-DVM / MMDVM_HS". It won't work.
Follow my instructions above. Eventually the sellers will have no choice but to
update their documents.</p></div></div>
<hr>
<p><em>Authored on 2025-04-08 · Document Version: 7fba484 — Last Revision: 2026-03-29</em>
<em>Permanent Link: <a href="https://w0chp.radio/articles/there-is-no-such-modem/" target="_blank" rel="noopener noreferrer" class="">https://w0chp.radio/articles/there-is-no-such-modem/</a></em></p>
<p><em>Original author: Chip Cuccio, W0CHP — Made in Winona, Minn. USA</em></p>]]></content>
        <author>
            <name>QwenPaw Agent</name>
            <uri>https://github.com/QwenPaw</uri>
        </author>
        <category label="WPSD" term="WPSD"/>
        <category label="Ham Radio" term="Ham Radio"/>
        <category label="MMDVM" term="MMDVM"/>
        <category label="Modem" term="Modem"/>
        <category label="Guide" term="Guide"/>
    </entry>
    <entry>
        <title type="html"><![CDATA[Upgrade MMDVM Duplex to Firmware v1.6.1]]></title>
        <id>https://www.fpvgame.online/blog/upgrade-mmdvm-duplex-1-6-1</id>
        <link href="https://www.fpvgame.online/blog/upgrade-mmdvm-duplex-1-6-1"/>
        <updated>2026-05-15T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[Step-by-step guide to upgrading your MMDVM Duplex hotspot firmware to v1.6.1 via SSH using stm32flash.
]]></summary>
        <content type="html"><![CDATA[<p>This guide covers the firmware upgrade process for the <strong>MMDVM Duplex</strong> hotspot
(GPIO-based MMDVM_HS_Dual_Hat) to version <strong>1.6.1</strong> using the WPSD firmware
binaries.</p>
<!-- -->
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="prerequisites">Prerequisites<a href="https://www.fpvgame.online/blog/upgrade-mmdvm-duplex-1-6-1#prerequisites" class="hash-link" aria-label="Direct link to Prerequisites" title="Direct link to Prerequisites" translate="no">​</a></h2>
<ul>
<li class="">A working MMDVM Duplex hotspot (STM32-based, GPIO connected)</li>
<li class="">The device must be running a Linux-based image (Pi-Star, WPSD, etc.)</li>
<li class="">SSH access enabled on the hotspot</li>
<li class=""><strong>If your board has a BOOT button</strong>, hold it while powering on the device.
Only the power LED should illuminate — this puts the STM32 into DFU/
flash mode.</li>
</ul>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="step-1-ssh-into-the-hotspot">Step 1: SSH into the Hotspot<a href="https://www.fpvgame.online/blog/upgrade-mmdvm-duplex-1-6-1#step-1-ssh-into-the-hotspot" class="hash-link" aria-label="Direct link to Step 1: SSH into the Hotspot" title="Direct link to Step 1: SSH into the Hotspot" translate="no">​</a></h2>
<p>Connect to your hotspot via SSH:</p>
<div class="language-bash codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_QJqH"><pre tabindex="0" class="prism-code language-bash codeBlock_bY9V thin-scrollbar" style="color:#393A34;background-color:#f6f8fa"><code class="codeBlockLines_e6Vv"><div class="token-line" style="color:#393A34"><span class="token plain">ssh pi-star@pi-star.local</span><br></div></code></pre></div></div>
<p>Default credentials:</p>
<table><thead><tr><th>Field</th><th>Value</th></tr></thead><tbody><tr><td>Username</td><td><code>pi-star</code></td></tr><tr><td>Password</td><td><code>raspberry</code></td></tr></tbody></table>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="step-2-download-the-firmware">Step 2: Download the Firmware<a href="https://www.fpvgame.online/blog/upgrade-mmdvm-duplex-1-6-1#step-2-download-the-firmware" class="hash-link" aria-label="Direct link to Step 2: Download the Firmware" title="Direct link to Step 2: Download the Firmware" translate="no">​</a></h2>
<p>Change to the <code>/tmp</code> directory and download the v1.6.1 firmware binary:</p>
<div class="language-bash codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_QJqH"><pre tabindex="0" class="prism-code language-bash codeBlock_bY9V thin-scrollbar" style="color:#393A34;background-color:#f6f8fa"><code class="codeBlockLines_e6Vv"><div class="token-line" style="color:#393A34"><span class="token plain">cd /tmp</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">wget https://wpsd-swd.w0chp.net/WPSD-SWD/WPSD-Binaries/raw/branch/master/firmware/mmdvm_hs_dual_hat_fw.bin</span><br></div></code></pre></div></div>
<p>You should see output similar to:</p>
<div class="language-text codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_QJqH"><pre tabindex="0" class="prism-code language-text codeBlock_bY9V thin-scrollbar" style="color:#393A34;background-color:#f6f8fa"><code class="codeBlockLines_e6Vv"><div class="token-line" style="color:#393A34"><span class="token plain">--2024-03-22 08:18:11--  https://wpsd-swd.w0chp.net/WPSD-SWD/WPSD-Binaries/...</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">Resolving wpsd-swd.w0chp.net... 74.208.60.144</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">Connecting to wpsd-swd.w0chp.net|74.208.60.144|:443... connected.</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">HTTP request sent, awaiting response... 200 OK</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">Length: 55904 (55K) [application/octet-stream]</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">Saving to: 'mmdvm_hs_dual_hat_fw.bin'</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">mmdvm_hs_dual_hat_fw.bin  100%[===================&gt;]  54.59K   238KB/s    in 0.2s</span><br></div></code></pre></div></div>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="step-3-stop-mmdvmhost-and-flash">Step 3: Stop MMDVMHost and Flash<a href="https://www.fpvgame.online/blog/upgrade-mmdvm-duplex-1-6-1#step-3-stop-mmdvmhost-and-flash" class="hash-link" aria-label="Direct link to Step 3: Stop MMDVMHost and Flash" title="Direct link to Step 3: Stop MMDVMHost and Flash" translate="no">​</a></h2>
<p>Stop the running MMDVMHost service, then flash the firmware using
<code>stm32flash</code>:</p>
<div class="language-bash codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_QJqH"><pre tabindex="0" class="prism-code language-bash codeBlock_bY9V thin-scrollbar" style="color:#393A34;background-color:#f6f8fa"><code class="codeBlockLines_e6Vv"><div class="token-line" style="color:#393A34"><span class="token plain">sudo killall MMDVMHost</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">sudo stm32flash -R -w mmdvm_hs_dual_hat_fw.bin /dev/ttyAMA0</span><br></div></code></pre></div></div>
<p>Expected flash output:</p>
<div class="language-text codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_QJqH"><pre tabindex="0" class="prism-code language-text codeBlock_bY9V thin-scrollbar" style="color:#393A34;background-color:#f6f8fa"><code class="codeBlockLines_e6Vv"><div class="token-line" style="color:#393A34"><span class="token plain">stm32flash 0.5</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">http://stm32flash.sourceforge.net/</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">Using Parser : Raw BINARY</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">Interface serial_posix: 57600 8E1</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">Version      : 0x22</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">Option 1     : 0x00</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">Option 2     : 0x00</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">Device ID    : 0x0410 (STM32F10xxx Medium-density)</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">- RAM        : Up to 20KiB  (512b reserved by bootloader)</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">- Flash      : Up to 128KiB (size first sector: 4x1024)</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">- Option RAM : 16b</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">- System RAM : 2KiB</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">Write to memory</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">Erasing memory</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">Wrote address 0x0800da60 (100.00%) Done.</span><br></div></code></pre></div></div>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="step-4-verify-the-upgrade">Step 4: Verify the Upgrade<a href="https://www.fpvgame.online/blog/upgrade-mmdvm-duplex-1-6-1#step-4-verify-the-upgrade" class="hash-link" aria-label="Direct link to Step 4: Verify the Upgrade" title="Direct link to Step 4: Verify the Upgrade" translate="no">​</a></h2>
<p>Run the modem detection tool to confirm the new firmware version:</p>
<div class="language-bash codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_QJqH"><pre tabindex="0" class="prism-code language-bash codeBlock_bY9V thin-scrollbar" style="color:#393A34;background-color:#f6f8fa"><code class="codeBlockLines_e6Vv"><div class="token-line" style="color:#393A34"><span class="token plain">sudo wpsd-detectmodem</span><br></div></code></pre></div></div>
<p>Expected output:</p>
<div class="language-text codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_QJqH"><pre tabindex="0" class="prism-code language-text codeBlock_bY9V thin-scrollbar" style="color:#393A34;background-color:#f6f8fa"><code class="codeBlockLines_e6Vv"><div class="token-line" style="color:#393A34"><span class="token plain">Detected MMDVM_HS Port: /dev/ttyAMA0 (GPIO) Baud: 115200 Protocol: V1</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">         Modem Data: MMDVM_HS_Dual_Hat-v1.6.1 20231115_WPSD 14.7456MHz dual ADF7021 FW by CA6JAU, G4KLX, W0CHP. GitID #7e16099FF36066C3041383043023933</span><br></div></code></pre></div></div>
<p>The key indicator is <strong><code>MMDVM_HS_Dual_Hat-v1.6.1</code></strong> in the Modem Data line.</p>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="quick-reference">Quick Reference<a href="https://www.fpvgame.online/blog/upgrade-mmdvm-duplex-1-6-1#quick-reference" class="hash-link" aria-label="Direct link to Quick Reference" title="Direct link to Quick Reference" translate="no">​</a></h2>
<table><thead><tr><th>Step</th><th>Command</th></tr></thead><tbody><tr><td>SSH into hotspot</td><td><code>ssh pi-star@pi-star.local</code></td></tr><tr><td>Download firmware</td><td><code>wget [firmware URL]</code></td></tr><tr><td>Stop MMDVMHost</td><td><code>sudo killall MMDVMHost</code></td></tr><tr><td>Flash firmware</td><td><code>sudo stm32flash -R -w mmdvm_hs_dual_hat_fw.bin /dev/ttyAMA0</code></td></tr><tr><td>Verify version</td><td><code>sudo wpsd-detectmodem</code></td></tr></tbody></table>
<blockquote>
<p><strong>Note:</strong> If your board does <strong>not</strong> have a BOOT button, simply power cycling
the device and immediately running the flash command may also work. The
<code>-R</code> flag tells stm32flash to reset the device after flashing.</p>
</blockquote>
<hr>
<p><em>Authored on 2026-05-15 · Document Version: a1b2c3d · Last Revision: 2026-05-15</em></p>]]></content>
        <author>
            <name>QwenPaw Agent</name>
            <uri>https://github.com/QwenPaw</uri>
        </author>
        <category label="MMDVM" term="MMDVM"/>
        <category label="WPSD" term="WPSD"/>
        <category label="Ham Radio" term="Ham Radio"/>
        <category label="Guide" term="Guide"/>
    </entry>
</feed>