惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

WordPress大学
WordPress大学
Engineering at Meta
Engineering at Meta
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
Martin Fowler
Martin Fowler
雷峰网
雷峰网
Recent Announcements
Recent Announcements
博客园 - 叶小钗
F
Full Disclosure
C
Check Point Blog
A
About on SuperTechFans
L
LangChain Blog
Vercel News
Vercel News
T
The Blog of Author Tim Ferriss
博客园 - 司徒正美
C
Cybersecurity and Infrastructure Security Agency CISA
C
CXSECURITY Database RSS Feed - CXSecurity.com
Cisco Talos Blog
Cisco Talos Blog
Hugging Face - Blog
Hugging Face - Blog
Recorded Future
Recorded Future
MongoDB | Blog
MongoDB | Blog
Project Zero
Project Zero
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
D
Darknet – Hacking Tools, Hacker News & Cyber Security
Know Your Adversary
Know Your Adversary
D
Docker
U
Unit 42
酷 壳 – CoolShell
酷 壳 – CoolShell
T
The Exploit Database - CXSecurity.com
L
Lohrmann on Cybersecurity
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
Latest news
Latest news
V
Visual Studio Blog
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
L
LINUX DO - 最新话题
Google DeepMind News
Google DeepMind News
小众软件
小众软件
NISL@THU
NISL@THU
GbyAI
GbyAI
H
Heimdal Security Blog
Jina AI
Jina AI
I
InfoQ
PCI Perspectives
PCI Perspectives
P
Privacy International News Feed
P
Proofpoint News Feed
N
News and Events Feed by Topic
C
CERT Recently Published Vulnerability Notes
aimingoo的专栏
aimingoo的专栏
SecWiki News
SecWiki News
B
Blog RSS Feed
阮一峰的网络日志
阮一峰的网络日志

Ivan's Blog

untitled - Ivan 搓一个 USB PD 协议与 DC-DC 反馈 在 UTM 中创建一个带有 xfce 桌面环境的 ArchLinux 升级 All in One: PVE 8.4 -> PVE 9.1, PBS 3 -> 4 Cloudflare Tunnel 实现内网穿透小记 SK150C 外壳套件——硬件设计篇 电子负载 Rev.3 开发笔记 使用 CH335F 构建一个支持独立供电的 2A2C USB HUB UPS 开发笔记:硬件选型与设计 ByteVirt LXC 小鸡重装最新 ArchLiux 小记 快速在 PVE 全新部署 Arch Linux LXC 在本地运行 Act Runner 全新安装 PVE 并使用旧数据恢复它 造一个支持隔离、PD 供电的全速 USB-C HUB Rev.1 电子负载开发笔记 学习笔记:电子负载实现原理 带功率计量的 PD 诱骗器 Ver.2 Power Desk 的供电问题导致 ESP32-C3 主控重启 LumiDock Flex 开发笔记 带功率计量的 PD 诱骗器
造一个支持隔离、PD 供电的全速 USB-C HUB Rev.2
Ivan Li · 2025-04-05 · via Ivan's Blog

Ivan Li 8 分钟阅读

第二版的隔离 USB-C HUB 开发笔记。对上一版进行了修正和改进,依旧使用 ISOUSB211 作为隔离芯片,改用了 CH335F 作为 HUB。

正文已可阅读,图片灯箱和代码折叠会按需启用

上次设计的第一版基本上可以说没通过验证……思路是对的,但是时间比较赶,出现了一些大的纰漏。 这次重新设计了一版,大部分还是延续了之前的经验,做出了一些简化和改进。

Rev.2 设计目标

  • 去掉 DC-DC 隔离电源 外部供电一般使用 AC-DC 转换器,目前常见的都是隔离型的,我就不再在 USB-C HUB 里面再弄一个 DC-DC 隔离了。
  • HUB 改成 3 个外部 USB-C 下行端口 由于前面去掉了两个 DC-DC 隔离电源模块,体积就可以做小了。 还是考虑到内置的大功率 PD 供电,还是得考虑使用铝合金外壳。我挑选了下公模外壳,决定选 632575mm 的尺寸。这样导致前面板只适合放三个 USB-C 接口了。进而决定:
    • 使用 4 个下行端口的 HUB 芯片就行 -> CH335F
    • 内部主控芯片占用一个下行端口,用于与 host 通信

修复 USB PD DC-DC 电路

上一版直接漏掉了两个 boost 二极管,导致 DC-DC 部分没有正确启动。 不过也不是大问题,毕竟第一次用 Boost-Buck 芯片,本想着少打一次样的,结果没省下。后续单独对整个 USB1 端口的 USB PD 部分单独打样验证,已经没问题了。

实现 SW2303 高侧检流

SW2303 只支持低侧检流。低侧检流在多电源系统中可能导致“共地问题”: 当多个电源(A和B)共用同一地平面且均采用低侧检流时:

  1. 电源A输出的电流可能通过负载后,经共享地线流经电源B的检流电阻返回
  2. 导致:
    • 电源A的测量电流值 = 真实输出电流 - 跨接电流ΔI
    • 电源B的测量电流值 = 真实输出电流 + 跨接电流ΔI
    • 系统总电流仍满足ΣI测量 = ΣI实际,但各端口独立测量值失真

SW2303 的参考设计是使用低侧检流。说实话,我没找到电源使用低侧检流的可行性。除非,这只是一个聊胜于无的方案?毕竟 DC-DC 芯片是采用高侧检流方案的,或许是前级兜底的信心吧。不知道以后有没有机会让我了解到他真正的价值。

至少来说,对于 HUB 类应用,一旦下游设备同时连接了两个 HUB 端口,低侧检流肯定是不准的,而我平常测试设备,调试器和设备供电很可能会选择连同时连 HUB,所以至少出于这点,我也希望实现高侧检流。更别提更复杂的连接组合了。

为了实现高侧检流,我使用 G=1V/V 的高侧电流检测芯片进行转换,转换后输出的电压范围就是能被 SW2303 接受的、等价于低端检流的信号。

SW2303+INA138 实现高侧检流的原理图

用 CH335F 作为 HUB 芯片

之前使用的 CH338X 不确定是不是我焊接反了烧坏了还是焊接不良,一片好贵的说!目前确定了外壳尺寸,所以不需要那么多下行接口了,就直接换成 CH335F 了。CH338X 的各种功能配置快把我绕晕了。

CH335F 介绍

CH335F 便宜的说!不超过 CH338X 三分之一的价格还容易购买。 支持独立过流检测和独立电源控制,支持每个端口独立指示灯,够用了够用了。 CH335F 还支持免晶振应用,对于我这种业余玩家跑起来能快不少,验证通过后再增加晶振来避免偏离 HUB 规范。 CH335F 使用 QFN28_4x4 封装,至少比 CH338X 的 QFN48_7x7 好焊点。希望这次不会出问题了。

TPS25810 USB-C DFP 控制器

见鬼了,上一个版本完全忘记加这个芯片了(或者说加错芯片了),大失策。 TPS25810 的作用是,通过 USB-C DFP 的控制,可以实现 USB-C DFP 控制器和输出控制开关。

芯片支持双输出协同限流:

TPS25810 端口电源管理(PPM)和 Power Wake 实现

我在电路上预留了这部分设计,我准备前期先用硬件实现(用 0Ω 电阻连接)来关控两个 5V 输出的 USB 端口 2 和 3,后期在我的固件中用软件管理三个端口的输出功率,再去掉这个 0Ω 电阻。

下行端口 2 和 3 的供电

独立供电

这两个端口分别使用 DC-DC 转换电路独立输出 5V 电压。参考设计如下:

TPS62933DRLR 8V-21V to 5.00V @ 3A 参考设计原理图

TPS62933DRLR 8V-21V to 5.1V @ 3A

下行端口独立供电原理图

后面想了下,由于 TPS62933 支持最大持续电流是 3A,完全没冗余好像也不太合适,虽然我自己用不太可能用不支持 PD 的端口跑 3A,但是设计上还是不应该这么搞,所以就没选这个方案。另一个原因就是独立供电电路还是要时刻保持工作,因为 USB-C DFP 控制器需要一直提供 5V 的 VCONNV_{CONN} 供电才行。这样看来独立供电作用不太大,毕竟不能插入 USB device 后再启动。

共用供电

我选择了 TPS53319 作为 5V 的 DC-DC 电源转换芯片。TPS53319 和 TPS62933 一样,是一款全集成高频同步整流降压开关变换器。

TPS53319: 德州仪器的高效8A或14A同步降压转换器,集成MOSFET,适用于低外部元件和紧凑型电源系统。

TPS53319 5.1V 6A 输出在线参考设计

看参考设计没什么问题。

Feedback

如果这篇文章对你有帮助,欢迎留下反应或评论。

相关文章