登录
注册
开源
企业版
高校版
搜索
帮助中心
使用条款
关于我们
开源
企业版
高校版
私有云
模力方舟
AI 队友
登录
注册
轻量养虾,开箱即用!低 Token + 稳定算力,Gitee & 模力方舟联合出品的 PocketClaw 正式开售!点击了解详情~
代码拉取完成,页面将自动刷新
开源项目
>
工业软件
>
IOT/物联网/边缘计算
&&
捐赠
捐赠前请先登录
取消
前往登录
扫描微信二维码支付
取消
支付完成
支付提示
将跳转至支付宝完成支付
确定
取消
Watch
不关注
关注所有动态
仅关注版本发行动态
关注但不提醒动态
48
Star
380
Fork
200
GVP
iBUILDING-X
/
driver-box
代码
Pull Requests
0
Wiki
统计
流水线
服务
质量分析
Jenkins for Gitee
腾讯云托管
腾讯云 Serverless
悬镜安全
阿里云 SAE
Codeblitz
SBOM
开发画像分析
我知道了,不再自动展开
发行版
最新版
v2.0.0
db910e8
2026-01-29 10:36
对比
driver-box v2.0.0发布
三刀
## 版本亮点 **接口优化,体验升级** - v2.0 全面优化插件接口设计,统一设备影子 API,新增事件驱动架构,大幅提升开发效率和运行性能。 ## ✨ 核心新特性 1. 插件接口重构 - 简化插件注册方式:RegisterPlugin → EnablePlugin - 简化导出注册方式:LoadExport → EnableExport - 优化 Initialize 方法:参数从 3 个简化为 1 个 (config.DeviceConfig) - 统一插件开发接口,降低学习门槛 2. 设备影子 API 统一 - API 路径迁移:helper.DeviceShadow → driverbox.Shadow() - 提供实时状态缓存、智能在线检测、变化智能上报 - 内存缓存设计,提升数据访问效率 3. 事件驱动架构 - 新增事件总线系统,支持 7 种系统事件: - DeviceAdded - 设备添加 - DeviceDeleting - 设备删除 - DeviceDiscover - 设备发现 - DeviceOnOff - 设备开关 - ShadowOnline - 在线状态变化 - Exporting - 数据导出 - ServiceStatus - 服务状态变化 - 松耦合设计,易于扩展和可观测 4. LinkEdge 场景联动增强 - 新增场景联动完整 API: - Create(config) - 创建规则 - Update(config) - 更新规则 - Delete(id) - 删除规则 - Get(id) - 获取规则 - GetList(tag) - 获取列表 - Trigger(id) - 手动触发 - Execute(config) - 直接执行 - 支持定时触发、设备点位触发、设备事件触发 - 支持深度联动(最大 10 层) 5. 新增 History Export - SQLite 历史数据存储功能 - 支持历史数据查询 ## 目录结构调整 ```bash driver-box/ → driver-box/ + pkg/ driver-box/export/ → exports/ └── linkedge/ → ├── linkedge/ ├── history/ (新增) └── discover/ (优化) ``` ## 性能优化 - 优化模型点位内存管理 - 优化设备添加事件触发机制 - 优化缓存数据结构,提升并发性能 - MQTT 连接池异步初始化 ## Bug 修复 - 修复 Lua 虚拟机关闭时的内存泄漏和并发安全问题 - 修复 MQTT 连接配置中的主题解析问题 - 修复设备模型缓存中的插件名称验证问题 - 修复 Modbus 连接关闭时的数据采集任务处理 - 修复配置加载方法名错误 - 修复点位精度配置错误检查逻辑 - 修复插件删除时文件修改时间未更新问题 ## 文档完善 - 新增事件系统、设备影子、架构设计文档 - 新增插件开发指南和导出开发指南 - 集成 Mermaid 图表支持 - 完善 SDK API 文档和使用示例 - 文档代码净增 5,779 行 ## 代码统计 - 166 个提交,涉及 357 个文件修改 - Go 代码:净减少 1,184 行(代码精简) - 文档/配置:净增加 5,779 行 - UI 资源:净减少 15,826 行(移除内置 Web UI) ## 破坏性变更 1. 插件注册方式变更 ```go // v1.5.5 driverbox.RegisterPlugin("modbus", &modbus.Plugin{}) // v2.0 driverbox.EnablePlugin("modbus", &modbus.Plugin{}) ``` 2. 设备影子 API 变更 ```go // v1.5.5 helper.DeviceShadow.GetDevicePoint("device-001", "temperature") // v2.0 driverbox.Shadow().GetDevicePoint("device-001", "temperature") ``` ## 环境要求 - Go 1.23+ - Linux / Windows / macOS - amd64 / arm64 / armv7 - 内存:128MB 以上(应用内存约 30MB)
最后提交信息为:
refactor(core): 更新模块导入路径到 v2 版本
v1.4.0
639ab61
2025-06-10 10:25
对比
driver-box v1.4.0发布
三刀
## 新增功能 1. **设备信息查询接口** - 新增 RESTful API 用于查询设备详细信息 - 支持 JSON 格式返回,包含设备状态、配置等完整信息 2. **网关元信息维护** - 增加网关元数据管理能力,包括版本、配置等 - 提供元数据查询和更新接口 3. **网关唯一标识生成** - 实现基于硬件信息的唯一码生成算法 - 确保网关在分布式环境中的唯一性标识 4. **事件系统增强** - 新增 `onOff` 事件类型,用于设备开关机状态跟踪 - 扩展驱动层 Lua 脚本生成事件的能力 5. **UDP 探测支持** - 默认开放 9090 端口用于 UDP 服务探测 - 支持自定义探测响应内容 6. **场景联动增强** - 增加点位状态持续时长触发条件 - 支持基于时间窗口的状态变化检测 ## 接口改进 1. **日期格式化输出** - 统一 REST 接口中的日期类型输出格式 2. **设备添加校验** - 强化设备添加接口的输入验证 - 增加设备类型、参数有效性检查 3. **接口清理** - 标记 `callback#OnReceiveHandler` 为过时接口 ## 问题修复 1. **持久化问题** - 修复 cmanager 持久化失效问题 - 增强数据存储可靠性 2. **代码清理** - 移除实验性 serial 插件 - 清理相关依赖和配置项 ## 优化说明 本次更新重点增强系统稳定性和扩展性,改进内容包括: - 基础设施:网关唯一标识、元信息管理 - 接口规范:日期格式化、输入校验 - 功能扩展:事件类型、场景联动条件 - 系统维护:问题修复、代码清理
最后提交信息为:
!55
feat: OnReceiveHandler 待废弃方法添加告警提示信息
v1.3.3
0964d20
2025-03-24 09:11
对比
v1.3.3
三刀
1. 新增设备删除事件:event.EventCodeWillDeleteDevice
最后提交信息为:
!54
Merge remote-tracking branch 'origin/master' into 20250312_zjw_...
v1.3.2
2d905bd
2025-03-20 10:44
对比
v1.3.2
小菜LC
### 新增 - 新增 [场景联动](https://ibuilding-x.github.io/driver-box/export/linkedge/) 相关文档 - 新增 [Export](https://ibuilding-x.github.io/driver-box/export/about/) 相关文档 ### 改变 - 修改 helper.CoreCache.AddModel 方法入参(config.DeviceModel => config.Model) ### 修复 - 修复 cmanager.GetPluginNameByModel 方法(通过模型名称获取插件名称)异常 - 修复 cmanager 包自定义模型及设备索引偶尔失效问题 - 修复 config 包强制数据类型转换引发 panic 问题
最后提交信息为:
!53
feat: 修复点位数据类型转换时 panic
v1.2.6
464b264
2025-01-13 14:59
对比
driver-box v1.2.6发布
三刀
1. modbus 虚拟设备支持bit位控制 1. lua 新增内置函数 driverbox.getDevice 1. 增强设备自动发现功能 1. 应用层动态脚本支持产生事件。
最后提交信息为:
!49
v1.2.6
v1.2.5
ed6c925
2025-01-06 09:56
对比
driver-box v1.2.5发布
三刀
- 优化编译打包脚本 deploy.sh - 新增接入配置自检特性,自动清理无效配置。 - 新增通用串口驱动插件(实验性)。 - 场景联动执行日期区间支持跨年。 - 临时注释 llm export(功能待完善;避免golang版本被强制升级) - 完善 lua 执行结果的数据类型校验。 - 清理 dlt645 驱动插件中的无效代码。 - 过时接口:callback.OnReceiveHandler - 过时接口:plugin.Connector.Decode - 过时接口:cmanager.Manager.GetConnection - 过时接口:cmanager.Manager.RemoveConnection
最后提交信息为:
!48
v1.2.5
v1.2.4
c70cb5d
2024-12-17 10:37
对比
v1.2.4 bugfix
小菜LC
- 修复 websocket 插件无法解析端口号问题 - 修复 websocket 并发发送消息异常问题 - 修复 GatewayExporter 同步问题
最后提交信息为:
!46
网关级联已知问题修复
v1.2.3
df07b30
2024-12-10 09:56
对比
v1.2.3 bugfix
小菜LC
- 修复网关自添加问题 - 修复设备自动发现事件透传问题 - 修复设备标签透传问题
最后提交信息为:
!45
网关级联
v1.2.2
7954feb
2024-12-06 14:35
对比
driver-box v1.2.2发布
三刀
1. 场景联动执行action忽略离线设备,提升执行效率。 1. 提供一个简易版的UI,可用于查看设备列表和影子数据。 1. modbus离线设备自适应调整采集优先级,保障正常设备通讯稳定性。 1. 预研大模型技术与driver-box的结合。 1. 新增driver-box plugin,实现基于driver-box的网关级联功能。
最后提交信息为:
!44
v1.2.1
v1.2.1
3ac5d49
2024-11-13 14:23
对比
优化更新
三刀
- 修复网关启动时Config.Key未赋值导致动态脚本失效问题。
最后提交信息为:
!43
bugfix
v1.2.0
7687de4
2024-11-11 09:14
对比
driver-box v1.2.0发布
三刀
1. bacnet插件兼容多点位写操作
最后提交信息为:
!42
bacnet插件优化
v1.1.9
3891036
2024-11-06 11:19
对比
driver-box v1.1.9 发布
三刀
modbus驱动增加 multiWrite 配置用于标识单寄存器点位写操作采用 16 功能码
最后提交信息为:
!41
modbus驱动优化
v1.1.6
cdb7d74
2024-10-28 11:34
对比
driver-box v1.1.6发布
三刀
1. 修复modbus多点位bit位批量写入值失效问题。
最后提交信息为:
!40
v1.1.6
v1.1.5
af37f42
2024-10-21 10:08
对比
driver-box v1.1.5发布
三刀
1. 优化modbus插件的平台兼容性。 1. 插件支持覆盖更新
最后提交信息为:
!39
v1.1.5
v1.1.4
43e755e
2024-10-14 09:31
对比
driver-box v1.1.4发布
三刀
1. 资产库新增 tag 的管理。 2. CoreCache 新增 GetPoints 接口,用于获取有序点位列表。 3. 场景联动新增事件类型:未知设备、未知场景。 4. 提升 dlt645 插件稳定性。
最后提交信息为:
!38
v1.1.4
v1.1.3
5241dde
2024-09-24 14:30
对比
driver-box v1.1.3发布
三刀
修复镜像设备在离线状态同步问题
最后提交信息为:
!37
修复镜像设备在离线状态同步问题
v1.1.2
d3fa7c6
2024-09-20 16:36
对比
driver-box v1.1.2发布
三刀
1. 清理 CoreCache 过时代码 1. 调整 plugin#Initialize 接口设计 1. 优化内存开销 1. 新增国标电表协议 DLT645 1. 修复 http client 插件采集周期参数不生效的问题。
最后提交信息为:
!36
driver-box v1.1.2
v1.1.1
8618e6e
2024-09-02 14:15
对比
driver-box v1.1.1发布
三刀
1. 增加lua内置模块: driverbox 1. 定义场景联动 API 模型 1. 迁移设备影子、coreCache 至 internal 包路径。 1. 添加设备时增加 modelName 冲突校验。 1. 优化镜像设备服务
最后提交信息为:
!35
v1.1.1
v1.1.0
a3ebb1b
2024-08-15 10:49
对比
driver-box v1.1.0发布
三刀
1. 废弃 plugin.ProtocolAdapter 接口,将 Encode/Decode 方法整合至 plugin.Connector。 1. 新增 :8081/sse/log 接口,可通过浏览器实时展示网关运行日志。 1. 重构读写操作时获取设备连接的逻辑。 1. 补充 cmanager.AddModel 关于模型名判空处理。 1. 移除 coreCache.GetDeviceByDeviceAndPoint 接口。 1. coreCache.GetRunningPluginByDeviceAndPoint 接口重定义为 coreCache.GetRunningPluginByDevice 1. 公开资产库以供 driver-box 集成方使用。 1. 内置 Export 作为最高优先级启用 1. 设备驱动采用线程安全的延迟加载。 1. modbus 增加信号量检测,实现 write 操作优先于 read. 1. 增强 MQTT 插件的能力。
最后提交信息为:
!34
v1.1.0
v1.0.2
e6d7d1d
2024-07-31 13:36
对比
driver-box v1.0.2发布
三刀
1. bugfix:修改设备名称后未持久化
最后提交信息为:
!32
修复设备名称修改未持久化问题
下载
请输入验证码,防止盗链导致资源被占用
取消
下载
Go
1
https://gitee.com/iBUILDING-X/driver-box.git
git@gitee.com:iBUILDING-X/driver-box.git
iBUILDING-X
driver-box
driver-box
点此查找更多帮助
搜索帮助
Git 命令在线学习
如何在 Gitee 导入 GitHub 仓库
Git 仓库基础操作
企业版和社区版功能对比
SSH 公钥设置
如何处理代码冲突
仓库体积过大,如何减小?
如何找回被删除的仓库数据
Gitee 产品配额说明
GitHub仓库快速导入Gitee及同步更新
什么是 Release(发行版)
将 PHP 项目自动发布到 packagist.org
评论
仓库举报
回到顶部
登录提示
该操作需登录 Gitee 帐号,请先登录后再操作。
立即登录
没有帐号,去注册