# comNG **Repository Path**: eetuuuu/comNG ## Basic Information - **Project Name**: comNG - **Description**: 一个现代且功能强大的串口助手软件 - **Primary Language**: JavaScript - **License**: MIT - **Default Branch**: master - **Homepage**: https://gitee.com/xenkuo/comNG - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 92 - **Created**: 2025-07-16 - **Last Updated**: 2025-07-16 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # comNG -- 串口助手 > 2023/7/17: 1000 Star 后重新开启更新。现在是 360 Star,让我们看看会不会有这天到来,毕竟这只是个小小的串口助手软件。 > comNG 已经开发迭代了大概一年半了吧。目前基本已经实现了预期的绝大多数的功能,所以开发工作也该告一段落了。 > 我会发布全平台的 v2.1.1 版本,之后如果没有大的功能升级或者 bug 修复,短时间内应该不会有更新了。 > > 仅以此软件献给所有的嵌入式工程师,希望你们都能找到自己喜欢的开发工具。 `comNG` 是一款具有现代化 UI 设计并且功能强大的串口助手软件。 `comNG` is a powerful serial port tool with modern UI design. For English users, please refer to [comNG Introduction](doc/Introduction-en.md) ## 文档 请参考 [comNG 完整文档](doc/Introduction.md) ## Todo - [ ] ~~发送文件~~ - [ ] ~~执行脚本~~ - [x] 多窗口 - [x] 字符模式统一转换不可打印字符 - [x] 自动枚举可用串口 - [x] 通用数据图形化界面 ## 介绍 comNG 区别于其他串口助手的地方在于其强大的 “现场数据分析“ 能力。简单来说就是 comNG 提供的多种功能以帮助用户更方便的分析打印输出文本。这些功能包括: - 专业的 UI 和交互设计 - 支持多标签,多实例 - 专业的 Hex 模式 - 通用的数据图形化界面 - 内建的 comNGLang 高亮语法 - 手动文本高亮:类似于 notepad++ 的 Style Token - 搜索文本高亮:类似于 vscode 的搜索文本高亮 - 选择文本高亮:类似于 vscode 的选择文本高亮 - 支持 minimap 功能:类似于 vscode 的 minimap - 基于文本内容的中断功能,这是一个全新设计的功能 - 日志文档的签名:时间和姓名 - 常用命令支持快捷键操作,比如打开/关闭串口、打开/保存文件、清除文本、高亮文本等 - 跨平台:Windows, Mac OS 以及 基于 Debian 的 Linux 系统,比如 Ubuntu 和 Deepin - 自定义主题(只支持软件下方 Bar 的背景色。) - 经过特定优化的串口发送模式 另外还包含一些串口助手通用的功能: - Modem 信号指示和控制 - 自动串口枚举 - 自定义波特率 - 十六进制接收/发送 - 接收时间戳 - 发送文本 - 流控 - 文件保存和打开,支持拖动 - 抓取至文件 ## 用户界面 ![image](image/preview.jpg) ![image](image/chart.png) ![image](image/preview.gif) ![image](image/hex-edit.gif) ## 使用方法 下载对应系统的安装文件,安装,然后就可以正常使用了。对于 Linux 系统,可能需要对串口设备文件执行以下命令: `sudo chmod 666 /dev/ttyS1` 记得把 `ttyS1` 替换为你的串口设备文件。 ### 快捷键列表 - 打开文件: `CmdOrCtrl + O` - 用 Hex 模式打开文件: `CmdOrCtrl + Shift + O` - 保存文件: `CmdOrCtrl + S` - 打开关闭串口:`CmdOrCtrl + D` - 打开关闭串口,并且清空 Log:`CmdOrCtrl + Shift + D` - 清空 Log:`CmdOrCtrl + X` - 清空所有高亮:`CmdOrCtrl + Shift + X` - 高亮/去高亮鼠标下方或选择的文本:`CmdOrCtrl + E` ## 开发 ### 克隆代码 ```ps git clone git@gitee.com:xenkuo/comNG.git ``` ### 设置开发环境(难!!!) > python 版本 node-gyp 和 comNG 里的模块都依赖 python。node-gyp 安装时如果发现环境变量里没有 path 会自动安装最新版本 python,目前是 3.12.x。 这个版本太新,和 comNG 里的模块有冲突。目前已知的兼容版本是 python v3.10.9, 可以在 [HuaWei Mirros](https://mirrors.huaweicloud.com/python/) 下载。 安装时一定记得 **添加 python 到环境变量**。 > node & yarn 安装 先安装 node,测试过的最新版本是 v16.20.2 LTS。comNG 需要编译 native module,也就是 node-gyp,所以下图选项需要勾选: ![](Image/README_2024-04-01-19-00-17.png) Yarn 是使用的 Yarn 1, Yarn 2+没有测试过。安装命令如下: ```ps npm install --global yarn ``` > 网络问题 如果网络有问题,建议使用以下 `.npmrc` 文件配置: ```ps registry=https://registry.npm.taobao.org electron_mirror=https://cdn.npm.taobao.org/dist/electron/ electron_custom_dir=7.2.4 ``` > 已知问题 - yarn Error: certificate has expired - `yarn config set "strict-ssl" false -g` - ModuleNotFoundError: No module named 'distutils' - reference: https://stackoverflow.com/questions/77247893/modulenotfounderror-no-module-named-distutils-in-python-3-12 - `pip install setuptools` - Node gyp ERR - invalid mode: 'rU' while trying to load binding.gyp - use python 3.10.x, new version can't support this mode > 安装 node modules ```ps cd comNG yarn ``` ### 运行 ```ps code . yarn run start ``` ### 编译 ```ps yarn make ``` ## License comNG is [MIT](./LICENSE) licensed and all it's dependencies are MIT licensed.