不知道大家平時工作的時候有幾個電腦,我平時在 Mac 和 Windows 之間以及 Windows 與 Windows 之間的文件互傳,比如文檔和媒體文件,還有剪貼板共享,是一個非常麻煩的事情。如果是同一個局域網下面,文件傳輸我使用的是 LocalSend 這個軟件,但是沒法共享剪貼板復制的文本和圖片:

傳一些單獨的文件是比較方便的,但是對于多個電腦之間進行“工作級別”的交互那這個就限制偏多了,而且因為無線的原因,設備離開現有環境又不能很快的組網互聯。所以這么長時間我一直在尋找優雅的解決方案,不過還真別說,最近就找到了,非常好用。
先展示一下工作的環境,讓大家對這個痛點有個比較直觀的印象:

1,2 是雙屏,連在一個臺式機上面,繁重的活他干,3 就是日常寫東西的小電腦;1,2 的文件需要和 3 互相傳播,他們之間的屏幕信息也需要截圖,因為我會把資料放在最手邊的電腦上面。
我就想有沒有什么線,一插兩個機器就可以互通有無,然后我的 USB 設備也多,可以直接插上去,讓電腦識別,也就是加一個 HUB 的功能,因為安卓上面有很多的開源工程軟件,就想著最好連安卓也兼容了。

外形設計是 CNC 的外殼加根線,有 5 個 USB 的口,產品兩頭連主機,中間接設備。

首先看投屏:(手機投屏也很便捷,下文拆解后附圖)

看看 USB外設共享:

現在這個圖里面的意思就是被對端控制,點擊下面的圖標還可以顯示外設的 VID 和 PID。

然后跨電腦傳文件這就是基操:


以及 Mac 和 Windows 也是可以的:

但是這個 GUI 不同:

當然也是可以共享 USB 外設:

但需要安裝軟件,在插入后會有一個盤符,點擊就可以安裝了。
咦?這么好用的東西是如何設計的?我決定給它拆了!

然后一拽就出來了:






外殼擋住了發光部分:

同樣安卓裝一個 App 以后也是可以和主機端進行連接的:

其余常規的文件拷貝什么的就不展示了,這里就展示一下投屏功能,這樣可以方便的截取一些手機畫面,以及內部的文件也可以直接復制出來。
仔細看了絲印,原來是CH9338:

hhh,我去習慣性從 WCH 的手冊里面找找它的定位:

首先是USB2.0 高速對拷控制芯片,有 5 個 USB 接口,支持 2 個上行口連接兩臺電腦(PC1/PC2),內部集成 3 個下行口的雙側 USB HUB,可以把 3 個 USB 設備口“動態分配”給 PC1 或 PC2,實現不拔插的外設切換共享。 還提供 多信息透傳通道/虛擬設備通道,配合上位機軟件實現:鍵盤鼠標/觸摸板/剪貼板/文件/數據/USB 外設等資源在多終端間切換共享。
工業級(-40~85℃),QFN32 4×4mm。

手冊明確寫了:通過上位機發送切換命令,可以把 HUB 的 3 個下行口“任意分配給 PC1 或 PC2”,做到 USB 設備在兩臺 PC 間切換連接。并且它用 PC1_DET / PC2_DET 監測兩臺 PC 的 VBUS 電壓,判斷連接狀態。
CH9338 說得很直接:通過 USB 廠商驅動 + 上位機,可實現兩臺電腦間數據傳輸;一端下傳的數據可由芯片上傳到對端。
首次使用是需要安裝軟件的,這里展示 Windows 和 Mac 下的安裝:


外部 3.3V:VDD33(5,19),各 0.1uF 去耦。
內核 1.2V:AVDDK(10)(1uF 去耦)、DVDDK(28)(0.1uF 去耦)。
上行到 PC1:PC1_UD±(6,7);上行到 PC2:PC2_UD±(15,16)
下行 DEV1/2/3:DEV1_UD±(11,12)、DEV2_UD±(13,14)、DEV3_UD±(31,32)
PC1_DET(3)、PC2_DET(4):檢測 VBUS 狀態(內置約 40k 弱下拉;>2.0V 判連接,<0.8V 判斷開)。
PC1_LED(1)、PC2_LED(2):連接狀態指示(低=連接,高=斷開);在某些模式下還能閃爍提示“光標焦點在哪臺”。
CH9338 支持整體過流/整體電源控制,典型搭配 CH217K 限流配電開關:

PWREN#(27):整體下行端口電源使能(低有效)。
OVCUR#(24):整體下行端口過流檢測輸入(低表示過流)。

手冊第 8 頁給了整套參考設計:
SPI Flash:存驅動/上位機,給 USB 虛擬光驅用。 (這個就不說了)
CH412K:作為 USB 信號的 ESD 保護(文中建議其 VCC 接 3.3V)。

CH213K 理想二極管:防止外部供電向上行 USB 口倒灌,或兩個上行口之間互相倒灌;也說了可用肖特基但壓降更大。

走線/電流承載:PC_VBUS/DEV_VBUS/GND 要盡量加寬,多過孔并聯。
擴展到 USB3.0:看到有 USB3.0 的芯片版本 CH9339,回頭有機會再了解一下。
沒想到一顆主控就可以完成這么多的設計,以往 WCH 的芯片只是給一個連接方式,這次是給了一個上手可用的方案;CH9338 KMFU 方案主要由CH9338 單芯片和多平臺APP 構成。
CH9338 芯片使用基于青稞RISC-V 內核的多USB主機和多USB設備的SOC架構,易于集成,可用于顯示器、電腦、擴展塢等通過USB 新增外設和數據共享功能。
在具體設計的時候,其實離復雜的 USB 協議非常遠,只要正確的連接晶振以及外圍保護器件等就可以正常運行,是屬于易上手,易使用的一檔。