Show HN: anyon e - 一から自作したオープンソースノートPC
(byran.ee)- 高校3年生の学生が6か月かけて自作したノートPC
- 4K AMOLEDディスプレイ、Cherry MXメカニカルキーボード、Minecraftの4Kプレイ、+7B LLMの実行、ウェブブラウジング、約7時間のバッテリー駆動時間。すべてがオープンソース。
- 最新の商用薄型軽量ノートPCが持つさまざまな技術仕様(画面、オーディオ、性能、ビルド、触感、タッチ操作、効率、サイズなど)をできるだけ実現しようとした
- 同時に、可能な限り多くのものを最初から自分で作ろうとする試みでもあった
全体のハードウェア構成
チップ選定
- シングルボードコンピュータ(SBC)向けSoCを探しており、Rockchip RK3588が比較的高速だったため関心を持った
- ソフトウェアサポートは不足していたが、ハードウェア文書やリファレンス回路図は悪くなかった
- RK3588の仕様
- A76クアッドコア + A55クアッドコア
- Mali-G10 GPU
- 6TOPs NPU
- 8K@60FPSデコーダ
- 豊富なI/O(8Kディスプレイ、デュアルUSB3.1、PCIe 3.0 x4、HDMI2.1/eDP 1.4など)
- システムオンモジュール(SoM)を活用すれば、高速信号配線が必要なメモリ部分を気にしなくてよく効率的だった
- FriendlyElecのCM3588 SoMを選択した
ディスプレイ
- panelook.comでサイズと解像度で絞り込み、4K解像度の13.3インチAMOLEDに決めた
- ATNA33TP11は比較的新しいパネル在庫が多かった
- コネクタ位置や基板長の短縮などの微調整によって、1.5GHz級の信号完全性を確保した
- eDPベースの非標準Linux環境で4K AMOLEDを設定する過程は非常に複雑だった(電源オンのタイミング、エンジニアリングログの分析、リバースエンジニアリングなど)
パワートレイン
- 厚さ約6mmのセルを4本直列に構成し、約60Whの容量を目標にした
- batteryspace.comで3.7V 4250mAhのセルを見つけた
- 全体電圧は4S構成で16.8V(最大20V USB-C入力)。BQ25713充電IC、BQ77915バランシングIC、LTC2943電力追跡ICなどを使用した
- ESP32-S3を通じてバッテリー監視とその他の制御を行う
- カーネルとPythonスクリプトを通じて、OSでバッテリー状態をネイティブ表示できるように構成した
[Powertrain V0.2 KiCanvas Link]
https://kicanvas.org/?github=https%3A%2F%2Fgithub.com%2FHello9999901%2…
メインボード
- バッテリーやディスプレイサイズなどをもとに、メインボードの幅を約90mm前後に設定した
- 外部I/Oとして、デュアルUSB3.1 Type-C、USB2.0 Type-A、ヘッドホンジャック、microSDカードスロットを実装した
- 内部ではM.2 E-key(Wi‑Fi/Bluetoothモジュール)、M.2 M-key(NVMe SSD)をサポートする
- 完成版メインボードの詳細は別記事でまとめる予定
[Motherboard V1.0 KiCanvas Link]
https://kicanvas.org/?github=https%3A%2F%2Fgithub.com%2FHello9999901%2…
システム起動
- Joshua Riekのubuntu-rockchipカーネル/ディストリビューションを使用した
- ArmbianカーネルもRockchipのカーネルベースなので、ハードウェア機能をうまく活用できる
- ハードウェア設定は主にDeviceTree(DTS)内で処理し、U-bootを通じてブートローダ側で適切に指定した
- 開発はMacBook + Visual Studio Code + Orbstack(仮想化されたUbuntu 24.04)環境で進め、compile後に
scpでRK3588デバイスへ転送した - 表示、PCIe、USB設定などはDTSを繰り返し修正し、再起動を重ねながら解決した
- 最終的にUbuntu 24.04 LTS、カーネル6.1ベースで動作する
周辺機器
- ノートPCのキーボードを取り外してワイヤレスキーボードのように使えたらどうか、という発想から始まった
- ZMKベースのワイヤレスメカニカルキーボードを何度も作った経験があり、Cherry MX ULPスイッチを選んだ
- バッテリーとスイッチを入れると高さが増すため、厚さ1mmの200mAhバッテリーを使い、PCBの高さも最小化した
- キーキャップは市販調達が難しく、0.15mmノズルで3Dプリントした
- トラックパッドにはAzoteqのPXM0057-401モジュール(ガラス表面、マルチタッチ、USB対応)を採用した。生産終了予定なのが残念
[Keyboard V1.0 KiCanvas Link]
https://kicanvas.org/?github=https%3A%2F%2Fgithub.com%2FHello9999901%2…
メカ設計
- アルミニウムCNCブロックをJLCに送り、さまざまなアルマイト処理サンプルを受け取った。ダークグレーは触感が良かったが、外観はマットブラックが気に入り最終的に選んだ
- CADはOnShapeで進め、Framework 13.3”ノートPCのヒンジを参考にした
- シャーシ内部レイアウトは、下側にバッテリー4本、右側にパワーボード、左側にメインボード、最上部にヒンジ構造。マグネット着脱式キーボードのために下部ネジをなくす設計にした
- 冷却構造はカスタム銅製ヒートシンク + ヒートパイプ + ファンの組み合わせで、PTM7950サーマルパッドを使用した
- スピーカーにはPUI Audio製品を使ったが、CM3588のオーディオDACデバッグに時間が足りず、外付けUSBオーディオコンバータを追加した
振り返り
- このプロジェクト名anyon_eは、量子力学の授業(特に準粒子の「エニオン」)を受けて思いついたもの
- 電気、ソフトウェア、機械の分野がすべて絡み合う必要があり、とても大変だった
- オープンソースプロジェクト(ZMK、KiCad、Blenderなど)のように、創作と革新、想像力の力を人々と分かち合いたかった
- 小さな部分でもオープンソースに貢献し、新しい可能性を開きたい
5件のコメント
タイトルだけ見て、てっきり普通のノートのことかと勘違いしました。ラップトップと書くのが正しいと思います。
見た目がまるで既製品のようですね。
すごいです。
すごいですね……。
公式Repo - https://github.com/Hello9999901/laptop
Phillips Exeter Academy の高校在学生とのことですが、この学校は1781年に設立された非常に有名な私立学校だそうです。
Hacker Newsのコメント