给KC908V做了一套自制固件。这次放出第一个测试版本,基于官方3.2.4,包含原版系统(修改)、自制系统以及配套的 Windows SDK、MCP服务。本文仅为介绍,完整操作手册暂未完成。
开机可选择两套系统:
原版界面使用官方后端,自制界面使用重新实现的 System 服务。
自制部分采用C/LVGL,重新整理了界面、数据处理和资源调度,大幅提高性能,增加了APRS、SSTV等收发功能,同时提供新版Windows SDK,支持AI Agent MCP服务器,可以使用AI直接控制设备。
目前仍是测试包,只在KC908V上测试过,其他子型号不保证稳定运行。内核、FPGA 和 MCU 固件仍使用官方内容;FPGA 替换版本仍在开发中,不包含在本次发布内。
这是个人项目,不是官方固件,也不代表厂商认可。刷写和使用可能出现死机、数据丢失、测量偏差或需要恢复固件的情况,请先备份重要数据,不要用于依赖仪器可靠性和计量精度的关键工作。本固件实现了原版的选件识别,仍然会进行选件认证,不会获得所有授权;发射前自行确认频率、输出电平、接线及所需授权;不得用于未经授权的监听或发射;任何因为本固件造成的损失与开发者无关。
图 1:实机双系统选择页 跨系统切换会重启
保留官方界面和后端,在其上增加:
中文输入:使用九宫格物理键盘输入拼音,旋钮选拼音、候选字,支持删除、取消及中英文/数字切换,可用于中文频道名。
APRS 接收:FM 解调菜单内启用,支持 1200 / 9600 bps;右侧历史列表可查看完整报文、中文内容及解析结果。
SSTV 接收:FM解调菜单内,右侧浮窗滚动显示解码图像,可保存到 SD 卡。
返回系统选择页,以及 SD 卡与 USB 存储的归属管理。频道数据由两套系统共用,在一边保存、重命名或删除会影响另一边。
原版选件仍按原版方式管理,所有选件仍然是根据实际开启情况启用;KTOS 提供选件查询和有效授权码导入入口。
图 2~4:原版系统添加内容
为减少重新学习成本,大多数菜单、实体快捷键、主旋钮和侧面编码器操作直接参考官方逻辑。频谱仪的频率/扫宽/RBW、迹线/检波/标记/寻峰,接收机的频道/VFO、解调、增益、滤波、静噪和录制等,仍沿用原来熟悉的使用方式。
与官方系统一致,按HOME进入功能选择,目前支持:频谱仪、接收机、信号源、指南针、系统五项,用数字键 1~5 进入,再按HOME或退出键返回。
图 5~7:实机 HOME、频谱仪、接收机
APRS接收。接收使用当前FM解调频率。支持1200/9600bps、中文内容、报文详情和最近 1024 条内存历史;SD也可用时可保存报文。
图 8~9:APRS接收
APRS发送。进入“信号源 → FM → APRS”,可设置呼号、路径和内容。确认后进行发送。
图10:APRS发送
SSTV 接收。接收浮窗采用流水显示,可以把当前窗口保存到 SD 卡。
图 11:SSTV接收
SSTV发送。发射从 SD 卡读取图片,提供 Robot、Martin、Scottie、PD 等模式。
图 12:SSTV发送
麦克风语音发送。进入“信号源 → FM → 麦克风”,即可发送当前麦克风语音内容。
图 13:麦克风发送
语音文件发送。进入“信号源 → FM → SD语音”并选择SD卡中的音频文件,即可发送。
图 14:语音文件发送
其他发送模式
图 15:其他发送模式
PPTx麦克风发送。在接收机 FM 模式的“AF → 发射参数”里设置收发偏频、输出电平、调制频偏、麦克风增益及 CTCSS/DCS 等;按住 PTTx 发射,松开恢复接收。目前是半双工,切换准备时间实测约 1.4~1.5 秒。
图 16~17:接收机PPTx按键发射
扩展信号源。先选 CW / AM / FM / PM / IQ,再显示该模式需要的参数;FM 可选单音、APRS、SSTV、麦克风或 SD 语音。
指南针与水平仪。增加倾角补偿航向、连续变化的水平仪、相对置零,以及六面磁力/加速度校准、陀螺仪静止校准。
图18:指南针与水平仪
新版 SDK 与 AI Agent MCP。提供 Windows x86 / x64 的 kcsdr.dll 与 C 头文件,ktos-mcp.exe。原版后端使用原版协议,自制后端使用自制协议,新版SDK可自动识别两种模式;已有上位机的常规 USB3 IQ 接口可继续使用。
自制系统的远程入口分为 IQ 模式和 MCP 模式:前者供上位机独占 IQ 收发,后者让 AI Agent 设置频谱仪、接收机、信号源参数,读状态和频谱,操作菜单、按键、旋钮及文本。MCP 提供的是当前画面的 800 点频谱快照,不是高速原始 FFT 流;高速 IQ 仍走原有 FPGA / FT601 通路。
电脑需安装 FTDI D3XX 驱动,并使用匹配位数的 FTD3XX.dll(1.3.0.4 或更新)。MCP 客户端示例配置:
{
"mcpServers": {
"kc908": {
"command": "C:/KTOS/ktos-mcp.exe",
"args": ["--sdk", "C:/KTOS/kcsdr.dll"]
}
}
}kcsdr.dll与ktos-mcp.exe在一个文件夹内可不输入args;注意kcsdr.dll不是原版的动态库,是本文下方的sdk。
请先在设备选择 MCP 模式并接好 USB3。MCP具备发射控制能力,应在提示词中明确限制其频率、电平和时长。主机断开设有停发保护,务必明确频率授权。
KC908V,官方 3.2.4 与 KTOS 1.0.0 / System 1.0.5 对比,各取三轮 10 秒中位数。CPU 为 UI 与后端合计占双核总算力,PSS 为两进程合计内存,波形更新由帧缓冲变化统计。
图 19~20:性能对比
频谱仪为 100 MHz 中心、RBW 4.476 kHz;FM 为 144.640 MHz、3.2 MHz 扫宽、12 kHz 解调带宽;APRS/SSTV 关闭。官方侧加载本文的原版扩展。信号源和系统菜单在停止输出/采集时测量。
另USB3速度测试:2.5 / 20 / 40 Msps 档约为 2.500 / 20.000 / 39.969 百万 IQ 对每秒。
仅KC908V单机验证。其他子型号、双接收通道/相干功能、全部频段与增益组合没有进行测试,尤其双端口收发机型可能部分功能不可用。
数字语音及TETRA高级被动链路有软件测试,真实兼容性、语音质量和复杂跟随场景未测试;加密业务不支持。
外部参考源校准缺标准源和频率计,只验证软件流程;虽然沿用出厂较准数据但是不保证全部测量精度与官方一致。
当前官方FPGA使用4096点FFT路径,未开放真正的2048点硬件 FFT。
先安装官方 3.2.4,确认原版启动和接收正常,再安装本包。若从很早的版本升级,先遵守官方关于 2.2.1 基础固件的前置要求。
备份重要频道、设置和文件。使用可靠的 FAT32 TF 卡,按官方建议优先选 32 GB 以内卡;把本帖固件命名为 sdr_908.kc,放在卡根目录。
按官方要求,电池电压充足(7.5 V 以上),拔掉充电线和 USB 连接线,以电池供电升级。在原版系统按 FUNC,进入“系统更新”,核对内容后执行升级。
等待完成并按提示重启。进度前段可能停留较久,不要因暂时不动而强行关机。完成后应进入双系统选择页。
升级器仍可能显示 3.2.4,这是为了兼容原升级容器的版本号。
后续升级同样进入原版系统操作。
如果只是暂时使用官方功能,开机选择“原版系统”即可。要移除双系统入口,将官方的 sdr_908.kc 放到卡根目录,进入原版“系统更新”重新刷入,完成后正常重启。若准备退到更旧的官方版本,务必先查对应机型与版本的官方说明;无法进入正常升级页时,参照官方升级指南的恢复流程。
实现了第一版自制固件,主要把双系统、常用仪器操作、APRS/SSTV、PTTx 和电脑接口串起来,先供有恢复条件、愿意反馈问题的用户试用。欢迎附上机型、版本、操作步骤、导出的日志和复现条件。
性能仍然有冗余,未来可开发更多内置功能。
关于开源:由于现有实现涉及官方许可证读取、验证等内容,暂时不开源。未来完成相关逻辑的剥离后,可能开源部分模块。
本文由 AI 协助整理项目代码和测试记录。
下载:
固件 V1.0.0:
Windows SDK、MCP V1.0.2: