說到 ArOZ Portable 計劃,這是一台可以放進口袋裡的迷你 ArozOS 伺服器。如果你沒看過的話現在的版本大約長這樣

可是如果你有機會把它拆開來看,你就會發現這版本其實是沒辦法量產的。因為裡面的線路長這樣

所以結論是:在真的量產之前我要先把它變成可以量產的設計。
ArOZ Portable 主板
通常說到電腦、手提電子裝置等等的東西第一個最基本的東西就是主板了。 這個計劃由 2016 年開始我就不斷在嘗試弄一塊主板來省略那堆亂七八糟的走線,可是每次都因為不同的原因而失敗。最大的原因可能是因為我還沒有焊接 小於 SOP 跟 0805 針腳的技術力吧,也有不少原因是當年的畫板技術還沒足夠讓我真的去自由發揮。
在這裡我就跟大家分享一下這幾年來我設計的 ArOZ Portable 主板(失敗品)吧
初代 ArOZ Portable 主板
這一塊主板基本上就是一塊 FE1.1S USB Hub 晶片 + Micro SD 轉 USB 的晶片(用以代替外接的 USB 儲存裝置),但是當然這兩塊晶片的腳位都是 SSOP 的,而到現在我還是沒有合適的工具去焊接 SSOP 腳位,所以這板子當然是失敗了。
第二代主板

第二代的主板主要是把 SD 卡讀卡器移除,跟把充電電路放回進去。你在 U2 的位置能夠看到一個熟悉的 TP4056 layout,理論上是可以提供 5V 1A 的充電性能。但是唯一一個問題是這電路設計的時候沒考慮到 5V 升壓問題(而且還要畫完,在掉去生產前一刻才發現這問題),而大部分 USB 裝置必須要有 5V 供電才能運作,結果這板子也是不能用的。
第三代主板

在發現第二代這種低級錯誤之後第三代就換回去用移充的主板來供電了(右上的那個凹進去的位置),然後順便加粗了供電的走線和買了焊膏和熱風槍。雖然有成功焊出一兩塊,但是最後也是因為 FE1.1S 焊的良率太低而報廢(果然還是需要紅外線焗爐啊)
第四代

想著既然第三代都能有幾個 % 的成功率,那第四代也能碰碰運氣看看定 20塊板子有沒有一塊能成功吧?於是我把充電、升壓、USB Hub 等等全部放到一塊板子上面,結果良率太低全部焊完之後一塊正常運作的板子都沒有(#
第五代
「算了,還是 back to basic 好了。」用這種邏輯而畫的版子。只提供了最基本的電源、USB port 信號 routing 跟 USB Hub 的晶片,結果雖然有一點問題,但是加一點 patch wire 之後總比一大堆線要好。可是這體積,應該還能再小一點?

第六代

因為考慮到能不能把良率超低的 FE1.1S 找 OEM 進行焊接,然後以模組的形式插回到主板上而開發的板子。基本上與第五代的設計一樣,就是把 FE1.1S 的 footprint 換成了 2.54 針腳的插槽
可是後來這版本並沒有進行生產,因為問了才知道這麼少的生產量走一趟 OEM 貼片實在太貴了(比起買 USB hub 模組回來拆還要貴),所以就這樣這東西就放置了 1年多(由 fyp 開始到 grad 我都沒碰過這計劃)
第七代

在香港疫情爆得最厲害的時候因為在家裡沒事幹所以抽了點時間來設計這塊板子。這基本上是基於第七代的設計,但是把多餘的板子部分切走,讓它最小化方便安裝。可是沒進行生產的原因也是跟第七代一樣。另外你也能看到背面原本要放移充主板的位置被一塊 Powermanv5 代替。


https://www.tindie.com/products/tobychui/powerman-power-boost-lipo-charger-inoutput-5v-2a/
第八代

經過這一年來不斷來回生產不同的 PCB 來做 STEM Kit 跟 了解了更多不同類型的晶片供應商,現在終於有技術可以重新回到這個 project 了。在幾個巧合的情況下才讓我有辦法設計到這塊板子:
- 在 twitter 看到有工程師分享一塊 SOP16 的 USB Hub 晶片:SL2.1A
- 在拆移充時發現了一塊更便宜的充放管理晶片:HT4928
- 我已經開發好 Powerman 跟 Powerloli 兩塊通用鋰電池充放管理板(內置升壓功能)
- 終於理解 When in doubt, ground it out (有懷疑不知道它要連哪裡的時候,就把它接地吧)的道理
然後就是等 Power Loli v2 的樣品 PCB 回來,測試過沒問題之後就可以正式生產這塊第 八代的板子了。
8 May 2021 更新
這個版本的電路版終於成功了!這可是經歷 4+ 年之後第一個成功的版本啊!樣子大概長這樣



蓋上外殼之後跟之前的版本分別不太大,但是整體薄了不少


這個版本有好幾個讓我覺得神奇的地方
- 換了比之前更貴的鋰電池,所以這版本的續航時間升到接近 11.5 小時
- 換了低發熱量的 SL2.1A USB hub 晶片
- 不再使用膠水黏合兩塊電路板,跳線比起之前的版本少了很多
嘛可是要修的部分也有幾個,好像說
- 更好的電池電線走線
- 解決充電發熱嚴重問題
- 把 PCB 延長以減少一塊 3D 列印部件
請期待看看下一個版本怎樣改良吧!
25 Aug 2021 更新
這應該會是 ArOZ Portable 計劃之內最後一塊板子了。這塊板基本上就是之前第八代,但是做了多多少少的更改
第九代

第九代基本上跟第八代是一樣的,但是更改了幾個位置
- 把 PCB 延長,省略了 3D 打印廷長的部分,而且讓整個結構更穩固
- 把 D+ D- 跟 供電的部分由 copper pad 改成了 through hole 的pad,而且引線到 pi zero w 底部 test pad 的位置,方便使用者直接焊 pi zero w 上去而不用再自行引線
如果你好奇這種不是郵票孔的 through hole pad 要怎樣焊,大概就是這樣:

可是這塊板子到了之後才發現那個 through hole pad 對不準 pi zero w 下面的 test pad,結果只好重新弄一個新的版本。在我設計新版本的時候,我忽然想到:
為甚麼我不把 Micro USB 換成 type C!?
於是參考著 Raspberry Pi 4B 的設計圖,我把 type C 頭加進去了,然後由於 type C PD 通訊協議的關系,也加了 2 塊 0805 5.1K 的電阻,新的供電部分就由原本的 Micro USB 頭變成這樣(見圖)。如果你有細心的看的話,你會發現其實這改動變動了不少零件的位置,連 5V 跟 GND 的走線也有了不少的改動。
第十代

去到第十代的時候這個板子終於大功告成了。於是我把成功的樣本寄去 PCBA 進行小批量 SMT 貼片。回來之後的板子長這樣:



然後把剩下的派跟電池組裝上去,那就完成了!



後話
想不到這一個計劃一做就做了四年。由原本對電路板一點認識都沒有,到現在知道怎樣做 grounding、設計供電和信號的走線等等。這個計劃對我來說是燒了滿多的開發資金(已經不是那種少喝幾杯飲料的程度),但是學到了很多之前沒想像過能夠學到的東西,還算是值回「票價」吧?
至於下一個目標會是開發甚麼東西?一個完整基於 ARM 處理器的 NAS (裡面當然是運作 ArozOS )一直都是我的開發目標,但是在遇到合適的 USB 轉 SATA IC 和買到一整套貼片焊台之前,我還是先繼續摸索一下好了。