2014.01.31
オープンソースのノートパソコンを作る
Project Novena — オープンソースのノートパソコン
1年半前、ボクはノートパソコンを自作するという、無謀とも言えるプロジェクトに取りかかった。ボクと言っても、実際はボクたちだ。Sean “xobs” Crossとボク、bunnieの2人だ。ノートパソコンの自作なんて、ホンダシビックに1000馬力のエンジンを組み込むようなもので、実用性がないからといって、こうしたプロジェクトを止めることはできない。我々のも同じだ。
ノートパソコン自作の第一の目標は、毎日つ使えるものだ。ボクは数年間かけてChumbyでハードウェアプラットフォームを作ったのだが、残念なことにほとんど使っていない。ボクの両親や兄弟たちは、そのかわいい箱形コンピューターを気に入っているが、ボクのようなギークにとってはパワー不足だ。
ボクは、自分の小遣いの使い道を、それを買ったらどれぐらい使うかで決めている。たとえば、ボクはナイスなベッドを持っているが、人生の3分の1はその中で過ごしている。残りの3分の2は、ノートパソコンを叩いている(主力機を携帯やタブレットにダウングレードするなんてゴメンだ)。だから、毎日使う何かを作ろうとなれば、ノートパソコンが最有力候補となる。
このプロジェクトは、ハードウェアのすべてについて学びたいという欲求によっても動かされてきた。ボクは、このプロジェクトの前は、ギガビットEthernet(RGMII)もSATAもPCI-expressもDDR3もガスゲージもeDPも、35ワット対応の電源コンバーターすらも扱ったことがなかった。10ワット以下の工作しかしたことがない。だから、スイッチ内蔵のコンバーターで済んでいた。ノートパソコンの自作は、仕事のプロジェクトのように予算や時間の制約を受けず、少しだけ自分の限界を広げられる素晴らしい作業になると思った。
もうひとつの動機は、オープンソースハードウェアへの情熱だ。ボクはハードウェアの設計図を公開することに大賛成だ。ハックできなければ、所有していないのと同じ。これが設計図だ。
このプロジェクトを始めたころ、ボクはハードコアなオープンエコシステムの熱狂的支持者数人といっしょにオープン化を進めていたのだけど、NSAがスパイ活動をするためにクローズなハードウェアエコシステムのブラックボックス性を利用しているという事実をエドワード・スノーデンが暴露して、世界が変わってしまった。—“ボクたちは頭のイカレた偏執狂なんかじゃなかった。”
もちろん、ボクたちのNovenaプロジェクトはシリコンポイズニングのようなテクニックに対して脆弱だけど、少なくともオープン化と公開性を一段高めることができた。正しい方向への確かな前進だ。こうした向こう見ずな原則は、この旅の大きな原動力となってくれるが、実際に実行するには、しっかりとした条件が必要となる。
そこで、上の原則を要約して、次のデザインのための条件にまとめてみた。
- すべての部品には、公開自由なドキュメントを付属すること。この条件ひとつだけでも、選択肢がかなり絞られる。たとえば、この性能のクラスでは、Freescaleが唯一のSoCメーカーだが、そのウェブサイトでリンクをクリックすると、ほぼ完璧な6000ページに及ぶプログラミング・マニュアルがダウンロードできる。彼らの立場からすると、かなり勇敢な行動だ。彼らを称賛したい。
- 低価格化は目的ではない。ボクはエントリーレベルのシングルコアのSoCをベースにした、機能が限定されたプラットフォームが作りたいわけではない。BroadcomのRaspberry Piプラットフォームと価格で張り合おうなんて思ってない。
- しかし、ユニコーンの毛を使えるわけでもない。もっとも、ケースは本革にしようと考えたこともあった(使っているとき革の匂いがしたらステキだろうと思ったから)。すべてのチップは、Digi-Keyのようなパーツ屋から普通に買えることが理想だ。そして、最低でも5年間の製品寿命があること。
- バッテリーはラジコンに使われている安くて一般的なものを使う。そして、バッテリーパックのサイズ、持ち時間、容量をユーザーが選べるようにする。これにより、「バッテリーの寿命は」という質問には少々答えづらくなる。ユーザーの選択次第だからだ。しかし、シベリア鉄道横断の旅という、ひとつのシナリオを想定した。1週間、コンセントなしの旅だ。
- ディスプレイもユーザーが設定できる。アメリカのサプライチェーンは、ハイエンドの液晶パネルが弱い。シベリア鉄道のシナリオでは、Pixel Qiのような省電力型のディスプレイをドライブさせる機能が必要になるが、これに固定したくない。そこで、安い液晶アダプターにも対応する最大限の柔軟性を持たせるようにメインボードをデザインした。
- 想定されるシナリオに対応できるよう、システムを起動してオペレートするために、バイナリブロブを使わずに済むようにする。これは少々厄介だ。WiFiカードの選択が非常に厳しくなるからだ。GPUは使わず、ビデオのデコーダーはソフトウェアだけで対応させる。しかし全体として、それは間違っていなかった。バイナリブロブを使わない状態でも、このノートパソコンは便利に使えた。ボクたちは、30C3でのスピーチとその準備を、このノートパソコンでやってのけた。
- 物理的なデザインは、分解が簡単でなければならない。キーボードを外すのに何本もネジを抜かなければいけないようではダメだ。このデザインでは、2本のネジだけで取り外せる。
- 特別に薄かったり軽かったりする必要はない。2000年のころに使っていた厚さ3センチのThinkpadやInspironと同じぐらいで十分だ。
- プラットフォームのハードウェアハッキングに便利でなければならない。そのためには、メインボードにFPGAを使うというユニークなデザインになる。
- セキュリティーハッキング用のプラットフォームとして便利でなければならない。そのためには、Ethernetインターフェイスを2つ、USB OTGポート、256 MiB DDR3 RAM、FPGAの高速拡張コネクターを含めるという特別なデザインになる。
- このパソコンは、自分自身のファームウェアをソースから作れなければならない。そのためには、ある程度以上の性能が必要になり、SSDに対応したSATAインターフェイスも必要となる。
1年半がんばった結果、ボクたちのマシンは実用レベルに達した。マザーボードは信頼性が高く、ディスプレイは13インチの2560×1700(239ppi)のバックライト付き液晶だ。ケースは5052と7075アルミ合金で作った内骨格式。外側は本革で包んだ。内側は紙を貼った(ボクは本とペーパークラフトも大好きなのだ)。化粧パネルはForm 1で3Dプリントした。Thinkpad Carbon X1とはほど遠いが、何度か海外旅行に持って行って乱暴に扱ったし、ほぼ毎日使い続けたが、しっかりと本体を守ってくれている。
ボディパネルを作ったForm1 3Dプリンターの前のノートパソコン。
手作りっぽい外観だし、性能は比較的素朴だし、値段も高いのに、このマシンが、ハッカーたちの人気が高かったのには驚いた。ポジティブな反応に勇気づけられて、ボクたちは、うんとシンプルなケースデザイン(バッテリー付きのオールインワンPCみたいな)で、クラウドファンディングのキャンペーンに打って出ることを決めた。そう、最終デザインは、この手作りのプロトタイプケースとはずいぶん違うものになる。
最初の2つのプロトタイプ。赤いシープスキンで巻いたものと、緑の豚のスエードで巻いたもの。
キーボードまわりのアップ。
キャンペーンは旧正月の後に始めるのがいいと思っている。2月の末か3月だ。今後の進捗については、@novenakosagiをフォローしてほしい。
– Bunnie Huang
[原文]