“很多人都知道 KiCad,但 Horizen 卻鮮有人知。同樣是開源的 PCB工具,為什么有了 KiCad 之后還要做 Horizen 呢?Lucas 的演講讓我感慨良多,分享給大家。”
? 有興趣的小伙伴可以先看下作者 Lucas 在 FOSDEM 上的演講: Horizen 簡介
和 KiCad 一樣,Horizen 也是一個 PCB 設計套件,包括元器件管理、原理圖繪制和 PCB Layout。
Horizen EDA 是 GPL3 的 License,官網(wǎng)的地址在這里:
https://horizon-eda.org/
Github 的倉庫在這里:
https://github.com/horizon-eda/horizon
有意思的是,Horizen最核心的 PCB 布線器(router)及文件格式解析器(sexpr)參考的是 KiCad 6.04 版本。從某種程度來說,這就是開源的最大魅力之一:沒必要重復造輪子,可以基于很多優(yōu)秀的開源項目,更快速、高效地構(gòu)建一個新的應用。那你肯定會問,為什么要另起爐灶搞個 Horizen?不能直在 KiCad 上搞嗎?答案是不一定可以!規(guī)模越大的開源項目,貢獻者和維護者越多,他們來自全球各地,但通常會有一個核心的 lead developer 團隊。要添加一個新的功能(尤其是比較大的改動),需要大部分核心開發(fā)者的認可。那么問題來了,雖然技術(shù)沒有國界,但每個開發(fā)者認可的技術(shù)棧或?qū)崿F(xiàn)方式未必一致。于是乎...
一言不合就開干...
Lucas 說,他以前也一直是 KiCad 的用戶,之所以要做一個新的工具,是因為對 KiCad 庫管理方式不滿意,且遲遲沒有改變的計劃。這是一個很好的理由... 其實不止是 Horizen EDA,另一個當紅的開源 PCB EDA 套件 LibrePCB 的問世也是出于同樣的原因。如果你熟悉 AD 或者 EasyEDA,就會發(fā)現(xiàn) KiCad 一直缺少一個重要的概念:元器件(Component),原理圖符號和PCB封裝是分開管理的,元器件的參數(shù)屬性(比如MPN、廠商等)只能存儲在符號內(nèi),且很難關(guān)聯(lián)供應鏈。這就對元器件管理提出了很大的挑戰(zhàn)。且直到 2024 年的 KiCad 8 才出現(xiàn)了類似 DBLib 或 Capture CIS 的 Database Library(說實話還不太好用)。
另一個原因是因為 KiCad 使用了 wxWidget 作為 UI 的框架。雖然 KiCad 社區(qū)和 wxWidget 關(guān)系很鐵,wxWidget 也沒有什么大的瑕疵,但很多有情懷、有能力的工程師們總覺得 QT、Electron 等框架可以給 PCB 工具帶來更優(yōu)秀的視覺體驗。
既然這樣,那就另起爐灶吧!因為同樣是開源項目,不僅可以復用 KiCad 中優(yōu)秀的代碼,還可以嘗試更新的技術(shù)棧。更重要的是,可以按照自己的想法實現(xiàn)自己想要的功能!
我們來看看 Horizon 有哪些和 KiCad 不一樣的功能:
以今天的標準來看,其中很多功能 KiCad 也都有了。但如果回到幾年前,Horizen 確實有很多創(chuàng)新之處。比如 ODB++ 輸出,這對于很多工程師來說是剛需(因為仿真軟件需要ODB++格式),而 KiCad 在很長一段時間里一直未能支持。我知道華秋電子的 Eric 為了在 KiCad 中增加 ODB++的功能,前前后后差不多用了半年左右的時間,工作量巨大。Spec 有 600 多頁,閉源軟件沒法參考,當時只有 Horizen 提供了部分開源的 ODB++ 代碼。雖然 Horizen 中的 ODB++ 代碼并不十分優(yōu)雅,功能也不全,但仍為 KiCad 9 中 ODB++ 功能的出現(xiàn)提供了巨大的幫助!這也是開源項目的價值所在!
對于元器件的管理及供應鏈的集成是 Horizen 另一個出彩的地方。時至今日,KiCad 仍然沒有添加“元器件”的計劃,這并不代表核心開發(fā)者們看不到“元器件”的價值。與之相反,大家都希望 KiCad 可以支持這一對象,但對于一個已經(jīng)存在了 20 多年的開源項目來說,重構(gòu)這一塊的難度和需要的資源實在太大。與其他“重要”的功能相比(比如裝配變量、高速走線、API框架等),“元器件”只能一等再等。畢竟相較于元器件管理,更流暢的原理圖、PCB繪制體驗無疑更加重要。
什么是一個成功的開源項目?
Horizen 在 Github 上的 Star 是 1.2k,從這個角度而言,您可能覺得這是一個不錯的項目。 那你知道 Horizen 的用戶數(shù)么?看一下下面的圖表,告訴我你真實的想法。 如果這是一個商業(yè)軟件,開發(fā)了將近10年(Horizen是從2016年開始的),只有不到100個用戶在用,你是老板的話你會怎么做? 但開源項目就完全不一樣了,只要作者愿意,可以再做10年!Lucas 同學也正是這么做的,下圖是 Horizen 的 Commmit 記錄:
你會發(fā)現(xiàn)一個有趣的事兒,從2023年起,Horizen貌似停止進步了。原因是 Lucas 同學突然對 3D CAD 工具感興趣了,又做了個參數(shù)化的 3D CAD 工具 Dune 3D,所以沒花太多時間在 Horizon 上了。看到這兒,您可能和我的想法一樣,這老外也太能折騰了吧,就一個人可以整那么多活...... 在我看來,無論 Horizen 的用戶數(shù)有多少,這就是一個成功的開源項目。它的價值不只是提供了一個創(chuàng)新的工具,還為其他的項目提供了很多新的思路甚至是直接可以復用的“輪子”。更重要的是,這種基于興趣的創(chuàng)新和堅持會鼓勵更多的人創(chuàng)造出更優(yōu)秀的產(chǎn)品,并分享給更多的人!
中國的開源環(huán)境如何?
這個問題可能不需要我回答,Deepseek 的出圈就是一個很好的證明。當然在很多垂直領域,我們和國外仍有不小的差距。以電子行業(yè)為例,雖然無論設計還是供應鏈都還不如國外“開放”,但我看到的是越來越多的開源硬件社區(qū)和開源硬件項目;雖然還沒有 KiCad 這樣優(yōu)秀的開源PCB設計工具,但我看到更多的企業(yè)和個人開始為 KiCad 社區(qū)做出貢獻;我還看到很多高校的學者,開始從理論的角度開始“開源”生態(tài)的推進。
在我看來,如果將開源生態(tài)與商業(yè)邏輯形成閉環(huán),必然可以更高效地推動行業(yè)乃至社會的進步。無論是 DeepSeek、RiscV 還是樂鑫科技(ESP)都已經(jīng)證明了開源的強大!
在 KiCad 的貢獻者中,我看到了不少高校的學生,他們不僅有想法,實踐能力也非常強,敢想敢干。我想,這就是我們的未來。假以時日,中國的開源土壤一定會孕育出更豐碩的果實!
注意:如果想第一時間收到 KiCad 內(nèi)容推送,請點擊下方的名片,按關(guān)注,再設為星標。
常用合集匯總:
和 Dr Peter 一起學 KiCad
KiCad 8 探秘合集
KiCad 使用經(jīng)驗分享
KiCad 設計項目(Made with KiCad)
常見問題與解決方法
KiCad 開發(fā)筆記
插件應用
發(fā)布記錄
審核編輯 黃宇
-
eda
+關(guān)注
關(guān)注
71文章
2813瀏覽量
174565 -
開源
+關(guān)注
關(guān)注
3文章
3472瀏覽量
42937
發(fā)布評論請先 登錄
相關(guān)推薦
全球的AI+EDA(電子設計自動化)創(chuàng)新項目
ElfBoard開源項目|智能消防車項目

安泰功率放大器應用:納米材料的前世今生

開源鴻蒙榮獲開放原子“2024年度操作系統(tǒng)領域國內(nèi)活躍開源項目”
開放原子開源基金會與三個開源項目舉行捐贈簽約儀式
深入了解Java泛型——從前世今生到PECS原則

凌蒙派OpenHarmony開源項目榮獲本期Gitee官方推薦

如何提升EDA設計效率
ElfBoard開源項目|“智慧光伏”開源項目技術(shù)文檔

評論