站内搜索
发作品签到
智能高速隔离USB Hub
专业版

智能高速隔离USB Hub

2.0w
0
0
164

简介

USB2.0隔离HUB,带有过流、短路保护功能。主控为ESP32S3,在OLED屏幕上实时显示四路USB电压电流,可通过手机APP无线监测、控制USB开关。可用上位机实时监测电压电流数据

简介:USB2.0隔离HUB,带有过流、短路保护功能。主控为ESP32S3,在OLED屏幕上实时显示四路USB电压电流,可通过手机APP无线监测、控制USB开关。可用上位机实时监测电压电流数据
星火计划2025
复刻成本:105

开源协议

LGPL 3.0

(未经作者授权,禁止转载)
创建时间:2025-07-10 14:58:26更新时间:2025-10-30 17:21:59

描述

智能高速隔离 USB Hub

⚡ 不仅仅是隔离Hub,更是智能USB电压电流表

🛡️ 信号隔离 📱 APP控制 ⚡ 高速传输 🔋 功率监测

可在B站观看高清演示视频:https://www.bilibili.com/video/BV184tzzLELY

1 简介

1.1 项目背景

作为电子工程师/DIY爱好者的你是否有过这样的经历:
1. 调试开发板时,不小心短接了5V和GND,导致电脑USB端口弹出了过流警告,甚至烧掉了电脑USB保险。
2. 想在调试时检测USB口的功率,花几十块购买的USB电流表,它却只能检测一路的电压电流数据。

CH318 是一个高速 USB 信号隔离芯片,通过电容耦合,可以对 USB 信号线(D+、D-)进行隔离,使得信号在传输过程中可以不受电气噪声和干扰的影响。

1.2 项目亮点

  • ✅智能控制,可通过手机APP进行监测电压电流、控制
  • ✅可连接电脑通过上位机实时监测电压电流
  • ✅使用ESP32S3作为主控,旋转编码器操作交互,UI动画丝滑
  • ✅USB信号隔离,有效抑制噪声
  • ✅高速USB2.0传输,满足大部分需求
  • ✅短路及过流保护,过流将自动切断该路供电,防止损坏设备
  • ✅灵活供电,可接辅助供电为高功率USB设备供电
  • ✅最多4个USB设备连接
  • ✅支持OTA在线升级固件

2 功能展示

2.1 外观

白色外壳版本,简约时尚

image.png

image.png

黑色外壳版本,优雅高端
image.png

2.2 手机APP无线控制

🔗 手机APP实时控制

(1)输入websocket地址,连接到USB Hub,可以实时监测电压电流功率

image.png

(2)可以控制USB的开关,Hub同步动作

PixPin_2025-07-29_10-59-37.gif

2.3 Hub控制系统展示

🎛️ 本地智能控制系统

(1)控制USB的开关,可控制USB的启用/关闭,与在手机APP上控制效果一样。

PixPin_2025-07-29_10-55-59.gif

(2)USB监测功能,实时监测各个USB端口的电压、电流、功率。可配置数据刷新率。

PixPin_2025-07-29_10-51-03.gif

(3)wifi配置功能,可以进行连接、断开wifi,查看网络信息、进行wifi配网、重置wifi等操作。也可以配置是否开机自动连接wifi、睡眠时wifi是否关闭等。

image.png

其中,配网页面需要用手机连接Hub开启的热点,连接成功后会弹出网页,进行wifi的选择和密码输入。

image.png

(4)UI设置页,主要修改UI动画速度等内容

PixPin_2025-08-04_18-48-33.gif

(5)USB过流警告功能。当某个USB口出现过流,会自动监测并弹窗提示。同时,系统会立即切断该路供电输出,需要在开关页面手动开启。

PixPin_2025-07-29_10-58-19.gif

(6)OTA在线升级功能。连接WIFI后,点击主菜单上的OTA图标,系统自动获取最新固件版本,并自动升级,无需与电脑连线,快捷方便。

PixPin_2025-08-06_17-35-29.gif

(7)睡眠功能,点击后屏幕进入关闭状态,CPU降低频率运行,系统功耗显著降低。如配置"睡眠时关闭wifi",则会进一步降低功耗,否则,睡眠时wifi仍然启用,仍可使用手机APP查看数据、控制USB。

2.4 上位机实时监测电压电流

📊 VOFA实时数据可视化
在监测页面的设置中,启用串口输出数据功能。使用USB数据线连接电脑与Hub的ESP32调试接口,在某个USB口上插入设备。 打开VOFA软件,数据引擎选择FireWater,打开串口。放置3个波形图控件,分别对应电压、电流(mA)、功率(mW)

PixPin_2025-08-04_20-02-45.gif

2.5 文件传输速度

⚡ 高速传输性能测试

插入一个TF卡读卡器,一个U盘。

(1)跑个分~使用diskmark成绩如下:

📈 读取能达到40MB/s,顺序写入是16MB/s(这块U盘拖后腿了)。
💡 说明一下,因为USB协议有较大的通信开销,除了我们的数据,还要传同步信号、类型标识、校验码、握手信号等各种协议信息,所以这里40MB/s已经是USB2.0协议的极限了

image.png

(2)向TF卡写入的同时,从U盘读数据:

image.png

3 硬件方案

1. 数据输入端:

使用USB-C 16pin 连接电脑,用于数据输入和0.6A以下电流供电。

2. 电源部分:

(1)非隔离端,从数据输入的USB口取电
(2)如果电脑供电不足,可外接辅助电源
(3)CH217K做电路限流 ,限制2A
(4)隔离DCDC电源 ,最大5V0.6A
⚠️ 注意: 如果要插2个以上的U盘、移动硬盘等设备,一定要接辅助电源,否则会出现供电不足的情况。

3. HUB主电路部分:

(1)需要两个CH318T ,一个在非隔离端做上位机,接收电脑的USB数据信号,然后调制发送模拟信号到另一个做下位机的CH318T;
隔离端和非隔离端中间采用电容耦合信号,电容耐压值1.5kV
下位机的CH318T接收模拟信号,通过下行端口输出。
(2)CH334R 4端口USB HUB控制器芯片 1个。
一共4路USB输出,其中每一路上使用INA226做电压电流采样
(3)使用SY6288CAAC 电子开关,使用ESP32控制开关,以及检测过流。

4. 单片机控制部分

主控使用ESP32S3,用于处理数据、显示数据、控制电子开关等。
用到的外设有I2C(接4个INA226)、旋转编码器(做菜单控制)。
另外,基于ESP32的WIFI连接功能,可以连接到手机通过app监测、控制电子开关。

5. 显示部分

使用SPI驱动的OLED屏幕,尺寸为1.5寸,分辨率128x128

4 功能框图

系统架构概览

框图.png

5 软件部分

5.1 软件代码

📦 说明

软件代码开源在了GitHub:https://github.com/vrxiaojie/Isolated-USB-Hub

固件烧录及激活方式请见5.2和5.3节。

安卓手机应用请在附件中下载安装usb_hub_app.apk

5.2 烧录方式

5.2.1 首次烧录

第一次烧录固件请参考以下步骤:

(1)下载工具和固件

(2)选择芯片型号
打开烧录工具,选择芯片型号ESP32S3

image.png

(3)配置烧录参数
按下图所示操作,点击省略号,选择USBHub_full_v1.x.bin,打勾复选框,地址填写0x00000000,spi设置保持默认,选择COM口,烧录即可。

image.png

5.2.2 线刷固件升级

线刷固件升级流程:

(1)下载升级固件

前去GitHub 仓库下载最新版的USBHub_firmware_v1.x.bin

(2)修改烧录地址
与5.2.1中的类似,只是烧录地址要改为0x00010000,其他操作是一样的

image.png

5.2.3 OTA升级

OTA升级流程:

(1)在WIFI功能页配网/连接WIFI
(2)主菜单功能选择 OTA
(3)等待检查更新,若有新固件,则设备将自动重启升级

6 器件选购+成本估算

6.1 OLED屏幕

📺 显示屏选购要点

购买链接: 淘宝搜索-> 1.5寸128x128OLED屏幕

image.png

⚠️ 选购注意事项
  1. 购买SPI接口的,pin的排列顺序(从左至右)为 RST CS DC SDA SCL GND VCC
  2. 屏幕含底板,尺寸为34mm * 47mm
  3. 显示控制芯片为SH1107
  4. 价格在20元以上(不含邮费),勿贪便宜购买低于此价格的!!! 我购买的是原价22.9,店铺券-5元,到手17.9元

6.2 可在某宝购买以降低成本的器件

有些器件在立创商城买挺贵的,所以可以选择在某宝买。但要注意购买大店的,别贪便宜,容易买到拆机、高仿货。以下价格均不含邮费:

器件 价格
CH318T 10.8元x2个
B0505S-3WR2 5.2元
SY6288CAAC 0.46元x4个
CH334R 1.84元
INA226 2.5元x4个
EC11J1525402 10元
CH340X 2.35元
ESP32-S3 N8R8模块 约13.5元

6.3 成本估算

  • 如若6.2节的器件在某宝买,剩下的立创商城买,则单套器件价格为87元
  • OLED屏幕有优惠券是18~23元
  • PCB 嘉立创4层板有免费券0元
  • 3D外壳费用26元(9600树脂,不加急,粗磨),如果裸板则能省下这部分费用

7 PCB设计说明

1. 阻抗控制要求

USB差分信号控制阻抗90欧姆,在下单时要求阻抗匹配+-20%,选择层压结构JLC04161H-3313

2. 天线布局设计

ESP32天线要伸出板边,这是参考乐鑫官方文档[PCB 版图布局]来设计的,但由于旋转编码器和USB-A的位置限制了,因此不能放在推荐位置上(位置3、4)。

image.png

8 声明

本项目由作者在业余时间开发并开源。虽然尽力保证其可靠性和兼容性,但受限于个人精力,声明如下:

  • 不保证提供免费的技术支持、使用指导或定制服务
  • 不保证软件无缺陷或满足特定需求
  • 不保证及时修复漏洞或发布更新
  • 不承担任何因使用本项目而产生的直接或间接损失
  • 未经作者书面授权,不得将此项目以任何形式用于批量生产和商业盈利用途
  • 如需借鉴本项目的部分设计,请遵循开源协议,并标明本项目的开源地址:
    https://oshwhub.com/vrxiaojie/multi-function-high-speed-isolat

9 参考&致谢

本项目的软件/硬件参考以下开源工程,非常感谢开源作者们!

  1. CH318外围设计参考:[高速USB隔离器,基于CH318T] 以及CH318的数据手册
  2. ESP32部分设计参考我之前的项目:[基于ESP32的桌面仪表盘]
  3. 丝滑的UI设计,修改自[WouoUI]
  4. 特别感谢嘉立创星火计划提供的耗材支持!

10 程序更新日志

版本 更新内容
1.0.0 规划UI整体框架
1.0.1 新增WIFI相关功能
WebSocket连接
1.0.2 ws性能优化;修复电压电流显示问题
1.1.0 新增设备激活功能
1.1.1 修复WIFI配网失败问题
1.1.2 修复电子开关不工作的问题
修复USB2、3数据获取问题
1.1.3 新增过流保护切断电子开关功能
1.1.4 支持串口输出电压电流数据
1.2.0 开发OTA在线升级功能
1.2.1 修复了一些bug
睡眠功耗降低
1.2.2 修复MAC地址显示错误的问题
1.3.0 修复旋转编码器判定问题
移除激活功能

设计图

未生成预览图,请在编辑器重新保存一次

BOM

暂无BOM

3D模型

序号文件名称下载次数
暂无数据

附件

序号文件名称下载次数
1
usb_hub_app.apk
195
2
演示视频-.mp4
74
3
USBHub外壳.zip
190
克隆工程
添加到专辑
0
0
分享
侵权投诉
知识产权声明&复刻说明

本项目为开源硬件项目,其相关的知识产权归创作者所有。创作者在本平台上传该硬件项目仅供平台用户用于学习交流及研究,不包括任何商业性使用,请勿用于商业售卖或其他盈利性的用途;如您认为本项目涉嫌侵犯了您的相关权益,请点击上方“侵权投诉”按钮,我们将按照嘉立创《侵权投诉与申诉规则》进行处理。

请在进行项目复刻时自行验证电路的可行性,并自行辨别该项目是否对您适用。您对复刻项目的任何后果负责,无论何种情况,本平台将不对您在复刻项目时,遇到的任何因开源项目电路设计问题所导致的直接、间接等损害负责。

底部导航