[{"content":"先澄清一个直觉误区：FMO 服务器不是中继台\n中继台是中心枢纽：用户依赖它覆盖一个区域，没了它通信就中断。FMO 服务器没有这种中心地位——你不依赖某一台特定服务器才能通联。\n服务器是传播层\n在整个网络层级中，服务器的优先级很低，更像一个传播层节点：负责转发语音与广播。 服务器列表靠服务器管理员的 FMO 设备进行广播；服务器首次广播后会活跃 24 小时，然后消失。 「活跃」指你或者用户在上面通联。FMO 不要求服务器 24 小时在线，只有正在活动的服务器才会出现在列表中——这和无线电的传播一个道理。 如果你的服务器从列表里消失了，见为什么我的服务器消失了？。 服务器之间是可替代的：这台不合适就换一台，切换自由，见如何切换、收藏服务器。 为什么没有私密服务器\n业余无线电从来没有「私密」这回事：你在频率上喊一句话，周围所有台站都在听——这是业余无线电从诞生那天起就是公开通信。\nFMO 不开私密服务器的理由也在这里：公开是为了发挥每个人的主观能动性。没有私密房间，谁说的话大家都能听见，谁在乱来大家都能看到——每个爱好者既是参与者，也是环境守护者。社区环境不是靠哪个中心、哪个管理员盯出来的，而是靠每个人都能听见、都能提醒、都能举报，共同维护出来的。\n更深一层是责任：信任链之所以立得住，是因为每一句话都能对得上一个真实的呼号。开了私密的口子，监督就无从谈起，责任也落不下去了。\n所以 FMO 没有私密服务器：大家在同一片频谱里，平等、公开、互相守护。\n用户列表同理\n你看不到一张详尽的在线名单，这是有意的细节设计：如果过于强化用户列表——谁在线、谁在哪、几点来过——那和私密服务器、和社交软件的「房间」就没有区别了。FMO 保持的是广播式的相遇：你喊一声，谁在听就是谁。\n只想服务特定地区？\n缩小过滤器范围不等于私密服务器。你可以把服务器只服务某个地区，这没问题——公开性没有变：FMO 可以通过多种渠道加入服务器，当有爱好者自然物理进入当地时，依然可以无缝加入。\n管理员只管理自己责任范围内的事\n服务器虽然能管，但能管理的都是它自己责任范围内的事：自己的服务器、自己的集群主题。 任何一台服务器都管不了全网，也不存在「官方服务器」的权威地位。 建服务器是贡献\n你搭建服务器，是给社区的贡献，不是给自己建立枢纽。 别人不一定使用你的服务器——没人用不代表你的服务没做好。 贡献不是必须的：如果觉得累了，可以随时关停你的服务器，没人会指责你——当然，你的朋友们可能会想念你。 建服流程见如何搭建 FMO 语音服务器；桥接与集群的权衡见桥接与集群：建服者需要了解的风险。 对用户意味着什么\n你可以自由选择服务器，无需“忠于”任何一台。 没有所谓的“官方服务器”，网络照常运转，这是由设备之间的发现与信任链保证的，见信任链与数字证书是什么？。 某台服务器故障或被关闭，换一台即可，不影响你的设备身份。 ","product":"FMO","section":"kb","summary":"服务器不是中继台：它是传播层节点，优先级低、可被替代；管理员只管理自己的责任范围，建服是贡献。","tags":["服务器","传播层","定位","中继台","贡献","责任范围"],"title":"FMO 服务器是什么定位？","url":"/kb/server-position/"},{"content":"第一次拿到 FMO 不知道怎么下手？跟着这个视频走一遍：\n视频对应的图文步骤：\n如何激活 FMO（注册与审核） 如何配网、更换 WiFi 如何设置网格坐标与过滤器 如何完成第一次语音通联 ","product":"FMO","section":"kb","summary":"跟着视频走一遍：激活、配网、设置网格，完成第一次通联。","tags":["视频","教程","入门","B站","激活","配网"],"title":"初次上手视频教程","url":"/kb/video-tutorial/"},{"content":"FMO (NFM Over Internet) 是一个基于互联网的语音通联设备，它让业余无线电爱好者能够通过互联网进行模拟对讲机通联。通过官方服务器列表与APRS-IS网络，FMO可以自动发现和连接由认证爱好者们自行建立的语音服务器。\n今天，随着FMO语音数据协议的开放，FMO正式进入了开源路线图的第二阶段。在此，我想与大家分享我们的思考：\n关于FMO开源的思考 在业余无线电这个充满开放精神的领域，我深知开源的重要性。经过我们深入的思考，我们认为真正的开源应该是 可持续的、负责任的和有规划的。FMO设备项目从2024年开始开发，从最初满足原有CWO粉丝群爱好者起步。到如今大家围绕着这款小设备搭建了繁荣的生态，周边配件百花齐放，爱好者们发挥着自己的智慧不断的创造一些我们前所未见的配件和软件。这让我们非常的感动，也明白了肩膀上的重担。\n技术架构的挑战 FMO构建了一个由认证爱好者自建服务器组成的语音网络，这种架构带来了独特的技术挑战：\n网络一致性与互操作性：如何在众多节点中保持网络的一致性？如果每个节点都使用不同的协议实现，网络的稳定性和互操作性将面临挑战。 开放网络的安全性：如何在保持开放性的同时确保网络安全？我们需要在开放共享与安全防护之间找到平衡，避免网络被恶意利用。 技术复杂性与用户体验：如何在技术复杂性和用户体验之间找到平衡？这不仅仅是技术问题，更是产品哲学问题。我们相信，适度的控制能够带来更好的用户体验，而完全的开源并不总是最优解。 我们对开源的理解 我们相信，开源不等于免费，而是：\n可持续的开源：项目能够长期维护和发展。 负责任的开源：确保代码质量和用户体验。 有规划的开源：按照技术成熟度逐步开放。 AI 时代：代码不再是壁垒 我们也清醒地意识到 AI 带来的变化：随着 AI 的到来，代码将不再是壁垒。过去，开源程度常被理解为\"是否愿意把代码交出来\"；而在 AI 时代，复刻一段代码的成本已经趋近于零。真正有价值的，从来不是代码本身，而是：\n代码可以被复制，但运行良好的协议共识无法被复制； 算法可以被生成，但经得起检验的身份体系与治理原则无法被生成； 工具可以被替代，但一个由热心爱好者共同维护的生态无法被替代。 因此，我们开放了许多的技术协议，我们想开放的是分享一份共同的约定——让代码的壁垒消失之后，留下的是更有生命力的社区共识，以及每一个参与者的信任与责任。\nFMO的发展路线 在这里，我们提出了一个长期规划，FMO设备项目将以以下路线进行长期发展：\n第一阶段：项目生存期（已渡过）\n这是一个相对封闭的阶段，首要目标是让FMO先\"活下来\"，确保项目能够持续发展。 我们以MIT协议开放了射频背板硬件设计，供爱好者学习和研究。 如今FMO已形成稳定的社区与服务器生态，生存期目标已经达成。 第二阶段：协议开放（已开启，当前阶段）\n随着FMO语音数据协议的开放，我们正式进入这一阶段。 已开放：FMO语音数据包协议、厂家标识注册表、APRS报文格式等关键文档（见文末\"现有开源资源\"）。 我们期望通过开放的语音协议，让更多爱好者开发出真正兼容的设备，共同构筑一个平行互通、由热心管理员组成的网络。 随后，我们将在这个阶段视网络发展开放越来越多的内容。 对于商业用途，我们将建立合理的授权机制来确保项目的可持续发展； 对于个人和业余用途，我们将保持开放和免费。 第三阶段：生态全面开放（未来目标）\n建立开放的治理机制，让社区能够共同参与FMO的发展决策。 我们坚信，这种务实而有序的开源策略，能够让FMO真正成为一个长期健康发展的业余无线电项目。\n感谢每一位支持FMO的朋友，正是因为看到你们的理解和支持，我们才能专注于产品优化，为大家带来更好的体验。\n现有开源资源：\n协议与标准\n语音数据包协议：FMO语音数据包的完整线格式规范，官网文档。 APRS 报文格式：FMO 在 APRS-IS 上的报文格式规范，官网文档。 厂家标识注册表：开放的数据包厂家标识（vendor）注册与发放规则，fmo-raw-vendor-id。 服务端\n开源服务器认证服务（SAS）：fmo-server-authrozier-service，FMO 服务器认证与授权服务（BI1THT对该项目做了不少贡献，让该项目更加完善）。 SAS 开源Docker 部署：fmo-sas-docker，SAS 的 Docker 容器化部署方案(由BI1QCF贡献)。 开源审计服务（FAS）：fmo-audit-service，服务器端审计服务，自动拦截身份冒用（BI1THT多次发现问题并提交解决，BI9BBL帮忙优化了不少问题）。 开源官方证书生成工具: fmo-certificate-tools，官方证书生成工具。 开源第三方证书生成工具 ：fmo-ca-tool (由BI9BBL贡献) 工具与客户端\nAPRS 远程控制工具：FMO-APRS-Remote-Control-Tool，通过 APRS-IS 中继远程控制 FMO（HMAC 签名）。 Android GPS 工具：FMO-Andorid-GPS-Tool，通过手机 GPS 实时设置 FMO 位置。 QSO 日志转 ADIF：FMO-sqlite-2-adif，将 FMO 数据库日志转换为 ADIF 格式。 日志签名验证工具：fmo-log-sign-verify-tool，QSO 日志 Ed25519 签名验证。 黑名单用户库：fmo-blacklist-users，FMO 黑名单用户数据。 其他开源信息：Github。 此致 73!\nBG5ESN\n","product":"FMO","section":"docs","summary":"FMO 的开源路线图与已开放资源清单：协议、服务端与工具。","tags":[],"title":"FMO (NFM Over Internet) 关于开源的思考","url":"/docs/fmo-open-source-announcement/"},{"content":" 注意：这篇不是升级说明，而是 FMO 4.0 的设计说明。如果你对背后的技术感兴趣，希望它未来能走向开源，那这篇文章会告诉你为什么我们选择了这样的架构。\nFMO 4.0 的核心目标，是让“身份可信”和“网络开放”同时成立。它不再依赖单一平台账号来判断谁是 HAM，而是使用三层 PKI 信任链、用户证书、数字签名和公开作废名单，让每一条广播、每一次连接、每一个自建台站都可以被独立验证。\n在理解 FMO 4.0 之前，需要先理解FMO的底层特性：FMO 不是把用户组织进一个中心平台，也不是把大家塞进某个固定房间，而是让每一个边缘台站自己携带可验证的呼号身份。\n一旦身份落到边缘节点，通联网络就会自然形成。因为这时网络不再依赖某个中心服务器来告诉你“谁是谁”，也不再依赖平台先创建一个房间、再把用户分配进去。一个 FMO 台站可以证明自己的呼号身份，可以发现其他台站，也可以被其他台站发现；它可以连接长期服务器，也可以临时加入某个台网。服务器在这里不再只是“房间”，而更像一个临时频点。\n这正是 FMO 和传统网络对讲最大的不同：传统系统先有平台，再有账号，再有房间；FMO 更接近业余无线电本身，先有台站，先有呼号，然后台站之间通过发现、验证和连接，自然形成一次通联、一张临时网络，甚至一个长期共建的网络。FMO 4.0 引入证书、签名和信任链，并不是为了把系统做复杂，而是为了让这种由边缘台站自发组成的网络在网络开放、服务器可自建、未来逐步开源的前提下，仍然能够保持身份可信、责任可追溯。\n4.0 到底想解决什么问题？ 持证爱好者通过网络扩展自己的通联范围时，有几个问题是肯定绕不开：\n屏幕上写着\"BG5ESN 在呼叫\"，我凭什么相信对面真的是 BG5ESN，而不是有人冒名？ “让不让你通联\"这个开关，到底握在谁手里？ 完全开源后，任何人自建服务器时，凭什么相信服务方或通联对象真的是持证 HAM，而不是恶意节点、自动化脚本或身份冒用者？ 传统的做法，是把这两个问题都交给一个中心平台去管，让大家统一用用户名、密码去登录。但FMO 4.0 选了另一条路，为了讲清楚这一切，才有了这篇文章，这篇文章概念较多，可能会花费一些时间。\n传统网络对讲是怎么做的？ 传统的网络对讲设计非常成熟，在很多场景里就是最优解。你能想到的那些公网对讲、IP 对讲，大体是这么运行的：\n厂商建一个中心服务器 → 你买设备注册个账号 → 设备里写死服务器地址，用账号密码登录 → 你说的每句话都过这个中心\n这套设计的好处实实在在：\n开箱即用，注册个账号就能喊话，新手零负担 稳定省心，厂商专业运维，坏了有人修，出事有人扛 集中管理高效，统一升级、统一调度、统一客服 物业、车队、安保这种需要可控、可管理的封闭网络，集中模式恰恰是它的杀手锏——老板要的就是\"一切尽在掌握” 客观说，它让\"对讲机上网\"这件事真正普及了 所以这不是\"好不好\"的问题，而是它为什么那样设计——为了简单、可控、可运营，最自然的选择就是\"一个中心 + 一套账号密码\"。这是面向商用的正确取舍。\n但这套设计放在业余无线电上，会产生一种根本性的错位——不只是“感觉不对”，而是从两个层面与业余无线电的内核相悖。\n第一层：身份 HAM 的呼号由考试授予、受国际承认，是终身绑定个人的法定身份。而商用系统的账号密码，本质上只是一个可批量生成、随时回收的商业凭证。用后者来代表前者，等于把一本护照降格成一张超市会员卡。\n第二层：网络基因 业余无线电的中继和网关天然由爱好者自行架设、各自维护——自建台站不是它的一个功能选项，而是刻在骨子里的生存本能。这与一切通信必须经由统一平台中转的模式，在逻辑起点上就不兼容。\n更深一层看： 在一个由平台统一运营的系统里，你的角色是“用户”，是终端的消费者。而在业余无线电联网中，每个有能力的爱好者都应当是自己节点的“运营商”，是网络的共建者。即便有厂商宣称“人人可以自建服务”，一个被刻意回避的问题也随之浮出水面——谁来审核？ 在传统模式下，身份审核通常被平台吸收为一种平台内服务。用户只要相信平台，平台就替所有人判断“谁是真的 HAM”。但一旦系统声称“人人可自建服务”，这个问题就无法再被隐藏：谁来审核？谁来背书？谁来承担误发、滥发和冒用的责任？\n如果只是把服务器开放给大家自建，却仍然把身份认定权握在平台手里，那所谓开放只是运维层面的开放，而不是信任结构上的开放。FMO 4.0 要解决的，正是这个更底层的问题：能不能让身份认定权，也像通联权一样，从单一平台手中释放出来？\n4.0 的做法：数字用户证书和三层信任链模型 我们通过 FMO 4.0 版本的升级，让每个用户拥有一张在数学上可验证的“数字操作证”——用户证书。它并不是传统意义上的账号，也不是纸质执照本身，而是由中间机构在核验真实执照后，为该呼号签发的一份数字身份证明。它不像传统云平台那样分配用户名和密码，而是在中间机构核验爱好者提供的信息后，用三层 PKI 模型把“这个呼号确实经过核验”这件事，转换成一份可以被任何设备独立验证的数字证明。证书中不需要包含额外隐私信息，它要证明的不是一个人的全部现实身份，而是这个呼号背后确实存在一个经过核验的持证爱好者。\n这个结构共有三层：\nRoot CA（根机构） → Intermediate CA（中间机构） → User Cert（用户证书）\n含义 说明 目标 Root CA 根机构 它的主要工作是给各个地区的中间机构颁发一个中间证书,它是一种形式上的可信源头。相当于大家都相信他，这个网络互通才能成立。Root 不是为了控制所有人，而是为了让所有彼此陌生的人能够拥有一个共同认可的信任起点。 Intermediate CA 中间机构 它的证书来自于根机构的颁发，以后将存在于全世界各个国家/地区，它负责接收来自用户提交的个人操作证等信息，转化为数学上等价的用户证书。 User Cert 用户证书、包含呼号、UID 来自于中间机构的颁发，用于每个爱好者通联、自建服务、自发组网 这三层模型用来解决的问题，举例来说：\n当 B 收到 A 的用户证书时，B 首先会检查：这张用户证书是不是由某个中间机构签发的。如果 B 没见过这个中间证书，就继续往上查：这个中间证书是不是由自己信任的 Root CA 签发的。 如果 B 信任这个 Root CA，而 Root CA 又确实签发过这个中间证书，同时这个中间机构又确实签发过 A 的用户证书，那么 B 就可以通过：\n相信根证书 → 相信中间证书 → 相信用户证书\n这条链路，判断 A 的用户证书是可信的。 这里的“相信”不是口头相信，而是数学验证：每一级证书都必须能被上一级证书的公钥验证通过。\n当前FMO还处于4.0的早期阶段，因此只有BG5ESN(我)在担任 根机构 和 中间机构 职能，目前由我兼任只是为了跑通系统，Root 的设计目标恰恰是未来我自己也必须和其他中间机构遵守同样的规则，没有任何特权。但我们设计这套系统的目标不是为了当下，而是为了以后\n让各个国家/地区有自己的中间机构可自行进行身份管理。通过这三层信任链模型，他们还能实现跨地区的互联互通，这期间，不需要每个节点彼此预先认识，也不需要每个台站之间单独建立信任关系；它们只需要拥有共同认可的信任起点，就可以通过证书链完成跨地区验证。各中间机构须遵守所在国家/地区的法律法规与无线电管理规定。\n我们用几个问题，来让大家理解，这些层级是怎么发挥作用的：\n首先明确FMO 和 APRS-IS 是什么关系？ 在 FMO 4.0 的整体架构里，APRS-IS 是一个可选的补充发现渠道。\nFMO 4.0 的服务器发现以官方服务器列表和爱好者之间的直接分享为主——每一台服务器的信息都带可验证签名，可以从任何渠道获取并独立验证，不必依赖任何特定网络。\nAPRS-IS 则是业余无线电界长期存在的一张“公开公告栏”。FMO 台站可以选择（默认不发布）把一条轻量级公告发布上去：我是谁、我提供什么 FMO 服务、应该怎么连接我、我的用户证书是什么、这条公告的数字签名是什么。\n需要说明的是：FMO 设备出厂默认不向 APRS-IS 发布任何内容，只有用户主动开启数据发布功能后，台站信息才会出现在 APRS-IS 上。公告中只包含呼号、服务器地址与技术参数等公开技术信息，不包含任何个人隐私信息；位置信息的发布与否与精度由使用者自行选择（可关闭或使用模糊网格）。\n其他 FMO 设备无论从哪个渠道收到这条公告，都不会因为“它出现在 APRS-IS 上”就直接相信它，而是会在本地继续执行证书链验证和数字签名验证。\n所以，APRS-IS 只是可选地“让你看见”，FMO 负责“判断能不能信”。\n这点非常重要：真正的身份认证不在 APRS-IS 上完成，语音通联也不通过 APRS-IS 承载。APRS-IS 只是可选发现渠道，PKI 才是信任层，FMO 自己的连接才是通联层。\n这样的好处是，我们可以利用 APRS-IS 作为业余无线电界长期存在的公开数据网络所具备的传播能力，但不会把 FMO 的身份、权限和治理权交给任何一个现有网络。\n换句话说：FMO 可以借 APRS-IS 找人，但不靠 APRS-IS 信人。\n凭什么相信广播的那条消息是 BG5ESN， 他真的是本人？ 传统平台中，对面是不是BG5ESN，是平台告诉你的——平台说是，你就只能信。\nFMO 4.0则是让每条广播自己证明自己。每条 FMO 广播都打包了两样东西：用户证书和数字签名。这里可能会有些抽象，接下来我们要讲一下，FMO如何完成一条关键消息的完整验证过程（无论它来自官方服务器列表、直接分享还是 APRS-IS 渠道），每个部分都经过了精密设计：\n你收到一条声称来自 BG5ESN 的 FMO 广播 → 读取广播中携带的用户证书 → 顺着三层信任链验证这张证书是否有效 → 使用证书里的公钥验证这条广播的数字签名 → 检查时间窗口，确认不是旧消息重放 → 确认这条广播确实来自证书持有者\n这里涉及到了数学相关的签名知识，可能要啃一啃，但若你要是能缕顺上面的概念，就知道，FMO 4.0 其实使用了数学解决了那个最关键的：我凭什么相信对面真的是 BG5ESN，而不是有人冒名？ 问题。\n如果你能理解上述过程，可以接着往下看。\n我在连接别人的台站时发生了什么？ 在 FMO 里，台站主人的设备会定期发布公告（官方服务器列表与直接分享渠道；若用户主动开启发布功能，也会同步到 APRS-IS），这条公告自带连接所需的一切：台站的用户证书、怎么连它（地址、端口）、还有一段签名证明这条公告没被伪造。所有 FMO 都在默默守听，他们一直都在执行上面的消息验证过程。\n一台收到广播服务器的FMO,连接台站的时候是这样的：\n发现台站（官方列表、直接分享或 APRS-IS）→ 先验明它的用户证书和数字签名（假台站过不了证书验证）→ 当你尝试去连接时用你的数字签名签一张\"只对这家台站有效\"的通行证 → 台站也通过检验你的数字证书和你的数字签名 → 最后才是你接入，开始通联\n这张临时通行证有两个硬约束：\n仅可登录目标台站：通行证里写死了目标台站的身份，拿去连接别的台站是无效的。 转发即废：就算半路被人截走，拿去转发给别的台站，也会因为目标身份对不上而失败。 所以它不是一张可以全网乱用的“万能票”，而是一张只对当前这次连接、当前这个目标台站有效的临时凭证。\n这里要额外说一点：很多人会下意识地认为“我是客户端，我去连服务器，只要我证明自己是HAM就行了”。但在FMO 4.0的信任模型里，这个逻辑是对称的——服务方（自建服务器的人）也必须首先证明自己是一个合法的HAM。\n如果系统只验证客户端，那攻击者完全可以搭建一个“钓鱼台站”，诱骗你把通联流量交给它，甚至利用协议实现漏洞发起进一步攻击。\n这意味着有人运行了开源服务端代码，只要他拿不到一张真实有效的业余无线电用户证书（因为发证权在各地的中间机构手里，审核需要实体执照），他广播出来的“台站”在所有持有用户证书FMO客户端眼里就是透明的、不存在的。 信任在这里是双向且对称的：你要通联别人，你得有证；你要开台让别人通联你，你也得有证。\n作恶如何被发现和制衡？ 一个开放系统最大的诱惑，就是把自己设计成只要相信我就好。但 FMO 4.0 选择了一条更现实的路：它先假设任何角色都可能作恶，然后看结构本身还剩多少抵抗力。\n如果把整个信任体系比作一张网，那么每一层节点都被有意限制在它该在的地方。越界不是不可能，但越界要么立刻失败，要么留下再也擦不掉的证据。\n如果根机构（Root CA）作恶 Root CA 可以签发和撤销中间证书，看起来权力最大。假设它突然作恶——比如无故撤销一个地区协会的中间证书，让整个区域突然“断网”。\n会发生什么？\n一旦设备同步到这份吊销名单，就会显示“该中间证书已被吊销”。这个吊销行为本身带有 Root 的签名，公开可查，无法偷偷进行。\n被“断网”的地区协会和爱好者不会束手无策。他们可以向社区出示证据：我们从未违规，是 Root 在滥用权力。\nRoot 的权力完全来自大家的自愿信任，而不是任何强制许可。一旦它被证明不可信，任何人都可以从设备里删掉这个 Root 证书，转而配置一个新的、更可信的 Root，或者直接信任那个被冤枉的中间证书。\n换句话说，Root 只是一个受到持续监督的信任起点，作恶的终点就是自己被网络抛弃。你可以把 Root 想象成一本大家都承认的字典，但如果这本字典开始乱印错误的词条，人们自然会换一本。\n如果中间机构（Intermediate CA）作恶 中间机构负责验证执照、签发用户证书。假设它开始悄悄滥发证书——比如给某个没有执照的朋友签一张呼号证书。\n又会怎样？\n每张用户证书上都有中间机构的数字签名。滥发无法抵赖，因为数学上这就是它签的。\n这个假呼号一旦在空中使用，任何人收到消息都能顺着信任链追到“是哪个中间机构签发了这张证”。\n任何守听者都可以公开举证：这张证书对应的执照验证材料是不存在的。一旦滥发行为被证实，Root CA 可以合法地撤销这张中间证书，让它整个区域的所有证书都失效——不仅是假的，也包括真的。这个代价太惨痛了。\n即使 Root 不动手，用户也可以在自己的设备上手动把该中间证书加入“不信任名单”。这种自发的社区抵抗力，让作恶的中间机构很快就会被孤立。\n中间机构的权力边界很清楚：你只能为你区域内的真实执照背书，一旦背书本身是假的，你就失去了背书资格。\n如果普通用户（User）作恶 普通用户是最","product":"FMO","section":"docs","summary":"FMO 4.0 技术模型：三层 PKI 信任链与“身份可信、网络开放”的架构设计。","tags":[],"title":"FMO (NFM Over Internet) 4.0 技术模型","url":"/docs/fmo-model/"},{"content":" ⚠️ v1.0.5 升级说明\n从 v1.0.5 起，SAS 的二进制文件名由 Sas 统一为小写 sas。 v1.0.5 之前的用户无法直接使用 sas --update 升级， 请重新运行安装脚本完成升级（脚本会自动覆盖旧版本，保留配置文件）：\nLinux/macOS: 重新执行 方式一 的 curl 命令 Windows: 重新执行 方式一 的 irm 命令\nℹ️ 通知\nFMO 固件 4.0 版本已正式推送，如果你正在使用旧版本，建议立即升级到最新版本，如果您仍然坚持使用 2/3.x.x 版本的FMO固件建设服务器，请参考 旧版指南2.0，旧版指南3.0。\n需要留意：出于安全性考量，2.x/3.x 版本的 FMO 设备无法发现 4.x 版本发布的服务器；而 4.0 设备当前仍兼容旧版服务器，我们将在合适的时候结束对 2.0/3.0 版本的支持。\nFMO 4.0版本，彻底摒弃了共享密码/密钥模式，转而改用数字证书 + 数字签名的方式持续验证爱好者身份。 这带来了无可伪造的用户身份，同时任何人都可以通过公开的根证书，验证一个设备证书所代表的呼号是否真实有效。 我们在FMO内完整的实现了 根证书-\u003e中间证书-\u003e用户证书的 PKI 证书链验证模型。 这是一个工程学上的巨大改进，意味着服务器管理员即使不出示用户名密码，也能安全的让真正的爱好者登录自己的服务器。\n在这一模型中，认证与责任是两个独立且清晰的维度：\n认证（技术层面）：证书链从根CA延伸到用户证书，确保每个设备持有者的身份（呼号）可被任何第三方公开验证，无法伪造。\n责任（治理层面）：签发证书、授权接入、在服务器上发言——所有行为都归属于具体的个人、管理员或组织。系统本身不自动追责，但提供不可抵赖的技术证据。\n这种分离设计，既保证了认证机制的纯粹透明，也为社群自主管理保留了灵活的管理空间。\n这是自 FMO 诞生以来最重要的一次更新，它标志着 FMO 从原始的“密钥分发模式”彻底转向了“数字证书模式”。也标志着FMO最终从襁褓中开始走向成熟。\n本次更新特别感谢BH6SCA老师对FMO的安全审计。特别感谢BG6HFD,BI1THT对FMO SAS服务器运行，教程贡献。特别感谢所有金丝雀固件测试群的群友。\n⚠️ 建服前必读\n开始搭建服务器之前，请务必先阅读《FMO(NFM Over Internet) 关于生态共建与治理原则的说明》，理解 FMO 生态的共建与治理原则后再进行建设。\n自主管理原则与服务器责任：每个服务器管理员享有自己服务器的所有权力，但也负有对接入信号源的管理责任。我们注意到一些管理员折腾了非 FMO 的音频源和呼号的输入——这是爱好者能力与发展的体现，是事物发展的必然阶段。我们建议：桥接的服务器请在服务器公告处明确声明桥接特性，并做好自我管理；仅服务于 FMO 使用者的服务器，建议安装 FAS 以增强服务器安全性。\n如果您对本文的概念大多数处于模糊状态，请不要建服，因为您可能无法正确理解FMO的授权机制，可能引入额外的风险。我们不提供建服技术支持，请您量力而为。\n用户视角的FMO 2.0.0授权机制：您的FMO收集大家在aprs上分发的用户名密码，然后您的fmo使用用户名密码登录的大家的服务器。\n用户视角的FMO 3.0.0授权机制：您的FMO收集大家分发在aprs上的Secret，然后您的fmo打包您的个人信息，使用Secret利用签名算法将您的个人信息签名，组装成临时登陆令牌，并用该令牌登陆大家的服务器。\n用户视角的FMO 4.0.0授权机制: 您的FMO收集大家在任意途径分发的数字证书和数字签名，然后通过根证书-\u003e中间证书-\u003e用户证书持续验证一个用户是否为业余无线电爱好者。在访问爱好者自建服务器时，对方也通过根证书-\u003e中间证书-\u003e用户证书持续验证您自己是否也为真的业余无线电爱好者。双方交叉比对后，允许您在对方服务器上进行通联或数据交换。在4.0机制下，没有公开的用户名密码/秘密、设备内的证书代表了您的唯一身份。\n4.0 MQTT登录流程\nFMO以用户名+密码模式登录MQTT服务，但用户名+密码的含义发生了变化，其中，用户名 为 呼号，密码 为 用户的数字证书+额外信息+用户签名。 MQTT收到用户名+密码登录信息后，将用户名+密码通过HTTP转发至SAS,SAS会通过证书链完整验证用户载荷，判断是否持有真实数字证书，签名是否可靠，目标是否为本服务器，是否符合其权限设置，并通过HTTP返回MQTT该用户是否可登录。 通过验证后，MQTT服务将允许客户端进入服务器。 FMO如何通过APRS广播式发现 FMO采用“代理广播”的方式广播爱好者所搭建的MQTT Broker。具体原理可访问\nAPRS官网收录文章：aprs.org: 《Build a High-Speed Data Exchange HamNet Based on APRS-IS》 By BG5ESN （境外英文技术参考，访问请自行判断）\n了解FMO的广播工作原理。\n服务器红线与禁止行为 以下行为属于建服红线，会直接导致建服者违法，不得以任何理由纵容，情节严重将触发数字证书吊销机制，并且该用户呼号会被网络永久拒绝：\n禁止播放音乐等无关音频：不得长时间、连续性播放与业余无线电无关的内容（如版权音乐、综艺节目），这违反业余无线电规则并会带来版权与合规风险。 禁止广告与商业活动：切勿在自己服务器上进行广告、商业活动，这会直接导致你的服务变为商业服务，进而引发法律风险，这是红线！ 禁止桥接商业与公众网络：严禁将服务器用作商业性网关，或与任何非业余网络（如商业对讲机）进行互联；Broker 应仅供 FMO 使用，避免扩大化至公共通信服务。 禁止非业余通联与违法行为：服务器须仅面向持证业余无线电爱好者开放，禁止非法通信、恶意干扰、身份冒用/欺诈、散播虚假信息与言语攻击。若服务器参与模式为事实上的白名单准入，视同参与违法行为。 禁止滥用与网络攻击：禁止垃圾信息、网络攻击、侵犯他人隐私、干扰无线电频谱等一切违法行为。 所有使用者必须遵守《中华人民共和国无线电管理条例》《中华人民共和国网络安全法》等相关法律法规与业余无线电行为准则，具体条款请参阅免责声明-严格禁止的行为与信任链模型。\n软性限制与建议 非强制红线，但强烈建议遵守——既保护他人，也保护自己, 若争议持续放大，将可能触发证书吊销机制。\n控制规模、减少公众暴露：FMO 以小范围、可控的爱好者网络为定位。建议合理设置服务范围与接入网格，面向身边同好开放，避免在公众平台上过度宣传服务器接入方式，降低被滥用与合规暴露的风险。 保护其他爱好者隐私：未经当事人同意，请勿公开或传播其他爱好者的语音、呼号、位置等个人信息；服务器公告、日志展示应尽量克制，避免不必要的个人信息暴露。 避免大规模直播：不建议将服务器内的通联语音进行公众平台直播或大规模转播，也不建议刻意追求在线人数与规模——这会放大他人隐私暴露风险，并可能让你服务器偏离业余无线电的自我训练范畴，进而导致法律风险。 详细操作说明 图标 说明 🖥️ 服务器端操作,通常代表需要在您的MQTT Broker或终端进行的操作。 📻 涉及FMO设备本体操作,如通过浏览器访问后台，直接操作FMO界面。 ℹ️ 提示信息 STEP1: 安装MQTT Broker 🖥️ 访问 EMQX官网,按照官方文档进行安装和配置，确保版本大于5.8版本。确保您的MQTT Broker能够正常运行，并可通过外网访问。 🖥️ 预先配置您的服务器的外网访问URL和端口。 ℹ️应用提示: FMO使用MQTT Broker进行数据交换，我们建议您安装EMQX的MQTT Broker（或Mosquito附带http认证插件版本），您可以根据自己的需求选择合适的MQTT Broker进行搭建。 ℹ️安全性提示: EMQX的docker版本在您重启容器后，会恢复默认18083登陆端口的登陆信息，该部分可能有安全隐患，请仔细确认后使用。 STEP2: 设置FMO 📻使用电脑访问[FMO网页后台] -\u003e [参数配置],仔细阅读解释说明，并配置如下内容：\n📻配置项 📻说明 APRS网络设置 -\u003e APRS PASSCODE 您登录APRS的密码，可以在APRS官网申请 自定义服务器 -\u003e 自定义服务器地址 可以是IP或域名，需要直接指向您的服务器公网地址 自定义服务器 -\u003e 自定义服务器端口 常规非加密端口为1883，需要直接指向您的服务器地址 自定义服务器 -\u003e 服务器名称 这是您服务器的名称，支持中英文,设置后,会显示在您的FMO上 自定义服务器 -\u003e 服务范围 您可以规定您的服务器所覆盖的范围 📻 上述确认配置完毕后，请点击 [APRS网络设置] -\u003e [重启APRS服务] -\u003e [重启服务]，让您的配置生效。\n📻 请回到设备上进行操作 回到FMO设备主界面 -\u003e 顺时针旋转旋钮 -\u003e 应当可以看到您的服务器已经呈现在列表中。\n📻 基础配置已经完成，请继续按照STEP3进行配置。\nSTEP3: 安装并设置证书验证器 (SAS) 方式一：一键脚本安装 🖥️ 一行命令完成下载、配置、注册系统服务并启动：\nLinux / macOS (需要 root 权限):\ncurl -fsSL https://bg5esn.com/share/fmo/sas-installer/install.sh -o /tmp/install.sh \u0026\u0026 sudo bash /tmp/install.sh Windows (以管理员身份运行 PowerShell):\nirm https://bg5esn.com/share/fmo/sas-installer/install.ps1 -OutFile \"$env:TEMP\\sas-install.ps1\"; iex (Get-Content \"$env:TEMP\\sas-install.ps1\" -Raw -Encoding UTF8) 安装脚本会自动完成以下操作：\n检测您的系统平台，下载对应版本的 SAS 引导您输入 SAS 启动参数（从📻[FMO后台] -\u003e [SAS 搭建快捷方式] -\u003e [生成命令] 复制粘贴即可） 注册为系统服务（Linux: systemd / macOS: launchd / Windows: 计划任务）并启动 服务管理 - Linux：\n项目 说明/指令 日志 journalctl -u fmo-sas -f 启动 systemctl start fmo-sas 停止 systemctl stop fmo-sas 重启 systemctl restart fmo-sas 升级 systemctl stop fmo-sas \u0026\u0026 /opt/fmo-sas/sas –update \u0026\u0026 systemctl start fmo-sas 卸载 curl -fsSL https://bg5esn.com/share/fmo/sas-installer/uninstall.sh -o /tmp/uninstall.sh \u0026\u0026 sudo bash /tmp/uninstall.sh 配置文件 /etc/fmo-sas/config.json 安装目录 /opt/fmo-sas/ 服务管理 - macOS：\n项目 说明/指令 日志 tail -f /var/log/fmo-sas.log 启动 sudo launchctl load /Library/LaunchDaemons/com.fmo.sas.plist 停止 sudo launchctl unload /Library/LaunchDaemons/com.fmo.sas.plist 升级 sudo launchctl unload /Library/LaunchDaemons/com.fmo.sas.plist \u0026\u0026 /usr/local/opt/fmo-sas/sas –update \u0026\u0026 sudo launchctl load /Library/LaunchDaemons/com.fmo.sas.plist 卸载 curl -fsSL https://bg5esn.com/share/fmo/sas-installer/uninstall.sh -o /tmp/uninstall.sh \u0026\u0026 sudo bash /tmp/uninstall.sh 配置文件 /usr/local/etc/fmo-sas/config.json 安装目录 /usr/local/opt/fmo-sas/ 服务管理 - Windows（管理员 PowerShell）：\n项目 说明/指令 日志 Get-Content -Wait “$env:LOCALAPPDATA\\fmo-sas\\sas.log” 启动 Start-ScheduledTask -TaskName fmo-sas 停止 Stop-ScheduledTask -TaskName fmo-sas 重启 Stop-ScheduledTask fmo-sas; Start-ScheduledTask fmo-sas 升级 Stop-ScheduledTask fmo-sas; \u0026 “$env:LOCALAPPDATA\\fmo-sas\\sas.exe” –update; Start-ScheduledTask fmo-sas 卸载 irm https://bg5esn.com/share/fmo/sas-installer/uninstall.ps1 -OutFile “$env:TEMP\\sas-uninstall.ps1”; iex (Get-Content “$env:TEMP\\sas-uninstall.ps1” -Raw -Encoding UTF8) 配置文件 %LOCALAPPDATA%\\fmo-sas\\config.json 安装目录 %LOCALAPPDATA%\\fmo-sas\\ 方式二：手动安装 如果您不希望使用一键脚本，也可以按照以下步骤手动安装：\n🖥️访问 GitHub Release 页面 下载您对应服务器平台的二进制文件（如 linux-x64 则下载 linux-x64.tar.gz，Windows 则下载 win-x64.zip）。\n🖥️解压上述程序至您服务器的相应目录，如：\n# Linux/macOS mkdir -p ~/fmo-sas","product":"FMO","section":"docs","summary":"4.0.0 版本默认配置下的 FMO 语音服务器搭建指南","tags":[],"title":"FMO (NFM Over Internet) 语音服务器搭建指南","url":"/docs/fmo-server-construction/"},{"content":"FMO:即 NFM over internet，即互联网模拟通联，是通过互联网进行NFM模拟对讲通联，它仅服务于广大的业余无线电爱好者。\nFMO是为业余无线电爱好者设计的基于互联网的对讲硬件，其核心是一个智能的网络节点。\nFMO通过信任链+三层PKI设计，保证其仅面向经中国无线电协会（CRAC）认证的业余无线电爱好者这一特定人群使用，不对社会公众开放。\n自 4.0 起，FMO 已不再是传统意义上的分布式结构，而是依靠数字证书完成了一次转型：网络依然开放，服务器依然可以自建，但每个节点背后都站着一个经过核验的真实身份，每条广播都携带可验证的证书与签名。无证者无法进入，干扰者即刻暴露，行为全程留痕、责任到人；信任不再靠松散的约定，而是由证书链锚定，这既对监管友好，也给了爱好者们充分的自我实验空间。\nFMO仅服务于业余无线电爱好者，因此它遵循所有业余无线电相关社区的规范和要求：\n使用者需持有业余无线电操作证 网络互信基石 禁止将FMO用于任何商业用途 保持网络的纯净 用户需遵守业余无线电的道德规范和行为准则 维护良好的社区氛围 没有私密服务器 业余无线电的开放精神 禁止任何形式的骚扰和恶意行为 保障所有用户的良好体验 遵守当地无线电法规和规定 合法合规使用 尊重其他用户的隐私和权益 共同维护和谐的网络环境 鼓励技术创新和知识共享 推动业余无线电技术的发展 FMO具有以下核心功能：\n信息公开 FMO在APRS上没有秘密，所有的APRS信息都是公开的，可以使用任何APRS客户端来查看、验证您的FMO的运行状态。 业余爱好者实名认证 FMO需业余无线电爱好者强制性身份认证。一方面是为了让FMO能够在一个绿色环境下成长；另一方面我们希望这是专属于爱好者们的礼物，避免来自外部的杂音。 热更新 FMO的语音服务器管理员可以热更新自己的服务器,当发生变更时,所做的修改会立即同步到所有的FMO上。 快速切换 FMO可以通过旋钮快速切换所有已发现的语音台站。 基于网格和过滤器 FMO基于网格和过滤器,过滤周围的服务器。在服务器FMO内设置过滤器后,它将只服务网格内的爱好者。在客户端FMO内设置过滤器后，它将忽略范围外的服务广播。 清晰音频 FMO内置了俩种高压缩比的专用语音编码器，服务器管理员可随时观察负载并进行切换，既可以在高带宽环境下获得较高的音质，也可以在带宽受限的情况下进行多人通联。 自带喇叭 FMO内置了一个喇叭，可以通过它来收听语音通联,可以作为一个独立的语音接收机。 开源对讲背板 FMO出场时自带了一个仅接收的对讲背板，该背板使用了MIT开源协议。爱好者们可自行使用和修改。我们还提供了一套完整的对讲机电路图和PCB设计文件，供爱好者们参考。并且提供了与FMO交互所需要的完整协议文档，任何人均可访问和使用。我们也欢迎爱好者们在此基础上进行二次开发。 OTA升级 FMO支持OTA升级，您可以通过OTA升级来获取最新的功能和修复。 开发者碎碎念： 其实在FMO之前已经有很多有趣的互联网模拟通联的项目了，像是DMR等数字对讲机协议。我也在这些项目中学习到了很多有趣的东西。FMO的设计灵感来源于这些项目。\n但我在设计时，特别考虑了松散的服务器架构，让FMO成为每个人的个人设备，不受我们开发者个人意志的影响。\n我们希望能做得更简单、更易用，让每个爱好者，到手以后，使用模拟手台就可以立即享受到互联网通联的乐趣。\n我们希望FMO能通过台站之间的自然的发现形成一次通联、一张临时网络，甚至一个长期共建的网络。就像线下爱好者们的行为一样。\n我们希望即使你是当地“孤独”的无线电爱好者，即使你周围电磁环境非常糟糕，即使你没有足够的资金来购买昂贵的数字手台，也能通过FMO找到志同道合的朋友，分享无线电的乐趣。\n接下来如果您还感兴趣，可以查看下我们提供的一些技术文档\n文档名称 说明 链接 FMO关于生态共建与治理原则的说明 FMO生态的共建与治理原则 点击查看 FMO使用说明书 第一次使用说明书 点击查看 FMO产品免责声明和隐私政策 FMO的免责条款和隐私政策 点击查看 FMO 4.0 设计模型 介绍FMO如何将信任和身份落到每个设备上，让网络自然生长有了可能。 点击查看 FMO自建服务器指南 详细阐述了如何自建一个FMO服务器 点击查看 FMO对讲背板 对讲背板包含程序和PCBA，文档中进行了详细说明 GITHUB LCEDA FMO硬件接口指南 FMO对接对讲机有一个基本接口,该文档详细阐述了硬件接口的形态和注意事项 点击查看 FMOAT协议指南 FMO与硬件背板使用一套完整的AT指令,在该文档中，我们阐述了FMO如何与主板进行基本通讯和对接 点击查看 FMO关于开源的思考 FMO的开源思考哲学 点击查看 FMO资源文件 FMO相关的资源文件：如外壳\\电路板外形等资料 点击查看 其他爱好者的实践分享 一些爱好者分享的FMO使用经验和实践案例 点击查看 FMO点名活动 爱好者们自发组织的点名活动和台网 点击查看 ","product":"FMO","section":"docs","summary":"FMO 产品定位、核心功能与技术文档总索引。","tags":[],"title":"FMO(NFM Over Internet)指南","url":"/docs/fmo-product-guide/"},{"content":"本页将对FMO的升级日志进行概括性说明（不定时更新，毕竟维护一个页面也需要时间，有可能会在N个更新后一起更新本页面）。\nFMO内置了3个在线升级通道\n内测通道 用于快速更新系统功能，但可能引入BUG或变砖风险，但可最快体验新功能。\n升级方法：至FMO菜单-\u003e在线升级-\u003e向右持续旋转旋钮直至屏幕显示内测通道-\u003e点击升级 稳定通道 用于发布系统稳定版本。\n升级方法: 至FMO菜单-\u003e在线升级-\u003e向左持续旋转旋钮直至屏幕显示稳定通道-\u003e点击升级 金丝雀通道 用于发布金丝雀版本。\n金丝雀是内测版本之前的版本，它极度不稳定，设备有非常大的概率变砖，该通道的内容会不定时更新，并且不会有任何形式的公告。请勿轻易尝试升级至金丝雀通道，我们不对升级至金丝雀通道的设备提供任何形式的帮助和支持。 如有BUG问题：欢迎在FMO群内反馈，如果您不在群里，也可以邮箱发送邮件至 xifengzui@yeah.net\n服务器管理员升级必读 ！！！！ 如果您是服务器管理员且将FMO升级4.x.x版本，请务必参考最新的 教程 进行您的服务器设置。您也可以继续保持服务一段时间，等待大家全部升级后，再进行4.0.0版本升级。\n前面板更新发布日志 版本 发布日期 更新内容 贡献人 v4.1.15 2026/9/29 增加SN码信息 v4.1.14 2026/9/24 增加升级提示,缓存过期提醒 v4.1.13 2026/9/9 底层优化 v4.1.12 2026/9/3 bug fix v4.1.11 2026/9/2 bug fix V4.1.10 2026/9/1 修复收藏服务器\\打开Qso日志重启问题 V4.1.9 2026/8/31 优化内存,修复部分bug V4.1.8 2026/8/30 bug fix,优化第一次连接服务器连接失败问题,修复接收背板被射频打死，长时间回不来问题 V4.1.7 2026/8/26 优化网络重连及提示 V4.1.6 2026/8/25 安全性增强,现菜单长按进入待机后，还可短按旋钮，熄灭屏幕 BI1THT V4.1.5 2026/8/25 安全性增强,增大网络缓存,优化网络性能 V4.1.0 2026/8/22 添加台站导入功能,BUG FIX BG6HFD V4.0.27 2026/8/19 安全性增强，增加删除私钥功能，支持设备转赠、二手处理 BI1THT V4.0.26 2026/7/31 优化系统流畅性 V4.0.25 2026/7/29 bug fix V4.0.24 2026/7/29 优化服务器登录缓解登录风暴，为mDNS增加别名设置功能 BI9BBL V4.0.22 2026/7/28 安全性增强,阻止简单端口转发访问，提高安全性 V4.0.21 2026/7/28 优化显示驱动，字库优化 V4.0.20 2026/7/17 Bug Fix BG5JAH,BH1KZQ V4.0.19 2026/7/6 Bug Fix BG9HUF,BH1KZQ V4.0.18 2026/7/4 修复部分台站可能存储失败问题 BD7PET V4.0.17 2026/7/3 增加关闭屏幕功能,Qso上限提高. BG2LRU V4.0.16 2026/7/2 修复尾音不完整问题 BG7DQP V4.0.15 2026/7/2 修复本地频谱保护偶发性问题 BI4AFJ V4.0.14 2026/7/1 修复Qso计数清零问题 BI9CVV V4.0.12 2026/6/30 优化服务器重连策略,bug fix. BH2XLR,BG9JLV V4.0.11 2026/6/26 修复掐重导致死机问题,Qso日志问题修复. BD6JDU V4.0.9 2026/6/25 优化日志系统 BG9HUF V4.0.7 2026/6/23 系统优化, bug fix. BI1THT V4.0.6 2026/6/21 优化大流量缓存压力问题 V4.0.5 2026/6/17 优化Qso卡顿问题 BA4JKJ V4.0.4 2026/6/17 修复激活后，短时间无语音问题，修复协管理无法设置问题,修复证书指纹格式问题 V4.0.3 2026/6/16 正式版本发布 感谢所有金丝雀小组的朋友 V4.0.2 2026/6/16 修复主题问题 BI1THT V4.0.1 2026/6/15 金丝雀固件: 基本完善FMO最新协议下的各分支功能特性 V4.0.0 2026/6/10 金丝雀固件：开始使用数字证书链验证用户，避免传输用户名密码 V3.0.6 2026/5/29 BUG FIX. V3.0.5 2026/5/24 音频驱动优化 V3.0.4 2026/5/21 优化显示流畅性 V3.0.3 2026/5/16 底层驱动调整. V3.0.2 2026/5/5 安全性更新，增加自定义旋钮逆顺时针功能 BI1THT,金丝雀测试小组所有爱好者们 V2.3.14 2026/4/30 优化活跃服务器显示功能,优化界面. V2.3.13 2026/4/28 快捷菜单增加活跃服务器列表. V2.3.12 2026/4/27 bug fix V2.3.11 2026/4/20 优化CPU调度 BG9JYT,BH5HSJ V2.3.10 2026/4/19 显示驱动更新,修复API错误,增加Beta通道. BI1THT,BG9JYT,BH5HSJ V2.3.9 2026/4/8 优化短消息和活动弹窗提示,增加控制选项 BI4AFJ, BA8AKP,BG6HFD,BI7CWS,BG9JYT, BD4WPW, BG6JXF V2.3.8 2026/4/7 配网API添加,配网优化,日志删除功能增加,ADIF优化 BI1THT, BG9LP, BI3TKL V2.3.7 2026/4/4 系统细节优化 BG9JYT,BG5UND V2.3.6 2026/3/31 多个反馈问题修复 BA4JEV,BA8AKP,BI4AFJ,BG9JYT V2.3.5 2026/326 修复背光问题 BH4XIX V2.3.4 2026/3/26 APRS连接稳定性增强,短信功能优化,bug fix BH9CXO,,BA7KVA,BH4XIX,BG7NOT,BG5UND V2.3.3 2026/3/24 修复服务器用户显示问题,优化背光逻辑 BG9JYT,BH4FOX V2.3.2 2026/3/23 BUG FIX V2.3.1 2026/3/22 后台增加收藏台站选择功能 BG2VWO,BA7KVA V2.3.0 2026/3/17 bug fix BI9BZG,BG9JYT V2.2.32 2026/3/17 bug fix BH1KZQ V2.2.31 2026/3/13 修复活动提醒BUG BG2GZK, BG9JYT V2.2.30 2026/3/12 增加服务器收藏上限 V2.2.29 2026/3/10 增加活动广播功能 V2.2.28 2026/3/4 优化快捷菜单服务器显示列表. V2.2.27 2026/3/3 增加ADIF日志导出功能 V2.2.26 2026/3/3 优化WiFi逻辑,优化部分系统细节 V2.2.25 2026/3/2 修复24版本搜索WiFi数量过少时可能引起反复重启的BUG V2.2.24 2026/3/1 WiFi连接速度增加，扫描稳定性增加 BH1KZQ V2.2.23 2026/2/26 后台增加升级功能 V2.2.22 2026/2/23 优化短消息功能,修复待机触发不准确问题 BI4AFJ V2.2.21 2026/2/14 修复MDNS的bug V2.2.20 2026/2/13 增加MESSAGE功能 V2.2.19 2026/2/11 网页控制增加20条历史条目输出功能,增加日志数字签名功能 BG6VMZ, BH1KZQ,BG9JYT V2.2.17 2026/2/9 系统优化,快捷菜单增加连接至保存的WiFi功能 BH1KZQ V2.2.16 2026/2/8 BUG FIX BG9JOO,BG5CDV,BD3OEW V2.2.15 2026/2/8 系统优化,APRS图标优化 V2.2.14 2026/2/7 增强WiFi稳定性 BD8EEG,BG6KQI V2.2.13 2026/2/6 增加APRS远控功能,页面远控页面增加待机控制,个人信息功能,搜索到台站切换功能，禅模式优化，菜单内增加预共享密钥功能 BI2QEY,BI4AFJ,BH4EAW V2.2.12 2026/2/4 增强APRS稳定性 BG5EIT V2.2.11 2026/02/02 修复IOS连接时可能崩溃的问题 BG5EIT,BA7KVA V2.2.10 2026/02/01 修复友台呼叫挂断问题 BH4FXO, BH8RFX V2.2.9 2026/02/01 现菜单键长按不放可直接进入待机模式,修复进入禅模式后，被呼叫无法退出禅模式问题 BH8RFX,BG6VMZ V2.2.8 2026/1/30 增加定时休眠设置,优化推送接口 BI4AFJ,BG5EIT V2.2.7 2026/1/29 增加通联搜索功能 BG6VMZ V2.2.6 2026/1/28 优化联网检查 V2.2.5 2026/1/27 修复联合服务器QSO互通问题 BG6HFD V2.2.4 2026/1/26 在线音频播放页面增加呼号显示,优化附近的人Beacon报告间隔,修复广播状态设置BUG BH1KZQ, BG9JYT, BA8AKP, BH8NUF V2.2.3 2026/1/25 增加邻近友台信标功能 V2.2.2 2026/1/21 修复公告问题 BA8AKP,BA7KVA，BG6HFD V2.2.1 2026/1/21 大量Bug修复. BA7KVA,BG6HFD,BG9JYT V2.2.0 2026/1/20 框架更新,增加精确定位,语音缓冲设置,联合管理. BA7KVA v2.1.0 2026/1/17 重构APRS部分逻辑,优化细节,优化播放提示状态 v2.0.15 2026/1/8 优化部分操作逻辑,修复待机屏幕下,呼叫列表时间不更新问题,现在可以使用T-CALL敲开处于待机页面的FMO BA7KVA v2.0.14 2026/1/7 增加mdns的fmo.local 局域网访问功能,增加待机页面功能,待机页面将屏蔽射频收发 BG9GYH v2.0.13 2026/1/5 增加本地频谱资源保护功能 v2.0.12 2026/1/3 修复在线音频播放问题,bug fix. BI1AFE,BG6VMZ,BG9JYT,BA7KVA v2.0.11 2025/12/30 修复重复呼号用户关注问题. BI1AFE, BD4WPW, BG6VMZ v2.0.10 2025/12/29 bug fix v2.0.9 2025/12/29 bug fix v2.0.8 2025/12/28 底层优化,bug fix v2.0.7 2025/12/28 WiFi网络优化. BG7KMR v2.0.6 2025/12/27 优化地区查询、QSo确认机制、服务器信息弹窗 BG9JYT,BH4XIX,BG7KMR,BA7KVA,BI1AFE v2.0.4 2025/12/25 修复手动输入WiFi无法连接的问题 v2.0.3 2025/12/25 更新APRS为官方TOCALL,更新底层文件系统. 注意！！！！该版本为跨版本升级，会抹掉QSO日志、收藏的服务器站点，已经关注的HAM等信息，请做好备份！ BI1AFE v1.3.43 2025/12/22 增加QSO日志上传和下载、大量底层细节优化、同名多SSID自动合并、扫描后将自动连接同名SSID中最强的那个、现在路由器内将显示为FMO、修复对讲前后咔嚓声、优化固件激活时卡顿、增加关键文件的多重备份、修复QSO日志祝福问题、wifi配置页面内逻辑更新 v1.3.42 2025/12/20 优化编码器,BUG FIX BG6VMZ, BD4WPW v1.3.41 2025/12/19 优化高清编码器,优化好友列表. v1.3.40 2025/12/18 优化菜单逻辑,修复黑名单、状态广播问题 BG9AU,BG9JYT v1.3.39 2025/12/18 修复底层一个可能造成BUG的问题 BA8AKP,BA7KVA v1.3.38 2025/12/17 BUG FIX. BA7KVA v1.3.37 2025/12/16 优化音频编码器 v1.3.36 2025/12/15 优化连接状态管理,修复BUG. v1.3.35 2025/12/14 QSO双向自动确认,优化延迟算法. BA4QHC v1.3.34 2025/12/13 优化QSO卡顿问题 v1.3.33 2025/12/13 增加延迟预测器,缓解卡顿问题 v1.3.32 2025/12/13 BUG FIX. v1.3.31 2025/12/12 修复QSO被动确认无法记录问题 v1.3.30 2025/12/12 增加QSO自动回复,禅模式优化. BG6VMZ, BD4WPW v1.3.29 2025/12/11 底层通讯更新. BG6VMZ v1.3.28 2025/12/10 优化MQTT连接速度. BA7KVA v1.3.27 2025/12/9 安全性增强 BG6VMZ,BD4WPW v1.3.26 2025/12/7 优化QSO逻辑,极大降低通联延迟. v1.3.25 2025/12/6 增加QSO智能检测与交换记录功能. BG6VMZ v1.3.24 2025/12/5 服务器列表优化,修复网页问题,底层优化. v1.3.23 2025/12/02 修复背光自动调节问题 v1.3.22 2025/11/29 增加好友上线提醒,增加老友CQ功能,铃声优化,bug fix BG6VMZ v1.3.21 2025/11/28 BUG FIX v1.3.20 2025/11/26 修复偶现的WiFi配网崩溃问题,增加接收预防提示点,bug fix BH3IBG, BI1AFE, BG6VMZ v1.3.19 2025/11/26 优化禅模式界面 BG6VMZ, BD4WPW, BD4SIN v1.3.18 2025/11/25 bug fix BG6VMZ, BG7NOT, BA7KVA v1.3.17 2025/","product":"FMO","section":"docs","summary":"FMO 固件更新日志与稳定/内测/金丝雀三个升级通道说明。","tags":[],"title":"FMO (NFM Over Internet) 更新说明","url":"/docs/fmo-upgrade-log/"},{"content":"# 目前FMO硬件说明已更新至2.x版本,所有文档均已同步更新。 # V1协议增加若干条新指令 2025/10/14。 FMO电台版本 说明 V1.x 实验性设备,目前已停止支持 V2.x 正式版本 我们针对FMO开发了一套全新的V1版本电台操作协议，该协议旨在可以方便的对接FMO面板与其他对讲设备。如需代码可访问GitHub。\n技术参数 描述 硬件接口 串口 电平 TTL电平(3.3V) 波特率 19200bps 数据位 8位 停止位 1位 校验位 无 流控 无 FMO在开机时会尝试获取和设置电台板基本信息，会通过该套指令完整的了解电台所拥有的能力。以便动态的在FMO的设置菜单中正确的显示电台能力。\nFMO启动序列 说明 1. 查询电台在线 发送AT?\\r\\n 等待设备返回OK\\r\\n 2. 查询电台名称 发送AT+NAME?\\r\\n 等待设备返回电台名称\\r\\n 3. 查询电台能力 发送AT+BANDCAP?\\r\\n 等待设备返回支持的频率列表，具体支持频率可以查看代码中的描述\\r\\n 4. 设置电台基本参数 如接收/发射频率/哑音等参数，如设备返回不合法,则在FMO内部显示不支持\\r\\n 通过该套顺序操作，FMO内部会动态形成电台的参数列表。\n支持的 AT 指令 (V1协议) 指令 描述 类型 参数范围/说明 AT+NAME 查询设备名称 查询 (?) 无参数 AT+VER 查询固件版本 查询 (?) 无参数 AT+BANDCAP 查询设备频段能力 查询 (?) 无参数 AT+SQL 查询或设置 SQL 等级 查询 (?)，设置 (=value) 1 ~ 10 AT+TXFREQ 查询或设置发射频率 查询 (?)，设置 (=value) 浮点数，单位 MHz AT+RXFREQ 查询或设置接收频率 查询 (?)，设置 (=value) 浮点数，单位 MHz AT+RXVOL 查询或设置接收音量 查询 (?)，设置 (=value) 0 ~ 10 AT+TXVOL 查询或设置发射音量 查询 (?)，设置 (=value) 0 ~ 10 AT+TCTCSS 查询或设置发射 CTCSS 查询 (?)，设置 (=value) 浮点数，范围由代码定义 AT+RCTCSS 查询或设置接收 CTCSS 查询 (?)，设置 (=value) 浮点数，范围由代码定义 AT+TXPWR 查询或设置发射功率 查询 (?)，设置 (=value) LOW, MID, HIGH AT+FREQTUNE 查询或设置频率调谐 查询 (?)，设置 (=value) 整数，范围由代码定义 AT+SMETER 查询S级别 查询 (?) 0-9 10为报警级别 AT+SYS 系统指令 设置 (=value) RESET 复位系统 AT+RF RF开关指令 查询 (?)，设置 (=value) ENABLE DISABLE AT? 测试 AT 指令接口 查询 (?) 无参数 如需了解具体的硬件接口，请查阅硬件接口指南\n","product":"FMO","section":"docs","summary":"FMO 主板与电台背板之间的串口 AT 指令协议（V1）技术规范。","tags":[],"title":"FMO(NFM Over Internet)AT协议指南","url":"/docs/fmo-at-instructions/"},{"content":" 该系列文档适用于CWO使用者，包括但不限于CWO使用者、CWO开发者、CWO维护者等。 CWO:即 CW over internet，即互联网CW，是一种通过互联网进行CW通信的方式。 本项目由BG5ESN发起，目前处于开发阶段，欢迎有兴趣的朋友参与验证和服务器搭建等工作。 本文档将会介绍如何搭建CWO服务器，以及服务器的配置等信息。 请参考下列链接： 使用说明： 阐述了如何使用cwo进行通联、更新服务器列表等基本操作。文章链接 服务器搭建： 介绍了如何搭建cwo服务器，为爱好者提供了服务器的详细的搭建步骤。文章链接 服务器管理： 着重介绍了如何保证您的服务器安全，以及如何管理服务器。文章链接 开源硬件： 提供了一个基于ESP32-S3核心开发版的开源硬件版本，该版本可以烧录我们的固件进行通讯操作(建设中)文章链接 ","product":"CWO","section":"docs","summary":"CWO（CW over Internet）产品指南：系列文档的总入口。","tags":[],"title":"CWO(cw over internet) 产品指南","url":"/docs/cwo/"},{"content":"1. 服务器搭建 cwo服务器将暂停申请一段时间。 大家太热情了，导致cwo现在新建服务器申请特别多。 再这样下去服务器要比人多了。（捂脸） 后续我们会根据各个地区的负载情况，再开放申请。 感谢大家的支持。 -2024年9月10日 前提条件： 在建立服务器的时候，您需要准备一些东西。\n一句想和大家说的话，这句话会推送到每台CWO设备上，大家都能看到。 一台服务器，可以是云服务器，也可以是自己搭建的服务器、甚至是你的路由器,需公网IP。 推荐不小于3M的上传带宽，以保证传输质量。 EMQX安装 我们的后端基于MQTT，因为MQTT的订阅发布特性刚好符合业余无线电中多播的特性。 这里不是我偷懒，而是官方的文档实在是太好了，与其看我二次咀嚼不如直接看官方的。 安装参考链接：EMQX安装。其他帮助文档\n设置服务器 通过访问\n您的域名或IP:18083 进入EMQX管理界面，用默认的用户名密码登录\n用户名：admin 密码：public 登陆后，首先修改默认的public密码，以保证你服务器的安全性，请放心，我们不需要接管你的服务器，您的服务器您自己说了算。 接下来我们需要配置登录信息，进入右侧界面-\u003e客户端认证。 然后点击右上角的添加按钮，添加一个新的认证信息。\n选择JWT认证\n下一步-\u003e数据源默认-\u003e下一步-\u003e配置参数参考如图\n这里的服务器Secret是我给您的。您需要给我发送一个邮件，让我知道您正在建立服务器，我将在线更新设备的服务器列表。 之后大家就都能看到您的设备了。\n请将您的\n您想和大家说的话（英文） 服务器地址域名或IP （例如 34.192.43.22 或 www.bg5esn.com） 您的真实姓名 您的呼号 您的邮箱地址 您的联系方式（手机） 通过邮件的形式 发送至xifengzui@yeah.net\n在我收到邮件后，会将您的服务器加入列表中，同时会回给您一个Secret，您填入服务器的Secret即可。\n之后，每台CWO设备都将在线更新服务器列表，都能看到您的服务器和您想和大家说的话。\n我们还有更多的安全设置参数，详细内容，请参考服务器安全指南。\n","product":"CWO","section":"docs","summary":"基于 EMQX + JWT 搭建 CWO 服务器的步骤与申请流程。","tags":[],"title":"CWO(cw over internet) 自建服务器指南","url":"/docs/cwo_server_build/"},{"content":"CWO（CW over Internet）通过互联网进行 CW（摩尔斯）通联，支持高保真输入采样、实时解码、热插拔机械键盘轴、外部电键、瀑布图指示、多模式（自动/半自动/手动）和 OTA 升级。\n注册\n使用微信扫描说明卡片或设备开机屏幕上的二维码，同意隐私政策并填写个人信息，等待人工审核。 未持有操作证可能无法发送、无法登录，设备会显示 NO CALLSIGN。 配网\n手机安装 ESP SoftAP Prov 配网软件（安卓可直接在软件下载页下载，苹果请到应用商店搜索）。 进入 菜单 -\u003e network -\u003e Reconfig，打开配网软件，点击右上角扫码按钮扫描 CWO 二维码。 手机连接名为 “CWO” 的设备热点，选择家庭 WiFi 并输入密码（仅支持 2.4G WiFi，最多保存 8 个）。 提示连接成功后，短按旋钮回到 WiFi 页面，长按旋钮退出。 选择服务器与通联\n在 菜单 -\u003e server 中选择服务器，可点击 pull 更新服务器列表。 常用设置（CW Mode、音调、速度、屏保、HID 模式等）在 菜单 -\u003e settings 中，详见设置项详解。 通联特殊指令（CALL / CFM / CFMQ）、日志与竞赛消息见通联操作与指令。 固件升级：菜单 -\u003e information -\u003e OTA；恢复出厂设置：information 界面长按 BOOT 按钮 5 秒以上，详见按键、接口与维护。 快速索引\n设置项详解：CW 模式、音调、速度、解码器、HID、屏保等 22 项设置。 通联操作与特殊指令：CALL / CFM / CFMQ、日志与竞赛消息。 频率使用倡议：各频段的推荐速度与用途。 常见问题排查：配网失败、收不到对方、顶部提示栏含义。 按键、接口与设备维护：按钮定义、接口、电键、OTA 与恢复出厂。 趣味玩法：MIDI 播放器、屏保桌搭、HID 玩法与机器人抄报。 注销、转赠与清理日志：清除设备信息与通联日志。 服务器搭建与管理：EMQX + JWT 自建 CWO 服务器。 CW 学习资料：通联程序、抄报教材与 CW 词典。 注意事项\n设备只支持 2.4G WiFi；遇到配网问题可尝试 Join Other Network 手动输入。 完整使用说明与 Q\u0026A 见 CWO 使用说明。 当前 CWO 服务器申请处于暂停状态，请以自建服务器指南页面公告为准。\n","product":"CWO","section":"kb","summary":"CWO（CW over Internet）是互联网 CW 通联设备，支持机械键盘轴、电键、实时解码与 OTA 升级。","tags":["CWO","CW","摩尔斯","配网","通联","电键","HID","注册"],"title":"CWO 是什么？如何注册、配网与通联","url":"/kb/cwo-guide/"},{"content":"切换服务器\n主界面下顺时针旋转功能旋钮，即可在当前发现的服务器之间切换。 昨天还能看到的服务器今天不见了属正常现象：服务器仅由管理员的 FMO 广播，首次广播后活跃 24 小时，之后消失，详见FMO 服务器是什么定位？。 服务器只是传播层节点、不是中继台，详见FMO 服务器是什么定位？。 FMO 服务器由各服务器管理员自行独立管理，同步速度较慢：完全同步网络上的所有服务器需要 10-30 分钟，刚开机的设备请耐心等待。 看不到海外服务器属正常现象：FMO 按区域进行中间证书管理，详见信任链与数字证书是什么？。 服务器在线状态可以在地图上查看：官方服务器列表基于公开的 APRS-IS 数据，也可访问 fmomap.com 等第三方地图（非官方提供）。 收藏与快捷菜单\n短按旋钮进入快捷菜单，与服务器相关的项目包括：活跃服务器列表、收藏服务器列表、所有服务器列表、收藏当前服务器、取消收藏当前服务器、重新连接当前服务器、清除未收藏列表。 收藏服务器后，主界面的服务器收藏标志会变为黄色。 服务器管理提示\nFMO 网络中的每个服务器都由爱好者自主搭建和管理，服务器管理员享有全部权力，也负有接入信号源的管理责任。部分服务器可能桥接了非 FMO 的音频源，请留意服务器公告，避免误解。\n选择服务器的注意事项\n服务器由爱好者个体独立搭建和维护，其软硬件环境、管理员操守、安全防护水平存在客观差异，请自行评估风险，谨慎选择接入的服务器。 连接到境外服务器时，数据涉及跨境传输，请自行评估并遵守所在地法律法规，相关风险由使用者自行承担。 ","product":"FMO","section":"kb","summary":"旋转旋钮切换服务器，短按进入快捷菜单查看服务器列表，收藏后可从收藏列表快速连接。","tags":["服务器","切换","收藏","快捷菜单","重连","服务器列表"],"title":"如何切换、收藏服务器","url":"/kb/server-switch/"},{"content":"在线 OTA（推荐）\n进入 菜单 -\u003e 在线OTA，按通道升级：\n通道 进入方式 说明 稳定通道 向左持续旋转旋钮直至显示“稳定通道” 发布稳定版本 内测通道 向右持续旋转旋钮直至显示“内测通道” 快速体验新功能，可能引入 BUG 金丝雀通道 内测版本之前的版本 极不稳定，有较大变砖风险，不建议尝试 背板 OTA\n启用 菜单 -\u003e 背板OTA 后，FMO 会模拟成一个串口板，电脑可通过 USB 直接与背板进行串口通信。注意背板波特率始终为 115200。\n升级提示\n升级前建议先了解对应版本的更新内容，见 FMO 更新说明。 升级前建议备份数据：因更新中断、失败或不兼容导致的问题，由使用者自行承担；拒绝更新需自担功能受限或兼容性风险。 最新版本支持在线更新提醒：设备会自动检查更新并弹出提示（V4.1.14 起，同时含缓存过期提醒）。如不需要，可在 菜单 中关闭更新检查。 OTA 可能存在需要多次升级的情况：有些时候固件无法一次升级到位。升级完成后请再次进入 菜单 -\u003e 在线OTA 检查，直到显示“无最新更新”。 注销、转赠设备前，请先升级到最新版本，否则可能出现状态与实际脱节。 服务器管理员升级到 4.x 后，请参考最新的服务器搭建指南调整服务器设置。 ","product":"FMO","section":"kb","summary":"FMO 支持在线 OTA 与背板 OTA，内置稳定、内测、金丝雀三个通道。","tags":["升级","OTA","固件","内测","稳定通道","背板"],"title":"如何升级 FMO（OTA）","url":"/kb/ota-upgrade/"},{"content":" 建服前请先阅读生态共建与治理原则，并确认你理解 FMO 的授权机制。官方不提供建服技术支持，请量力而为。建议先了解FMO 服务器是什么定位？：你的服务是贡献，不是枢纽。桥接与集群的边界和风险见桥接与集群：建服者需要了解的风险。\n整体流程（FMO 4.0）\n安装 MQTT Broker：推荐 EMQX（版本大于 5.8），确保能通过外网访问，并预先确定服务器的公网 URL 与端口（常规非加密端口 1883）。 配置 FMO 设备：电脑访问 fmo.local -\u003e 参数配置，填写 APRS PASSCODE、自定义服务器地址/端口/名称/服务范围，然后 APRS网络设置 -\u003e 重启APRS服务 -\u003e 重启服务。设备主界面旋转旋钮应能看到自己的服务器。 安装并设置证书验证器（SAS）：SAS 是 FMO 的开源认证服务，部署在 EMQX 旁边，根据证书链验证用户是否为持证爱好者。 一键脚本：Linux / macOS 执行安装脚本；Windows 使用管理员 PowerShell 执行 irm 脚本。脚本会引导你粘贴从 fmo.local -\u003e SAS 搭建快捷方式 -\u003e 生成命令 复制的启动参数。 也可以从 GitHub Release 下载二进制手动运行。 设置 EMQX 登录参数：进入 :18083 管理后台 -\u003e 客户端认证（不是客户端授权）-\u003e 创建 Password-Based -\u003e HTTP 服务，URL 填 http://你的SAS地址:8080/auth，请求体使用默认的 {\"username\": \"${username}\",\"password\": \"${password}\"}。创建后数据源状态应显示“已连接”。 验证：用自己的 FMO 登录服务器，SAS 日志中出现 HTTP auth: allowed 你的呼号 即表示成功。 补上最后一公里：安装 FAS 审计工具，自动识别包头冒用身份并拉黑。 合规提醒\n使用中国大陆服务器且通过域名访问，需要进行 ICP 备案。 严禁广告、商业活动、桥接商业与公众网络、非业余通联；Broker 应仅供 FMO 使用。 建议控制规模、小范围开放，并保护好其他爱好者的隐私。 关于桥接第三方源与加入集群的边界和风险，见桥接与集群：建服者需要了解的风险。 完整教程（含各平台服务管理命令、日志排查）见 FMO 语音服务器搭建指南。\n","product":"FMO","section":"kb","summary":"自建服务器需要 EMQX Broker + SAS 认证服务，配置完成后你的服务器会自动出现在所有 FMO 的列表中。","tags":["服务器","搭建","EMQX","SAS","MQTT","自建"],"title":"如何搭建 FMO 语音服务器","url":"/kb/server-build/"},{"content":"注销操作会让设备回到未激活状态，并清除你的呼号身份。请严格按以下顺序操作：\n先升级设备到最新版本。如果版本过旧，注销状态可能与实际脱节，需要多次升级，直到设备显示“无最新更新”。 进入 设备设置 -\u003e 启用配网WiFi。 手机连接 FMO 创建的配网 WiFi，此时会自动跳转到设置页面。 选择 系统操作 -\u003e 高危操作 -\u003e 删除日志，清理你的通联日志。 选择 系统操作 -\u003e 高危操作 -\u003e 删除私钥，按提示操作。此项会彻底清除设备信息，你的唯一密钥将被删除。 请严格按照上述步骤完成设备重置后，再赠送朋友或进行二手交易，否则你的个人身份可能被误用。\n注销后会发生什么\n设备恢复为未激活状态，新用户拿到后可像新机一样重新注册激活。 根据免责条款与隐私政策，注销账户后，我们会在法律要求的必要期限内保留核心身份信息（操作证号、呼号、姓名），其他信息将删除或匿名化处理。 私钥一旦删除无法找回；后台自删证书与私钥后想重新获取数字证书，需要邮件申请且有时间与次数限制，见 FMO 使用说明书 - 设备重置与转赠限制。 如果只是想把设备转手，请继续阅读如何转赠或出售 FMO。\n","product":"FMO","section":"kb","summary":"升级到最新版本后，通过配网页面的“高危操作”删除日志与私钥，即可完成设备注销。","tags":["注销","解绑","删除私钥","删除日志","取消账户","重置"],"title":"如何注销设备与账号","url":"/kb/deactivate-account/"},{"content":"首次拿到 FMO 时，设备处于未激活状态（界面呼号显示 N0CALL）。请按以下步骤操作：\n连接网络：按设备界面提示，把 FMO 连接到 2.4G WiFi 网络（FMO 不支持 5G WiFi）。 扫码注册：使用手机扫描设备上的二维码，按提示提交操作证编号、姓名、手机号等信息。FMO 仅面向持证的业余无线电爱好者，非爱好者无法注册。 等待人工审核：审核时间大约 1 个工作日。请打开公众号推送通知，审核结果会通过消息通知你。等待期间可以先把设备放一边。 完成激活：审核通过后，长按旋钮进行设备激活。 激活成功后，你的呼号会显示在设备主界面（呼号处不再显示 N0CALL）。\n如果设备在激活时提示“服务器响应超时”，请参考如何辨别仿冒设备确认设备来源。\n","product":"FMO","section":"kb","summary":"首次使用需要连接 WiFi、扫码注册、等待人工审核，审核通过后长按旋钮完成设备激活。","tags":["激活","注册","审核","N0CALL","新机","二维码"],"title":"如何激活 FMO（注册与审核）","url":"/kb/device-activation/"},{"content":"FMO 采用分阶段、可持续的开源路线：\n项目生存期（已渡过）：以 MIT 协议开放射频背板硬件设计。 协议开放（当前阶段）：开放语音数据包协议、厂家标识注册表、APRS 报文格式等关键文档；个人和业余用途保持开放免费。 生态全面开放（未来目标）：建立开放的治理机制。 想把自研设备接入 FMO 网络？非豁免产品注册完成后将启动开发者计划。\n已开放资源\n类别 资源 协议与标准 语音数据包协议、APRS 报文格式、厂家标识注册表 服务端 SAS 认证服务、SAS Docker、FAS 审计服务、证书生成工具 工具与客户端 APRS 远程控制、Android GPS、QSO 日志转 ADIF、日志签名验证 硬件资源 电路板外形 / 外壳文件、射频背板设计（MIT） 全部项目见 github.com/BG5ESN。\n","product":"FMO","section":"kb","summary":"FMO 已开放语音数据协议、APRS 报文格式、SAS/FAS 服务端与多种工具，按路线图分阶段推进开源。","tags":["开源","Github","二次开发","协议","路线图","MIT"],"title":"开源资源与二次开发入口","url":"/kb/open-source/"},{"content":"消失是正常机制\n服务器首次广播后会活跃 24 小时，然后消失。FMO 不要求服务器 24 小时在线，只有正在活动的服务器才会出现在列表中。\n为什么会消失\n管理员的 FMO 必须连接到自己的服务器才会广播——关机、离线、或切去了别的服务器，广播就停了。 24 小时内没有通联活动：活跃窗口过期，即使设备在线也会从列表消失。 简单道理：只有自己在家，才请客人进门。 为什么不能 24 小时在线\n安全风险：长期无人值守在线会持续暴露攻击面——你不在的时候没人盯着，被扫描、被滥用、被攻击时自己不知情。 僵尸房间：没人、没活动的服务器长期挂着会变成空房——列表里全是僵尸房间，用户进去发现没人，体验差、广播资源被浪费。 怎么让它重新出现\n让管理员的 FMO 连接回自己的服务器并保持在线，重新广播。 在服务器上进行通联（活跃），保持活动状态。 服务器列表同步有延迟，请等待 10-30 分钟。 服务器定位的完整说明见FMO 服务器是什么定位？，安全加固见服务器安全加固：SAS、FAS 与 EMQX 权限。\n","product":"FMO","section":"kb","summary":"管理员的 FMO 必须连着自己的服务器才会广播；活跃 24 小时后消失属正常机制，不鼓励 24 小时在线。","tags":["服务器","消失","广播","活跃","僵尸房间","安全"],"title":"为什么我的服务器消失了？","url":"/kb/server-vanish/"},{"content":"最近，老板娘保修FMO的时候意外收到了一个设备：这个设备几乎和FMO一模一样,只在几处细微的丝印有差别，这意味着市面上出现了1:1仿制FMO的山寨硬件。 它们在外观上几可乱真，普通爱好者很难一眼分辨，我们都差点分辨不出来，更别提普通爱好者了。关键是山寨设备没有可信的硬件环境，无法加入由爱好者们建立的服务器，这不仅会给爱好者带来财务损失，也会给我们带来声誉损失。\n我们开放了大量资料：语音数据协议、射频背板设计、服务端认证与审计服务、证书工具、客户端工具等。 我们这么做，是希望有更多人能在此基础上做出更好的设备，让整个生态繁花似锦。 但偏偏有人选择走省力路线，想\"一步到位\"——1:1 抄外形、抄成品…却完全忽视建立生态所需要的责任和努力。 我们已着手调查相关设备的来源与流通渠道。仿冒、冒用官方名义销售，不仅损害使用者的合法权益，也涉嫌侵犯我们的相关权利。我们保留在必要时采取一切法律手段的权利。\n如何分辨正版与盗版 丝印上的区别：盗版硬件几乎做到了以假乱真级别的1:1硬件级别拷贝。此处公布的信息很可能会在他们未来的改版中完全修复，因此我们不建议简单通过丝印来进行判断是否为盗版硬件。 以下盗版对比图片仅做参考，不代表未来山寨设备不会修复下述细节问题： 更可靠的是按流程验证： 无法通过工厂录入：盗版设备通常无法完成官方工厂录入环节,通常会停留在半成品界面,而这个界面绝对不会出现在量产成品中。如卖家无法展示产品正常工作页面，请不要购买。 处于工厂工序的半成品界面示意图（此图为盗版设备）： 即使通过工厂录入，激活也会失败：山寨设备在激活时通常得到 服务器响应超时 的结果；同样的场景下正常设备提示的是 用户未绑定（全新设备）/证书签发失败（二手设备）。 一个简单的辨别方法： 在即将到来的更新中（版本号≥4.1.15）,我们会增加SN码机制，如果您从其他渠道购买设备，我们建议您做以下流程，以减小收到山寨设备的可能性\n如显示半成品界面，切勿购买 请对方升级至最新版本固件（版本号≥4.1.15） 请对方按照下述步骤拍摄视频：进入菜单-\u003e设备信息-\u003e展示信息重点关注MAC和SN码,如无SN码，请要求对方进行升级 请对方回到主页面，尝试长按旋钮 - 正常提示\"用户未绑定（全新设备）/证书签发失败（二手设备的提示）\"（注意主页时间应当为当前时间），有此类提示的设备一般为正常设备。 异常设备会提示“服务器响应超时”，则代表这个设备无法和官方服务器进行通讯，谨慎购买。 收货后,确认产品内的SN码和对方拍摄的SN/MAC码一致，不一致时建议您退货退款。 请爱好者谨慎识别，注意财务安全。\n如发现可疑设备或掌握线索，欢迎联系我们。可直接邮件发送至：xifengzui@yeah.net\n如果您过于担心: 您收到手的设备（版本号≥4.1.15），可以手机拍摄-菜单-\u003e设备信息:页面，并将此图片发送至 xifengzui@yeah.net，我们会在30个工作日内给您回复。\n注：我们仅对您发送的图片所述内容进行确认，不对硬件改装/芯片移植/程序黑客等情况进行判断，不承担相应真伪判断责任，由于二手设备没有技术支持/售后，并且占用我们正常工作时间，所以回复时间较长，敬请理解。\n此致 73!\nBG5ESN\n","product":"FMO","section":"docs","summary":"如何辨别仿冒 FMO 设备：工厂录入、激活提示与 SN/MAC 核验流程。","tags":[],"title":"FMO(NFM Over Internet) 关于仿冒设备的声明","url":"/docs/fmo-copycat-announcement/"},{"content":" 面向读者：Web 地图/看板开发者、第三方客户端开发者、协议对接者。\n目的：一份自包含的参考文档，用于解析和验证 APRS-IS 上的 FMO 消息。所有开发者均可通过根证书，验证一条FMO消息是否为真。\n声明: FMO自V4后，将不再在APRS-IS广播任何加密内容，需身份确认内容，均使用数字签名技术保证其真实性。\n隐私与位置: FMO 报文仅包含呼号、服务器地址与技术参数等公开技术信息，不包含任何个人隐私信息；位置信息的发布与否与精度由使用者自行选择（可关闭或使用模糊网格）。\n目录 总览 包头约定 通用 Payload 结构 CERT Blob — 证书容器 SIG — Ed25519 签名 消息类型：CQ 族 消息类型：BEACON 信标 消息类型：STATION 台站 消息类型：JOINT + EVENT 事件联合 消息类报文 (APFM00) 验证流程 常量与编码参考 完整示例 1. 总览 FMO（NFM Over Internet）设备将 APRS 网络作为可选发现媒介之一，服务器发现以官方服务器列表与爱好者分享为主。设备广播结构化的 POSITION 和 STATUS 帧，携带身份、位置、能力和实时动作。V4 用 PKI 替代了共享密钥认证：每条广播包含用户证书（CERT blob）和 Ed25519 签名（SIG），私钥永不离开设备。\nTOCALL 通道：\n通道 TOCALL 用途 广播 APFMO4 带 CERT + SIG 的 POSITION/STATUS 帧。发现、CQ、信标、台站、事件。 本文档详细介绍广播通道（APFMO4）。\n2. 包头约定 所有 V4 广播消息遵循此包头格式：\n呼号-SSID\u003eAPFMO4,TCPIP*:有效载荷 组件 说明 呼号 发送设备的呼号（如 BG5ESN） -SSID APRS SSID，0–15。不属于证书身份字段，仅用于会话/路由上下文。 \u003eAPFMO4, TOCALL — V4 广播固定目标地址 TCPIP*: 路径 — 表示消息来自 APRS-IS（非 RF） 有效载荷 V4 payload，详见后续章节 使用的帧类型：\n帧类型 前缀 使用场景 POSITION =\u003clat\u003eN/\u003ctable\u003e\u003clon\u003eE\u003ccode\u003e CQ、BEACON、STATION、JOINT（除 EVENT STATUS 外的所有消息） STATUS \u003e 仅 EVENT STATUS（联合模式溢出容器） 完整的 POSITION 帧（包头 + 坐标前缀 + payload）必须在 APRS-IS 512 字符限制之内。所有 V4 消息均在此范围内。\n3. 通用 Payload 结构 Payload 部分（POSITION 坐标前缀之后）始终以以下格式开头：\nFMO-V4,\u003cTYPE\u003e,... Token 以逗号（,）分隔。逗号是保留分隔符，不得在文本字段中出现（EVENT.content 例外，见第 9 节）。\n3.1 字段编码规则 数据类型 编码 示例 整数 (uid, port, filterKm 等) 十进制 ASCII 文本 12345, 1883, 500 浮点数 (freq) 固定 4 位小数 ASCII 438.5000 文本 (name, url, rig, ant) UTF-8 明文，不含逗号，不做 base64 安吉FMO中继 公钥 (32 字节) Base64url，无 padding（=） K7gJ2XpQz9... 签名 (64 字节) Base64url，无 padding d4Ef7GhJk1... 哈希/指纹 (32 字节) Base64url，无 padding a1B2c3D4e5... 坐标 (lat/lon) APRS 原始字符串（度-分格式） 3037.98N, 11932.20E 3.2 Payload 中的关键前缀 前缀 含义 示例 FMO-V4, V4 协议标识 — CERT: 证书 blob（CBOR → base64url） CERT:dXNLz5G... SIG: Ed25519 签名（base64url） SIG:R8tY3UjHw5... SH: SHA-256 哈希（base64url），仅联合模式 SH:y8xV4K... S 服务器 UID 前缀 S123 FREQ: 工作频率 MHz FREQ:438.5000 HEIGHT: 天线高度 米 HEIGHT:15 RIG: 设备型号 RIG:FT-5DR ANT: 天线型号 ANT:J型天线 P MQTT 端口前缀 P1883 F 覆盖范围 km，后缀 KM F500KM U 在线/峰值用户数，格式 U\u003conline\u003e/\u003cpeak\u003e U5/200 4. CERT Blob — 证书容器 这是最关键的结构。CERT blob 以紧凑二进制形式携带完整的自包含用户证书。\n4.1 线上格式 CERT:\u003cbase64url( 10 元素 CBOR 数组 )\u003e 生成步骤：\n构造 10 元素的确定性 CBOR 数组（见下方）。 将 CBOR 字节编码为 base64url（无 padding）。 前面加上字符串 CERT:。 结果约 164–170 字符长（通常 168），例如：\nCERT:dXNLz5G...Jq0A 4.2 CBOR 数组结构 CERT blob 是一个10 元素确定性 CBOR 数组。元素 0–8 构成 TBS（待签名）部分；元素 9 是 Intermediate CA 对元素 0–8 的 Ed25519 签名。\n索引 CBOR 类型 字段 说明 [0] text string (3) protocol 固定 \"FMO\" [1] unsigned integer version 固定 4 [2] text string (8) messageType 固定 \"userCert\" [3] unsigned integer issuerSn 签发 Intermediate CA 的序列号 [4] text string callsign 证书主体的呼号（大写 ASCII） [5] unsigned integer uid 用户唯一数字 ID [6] byte string (32) publicKey Ed25519 公钥（32 原始字节） [7] unsigned integer iat 签发时间戳（UTC Unix 秒） [8] unsigned integer exp 过期时间戳（UTC Unix 秒） [9] byte string (64) caSignature Intermediate CA 对元素 [0]–[8] 的 Ed25519 签名 TBS（待签名）数组 = 元素 [0] 至 [8]：\n[\"FMO\", 4, \"userCert\", issuerSn, callsign, uid, publicKey(32字节), iat, exp] 位于索引 [9] 的 caSignature 计算方式：\ncaSignature = Ed25519.sign(IntermediateCA私钥, 确定性CBOR编码(TBS数组)) 4.3 certFingerprint 与 certBlobHash 哈希 定义 大小 用途 certFingerprint SHA-256(确定性CBOR编码(TBS数组)) = SHA-256(元素[0]–[8]的CBOR字节) 32 字节 SAS HTTP 认证（MQTT 密码）、CRL 查询 certBlobHash SHA-256(完整CERT blob原始CBOR字节) = SHA-256(元素[0]–[9]的CBOR字节) 32 字节 所有消息类型的 SIG 签名数组 区别很重要：certFingerprint 仅覆盖 TBS（不含签名），而 certBlobHash 覆盖包含 CA 签名的完整 blob，防止 blob 替换攻击。\n4.4 解析方法 # 1. 提取 \"CERT:\" 之后的 base64url 部分 b64 = payload.split(\"CERT:\")[1].split(\",\")[0] # 取到下一个逗号前 # 2. Base64url 解码（无 padding） cbor_bytes = base64url_decode(b64) # 约 125 原始字节 # 3. CBOR 解码为 10 元素数组 arr = cbor_decode(cbor_bytes) # 确定性 CBOR assert arr[0] == \"FMO\" assert arr[1] == 4 assert arr[2] == \"userCert\" # 4. 提取字段 issuer_sn = arr[3] # 整数 callsign = arr[4] # 字符串（大写） uid = arr[5] # 整数 public_key = arr[6] # bytes[32] iat = arr[7] # 整数 exp = arr[8] # 整数 ca_sig = arr[9] # bytes[64] # 5. 计算 certFingerprint tbs_cbor = cbor_encode(arr[0:9]) # 仅元素 0-8 cert_fingerprint = sha256(tbs_cbor) # 32 字节 # 6. 计算 certBlobHash cert_blob_hash = sha256(cbor_bytes) # 原始完整 CBOR 字节 CBOR 库建议：\nJavaScript: cbor2 (npm), cbor-x Python: cbor2 (PyPI) Go: github.com/fxamacker/cbor CBOR 为 RFC 8949。确定性编码指：整数用最小形式、文本/字节串用最短长度。 5. SIG — Ed25519 签名 每条广播 POSITION 帧都携带一个 SIG: token，包含 Ed25519 签名。签名不是对 APRS payload 文本的签名，而是对一个固定顺序的确定性 CBOR 数组（称为 TBS 数组）的签名，该数组重构了消息的语义字段。\n5.1 域分离 所有签名数组以域分离前缀开始：\n[\"FMO\", 4, \"\u003c消息类型\u003e\", ...] \"FMO\" — 协议标识（文本字符串） 4 — 协议版本（整数） \"\u003c消息类型\u003e\" — 以下之一：\"CQ\"、\"OMCQ\"、\"VOCAL\"、\"ONLINE\"、\"BEACON\"、\"STATION\"、\"JOINT\"、\"userCert\"（文本字符串） 这防止了跨上下文签名重放。\n5.2 timeSalt — 防重放 每条消息级 SIG 包含一个 timeSalt 作为其最后一个元素：\ntimeSalt = floor(UTC Unix 时间戳 / 600) timeSalt 将时间划分为 10 分钟窗口。 timeSalt 进入 CBOR 签名数组，但不出现在 APRS payload 文本中。 接收端用三个候选值验证：timeSalt、timeSalt - 1、timeSalt + 1（±1 窗口容忍网络延迟和时钟偏差）。 消息在发送后最多 ~20 分钟内有效。 5.3 签验 对每种消息类型，接收端必须：\n以完全相同的字段顺序重建完全相同的 CBOR 数组。 对该数组进行确定性 CBOR 编码。 验证 Ed25519.verify(来自cert的公钥, CBOR字节, 来自SIG token的签名)。 公钥来自 CERT blob（元素 [6]），在 cert 自身的 caSignature 已被受信任的 Intermediate CA 验证通过之后使用。\n5.4 各消息类型的 TBS 数组 消息 CBOR 数组元素 caSig (CERT 内) [\"FMO\", 4, \"userCert\", issuerSn(整数), callsign(文本), uid(整数), pubKey(bytes[32]), iat(整数), exp(整数)] — 9 元素 CQ / OMCQ / VOCAL / ONLINE [\"FMO\", 4, \"\u003cTYPE\u003e\", callsign(文本), ssid(整数), latStr(文本), lonStr(文本), certBlobHash(bytes[32]), serverUID(整数), timeSalt(整数)] — 10 元素 BEACON [\"FMO\", 4, \"BEACON\", callsign(文本), ssid(整数), latStr(文本), lonStr(文本), certBlobHash(bytes[32]), freq(文本\"%.4f\"), antHeight(整数,可选), rigName(文本,可选), antName(文本,可选), timeSalt(整数)] — 10–13 元素 STATION [\"FMO\", 4, \"STATION\", callsign(文本), ssid(整数), latStr(文本), lonStr(文本), certBlobHash(bytes[32]), cc(大写文本), name(文本), url(文本), port(整数), filterKm(整数), online(整数), peak(整数), timeSalt(整数)] — 16 元素 JOINT [\"FMO\", 4, \"JOINT\", callsign(文本), ssid(整数), latStr(文本), lonStr(文本), certBlobHash(bytes[32]), SH(bytes[32]), timeSalt(整数)] — 10 元素 5.5 进入 CBOR 编码前的重要规范化 字段 规范化 callsign 大写 ASCII cc（国家码） 大写，2 字符 latStr / lonStr APRS 原始字符串（如 \"3037.98N\"、\"11932.20E\"） freq（频率） 格式化为 \"%.4f\" → 文本字符串（如 \"438.5000\"），不是 CBOR float certBlobHash / SH 原始 32 字节（不是 base64url） signature 64 原始字节（不是 base64url） 6. 消","product":"FMO","section":"docs","summary":"FMO 4.0 APRS-IS 报文格式规范：包头约定、CERT/SIG 结构与消息类型定义。","tags":[],"title":"FMO (NFM Over Internet) 4.0 APRS 报文格式","url":"/docs/fmo-formate/"},{"content":"\n前言 FMO:即 NFM over internet，是通过互联网进行NFM模拟对讲通联，它服务于广大的业余无线电爱好者。\n基本信息 免责声明和隐私政策 设计特性 特性 体现 独特的设备感 FMO套件为一个高度集成的通讯单元，没有云服务商，是一种全新的\"数字电台\"，其独特的 “设备感” 与云服务商所提供的硬件设备体验完全不同。 U/V段接收 支持 144 ~ 148MHz 430 ~ 440MHz 接收。 WiFi 支持2.4G WiFi 网络连接，最多存储16个WiFi网络。 服务器发现 FMO 通过官方服务器列表与爱好者分享渠道互相发现（APRS-IS 为可选渠道），不依赖任何商业公司或开发者提供的私有服务。 仅服务持证爱好者 FMO仅服务业余无线电爱好者，需认证并绑定呼号。这套机制确保了所有参与者均为具备合法资质的同好，构建一个技术纯净、环境可靠的通信空间。 MQTT服务器热插拔 MQTT服务在FMO网络中为热插拔组件，持有FMO的爱好者可在任何时候建立、退出、删除、停止服务,建立即服务所有爱好者，退出也不影响爱好者之间通联。构建了FMO独特的“传播”。 地理围栏 可自主限定服务范围（如仅限本省、本市），服务器\\FMO用户均使用过滤器来控制自己的服务\\通联范围，双向选择。 热切换编码器 管理员可在任何时候切换服务器编码器，不影响正在通联的朋友。 服务器遥毙/管理 管理员具有遥毙服务器\\拉黑访客权限,保护自己的服务安全。 开源射频硬件 业余爱好者可根据实际情况，自由设计。（请注意当地法律法规） OTA升级 可在菜单-\u003e在线升级出直接升级,避免繁杂写频操作。 APRS短消息 您可以通过FMO向其他任何APRS用户发送短消息（RF或互联网）。 套件概览 FMO套件由三块电路板组成\nFMO套件组成部分 说明 接口 主板 它是FMO的主要部分，它负责所有边缘计算（音频流、身份协议、发现协议） 见硬件接口指南 FMO屏蔽\u0026电源板 它是FMO的电源供电部分，负责供电，屏蔽后面射频信号功能 见硬件接口指南 射频背板 附赠的专用接收部件。该背板以MIT协议开源，可接收来自手台的射频信号，它没有PA,硬件上设计为仅接收。 见硬件接口指南 本说明将套件以一个整体的方式进行阐述。\n快速使用指南 请按步骤阅读以下快速使用指南，了解一下FMO的基本操作和功能。之后您可以根据自己的兴趣和需求，深入了解FMO的各项功能和设置。\nSTEP 0: 了解FMO操作按钮 STEP 1:设备激活 提示连接网络（请连接至2.4G WiFi 网络），请按照设备界面提示操作。 手机扫描二维码注册(请确保您为业余无线电爱好者，非爱好者无法注册。该步骤需要提供您的操作证编号、姓名、手机号等信息。) 请等待人工审核通过，时间大约在1个工作日,请打开公众号推送消息通知。以下步骤，请在审核通过后继续操作，现在可以把FMO放一边儿，去做点别的。 审核通过后，请长按旋钮进行设备激活。 STEP 2: 设置您的网格和过滤器 进入[菜单]-\u003e[网格坐标]设置您的网格坐标，可扫描网格坐标设置项内的二维码，快速定位您的网格。 进入[菜单]-\u003e[过滤器]设置您的过滤器，FMO会根据过滤器来过滤服务器,注意：设置为NONE时，FMO将停止接收任何服务器广播，您将无法连接到任何服务器。建议您根据自己的实际位置和需求，合理设置过滤器，以获得更好的使用体验。 STEP 3: 调整音量 调整音量旋钮，逆时针波动为提高音量，顺时针波动为降低音量。\nSTEP 4: 切换服务器 第一次使用时，请等待服务器信息同步至您的设备。(服务器的广播周期约为10分钟)。\n有很多热心的HAM建立了服务器，在收到他们的服务器信息后，FMO会短暂的发出滴一声。\n服务器在线状态查看（基于公开的 APRS-IS 数据）： https://fmomap.com\n第三方地图(由BG9JYT开发，第三方服务，非官方提供)： https://map.fmo.net.cn/\nFMO的服务器信息来自官方服务器列表；若您主动开启了 APRS 发布功能，也会从 APRS-IS 获取其他台站的公告。如果您一直没有收到服务器，您可以检查下您的网络状态，有些时候，某些地区的APRS-IS可能会因为网络拥塞而导致服务器信息无法及时同步到您的设备上，您可以尝试切换网络环境，或者等待一段时间后再次尝试。\n注:该类地图网站本质上是APRS-IS的在线客户端,所有消息均来自于开放的APRS-IS服务器,只是它仅关注FMO的消息。您可在此处查看正在活跃的服务器和用户分布情况。以上地图均为第三方或独立服务，非FMO官方提供。*\nℹ️ 服务器自主管理提示：FMO 网络中的每个服务器都由爱好者自主搭建、自主管理——服务器管理员享有其服务器的全部权力，也负有对接入信号源的管理责任。部分服务器可能桥接了非 FMO 的音频源或呼号输入，请使用者注意分辨服务器特性（可查看服务器公告），避免误解。\nSTEP 5: 第一次FMO语音通联 当您的FMO搜索到任意服务器时，如果当前没有服务器，则它会自动尝试连接到第一个服务器。 如果您当前的服务器没有活跃用户，可通过顺时针旋转功能旋钮来切换服务器，直到找到一个有活跃用户的服务器。 您可以查看FMO屏幕左上角的频率信息,如 \"T:145.8000MHz/R:145.8000MHz\"。（您也可以进入菜单 设置接收频率和发射频率） ,其中T代表FMO的发射频率,您的对讲机接收频率需要调整至T频率；R代表FMO的接收频率,您的对讲机发射频率需要调整至R频率。 将对讲机功率调整至100mw甚至更低（如无100mw选项，请调整至最低功率）并关闭哑音。然后调整您对讲机频率T对R,R对T这里不要搞反哦，您就可以开始语音通联了！ 注意： FMO 屏幕中显示的“发射/接收频率”仅为方便用户与外部模拟手台配合使用时的频率对应提示，并不表示 FMO 本体具备射频发射功能，FMO音频来自于背板喇叭，请调整喇叭至合适音量进行通联。FMO的发射频率对应您的接收频率，FMO的接收频率对应您的发射频率。FMO的附赠背板并不支持哑音功能，请关闭手台哑音后使用。我们注意到FMO用户发现手台发射FMO没反应时，希望通过靠近FMO来加强功率，强制打开FMO的静噪，这是十分危险的行为，请按照上述操作进行仔细核对您的设置，同时避免贴贴操作。我们强烈建议将您的手台调整功率至最低功率。以避免对讲机的高功率对FMO的射频背板造成不可逆损伤！如因使用不当导致设备损坏，维修费用需要您自行承担！\nSTEP 6: 嘿，还不错，我想更深入配置FMO和登录APRS网络！ 你可以阅读本文的菜单选项部分，来了解一下FMO的各项设置功能。 每个fmo都有一个后台网站,您可以在电脑直接访问 fmo.local (需要在同一个局域网内)来进入后台配置页面,在这里您可以设置您的网格坐标、过滤器、定位方式、可达性广播等参数,您也可以在这里查看您的服务器信息,以及进行一些高级设置。需要注意的是，某些设置可能会影响您的使用体验，请根据自己的需求和兴趣进行合理的设置。请仔细阅读网站的说明哦。 STEP 7: 聊的还不错？那关注他，成为老朋友吧 短按旋钮，进入快捷菜单，选择在线列表，查看当前服务器最近活跃的友台,可以看到友台信息，选择他后可以短按旋钮关注该友台。 之后当您想和这个友台通联时，请长按旋钮呼出快捷菜单，选择您需要通联的友台，短按旋钮 您可以知道友台在哪个服务中继，最后活跃时间等信息。您可以选择跳转至对方服务器、呼叫好友、取消关注好友等操作。（需登录APRS才可查看好友信息） STEP 8: 记录通联日志，回顾美好时光 当您和某个友台通联时，FMO会自动向对方发出QSO请求，双方的通联时间、服务器、位置网格等会录入FMO的日志系统中。您可以在菜单中查看您的通联日志。(注：QSO记录默认为手动确认，您可在菜单-\u003eQSO确认中开启自动确认。) STEP 9: 我想搭建一个服务器 FMO的服务器搭建非常简单，您可以在这里查看服务器搭建教程，按照教程操作，您就可以搭建一个属于自己的服务器了！搭建服务器后，您可以邀请您的朋友连接到您的服务器上来通联，或者发送一个APRSCQ消息，邀请全部的FMO用户连接到您的服务器上来通联！ 有点忙，懒得维护了？ 没关系，您随时可以删除您的服务器，或者停止您的服务器服务，这些操作都不会影响其他服务器的正常运行,也不会影响其他服务器上的用户的正常使用。您可以随时根据自己的兴趣和需求，来管理您的服务器。 STEP 10: 想改装一个更适合自己的FMO？没问题！ FMO的射频硬件是MIT开源的，您可以根据自己的需求进行改装，您可以在我们的开源仓库中找到FMO的射频背板设计文件和程序代码，您可以根据自己的需求进行修改，甚至设计一个全新的射频背板！需要注意的是，在改装时，请务必遵守当地的法律法规，确保您的改装行为合法合规。 访问：github.com/BG5ESN 了解所有的开源信息。 STEP 12: 挺好的，说起来FMO还有什么功能吗？我想了解一下。 当然有了！ 请访问fmo.local 后台，你可以看到好几个选项,具体功能,你可以登录后台页面查看每个选项的说明,我们在这里就不赘述了,你可以根据自己的兴趣和需求，来探索FMO的各项功能哦！ STEP 13: Oops, 我的FMO似乎对友台中继造成了有害干扰！ 首先不要慌张，您可以迅速联系到服务器管理员，说明情况，让管理员暂时禁言您。同时，您可以调整FMO的设置，将静噪提高到6~7。如果您暂时在外面，可以用APRS-IS的消息功能，遥控让FMO进入待机状态（请先在菜单-\u003e远控设置中进行相关配置），访问https://github.com/BG5ESN/FMO-APRS-Remote-Control-Tool, 来获取工具, 等待回到家后，再调整回正常设置。 STEP 14: 哎，我挪了下位置，我的WiFi信号不好，我想换个WiFi 没问题,按照以下步骤进行重新配网操作： 进入菜单-\u003e配网WiFi，启用配网WiFi功能。 配网WiFi启用后会持续5分钟，在此期间，您可以使用手机或电脑连接到FMO创建的WiFi网络。 连接成功后，会自动跳转至FMO的配网界面，在这里您可以选择新的WiFi网络并输入密码进行连接。 配网完成后，FMO会自动断开配网WiFi，并连接到新的WiFi网络。 如果您需要再次进行配网操作，只需重复以上步骤即可，每次启用配网WiFi都会额外增加5分钟的配网时间。 需要注意的是，在配网过程中，请确保您的手机或电脑与FMO处于同一局域网内，以便顺利完成配网操作。 STEP 15: 我在开车,我把FMO放在车里了，要是它能记录轨迹就好了 首先,FMO不带GPS,让它去网络定位其实不怎么准确 但是！我觉得既然上车了，用手机作为它的GPS定位源也是一个不错的选择！访问这里 里边有个FMO GPS同步位置软件（Android），该软件利用手机变成FMO的GPS,让FMO在开车过程中也能同步位置了！需要注意的是，使用该软件时，请确保您的手机与FMO处于同一局域网内，以便实现位置同步功能。 STEP 16: 我想了解一下FMO的技术细节，看看它是怎么实现的，为什么可以做到这些功能，却不需要任何中心服务器的？ 当然可以！我们在这里提供了FMO的技术细节说明，您可以在这里了解FMO的设计原理、技术架构、实现细节等方面的信息。如果您对FMO的技术实现感兴趣，欢迎前往查看！ 详细说明 界面操作说明 序号 界面元素 说明 1 FMO发射频率 展示FMO的发射频率,当没有连接外设时，该元素显示 --- 背板频率可通过AT指令上报，并显示在该位置。对应对讲机的发射频率。 2 FMO接收频率 展示FMO的接收频率,当没有连接外设时，该元素显示 --- 背板频率可通过AT指令上报，并显示在该位置。对应对讲机的接收频率。 3 FMO发射功率 L 代表低功率,M代表中功率,H代表高功率,当与外设没有成功通讯时，该元素显示 -。 4 呼号 展示当前用户的呼号,当用户未认证时，该元素显示 N0CALL 用户的呼号通过CRAC认证激活后，将显示在该位置。当用户主动发言时，用户呼号将变为白色 5 过滤器 展示当前的过滤器设置,当过滤器设置为NONE时，该元素显示 NONE 代表不接收任何服务器广播,当过滤器设置为其他值时，显示该值，代表当前FMO以当前用户为中心,覆盖多大的范围。 6 通讯录符号 代表当前用户有多少个通讯录好友,当没有好友时，该元素显示 0 当有好友时，显示好友数量。 7 网格坐标 展示用户的网格,当用户未设置网格时，显示N0GRID,用户的网格通过菜单设置后，将显示在该位置。如果用户启用精确坐标，则用户网格将以蓝色显示，代表网格是通过坐标计算出来的。 8 QSO当日新增日志数量 展示当日新增的QSO日志数量,当没有新增日志时，该元素显示 0 当有新增日志时，显示新增日志数量，当没有载入时，显示-。 9 APRS状态文本及符号 当用户成功登录APRS后，APRS图标将显示天蓝色,当用户仅监听APRS时，图标将显示黄色,文本框将显示即来自APRS的状态消息信息。 10 时间 展示用户设备时间，仅在用户时间准确的情况下，才有可能收到其他服务器的广播，FMO的时间通过NTP进行设置，如果出现时钟始终无法同步的情况，请更新您的路由器的DNS设置，避免使用运营商提供的DNS（一般建议为223.6.6.6）。 11 WiFi标志 共4种状态 - 未连接：红色WiFi斜杠 - 已连接但无互联网：黄色地球 - WiFi配置中,手机未断开配网WiFi:绿色WiFi+齿轮 - 信号强度白色WiFi格子 12 电池标志 共4种状态 - 完全隐藏:设备使用USB电源 - 电池符号带问号:设备使用了4.3~4.7V之间的电源，FMO认为电源状态不稳定 - 电池电量:电池按照电压分档显示 需要注意FMO原生并不完全支持电池，该功能仅为支持大家DIY的参考功能，电压参考并不准确，仅供参考，我们不对电池符号的准确性负责，并不提供任何电池相关的技术支持。 13 服务器名称 开机时，FMO将显示请稍后...，当FMO连接到服务器后，该元素将显示当前连接的服务器名称。 14 服务器延迟 当FMO连接到服务器后，该元素将显示当前服务器的网络延迟，单位为毫秒。如果管理员的FMO公布了服务器人数,此处也将切换显示当前服务器的在线人数，格式为在","product":"FMO","section":"docs","summary":"FMO 完整使用说明书：激活、配网、通联、菜单、OTA 与注销。","tags":[],"title":"FMO (NFM Over Internet) 使用说明书","url":"/docs/fmo-usage/"},{"content":"FMO是什么？ FMO是一个基于业余无线电身份信任体系（CRAC/HAM）的技术协作网络，具备语音通信能力，但不以提供公众通信服务为目的。\n有朋友觉得FMO只是一个云平台。 为此，我在这里写下FMO的信任链。这是一个有趣的设计，我相信大家也可以通过这个思路，去开发自己的有趣的无线电玩具。 先直接回答那个质疑 如果你理解的“云平台”是：\n设备依赖云端才能工作 服务器关了设备就变砖 用户数据被厂商攥在手里 厂商随时可以背后搞鬼 那FMO不是这种云平台。\n如果你理解的“云平台”是：\n需要一个地方完成初始验证 之后FMO设备独立运行，和云端再无瓜葛 厂商跑路了FMO照用 那FMO是这种云平台\n虽然听起来有点矛盾，但读完下面的信任链，你就明白为什么了。\n在讲信任链之前，有一件事必须先说清楚：信任不是无条件的。它建立在“你提供的注册材料是真实的”这个前提上。 当你绑定FMO时。 我们需要你提供：\nCRAC操作证信息（通过官方接口验证） 身份信息和手机号 我们默认这些材料是真实的。为什么？\n因为：\n身份信息和手机号，背后是运营商的实名认证体系 CRAC操作证信息，背后是国家无线电管理机构的数据 我们不生产信任，我们只是把这些现成的信任串联起来。 如果有人用假材料骗过了验证——比如盗用他人身份信息、伪造操作证——那FMO的信任链在第一环就断了。这不是FMO设计的问题，这是现实世界任何系统都绕不开的底线：系统只能验证材料，不能验证人心。\n信任链设计 第一层：国家确认 我们不自己判断“谁是爱好者”。我们没有这个权力，也没有这个能力。绑定FMO设备时，我们直接调用CRAC官方接口验证你的电子操作证。这是国家级验证，造不了假。CRAC系统返回“通过”，流程才能往下走。这一层依赖你的材料是真实的。\n身份验证依托 CRAC 官方数据，证书体系独立运行、不依赖境外平台，FMO 的身份与治理环节自主可控。\n第二层：授权 CRAC验证通过后，开发者给你生成一张授权凭证，里面是你的呼号和你的FMO设备ID。用只有FMO知道的印章盖上去。这张凭证是用来告诉你的FMO：“这个人认证过。”这一层依赖第一层的结果是真实的。\n第三层：FMO的信任 每台FMO设备出厂时，都内置了开发者的印章样本。当你把盖了章的凭证交给FMO，它会自己核对：\n这个章是不是开发者盖的（印章样本对得上） 凭证上写的设备ID是不是我自己 核对通过，FMO就把你的签名存下来。从此以后，你每次开机，都是用的自己的认证身份。这一层依赖前两层传递下来的信任是真实的。\n信任链长这样\n你的真实材料 → CRAC接口验证 → 开发者盖章 → FMO设备存你的签名 → 你永久拥有这台FMO\n每一步都依赖上一步：\nCRAC接口依赖你提供的材料是真实的 开发者依赖CRAC的验证结果是真实的 FMO设备依赖开发盖章的凭证是真实的 你依赖FMO设备只认你的签名 如果材料是假的呢？ 如果有人用假材料通过了验证，会发生什么？\nCRAC接口会返回“通过”吗？不会，因为假操作证过不了官方接口。 但身份信息和手机号有可能被冒用（比如盗用他人身份）。 如果出现这种情况，FMO系统本身是无能为力的——没有系统能100%防住现实世界的欺诈。 我们能做的是\n严格对接官方接口，不自行判断 记录每一次绑定的材料来源，留痕备查 配合监管机构处理纠纷 但我们从一开始就没打算充当“终极裁判”。我们不掌握终极真相，我们只是把各个权威来源的信任串联起来。 那OTA升级呢？ 有人会问：你们不是还提供OTA升级吗？这不还是依赖云端？\n是的，我们提供OTA升级。但这里有个关键区别：OTA升级是一个服务，不是一个控制权。\n就像你的手机可以升级系统，但升级之前它能用，升级之后它也能用。你不升级，它照样能用一辈子。\nFMO的OTA升级也是这样：\n你可以选择升级，也可以选择不升\n升级与否，不影响你对FMO的拥有权\n即使我们关闭服务器，你的FMO依然能正常工作——只是收不到新版本而已\n我们提供升级，不代表我们控制你的设备。 这就像卖给你一辆车，顺便问你要不要来店里做保养。你不来保养，车照样开；我们店关门了，车照样开。\n所以开发者角色在这个信任中到底是什么？\n开发者在这个链条里的角色只有两个：\n信任的翻译官: 把CRAC的“这个人有证”，翻译成FMO设备能读懂的“这个人可以用我”。 信任的快递员: 在FMO设备出厂时把印章放进去，在绑定成功时把你的签名存进去。 翻译完、快递完，开发者的核心工作就结束了。\n至于OTA升级、技术支持、社区运营——这些都是附加服务，不是FMO设备赖以生存的命脉。没有这些，FMO依然是你的FMO。\n如果FMO明天不再服务了：\n已绑定的FMO设备不受任何影响 你的授权还在FMO设备里 你照常使用FMO，和今天没区别 OTA升级没了，但FMO设备本身一切正常 唯一的变化是：新用户没法绑定了（因为翻译官下班了） 这不是“云平台跑路设备变砖”的故事，这是“快递员送完货就消失，4S店关门但车照开”的故事。 你的FMO设备从一开始就没打算天天联网找我们汇报。它只在开机的时候看看你是谁，这不需要我们帮忙。 开发者不是设备的“daddy”，FMO设备也不是租给你的。FMO不是一个云服务，而是由爱好者设备自主互联形成的网络。每一台设备都拥有自己的身份、信任和连接能力。开发者只是在设备和用户第一次见面时做了介绍人，介绍完之后，设备就归用户自己了。FMO从一开始就是你的。\n至于信任的前提？那是现实世界的规则，开发者和你一样，都在规则之下。 ","product":"FMO","section":"docs","summary":"FMO 的信任链模型：从 CRAC 验证、开发者盖章到设备签名的身份设计。","tags":[],"title":"FMO(NFM Over Internet) 的信任链模型","url":"/docs/fmo-trust-chain/"},{"content":" ⚠️ 此文档已过时\n4.0 已作为默认配置，2.x.x 版本的服务器设置已过时。 请访问 FMO 语音服务器搭建指南，获取最新教程。\n⚠️ 建服前必读\n开始搭建服务器之前，请务必先阅读《FMO(NFM Over Internet) 关于生态共建与治理原则的说明》，理解 FMO 生态的共建与治理原则后再进行建设。\nSTEP0 : 服务器部署合规要求 ⚠ 使用中国大陆服务器（如 阿里云、腾讯云）且通过域名访问 → 需提前完成ICP备案。 使用境外服务器或IP直连 → 无需ICP备案，但请注意：境外服务器涉及数据跨境传输，请自行评估并遵守所在地法律法规，相关风险由运营者自行承担。 切勿在自己服务器上进行广告、商业活动，这会直接导致你的服务变为商业服务，进而引发法律风险，这是红线！ 建设Broker服务时，请将Broker仅供FMO使用，这是因为仅服务于FMO可以确保为业余无线电爱好者（请阅读 FMO的信任链模型），避免扩大化至公众通信，以降低法律风险。 您在使用FMO时，本质上是用互联网延伸业余电台的通联范围，属于技术研究和自我训练的范畴。请务必确保你的服务器仅用于合法的业余无线电活动，并且采取必要的安全措施来防止滥用，这不仅是对法律的遵守，也是对业余无线电社区的负责。 必须遵守 中华人民共和国无线电管理条例 和 中华人民共和国网络安全法 等相关法律法规，确保服务器的合法合规运营。 若不具备基本服务器运维能力（安全、端口控制、访问限制等），不建议自行部署。 FMO网络不以规模为目标，建议以小范围、可控的爱好者网络为主,过度扩展可能引发不必要的法律和安全风险。 STEP1 : 安装MQTT Broker FMO的MQTT Broker需要以下条件，您可以自行确认符合这些条件。\n条件 说明 具有公网访问权限 FMO需要通过公网访问MQTT Broker，您需要确保MQTT Broker具有公网IP地址或域名。 非加密访问 FMO不支持加密访问MQTT Broker，您需要确保MQTT Broker不使用SSL/TLS加密。 对于MQTT Broker的搭建，我们推荐使用EMQX或Mosquitto。它们都是开源的MQTT Broker，支持多种平台和语言。您可以根据自己的需求选择合适的MQTT Broker进行搭建。如果您已经有MQTT Broker，可以跳过此步骤。\n下面以EMQX为例，介绍如何搭建MQTT Broker。\n访问\nEMQX官网\n按照官方文档进行安装和配置。\n确保您的MQTT Broker能够正常运行，并能够接受来自FMO设备的连接。\n装完EMQX以后,就完成了MQTT Broker的搭建。\nSTEP2 : 配置MQTT Broker的用户名密码 接下来需要您配置一个用户名密码，以方便FMO连接MQTT Broker。\n打开您的FMO,在菜单-\u003e凭证条目下，长按旋钮，稍等一秒，此时系统生成了一组凭证,将这组凭证设置在您的MQTT Broker上即可。\n设置完毕后,您就已经完成了MQTT Broker的搭建和配置。 注意：我们强烈建议您先用测试工具验证MQTT Broker的连接性，有朋友反馈说哎？怎么都连不上，事实上输入了错误的用户名密码。\nSTEP3 : 配置FMO内需要广播的信息 FMO内置了一个网页,您可以通过该网页配置需要广播的信息。请严格按照网页的指导说明进行配置即可。\n通常来说需要配置如下内容\n配置项 说明 自定义服务器地址 可以是IP或域名，需要直接指向您的服务器地址 自定义服务器端口 常规非加密端口为1883，需要直接指向您的服务器地址 APRS PASSCODE 这是您登录APRS的密码，可以在APRS官网申请 服务器名称 这是您服务器的名称，支持中英文,设置后,会显示在您的FMO上 APRS个性化消息 这是您可以自定义的APRS消息内容，便于在网络中识别您的设备 STEP4: 服务器安全性 请在配置完成您的服务器后 仅保留MQTT 服务端口,并关闭其他所有端口。\n以上配置后，FMO服务器已经可以运行。如果您对安全性有进一步要求：请 根据文档FMO服务器安全设置指南 进行进一步配置，注意：此步骤对配置要求较高。\n","product":"FMO","section":"docs","summary":"FMO 2.0 语音服务器搭建指南（已过时，仅供旧版固件参考）。","tags":[],"title":"FMO (NFM Over Internet) 语音服务器搭建指南 2.0","url":"/docs/fmo-server-construction-2-0/"},{"content":"服务器安全性指南 如果您搭建了服务器，那么安全性是您第一位要考虑到。所以这里有一些关于客户端的安全设置。以防止未授权登录。\nJWT安全性须知 Secret安全性 交给您的 Secret 是非常重要的安全保证，请不要随意泄露该Token。每个服务器的Secret都是不同的，请不用担心重复的Secret问题 数字签名 JWT 使用了数字签名方式，（与给您的Secret一起组成验证方案），保证了无法伪造的登录字符串，所以不用担心其他伪造的客户端登录您的服务器，为了保证您服务器的安全，也不要泄露任何用户的token到第三方 服务器之间的安全性 所有的用户JWT Token都是独一无二，且只能用来登录您的服务器的。同样的，其他服务器的token也是无法登录您的服务器的，请您放心使用该种加密方式 ACL控制 在每个用户的JWT token中，都包含了登录控制ACL。未授权用户即使购买了没有注册的的设备，您的服务器也不会受到无端的输入包干扰 license控制 我们提供了2个控制字段 license：True/False 这个字段用来控制您是否允许未注册的朋友登录 例如您设置了Claim为 license:True，那么没有包含该字段的设备是无法登录您的服务器的 isbanned:True/False 这个字段用于控制列入黑名单的设备是否允许登录，当有的用户被第三方举报以后，我们会采取拉入黑名单的方式，一旦该设备进入黑名单，您可以通过设置该字段为False,保证黑名单设备不会登录您的服务器 ","product":"CWO","section":"docs","summary":"CWO 服务器的 JWT 认证、ACL 与黑名单控制等安全设置。","tags":[],"title":"CWO(cw over internet) 服务器安全性指南","url":"/docs/cwo_server_safety/"},{"content":"目前我们没有开放第三方授权代理店铺。 请注意甄别，以免产生损失。 章节 请按照章节顺序阅读，以免遗漏重要信息\n1.CWO简介 2.注意事项 3.使用说明 4.其他功能 5.按键定义 6.Q\u0026A 7.频率使用倡议 8.意见建议 文档固件对应版本: v1.3.21 如有勘误或意见，请通过邮件联系我们：xifengzui@yeah.net 1. CWO简介: 模拟真正的CW通联（广播式通联） 高保真输入采样 CW实时解码，使用聚类算法解码，提高CW解码的准确度 热插拔五孔机械键盘轴，支持多种轴体 CW电键输入支持 灯光、瀑布图指示,就像一个迷你的SDR短波电台 CW多模式（自动，半自动，手动） OTA固件升级，你有想法，我们来实现 建立你自己的服务器（参考CWO服务器搭建） 屏保在线模式，变身为酷炫桌搭，信号在线提醒，保持在线，朋友上线立即通联 竞赛日历全新上线，帮助你实时掌握国际无线电赛事 2. 注意事项:⚠ ⚠ ⚠ 操作证书要求说明 如果使用者没有操作证，在使用CWO时，可能会遇到如下问题\n无法发送只能收听 为了避免影响持证爱好者的正常练习和避免违规使用，我们需要确认使用者为国家操作证书持有者,。 无法登录 CWO的服务器系统由爱好者们自行建立，服务器的权限在业余无线电爱好者自己的手中，当他们关闭非持证爱好者的登录权限时，您将无法登录。 设备显示 NO CALLSIGN 设备会自动从云端服务器拉取您的callsign，如果您没有操作证书，这意味着您不可能有callsign，所以设备将一直提示您注册。 3. 使用说明: 注册成为CWO的使用者 请使用微信扫描说明卡片或设备开机屏幕上的二维码。 同意我们的隐私政策，填写您的个人信息。（该步骤存在人工审核，请在审核后继续使用）\n配置WIFI网络连接 网络连接需要使用您的智能手机进行配置。您需要先在手机上安装 ESP SoftAP Prov\n下载APP 安卓 苹果 点击下载 或扫码 请在应用商店搜索 ESP SoftAP Provisioning 获取并安装应用 扫码配网 进入 菜单-\u003enetwork-\u003eReconfig 打开ESP SoftAP Prov，点击右上角的扫码按钮，扫描CWO的二维码。 扫描后手机将提示您连接一个名为“CWO”的设备，请连接。 连接后，设备将开始扫描环境wifi列表，如果扫描到您的家庭WIFI，请点击连接并输入密码进行连接。（如果您的手机没扫描到wifi，可能是因为环境wifi过多或其他错误，您可以点击软件上的Join Other network手动输入wifi信息）。 当连接界面提示您连接成功时，此时可以短按cwo的旋钮，回到wifi页面（注意可能会有一会会卡顿）。 长按旋钮退出。 配网问题 原因 解决方案 扫描不到wifi 搜索Wifi异常 尝试Join Other Network按钮手动输入您家里的wifi信息 不支持5Ghz wifi cwo使用的是2.4GHz wifi,请确保您的wifi兼容2.4G模式 其他异常 cwo可能因为一些异常无法配网，可以插拔CWO电源后试试 连接“CWO”wifi后自动断开 手机提示你当前\"CWO\"无法上网时，您误操作了 确保配网开始时，手机连接CWO 扫码扫不出来 相机权限错误 进入配网软件，点击“i dont have QR code,此时会跳出wifi页面，请确保连接至“CWO”，然后点击下一步、下一步，直到搜索页面，这个效果和扫码一样 选择服务器: 菜单-\u003eserver-\u003e在列表中选择服务器中进行选择，选择后，会提示成功或者失败。服务器是CWO通联的核心，您可以选择自己搭建服务器，也可以选择其他爱好者搭建的服务器。当进行此项操作后，您的个人信息也会同时被更新和同步下来。\n设置您的使用习惯 您可以在设置 菜单 -\u003e settings 页面设置您的使用习惯,以下是设置项目的描述信息\n设置项 说明 CW Mode: 选择您的CW模式，有自动，半自动，手动三种模式（同时应用至机械键盘轴和外部电键输入） Auto A：发送连续的点\\划，双键同时捏发时连续发送点\\划,捏发松手时立即结束 Auto B:发送连续的点\\划, 双键同时捏发时连续发送点\\划，捏发松手时会多发一个点\\划 Semi-Auto：仅发送一个点或者划 Manual：触发后连续发送音调 Manual A: 触发后连续发送音调，但屏蔽左声道输入(用于3.5mm电键2节电键短路情况，需要注意，使用该模式可能导致ota无法进入/退出insider模式) Manual B: 触发后连续发送音调，但屏蔽右声道输入(用于3.5mm电键2节电键短路情况，需要注意，使用该模式可能导致ota无法进入/退出insider模式) Timezone: 选择您的时区，以便显示正确的时间 Volume: 选择您的音量大小 LED: 开关机械键盘轴的灯光 Screen Saver： 屏保模式开关。打开屏保模式后。 5分钟后屏幕变暗 屏幕显示您的呼号和时间 CW喇叭关闭 CW指示灯会在中心频率周围35个频点有通联时闪烁 共有5分/10分/15分/30分/60分/off 选项 Swap Input: 交换点划输入，如果您的点划发送习惯刚好和默认的点划配置相反时，您可以设置此项，以交换点划的输入。（同时应用至机械键盘轴和外部电键输入） CW Tone: 设置您的CW音调，范围为500hz~3khz 步进10hz，需要注意的是该tone不仅是您的蜂鸣音，接收方也将播放和您一致的蜂鸣音。这将增强通联的体验感。 Backlight: 设置背光亮度 Speed: 设置自动模式下的速度，单位为WPM，速度从15~60WPM Ham Band 标准业余无线电频率，启用该模式，将会把频率范围限制在业余无线电频段，关闭以后，频率将允许从1.000~30.000之间自由选择。该限制仅作ham间的通联对应参考，无实际意义。 Decoder 解码器开关，当关闭解码器后，位于主界面的解码器将不再工作 TX 发送开关，当关闭发送后，您的按键输入不会发送到其他设备上，但是设备的解码功能和指示灯将正常闪烁，方便您自己练习 HID MODE HID 模式开关，我们提供了3种HID模式，分别为键盘模式\\鼠标模式\\音量旋钮，您可以根据自己的需求进行选择 键盘模式：设备将模拟键盘设备，您的CWO通联解码内容将以键盘的方式在您的电脑上输出文本，供您保存通联记录 鼠标模式：设备将模拟鼠标设备，CW信号将以鼠标左键的方式点击，供您在一些练习网站上进行训练 音量旋钮: 当您选择此项目，在待机模式下，您可以通过旋钮调节音量大小，当您通联时，此功能不可用 Ring Tone 待机界面下的特殊消息提示音开关 3.5mm Jack 选择3.5mm电键输入口的功能 KEY:电键输入，当选择此项时，您可以通过3.5mm电键输入口进行通联 Earphone:耳机输出，当选择此项时，您可以插入耳机进行音频收听 Standby RX 熄屏模式下的接收开关 Multi:多通道接收，当选择此项目时，待机时设备会收听当前全屏的信号 Single:单通道接收，当选择此项目时，待机时设备只会收听当前频率的信号 High Contrast 高对比度模式，打开该模式时，主界面频率字体将使用白色字体，关闭后使用默认橙色字体 Word Split 解码器的词间隔控制，共有短\\中\\长三个选项，用于解码器的单词组合的参数信息 Boot Shortcut 处于主界面时，boot按钮长按的快捷功能 TX Switch：主界面长按BOOT按钮，快捷开关发送 WPM Tune: 主界面长按BOOT 按钮，可以快速调速 范围15~35 Mode Switch: CapsLock HID MODE设置为键盘模式时，输出的字符大小写控制 PowerBank 充电宝支持，启用该功能后，设备在休眠时，电流不会降低，防止充电宝休眠，但是会增加功耗。 通联: 恭喜您设置完毕，您可以使用物理按钮进行通联了，在通联的时候，这里有些信息您还可以了解一下：\n信息公开 您的消息会被所有在相同信道的朋友收听到,所有信息都是公开的 服务器延迟 服务器都会有大约100ms~1s延迟，软件中会根据延迟自动进行缓存补偿，所以耐心一点点，您的消息会被其他人收到的。 插入保护 需要break in 的时候，是无法打断正在进行中的通联的，请耐心等待通联结束后至少2秒，才能插入成功。 服务列表更新 在 菜单-\u003eserver-\u003e点击pull按钮，就能获取最新的服务器列表。 日志列表 在 菜单-\u003esettings-\u003elog，您可以查看您最近的通联记录。 日志备份 在network页面，有一个网址，访问该网址，可以备份您的内部记录日志 竞赛消息 短按BOOT按钮，此时您可以进入待机时钟，此时再长按BOOT按钮，您可以进入竞赛消息页面，可以查看最近2天的竞赛消息，该功能适合竞赛追逐者们使用。 自定义服务器 如果您有空闲服务器，可以按照自建服务器指南进行自行搭建，搭建非常简单。 特殊消息 我们支持一些有趣的指令，帮助您享受通联的乐趣，在主页面敲入如下字符就可以使用 CALL [callsign] 使用CALL指令，可以呼叫指定呼号的朋友，他会在上线后收到您的提醒，用法: CALL BG5ESN。该操作不管对方在哪个频率，都能够收到，目前暂不支持跨服使用。 CFM 使用CFM指令，可以快速双方确认，用法: CFM 对方呼号 CFMQ 使用CFMQ指令，可以快速双方确认，用法: 双方通联后，可快速使用 CFMQ 进行日志确认（CFMQ连在一起不可有空格） CFM\\CFMQ 需要双方在5分内 进行操作，UTC日期相同的一天，同个呼号仅可确认一次。 4. 其他功能: 多信号同频瀑布图: 在通联的时候，您可以通过瀑布图看到当前信道附近的信号情况，目前支持最多35个通道的同屏显示。 CW灯光指示: 在通联的时候,CW灯将闪烁。 机械键盘轴: 您可以更换您喜欢的机械键盘轴，支持通用五孔机械键盘轴。 OTA升级: 进入 菜单-\u003einformation-\u003e点击OTA按钮，当有新的固件版本发布时，您可以选择upgrade进行升级 恢复出厂设置 进入菜单-\u003einformation-\u003e长按BOOT按钮5秒以上，您将听到嘀嘀嘀，然后设备重启，此时设备参数将被全部抹除（注意，当您重新选择服务器后，您的个人信息将重新恢复至设备中） 外部电键 如果您有外部电键，您可以通过外部电键输入进行通联. 将您的电键插入底部的3.5mm电键插孔，即可使用外部电键进行通联。 电键的物理形式为：开关，导通发送，断开停止。左、右声道分别代表点和划。具体配置可在菜单-\u003econfigs中进行设置。 5.按键\u0026界面定义 外观定义 说明 通联指示灯 通联指示灯 按键背光 可在设置中进行开关 频率调谐按钮/菜单旋钮/按键 在主界面，可通过旋转来选择频率。长按进入菜单，旋转可在页面之间切换 DASH/DOT发送按钮 发送点或划（在手动键时，任意键都可发送点或划），可在设置中设置Swap Input 交换点划 液晶彩屏 分辨率280x240 熄屏按钮 短按可以熄屏，此时设备静音，当通联发生时指示灯依然会保持闪烁。 复位按钮 遇到异常死机时，可以点按该按钮进行复位 五轴机械键盘轴热插拔插座 您可自定义更换机械键盘轴 电源供电口1/2 供电口1/2带有串口/调试功能 电源供电口1 支持鼠标、键盘、音量旋钮功能 电源供电口2 支持串口功能，波特率115200,字符串\"TONE,[频率],[持续时长]\\n\"可使cwo发音。 外部电键3.5mm接口/耳机输入口 您可在此插入您的电键，如果要交换电键，它的设置和物理旋钮是一致的。同时也支持将其作为耳机输出口使用。 喇叭 2014小喇叭 6.Q\u0026A 问题 解答 如何忘记已经连接的WiFi 在network界面下，长按boot按钮忘记 CWO支持5G Wifi吗？ 不支持，很抱歉因为硬件限制，CWO只支持2.4G wifi 可以保存几个WIFI？ 能保存8个wifi,设备会保存最后连接的8个wifi 为什么每次重启都要重新配置WiFi？ 遇到这种问题一般是您启用了隐藏wifi，cwo是根据热点名称连接的，请设置WiFi为非隐藏 解码为什么有延迟呢？ CWO使用了聚类算法进行解码，为了提高解码的准确度，会有一定的延迟。 为什么我收不到对方的通联信息？ 请检查您的网络连接是否正常，如果正常，请检查您的服务器号与对方是否一致，如果服务器正常，请检查您的频率是否和对方一致。 我没法配网，有办法不配网使用吗？ cwo会自动连接一个名为cwonet的热点，热点密码设置为cwo12345后，cwo就会自动连接到该wifi上 如何升级固件 在information界面下，点击OTA按钮，选择upgrade 如何恢复出厂设置 在information界面下，长按boot按钮5秒以上 如何选择服务器 在server界面下，选择服务器 如何设置我的使用习惯 在settings界面下，设置您的使用习惯 如何扫描配网 在network界面下，打开ESP SoftAP Prov，点击右上角的扫码按钮，扫描CWO的二维码 如何更新服务器列表 在server界面下，点击pull按钮 如何使用CALL功能 在主界面下，使用CW莫尔斯码输入CALL [callsign]，用法: CALL BG5ESN 如何使用外部电键 将您的电键插入底部的3.5mm电键插孔，即可使用外部电键进行通联。 如何使用HID模式 在settings界面下，选择HID MODE，选择您需要的模式 音量旋钮不起作用 在settings界面下，选择HID MODE，选择VolumeKnob,该模式仅在待机界面下生效。 如何使用待机接收 在settings界面下，选择Standby RX，选择您需要的模式 网始终扫描不到 可以在配网软件中选择Join Other Network，然后输入您的SSID和密码 7.CWO频率使用倡议\u0026说明 频点 建议速度 说明 7.000~7.010 15~20WPM 初学入门通联实践，大家可以按照通联模板进行练习交流。主要就是熟悉基本通联规则 7.011~7.040 15~30WPM 进阶练习，解码器为辅，大家在此频段自由练习，提高自己实战水平 7.041~7.050 15~40WPM 强制无解码器，适合进行高阶实践通联，大家可以在此频率自由通","product":"CWO","section":"docs","summary":"CWO 使用说明：注册配网、服务器选择、通联操作与设置项详解。","tags":[],"title":"CWO(cw over internet) 使用说明","url":"/docs/cwo_usage/"},{"content":"搭建前提\n一句想对大家说的话（会推送到每台 CWO 设备）。 一台有公网 IP 的服务器（云服务器、自建服务器甚至路由器均可）。 推荐不小于 3M 的上传带宽。 搭建流程\n安装 EMQX（CWO 后端基于 MQTT 的发布/订阅特性）。 访问 你的域名或IP:18083 进入 EMQX 管理界面（默认 admin / public），首先修改默认密码。 进入 客户端认证，添加 JWT 认证，按文档图示配置参数。服务器 Secret 由官方发放。 将服务器地址、姓名、呼号、邮箱、联系方式及想对大家说的话（英文）发送至 xifengzui@yeah.net 申请加入服务器列表；收到 Secret 后填入配置。 之后每台 CWO 设备会在线更新服务器列表。 安全要点\nSecret 是重要的安全保证，请勿泄露；每个服务器的 Secret 各不相同。 JWT 使用数字签名，其他服务器或伪造客户端无法登录你的服务器。 每个用户的 JWT 中包含 ACL 登录控制；还可通过 license 字段控制是否允许未注册用户登录、通过 isbanned 字段控制黑名单设备登录。 CWO 服务器申请曾暂停，恢复情况请以自建服务器指南页面公告为准。\n","product":"CWO","section":"kb","summary":"CWO 服务器基于 EMQX + JWT 认证，需要公网 IP 与不小于 3M 的上传带宽。","tags":["CWO","服务器","EMQX","JWT","Secret","安全"],"title":"CWO 服务器搭建与管理","url":"/kb/cwo-server/"},{"content":"在 菜单 -\u003e settings 中可以设置你的使用习惯，各设置项说明如下：\n设置项 说明 CW Mode CW 发送模式，同时应用于机械键盘轴和外部电键。Auto A：连续发送点/划，松手立即结束；Auto B：松手时多发一个点/划；Semi-Auto：仅发送一个点或划；Manual：触发后连续发送音调；Manual A/B：屏蔽左/右声道输入，用于 3.5mm 手键（2 节电键）短路的情况 Timezone 时区，用于显示正确时间 Volume 音量大小 LED 机械键盘轴灯光开关 Screen Saver 屏保模式：5 分钟后屏幕变暗，显示呼号和时间，CW 喇叭关闭，中心频率周围 35 个频点有通联时指示灯闪烁。可选 5/10/15/30/60 分钟或 off Swap Input 交换点划输入，适用于点划习惯与默认配置相反的情况 CW Tone CW 音调，范围 500Hz~3kHz、步进 10Hz。不仅是你的蜂鸣音，接收方也将播放一致的蜂鸣音 Backlight 背光亮度 Speed 自动模式下的速度，15~60 WPM Ham Band 启用后频率范围限制在业余无线电频段；关闭后可在 1.000~30.000 之间自由选择。该限制仅作通联对应参考，无实际意义 Decoder 解码器开关，关闭后主界面解码器不再工作 TX 发送开关。关闭后按键输入不会发送到其他设备，但解码功能和指示灯正常，方便自己练习 HID MODE HID 模式：键盘模式（解码内容以键盘方式输出到电脑，方便保存通联记录）、鼠标模式（CW 信号以鼠标左键点击，适合在练习网站上训练）、音量旋钮（待机时用旋钮调节电脑音量，通联时不可用） Ring Tone 待机界面下的特殊消息提示音开关 3.5mm Jack 3.5mm 接口功能：KEY 为电键输入，Earphone 为耳机输出 Standby RX 熄屏模式下的接收开关：Multi 多通道接收（收听当前全屏信号），Single 单通道接收（仅当前频率） High Contrast 高对比度模式：主界面频率字体白色，关闭为默认橙色 Word Split 解码器词间隔控制，短/中/长三档，用于单词组合参数 Boot Shortcut 主界面长按 BOOT 按钮的快捷功能：TX Switch（开关发送）、WPM Tune（快速调速 15~35）、Mode Switch（快速调整发送模式） CapsLock HID 键盘模式下输出字符的大小写控制 PowerBank 充电宝支持：启用后休眠时电流不降低，防止充电宝休眠，但会增加功耗 使用建议：新手先按默认设置通联一次，再按需调整 CW Tone、Speed 与 Swap Input；练习时把 TX 关闭即可只收不发。\n","product":"CWO","section":"kb","summary":"菜单 -\u003e settings 中的设置项：CW 模式、音调、速度、解码器、HID、屏保与待机接收等。","tags":["CWO","设置","CW Mode","音调","速度","HID","屏保","解码器"],"title":"CWO 设置项详解","url":"/kb/cwo-settings/"},{"content":" 文档 内容 AT 协议指南 主板与电台背板之间的串口协议：TTL 3.3V、19200bps、8N1，支持 AT+NAME、AT+BANDCAP、AT+TXFREQ、AT+RXFREQ、AT+SQL、AT+TXPWR 等指令 APRS 报文格式 FMO 在 APRS-IS 上的报文格式规范 语音数据包协议 FMO 语音数据包的完整线格式规范 数字证书格式 用户证书与信任链相关的证书格式说明 4.0 技术模型 身份可信 + 网络开放的架构设计与取舍 硬件接口定义见硬件接口指南；开源仓库列表见开源资源与二次开发入口。\n","product":"FMO","section":"kb","summary":"AT 指令、APRS 报文、语音数据包与数字证书格式等开发者文档的入口。","tags":["协议","AT指令","APRS","语音编码","证书格式","开发者"],"title":"协议与格式文档索引","url":"/kb/protocol/"},{"content":"关注友台\n短按旋钮进入快捷菜单，选择 在线列表，查看当前服务器最近活跃的友台。 选择某个友台后短按旋钮即可关注。 呼叫与查看好友\n长按旋钮呼出好友菜单，选择需要通联的友台。 短按旋钮可以看到对方所在服务器、最后活跃时间等信息。 可以选择跳转至对方服务器、呼叫好友、取消关注好友等操作。 查看好友信息需要登录 APRS。在线列表展示当前服务器最近活跃的 32 个友台，统计数据在开机后开始统计。 在线列表只是最近活跃摘要，不提供详尽的在线名单，这是有意的设计，详见FMO 服务器是什么定位？。 好友状态查询需要**登录 APRS-IS（填写 PASSCODE）**方可使用，登录方法见如何登录 APRS、发送 CQ。 列表中出现红色呼号，表示该友台来自不同集群，详见如何举报违规行为。\nAPRS 登录与 CQ 见如何登录 APRS、发送 CQ。\n","product":"FMO","section":"kb","summary":"通过在线列表关注友台，长按旋钮呼出好友菜单，可跳转对方服务器、呼叫或取消关注。","tags":["好友","关注","在线列表","呼叫","通讯录"],"title":"如何关注友台、呼叫好友","url":"/kb/follow-friends/"},{"content":" 设备卡入异常状态或配置混乱时，进入 菜单 -\u003e 重置设备，该操作会删除所有配置文件并恢复出厂设置。 也可以在主界面同时按住菜单键 + 按住旋钮，保持约 30 秒，同样可以恢复出厂设置（4.0.27 及以上版本）。 设备完全死机时，可点按设备上的复位按钮进行硬件复位。 重置设备会清空配置，但不会删除设备私钥。如果要转赠或出售设备，请在重置后按如何转赠或出售 FMO 删除私钥。 注意：4.0.27 之前的版本，在主界面同时按住菜单键 + 旋钮会清除设备的数字证书。操作前请先确认固件版本，注意操作安全。\n删除私钥后设备会恢复为未激活状态，需要重新走注册激活流程；后台自删证书与私钥后申请恢复有时间与次数限制，详见 FMO 使用说明书 - 设备重置与转赠限制。\n","product":"FMO","section":"kb","summary":"菜单重置设备，或主界面同时按住菜单键+旋钮约 30 秒（4.0.27+），均可恢复出厂状态。","tags":["重置","恢复出厂","死机","复位","配置清理"],"title":"如何恢复出厂设置","url":"/kb/factory-reset/"},{"content":"转赠/出售前必须删除设备私钥，否则你的呼号身份会留在设备中，可能被后续持有者冒用。\n进入 菜单 -\u003e 配网WiFi，启用配网 WiFi。 用手机连接 FMO 创建的热点。 在配网页面的 系统操作 中，选择 删除私钥 并确认。 删除后，你的呼号身份将从设备中彻底清除，设备恢复为未激活状态；新用户拿到后可像新机一样重新注册激活，生成属于自己的新私钥。 还有哪些注意事项\n私钥是你的呼号身份的数学化身，无法重置。更多关于私钥风险与处置的说明，请阅读关于提取设备私钥的温和提醒。 设备首次注册一年内可申请恢复；超过一年后需要重新申请注册。此类恢复请求单个设备仅处理一次。 正常转赠的设备绑定全新用户不受上述限制，按首次注册流程操作即可。 反复转赠、来回倒腾设备的异常用户，可能不再颁发数字证书。 如果是想彻底注销账号，请参考如何注销设备与账号。 ","product":"FMO","section":"kb","summary":"转赠或出售前务必删除设备私钥，让设备恢复未激活状态，避免呼号身份被冒用。","tags":["转赠","出售","二手","删除私钥","未激活","重置"],"title":"如何转赠或出售 FMO（删除私钥）","url":"/kb/transfer-device/"},{"content":"FMO 支持随时重新配网，更换 WiFi 后无需重置设备：\n进入 菜单 -\u003e 配网WiFi，启用配网 WiFi 功能。 配网 WiFi 会持续 5 分钟。用手机或电脑连接 FMO 创建的热点。 连接成功后一般会自动跳转到配网页面；如果没有自动跳转，可在浏览器访问配网页面地址。 在页面中选择新的 WiFi 网络并输入密码。 配网完成后 FMO 会自动断开配网热点并连接新网络。 需要再次配网时重复以上步骤即可，每次启用都会额外增加 5 分钟配网时间。 注意事项：\nFMO 仅支持 2.4G WiFi，请确认路由器开启了 2.4G 频段。 配网时手机/电脑需与 FMO 处于同一局域网，且不要提前断开 FMO 的热点。 最多可存储 16 个 WiFi 网络，FMO 会自动连接可用网络。 ","product":"FMO","section":"kb","summary":"通过菜单启用配网 WiFi，手机连接后自动跳转设置页，选择新网络并输入密码即可。","tags":["配网","WiFi","换网","2.4G","热点","网络"],"title":"如何配网、更换 WiFi","url":"/kb/wifi-setup/"},{"content":"三个组件的分工\n组件 作用 SAS（认证） 通过根证书 → 中间证书 → 用户证书的证书链，验证登录者是否为持证爱好者 FAS（审计） Web 审计面板（默认端口 9527），比对数据包“声明身份”与“连接身份”，不一致自动拉黑、踢下线、留痕 EMQX（授权） 通过主题权限控制谁能发布服务器状态、静音列表、遥毙等敏感主题 EMQX 主题权限要点\n管理员客户端（如 FMO-你的呼号-XXXX）可发布/订阅 FMO/REGU/MUTELIST、FMO/REGU/SERVER_REMOTE_CONTROL、FMO/SERVER_INFO、FMO/PROFILE 及其 /SRV/# 子主题。 所有普通客户端禁止发布上述管理主题，仅允许订阅；普通通联主题 FMO/TELE、FMO/RAW、FMO/QSO/#、FMO/LATE/#、FMO/USER_RIG 允许发布与订阅。 这样可防止非管理员用户发布敏感信息。 FAS 常见问题\n友台一登录就被拉黑：通常是未安装 SAS，或把 EMQX 的“客户端认证”误配成了“客户端授权”。修正配置后，之前被误拉的呼号可在 FAS 黑名单页手动解封。\n其他建议\nEMQX 的 Docker 版本重启容器后会恢复默认 18083 登录信息，请确认后再使用。 不要把 EMQX API Secret、SAS 凭证等敏感信息泄露给他人。 ","product":"FMO","section":"kb","summary":"SAS 负责认证、FAS 负责审计、EMQX 主题权限防止非管理员发布敏感信息，三者配合保障服务器安全。","tags":["服务器","安全","SAS","FAS","EMQX","权限","黑名单","ACL"],"title":"服务器安全加固：SAS、FAS 与 EMQX 权限","url":"/kb/server-security/"},{"content":"什么是梅登黑德网格\n梅登黑德网格（Maidenhead Locator）是业余无线电常用的全球定位网格系统，用来快速标识台站的大致位置。它把地球按经纬度划分成格子，用一串字符表示，精度越高字符越长：\n层级 组成 格子大小 场（Field） 2 个大写字母 20°×10° 方（Square） 2 个数字 2°×1° 子方（Subsquare） 2 个小写字母 5′×2.5′ 常见的 4 位网格表示到一个「方」，6 位表示到「子方」。例如：北京大约在 OM19，杭州大约在 PM00，深圳大约在 OL12 附近。\nFMO 怎么使用网格\n网格决定 FMO 的位置身份：未设置时显示 N0GRID；启用精确坐标后，主界面网格以蓝色显示（代表由坐标计算得出）。 网格是发现服务器的圆心：FMO 以你的网格为中心、过滤器值为半径画圆，圆内的服务器才会被保留和连接。 警告：网格字符不能随意设置\n梅登黑德网格的字符是编码出来的地理坐标，不是昵称。随意设置网格字符，会被设备当成地球另一端的位置。 一旦网格离实际位置过远（例如乱填导致指向大西洋或非洲），你与国内服务器的距离就会超出过滤器半径，导致无法搜索到国内服务器。 请务必使用 菜单 -\u003e 网格坐标 内的二维码扫码快速定位，或准确填写自己所在位置的网格。 网格与过滤器的设置方法见如何设置网格坐标与过滤器。\n","product":"FMO","section":"kb","summary":"梅登黑德网格是业余无线电的全球定位网格；网格是 FMO 发现服务器的圆心，乱填会搜不到国内服务器。","tags":["梅登黑德","Maidenhead","网格","定位","科普","OM19","PM00"],"title":"梅登黑德网格是什么","url":"/kb/maidenhead/"},{"content":"本表格用于登记 FMO 生态内认可的信息，由协议维护方授权管理员维护，我们将在适时推出开发者计划，敬请关注。\n","product":"FMO","section":"docs","summary":"FMO 生态内认可信息的登记表（授权信息）。","tags":[],"title":"Fmo(NFM Over Internet) 授权信息","url":"/docs/fmo-trust-org/"},{"content":" 为什么要开放协议？ 因为业余无线电的精神，在于\"看得懂、玩得转\"。我们开放这份语音数据包格式，核心期望是让大家能开发出兼容网络——不只读懂协议，而是能够基于它造出自己的设备、客户端、授权模式和网络，让网络由参与者共同演化。另外，随着阶段的发展，FMO也进入了第二阶段：协议开放期。\n为什么会有厂家标识(Vendor)？ 我们维护厂家标识（vendor），更多是为了让大家都遵守同一种语音编码规则。 一份共同的线格式，是不同设备、不同服务器之间能够互通的前提。它是一份\"共同语言\"，不是一道准入壁垒。\n如果你是设备开发者 我们希望你有自己的主张：\nFMO 开发者不会替你解决网络兼容问题。我们已经公布了所有设计思想和文档，当前阶段，您完全可以参考这些，搭建您自己的网络。当然这里会有一些门槛，这些需要您自己设计，而不是CCCV。\n请务必尊重每个服务器：\n你应自己发行一个信任根与互联网络，能否被接纳，取决于每一个服务器管理员们，而不是我这种设备的开发者。 因为我们从没声明过，也从没要求过大家建立服务器，大家只是拿到了设备，看了我们的文档，觉得理念相符，就建立了服务器。另外，管理员们从来都不是 FMO 项目开发者的的私有资产，他们不是客户，也不是员工，他们有权、有能力、也有自己的想法。大家只是因为共同的理念在一起，而不是因为我们要求他们在一起。\n如果你的设备做得优秀，思想先进，相信每一位网络管理员都会欢迎它，届时互联经由管理员们自然就实现了。\n当然，你可以开发一个运行于自己的服务器端专有设备，这比发行一个根要轻松一些，我们认为这是良性的，干净的设计。\n但如果只是想做一个\"虚拟客户端\"，借 FMO 的私钥接入网络，我们不推荐这种做法；若你仍选择它，请对自己的所有行为负责 参考文章:关于提取设备私钥的温和提醒。\n我们真心希望你的设备，能够以良好的信任，优秀的设计，赢得所有管理员的欢迎，当他们把您的网络合并进他们的的服务器时，相信你的喜悦会远胜于“只是做了一个虚拟客户端”。\n开放格式，不意味着开放一切 动手之前，请了解几点期望与边界：\n身份仍受 PKI 系统约束：\n即使你有能力开发兼容语音协议设备，但不意味着你可以畅通无阻的行走在FMO的各个服务器之间，目前FMO网络里真实的身份要求仍然是强制的。你应当自己去赢得管理员们的信任，发行自己的信任根，或让管理员们接受你的服务器理念，或和他们沟通，或让他们自然接受你的设计。总之做好自己的审核，让他们主动接纳你吧。\n帧结构由 FMO 项目方主导：\n本协议定义的帧结构不接受外部 PR 变更申请，演进建议请通过 FMO 项目方渠道提出，保证全网互操作性。\n兜底机制始终在场：\n爱好者们的服务器可能会部署 FAS 审计自动拦截身份冒用，这是FMO的规则，您可以设计自己的身份方案，但请不要试图绕过 FAS 审计，这是对服务器们的尊重，也是对自己的负责，另外服务器管理员拥有自主管理的黑名单；如果出现了严重的违规行为，我们也会对严重越界行为的用户启动数字证书吊销（CRL）。\n参与者的责任：\n如果你是服务器管理员，想桥接外部源，请对你的服务器输入源负责——接入你网络的音频与身份，是你需要把关的第一道门，如果你的服务器出现了问题，第一责任人依然是你自己。\n我们最终期望的，是一个平行的网络：\n不是一棵中心的树，而是一片由热心的管理员们各自搭建、又彼此融合的网络。管理者有自己的主张，设备有自己的设计，大家在同一个语音编码规则下自由互通。\n我们欢迎每一个热爱钻研的人。你探索、你学习、你为自己的行为负责——这正是 FMO 想传递的业余无线电精神。\n本文定义语音数据格式，供实现互通的设备/服务器参考。所有多字节字段均为小端序。文档以一条语音消息从外到内逐层展开：消息包 → 传输帧 → 编码语音帧 → 编码载荷。\n1. 协议总览 消息包（≤1400B） ├─ 消息头（固定 64B） └─ 传输帧 × N（N 个编码语音帧聚合） ├─ 传输帧头（8B） └─ 编码语音帧 ├─ 编码语音帧头（8B） └─ 编码载荷 ├─ OPUS 帧 （变长，约 40-60B / 40ms） └─ RADPCM 帧 （固定 328B / 80ms） 发送端：模拟音频 → 采样 → 编码（OPUS/RADPCM）→ 编码语音帧 → 传输帧 → 消息包 → 网络发布 接收端：网络接收 → 解析消息包 → 拆分传输帧 → 解析编码语音帧 → 解码 → 模拟音频输出 公共音频参数：采样率 8000 Hz，16-bit 有符号，单声道。\n2. 消息包 2.1 语义 一条消息包是语音数据的基本传输单元，携带同一发送者的一段连续语音。包头为固定 64B，其后为 1..N 个传输帧（见 §3）。\n2.2 消息头（64B） 业务头 45B + 扩展区 19B：\n偏移 大小 字段 说明 0 2 version 包版本，当前为 1 2 4 vendor 数据包厂家标识（0=FMO），见 §2.3 6 4 UID 发送者用户 ID 10 12 callsign 呼号，不足补 0 22 4 streamBeginUTC 语音流起始时间（UTC ms） 26 4 timestamp 本包生成时间（UTC ms） 30 4 len 整个消息包长度（含头部） 34 2 frameNum 本包内传输帧个数 36 4 checkSum CRC32，仅覆盖帧区 40 1 smeter S 表强度 41 4 srvUID 当前连接服务器 UID 45 19 reserved 扩展区，总头长固定为 64B 2.3 厂家标识（vendor） vendor 字段标识数据包的生产厂家，用于设备识别与溯源。发放区间：\n区间 类别 获取方式 0x0000 ~ 0x0FFF 保留区（FMO 项目方） 不开放，他人不得使用 0x1000 ~ 0x1FFF 实验区 自由取用，不登记、不审核 0x2000 ~ 0x2FFF 软件区 自由取用，不登记、不审核 0x3000 ~ 0xFFFFFFFF 正式区 经 fmo-raw-vendor-id 仓库 PR 申请审核后登记 软件实现（PC/Web/SDK 等无硬件载体）请使用软件区；实验/原型项目请使用实验区，无需申请；自由取用不构成 FMO 的 ID 分配，不具权威，ID 冲突由 FMO 项目方裁决。 严禁使用保留区（0x0000 ~ 0x0FFF）或冒用已登记正式 ID（0x3000 起及注册表中已有条目）。 正式区注册按申请顺序分配，要求提供硬件实拍照片（含手写日期+呼号纸条）等诚意证明。 所有 vendor ID 由 FMO 项目方分配，厂商自行分配的 ID 无效。 vendor 仅用于设备识别/溯源，不参与鉴权（鉴权依赖证书体系）。 声明：厂家编码分配仅为开放登记，不构成我方对申请厂家及其产品的任何认可、背书或保证。我方不担保注册厂家的设备体验、协议实现正确性、安全性或与网络的互通质量，相关责任由厂家自行承担；对严重违反协议或损害通联网络的厂家，我方保留拒绝注册或撤销编码的权利。\n3. 传输帧 3.1 承载语义 一个传输帧承载一个编码语音帧，即一次编码周期的输出，对应固定时长的语音：OPUS 帧为 40ms、RADPCM 帧为 80ms。传输帧是消息包与编码语音帧之间的传输层单元，第一个传输帧紧贴消息头之后。\n3.2 帧结构（8B 头） 偏移 大小 字段 说明 0 2 index 帧序号，从 1 开始递增 2 2 len 含本帧头在内的长度 4 4 reserved 保留 8 - data 编码语音帧载荷 3.3 聚合语义 发送端把连续产生的编码语音帧依次追加为传输帧；当追加后超过 MTU = 1400B，或聚合时长达到 250ms 时，结束当前消息包并发布。 因此一个消息包通常含 ≤6 个 OPUS 帧（40ms/帧）或 ≤3 个 RADPCM 帧（80ms/帧）。 接收端按 frameNum 与 index 将消息包拆回逐个传输帧，依序解码播放；聚合超时机制保证语音不因攒包而额外延迟。 4. 编码语音帧 4.1 语义 编码语音帧是一次编码的输出，独立携带 compressMode 声明编码类型，并自带长度，接收端可据此与解码器解耦。\n4.2 帧结构（8B 头） 偏移 大小 字段 说明 0 1 compressMode 编码类型，见下表 1 2 len 含头在内的整个编码语音帧长度 3 5 reserved 保留（编码参数扩展位） 8 - raw 编码载荷起始 4.3 编码类型（compressMode） 值 编码 0 PCM（预留，不用于网络传输） 1 OPUS 2 RADPCM 5. 编码载荷（raw） 5.1 OPUS 帧 OPUS 编码器的直接输出，无额外包头，长度变长（编码参数见 §6.1）。\n5.2 RADPCM 帧（固定 328B） 8B 帧头 + 320B 数据区：\n偏移 大小 字段 说明 0 2 frame_index 帧序号（0 起，uint16_t 范围内循环） 2 2 recover_pcm 编码开始时预测器值 4 1 step_index 编码开始时步长索引（0-88） 5 1 reserved 保留 6 2 adpcmBytes 数据区有效字节数（=320） 8 320 数据区 每字节 2 个 4-bit 样本：高 nibble 为第 1 个，低 nibble 为第 2 个；共 640 样本（80ms） 兼容性注记：早期实现的 adpcmBytes 为 8-bit 字段（线值因宽度截断实际为 64，且帧头含未初始化填充字节）。新实现按 16-bit 读写，并兼容旧格式包（以其低字节判定）。建议新实现直接使用 16-bit 语义。\nrecover_pcm 与 step_index 组成帧恢复点：丢包后解码器据此重置 IMA 编解码状态（见 §6.2）。\n6. 编码规范 6.1 OPUS 参数 值 采样率 / 通道 8000 Hz / 1 应用模式 VoIP（OPUS_APPLICATION_VOIP） 比特率 自动（OPUS_AUTO） 复杂度 / 信号 4 / 语音（OPUS_SIGNAL_VOICE） VBR / VBR 约束 启用 帧长 40ms（320 样本 / 640B PCM） 最大带宽 超宽带（受 8kHz 采样率限制，实际 ≤4kHz） 自动比特率推导：\nbitrate = 60 × Fs / frame_size + Fs × channels = 60 × 8000 / 320 + 8000 × 1 = 1500 + 8000 = 9500 bps（约 1.19 KB/s）→ 每帧约 47.5B，VBR 下典型 40-60B 6.2 RADPCM 每帧 640 样本（80ms，1280B PCM）→ 320B ADPCM，压缩比 4:1（不计帧头）。 直流抑制（编码器侧）：y[n] = x[n] - x[n-1] + R·y[n-1]，R = 0.999（Q15 32735），截止约 1.3Hz。 丢包恢复（解码器维护 last_frame）： 1. last_frame == 0xFFFF（首帧）→ 用帧恢复点重置状态 2. frame_index == 0 → 视为新语音序列开始，重置状态 3. frame_index != last_frame+1 → 检测到丢包，用帧恢复点重置状态 4. 其余 → 连续帧，正常解码 IMA 核心算法：\n89 级步长表 IMA_STEP_TABLE： 7, 8, 9, 10, 11, 12, 13, 14, 16, 17, 19, 21, 23, 25, 28, 31, 34, 37, 41, 45, 50, 55, 60, 66, 73, 80, 88, 97, 107, 118, 130, 143, 157, 173, 190, 209, 230, 253, 279, 307, 337, 371, 408, 449, 494, 544, 598, 658, 724, 796, 876, 963, 1060, 1166, 1282, 1411, 1552, 1707, 1878, 2066, 2272, 2499, 2749, 3024, 3327, 3660, 4026, 4428, 4871, 5358, 5894, 6484, 7132, 7845, 8630, 9493, 10442, 11487, 12635, 13899, 15289, 16818, 18500, 20350, 22385, 24623, 27086, 29794, 32767 16 项索引表 IMA_INDEX_TABLE = {-1,-1,-1,-1, 2, 4, 6, 8, -1,-1,-1,-1, 2, 4, 6, 8}。\n编码：diff = pcm - predictor，按 step = STEP_TABLE[step_index] 逐级比较生成 4-bit 码（bit3 符号，bit0-2 增量），delta 自 step\u003e\u003e3 基线起累加，predictor、step_index 限幅（-32768..32767、0..88）后更新。\n解码：由 4-bit 码重建 delta（step\u003e\u003e3 基线 + 各 bit 增量），更新 predictor 后输出。\n说明：发送/接收端可另做音频滤波等增强处理，不影响上述线格式与互通。\n7. 尺寸速查 项 字节数 编码语音帧头 8 传输帧头 8 消息包头 64 OPUS 帧载荷 约 40-60（变长） RADPCM 帧载荷 328（固定） RADPCM 帧独占一条消息时总尺寸：64 + 8 + 8 + 328 = 408B / 80ms；OPUS 约 130B / 40ms。实际多帧聚合共享消息头，单帧摊薄后更小。\n8. PTT冲突控制 8.1 设计原则 对讲机通信本质上是半双工的：同一信道在任意时刻只应有一个发送者，否则语音会互相覆盖（混叠）。FMO 把这种约束从射频链路延伸到了网络链路，通过三层机制保证多设备、多服务器场景下通联的公平与有序：\n层次 机制 作用范围 信道感知 占用检测 设备 ↔ 本地对讲机 方向互斥 单一数据方向通道 设备内部收发 网络仲裁 路由抢占裁决 设备 ↔ 设备 / 跨服务器 目标是：谁先开口谁优先，但任何一方都不能无限期独占信道；被更高优先级打断的","product":"FMO","section":"docs","summary":"FMO 语音数据包开放协议：线格式与厂家标识（Vendor）说明。","tags":[],"title":"FMO(NFM Over Internet) 语音数据开放协议","url":"/docs/fmo-voice-codec-spec/"},{"content":"本文介绍了一些爱好者在使用FMO过程中的实践经验和案例分享，供大家参考和借鉴。 如果您有自己的FMO使用经验，欢迎投稿分享给我们！ 您可以通过以下方式联系我们：\n发送邮件至: xifengzui@yeah.net 通过粉丝群AT我,我将添加您的设计到本文中 本文章节也欢迎转载和引用,但请注明出处和作者信息。 需要注意的是：\n我们不推荐\\也不鼓励任何非业余无线电相关用途的实践分享（如组建商业团队无线网络、开展商业活动等），请确保所有分享内容均符合业余无线电相关法规和道德规范。 我们不对任何实践分享内容的合法性和合规性负责,请各位爱好者自行判断和承担风险。 实践内容仅供参考,不构成任何形式的技术支持或保证，我们亦不会为任何实践内容引发的后果负责。 实践内容不作为官方参考指南,请勿将其视为权威信息。 硬件实践亦不作为官方推荐购买，我们不对任何硬件实践的质量和性能负责,如遇到任何问题，请主动与分享该制作的作者联系。 针对某个内容，如我们遇到频繁投诉或纠纷，我们保留删除相关内容的权利。 请尊重原创作者的劳动成果,未经允许请勿擅自修改和转载。 FMO秉持着松散的开放设计原则\n我们认为不应该有过多的 “官方设计”,而是应该鼓励爱好者们根据自己的需求和兴趣进行创新和实践。\n我们相信，正是这种开放和自由的精神，才能推动业余无线电技术的发展和进步。\n以下是一些爱好者的实践分享：\n实践名称 实践简介 详情链接 作者 详细图文版服务器搭建教程 相比官方的简略教程,该教程更为详细,适合初学者参考 点击查看 BG6HFD 服务器集群教程 介绍如何让多个服务器中继 “互联” 点击查看 BG6HFD 服务器集群安全配置 介绍如何配置服务器集群的安全设置,保护服务器免受攻击和滥用 点击查看 BG6HFD FMO的设置相关页面 该专栏BG6HFD整理了FMO服务器相关的所有文章，感兴趣的爱好者可以查看 点击查看 BG6HFD 使用EIDE编译背板程序 介绍如何使用EIDE来编译和烧录FMO背板程序 点击查看 BH4GXF FMO全包围外壳 该外壳由爱好者设计,可以完整包裹FMO主机和对讲背板,提供更好的保护和美观 点击查看 BD7OPT FMO+CWO合体外壳 该外壳由爱好者设计,可以将FMO和CWO合体在一起,实现更紧凑的设计 点击查看 BD7OPT FMO锂电池供电板（独立充放电管理） 该供电板由爱好者设计,可以为FMO提供锂电池供电,并具备独立的充放电管理功能 点击查看 FAS_SPACE FMO地图 该地图由爱好者独立提供服务器、独立编写了前后端，通过实时抓取APRS网络上的FMO节点信息显示的地理位置和状态（第三方服务，非FMO官方提供） 点击查看 BG9JYT FMO外壳 该商品化外壳由火星青年设计 点击查看 BH4XIX FMO日志在线查看工具 该工具可以上传用户自己的日志,然后查看自己的QSO信息 点击查看点击查看仓库 BH5HSJ FMO改造-Battery Panel DIY 该背板为喜欢原版FMO设计的HAM提供较完美的电池解决方案；对原版FMO尽量少的修改；适合FMO裸机使用者。 点击查看 BI4AUZ FMO服务器搭建视频教程 该教程是BG2GZK制作的服务器搭建视频教程 点击查看 BG2GZK FMO本地监听控制APP\\网页软件 该软件由BG9JYT\\BG5EIT\\BH6RGQ\\BG4LLK 共同开发完善，可以实现实用又美观的FMO控制，目前项目开放在GITHUB上 点击查看 BG9JYT\\BG5EIT\\BH6RGQ\\BG4LLK FMO PAB 背板 该背板直接替换了原版FMO的背板,提供了手咪接口和更丰富的功能 点击查看 BI4KQN 台网点名软件 由BH1JSS开发，方便点名主控进行点名 点击查看 ","product":"FMO","section":"docs","summary":"爱好者们的 FMO 实践分享：服务器教程、外壳改装与第三方工具合集。","tags":[],"title":"FMO(NFM Over Internet)实践分享","url":"/docs/fmo-user-shares/"},{"content":"# 目前FMO硬件说明已更新至2.x版本,所有文档均已同步更新。 # 修正了一处文档说明错误 2025/10/8 # 增加了多pin排线接口说明 2026/1/24 FMO电台版本 说明 V1.x 实验性设备,目前已停止支持 V2.x 正式版本 下图是FMO的硬件接口图，您可以通过它来了解FMO的通讯接口\n条目 极限值 典型值 范围 IO电压 3.3V 3.3V - 供电电压 5.5V 5V 3.7~5V 电流 1A(瞬间脉冲) 200ma - 接口 类别 说明 GND Power 地线 AT EN OUTPUT AT命令使能引脚，FMO将通过该脚控制背板AT指令使能或关闭。 NET PTT INPUT 用于向网络发送数据的PTT引脚,高有效,FMO将采样AIN端音频，并发送至网络。 Radio PTT OUTPUT FMO使用该引脚控制对讲机发送音频，高有效,当收到网络音频时，FMO将拉高该引脚,并从AOUT输出音频。 TX OUTPUT 串口端,接对讲板RX接口。 RX INPUT 串口端,接对讲板TX接口。 5V Power 电源引脚,3.7~5V供电,直通USB电源。 NC NC 未定义 AIN+ INPUT 模拟音频输入引脚,接对讲机音频输出(不超过200mv) AIN- INPUT 模拟音频输入引脚,接对讲机音频输出(不超过200mv),如果单端输入,可接地。 AOUT+ OUTPUT 模拟音频输出引脚。 AOUT- OUTPUT 模拟音频输出引脚,如果单端操作,该引脚可接地。 免责声明 用户自行改装风险 本产品仅限按照官方提供的说明书及设计用途使用。任何未经授权的拆解、改装、软件刷写或硬件改动均可能导致产品损坏、性能异常、安全风险及丧失保修资格，由此产生的一切后果由用户自行承担。\n技术中立与法律责任 本产品作为技术工具，其设计、制造和销售均遵守技术中立原则，不预设任何非法或侵权用途。 若用户利用本设备从事违法行为（如破解加密系统、干扰通信网络、传播违法信息等），责任完全由用户承担。产品提供方保留依法追究滥用者法律责任的权利，并可能配合执法机构进行调查。 用户使用本设备即代表承诺：不将其用于任何违反适用法律或侵犯他人权利的用途。 用户不得利用本产品从事任何违反所在国家/地区法律法规的行为（包括但不限于干扰公共通信、侵犯隐私、破坏网络安全等）。因用户行为导致的法律责任均与产品提供方无关。\n非法内容与滥用责任 用户在使用本设备时，须严格遵守所在国家/地区的法律法规。产品提供方明确声明：\n禁止非法用途：用户不得利用本设备制作、存储、传输或接入任何非法内容（包括但不限于盗版资料、恶意软件、淫秽信息、恐怖主义相关内容等），亦不得用于任何侵犯他人权利（如隐私权、知识产权）的行为。\n责任归属：因用户行为导致的任何法律纠纷、行政处罚或第三方索赔，均与产品提供方无关，用户须自行承担全部责任及赔偿。\n配合义务：若因用户违法行为导致产品提供方被卷入调查或诉讼，用户应无条件配合提供证据，并赔偿产品提供方因此产生的所有损失（包括律师费、诉讼费等）。\n内容监控免责：本设备不具备主动监控或过滤用户内容的功能，产品提供方无法对用户生成或传输的内容负责。\n安全警示 本产品可能包含高压电路、精密元件或其他潜在危险部件。非专业人员擅自维修或改装可能导致触电、火灾等安全事故，请务必联系官方售后处理。\n免责范围 产品提供方不对以下情况承担责任： 因用户自行改装、误操作或未遵循说明导致的损坏； 因不可抗力（如自然灾害、电压异常）造成的故障； 因使用非原厂配件或兼容部件引发的问题； 因产品被用于非设计用途导致的直接或间接损失。\n保修 产品保修仅适用于正常使用条件下的原厂状态设备，任何改装痕迹均可能导致保修失效。\n其他声明 本产品可能受出口管制法规限制，用户需自行确保使用行为符合当地法律要求。\n","product":"FMO","section":"docs","summary":"FMO 硬件接口定义：电气参数、引脚说明、改装免责与保修。","tags":[],"title":"FMO(NFM Over Internet)硬件接口指南","url":"/docs/fmo-hw-interface/"},{"content":" ⚠️ 此文档已过时\n4.0 已作为默认配置，3.x.x 版本的服务器设置已过时。请访问 FMO 语音服务器搭建指南，获取最新教程。 3.0版本更新特别感谢 BI1THT。\n⚠️ 建服前必读\n开始搭建服务器之前，请务必先阅读《FMO(NFM Over Internet) 关于生态共建与治理原则的说明》，理解 FMO 生态的共建与治理原则后再进行建设。\n什么是JWT JWT（JSON Web Token）是一种开放标准，如果您对jwt非常感兴趣，可访问 jwt.io 学习关于jwt的更多知识。在此我将以简易的说明，讲述2.0和3.0区别：\n用户视角的FMO 2.0.0授权机制：您的FMO收集大家在aprs上分发的用户名密码，然后您的fmo使用用户名密码登录的大家的服务器。\n用户视角的FMO 3.0.0授权机制：您的FMO收集大家分发在aprs上的Secret，然后您的fmo打包您的个人信息，使用Secret利用签名算法将您的个人信息签名，组装成临时登陆令牌，并用该令牌登陆大家的服务器。\n在3.0.0机制下：服务器登录日志里记录的，将不再是无法识别的设备来源，而是各个设备独一无二的呼号和您的唯一标识；此外，服务器的关键信息将仅在fmo设备内部被处理，从协议层面杜绝了用户查看服务器密码的可能，大大减少了暴露风险。另外过期机制将保证即使密钥泄漏，对方也无法长时间利用您的密钥进行破坏。\n我们强烈建议用户尽快升级3.x.x 版本服务器，以带来更好的安全性。\nFMO如何广播 FMO支持以“代理广播”的方式（可选，默认关闭）广播爱好者所搭建的MQTT Broker。具体原理可访问aprs.org: 《Build a High-Speed Data Exchange HamNet Based on APRS-IS》 By BG5ESN （境外英文技术参考，访问请自行判断）了解FMO的广播工作原理。\n详细操作说明 STEP1: 安装\nFMO使用MQTT Broker进行数据交换，我们建议您安装EMQX的MQTT Broker（或Mosquito附带JWT插件版本），您可以根据自己的需求选择合适的MQTT Broker进行搭建。在这里我们简述如何使用EMQX版本进行安装。 访问\nEMQX官网\n按照官方文档进行安装和配置。确保您的MQTT Broker能够正常运行，并能够接受来自FMO设备的连接。\n提示 EMQX的docker版本在您重启容器后，会恢复默认18083登陆端口的登陆信息，该部分可能有安全隐患，请仔细确认后使用。\nSTEP2: 生成Secret\n启动您的FMO，点击[菜单]-\u003e[凭证],如果此时Secret内为空，您可以[长按]旋钮，以生成一个完整的Secret。该Secret由大小写字母+数字组成。长度共32自字节（256bit）。由于生成的Secret非常长，为了方便大家获取，这里提供了一个快捷方法用以快速复制此处长串的Secret， 请访问fmo后台配置网页(fmo.local或ip地址直接访问)，进入[参数设置]，找到[服务器设置]章节。在此处，您可以找到Secret复制相关操作说明，请按照操作，并复制Secret。\nSTEP3: 设置EMQX服务器\n登陆您的MQTT 18083端口 进入后台设置。 点击左侧竖栏-\u003e[客户端认证]，进入客户端认证设置界面 在客户端认证设置界面，点击右上角 [+创建]，认证方式选JWT，并点击下一步 数据源无需选择，点击下一步 配置参数页面，按照下述参数进行配置 选项 值 JWT来自于 password 加密方式 hmac-based Secret 在此处粘贴您在STEP2所获得的Secret Secret使用base64编码 否 过期后断开连接 是 Payload是用来设置特殊的用户绑定，这里可以对授权进行二次验证。我们点击[添加]并增加以下2个参数\nClaim Expected cid ${clientid} call ${username} 说明：这里使用了verify_claim技术，verify_claim可一让指定的jwt字符串和用户所登陆的参数进行一比一绑定。\nℹ️主题安全性说明：FMO在出厂时即通过ACL，在fmo的jwt中遇先规定了登陆权限，所以您无需再在服务器上设置相应登陆权限。如果您有更强的安全性要求，可以按照您的需求自行设置主题安全性。\nSTEP4: 设置并广播服务器信息\nFMO内置了一个网页,您可以通过该网页配置需要广播的信息。请严格按照网页的指导说明进行配置即可。 通常来说需要配置如下内容\n配置项 说明 自定义服务器地址 可以是IP或域名，需要直接指向您的服务器地址 自定义服务器端口 常规非加密端口为1883，需要直接指向您的服务器地址 APRS PASSCODE 这是您登录APRS的密码，可以在APRS官网申请 服务器名称 这是您服务器的名称，支持中英文,设置后,会显示在您的FMO上 APRS个性化消息 这是您可以自定义的APRS消息内容，便于在网络中识别您的设备 服务范围 您可以规定您的服务器所覆盖的范围 当您配置完毕后，您应当可以在自己的服务器列表中看到您自己的服务，首先请尝试登陆您的服务器。如果登陆失败，请仔细检查设置。 如仍然无法解决，可在群内进行沟通咨询（我们不提供服务器相关技术支持，需要您自行研究）。\n请确保您的服务器属于活动状态（活动状态：您登陆于自己的服务器，并在24小时内，服务器上有活动语音）。然后在十分钟内，您的fmo将开始您服务器的第一次广播。\n至此您的FMO服务器已设置完毕。\n服务器部署合规和须知\n⚠ 若使用中国大陆服务器（如 阿里云、腾讯云）且通过域名访问 → 需进行ICP备案。\n⚠ 切勿在自己服务器上进行广告、商业活动，这会直接导致你的服务变为商业服务，进而引发法律风险，这是红线！\n⚠ 建设Broker服务时，请将Broker仅供FMO使用，这是因为仅服务于FMO可以确保为业余无线电爱好者（请阅读 FMO的信任链模型），以符合业余无线电业务定义，避免被归类为公共通信服务，增加法律风险。\n⚠ 您在使用FMO时，本质上是用互联网延伸业余电台的通联范围，属于技术研究和自我训练的范畴。请务必确保你的服务器仅用于合法的业余无线电活动，并且采取必要的安全措施来防止滥用，这不仅是对法律的遵守，也是对业余无线电社区的负责。\n⚠ 必须遵守《中华人民共和国无线电管理条例》 和 《中华人民共和国网络安全法》 等相关法律法规，确保服务器的合法合规运营。\n⚠ FMO网络不以规模为目标，建议以小范围、可控的爱好者网络为主,过度扩展可能引发不必要的法律和安全风险。\n⚠ 所有爱好者感谢您的付出, 但请不要让它影响您的工作和生活。\n⚠ 尽管FMO做到了合规持有证书业余无线电爱好者应有的自律和克制，并建立了完整的信任链模型让爱好者们实现透明自我管理，但在服务器的管理责任和运营风险方面，服务器运营者需要承担更大的风险，请仔细思考您是否能承受相关风险，并以您自己的思考作为行动指南。如有相关考量，请不要进行服务器搭建。\n⚠ 以上分析仅代表技术理解，不构成法律意见。业余无线电互联网互联的合规边界仍在探讨中，使用者需独立评估并承担相应法律责任。\n","product":"FMO","section":"docs","summary":"FMO 3.0 语音服务器搭建指南（已过时，仅供旧版固件参考）。","tags":[],"title":"FMO (NFM Over Internet) 语音服务器搭建指南 3.0","url":"/docs/fmo-server-construction-3-0/"},{"content":"当前状态\n我们目前正在进行非豁免产品注册。等待非豁免产品注册完毕后，我们将着手开始开发者计划，以支持小规模的爱好者设备接入网络。\n接入通常经过三个步骤\n短时测试证书：用于开发验证阶段，设备可短期接入网络进行测试。 短时公开证书：仅针对硬件开发者开放，并非所有人都能申请；需先通过短时测试证书的验证，以确认其社会责任的履行能力，才可申请，让设备在公开网络中运行。 商业授权：如果有更大的生产计划（规模化生产），将走商业授权。 如不希望使用我们的商业授权，开发者可自行发行根证书，并可与各服务器管理员沟通加入。此限制仅针对规模化生产商，小规模爱好者可以持续使用短时公开证书。\n计划进度\n开发者计划正在计划中，敬请期待。具体细则将在非豁免设备注册完毕后进行声明。\n现有开源资源见开源资源与二次开发入口，授权机构信息见开发者授权。\n","product":"FMO","section":"kb","summary":"非豁免产品注册完成后将启动开发者计划，支持小规模爱好者设备接入；分测试证书、公开证书、商业授权三步。","tags":["开发者计划","证书","测试证书","公开证书","商业授权","接入"],"title":"FMO 开发者计划","url":"/kb/developer-program/"},{"content":" 当你和某个友台通联时，FMO 会自动向对方发出 QSO 请求，双方的通联时间、服务器、位置网格等信息会录入日志系统。 在 菜单 中查看通联日志；快捷菜单中的 查看通联日志 可导航至日志界面。 主界面会显示当日新增的 QSO 日志数量。 QSO 记录默认为手动确认，可在 菜单 -\u003e QSO确认 中开启自动确认。 快捷菜单中的 重发QSO请求 可以重发最近的 QSO 请求（需已与对方通联过）。 开发者与高级用户还可以：\n将 QSO 日志转换为 ADIF 格式（FMO-sqlite-2-adif）。 使用 Ed25519 签名验证日志（fmo-log-sign-verify-tool）。 ","product":"FMO","section":"kb","summary":"FMO 自动记录通联日志，可在菜单查看；QSO 默认手动确认，可在菜单中改为自动确认。","tags":["QSO","日志","通联记录","自动确认","ADIF"],"title":"如何查看通联日志与 QSO 确认","url":"/kb/qso-log/"},{"content":"网格和过滤器是 FMO 发现服务器的两个核心参数。\n设置网格坐标\n进入 菜单 -\u003e 网格坐标 设置你的网格坐标。 网格坐标设置项内附有二维码，可扫码快速定位你的网格。 也可以进入网页后台 fmo.local 使用精确定位方式；启用精确坐标后，主界面网格会以蓝色显示。 网格是什么、为什么不能乱填，见梅登黑德网格是什么。\n设置过滤器\n进入 菜单 -\u003e 过滤器 设置过滤范围。 过滤器的原理是：以你的网格为中心、过滤器值为半径画一个圆，圆内的服务器会被保留，圆外的会被过滤掉。 服务器端也复用同一个过滤器逻辑，其他 FMO 收到服务器广播时会判断该服务器是否服务于你的位置。 注意：过滤器设置为 NONE 时，FMO 将停止接收任何服务器广播，你将无法连接到任何服务器。\n","product":"FMO","section":"kb","summary":"网格决定 FMO 的位置身份，过滤器决定你能发现和连接多远范围内的服务器。","tags":["网格","坐标","过滤器","N0GRID","定位","范围"],"title":"如何设置网格坐标与过滤器","url":"/kb/grid-filter/"},{"content":"通联须知\n信息公开：你的消息会被所有在相同信道的朋友收听到，所有信息都是公开的。 服务器延迟：服务器约有 100ms~1s 延迟，设备会根据延迟自动缓存补偿，请耐心等待。 插入保护：需要 break in 时无法打断正在进行中的通联，请等通联结束后至少 2 秒再插入。 特殊指令（主界面用摩尔斯输入）\n指令 用法 说明 CALL CALL 对方呼号 呼叫指定呼号的朋友，他上线后收到提醒；不管对方在哪个频率都能收到，支持跨服（会显示发送者所在服务器） CFM CFM 对方呼号 快速双方确认 CFMQ CFMQ 双方通联后的日志确认，CFMQ 连在一起输入、不可有空格 CFM / CFMQ 需要双方在 5 分钟内操作；UTC 日期相同的一天内，同一个呼号仅可确认一次。 日志\n查看：菜单 -\u003e settings -\u003e log，可查看最近的通联记录。 清理：在 log 页面长按 Boot 按钮，选择确认即可清理，见如何注销、转赠与清理日志。 备份：在 network 页面有一个网址，用浏览器访问即可备份设备内部记录日志。 竞赛消息与日历\n短按 BOOT 按钮进入待机时钟，再长按 BOOT 按钮可进入竞赛消息页面，查看最近 2 天的竞赛消息，适合竞赛追逐者使用。 竞赛日历可实时掌握国际无线电赛事。 ","product":"CWO","section":"kb","summary":"CALL / CFM / CFMQ 特殊指令、插入保护、通联日志查看与备份、竞赛消息与日历。","tags":["CWO","通联","CALL","CFM","CFMQ","日志","竞赛"],"title":"如何通联：特殊指令、日志与竞赛消息","url":"/kb/cwo-qso/"},{"content":" 现象 可能原因 处理 收不到任何服务器 过滤器设置为 NONE；网络异常；APRS-IS 拥塞 检查过滤器；切换网络环境；等待后重试（服务器广播周期约 10 分钟） 某台服务器不见了 管理员 FMO 未再广播 / 24 小时无通联活动 正常现象：服务器首次广播后活跃 24 小时，只有正在活动的服务器才会出现，见FMO 服务器是什么定位？ 服务器列表搜索较慢/不全 服务器由各管理员独立管理，同步速度慢 开机后等待 10-30 分钟完全同步网络上的所有服务器 服务器列表一直不更新 设备时间不同步 检查 NTP / 路由器 DNS，建议使用 223.6.6.6 等公共 DNS 有固定频率底噪 电源干扰 更换电源线或电源适配器 有咔嗒声 手台开启了哑音 关闭手台哑音（FMO 背板不支持哑音） 对方听不到我 频率 T/R 设置反了；功率或哑音设置不对 核对 T/R 频率对应关系，功率调至最低并关闭哑音 电压显示电池问号 电源电压不稳或外接电池 4.3V ~ 4.7V 之间一般可忽略；持续出现请检查适配器/数据线 配网失败 / 扫描不到 WiFi 不支持 5G；隐藏 SSID 使用 2.4G WiFi；关闭 SSID 隐藏后重试 我的服务器凭证是空的 未生成凭证 长按旋钮生成服务器凭证 设备异常想重置 — 见如何恢复出厂设置 更多问答请查看 FMO 使用说明书 - 问题和解答。\n","product":"FMO","section":"kb","summary":"收不到服务器、没有声音、咔嗒声、底噪、电池符号、配网失败等常见问题的快速排查。","tags":["故障","FAQ","排查","没声音","收不到服务器","底噪","配网失败"],"title":"常见问题排查（FAQ）","url":"/kb/troubleshooting/"},{"content":"激活时收集的信息\n为实现设备激活与合规使用，会收集：业余无线电操作证号、呼号、姓名、联系方式、设备唯一识别码（设备 ID）。操作证信息会与 CRAC 等官方/授权机构数据交叉验证；真实姓名与联系方式用于履行网络安全法等法规要求的溯源义务。\nAPRS 数据与跨境传输\nFMO 出厂默认处于 “仅监听”模式，不会主动上传你的呼号、位置、设备状态等信息。 只有你主动登录 APRS（填写 PASSCODE）后才会进入“主动发布”模式；位置发布精度（关闭/模糊网格/精确坐标）由你自行设置。 主动发布模式下，公开语音、呼号、设备 ID 等可能经境外第三方服务器中转，相关风险需自行评估。 可以随时将 PASSCODE 重置为 -1 恢复“仅监听”模式。 没有私密服务器：FMO 遵循业余无线电的开放精神，通联与 APRS 信息都是公开的，不存在私密服务器，请把每次通联都当作公开通信对待。\n数据保留与你的权利\n个人信息在账户有效期间保留；注销账户后，将在法律要求的必要期限内保留核心身份信息（操作证号、呼号、姓名），其他信息删除或匿名化处理。 你有权查询、更正个人信息（依法需配合监管的信息除外）。 完整条款见免责条款与隐私政策。\n","product":"FMO","section":"kb","summary":"激活时收集操作证号、呼号、姓名、联系方式与设备ID；注销后仅保留法定追溯所需的核心身份信息。","tags":["隐私","数据","个人信息","跨境","PASSCODE","仅监听"],"title":"我们收集哪些数据？注销后如何保留？","url":"/kb/privacy-data/"},{"content":"服务器管理相关功能都在 FMO 的 菜单 中：\n功能 说明 凭证 用于自建服务器的用户名 / 密码；凭证为空时长按旋钮生成 服务器广播 控制是否在 APRS 上广播自己的服务器信息（默认关闭） 服务器遥毙 服务器管理员遥毙自己的服务器 编码器 在高保真 / 高压缩比两种编码器之间热切换，所有连入的 FMO 会立即更新 联合管理 多服务器联合时，每个管理员可单独管理自己服务器登录的设备（标准 / 集群+标准 / 仅集群） 语音缓存 标准（固定缓存，大延迟下更完整）/ 智能（动态调整，更实时流畅） 编码器选择建议\n高保真：支持 APRS / SSTV / DTMF 等音频数传协议，音质更好，约 8KB/s。 高压缩比：仅支持语音，但极高压缩比可让 4M 上行带宽服务上百人，约 1.5KB/s。 自主管理原则\n每台服务器都由爱好者自行搭建、自行管理，管理员享有服务器的全部权力，也负有对接入信号源的管理责任。服务器可以随时停止或删除，不影响其他服务器和用户。\n","product":"FMO","section":"kb","summary":"服务器管理员可以在菜单中遥毙服务器、切换编码器、设置联合管理与语音缓存。","tags":["服务器","管理","遥毙","编码器","联合管理","语音缓存"],"title":"服务器日常管理：遥毙、联合管理与编码器","url":"/kb/server-admin/"},{"content":"APRS 是什么\nAPRS（Automatic Packet Reporting System）是业余无线电常用的实时数据通信协议，可以承载位置、短消息、遥测等数据报文，既可以通过射频传播，也可以通过互联网传播。\nAPRS-IS 是什么\nAPRS-IS（APRS-Internet Service）是把全球 APRS 节点互联起来的互联网骨干网络：\n射频侧的 APRS 报文经 IGate（网关）上传到互联网； 互联网侧的报文也可以经 IGate 下发到射频网络； 接入 APRS-IS 的客户端（如 FMO）可以读取和发布报文。 几个关键概念\n概念 说明 IGate 连接射频与互联网的 APRS 网关 PASSCODE APRS-IS 登录凭证，按呼号生成，可在 APRS 官网申请或使用生成器 https://n5dux.com/ham/aprs-passcode/ 仅监听 只读取 APRS-IS 数据、不发布任何内容 主动发布 登录 APRS 后向网络发布自己的报文 FMO 与 APRS-IS 的关系\nFMO 的服务器列表广播、在线地图（map.bg5esn.com）、CQ、信标、点名活动等数据都通过 APRS-IS 传播。 第三方 FMO 地图本质上都是 APRS-IS 的在线客户端，数据来自公开的 APRS-IS 网络。 FMO 出厂默认仅监听，不会主动上传你的呼号与位置；只有主动登录 APRS 后才进入“主动发布”模式。登录方法见如何登录 APRS、发送 CQ。 需要注意\nAPRS 气象（weather）数据在国内存在合规风险，建议避免发送气象类报文。 在未来版本中，我们可能会降低对 APRS-IS 的依赖，以更好地符合国内合规要求。 APRS-IS 上的数据公开可读，主动发布的位置等数据可能经境外第三方服务器中转，相关风险请自行评估，详见我们收集哪些数据？注销后如何保留？。 ","product":"FMO","section":"kb","summary":"APRS-IS 是全球 APRS 节点互联的互联网骨干；FMO 的服务器列表、地图与 CQ/信标数据都走它。","tags":["APRS","APRS-IS","IGATE","PASSCODE","科普","气象"],"title":"APRS-IS 是什么","url":"/kb/aprs-is/"},{"content":"本文声明 FMO 数字证书体系中 根证书（Root CA）与中间证书（Intermediate CA） 的开放格式，供实现互通的设备、服务器与第三方开发者参考。格式与官方证书工具 fmo-certificate-tools 的签发实现保持一致。\n1. 证书体系 FMO 的身份体系建立在三层信任链之上：\nRoot CA（根机构） → Intermediate CA（中间机构） → User Cert（用户证书） 证书 职责 由谁签发 Root CA 信任锚，只负责签发中间证书；全网唯一的认证源头 自签名 Intermediate CA 负责审核真实操作证材料，签发用户证书 Root CA User Cert 声明\"这个呼号、这个 UID、这把公钥\"属于被认可用户 Intermediate CA 核心原则：\n证书是公开对象。呼号、UID、公钥、序列号、有效期都可以被公开缓存、转发和再分发；证书本身不属于秘密数据。 私钥永不进入证书。证书只承载公钥，签发方私钥与持有方私钥都不出现在任何证书字段中。 信任是逐级传递的：Root CA 的公钥 验证 中间证书，中间证书的公钥 验证 用户证书，直至把某条广播、某次连接绑定到一个具体呼号。 2. 通用约定 2.1 编码与时间 所有证书 JSON 使用 UTF-8 编码。 时间戳统一使用 UTC Unix 时间戳，单位为秒。 二进制字段（公钥、签名等）在 JSON 中统一使用 不带 padding 的 base64url 编码；进入签名时使用原始字节。 所有大小写敏感字段必须精确匹配。 2.2 签名算法 证书签名算法固定为 Ed25519。 签名的输入不是 JSON 文本，而是按协议字段顺序构造的固定顺序语义值数组，再对该数组做确定性 CBOR 编码后得到的原始字节串。 确定性 CBOR 编码不允许 indefinite length，不允许同一语义值存在多种编码形式；不同实现的 JSON 缩进、空格、字段排序差异不影响签名结果。 signature 字段本身永远不进入被签名数组。 2.3 域分离 所有证书签名结构必须显式包含以下前缀字段，避免不同对象之间误验签：\n[\"FMO\", 4, \"messageType\", ...] protocol 固定为 \"FMO\" version 固定为整数 4 messageType 为当前对象类型，如 rootCA、intermediateCA、userCert 接收端必须在完全一致的 protocol、version、messageType 条件下重建签名数组，再做确定性 CBOR 编码后验签。\n2.4 字段类型规则 语义 签名数组中的表示 sn、issuerSn、uid、iat、exp、uidRange.start/end CBOR integer isCA CBOR boolean（不是 1/0 文本） publicKey 原始 32 字节的 CBOR byte string name、email、keyId、crl、license CBOR text string issuingCountries 先全部转为两位大写国家码，再按字典序升序排序，作为嵌套 text string array 3. 根证书（Root CA）格式 3.1 职责与特性 Root CA 是整条信任链的信任锚，私钥离线保存，不得在线使用。 Root CA 为自签名证书，用自身 subject.publicKey 对应的私钥签发。 完整 Root 自签名证书通过 OTA 写入设备信任存储；设备运行时以其中的 Root 公钥作为信任锚，Root 不通过 APRS 广播，也不在激活响应中下发。 默认有效期为 10 年。 3.2 JSON 结构 { \"sn\": 1, \"type\": \"rootCA\", \"issuer\": { \"name\": \"BG5ESN\", \"email\": \"xifengzui@yeah.net\" }, \"subject\": { \"name\": \"BG5ESN\", \"publicKey\": \"root_public_key_base64url\" }, \"extensions\": { \"isCA\": true, \"pathLen\": 1, \"crl\": \"https://bg5esn.com/share/ca/root_crl.json\", \"license\": \"https://bg5esn.com/share/ca/license.md\", \"keyId\": \"1\" }, \"iat\": 1780876683, \"exp\": 2096495883, \"signatureAlgorithm\": \"Ed25519\", \"signature\": \"root_self_signature_base64url\" } 3.3 字段定义 字段 说明 sn 根证书序列号，全局唯一 type 固定为 rootCA issuer.name 签发机构名称 issuer.email 签发机构联系邮箱 subject.name 主体名称（默认同签发机构） subject.publicKey Root 公钥，32 字节 base64url extensions.isCA 固定为 true extensions.pathLen 固定为 1，允许签发一级中间 CA extensions.crl Root CRL 可下载地址 extensions.license 使用许可声明地址 extensions.keyId 根密钥标识 iat 生效时间（UTC Unix 秒） exp 过期时间（UTC Unix 秒） signatureAlgorithm 固定为 Ed25519 signature Root 自签名，64 字节 base64url 3.4 签名数组（15 元素） [\"FMO\", 4, \"rootCA\", sn, issuerName, issuerEmail, subjectName, subjectPublicKeyBytes, isCA, pathLen, crl, license, keyId, iat, exp] 说明：\nRoot 虽为自签名证书，签名数组仍按 issuer 与 subject 逻辑字段分别展开，不做省略。 subjectPublicKeyBytes 为 Root 公钥的原始 32 字节。 isCA 进入数组时为 CBOR boolean true；pathLen 为整数 1。 signature 字段本身不进入该数组。 4. 中间证书（Intermediate CA）格式 4.1 职责与特性 Intermediate CA 由 Root CA 签发，负责审核真实操作证材料并签发用户证书。 证书通过 extensions 声明授权边界：可签发的 UID 范围（uidRange）与可签发的国家码范围（issuingCountries）。 pathLen 固定为 0，表示不允许继续下发下级 CA。 默认有效期为 5 年，且不得超出签发给它的 Root 证书的有效期。 4.2 JSON 结构 { \"sn\": 1001, \"type\": \"intermediateCA\", \"issuer\": { \"sn\": 1, \"name\": \"BG5ESN\", \"publicKey\": \"root_public_key_base64url\" }, \"subject\": { \"name\": \"BD4WPW\", \"email\": \"bd4wpw@example.com\", \"publicKey\": \"intermediate_public_key_base64url\" }, \"extensions\": { \"isCA\": true, \"pathLen\": 0, \"keyId\": \"1\", \"crl\": \"https://bd4wpw.example.com/crl.json\", \"license\": \"https://bd4wpw.example.com/license.md\", \"uidRange\": { \"start\": 5000, \"end\": 10000 }, \"issuingCountries\": [ \"CN\" ] }, \"iat\": 1780876801, \"exp\": 1938643203, \"signatureAlgorithm\": \"Ed25519\", \"signature\": \"signed_by_root_base64url\" } 4.3 字段定义 字段 说明 sn 中间证书序列号，全局唯一 type 固定为 intermediateCA issuer.sn 签发它的 Root 证书序列号 issuer.name Root 的主体名称 issuer.publicKey Root 公钥（与 Root 证书 subject.publicKey 一致） subject.name 中间机构名称 subject.email 中间机构联系邮箱 subject.publicKey 中间 CA 公钥，32 字节 base64url extensions.isCA 固定为 true extensions.pathLen 固定为 0，禁止签发下级 CA extensions.keyId 中间密钥标识 extensions.crl 该中间 CA 的 Intermediate CRL 可下载地址 extensions.license 使用许可声明地址 extensions.uidRange.start 可签发 UID 下限（含） extensions.uidRange.end 可签发 UID 上限（含） extensions.issuingCountries 可签发国家码列表，两位大写 iat 生效时间（UTC Unix 秒） exp 过期时间（UTC Unix 秒） signatureAlgorithm 固定为 Ed25519 signature Root 私钥签名，64 字节 base64url 4.4 签名数组（20 元素） [\"FMO\", 4, \"intermediateCA\", sn, issuerSn, issuerName, issuerPublicKeyBytes, subjectName, subjectEmail, subjectPublicKeyBytes, isCA, pathLen, keyId, crl, license, uidRangeStart, uidRangeEnd, [countryCode1, countryCode2, ...], iat, exp] 说明：\nissuerPublicKeyBytes 与 subjectPublicKeyBytes 都使用原始公钥字节，不是 base64url 展示文本。 issuingCountries 作为已按字典序升序排序的嵌套数组整体进入签名数组；任一实现排序结果不同都会导致签名不一致，因此排序规则必须严格一致。 isCA 为 CBOR boolean true；pathLen 为整数 0。 signature 字段本身不进入该数组。 4.5 签发约束 Root 签发中间证书时必须满足以下条件，任何一项不满足即为非法证书：\n约束 规则 issuer 身份 issuer.sn == root.sn 且 issuer.name == root.subject.name 且 issuer.publicKey == root.subject.publicKey 时间窗口 iat ≥ root.iat 且 exp ≤ root.exp 授权边界 uidRange.start ≤ uidRange.end；issuingCountries 非空 5. 证书链校验 接收端校验证书链时按自顶向下顺序执行：\n1. 用本地信任存储中的 Root 公钥，验证 Intermediate CA 证书签名 2. 核对 Intermediate 的 issuer 三要素与 Root 一致（sn / name / publicKey） 3. 检查时间窗口：root.iat ≤ intermediate.iat，intermediate.exp ≤ root.exp 4. 用 Intermediate 的 subject.publicKey，验证 User Cert 签名 5. 核对 User Cert 的 issuerSn == intermediate.sn 6. 检查用户证书时间窗口：intermediate.iat ≤ user.iat，user.exp ≤ intermediate.exp 7. 检查 user.uid 落在 intermediate.uidRange 范围内 8. 检查从 callsign 推断的国家码落在 intermediate.issuingCountries 范围内（可推断时） 说明：User Certificate 只承载呼号、UID、公钥与有效期，是其后续 APRS 广播与业务报文签名的根绑定材料。其完整格式与 APRS 紧凑表示将另行声明。\n6. 吊销（CRL） 证书吊销遵循\"上级吊销下级\"的原则：\nCRL 吊销对象 命中规则 Root CRL Intermediate CA sn + certFingerprint 双命中 Intermediate CRL User Cert uid + certFingerprint 双命中 certFingerprint 为被吊销证书的 SHA-256 指纹，计算规则：\ncertFingerprint = SHA-256( 该证书签名数组的确定性 CBOR 编码字节串 ) 说明：\n不允许对证书 JSON 文本直接做 SHA-256。 不允许把 signature 字段并入指纹计算输入。 仅 sn/uid 命中而指纹不匹配时不算吊销命中，这通常意味着证书重签发或缓存混乱。 CRL 是公开、带 Ed25519 签名、可独立下载与验签的对象；吊销明细格式将另行声明。\n7. 工具与参考 官方证书工具：fmo-certificate-tools（签发、验证、CRL、密钥对生成） 信任链模型：FMO(NFM Over Internet) 的信任链模型 语音数据协议：FMO(NFM Over Internet) 语音数据开放协议 本文档定义的帧结构与签名规则由 FMO 项目方主导，不接受外部 PR 变更申请；演进建议请通过 FMO 项目方渠道提出，保证全网互操作性。\n","product":"FMO","section":"docs","summary":"FMO(NFM Over Internet) 数字证书格式声明：根证书与中间证书的字段定义、签名规则与链式校验","tags":[],"title":"FMO(NFM Over Internet) 数字证书格式","url":"/docs/fmo-digital-certificate-format/"},{"content":"点名是业余无线电里最有趣的活动之一。点名活动不仅可以由单一台站发起，也可以由多个台站联合发起，形成区域性乃至全国性的点名活动。\n任何爱好者都可以发起点名活动，邀请其他台站参与其中。这是一种非常良性的业余无线电活动形式。\n已经有不少业余无线电爱好者使用FMO设备发起了点名活动，取得了非常好的效果。为了让更多的爱好者了解这些点名活动，我特意整理了以下的点名活动分享。\n需要注意的是，本文所列的点名活动均为业余无线电爱好者自发组织，与FMO设备开发者无关。FMO设备开发者不对这些点名活动的内容和结果负责，也不参与其中的任何事务。\n如果您最近也举办了FMO点名活动，欢迎将相关信息发送给我，我会将其补充到本文中，与更多的爱好者分享。请将点名活动的汇总结果信息发送至: xifengzui@yeah.net 我将不定期更新本文内容。\n本文汇总了一些由业余无线电爱好者自发组织的FMO点名活动分享，感谢各位台站的辛苦付出。按时间倒序排列。\n2026年3月17日 由于FMO好多中继已形成常态化点名，目前该页面将仅更新具有常态化点名的服务器相关的链接分享\n“洛凯集群”每周五点名活动 洛凯集群（服务器：“洛凯的小屋”、半间猫窝”、“蕉太狼集群中继”、“面包圈”、“喵喵喵”、“叉烧苹果派”、“莫比乌斯”）在非节假日的周五20:00~22:00进行点名，具体活动信息请留意微信群或FMO的活动广播，点名结果可前往 https://tylk.cc/fmo 查看\n“FMO MMDVM 46020”每周二点名活动 FMO MMDVM 46020将在每周二20:00~22:00举行点名活动，具体活动信息请留意微信群或FMO的活动广播。可关注 MMDVM TG46020 公众号。\n2026年02月06日晚： “洛凯集群”FMO中继举办了正式的第1次点名活动 此次联合为：集群服务器:“洛凯的小屋”、“半间猫窝”、“蕉太狼中继” 感谢主控：BI1MBQ. BG2GZK. BG7KEE、BG6HFD 的辛苦付出 2026年1月30日晚： 由BG7IBM、BG2HCB、BG6HFD 建立服务器上举办的 “洛凯的小屋”、“半间描窝”、“蕉大狼中继” 联合点名活动 “洛凯集群” FMO 中继第0次（测试）点名活动\n感谢主控和书记员们的辛苦付出 主控 BG6HFD、BG9JYT、BG2HCB 应急主控 BG2GZK BG6XVJ 书记员:BI3SPP、BI3SUE\n2026年1月18日晚： 由BG2GZK建立的(CQ SSTV) FMO中继成功举办了点名活动。 感谢主控们的辛苦付出。\nFMO主控：BG2GZK，BG2HCB\n南山主控：BG2HCC，BG2GZK\n2026年1月16日晚: 由BG2HCB建立的（半间猫窝）FMO中继 成功举办了点名活动。感谢主控BG2HCB、BG9JYT的辛苦付出。 2025年12月24日 广州FMO中继(BG7NOT)、成都FMO中继(BA8AKP)、小天才糊涂机(BA7KVA) 三个FMO数字中继自发组织了联合点名活动。 该活动由BA7KVA提供联网技术支持，并在 在12月24日 成功举办，点名时间从晚上20:00开始持续至22:00结束。感谢 主控BI7CWS\\BG7OCT的辛苦付出。 2025年12月14日 此次活动共有133位友台参加，点名从晚上7点30分开始，持续了3个半小时，最终在晚上11点结束。感谢主控 BH5HSG、BH5BSD和BI2QEY的支持，感谢BG9JYT的服务器支持。 2025年11月1日 FMO在(种子中继)进行了第一次技术点名活动 感谢主控 BH5HSG和BH5BSD的付出 ","product":"FMO","section":"docs","summary":"FMO 点名活动分享：爱好者自发组织的台网点名与常态化点名汇总。","tags":[],"title":"FMO (NFM Over Internet) 点名活动分享","url":"/docs/fmo-net-list/"},{"content":"本页面主要提供FMO可供下载的开源\\开放文件\n文件名称 描述 格式 下载链接 FMOSHIELD电路板外形 电路板外形文件,精确描述了SHILED外框和对接电台版接口 DXF 点击下载 FMO主板电路板外形 主板外形,精确描述了外框、旋钮位置和按钮位置 DXF 点击下载 FMO射频电路板外形 射频外形,精确描述了外框、对接SHILED位置 DXF 点击下载 FMO全包围外壳 全包围外壳 3MF 点击跳转 FMO标准外壳 标准套餐中的外壳文件 3MF 点击跳转 FMO磁吸外壳 磁吸外壳文件 3MF 点击跳转 FMO液晶屏外框 FMO标准液晶屏外框 3MF 点击跳转 FMO GPS同步位置软件 该软件利用网页接口相同的原理，可以当做fmo的GPS，方便大家在开车过程中同步位置使用 APK 点击下载 FMO GPS同步位置软件版本说明 V1.02 初始化版本发布 V1.03 增加GPS/网络定位模式设置 ","product":"FMO","section":"docs","summary":"FMO 可下载资源：电路板外形、外壳文件与 GPS 同步定位软件。","tags":[],"title":"FMO(NFM Over Internet)可下载资源","url":"/docs/fmo-resource/"},{"content":"为了让不同水平的爱好者都能愉快通联，CWO 社区倡议按以下频段与速度使用：\n频点 建议速度 说明 7.000~7.010 15~20 WPM 初学入门通联实践，可按照通联模板练习交流，熟悉基本通联规则 7.011~7.040 15~30 WPM 进阶练习，解码器为辅，自由练习提高实战水平 7.041~7.050 15~40 WPM 强制无解码器，适合高阶实践通联，高手对决 10.100~10.150 无 自由练习频率，新入门的朋友练习抄发，注意不要干扰其他正在练习的朋友 1.000~1.035 无 机器人抄报频率：自动机器人播报不同速度的摩尔斯码供抄报练习，该频点无法发射 其他波段 无 自由使用，用于朋友约聊、组团训练等场景，但请不要干扰其他频率的通联 提示：进入频率后建议同步设置 菜单 -\u003e settings -\u003e Speed，与频段的推荐速度保持一致。\n","product":"CWO","section":"kb","summary":"7.0007.050 分速度段练习、10.10010.150 自由练习、1.000~1.035 机器人抄报（不可发射）。","tags":["CWO","频率","7MHz","10MHz","机器人抄报","WPM"],"title":"CWO 频率使用倡议","url":"/kb/cwo-frequency/"},{"content":"信任链如何建立\nFMO 不自己判断“谁是爱好者”，而是把现成的权威信任串联起来：\n你的真实材料 → CRAC 接口验证 → 开发者盖章 → FMO 设备存你的签名 → 你永久拥有这台 FMO\n每一层都依赖上一层是真实的：CRAC 官方接口验证电子操作证；通过后开发者生成包含呼号与设备 ID 的授权凭证；FMO 设备出厂内置开发者印章样本，核对凭证上的设备 ID 后保存你的签名。\n4.0 的三层 PKI\nFMO 4.0 完整实现了 根证书 → 中间证书 → 用户证书 的证书链验证模型。用户证书包含呼号与 UID，私钥是证书唯一的签名钥匙：\n私钥在设备本地离线生成，从不上网、不离开芯片；签发方只知道你的公钥，连开发者也不知道你的私钥。 谁握有私钥，谁就能冒充你的呼号；私钥无法重置、无法“洗白”，请勿导出或交给任何第三方。 身份冒用会被部署了 FAS 审计工具的服务器自动拉黑并留痕。 FMO 按区域进行中间证书管理。这是为了符合国内法规要求，也是系统存在的根基；因此你可能无法直接看到由海外 HAM 建立的服务器，或与其进行通联。 这意味着什么\n认证与责任分离：身份可被任何第三方公开验证，行为可追溯到具体个人。 设备是你的：即使官方停止服务，已激活的设备仍可正常使用，OTA 只是附加服务。 不想使用时可删除私钥，见如何转赠或出售 FMO。 第三方数字证书认证平台：官方对其证书签发流程、密钥管理与核验标准不知情、也不背书，接入或接受此类证书前请自行核实其可信度与安全性，安全的选择和风险的选择，后果都由选择者自己承担。私自提取私钥的风险见关于提取设备私钥的风险提醒。 ","product":"FMO","section":"kb","summary":"FMO 4.0 用“根证书 → 中间证书 → 用户证书”的三层 PKI 验证身份，私钥离线生成、不离开设备。","tags":["信任链","数字证书","私钥","PKI","呼号","认证","CRAC"],"title":"信任链与数字证书是什么？","url":"/kb/trust-chain/"},{"content":"举报原则\n我们只守住底线，受理以下红线行为的举报：\n触及政治红线。 非法通信、恶意干扰、身份冒用/欺诈。 事实白名单准入（视同参与违法行为）。 长时间播放版权音乐等无关音频；广告与商业活动；桥接商业/公众网络。 垃圾信息、网络攻击、侵犯隐私、干扰频谱。 长期严重违规、欺诈或危害生态的行为。 实验行为不予受理：技术实验与差异化玩法（如接入第三方信源、小众玩法、自建服务器实验配置）、服务器风格与内部规则差异、轻微争议，均属各服务器管理员自主责任范围，官方不做管理。\n如何识别可疑服务器\n红色呼号：来自不同集群。 奇怪呼号：说明管理员接入了第三方源。桥接与集群的边界见桥接与集群：建服者需要了解的风险。 两者均属实验行为，一般不予受理；只有触及红线（严重违规）才可按下方流程举报。 举报流程\n录制证据：拍摄视频，录制违规服务器的相关信息。 发送举报：将举报信息发送至 xifengzui@yeah.net。 等待处理：我们将在 7 个工作日内进行处理并回复邮件。 信息公开：如有必要，我们会公开相关信息。 处理期间请勿大规模宣传，避免社区影响扩大。\n相关说明：严重违规可能导致服务器或用户的数字证书被吊销，见数字证书被吊销了怎么办；服务器安全规范见服务器安全加固：SAS、FAS 与 EMQX 权限。\n","product":"FMO","section":"kb","summary":"受理红线行为举报；实验行为不予受理。录视频取证后邮件举报，7 个工作日内处理回复。","tags":["举报","违规","服务器","红线","政治红线","白名单","实验行为"],"title":"如何举报违规行为","url":"/kb/report-server/"},{"content":"操作步骤\n等待 FMO 搜索到服务器。如果没有连接任何服务器，它会自动尝试连接第一个发现的服务器。 如果当前服务器没有活跃用户，顺时针旋转功能旋钮切换服务器，直到找到一个有活跃用户的服务器。 查看 FMO 屏幕左上角的频率信息，例如 T:145.8000MHz/R:145.8000MHz： T 是 FMO 的发射频率 → 你的对讲机接收频率要调到 T。 R 是 FMO 的接收频率 → 你的对讲机发射频率要调到 R。 不要把 T/R 搞反。 将对讲机功率调至 100mW 或最低功率，并关闭哑音，然后就可以通联了。 安全提醒\nFMO 附赠的射频背板仅接收、不支持哑音，哑音选项不会生效。 发射 FMO 没反应时，不要通过贴近 FMO 来“加强功率”，这可能造成背板不可逆损伤。请先核对频率、功率与哑音设置。 FMO 本体不具备射频发射能力，屏幕上的发射/接收频率只是与外部手台配合使用的对应参考。 相关设置\n发射/接收频率、静噪等级、频率修正等都可以在 菜单 或网页后台 fmo.local 中调整。第一次通联后，FMO 会自动向对方发出 QSO 请求，可在日志中查看记录，见如何查看通联日志。\n","product":"FMO","section":"kb","summary":"把对讲机频率与 FMO 屏幕上的 T/R 频率对应，功率调到最低并关闭哑音，即可开始通联。","tags":["通联","QSO","频率","哑音","功率","手台"],"title":"如何完成第一次语音通联","url":"/kb/first-qso/"},{"content":"登录 APRS\n使用电脑访问 FMO 网页后台 fmo.local（需在同一局域网）。 进入 参数配置 -\u003e APRS网络设置，填写 APRS PASSCODE。PASSCODE 是 APRS-IS 的登录凭证，是按你的呼号生成的数字校验码。可以在 APRS 官网申请，也可以使用第三方生成器生成：https://n5dux.com/ham/aprs-passcode/。 点击 APRS网络设置 -\u003e 重启APRS服务 -\u003e 重启服务，让配置生效。 登录成功后，主界面的 APRS 图标会变为天蓝色；仅监听时显示黄色。\n发送 CQ\n短按旋钮进入快捷菜单：\n发送APRS CQ：向 APRS 网络发送 CQ，邀请其他 FMO 用户与你通联。 发送APRS 老友 CQ：邀请已经关注你的 FMO 用户。 发送邻近友台信标：邀请附近的 FMO 用户进行直频通联。 关于发布模式与隐私\nFMO 出厂默认为“仅监听”模式，不会主动上传你的呼号与位置。只有你主动登录 APRS 后才会进入“主动发布”模式；可以随时将 PASSCODE 重置为 -1 恢复仅监听。位置发布精度（关闭/模糊网格/精确坐标）由你自行设置。\nAPRS 与 APRS-IS 的基础概念见APRS-IS 是什么。\n","product":"FMO","section":"kb","summary":"在网页后台填写 APRS PASSCODE 并重启 APRS 服务即可登录；快捷菜单可发送 CQ 邀请通联。","tags":["APRS","CQ","PASSCODE","信标","IGATE","老友CQ"],"title":"如何登录 APRS、发送 CQ","url":"/kb/aprs/"},{"content":"背板频率偏移\n因晶振和电容误差，射频背板可能存在几百到几千赫兹的频偏，并随温度轻微漂移。可在 菜单 中使用频率修正项手动校准；如需极高精度（如数字模式），建议用频率计实测后修正。\n背板过载\n附近有极强信号源（如广播发射塔）时，背板可能过载，表现为接收质量下降并弹出警告。背板内置 -30dB 衰减器（不可旁路）可缓解多数情况；若仍存在，可远离信号源或外接 10-20dB 衰减器。\nESP32-S3 谐波辐射\nESP32-S3 运行于 240MHz 主频，在 UHF 频段（438.550MHz / 439.800MHz）会产生极低水平的谐波辐射。处理方法：对讲机避开这两个频点、拉开距离（\u003e3 米）或加金属遮挡，也可选购 CNC 铝合金屏蔽罩。\n手台功率建议\nFMO 附赠背板仅接收，建议手台使用最低功率（100mW 或更低）。不要通过贴近 FMO 的方式强制打开静噪，以免损坏背板。\n完整硬件勘误表见 FMO 使用说明书 - 硬件勘误。\n","product":"FMO","section":"kb","summary":"射频背板的常见硬件问题与处理方法：频率偏移、强信号过载、ESP32 谐波辐射。","tags":["背板","频偏","过载","谐波","射频","干扰","衰减器"],"title":"背板频偏、过载与谐波怎么处理","url":"/kb/rf-backplate-issues/"},{"content":"T-CALL 是什么\nT-CALL 是一种 1750Hz 单音脉冲信号，也就是业余无线电中常见的“开中继音”。很多对讲机自带此功能，按下后会在发射中持续发出一段单音。\n在 FMO 里的两个用途\nT-CALL 激活（上行锁定）：进入 菜单 -\u003e 通联 -\u003e T-CALL 激活 开启后，FMO 会保持上行锁定；只有使用具备 T-CALL 功能的对讲机发送约 1 秒的 T-CALL 信号后，FMO 才会恢复上行发射。适合不想被误触、误发上行时使用。 敲开待机页面：FMO 处于待机模式时，发送 T-CALL 信号可以把它唤醒，详见禅模式、待机模式与定时待机。 对讲机怎么发送 T-CALL\n一般的业余对讲机操作方式：先按下 PTT 键并保持不松，再按下侧键（如 UV-K5 为侧面两个点的按键），此时对讲机会在发射中持续发出单音。 保持约 1 秒后松开，即完成一次 T-CALL 发送。 注意：开启了 T-CALL 激活后，只有先发送 T-CALL 才能上行，日常通联时请留意自己的对讲机是否支持 T-CALL，以免“说了半天对方没收到”。\n","product":"FMO","section":"kb","summary":"T-CALL 是 1750Hz 单音脉冲信号：开启 T-CALL 激活后上行锁定，发 T-CALL 才恢复上行；也能敲开待机页面。","tags":["T-CALL","1750Hz","上行","中继音","对讲机","待机"],"title":"什么是 T-CALL？怎么用","url":"/kb/t-call/"},{"content":"什么情况下会被吊销\n如果你严重违反了 FMO 相关使用要求且被举报，我们将吊销你的数字证书。数字证书是你在 FMO 网络中的身份凭证，吊销后设备将无法继续使用任何基于 FMO 协议的服务。\n如何申诉\n你可以发送邮件至 xifengzui@yeah.net 尝试申诉。 我们会核实情况后给出答复。 申诉不通过会怎样\n你仍然可以销售你的 FMO 给他人，设备依然可以被三方爱好者认证和激活，正常流通。 但我们不再欢迎你进入网络。 关于信任链与数字证书的更多说明，请参考信任链与数字证书是什么。\n","product":"FMO","section":"kb","summary":"严重违反使用要求且被举报会被吊销数字证书；可发邮件申诉，不通过仍可转售设备。","tags":["吊销","数字证书","申诉","违规","举报","CRL","转售"],"title":"数字证书被吊销了怎么办","url":"/kb/certificate-revocation/"},{"content":"最近，有些朋友通过研究自己的设备，成功提取出了设备的私钥，这恰恰是业余无线电精神的体现。业余无线电的精神，从来不在于\"照说明书使用\"，而在于\"我能不能把它弄明白\"。会去拆解自己的设备、研究协议、探究原理，这正是\"学\"与\"练\"精神的体现。我们也清楚，当一个系统变得足够有趣、足够开放，去探索它的人自然会出现——这几乎是事物发展的必然。所以这篇文章不是指责，更不是警告谁不要动脑筋，而是想以一个朋友的身份，把一些必须说清楚的事情摆出来，供大家自己权衡。需要说明的是：研究、提取私钥仅限用于本人设备的研究与学习，不得用于任何违法行为。\n如果你还没决定要不要做这件事，那么本文的结论可以提前告诉你：建议不要做。如果你已经做了，或者正在做，那么请务必读完下面的内容，并对自己负责。\n私钥到底意味着什么 FMO 4.0 的身份体系，建立在三层信任链之上：\nRoot CA（根机构） → Intermediate CA（中间机构） → User Cert（用户证书）\n你的用户证书里包含呼号和 UID，而私钥，就是这份证书唯一的签名钥匙。它在数学上证明\"这条广播、这次连接，确实是持有这个呼号的人发出的\"。\n听起来很抽象，你可以把它想成你呼号的家门钥匙：\n谁握着私钥，谁就能完全冒充你的呼号，发出\"看起来就是你\"的广播和连接 私钥一旦被复制，它不会像密码一样\"改一改就失效\"——它就是你身份的数学化身 在整个 FMO 生态里，你的信迹会伴随你整个通联生涯，无法重置，无法洗白 这就是为什么私钥从设计之初就被约束为\"不离开芯片、从不上网\"。这份约束保护的不是厂商，而是你自己的身份。\n这里值得多说一句：你的私钥，是设备在本地离线生成的，从头到尾都没有离开过你的设备。我们作为生态的第一个发证方，所做的只是对你的公钥进行数字签名——也就是说，整个签发过程中，连我们也不知道你的私钥，更不可能替谁保管或复制它。\n这正是\"身份属于你\"的底层保证：除了你自己，没有任何一方握有这份钥匙的副本，包括制造这台设备的厂商，也包括为你签发证书的中间机构。\n如果你决定动手，请守住这些底线 我们尊重每一位爱好者的选择，但下面的底线是性命攸关的，请一条都不要破：\n全程离网操作。 导出私钥的全过程，请断开设备与电脑的一切互联网通道。不要让任何操作发生在\"在线\"状态。私钥暴露在网络上的一秒钟，都可能让它经过你完全无法控制的地方。\n绝对不要使用任何\"在线工具\"。 网上流传的、宣称能帮你\"一键导出 FMO 私钥\"的网页工具、云服务、在线脚本，不要碰。那是把你的家门钥匙亲手交给一个陌生人。任何需要联网、需要把你的信息发出去的\"导出工具\"，本质上都可能存在风险。\n对第三方客户端保持清醒。 如果你决定使用第三方工具或客户端来完成这件事，亦或是使用第三方的\"FMO客户端\"，或者\"FMO 管理工具\"，请确保你完全信任它。半信半疑的工具，宁可不碰。一个简单的原则是：你是否相信那个呼号，如果你不相信他，那就不要碰。\n导出后妥善保管。 私钥文件请如同保管家门钥匙一样对待：加密存放、离线保存、不要上传到任何网盘或聊天工具、不要发给任何人——包括你\"信得过\"的朋友。设备丢失、私钥泄露这些事，系统可以帮你吊销旧证书、签发新证书，但没人能帮你守住你自己交出去的钥匙。\n再次强调：设备是你自己的，处置权在你手里；出了任何问题，也需要你自己承担，以上操作，责任全部在你自己。。\n发生以下情况，系统会如何处理 FMO 生态并不靠\"相信人性\"来维持秩序，它靠的是可验证的技术机制。下面这些是公开透明的处理路径，提前讲清楚，避免大家到时候措手不及：\n身份冒用（与 FAS 声明不符）：如果出现包头声明身份与真实连接身份不一致的情况——无论是有意冒充他人，还是私钥流出后被他人冒用——安装了 FAS 审计工具（FMO Audit Service）的服务器，都会自动化处理：自动拉黑该连接身份、踢下线、禁止再次连接，并留存完整证据。\n重复的数字证书（身份盗用）：如果同一份数字证书/私钥被复制并在多个身份之间被使用，导致身份盗用，同样属于上述自动处理范围。装了 FAS 的服务器会通过比对声明与身份，将异常连接自动拉黑，全程留痕。\n也就是说，私钥一旦流出并被人拿去冒充，最先拦下你的不是哪个人，而是服务器上自动运行的审计机制。它不会和你讲人情，它会直接执行规则。\n需要特别说明的是：FAS（FMO Audit Service）并不是 FMO 协议强制要求的组件，是否部署，取决于各服务器管理员自己。装了 FAS 的服务器，才有下面这些自动拉黑、踢下线、留痕的能力；没装的服务器，只能依赖管理员的人工判断与社区监督。\n所以，请别默认\"每个服务器都会自动拦截你\"——你无法预知哪台服务器装了、哪台没装。\n对服务器那边的用户，也多一句提醒：既然 FAS 并非强制，那么主动部署 FAS 保护自己的服务器，就成了管理员自己的一份心思，而不是生态的默认配置，请多上心。\n如果你作为普通用户接入一台服务器，发现对面出现奇怪的呼号、行为异常，请先想到一种可能：这或许是服务器管理员没有启用 FAS 的审计功能，正在实验自己的内容，未必是恶意。但同样的，这也意味着这台服务器的\"自动防护\"未必在场，请你自行留意安全风险，保持必要的警惕。\n红线风险 自动机制能覆盖的范围是有限的，对于极少数严重越界、损害 FMO 生态根本利益的行为——例如冒用他人在先、触及政治红线、违法、经投诉核实属实的身份盗用——我们将启动数字证书吊销机制。这是 FMO 身份验证体系中的最高技术措施，意味着该呼号的数字身份在 FMO 网络中被彻底撤销，无法继续使用任何基于 FMO 协议的服务。吊销不是偷偷进行的。作废名单（CRL）是公开、带签名、可验证的，任何设备都能查证。但我们也想说得直白一些：一旦走到吊销这一步，这个呼号在网络里的数字生命就画上了句号，重新获取的机会微乎其微。我们不轻易动用这个权力，但当底线被明确突破时，我们也有权有责任执行。\n服务器管理员有自主管理能力 最后想提醒大家一件事：每一台 FMO 服务器，都是爱好者自行搭建、自行管理的自主空间。\n服务器管理员有权自主决定服务器的内部通联规则和黑名单管理——这份权力不依赖厂商，也不依赖中心。也就是说，即便某个行为没有触发自动拉黑、也没有走到证书吊销这一步，只要某台服务器的管理员认为某个呼号不可信、不受欢迎，他完全有权利将其拒之门外。\n生态里服务器风格各异，有的严肃、有的轻松、有的偏技术实验。但每一台服务器的主人，都在用自己的判断经营自己的空间。如果你在某个服务器上留下了可疑的信迹，那么\"被很多服务器拒绝\"可能比\"被吊销证书\"更早到来——而这同样不需要任何人打招呼。\n最后 FMO 之所以选择把身份、签名、信任链这些看似复杂的东西引入进来，是为了让一个开放的 HAM 网络在互联网时代依然能保持自发互通、可验证、可延续。私钥是这个体系的基石，也是每一位爱好者自己身份的一部分。\n我们可以接纳每一个热爱钻研的人，但请记住：选择权在你，责任也在你。你探索、你学习、你为自己的行为负责，这本身就很业余无线电。\n愿大家在 FMO 生态里，都能找到适合自己的通联方式。\n此致 73!\nBG5ESN\n","product":"FMO","section":"docs","summary":"关于自行提取 FMO 设备私钥的温和提醒：风险、底线与后果","tags":[],"title":"FMO(NFM Over Internet) 关于提取设备私钥的温和提醒","url":"/docs/fmo-diy-key-guide/"},{"content":"配网问题\n现象 原因 处理 扫描不到 WiFi 搜索 WiFi 异常 点击配网软件中的 Join Other Network 手动输入 SSID 和密码 不支持 5GHz WiFi CWO 硬件仅支持 2.4GHz 确保路由器兼容 2.4G 模式 配网异常 其他异常 插拔 CWO 电源后重试 连接 “CWO” 热点后自动断开 手机提示 “CWO” 无法上网时误操作 确保配网开始时手机保持连接 CWO 热点 扫码扫不出来 相机权限错误 点击配网软件中的 “I don’t have QR code”，走 WiFi 页面，连接 “CWO” 后一路下一步直到搜索页面，效果与扫码相同 WiFi 与连接\n忘记已连接的 WiFi：在 network 界面下长按 BOOT 按钮。 最多保存 8 个 WiFi（最后连接的 8 个）。 每次重启都要重新配网：通常是启用了隐藏 WiFi，请将路由器设为非隐藏广播。 不配网也能使用：设备会自动连接名为 cwonet 的热点，将该热点密码设置为 cwo12345 即可。 通联与解码\n收不到对方的通联：依次检查网络连接 → 服务器是否与对方一致 → 频率是否与对方一致。 解码有延迟：CWO 使用聚类算法解码，为提高准确度会有一定延迟，属正常现象。 音量旋钮不起作用：在 settings -\u003e HID MODE 中选择 VolumeKnob，该模式仅在待机界面生效。 顶部提示栏含义\n提示 含义 处理 Please Release The Button 开机时检测到按键被按下（电键短路或被按下） 松开按键/电键即可；若是 2 节手键短路，尝试使用 Manual A 或 Manual B 模式 Please Re-Select Server 设备授权到期 进入 菜单 -\u003e servers 重新选择服务器获取授权 You are banned! 因违规操作、恶意干扰等原因被 ban 机 联系服务器管理员解决 登录信息过期说明：CWO 按照一个月一次的过期登录信息进行安全管理。当顶部弹出 Please Re-Select Server 时，请至服务器页面重新选择服务器，即可获得授权，属正常现象。\n其他问题可邮件 xifengzui@yeah.net 反馈，官方会在第一时间处理并发布新固件。\n","product":"CWO","section":"kb","summary":"配网失败、WiFi 重连、收不到对方、解码延迟、顶部提示栏含义等常见问题的处理。","tags":["CWO","故障","配网","FAQ","WiFi","解码","提示栏"],"title":"CWO 常见问题排查（配网、提示与 FAQ）","url":"/kb/cwo-troubleshooting/"},{"content":"套件组成\nFMO 套件由三块电路板组成：主板（音频流、身份协议、发现协议）、屏蔽\u0026电源板（供电与屏蔽）、射频背板（仅接收的 NFM 接收部件，MIT 协议开源）。\n接口与电气参数\n项目 典型值 范围 供电 5V / 2A，USB-C 3.7 ~ 5V 持续电流 ~200mA — IO 电压 3.3V — 接收频率范围（附赠背板） — 144-146MHz / 430-440MHz 接收衰减器 -30dB 不可旁路 主板通过串口（TTL 3.3V，19200bps，8N1）与背板通信，接口包括 GND、AT EN、NET PTT、Radio PTT、TX、RX、5V、AIN±、AOUT± 等。完整接口定义见硬件接口指南。\n注意事项\nFMO 不带电池，使用 USB-C 供电；PCBA 上预留了电池接口，电压不要超过 5V。 附赠背板硬件上仅接收、没有 PA，无法发射。 改装或外接对讲机时请遵守当地法律法规。 禁止未授权改装：严禁对设备进行拆解、破解、逆向工程或软硬件改装。此类行为将导致保修失效，并可能引发设备损坏、安全隐患与法律风险；官方保留识别并封禁改装设备的权利。 外壳与电路板外形等资源见可下载资源。\n","product":"FMO","section":"kb","summary":"FMO 由主板、屏蔽电源板、射频背板组成，USB-C 5V/2A 供电，附赠背板仅接收。","tags":["硬件","接口","供电","背板","规格","USB-C"],"title":"FMO 的接口、供电与规格","url":"/kb/hardware-interface/"},{"content":"FMO 不带 GPS，网络定位精度有限。如果你在车上使用 FMO，可以用手机作为它的 GPS 定位源：\n在可下载资源页面下载 FMO GPS 同步位置软件（Android，APK）。 确保手机与 FMO 处于同一局域网。 打开软件并选择定位模式（GPS / 网络定位），FMO 即可在移动过程中同步位置。 该软件利用与网页接口相同的原理工作，v1.03 版本增加了 GPS/网络定位模式设置。同类开源工具还有 FMO-Android-GPS-Tool。\n","product":"FMO","section":"kb","summary":"FMO 不带 GPS，可使用官方安卓定位同步软件，让手机充当 FMO 的 GPS。","tags":["GPS","定位","网格","手机","车载","APK"],"title":"如何让 FMO 同步手机 GPS 定位","url":"/kb/gps-sync/"},{"content":"市面上出现过与 FMO 外观几乎 1:1 的仿冒硬件。仿冒设备没有可信的硬件环境，无法加入由爱好者建立的服务器。丝印细节未来可能被仿冒者修复，更可靠的方法是按流程验证：\n看是否卡在半成品界面：盗版设备通常无法完成官方工厂录入，会停留在工厂工序的半成品界面。显示该界面的设备切勿购买。 要求对方升级到 v4.1.15 或更高版本，然后拍摄视频：进入 菜单 -\u003e 设备信息，展示 MAC 与 SN 码。没有 SN 码就要求先升级。 回到主页面长按旋钮： 正常提示：“用户未绑定（全新设备）/ 证书签发失败（二手设备）”，且主页时间为当前时间。 异常提示：“服务器响应超时”，代表设备无法与官方服务器通信，谨慎购买。 收货后核对：确认产品内的 SN 码与对方视频中的 SN/MAC 码一致，不一致建议退货退款。 如果仍然担心，可将 菜单 -\u003e 设备信息 页面拍照发送至 xifengzui@yeah.net 核验（仅确认图片内容，回复时间可能较长）。发现可疑设备或线索也欢迎通过该邮箱反馈。\n","product":"FMO","section":"kb","summary":"仿冒设备无法完成官方工厂录入、激活会提示“服务器响应超时”，建议按 SN/MAC 码流程核验。","tags":["仿冒","盗版","山寨","SN码","MAC","真伪","二手"],"title":"如何辨别仿冒设备","url":"/kb/counterfeit/"},{"content":"桥接其他业余无线电网络\n官方不对桥接行为做具体建议，也不对第三方源做评估。\n注意区分：桥接业余无线电网络属实验行为范畴，官方不评估、不禁止也不建议；而「桥接商业与公众网络」本身即是红线。\n统一的原则是红线：你是服务器管理员，你要为红线内容的责任负责。无论内容来自 FMO 用户，还是来自你桥接的第三方源——只要是从你的服务器出去的红线内容，责任都在你。红线责任的落点依据是出口节点原则：内容从你的服务器出去，你就要说得清它从哪来，说不清就是管理失职。\n红线清单见如何举报违规行为（政治红线、非法通信、恶意干扰、身份冒用/欺诈、事实白名单、长时间播放无关音频、广告商业、桥接商业/公众网络、垃圾信息、网络攻击、侵犯隐私、干扰频谱等）。如果你的源违规，且被其他 FMO 用户举报，你可能会被吊销数字证书，详见数字证书被吊销了怎么办。\n接入其他信源后，你的服务器里可能出现奇怪呼号，识别说明见如何举报违规行为。\n加入集群\n多台 FMO 服务器以联盟、共用后台、共享黑名单、联合宣导或共同承担声誉等方式抱团形成的组合，通常被称为“集群”。爱好者的集群教程与配置分享可参考FMO 实践分享。\n加入集群的好处（如实）：服务器里有人、有流量，热闹；点名、活动等跨服务器事务更容易组织。\n需要了解的事实：\n连坐风险：集群内任何一台服务器违规、被举报、被追责，整个集群都会受牵连——你的服务器与你的呼号信誉也在其中。 被举报风险：集群整体行为难以归责，举报往往“连锅端”。 审计缺失的波及：只要集群里任意一台服务器没有部署 SAS/FAS，未审计节点上的冒名、违规流量就可能经集群流入你的服务器——你没有自动防线，责任却压在自己肩上。 责任稀释不掉：账面上没有“集群”这个主体，责任最终仍落在每台服务器的持证管理员头上。 举个例子：你的服务器加入了一个集群。某天，有用户发现从你的服务器出去的语音里有违规内容，于是举报了你。而这些内容实际上来自集群里另一台服务器的转发。如果你没有部署 SAS/FAS 审计组件，就拿不出“这段内容从哪个出口进来”的流转记录，无法举证违规并非源自你的服务器——被举报的责任只能由你自己承担，集群不会替你分担，也分不清。\n建服流程见如何搭建 FMO 语音服务器，安全加固见服务器安全加固：SAS、FAS 与 EMQX 权限，发现严重违规可走举报流程。\n","product":"FMO","section":"kb","summary":"桥接第三方源与加入集群的边界：官方不做建议、不评估源，管理员对红线内容负责；集群有连坐、被举报、审计缺失波及等风险。","tags":["桥接","第三方源","集群","红线","连坐","举报","SAS","FAS"],"title":"桥接与集群：建服者需要了解的风险","url":"/kb/server-boundary/"},{"content":"有爱好者通过研究自己的设备提取出了私钥，这本身是业余无线电探索精神的体现。但私钥是呼号身份的数学化身，处置不当后果严重，以下几点必须清楚：\n建议不要做\n研究、提取私钥仅限用于本人设备的研究与学习，不得用于任何违法行为。 如果没有想清楚风险，建议不要做这件事。 绝对不要使用“在线工具”\n网上流传的、宣称能帮你“一键导出 FMO 私钥”的网页工具、云服务、在线脚本，不要碰——那是把你的家门钥匙亲手交给一个陌生人。 任何需要联网、需要把信息发出去的“导出工具”，本质上都可能存在风险。 私钥泄露的后果\n私钥流出后如果被他人冒用，部署了 FAS 审计工具的服务器会自动拉黑该连接身份、踢下线、禁止再次连接，并留存完整证据。 如果出现冒用他人在先、触及政治红线、违法、经投诉核实属实的身份盗用等严重越界行为，将触发数字证书吊销——呼号在网络中的数字生命画上句号，重新获取的机会微乎其微。 作为普通用户接入服务器时，如果遇到奇怪呼号或行为异常，先想到一种可能：这或许是服务器管理员没有启用 FAS 审计功能、正在实验自己的内容，未必是恶意；但同样意味着这台服务器缺少自动防线，请自行留意安全风险、保持警惕。 私钥的基础说明见信任链与数字证书是什么？，完整风险说明见关于提取设备私钥的温和提醒。\n","product":"FMO","section":"kb","summary":"私钥是呼号身份的数学化身：不建议提取，绝对不要使用在线导出工具，泄露会被审计自动拉黑。","tags":["私钥","提取","在线工具","风险","FAS","吊销"],"title":"关于提取设备私钥的风险提醒","url":"/kb/private-key-risk/"},{"content":"FMO免责条款 前言：服务关系与责任界定 我们的定位 安吉小黑盒电子产品经营部（以下简称\"我们\"或\"开发者\"）是本设备的硬件制造商与软件开发者，我们向您提供一套符合国家无线电法规标准的无线电通联实验工具。\n您的角色 当您使用本设备的互联网功能，接入APRS网络或任何第三方服务器时，您将作为独立的网络服务参与者和内容发布者，自主进行通信活动。\n核心责任划分 基于上述定位，我们仅对本设备本身的硬件质量和实现设备核心功能的基础软件负责。\n核心功能：指设备在未连接任何互联网或第三方数据网络的情况下，仅依赖其内部硬件及出厂预装的、未经在线更新的基础固件所能实现的本地功能，包括但不限于：\n设备物理参数的本地设置与读取 在法规允许的业余频段内进行无线电信号的接收 对于您使用设备参与的一切网络活动，包括但不限于数据传输、服务器接入、内容发布、与其他用户交互等，其全部法律责任、运营风险和合规义务，均由您作为独立参与方自行承担。\n第一章 用户行为规范与风险告知 您承诺仅将本设备用于合法目的，并严格遵守业余无线电精神及相关法律法规。\n1.1 严格禁止的行为 法律红线：任何非法通信、侵犯他人隐私、发送垃圾信息、网络攻击、干扰无线电频谱的行为。 版权与合规：长时间、连续性发射与业余无线电无关的内容（如播放有版权的音乐、综艺节目）。 非商业原则：构建商业性网络网关，将业余网络与任何非业余网络（如商业对讲机）进行互联。 社区道德：任何违背业余无线电精神的行为，包括但不限于恶意干扰、身份欺诈、散播虚假信息、言语攻击等。 1.2 风险确认 您明确理解并同意，使用本设备（尤其是主动开启数据发布功能并接入由认证爱好者自建服务器组成的网络）将面临以下固有风险，您承诺在使用前已进行充分评估并自行承担全部后果：\n数据公开性：当您主动发布信息时，您的呼号、位置、语音等数据默认公开可见，可能导致隐私泄露。 第三方风险：您自建或接入的第三方服务器可能存在服务不稳定、数据泄露、内容违规等风险，我们对此不承担责任。 网络安全：由认证爱好者自建服务器组成的网络具有开放性，这意味着您可能面临恶意节点攻击、数据篡改等风险。 1.3 违规后果 任何违反上述规范的行为，我们有权立即采取措施，包括但不限于警告、服务限制、撤销设备激活状态（封禁），且不承担任何责任。\n第二章 责任限制 2.1 用户独立责任 您是您所有网络行为的唯一责任主体。因您的行为导致的任何争议、处罚或损失，均由您独立承担。\n2.2 开发者责任限制 在法律允许的最大范围内，我们仅对因设备本身存在不符合国家强制性标准或其明示的质量要求的设计或制造缺陷直接导致的损失承担责任。\n2.3 明确排除的责任范围 我们尤其不对以下情况承担责任（即使该损失与使用本设备存在关联）：\n任何第三方（包括其他用户、服务器运营者、网络攻击者）的行为导致的损失 因APRS网络、由认证爱好者自建服务器组成的网络或其他公共网络的开放性、非加密性或固有不稳定性导致的损失 因您自行或通过第三方服务器进行的数据跨境传输而引发的任何问题 任何间接、偶然、特殊或衍生性的损失（如利润损失、商业机会损失等） 因不可抗力（如自然灾害、电力中断、基础电信服务故障）导致的服务中断或设备故障 因产品跨境、跨区域使用引发的法律法规风险。 第三章 数据与隐私保护 我们承诺以合法、正当、必要的方式处理您的个人信息。\n3.1 信息收集与法律依据 收集范围 为实现设备激活与合规使用，我们将收集您的业余无线电操作证号、呼号、姓名、联系方式及设备唯一识别码（设备ID）。\n收集目的与法律依据 我们收集上述信息具有明确的法律依据和必要性，具体如下：\n身份激活与验证：您的操作证号、呼号及设备ID是激活设备的基础，用于初步验证您具备合法的业余无线电操作员资格。 真实性核查（监管要求）：根据国家无线电管理要求及业余无线电界的通用实践，我们需要将您的呼号与姓名等信息与 中国无线电运动协会（CRAC） 等相关官方或授权机构的数据进行交叉验证，以确保您所提供信息的真实性、准确性和有效性。这是确保设备接入合法网络、符合国家监管要求的必要步骤。 法定义务的履行（安全与追溯）：依据《中华人民共和国网络安全法》、《中华人民共和国数据安全法》等相关法律法规，网络运营者需配合国家安全机关、公安机关等依法进行的溯源调查工作。为履行此项法定义务，我们有义务收集并妥善保管您的真实姓名与联系方式。在发生或可能发生违法犯罪行为时，这些信息是配合国家机关进行溯源、追责、维护网络空间秩序与国家安全的必要前提。 数据保留与用户权利 数据保留：您的个人信息将为您账户持续有效期间之目的进行保留。注销账户后，我们将根据法律要求及履行法定追溯义务的需要，在必要的期限内（例如，不少于法律规定的诉讼时效）保留您的核心身份信息（操作证号、呼号、姓名），其他信息将删除或匿名化处理。 用户权利：您有权查询、更正您的个人信息（依法需配合监管的信息除外）。请通过我们提供的官方渠道联系我们，我们将在合理时间内响应。 3.2 APRS网络数据传输与跨境传输 3.2.1 APRS网络连接模式 默认模式：仅监听\n本设备在出厂默认设置及用户未主动执行下述操作前，其APRS网络功能处于\"仅监听\"模式。 在此模式下，设备仅接收并展示APRS网络上的公开信息，不会主动上传或广播任何与您设备相关的个人信息（包括但不限于您的呼号、位置、设备状态等）。 即使您主动开启发布功能，位置信息的发布与否及精度（关闭/模糊网格/精确坐标）仍由您自行设置。 主动发布模式：明确同意\n当您希望将自己的信息分享至APRS网络时，您需要执行一个主动的、明确的操作：通过设备关联的后台网页或客户端，使用您的APRS设置PASSCODE信息登录APRS网络。 您的这一主动开启行为，将被视为您已充分理解并同意本协议3.2.2条所述的所有事项。 模式管理与退出：您可以随时通过后台网页重置PASSCODE至 -1 功能，使设备恢复到\"仅监听\"模式。设备将严格依据您的设置执行相应操作。\n3.2.2 跨境数据传输的同意与风险 触发条件：仅在您执行了上述3.2.1条中定义的\"主动发布\"操作后，您的个人数据才可能发生跨境传输。 传输范围：为实现跨地区通联，您在\"主动发布\"模式下产生的公开语音数据、呼号、设备ID及基本技术参数，可能通过位于境外（包括但不限于美国、欧洲等）的第三方服务器进行中转传输。 法律基础与安全保障：我们将采取加密等业界通行的技术措施保护数据安全。 明示同意与风险告知：您确认知悉，数据一旦传输至境外，将受到当地法律管辖，相关风险由您自行评估并承担。 3.3 隐私保护声明 公开数据特性：基于业余无线电公开通信的本质，我们不为您的通联内容提供端到端加密。我们承诺对您的个人信息（如操作证号）采取合理保护措施。 用户资格：本服务仅面向具备完全民事行为能力的成年人。您注册、激活并使用本设备，即代表您向我们声明并保证您已年满十八周岁。任何因未成年人使用本服务而产生的问题、纠纷及法律责任，均由其监护人完全承担。我们未设置年龄验证系统，您对此表示充分理解并无条件接受。 3.4 个人信息保密性声明 我们深刻理解并尊重呼号作为您在业余无线电领域公开身份的特殊性，与其他个人隐私信息的区别。为此，我们做出以下明确声明：\n公开信息与隐私信息的区分 公开信息：您的呼号（Callsign）是业余无线电社区的通用身份标识，当您主动开启数据发布功能（见3.2.1条）时，该信息将遵循APRS网络的特性，在APRS网络中公开可见。 隐私信息：除呼号外，您在注册激活过程中提供的姓名、联系方式以及其他任何可识别到您个人的信息，均被我们严格定义为非公开的隐私数据。 我们的保密承诺 未经您另行书面授权，我们不会在任何公共信息渠道（包括但不限于公开的网站、API接口、用户目录、社区论坛、第三方数据列表等）主动发布、展示或披露您的任何上述隐私信息。 我们将采取技术和管理措施，确保您的隐私信息仅用于本协议3.1条所述的合法目的（身份验证、合规核查、配合法定溯源），并与您的公开呼号信息进行隔离存储。 用户主动披露的责任划分 任何因您本人在使用设备的功能进行通联、参与第三方社区互动或在任何其他公开场合主动透露自己姓名、联系方式等隐私信息而导致的后果，均由您自行承担。我们的保密承诺不覆盖用户的主动披露行为。\n法定披露的例外 本保密承诺不适用于以下情况：\n根据适用的法律法规、法律程序或政府/司法机关的强制性要求 为维护我们的合法权益，如查找和预防欺诈行为 为保护用户或公众的人身、财产安全免受正在发生或即将发生的严重威胁 第四章 设备管理 4.1 设备保护与改装限制 禁止未授权改装：严禁对设备进行任何拆解、破解、逆向工程或软硬件改装。此类行为将立即导致设备保修失效，并可能导致设备损坏、安全隐患、法律风险等，所有责任由您自行承担。我们保留识别并封禁改装设备的权利。 维修政策：为已改装设备提供维修服务，不视为对该改装行为的认可。我们有权收取额外费用，且不保证设备功能完全恢复。 4.2 设备激活与更新 激活要求：设备需通过提供操作证号进行激活。使用非法手段激活的设备，无法享受保修和技术支持。我们保留在发现违规行为时撤销激活状态的权利。 更新风险：软件更新前建议备份数据。因更新中断、失败或不兼容导致的问题，我们不承担责任。您有权拒绝更新，但需自担功能受限或兼容性风险。 第五章 用户行为监督与处理 5.1 监督机制 我们主要依赖用户举报来发现违规行为。在收到举报或发现明显违规迹象时，我们有权对相关设备ID和通联记录进行技术性核查。\n5.2 申诉机制（核心条款） 申诉渠道：如您的设备被封禁，您有权通过官方提供的申诉网站、邮箱提交书面申诉，说明理由并提交相关证据。 处理流程与时限：我们承诺在收到您的有效申诉后【15个工作日内】完成复核，并向您出具最终处理决定。 最终决定权：我们将基于您提供的申诉材料及本协议条款进行客观复核，并保留基于本协议条款和法律法规对违规行为做出最终认定的权利。 5.3 信息真实性 您保证提供的操作证号、呼号等信息真实有效。提供虚假信息将导致设备被封禁，您需承担由此产生的一切法律责任。\n第六章 协议变更与终止 6.1 协议变更 我们可能根据需要更新本协议。重大变更将通过网站公告链接等方式告知您。如您继续使用设备，视为接受新协议。\n6.2 协议终止 终止条件：您可主动注销账户终止协议；若您严重违反协议、法律法规，或我们停止服务，我们有权终止协议。 终止后处理：协议终止后，您将无法使用相关在线功能。我们将依法保留必要信息。本协议中的知识产权、责任限制、隐私保护、法律适用等条款继续有效。 第七章 法律适用与争议解决 7.1 法律适用 本协议适用中华人民共和国法律。\n7.2 争议解决 因本协议产生的争议，双方应友好协商；协商不成的，任何一方均有权向开发者所在地（浙江省安吉县）有管辖权的人民法院提起诉讼。\n7.3 费用承担 若您的违法行为导致我们卷入诉讼或产生法律费用，您需承担我们因此支付的律师费、诉讼费等合理开支。\n7.4 解释权保留 本协议的最终解释权归安吉小黑盒电子产品经营部所有。\n用户确认 使用本设备即表示您已完整阅读、充分理解并同意本协议的所有条款。您确认自己是具备完全民事行为能力的独立主体，并自愿承担使用本设备的一切风险和责任。您同时确认，在同意本协议前，已充分理解本设备的功能特性，以及本协议中明确列出的各项风险提示。\n","product":"FMO","section":"docs","summary":"FMO 免责条款与隐私政策：数据收集范围、数据保留与用户权利。","tags":[],"title":"FMO(NFM Over Internet)免责条款与隐私政策","url":"/docs/fmo-disclaimer-and-privacy-policy/"},{"content":"按键定义\n部件 功能 频率调谐旋钮 主界面旋转选择频率；长按进入菜单，旋转可在页面之间切换 DASH / DOT 发送按钮 发送点或划（手动键模式下任意键都可发送点或划），可在设置中 Swap Input 交换点划 BOOT 按钮 短按熄屏；熄屏时长按进入竞赛消息页面；长按快捷功能可在设置中定义（Boot Shortcut） 复位按钮 遇到异常死机时点按复位 通联指示灯 / 按键背光 通联时 CW 灯闪烁；按键背光可在设置中开关 接口\n接口 说明 电源供电口 1 支持鼠标、键盘、音量旋钮功能（HID 模式） 电源供电口 2 支持串口功能，波特率 115200，发送字符串 TONE,[频率],[持续时长]\\n 可使 CWO 发音 3.5mm 接口 外部电键输入口，也可在设置中切换为耳机输出口（3.5mm Jack -\u003e Earphone） 机械键盘轴与外部电键\n支持通用五孔机械键盘轴热插拔，可更换自己喜欢的轴体。 外部电键直接插入底部 3.5mm 插孔即可使用；导通发送、断开停止，左/右声道分别代表点和划，可在设置中交换。 使用 2 节手键（3.5mm 只有 2 节）时，如出现短路情况，尝试设置 CW Mode 为 Manual A 或 Manual B。 升级与恢复\nOTA 升级：进入 菜单 -\u003e information -\u003e OTA，有新固件时选择 upgrade 即可。离线固件与更新日志见 CWO 固件页面。 恢复出厂设置：information 界面下长按 BOOT 按钮 5 秒以上，听到嘀嘀嘀后设备重启，所有参数被抹除。重新选择服务器后，你的个人信息会重新恢复到设备中。 注销/转赠设备：在 information 页面长按 Boot 清除设备信息，见如何注销、转赠与清理日志。 ","product":"CWO","section":"kb","summary":"旋钮、BOOT、复位按钮与各接口定义；机械轴热插拔、外部电键、OTA 升级与恢复出厂。","tags":["CWO","硬件","接口","按键","电键","OTA","恢复出厂","串口"],"title":"CWO 的按键、接口与设备维护","url":"/kb/cwo-hardware/"},{"content":"快捷菜单（短按旋钮）\n退出菜单、查看通联日志、活跃服务器列表、收藏服务器列表、所有服务器列表、重发 QSO 请求、在线列表、已关注列表、收藏/取消收藏当前服务器、重新连接当前服务器、发送 APRS CQ、发送 APRS 老友 CQ、发送邻近友台信标、清除未收藏列表、进入设置。\n常用设置项（长按旋钮进入设置）\n分类 常用项 位置与网络 网格坐标、定位方式、配网 WiFi、设备信息、过滤器 显示与声音 背光亮度、背光自动调节、LED 模式/亮度、提示音、发言提示音、屏幕翻转 通联 回波确认、T-CALL 激活、可达性广播、QSO 确认、音频增强、本地频谱保护、接收超时、友台呼叫、静噪等级、频率修正 服务器 凭证、服务器广播、服务器遥毙、编码器、联合管理、语音缓存 电台 电台信息、射频发射、发射/接收频率、亚音、发射功率 系统 固件信息、网页 OTA、在线 OTA、背板 OTA、重置设备 完整说明（含每项功能的详细解释）请查看 FMO 使用说明书 - 菜单选项 与快捷菜单说明。\n提示：菜单键长按功能 可设置菜单键长按为禅模式或输入锁定；旋钮顺时针/逆时针功能 可自定义快捷菜单入口。待机相关功能见禅模式、待机模式与定时待机。\n","product":"FMO","section":"kb","summary":"短按旋钮进入快捷菜单，长按进入设置菜单；这里是常用菜单项的快速索引。","tags":["菜单","快捷菜单","设置","功能索引"],"title":"FMO 菜单和快捷菜单一览","url":"/kb/menu-overview/"},{"content":"FMO 待机界面偶尔会出现几个弹窗图标，它们分别代表不同的提示：\n消息图标\n界面出现消息图标时，表示你有新的短消息。 短消息功能需要登录 APRS-IS 方可使用，登录方法见如何登录 APRS、发送 CQ。 使用电脑或手机访问 FMO 网页后台 fmo.local，进入 消息 页面即可查看并回复。 旗帜图标\n界面出现旗帜图标时，表示有新的通联活动。 短按旋钮，在 查看通联活动 中查看；也可以进入后台的 活动 页面进行查看。 月亮图标\n界面显示月亮时，设备进入了频谱保护模式。 该模式下 FMO 会停止控制射频背板的 PTT 功能，防止外接对讲机时持续发射、干扰本地频谱。 可以短按旋钮退出，或尝试一次上行后自动退出。 关于频谱保护模式的详细说明，请参考频谱保护模式是什么。\n","product":"FMO","section":"kb","summary":"消息图标去后台查看与回复；旗帜图标查看通联活动；月亮图标表示频谱保护模式。","tags":["界面","图标","消息","旗帜","月亮","频谱保护","活动"],"title":"界面上的弹窗图标是什么含义","url":"/kb/interface-symbols/"},{"content":"FMO 提供三种与待机相关的功能，各有不同的用途：\n待机模式\n进入：长按菜单键不放，即可直接进入待机模式。 行为：待机页面会屏蔽射频收发，适合暂时不用设备时挂起。 待机页面操作：进入待机后，可短按旋钮熄灭屏幕（V4.1.6 起）。 唤醒：使用具备 T-CALL 功能的对讲机发送 T-CALL 信号（1750Hz，约 1 秒），可以敲开处于待机页面的 FMO。T-CALL 的含义与对讲机操作方法见什么是 T-CALL？怎么用。 远控：还可以用 APRS-IS 消息遥控 FMO 进入待机状态，需先在 菜单 -\u003e 远控设置 中进行相关配置。 禅模式\n设置：在 菜单键长按功能 中选择「禅模式」（与「输入锁定」二选一），此后长按菜单键即进入禅模式。 用途：进入禅模式后界面保持极简，适合专注通联。 退出：被呼叫时可以退出禅模式。 定时待机\n设备自 V2.2.8 起支持定时休眠：在 菜单 中找到定时休眠相关设置，设定后 FMO 会定时自动进入待机休眠。具体选项以设备当前固件为准。 相关省电设置：背光自动调节（一段时间未使用自动降低亮度）、本地频谱保护（24 小时完全无上行语音且无操作后停止驱动音频播放）。 菜单项位置索引见 FMO 菜单和快捷菜单一览，完整说明见 FMO 使用说明书。\n","product":"FMO","section":"kb","summary":"菜单键长按进入待机模式；禅模式专注通联；定时休眠自动待机。三种待机相关功能的说明。","tags":["待机","禅模式","定时待机","休眠","菜单键","T-CALL"],"title":"FMO 的禅模式、待机模式与定时待机","url":"/kb/standby-modes/"},{"content":"第一次接触 FMO 的人，常常会看到一个看似矛盾的画面：这个网络持证爱好者似乎每天都在折腾什么东西，于是有人得出一个直观的结论——这是一个“开放”的地方。\n本文想澄清一个机制上的事实：FMO的“开放”只存在于接入与构建这两个维度；而在责任维度上，它把\"谁负责\"这个问题，回答得比大多数网络更不留余地。自主管理与问责并不冲突，它们只是同一枚硬币的两面。\n一、自主管理与问责，是两个不同的维度 自主管理，说的是这个网络不依赖单一服务器来运转，决定权在各个持证的爱好者手里。 问责性，说的是网络上每一个可观察的行为，都能且只能归属到一个具体的持证爱好者。 FMO设计的这套机制的思想是：自主管理，问责收紧。这有点类似于国家医疗体系，医生有自主权，但要对结果负责，同样FMO网络里持证爱好者自主治理，但要对自己的行为负责，且 数学上无法抵赖（这是重点）。道理特别朴素：一个系统可不可控，取决于当一件事发生时，责任能不能稳定地落下去。能落下去，它就是可管的；落不下去，无论表面管得多严，它都是失控的。\n在现实世界里，自主管理不是靠人人道德自觉，而是靠机制让“为自己负责”和“为系统负责”重合。FMO借鉴了这个设计：每个人都是自己行为的第一责任人，在互联网上，匿名会伤害这种责任追溯，因此FMO用数字证书/数字签名强行把数字身份和真实身份进行绑定，实现了数学上的不可抵赖。这正是FMO和MMDVM/EchoLink这种松散的通联结构最大的不同–FMO内化了追责机制，且把这套问责机制做成了整个网络的地基，是国家机器可以对整个FMO网络进行管控的根本，是整个系统安全边界。\n二、入口即实名：一台设备，锚定一个人 设备绑定激活是进入这个网络的唯一入口，而第一道校验不来自厂商，而来自国家：\n绑定必须通过 CRAC 官方接口验证电子操作证——这是国家无线电管理体系中登记在册的数据。 同时核验身份信息与手机号，背后是运营商的实名认证体系。 我们不自作主张判断\"谁是爱好者\"。我们只是把现成的权威信任串联起来：CRAC 说你持证，运营商说你是你，设备才被允许开出一张属于你的凭证。\n由此得到一个结构性的结果：这个网络里没有匿名注册，也没有批量开号的土壤。一台设备在出厂、绑定、激活的整个链条里，始终对应着唯一一个实名呼号。责任的第一环，在发证与登记机构那里就已经被锚定。\n未持有操作证、未通过实名核验的人无法获得设备身份，因而无法进入网络——准入机制天然排斥无身份进入。对监管而言，每一个在线主体都是经过核验、可唯一对应的真实身份，溯源无需追查未知信源，责任从一开始就锚定在具体个人身上，地区自主可控。\n三、谁在说？能冒充？可否认？ 我们写了不少数字证书、签名的技术文档，这些词，容易让不搞技术的人望而生畏。其实这套体系做的事，可以还原成三个大白话问题。\n问题一：是谁在说？ 一个 FMO 爱好者开口通联，从来不是从一个匿名账号里冒出来的。那可能有人会想：那平时通联时，每次都要有一个中心平台来证明我是谁吗？\n这里有一个关键的思维反转：\n传统商业平台的做法是：由一个中央服务器来证明“你是谁”。\nFMO 不是商业平台，它是业余无线电爱好者自发组建的网络，没有中心服务器可以替任何人背书。\n所以它换了一个问题：不是“平台证明你是谁”，而是“你自己证明你是谁”。\n这听起来像要你证明“我是我妈生的”一样难。但在数字世界里，这件事可以通过 数字证书/签名体系 实现。你不需要理解算法细节，只要知道：你可以出示一份数学证明，别人能立刻验证它为真，却无法伪造。银行的U盾/互联网的安全https都是用这套思想。而FMO没有发明新东西，只是把这套思想用在“验证你是一个持证爱好者”这件事上。\n基于这个前提，FMO 的安全身份机制就清楚了：\n你拿什么证明自己？ 你手里那台设备，经过 CRAC 接口核对过电子操作证，绑定了你的实名信息。设备里存着一份只有你能用的身份凭证。这把“你这个人”和“你的呼号”锁在一起，别处没有第二把。\n怎么证明这个呼号是你的？ 入口即实名。你必须先用国家认可的证明，证明自己是持证爱好者，系统才会给你一份“设备认可证明”，上面写着“认可你是爱好者，你的呼号是 XXX”。\n怎么证明给别人？ 不需要去任何认证中心开证明。你直接说“我是某呼号”，然后出示凭证。对方当场在本地验核你的凭证和设备认可证明，不靠任何人转告，也不靠服务器担保。\n对外公告也一样。 设备在 APRS 上发布的台站公告，每一条都带签名和设备认可。任何设备都能独立验明“这条确实出自该呼号”。想冒用别人的呼号？你没有他的凭证，就永远证明不了。\n这个设计实现了一个没有核心实时运行服务器的网络，却让信任可以自己流转。它把真实的身份牢牢锁定在本人真实的物理身份之上。\n也就是说在开口之前，这个机制就已经把“说话的人是谁”锁定好了。\n问题二：能冒充别人吗？ 直接顶用别人的身份登录：如果你看明白问题一，就知道这件事儿数学上做不到，FMO使用了数字证书/签名体系。身份凭证在本人设备里，认证这一关就过不去；设备转手时，旧主人必须先删除自己的凭证、新主人重新实名签发，身份不能像旧名片一样传给下家。 借真身份的名义说话：实时语音无法逐包做公钥运算——成本与延迟都不可行，因此媒体数据明文传送、不逐包签名。理论上，有人可以在保持自己合法连接的同时，把包头声明写成别人。但只要装了审计组件（FAS），服务器会实时比对\"包头声明是谁\"与\"连接认证出的是谁\"，只要对不上，这条连接就被自动拉黑：踢下线、禁连、全程留痕（参见FAS 安装指南）。在尽责的服务器上，声音与本人是一一对应的，冒名者刚开口就会被请出去；没装审计组件的服务器没有这道自动防线，只能靠管理员人工把关，但这不意味着责任消失，如果管理人员把关不严，无法溯源，那么责任就会重重的落在他的肩上。 问题三：事后赖得掉吗？ 公告与广播层：带签名、进入 APRS 公开档案长期留存，公开、可验； 服务器的事件层：登录、上下线、发言时段、被拒、被踢等由审计组件(FAS)记录，可按时间轴反查；冒名者开不了口，真实身份说过的话，责任当然归属于绑定身份的那个人。 在这张网里，找不到一个没有责任的位置让你偷偷说话。\n恶意干扰并不依赖事后举报：身份冒用、声明与连接不符等行为会被审计组件自动识别、即时拦截并全程留痕——干扰即发现，发现即留痕。\n四、留痕留的到底是什么? 通联产生的痕迹，分两类：\n公共的活动档案-APRS：设备与服务器对外发布的公告与广播（在用户主动开启发布功能的前提下），进入 APRS 公开网络后被收录并长期留存。它们带着可验证的签名，公开、可查、跨服务器存在。要特别注明：它记录的是‘谁、何时、对外宣告了什么’，并且带有数字签名，是一份可验证的公开档案，可以随时被调取并验证签名。 节点上的事件记录-服务器：一个完整安装SAS+FAS组件的服务器会记录登录、上下线、发言时段、被拒、被踢等事件。 所以，这个设计的着力点不是替谁保管内容，而是让归属在任何时候都锚得住——谁在线、谁在说话、是不是他本人、有没有人冒名。记录服务于\"责任落得到人\"，而不是服务于\"尽量多存数据\"。\n说清这些，是为了避免一个误会：这一切不是监视。业余无线电本来就是公开通信，但也不应该给任何人\"说了当没说\"的错觉，因为：所有对外的公告一旦进入公开档案就难以抹掉；在完整的节点上，每一次上线、每一段发言都连着你的呼号。 让行为产生后果，靠的是这些事实，而不是一句口号。\n五、服务器与集群：责任没有藏身处 有人会问：个人可以追，那服务器呢？几个服务器抱团呢？\n服务器不是匿名的中转站。 每一台服务器同样由持证的个体建设，以数字身份运行，它在 APRS 网络上发布的公告同样带可验证的签名。服务器只是流量的转手点，不是责任的终点：跨服务器的内容纠纷遵循一条原则——内容从哪个出口出去，哪个出口就要说清它从哪来；拿不出完整的流转记录，管理失职的责任就落在这个节点自己头上。这里要诚实补一句：装不装审计组件、留不留事件记录，由服务器管理员自己决定，但不装、不留，不等于没有责任，只是把安全责任整个压到了管理员自己肩上。\n集群也摊不薄责任。 几台服务器以联盟、共用后台、联合宣导的方式\"协同作战\"，并不会凭空产生一个新的责任主体。协议不承认任何集群的\"官方\"地位；落到账面上，依然是每台独立服务器各自的记录。想用组织化的方式把责任稀释掉，在这个体系里稀释不掉——账面上从来没有\"集群\"这个主体，只有一台台身份可查、行为可问的服务器。\n所以在 FMO 里，一条消息无论经过多少台机器、背后站着多少人，能被问到的最终对象只有一个——那个持证上线、以本人身份说话或建服的人。全网没有任何一处，能让责任\"再往上找就找不到\"。\n这意味着监管部门溯源时无需追查未知信源：每一次内容出口都有明确的责任主体与完整流转记录，出口节点先承担管理义务，线索链完整、可核验。\n六、生态内外的边界 生态内部，最重的手段是数字证书吊销：当某个呼号或某台服务器严重越过底线时，其数字身份在协议下被整体撤销，无法继续使用任何基于FMO设备的服务。\n生态外部，也就是涉嫌违法的行为，不属于协议能管辖的范围，但也不会因为离开了某台服务器而消失。入口的实名、设备的身份、出口的记录，三者都在，链路指向一个清晰的主体。在法定义务范围内，我们愿意配合有关部门依法核查，这一承诺也写进了设备的免责与隐私声明。\n把两件事放在一起：这个生态把建设与选择的权利交还给爱好者，同时也把每一条行为的责任，完整地放在行为者肩上。\n自主管理不等于放任，自由不等于免责。 FMO 的选择是：把连接的权力交给社区，把规则的演化交给协议，把责任的重量交给每一个持证的个人。这套设计能成立，恰恰因为责任落得到具体的人头上——正因为落得到人，网络才敢放心地交给社区。\n行为即信用，信用即后果。 ","product":"FMO","section":"docs","summary":"说明 FMO 生态中自主管理与问责如何并存：责任如何经实名、证书与签名逐层锚定到具体持证个人","tags":[],"title":"FMO(NFM Over Internet) 责任模型","url":"/docs/fmo-responsibility-model/"},{"content":"除了日常通联，CWO 还有一些趣味玩法：\nCWO MIDI 播放器\n由爱好者 BG6VMZ 开发，可以让 CWO 变成一个 MIDI 播放器播放音乐，软件中还附带了一些 MIDI 曲目可选播。 下载：CWO MIDI 播放器（也收录在配网和其他通用软件页面）。 原理：通过供电口 2 的串口发送 TONE,[频率],[持续时长] 指令让 CWO 发音，接口说明见按键、接口与设备维护。 屏保桌搭\n打开 菜单 -\u003e settings -\u003e Screen Saver 后，屏幕会显示你的呼号和时间，信号在线提醒保持在线，放在桌面上就是一件酷炫桌搭，朋友上线即可立即通联。 HID 三种玩法\n键盘模式：解码内容以键盘方式输出到电脑，方便保存通联记录。 鼠标模式：CW 信号以鼠标左键方式点击，适合在 LCWO 等练习网站上进行训练。 音量旋钮：待机时旋转旋钮即可调节电脑音量。 机器人抄报\n1.000~1.035 频段有自动机器人播报不同速度的摩尔斯码，供抄报练习，该频点无法发射。分段倡议见频率使用倡议。 瀑布图\n通联时可通过瀑布图看到当前信道附近的信号情况，最多 35 个通道同屏显示，就像一个迷你 SDR 短波电台。 想系统学习 CW 的话，可以到 CW 学习资料 下载通联程序、抄报教材与 CW 词典。\n","product":"CWO","section":"kb","summary":"MIDI 播放器、屏保桌搭、HID 键盘/鼠标/音量旋钮、机器人抄报与瀑布图等趣味玩法。","tags":["CWO","趣味","MIDI","桌搭","HID","瀑布图","机器人抄报"],"title":"CWO 趣味玩法","url":"/kb/cwo-fun/"},{"content":"FMO 有一个网页后台，可以完成网格、过滤器、定位方式、可达性广播等更详细的设置：\n进入 菜单 -\u003e 设备信息，找到设备的 IP 地址，用手机或电脑访问该 IP。 电脑和苹果设备也可以直接访问 fmo.local（需在同一局域网内）。 后台中也可以生成 SAS 搭建命令、查看服务器信息、进行高级设置。部分设置会影响使用体验，请仔细阅读页面说明。 如果 fmo.local 无法访问，请优先确认设备与电脑在同一网络，并尝试使用 IP 地址访问。\n","product":"FMO","section":"kb","summary":"同一局域网内访问设备 IP 或 fmo.local，即可进入后台配置页面。","tags":["后台","fmo.local","网页配置","IP","mDNS"],"title":"如何进入 FMO 网页后台","url":"/kb/local-web/"},{"content":"FMO生态的运转不依赖统一管控，其秩序来源于一套清晰的治理原则。本文就FMO的本质属性、生态运转原则及技术底线作统一说明，核心是让责任、信任与选择权回到每一个参与者手中。所有参与者均须遵守所在国家/地区的法律法规。\nFMO网络以真实身份核验为准入前提：未通过认证的个体无法进入网络；身份冒用与异常行为可被自动识别并留痕，干扰即发现。各地区的服务器建设、证书管理与治理均可在本地独立运作，具备地区自主可控的特性。\n一、FMO是什么：协议优先于设备 很多爱好者接触FMO是从购买设备开始的，容易直观地认为它是一台硬件对讲网关。但从技术本质上讲，你手中的FMO设备，更像是一台\"持证业余无线电专用路由器\"。\n传统路由器是硬件，但它必须运行TCP/IP协议才能接入互联网。至于你连到哪个运营商、访问哪些网站，由你自己决定，不由厂家控制。互联网站点本就百花齐放、参差不齐，这同样不由路由器厂商控制。\nFMO设备同样如此：它内部运行的是一套供认证爱好者自建服务器互联的网络协议与数字身份体系，而非统一的运营平台。这个协议负责把你的模拟语音装进数字包裹，并在身份认证与对外公告这两个关键环节使用数字签名——上线连接须过身份认证，台站公告带可验证签名，归属清晰可溯。需要说明的是，通联媒体为实时语音，数据包头明文、不逐包签名；话者的归属由连接身份与会话绑定，受管服务器可对事件留痕，这是FMO网络所特有的责任机制。至于你访问哪个服务器，由你自己决定，不由厂商控制。服务器建设者们同样各有其多样性，也不由设备厂商控制。\n设备只是协议的载体，网络才是协议的运行空间。\n二、服务器的自主管理与多样性 正因为FMO运行的是一套协议而非一个网站，所以它具备\"路由器式\"的自主构建特性：\n连接自主：协议只定义\"怎么连\"，不定义\"连到哪\"。设备可同时发现多个服务器地址，用户随时切换，就像选择Wi-Fi热点一样。 构建自主：任何持证爱好者均可自行搭建服务器。 规则自主：服务器管理员自主决定内部通联规则及黑名单管理，这些规则仅约束该服务器内部。 所有服务器均由爱好者自行搭建、自行管理、自行承担运维责任。我们既不控制任何服务器，也不为任何服务器的具体行为背书。\n生态内服务器风格各异，有人偏重严肃通联，有人倾向轻松交流，有人用于技术实验。我们不需要用\"正常\"或\"异常\"去衡量不同风格的服务器，它们只是在同一协议下以不同方式存在。但我们这里再次强调：这里的所有身份化行为，都与建设者的数字身份绑定，可追溯到具体个人。\n三、社交空间与通联网络的边界 请务必区分两个不同维度：\n微信群等社交媒介：属于自由的讨论空间，言论不代表FMO技术网络。 FMO网络上的广播与连接数据：带数字签名、可独立验证的技术行为（逐条签名作用于 APRS 广播与连接认证；实时通联媒体不逐包签名）。 两者互不混淆，互不替代。社交空间的情绪与分歧，不应干扰对技术网络的客观认知。\n四、信任与责任的主体 在FMO生态中，每个人是自己信誉和责任的第一主体。\n服务器的声誉由历史行为构成，无人参与的服务器自会消亡。服务器的活力不由建服者的单方面坚持所决定，而取决于社区成员是否愿意持续参与和接入。 用户自由选择接入或避开任何服务器，选择权始终在你手中。 用户发言的归属由服务器侧的连接认证（SAS）与身份比对审计（FAS）共同保障：包头声明与连接身份不一致的连接会被自动拉黑、踢下线并留痕。 我们不需要谁去当谁的监护人，也不替任何人做选择，更不为任何服务器站台。\n五、可验证的技术基石 上述原则并非依赖道德自律，而是建立在可验证的技术基础上：\n身份与公告可验证：连接认证与对外广播带数字签名，与特定呼号绑定，不可抵赖；实时通联语音不逐包签名，其归属由会话身份校验与审计组件保障。 行为可追溯：广播公告（在用户主动开启发布功能后）经 APRS 网络收录并长期留存，成为呼号历史行为的一部分，可查、可核验、不可抵赖。 这不是为了监视，而是为了让信任有据可依，让行为产生后果。\n当广播可验证、行为可追溯时，后果自然伴随而生：一个人的对外活动会沉淀为公开信迹。社区成员可以基于这些信迹，自主决定是否愿意与某个呼号或某个服务器继续通联。这不是统一平台自上而下的\"封号惩罚\"，而是在由认证爱好者自建服务器组成的网络中，每个参与者基于事实做出的理性选择。\n信任从来不是靠宣言建立的，而是靠行为一件件证明的。同样，信任的崩塌也来自行为的积累。这就是可验证技术架构下的后果机制：\n行为即信用，信用即后果。\n在这张由认证爱好者自建服务器组成的网络里，你的信迹伴随你整个通联生涯，无法重置，无法洗白。\n对于极少数严重破坏底线、损害FMO生态根本利益的极端行为，我们将启动数字证书吊销机制。这是FMO身份验证体系中的最高技术措施，意味着该呼号的数字身份在FMO网络中被彻底撤销，无法继续使用任何基于FMO协议的服务。\n我们不轻易动用这一权力，但当底线被明确突破时，我们有责任执行。\n最后 我们承诺三件事： 确保身份可追溯，确保行为有后果，确保选择权在你。\n另外，我们提醒您： 做事需考虑后果，行为必留痕迹。\n我们将持续维护公开的协议标准与身份验证体系，确保呼号不被冒用，能溯源至主体。除此之外，我们选择把空间交给社区，把责任交还个体。\nFMO网络的本质，不是没有规则，而是规则由参与者在技术框架内共同演化。\n愿各位在FMO生态中，找到适合自己的通联方式。\n治理规则补充 【2026/8/28】服务器风险提示： 服务器由爱好者个体独立搭建和维护，其软硬件环境、管理员操守、安全防护水平均存在客观差异。用户应自行评估风险，谨慎选择接入的服务器。同时，服务器的行为同样可追溯——服务器以数字身份运行，其对外的广播公告同样带可验证签名；其运营事项（配置变更、黑名单操作等）公开透明，流转与事件记录在治理框架内可被要求提供并核验。如果某服务器长期存在严重违规、欺诈或危害生态的行为，社区成员可依据公开信迹自主选择远离，并可能触发对其证书的审查或吊销程序。在由认证爱好者自建服务器组成的网络中，服务器亦无“隐身”特权，其行为同样沉淀为不可抹除的信迹。\n【2026/8/28】集群运营风险提示： 除单个服务器外，还需警惕多个服务器以联盟、共用后台、共享黑名单、联合宣导或共同承担声誉等方式形成的集群。集群内部可能制定超出协议范围的协同规则，这可能带来责任稀释（出问题时互相推诿）、信息茧房（集群统一屏蔽特定呼号）、联合排斥（多个服务器集体拒绝某用户）或变相垄断（集群成为事实上的“官方”）。需要明确的是：FMO协议本身不承认任何集群的“官方”地位，集群内部的协约不属于协议范畴，也不受本说明约束。每个服务器依然独立可追溯，但集群整体行为难以归责于单一主体，参与者需自行辨别。我们提醒所有用户，保持对任何集群的理性审视，切勿将集群等同于FMO网络本身。集群的存在与否，不影响您自主选择服务器的权利。对于集群管理，遵循单个服务器原则。\n【2026/8/28】关于跨服务器投诉的举证原则： 当某个服务器（下称“目标服务器”）上出现被投诉的违规内容时，无论该内容最初来源于目标服务器内部用户、集群内其他服务器转发、还是任何外部信源，目标服务器作为内容出口节点，对其转发的所有通联内容负有管理和溯源的直接责任。 投诉发生后，目标服务器的运营者应提供该内容在其节点上的完整流转说明（包括但不限于接收时间、来源标识、转发记录、连接与会话认证信息、可用的广播签名等可验证材料），以证明自身管理规范、来源清晰可溯。若目标服务器无法提供此类有效证据，则说明其未能履行作为独立节点的基本管理职责——责任归于目标服务器本身。 在此情况下，协议维护方及社区将优先对目标服务器进行核查，其信誉将因管理缺位而受到实质性质疑。对于情节较重或屡次出现类似情况的目标服务器，我们将启动证书吊销程序，吊销该服务器在FMO网络中的数字身份。需要强调的是，核查与吊销的对象是未尽责的服务器节点，而非追究无法追溯的原始信源——因为溯源和管理的义务在于每个出口节点自身。我们鼓励服务器运营者建立规范的日志管理体系，这不仅是对社区负责，也是对自己负责。在爱好者自建服务器组成的网络中，每一个转发节点都是责任的承担者，而非单纯的通道。\n【2026/8/29】 关于第三方数字证书认证平台风险提示： 在FMO生态中，数字证书是身份验证与行为溯源的基石。目前我们仅通过FMO硬件设备进行数字证书的颁发，这基于硬件可信执行环境的物理安全保障，是目前我们认为相对安全的证书分发渠道。 我们也会不定时发布安全补丁\\证书轮换等动作对设备进行安全性增强。\n需要提醒社区成员的是，我们不排除未来可能出现第三方自行搭建的数字证书认证平台，也尊重任何个人或组织在法律允许范围内进行技术探索的自由。但需要明确的是：我们对其证书签发流程、密钥管理安全性和身份核验标准既不知情，也不予背书。 这些平台所颁发的证书的有效性由各服务器运营者自行判断，协议维护方不承担任何连带责任。您可以关注：授权列表,来了解最新的开发者授权信息。\n我们建议所有用户和服务器运营者对第三方认证平台保持警惕和审慎态度，在接入或接受此类证书之前，自行核实其可信度与安全性。数字证书关系到您的呼号身份不被冒用、您的身份化行为可验证可追溯，这一环节的安全不应轻信任何未经检验的第三方。 选择权始终在您手中，我们建议您在AI工具十分发达的当下，应充分对其技术进行审慎的评估，然后做出自己的决定，也请理解：安全的选择和风险的选择，后果都由选择者自己承担。\n","product":"FMO","section":"docs","summary":"FMO协议优先于设备、服务器自主管理与多样性、信任与可追溯机制的统一说明","tags":[],"title":"FMO(NFM Over Internet) 关于生态共建与治理原则的说明","url":"/docs/fmo-ecosystem-governance/"},{"content":"FMO 在线地图（FMO Tracker）用于实时查看 FMO 网络的状态：\nhttps://map.bg5esn.com\n地图上可以浏览：\n台站：当前活跃的 FMO 台站分布 设备：在线设备信息 通联：服务器上的通联情况 待认证：待认证状态 地图数据基于公开的 APRS-IS 数据，仅展示 FMO 相关的公开技术信息。收不到服务器时，也可以用它判断服务器在线状态（服务器广播周期约为 10 分钟，请稍候再刷新）。\n第三方地图（非官方提供，供参考）\nfmomap.com：基于公开 APRS-IS 数据查看服务器在线状态 map.fmo.net.cn：由 BG9JYT 开发，实时抓取 APRS 网络上 FMO 节点的地理位置与状态 以上第三方地图均为独立服务，非 FMO 官方提供。此类地图本质上是 APRS-IS 的在线客户端，所有消息均来自开放的 APRS-IS 网络。\n","product":"FMO","section":"kb","summary":"通过 map.bg5esn.com 实时查看 FMO 台站、设备与通联状态。","tags":["地图","在线地图","服务器状态","台站分布","APRS"],"title":"FMO 在线地图","url":"/kb/fmo-map/"},{"content":"注销与转赠\n进入 菜单 -\u003e information 页面，长按 Boot 按钮，清除设备信息，设备会回到默认页面。 此时可以让其他朋友扫描设备上的二维码，并按照二维码内的提示操作，即可完成新的注册。 注意：在转赠用户登录前，设备将一直绑定您的呼号。如果您单纯想注销呼号，可发送邮件至 xifengzui@yeah.net，我们将处理数据库并删除您的信息。\n转赠前建议同步清理通联日志，避免个人通联记录留在设备中。\n清理日志\n进入 菜单 -\u003e settings -\u003e log 页面，长按 Boot 按钮，选择确认即可清理日志。 日志的查看与备份见通联操作与特殊指令，恢复出厂设置的区别见按键、接口与设备维护。\n","product":"CWO","section":"kb","summary":"在 information 页面长按 Boot 清除设备信息完成注销转赠；在 log 页面长按 Boot 清理日志。","tags":["CWO","注销","转赠","解绑","日志","清理"],"title":"如何注销、转赠与清理日志","url":"/kb/cwo-account/"},{"content":" ℹ️ 与 SAS 的关系：SAS 认证谁能进来（证书链验证），FAS 以 Web 面板形式审计谁在干什么（流量统计/身份控制/黑名单管控）。建议部署完 SAS 后安装 FAS，补上安全性最后一公里。\n为什么需要 FAS SAS 验证连接身份，但 FMO 数据包头为明文声明、不带签名——攻击者可用合法身份连接后在包头写入他人呼号冒充广播。FAS 是一个 Web 审计面板（启动后监听 :9527，浏览器访问即可），它的工作是比对\"声明\"与\"身份\"，不一致即自动拉黑该连接的身份（踢下线 禁连 留痕），默认最高保护。同时提供流量排行榜、主题统计时间轴反查、黑名单管控（永久/临时自动解除）、在线列表和健康监控。\n方式一：一键脚本安装 🖥️ 一行命令完成下载、注册系统服务并启动，浏览器访问 http://\u003c服务器IP\u003e:9527 即可打开审计面板：\nLinux (需要 root 权限):\ncurl -fsSL https://bg5esn.com/share/fmo/fas-installer/install.sh | sudo bash Windows (以管理员身份运行 PowerShell):\nirm https://bg5esn.com/share/fmo/fas-installer/install.ps1 -OutFile \"$env:TEMP\\fas-install.ps1\"; iex (Get-Content \"$env:TEMP\\fas-install.ps1\" -Raw -Encoding UTF8) 安装脚本会自动完成以下操作：\n检测系统平台，下载对应版本 安装至 /opt/fmo-fas/（Linux）/ %LOCALAPPDATA%\\FMOAuditService\\（Windows） 注册系统服务并启动（Linux: systemd / Windows: 计划任务） 服务管理 - Linux：\n项目 说明/指令 日志 journalctl -u fmo-fas -f 启动 systemctl start fmo-fas 停止 systemctl stop fmo-fas 重启 systemctl restart fmo-fas 升级 sudo /opt/fmo-fas/fmo-audit-service –update（systemd 自动重启） 卸载 curl -fsSL https://bg5esn.com/share/fmo/fas-installer/uninstall.sh | sudo bash 安装目录 /opt/fmo-fas/ 服务管理 - Windows（管理员 PowerShell）：\n项目 说明/指令 日志 Get-Content -Wait “$env:LOCALAPPDATA\\FMOAuditService\\fas.log” 启动 Start-ScheduledTask -TaskName fmo-fas 停止 Stop-ScheduledTask -TaskName fmo-fas 重启 Stop-ScheduledTask fmo-fas; Start-ScheduledTask fmo-fas 升级 Stop-ScheduledTask fmo-fas; \u0026 “$env:LOCALAPPDATA\\FMOAuditService\\fmo-audit-service.exe” –update; Start-ScheduledTask fmo-fas 卸载 irm https://bg5esn.com/share/fmo/fas-installer/uninstall.ps1 -OutFile “$env:TEMP\\fas-uninstall.ps1”; iex (Get-Content “$env:TEMP\\fas-uninstall.ps1” -Raw -Encoding UTF8) 安装目录 %LOCALAPPDATA%\\FMOAuditService\\ 方式二：手动安装 🖥️ 访问 GitHub Release 页面 下载对应平台的二进制包（如 linux-x64 下载 *linux-x64.tar.gz，Windows 下载 *win-x64.zip）。 🖥️ 解压至服务器目录： # Linux mkdir -p /opt/fmo-fas \u0026\u0026 tar xzf fmo-audit-service-linux-x64.tar.gz -C /opt/fmo-fas # Windows: 解压 win-x64.zip 至任意目录 🖥️ 运行 ./fmo-audit-service（Linux）或双击 fmo-audit-service.exe（Windows），服务监听端口 9527。如需后台运行可自行配置 systemd / 计划任务（参考方式一的系统服务配置）。 浏览器访问 http://\u003c服务器IP\u003e:9527 完成首次配置。 首次配置 浏览器访问 http://\u003c服务器IP\u003e:9527，设置管理员账号（首次强制） 🖥️ 配置页填入 EMQX 地址 + API Key / Secret（EMQX Dashboard → 管理 → API 密钥） 启用主题统计：填主题 FMO/RAW，Webhook 地址同局域网用 IP 快速选择按钮（异地集群改公网可达地址） 身份控制默认启用（最高保护）——包头与连接身份不一致的包自动拉黑，管理员可在设置页关闭 或命令行配置（替代步骤 2-3，适合批量部署/无浏览器环境）：\n# 环境变量方式（Secret 不进 shell history） EMQX_URL=http://\u003cEMQX地址\u003e \\ EMQX_API_KEY=\u003ckey\u003e \\ EMQX_API_SECRET=\u003csecret\u003e \\ EMQX_MONITOR_DB=/opt/fmo-fas/fmo-audit-service.db \\ fmo-audit-service --configure 自动完成：验证连接 → 保存配置 → 设置主题统计 bridge（分步日志输出，失败退出码 1）。 ⚠️ 必须带 EMQX_MONITOR_DB=/opt/fmo-fas/fmo-audit-service.db（install.sh 安装的 unit 服务 db 路径），手动 shell 里没有该变量，不带会写进默认数据目录导致服务读不到。\n安全部署（反代 HTTPS） 部署方式 说明 内网直连 默认即可，信任局域网 反代 HTTPS Nginx/群晖反代，需启用 EMQX_MONITOR_TRUST_PROXY=1（systemd 加至 Environment 或设置页配置） 私有组网 Tailscale/WireGuard 组网，公网不暴露端口 server { listen 443 ssl; server_name monitor.example.com; ssl_certificate /path/cert.pem; ssl_certificate_key /path/key.pem; location / { proxy_pass http://127.0.0.1:9527; proxy_set_header X-Forwarded-For $remote_addr; proxy_set_header X-Forwarded-Proto $scheme; proxy_set_header Host $host; } } 环境变量 变量 默认值 说明 EMQX_MONITOR_PORT 9527 HTTP 监听端口 EMQX_MONITOR_DB 用户数据目录 SQLite 数据库路径（如 /opt/fmo-fas/fmo-audit-service.db） EMQX_MONITOR_TRUST_PROXY - 反代时设为 1，信任 X-Forwarded-For 计算客户端 IP FAS_UPDATE_URL https://bg5esn.com/share/fmo/fas.json OTA 更新元数据地址 EMQX_URL - 命令行配置（–configure）用：EMQX 地址 EMQX_API_KEY - 命令行配置（–configure）用：API 密钥 Key EMQX_API_SECRET - 命令行配置（–configure）用：API 密钥 Secret 数据与备份 数据文件：/opt/fmo-fas/fmo-audit-service.db（Linux）/ %LOCALAPPDATA%\\FMOAuditService\\fmo-audit-service.db（Windows）。含 EMQX API Secret / 管理员哈希，请勿以 root 运行服务 统计与审计数据保留 30 天自动清理；备份：sqlite3 fmo-audit-service.db \".backup /backup/fas-$(date +%F).db\"（WAL 模式下不要直接复制文件） EMQX 集群注意事项 项 说明 API 集群视图 EMQX 地址填任意节点即可，clients、banned 均为全集群视图 黑名单/身份控制 banned 集群级——任一节点拉黑，全集群拒绝该呼号 webhook 不重复 每条消息只在入口节点触发一次规则，不双计 版本一致性 集群内 EMQX 版本应一致 常见问题 (Q\u0026A) Q: 友台登录就被拉黑，是什么原因？ 经排查确认，目前已知以下两种可能原因：\nSAS 服务未安装：FAS 依赖 SAS 服务提供的客户端属性（client_attrs）作为基础特性。未安装 SAS 时，客户端连接不带身份属性，FAS 遇到任何人都会直接拉黑。请确认服务器侧已安装并运行 SAS 认证服务。 客户端认证配置错误：已有用户将 EMQX 的 HTTP 客户端认证（Authentication）误配成了客户端授权（Authorization）。请检查自己的配置是否犯了如上错误——认证建在\"认证\"下，不是\"授权\"下。 提示：修正配置后，之前被误拉的呼号可在 FAS 黑名单页手动解封。\nℹ️FAS 说明 FAS (FMO Audit Service) 为 FMO 审计守护 Web 服务，部署在 EMQX 旁边。启动后浏览器访问 http://\u003c服务器IP\u003e:9527 打开审计面板：流量排行榜、身份伪造自动拉黑、黑名单管控、在线列表、健康监控等。SAS 验证\"你是谁\"，FAS 盯住\"你在干什么\"——两者互补保障服务器安全。\n开源地址：github.com/BG5ESN/fmo-audit-service 支持平台：linux-x64 / linux-arm64 / linux-arm / osx-x64 / osx-arm64 / win-x64（单文件自包含二进制，内置 .NET 运行时 + SQLite，零依赖） ","product":"FMO","section":"docs","summary":"FMO 审计工具安装与配置指南——流量统计、身份控制、黑名单管控","tags":[],"title":"FMO(NFM Over Internet) FAS 审计工具安装指南","url":"/docs/fmo-fas-install-guide/"},{"content":"待机界面显示月亮符号时，表示设备进入了频谱保护模式。\n它做了什么\nFMO 停止控制射频背板的 PTT 功能，防止外接对讲机时持续发射、干扰本地频谱。 该模式用于保护本地无线电频谱，避免网络盒子在异常情况下长时间占用频率。 如何退出\n短按旋钮即可退出。 或者尝试一次上行后自动退出。 为什么重要\n频谱是全体业余无线电爱好者共有的资源。FMO 作为接入互联网的网络盒子，一旦配合对讲机使用，就有责任防止对本地频谱造成过度干扰。频谱保护模式把这份责任做进了设备行为里——宁可暂时停发，也不持续占用频率，这是 FMO 社会责任设计的一部分。\n界面图标的完整说明见界面上的弹窗图标是什么含义。\n","product":"FMO","section":"kb","summary":"月亮符号表示频谱保护模式：停止控制背板 PTT，防止网络盒子过度干扰本地频谱。","tags":["频谱保护","月亮","PTT","背板","干扰","频谱"],"title":"频谱保护模式是什么","url":"/kb/spectrum-protection/"},{"content":"关于FMO的证书，有几个很常见的误解。\n我先把重要的话说三遍：每个服务器，都是完完全全、完完全全、完完全全独立的。\n让不让谁进来是每个服务器管理员自己的决定，不是我的要求。下面把这些常见误解一条条说清楚。\n1. “进服务器要ESN的证书，其他证书服务器不认，所以ESN的服务器是封闭的。”\n这是很多人试过证书后的第一直觉。有这种直觉的朋友，下意识里其实以为这些服务器都是ESN开的——我要真有那么多钱运营这么多服务器，那也太牛了。\n先换位思考一下：假设你是服务器管理员，你愿意接受谁进你的服务器？\n你可能会回答：“我欢迎所有HAM。“但谁是HAM？\nESN做的就是给FMO用户打上\"我是真正的HAM\"这个标签，并且持续完善机制，确保没有伪造身份的人。所以独立的服务器管理员选择相信ESN，选择让这些FMO用户登录。注意，是管理员自己选择，不是ESN要求管理员这么做。\n2. “既然如此，为什么ESN不给所有ham打标签？”\n反过来问一句：我凭什么相信所有人？换做是你，你愿意无条件相信所有人吗？\n发一张证书，等于用我的信誉替这个身份背书。一旦有人伪造身份，别人找的是我。既然如此，我只会给我能核验、能负责、能找到、能落地、能被吊销的人发。而且只能沿着我信得过的渠道传递。目前我唯一敢用的渠道就是FMO硬件的可信执行环境。其他渠道我不敢相信，自然不敢背书。你不能把所有人的管理责任放我头上呀，我也不是什么圣人，承受不了所有非议，谢谢理解。\n3. “嗨ESN，我是你兄弟，我认为我值得你信任，给我开个绿灯呗？”\n假设我开了先例，一次、两次、三次……直到有一天，用FMO设备的人全成了\"我兄弟”。那么你作为有意向建服务器的人，看到各种N0CALL、VIP111的FMO设备在各个服务器里乱窜，还敢建服务器吗？\n这个问题不用我回答，相信你已经有了自己的答案。\n4. “我也在FMO某些服务器上看到过N0CALL！”\n重要的话再说三遍：每个服务器，都是完完全全、完完全全、完完全全独立的。 而且我也有信任的权力。\nFMO通过PKI的方式引入呼号和UID的对应关系。那些N0CALL，是独立服务器自己的选择，引入了其他信源，属于他们自己的责任范围，我不做管理。但只要越界被举报，我自然会收回我的信任——吊销他设备上的FMO证书。他的服务器照样可以自己玩，照样可以放N0CALL，只是FMO信任体系不再信任他。信任是相互的。大家都是成年人，需要为自己的选择负责。既然不再遵循HAM的规则，那使用FMO的爱好者也不该再出现在这些服务器上。而尽责的服务器管理员，只要按照ESN的教程配置好，且不引入其他信号源，就不会有这种问题。换句话说，服务器之间是隔离的。\n5. “你这样不就是事实上垄断了吗？”\n有趣的说法。要知道，这种\"垄断\"不是我造成的，是爱好者们自己选择信任之后产生的。很多门都开着，只是大家自愿走了同一扇门。\n想破除它也很简单：建立你自己的信任根。资料我已经全部开放，只要你能保证你的信任里不会出现\"N0CALL、VIP111”，不会出现各种\"炸台\"，并且让服务器管理员愿意信任你。你要做的，是足够好、足够稳健。爱好者自然会走进你的门。\n6. “我不管！我的设备进不来就是垄断!\nemmmmmm…..\n","product":null,"section":"posts","summary":"关于FMO的证书，有几个很常见的误解。\n我先把重要的话说三遍：每个服务器，都是完完全全、完完全全、完完全全独立的。\n让不让谁进来是每个服务器管理员自己的决定，不是我的要求。下面把这些常见误解一条条说清楚。\n1. “进服务器要ESN的证书，其他证书服务器不认，所以ESN的服务器是封闭的。”\n这是很多人试过证书后的第一直觉。有这种直觉的朋友，下意识里其实以为这些服务器都是ESN开的——我要真有那么多钱运营这么多服务器，那也太牛了。\n先换位思考一下：假设你是服务器管理员，你愿意接受谁进你的服务器？\n你可能会回答：“我欢迎所有HAM。“但谁是HAM？\nESN做的就是给FMO用户打上\"我是真正的HAM\"这个标签，并且持续完善机制，确保没有伪造身份的人。所以独立的服务器管理员选择相信ESN，选择让这些FMO用户登录。注意，是管理员自己选择，不是ESN要求管理员这么做。\n2. “既然如此，为什么ESN不给所有ham打标签？”\n反过来问一句：我凭什么相信所有人？换做是你，你愿意无条件相信所有人吗？\n发一张证书，等于用我的信誉替这个身份背书。一旦有人伪造身份，别人找的是我。既然如此，我只会给我能核验、能负责、能找到、能落地、能被吊销的人发。而且只能沿着我信得过的渠道传递。目前我唯一敢用的渠道就是FMO硬件的可信执行环境。其他渠道我不敢相信，自然不敢背书。你不能把所有人的管理责任放我头上呀，我也不是什么圣人，承受不了所有非议，谢谢理解。\n3. “嗨ESN，我是你兄弟，我认为我值得你信任，给我开个绿灯呗？”\n假设我开了先例，一次、两次、三次……直到有一天，用FMO设备的人全成了\"我兄弟”。那么你作为有意向建服务器的人，看到各种N0CALL、VIP111的FMO设备在各个服务器里乱窜，还敢建服务器吗？\n这个问题不用我回答，相信你已经有了自己的答案。\n4. “我也在FMO某些服务器上看到过N0CALL！”\n重要的话再说三遍：每个服务器，都是完完全全、完完全全、完完全全独立的。 而且我也有信任的权力。\nFMO通过PKI的方式引入呼号和UID的对应关系。那些N0CALL，是独立服务器自己的选择，引入了其他信源，属于他们自己的责任范围，我不做管理。但只要越界被举报，我自然会收回我的信任——吊销他设备上的FMO证书。他的服务器照样可以自己玩，照样可以放N0CALL，只是FMO信任体系不再信任他。信任是相互的。大家都是成年人，需要为自己的选择负责。既然不再遵循HAM的规则，那使用FMO的爱好者也不该再出现在这些服务器上。而尽责的服务器管理员，只要按照ESN的教程配置好，且不引入其他信号源，就不会有这种问题。换句话说，服务器之间是隔离的。\n5. “你这样不就是事实上垄断了吗？”\n有趣的说法。要知道，这种\"垄断\"不是我造成的，是爱好者们自己选择信任之后产生的。很多门都开着，只是大家自愿走了同一扇门。\n想破除它也很简单：建立你自己的信任根。资料我已经全部开放，只要你能保证你的信任里不会出现\"N0CALL、VIP111”，不会出现各种\"炸台\"，并且让服务器管理员愿意信任你。你要做的，是足够好、足够稳健。爱好者自然会走进你的门。\n6. “我不管！我的设备进不来就是垄断!\nemmmmmm…..\n","tags":[],"title":"证书与误解","url":"/posts/2026/09/%E8%AF%81%E4%B9%A6%E4%B8%8E%E8%AF%AF%E8%A7%A3/"},{"content":"FMO的前期豁免版本硬件阶段已结束，非常感谢大家支持。\n同时为了响应爱好者们的需求，非豁免（核准）版本将在适时推出。\n由于核准\\认证\\客服\\硬件成本的变化，价格将进行大幅上调。\n目前我们正在进行组织架构调整，具体发售事项将在此页面进行更新。\n相关信息请以此页面通告为准，敬请期待。\ntips:\n豁免核准设备：指WiFi功率符合国家微功率免核准设备类型且VHF/UHF仅接收，符合国家相关法律要求,无需核准。非豁免核准设备：指业余频率可发射需核准的版本，需要进行无线电发射设备核准，且需备案后方进行售卖的的设备类型。\n如有任何意见或建议，请发邮件至: xifengzui@yeah.net 进行沟通。\nFMO产品指南 FMO使用说明 开源仓库\n","product":null,"section":"announcements","summary":"非豁免（核准）版本FMO将在适时进行推出","tags":[],"title":"最新公告","url":"/announcements/fmo-production-announcement/"},{"content":"说实话，我是一个特别喜欢设计产品/思考技术的人，我喜欢做产品，并把产品的各个细节都打磨到位，那种感觉我一直觉得特别爽，而且我有点强迫症，一旦哪里不舒服了，就得起来改，朋友都说我是高能量人士。\n做东西，写文档。和AI进行思想battle，做一个东西出来，那种感觉特别好。但最近我发现，做的太过超前，当社区都围绕着你的时候，那种压力的感觉是真的前所未有。以前没考虑过的问题，都开始冒出来，质疑声、批评声、建议声，都开始出现。我哪有那种压力承受能力，我就想把一个东西打磨好，但现实却强制要求你成为公共人物。\n哎！\n其实我在想，能量高又如何，不过是蜡烛，燃烧自己照亮别人，最后变成桌上一滩。而且，我发现信任的代价远比自己能承受的能力高。我想这也是社会正在告诉我的东西，有些时候你对每个人都好，做了那么多，稍微哪里不好了，个别人却觉得你对不起他，反手过来就是一刀还沾沾自喜，这让我大失所望。或许我正在设计的东西可能真的不适合每个人，之后这句话会成为我设计的时候一个筛选器，也让我真正的成为了一个开发者，或许我要把我的东西送给真正珍惜它的人而不是那些理所当然的人才是对我负责，才能维持住心中那一小撮火苗不被熄灭，目前它的火光非常暗淡了。\n说回来，放个长假吧，让我休息一下，我想我还需要一段时间来缓缓。谢谢各位对我的支持，过去的ESN已经走了，新的ESN正在路上。\n73\n","product":null,"section":"posts","summary":"说实话，我是一个特别喜欢设计产品/思考技术的人，我喜欢做产品，并把产品的各个细节都打磨到位，那种感觉我一直觉得特别爽，而且我有点强迫症，一旦哪里不舒服了，就得起来改，朋友都说我是高能量人士。\n做东西，写文档。和AI进行思想battle，做一个东西出来，那种感觉特别好。但最近我发现，做的太过超前，当社区都围绕着你的时候，那种压力的感觉是真的前所未有。以前没考虑过的问题，都开始冒出来，质疑声、批评声、建议声，都开始出现。我哪有那种压力承受能力，我就想把一个东西打磨好，但现实却强制要求你成为公共人物。\n哎！\n其实我在想，能量高又如何，不过是蜡烛，燃烧自己照亮别人，最后变成桌上一滩。而且，我发现信任的代价远比自己能承受的能力高。我想这也是社会正在告诉我的东西，有些时候你对每个人都好，做了那么多，稍微哪里不好了，个别人却觉得你对不起他，反手过来就是一刀还沾沾自喜，这让我大失所望。或许我正在设计的东西可能真的不适合每个人，之后这句话会成为我设计的时候一个筛选器，也让我真正的成为了一个开发者，或许我要把我的东西送给真正珍惜它的人而不是那些理所当然的人才是对我负责，才能维持住心中那一小撮火苗不被熄灭，目前它的火光非常暗淡了。\n说回来，放个长假吧，让我休息一下，我想我还需要一段时间来缓缓。谢谢各位对我的支持，过去的ESN已经走了，新的ESN正在路上。\n73\n","tags":[],"title":"随笔写于26年9月16日","url":"/posts/2026/09/%E9%9A%8F%E7%AC%94%E5%86%99%E4%BA%8E26%E5%B9%B49%E6%9C%8816%E6%97%A5/"},{"content":"关于FMO，一直有一种很有意思的说法。\n有些爱好者在网上看到了FMO，觉得挺有意思，想进来通联，结果一打听，发现必须先有一台FMO设备，还要实名认证审核，于是得出结论：这是一个封闭的圈子，不开放。而已经在FMO网络里的朋友们，体验却完全是另一回事，里边的人都在热情的通联，因为都是有操作证和执照的同好。同一个玩意，外面的人说封闭，里面的人说开放。这看起来矛盾，但两种感受都是真实的。\n我来说一下，这是为什么：理论上，最漂亮的开放设计当然应该是——任何一位爱好者，只要愿意，随时可以进入这个网络。只要愿意，直接就可以参与网络通联，在任何服务器上进行QSO,随意开发硬件，加入网络，成为赛博通联世界的一部分。\n但现实不是理论\n我们需要用技术手段为这个空间立起一道门禁：设备锚定实名，身份可以追溯。\n然后争议就来了：\n“大家都有执照，凭什么你只放买了设备的人进去，你应该给每个人进入这个网络的准入！你这是垄断，是封闭！网络就该让所有人进入！”\n大家都是成年人，我这里讲个童话故事吧：\n有人把村口荒地种成一座花园，门从不锁，谁都能进。人多了，出事了：有人扔垃圾、有人折花，有人戴着面具冒充德高望重的村民骗东西。村长找到种花人：“你的花园出事了，你得负责。”\n于是种花人在门口立了个小房子，门口设个门卫，要求每个人进来要实名登记，还得拍个照做个门禁卡，门禁卡不多，但每个人都知道这是种花人发的，大家也愿意相信种花人，每次大家聊天前，都会先看看对方是谁，里边环境变得非常友善。\n但是门禁数量实在有限，有人炸了：“凭什么搞门禁卡制度！你这是垄断，是封闭！花园就该向所有人开放！”\n种花人说：“你说得对，我不想盘问任何人，也不想折腾门禁，我只想种花。种子清单和图纸，一直放在门口——免费，公开。谁不服，就拿去种一座自己的花园。”\n真有几个人不服，去种了。\n第一个人，门彻底敞开，谁也不拦。没过多久，垃圾满地，骗子戴着面具横行，出了事没人认账，村长只找他一个人。他的花园没撑过一个月，荒了。\n第二个人想，不设卡，登记个名字总行吧。结果有人老老实实登记进去，转头就伪造了一个身份，用假名字在花园里骗人。出了事，登记簿上查得到的是那个无辜的名字，作恶的人早就换了一张脸，照样追不到人。虽然频繁被村长找麻烦，但这个人还是一直在坚持，因为他相信自己是对的。可是因为大家默认里边有一大堆骗子，聊天都不敢多聊，也不愿意在里边多停留，久而久之，他的花园也荒了。\n还有好多人，想了各种不同的主意。\n但回过头来，大家才发现，那个实名登记，还得拍个照做个门禁卡的花园，它一直开着。\n我说这个故事，是想告诉大家，FMO的开放，在更高的层次，而不是:“进不进得来”，这种简单的二元逻辑，这背后有责任和现实考量。我们背后有着强大的国家，保护着每个人，我们作为国家公民需要无条件的响应国家给我们的要求，同样响应保护大家的号召。不要让互联网通联成为法外之地，这正是FMO正在做的事情。\n所以，理解FMO的设计，理解它为什么这么做，然后如果你想，你也可以建立自己的网络，但请不要忘了保护大家。\n此致 73\nBG5ESN\n","product":null,"section":"posts","summary":"关于FMO，一直有一种很有意思的说法。\n有些爱好者在网上看到了FMO，觉得挺有意思，想进来通联，结果一打听，发现必须先有一台FMO设备，还要实名认证审核，于是得出结论：这是一个封闭的圈子，不开放。而已经在FMO网络里的朋友们，体验却完全是另一回事，里边的人都在热情的通联，因为都是有操作证和执照的同好。同一个玩意，外面的人说封闭，里面的人说开放。这看起来矛盾，但两种感受都是真实的。\n我来说一下，这是为什么：理论上，最漂亮的开放设计当然应该是——任何一位爱好者，只要愿意，随时可以进入这个网络。只要愿意，直接就可以参与网络通联，在任何服务器上进行QSO,随意开发硬件，加入网络，成为赛博通联世界的一部分。\n但现实不是理论\n我们需要用技术手段为这个空间立起一道门禁：设备锚定实名，身份可以追溯。\n然后争议就来了：\n“大家都有执照，凭什么你只放买了设备的人进去，你应该给每个人进入这个网络的准入！你这是垄断，是封闭！网络就该让所有人进入！”\n大家都是成年人，我这里讲个童话故事吧：\n有人把村口荒地种成一座花园，门从不锁，谁都能进。人多了，出事了：有人扔垃圾、有人折花，有人戴着面具冒充德高望重的村民骗东西。村长找到种花人：“你的花园出事了，你得负责。”\n于是种花人在门口立了个小房子，门口设个门卫，要求每个人进来要实名登记，还得拍个照做个门禁卡，门禁卡不多，但每个人都知道这是种花人发的，大家也愿意相信种花人，每次大家聊天前，都会先看看对方是谁，里边环境变得非常友善。\n但是门禁数量实在有限，有人炸了：“凭什么搞门禁卡制度！你这是垄断，是封闭！花园就该向所有人开放！”\n种花人说：“你说得对，我不想盘问任何人，也不想折腾门禁，我只想种花。种子清单和图纸，一直放在门口——免费，公开。谁不服，就拿去种一座自己的花园。”\n真有几个人不服，去种了。\n第一个人，门彻底敞开，谁也不拦。没过多久，垃圾满地，骗子戴着面具横行，出了事没人认账，村长只找他一个人。他的花园没撑过一个月，荒了。\n第二个人想，不设卡，登记个名字总行吧。结果有人老老实实登记进去，转头就伪造了一个身份，用假名字在花园里骗人。出了事，登记簿上查得到的是那个无辜的名字，作恶的人早就换了一张脸，照样追不到人。虽然频繁被村长找麻烦，但这个人还是一直在坚持，因为他相信自己是对的。可是因为大家默认里边有一大堆骗子，聊天都不敢多聊，也不愿意在里边多停留，久而久之，他的花园也荒了。\n还有好多人，想了各种不同的主意。\n但回过头来，大家才发现，那个实名登记，还得拍个照做个门禁卡的花园，它一直开着。\n我说这个故事，是想告诉大家，FMO的开放，在更高的层次，而不是:“进不进得来”，这种简单的二元逻辑，这背后有责任和现实考量。我们背后有着强大的国家，保护着每个人，我们作为国家公民需要无条件的响应国家给我们的要求，同样响应保护大家的号召。不要让互联网通联成为法外之地，这正是FMO正在做的事情。\n所以，理解FMO的设计，理解它为什么这么做，然后如果你想，你也可以建立自己的网络，但请不要忘了保护大家。\n此致 73\nBG5ESN\n","tags":[],"title":"开放与封闭","url":"/posts/2026/09/%E5%BC%80%E6%94%BE%E4%B8%8E%E5%B0%81%E9%97%AD/"},{"content":"最近CRAC的倡议出来了，也看到了不少讨论，有些说法传得挺远，群里也有朋友私下问过我。其实我目前还是觉得fmo拥有了它本不该拥有的热度，这不仅影响了我的生活，也影响了我家人的生活。\n我最近停下来不生产，也是觉得累了，天天被追问有货么？有货么？买不到就骂饥饿营销，我真的服了。也不看看业余无线电爱好者总共多少人，人手一个也达不到需要营销的门槛，我就一个上班打工族，哪有时间折腾营销的事儿，再说我也没营销啊，你总不能说爱好者之间口口相传是我的营销，我要有这能量雇佣大家营销，我还搁这挨骂呢。\n作为一个小玩意，如果在开发他的时候我是开心的，那么维护他我其实是痛苦的，工作、生活节奏都被影响了。 特别是最近这段时间，时不时有人在对FMO一知半解，也不仔细了解设计框架，却觉得自己是行业专家，不顾客观事实，对我个人和FMO指指点点。颇有一种纯粹的不绝对，就是绝对的不纯粹的感觉，这种事儿多了以后非常影响心情。要理解工程落地和理论实际，它必然有妥协，我开放这么多内容，也是希望大家能够在它的基础上，能开发出自己的更好的框架。这样我也可以不再管这个项目，做下一个项目了，我还有好多其他的想法呢。\n吐槽归吐槽，话说回来，很少有哪个业余无线电网络项目，真的把责任框架内化在了底层基因里，这也是我们项目正在努力和设计的最大的定心丸。从我目前已知的消息来看，至少单指我的产品，在方向上是可以的。对于社区治理的不足之处，我自己也会按照倡议的思想继续优化。之后肯定也会越来越好。一切都在向好的方向发展。\n最近《倡议书》发布后,有些HAM完全不分析和讨论《倡议书》的具体内容和其含义，而是在网络上散播谣言和用浮夸的表演来输出情绪和对立，搅动流量，这样的行为，不会对业余无线电的发展有任何好处，是在损害整个业余无线电的对外形象。这种罔顾事实基于纯粹商业逻辑的舆论引导抹黑，而不是开发好用顺手的设备给大家的行为，其实我多少有些失望和沮丧的。证明了我之前多少还是有些单纯了。\n不过大家可以放心，我依然会按照自己的节奏做事儿，项目依然会继续维护。\n我也会多发随笔，发发视频，让大家更加了解我在做啥。\n风平浪静。\n73\nBG5ESN 写于2026年9月6日\n","product":null,"section":"posts","summary":"最近CRAC的倡议出来了，也看到了不少讨论，有些说法传得挺远，群里也有朋友私下问过我。其实我目前还是觉得fmo拥有了它本不该拥有的热度，这不仅影响了我的生活，也影响了我家人的生活。\n我最近停下来不生产，也是觉得累了，天天被追问有货么？有货么？买不到就骂饥饿营销，我真的服了。也不看看业余无线电爱好者总共多少人，人手一个也达不到需要营销的门槛，我就一个上班打工族，哪有时间折腾营销的事儿，再说我也没营销啊，你总不能说爱好者之间口口相传是我的营销，我要有这能量雇佣大家营销，我还搁这挨骂呢。\n作为一个小玩意，如果在开发他的时候我是开心的，那么维护他我其实是痛苦的，工作、生活节奏都被影响了。 特别是最近这段时间，时不时有人在对FMO一知半解，也不仔细了解设计框架，却觉得自己是行业专家，不顾客观事实，对我个人和FMO指指点点。颇有一种纯粹的不绝对，就是绝对的不纯粹的感觉，这种事儿多了以后非常影响心情。要理解工程落地和理论实际，它必然有妥协，我开放这么多内容，也是希望大家能够在它的基础上，能开发出自己的更好的框架。这样我也可以不再管这个项目，做下一个项目了，我还有好多其他的想法呢。\n吐槽归吐槽，话说回来，很少有哪个业余无线电网络项目，真的把责任框架内化在了底层基因里，这也是我们项目正在努力和设计的最大的定心丸。从我目前已知的消息来看，至少单指我的产品，在方向上是可以的。对于社区治理的不足之处，我自己也会按照倡议的思想继续优化。之后肯定也会越来越好。一切都在向好的方向发展。\n最近《倡议书》发布后,有些HAM完全不分析和讨论《倡议书》的具体内容和其含义，而是在网络上散播谣言和用浮夸的表演来输出情绪和对立，搅动流量，这样的行为，不会对业余无线电的发展有任何好处，是在损害整个业余无线电的对外形象。这种罔顾事实基于纯粹商业逻辑的舆论引导抹黑，而不是开发好用顺手的设备给大家的行为，其实我多少有些失望和沮丧的。证明了我之前多少还是有些单纯了。\n不过大家可以放心，我依然会按照自己的节奏做事儿，项目依然会继续维护。\n我也会多发随笔，发发视频，让大家更加了解我在做啥。\n风平浪静。\n73\nBG5ESN 写于2026年9月6日\n","tags":[],"title":"风平浪静","url":"/posts/2026/09/%E9%A3%8E%E5%B9%B3%E6%B5%AA%E9%9D%99/"},{"content":"周六一大早起床，突然在群里被at，我想怎么个事儿，点开一看，一个AI文章糊在我脸上。说真的看完没什么逻辑。懒得解释。但确实挺影响心情。\n作为一个开发者，我写了不少技术文章，很少写表达自己感想的文章，这次破天荒的写一写，是因为实在是有点累了。我觉得其实作为一个人，我可以接受大多数合理的说法，但就一句自己的主观意见，引导AI随便生成一点观点，掺杂一点语料，写个文章直接就批评了多少让人郁闷。\n回到技术上来说，真想建立乌托邦，并且不考虑现实的枷锁，这个想法挺有趣的。我倒是觉得，真有心思去搞全世界HAM大团结，那就自己去建嘛，我工具软件硬件全开放了（麻烦再去看看文章），完全可以开放一个面向“全世界”的大团结系统。到时候若真能做起来做好，我才不做这个所谓的根呢，事儿多，老累了，用你的多好。\n其实说到底，社区的信任需要一个人去传递，我承受了这份压力，我当然要把事儿做好，你想无条件进入，却让我承受压力，这是人做的事儿么？我可不是什么大圣母，我要保护好自己，保护好每个正在用这个设备的人。扩展边界，是你们的事儿，我们应该保护好的，是大家的信任不流失，是守住我认为的这个应该属于纯粹业余无线电爱好者的边界，我不可能相信所有的人，我只相信我能确立的边界。\n觉得我的做法欠妥，我提供了所有的工具，欢迎你去搞你自己的无线电网络协议。你愿意承受这份重担，能保护好大家，能给大家“更加自由”的空间，我极其欢迎。但你想无条件、无责任、无痕迹的“白嫖”现在的网络，那对不起，请绕道，这里不欢迎你。\n责任和自由，是一个硬币的俩面。\nBG5ESN\n73\n","product":null,"section":"posts","summary":"周六一大早起床，突然在群里被at，我想怎么个事儿，点开一看，一个AI文章糊在我脸上。说真的看完没什么逻辑。懒得解释。但确实挺影响心情。\n作为一个开发者，我写了不少技术文章，很少写表达自己感想的文章，这次破天荒的写一写，是因为实在是有点累了。我觉得其实作为一个人，我可以接受大多数合理的说法，但就一句自己的主观意见，引导AI随便生成一点观点，掺杂一点语料，写个文章直接就批评了多少让人郁闷。\n回到技术上来说，真想建立乌托邦，并且不考虑现实的枷锁，这个想法挺有趣的。我倒是觉得，真有心思去搞全世界HAM大团结，那就自己去建嘛，我工具软件硬件全开放了（麻烦再去看看文章），完全可以开放一个面向“全世界”的大团结系统。到时候若真能做起来做好，我才不做这个所谓的根呢，事儿多，老累了，用你的多好。\n其实说到底，社区的信任需要一个人去传递，我承受了这份压力，我当然要把事儿做好，你想无条件进入，却让我承受压力，这是人做的事儿么？我可不是什么大圣母，我要保护好自己，保护好每个正在用这个设备的人。扩展边界，是你们的事儿，我们应该保护好的，是大家的信任不流失，是守住我认为的这个应该属于纯粹业余无线电爱好者的边界，我不可能相信所有的人，我只相信我能确立的边界。\n觉得我的做法欠妥，我提供了所有的工具，欢迎你去搞你自己的无线电网络协议。你愿意承受这份重担，能保护好大家，能给大家“更加自由”的空间，我极其欢迎。但你想无条件、无责任、无痕迹的“白嫖”现在的网络，那对不起，请绕道，这里不欢迎你。\n责任和自由，是一个硬币的俩面。\nBG5ESN\n73\n","tags":[],"title":"毁掉一天从AI文章开始","url":"/posts/2026/09/%E6%AF%81%E6%8E%89%E4%B8%80%E5%A4%A9%E4%BB%8Eai%E6%96%87%E7%AB%A0%E5%BC%80%E5%A7%8B/"},{"content":" 资料名称 资料说明 —— CW通联一般程序 该文档阐述了如何开始第一次完整的通联,建议初学者先行了解该流程 下载 CW呼叫流程 在您些微了解如何通联后,可以学习该文档,了解如何正式发一起次通联CQ 下载 CW初学者手册 您对CW有些了解,期望能够提高自己的收发水平，那么该文档可以很好的帮助您养成良好的收发习惯 下载 CW词典 包含常用的CW短语和缩写 下载 业余无线电报务教材 经典的业余无线电报务教材 下载 免责声明 内容来源\n本站所有收集材料均来自互联网公开资源，仅作为学习交流用途。我们不对内容的原创性、准确性及完整性作任何担保。\n版权声明\n如果您是任何内容的合法权利人，认为本站收录的材料侵犯了您的权益，请通过以下方式联系我们：\n✉ 邮箱：xifengzui@yeah.net\n请提供：\n权利证明文件 侵权内容具体链接 您的有效联系方式\n我们将在收到有效申诉后48小时内删除相关内容。 使用风险\n使用者应对下载或使用任何材料自行承担风险：\n本站不保证内容的安全性（包括但不限于病毒、恶意代码等） 不对材料导致的任何直接/间接损失负责 禁止将材料用于非法用途 第三方内容\n本站可能包含第三方链接，这些内容不受我们控制，访问前请自行评估风险。\n声明更新\n我们保留随时修改本免责声明的权利，恕不另行通知。\n","product":null,"section":"downloads","summary":"软件描述","tags":[],"title":"CW学习资料下载","url":"/downloads/cw_course/"},{"content":"配网软件下载 注： 由于本人没有点开app技能，所以使用了ESP官方配网工具。请大家谅解。\n平台 下载地址 安卓/鸿蒙 下载 苹果 请至应用商店搜索ESP Softap Provisiong 趣味软件 软件 下载地址 开发者 说明 CWO MIDI播放器 下载 BG6VMZ 由BG6VMZ开发,可以让CWO成为一个MIDI播放器,播放音乐,其中还带有一些midi音乐,可选择播放. ","product":null,"section":"downloads","summary":"配网软件下载 注： 由于本人没有点开app技能，所以使用了ESP官方配网工具。请大家谅解。\n平台 下载地址 安卓/鸿蒙 下载 苹果 请至应用商店搜索ESP Softap Provisiong 趣味软件 软件 下载地址 开发者 说明 CWO MIDI播放器 下载 BG6VMZ 由BG6VMZ开发,可以让CWO成为一个MIDI播放器,播放音乐,其中还带有一些midi音乐,可选择播放. ","tags":[],"title":"CWO 配网和其他通用软件","url":"/downloads/cwo_download/"},{"content":"CWO 固件 CWO固件现已支持云端推送，您可以在 设备-\u003einformation-\u003eOTA 选项直接升级固件。本页面仅释放紧急修复补丁。\n版本 说明 |v1.3.21| bug fix| |v1.3.20| 修复CFMQ可能被抢断问题| |v1.3.19| 增加日志备份页面| |v1.3.18| 修复网络问题| |v1.3.17| 增加使用充电宝时防充电宝休眠功能(就是增加待机功耗，防止电流太小)，当当前监听频道有信号时，不再进入自动待机。| |v1.3.16| 优化自动键模式B手感、增加mode Y模式(就是1.3.10以前的ModeB),修正断线时无提示问题，优化退出菜单提示| |v1.3.15| 优化捏发，增加Boot Shortcut的快速切换模式功能| |v1.3.14| 优化捏发，增加Boot Shortcut的WPM 快速调节功能| |v1.3.13| 持续优化捏发| |v1.3.12| 尝试优化捏发时，立即触发增加一个点\\划问题| |v1.3.11| 优化解码器连续打0时，解码错误发生的概率;优化自动清屏策略，10秒没有新输入时，下个新字符到来时，解码将自动清屏。 |v1.3.10| bug修复| |v1.3.9| bug修复| |v1.3.8| 允许在解码器关闭情况下进行CFMQ\\CFM\\CALL指令,增加6Dot清屏指令、40M增加7.041~7.050频率，该频率强制无解码器| |v1.3.7| 增加CFMQ指令，现在双方确认仅需敲击CFMQ就可以快速双方确认| |v1.3.6| 修复滴答交换BUG| |v1.3.5| 增加自动键B模式，该模式在自动键A模式的基础上，捏键增加了自动多发一个点\\划，以适应老鸟们的捏发习惯| |v1.3.4| 优化解码字符分割参数，允许用户自行设置解码分割参数，增加BOOT按钮快捷键功能，在设置中选定BOOT SHORTCUT功能后，在主页长按，可快速使用功能。增加HID键盘模式输出时，大写字母锁定功能，修复一些bug| |v1.3.3| 增加竞赛待机页面，在待机时，cwo会显示最近2天的events，供竞赛达人参考。修复断网后时钟不走问题| |v1.3.2| 优化解码空格问题| |v1.3.1| 增加日志记录页面，现在进入设置菜单，可以看到有一个log页面，在这个页面中，记录了您所有最近的通联人信息| |v1.3.0| 底层重大更新,代码重构，增加了一个公共服务器、现在CALL可以跨服使用（将显示发送者的服务器）、增加CFM功能，为竞赛功能做准备,用于快速双方确认,目前服务端还在编写中,该功能仅预览暂时无效。增加远控指令，用于服务年纪大的ham，该模块将持续更新，目前仅部分功能。优化因为网络问题导致开机无法启动问题。增加上电反复重启自保护，当设备因为出现配置问题导致的反复重启时，将会自动恢复出厂配置。显示刷新增强。| |v1.2.30| 修复空格解码不规律，提高解码准确率，其他性能优化| |v1.2.29| 修复人机通道bug| |v1.2.28| 屏保模式支持多个时间点，增加高对比度模式、优化图标| |v1.2.27| 修复2节电键无法休眠问题| |v1.2.26| 修复熄屏爆音问题、增加主屏横幅显示最最近的call，至少保留十秒，然后按下任意发送键清除| |v1.2.25| 手键模式现在有3种manual \\manual A\\和manual B,分别对应不同3.5mm接口的不同连接法，让用户可以把3.5mm电键插到底| |v1.2.24| 紧急修复静音问题| |v1.2.23| 修复CALL提示屏保闪烁问题| |v1.2.22| 耳机模式增加耳机模式图标| |v1.2.21| encoder现在修改为半步，更加丝滑| |v1.2.20| 修复wifi上电重连速度过慢问题| |v1.2.19| GUI 增加信号锚点，方便快速定位信号点| |v1.2.18| 修复wifi自动重连问题| |v1.2.17| 增加待机页面UTC时间| |v1.2.16| 1.修正多通道时，共享主题和当前主题同时收包导致错误解码问题| | v1.2.15 | 待机屏幕多频道监听现在可以开关了，方便用户选择是否开启多频道监听| | v1.2.14 | 待机频率动态降低，减少待机功耗| | v1.2.13 | 现在频率设置从Hotfrequency 改为了 Ham Band 更加符合业余无线电的使用习惯| | v1.2.12 | 修复耳机插入时误检测问题| | v1.2.11 | 修复自动键容易打错点的问题| | v1.2.10 | 改进CALL功能，现在CALL讯息过来时，会有10秒的大屏幕展示，方便大家观察。频率最低可设置至300hz,已经连接的WIFI,可以在network界面下，长按boot按钮忘记。| | v1.2.8 | 现在速度设置改为了wpm，方便大家调节| | v1.2.7 | 增加默认wifi连接配置 cwonet cwo12345,方便用户携带时，可快速连接| | v1.2.6 | 自动键手感优化，减少音量挡位方便调节| | v1.2.5 | 现在底部的3.5mm电键输入口，也可以作为音频输出口，音量变为无极调节，默认输入为电键| | v1.2.4 | 现在可以在设置中选择将knob设置为音量旋钮，在待机下可以设置电脑音量| | v1.2.3 | 增加CALL功能，在开启解码器的情况下，输入 CALL 对方呼号，可以呼叫对方| | v1.2.2 | 设备现在可以模拟成一个鼠标，方便大家插入电脑进行训练| | v1.2.1 | 设备现在可以模拟成一个键盘，当插入电脑时，可以用CW输入字母，方便进行通联日志记录| | v1.2.0 | 重要消息机制更新，为多服务器做准备| | | 美化待机页面| | | 待机页面增加指示灯，用于指示当前的通道| | | 物理灯光仍然在待机界面指示所有通道| | v1.1.5 | 现在wifi没有改变的话，开机秒连 | | v1.1.4 | 设备现在可以记住最后的八个wifi信息，断网后重新连接大概需要30秒左右 | | v1.1.3 | 现在解码器支持更多的字符| | v1.1.2 | 解码器更新，更快的解码速度| | V1.1.1 | 改进老电键的抖动问题，同时协议更新，请尽快升级至1.1.1版本| | V1.0.6 | 增加一键恢复出场配置功能，在设置-\u003einformation界面，长按boot键5秒，设备将清除所有配置。 改善频率调整配置，旋钮控制更加丝滑。|\n2. 开源固件 开源固件地址：（建设中）\n开源硬件地址：（建设中）\n","product":null,"section":"downloads","summary":"CWO 固件 CWO固件现已支持云端推送，您可以在 设备-\u003einformation-\u003eOTA 选项直接升级固件。本页面仅释放紧急修复补丁。\n版本 说明 |v1.3.21| bug fix| |v1.3.20| 修复CFMQ可能被抢断问题| |v1.3.19| 增加日志备份页面| |v1.3.18| 修复网络问题| |v1.3.17| 增加使用充电宝时防充电宝休眠功能(就是增加待机功耗，防止电流太小)，当当前监听频道有信号时，不再进入自动待机。| |v1.3.16| 优化自动键模式B手感、增加mode Y模式(就是1.3.10以前的ModeB),修正断线时无提示问题，优化退出菜单提示| |v1.3.15| 优化捏发，增加Boot Shortcut的快速切换模式功能| |v1.3.14| 优化捏发，增加Boot Shortcut的WPM 快速调节功能| |v1.3.13| 持续优化捏发| |v1.3.12| 尝试优化捏发时，立即触发增加一个点\\划问题| |v1.3.11| 优化解码器连续打0时，解码错误发生的概率;优化自动清屏策略，10秒没有新输入时，下个新字符到来时，解码将自动清屏。 |v1.3.10| bug修复| |v1.3.9| bug修复| |v1.3.8| 允许在解码器关闭情况下进行CFMQ\\CFM\\CALL指令,增加6Dot清屏指令、40M增加7.041~7.050频率，该频率强制无解码器| |v1.3.7| 增加CFMQ指令，现在双方确认仅需敲击CFMQ就可以快速双方确认| |v1.3.6| 修复滴答交换BUG| |v1.3.5| 增加自动键B模式，该模式在自动键A模式的基础上，捏键增加了自动多发一个点\\划，以适应老鸟们的捏发习惯| |v1.3.4| 优化解码字符分割参数，允许用户自行设置解码分割参数，增加BOOT按钮快捷键功能，在设置中选定BOOT SHORTCUT功能后，在主页长按，可快速使用功能。增加HID键盘模式输出时，大写字母锁定功能，修复一些bug| |v1.3.3| 增加竞赛待机页面，在待机时，cwo会显示最近2天的events，供竞赛达人参考。修复断网后时钟不走问题| |v1.3.2| 优化解码空格问题| |v1.3.1| 增加日志记录页面，现在进入设置菜单，可以看到有一个log页面，在这个页面中，记录了您所有最近的通联人信息| |v1.3.0| 底层重大更新,代码重构，增加了一个公共服务器、现在CALL可以跨服使用（将显示发送者的服务器）、增加CFM功能，为竞赛功能做准备,用于快速双方确认,目前服务端还在编写中,该功能仅预览暂时无效。增加远控指令，用于服务年纪大的ham，该模块将持续更新，目前仅部分功能。优化因为网络问题导致开机无法启动问题。增加上电反复重启自保护，当设备因为出现配置问题导致的反复重启时，将会自动恢复出厂配置。显示刷新增强。| |v1.2.30| 修复空格解码不规律，提高解码准确率，其他性能优化| |v1.2.29| 修复人机通道bug| |v1.2.28| 屏保模式支持多个时间点，增加高对比度模式、优化图标| |v1.2.27| 修复2节电键无法休眠问题| |v1.2.26| 修复熄屏爆音问题、增加主屏横幅显示最最近的call，至少保留十秒，然后按下任意发送键清除| |v1.2.25| 手键模式现在有3种manual \\manual A\\和manual B,分别对应不同3.5mm接口的不同连接法，让用户可以把3.5mm电键插到底| |v1.2.24| 紧急修复静音问题| |v1.2.23| 修复CALL提示屏保闪烁问题| |v1.2.22| 耳机模式增加耳机模式图标| |v1.2.21| encoder现在修改为半步，更加丝滑| |v1.2.20| 修复wifi上电重连速度过慢问题| |v1.2.19| GUI 增加信号锚点，方便快速定位信号点| |v1.2.18| 修复wifi自动重连问题| |v1.2.17| 增加待机页面UTC时间| |v1.2.16| 1.修正多通道时，共享主题和当前主题同时收包导致错误解码问题| | v1.2.15 | 待机屏幕多频道监听现在可以开关了，方便用户选择是否开启多频道监听| | v1.2.14 | 待机频率动态降低，减少待机功耗| | v1.2.13 | 现在频率设置从Hotfrequency 改为了 Ham Band 更加符合业余无线电的使用习惯| | v1.2.12 | 修复耳机插入时误检测问题| | v1.2.11 | 修复自动键容易打错点的问题| | v1.2.10 | 改进CALL功能，现在CALL讯息过来时，会有10秒的大屏幕展示，方便大家观察。频率最低可设置至300hz,已经连接的WIFI,可以在network界面下，长按boot按钮忘记。| | v1.2.8 | 现在速度设置改为了wpm，方便大家调节| | v1.2.7 | 增加默认wifi连接配置 cwonet cwo12345,方便用户携带时，可快速连接| | v1.2.6 | 自动键手感优化，减少音量挡位方便调节| | v1.2.5 | 现在底部的3.5mm电键输入口，也可以作为音频输出口，音量变为无极调节，默认输入为电键| | v1.2.4 | 现在可以在设置中选择将knob设置为音量旋钮，在待机下可以设置电脑音量| | v1.2.3 | 增加CALL功能，在开启解码器的情况下，输入 CALL 对方呼号，可以呼叫对方| | v1.2.2 | 设备现在可以模拟成一个鼠标，方便大家插入电脑进行训练| | v1.2.1 | 设备现在可以模拟成一个键盘，当插入电脑时，可以用CW输入字母，方便进行通联日志记录| | v1.2.0 | 重要消息机制更新，为多服务器做准备| | | 美化待机页面| | | 待机页面增加指示灯，用于指示当前的通道| | | 物理灯光仍然在待机界面指示所有通道| | v1.1.5 | 现在wifi没有改变的话，开机秒连 | | v1.1.4 | 设备现在可以记住最后的八个wifi信息，断网后重新连接大概需要30秒左右 | | v1.1.3 | 现在解码器支持更多的字符| | v1.1.2 | 解码器更新，更快的解码速度| | V1.1.1 | 改进老电键的抖动问题，同时协议更新，请尽快升级至1.1.1版本| | V1.0.6 | 增加一键恢复出场配置功能，在设置-\u003einformation界面，长按boot键5秒，设备将清除所有配置。 改善频率调整配置，旋钮控制更加丝滑。|\n","tags":[],"title":"CWO 离线固件和固件更新日志","url":"/downloads/cwo_firmware/"},{"content":"这次切换站点其实也是因为之前用的Ucloud服务器到期了，所以不得已，得切换到新的服务器上。走的太匆忙，好多材料都没有来得及转移。\n现在使用了aliyun的新服务器，价格说是保证终身99元，这我觉得还是不错的。现在博客系统也切换到了静态页系统。平时也是用git进行管理。 作为个人博客，可能就是开始要调试一波，一旦习惯了，也是挺好的。\n主题我觉得也不错，暗色主题，框架也简单。这样也是挺好的。\n我会在这个站点上分布好多文章，也会有一些技术文章，也会有一些生活文章。希望大家能够喜欢。\n这里是BG5ESN，谢谢大家。\n","product":null,"section":"posts","summary":"这次切换站点其实也是因为之前用的Ucloud服务器到期了，所以不得已，得切换到新的服务器上。走的太匆忙，好多材料都没有来得及转移。\n现在使用了aliyun的新服务器，价格说是保证终身99元，这我觉得还是不错的。现在博客系统也切换到了静态页系统。平时也是用git进行管理。 作为个人博客，可能就是开始要调试一波，一旦习惯了，也是挺好的。\n主题我觉得也不错，暗色主题，框架也简单。这样也是挺好的。\n我会在这个站点上分布好多文章，也会有一些技术文章，也会有一些生活文章。希望大家能够喜欢。\n这里是BG5ESN，谢谢大家。\n","tags":[],"title":"全新站点，全新出发","url":"/posts/2024/05/%E5%85%A8%E6%96%B0%E7%AB%99%E7%82%B9%E5%85%A8%E6%96%B0%E5%87%BA%E5%8F%91/"}]