|
新出的树莓派4出了个看起来有些坑的“BUG”,这使得它不能兼容自带e-mark电子标记的USB Type-C线,比如苹果Mac的充电线。
YgfQ{3^I !c#~g0H+ sY*iRq 两周前,树莓派 Raspberry Pi 发布了最新的产品 Raspberry Pi 4 Model B,提供了一个 USB-C 供电端口。当时大家还在惊喜于该产品“飞跃式”的配置升级。 U?W?VEOO!7 $1< ~J 可惜的是,现在它被发现USB-C口和很多Type-C线不兼容。 `j1(GQt 8*[Q{:'. 树莓派4 是Raspberry Pi 第一款支持 USB-C 的设备。 blHJhB&8 trAIh}Dj 我们从树莓派官方发布的电路板原理图可以看到,树莓派4的电源设计出了问题。(https://www.raspberrypi.org/documentation/hardware/raspberrypi/schematics/rpi_SCH_4b_4p0_reduced.pdf) s?-J`k~q WAWy3i 问题的根本原因是,树莓派4 USB Type-C接口上的共用cc下拉电阻。 看看下面的原理图。 WiBO8N,%` 9EI Oa/* 截取自Raspberry Pi 4 Model B原理图 g2t'u4> LkA_M'G 树莓派4 CC电阻位置 }2CVA.Qm! u?-X07_ 对于大多数线缆/充电器而言,也就是不带Emark芯片的USB-C,这不是问题,因为这类USB-C线仅用通过电缆连接的一条CC引脚,因此将正确地检测到树莓派并接收电力。
,R8:Y*@P 6OLp x)fG 问题在于带有两个CC连接的Emark线缆。要理解这一点,请查看Type C规范文档。(https://www.usb.org/document-library/usb-type-ctm-cable-and-connector-specification-revision-14-march-29-2019) /ltGSl 8/oO}SLF 摘自Type-C规范(图4-5) yL.Z{wd ),53(=/hl 根据规范,源设备在检测到连接的接收设备之前不会在连接器上提供电源。这是通过将Rd电阻(5.1K欧姆)接地来实现的。有源电缆还使用另一个值或电阻器Ra(800欧姆 - 1200欧姆)发出信号。 Type-C规范有一个表,用于根据CC线的状态查找连接了什么。 r)Dln5F SZ )AO8& 摘自Type-C规范(图4-10) DuV@^qSbG. BL?Bl&p( 在正确的操作中,充电器将检测Rd电阻(Or Rd Ra cobination)并打开电源。但当使用在两端呈现Ra的有源电缆时会出现问题。在源极侧,一个CC引脚将连接到电缆中的Ra电阻,另一个CC引脚连接到树莓派的CC线。树莓派将两条线连接在一起,因此呈现了电缆树莓派端的Ra和Rd下拉的组合。假设Ra的平均值计算所呈现的电阻仍然给出在Ra范围内的值。(同样注意,当电缆电子设备汲取功率时,允许Ra电阻低于800,因此低于800的电阻也可能被检测为Ra)。 +PfXc?VU }_[Bp 0Xx&Z8E 将两个Ra值呈现给源端,会导致树莓派 4 被认为是“音频适配器附件”。 ^;[|,:8f7L F9\T< 也就是说电源端将被误认为是一个模拟音频接口,从而拒绝为树莓派供电。 B!X;T9^d |^! 树莓派4 连带Emark 芯片的线缆时 d>OLnG>
F Okt0b|=`1* 树莓派4 连不带Emark 芯片线缆时 /Q*o6Gys0 XI"8d.VR 概括 IA&NMf;{ qo^PS 简单来说,树莓派4 的设计错误,即,USB-C 端口上的两个"CC" 本应该都有自己的 5.1K 电阻,结果 树莓派4 的电路设计允许它们共享一个5.1K 电阻,这一设计破坏了树莓派4与许多 USB-C 充电器的兼容性。 6^vseVx zFpM\{`[g gLGu#6YVu Raspberry Pi 联合创始人 Eben Upton 表示,会在未来版本修正这一设计。眼下比较简单的解决方法是,购买不带e-mark电子标记的线缆或充电器。
|