低コスト IoT をブリコラージュする発想
米国のエンジニア Richard Osgood 氏が実装した Banned Book Library は、市販の WiFi スマートライトをカスタマイズして、禁書を無線配信するネットワークの構築を目指したプロジェクトです。実装の背景にあるのは、至ってシンプルな着眼点です。
検閲が行われる地域に住むエンジニアの方であれば、電球という日常的なデバイスに禁書をプリロードしておき、コミュニティに設置することで、その周辺にいる誰もが WiFi を経由して書籍にアクセスできるのではないか—という発想です。電球は物理的に目立たず、通常の生活の中で違和感なく存在できる。Osgood 氏はこれを「サイバーパンク的なデジタル密輸の場所」と表現しており、社会課題に対する技術的な問題解決のアプローチが感じられます。
市販の安価なスマートライトを改造することで、物理的には隠蔽可能でありながら、デジタル的には広くアクセス可能なシステムが実現できるということです。
この着想は、SF 作家 Ben Brown の短編 Library に触発されたとのこと。その作品では、インターネットから消去されると困るような知識や創作物を「ライブラリ」という形で保存しておくという世界観が描かれており、Osgood 氏はこれを現実のハードウェアで実装しようと試みたわけです。
実装の鍵:Tasmota とハードウェア選定
プロジェクトが実現可能だったのは、オープンソースファームウェア Tasmota の存在が大きいと考えられます。Tasmota は、市販のスマートデバイスに書き込めるオープンソースファームウェアで、クラウドサービスへの依存から解放し、ローカル環境での制御を実現します。
この点は、正直なところ、技術的には意義深いと感じます。多くのスマートデバイスはメーカーのクラウドサービスに依存していますが、そうしたサービスはいつ廃止になるか不確実です。Tasmota による「ローカルファースト」の思想は、Cory Doctorow の著作 Unauthorized Bread(製品の正当な修理や改造を制限する DRM)への批判的な文脈とも一致しており、所有と自由に関わる根本的な問題提起があります。
Osgood 氏が選定したハードウェアは、Tasmota がプリインストールされた WiFi スマートライトで、チップには ESP32C3(フラッシュ 4MB) が搭載されていました。OTA(Over-The-Air)アップデート対応であることが決め手だったとのこと。分解や半田付けなしにファームウェアを書き込める利点は、実装の敷居を大きく下げています。
| 項目 | 特性 | 利点 |
|---|---|---|
| チップ | ESP32C3 | 比較的新しく、開発リソースが豊富 |
| フラッシュ容量 | 4MB | 制約はあるが、低コスト |
| ファームウェア書き込み | OTA 対応 | 分解不要、試行錯誤が容易 |
| コスト | 低価格 | 複数台の製造・配置が現実的 |
ただし、4MB という容量は、ファームウェア + ウェブサーバー + 書籍データすべてを収める必要があり、相当な制約 となります。Osgood 氏はこれを microSD カードリーダーの追加で克服する計画を立てていたようですが、具体的な実装結果については、元記事の公開範囲では詳細が示されていません。
IoT 再利用とローカルコントロール—「第二の人生」への模索
このプロジェクトが興味深い理由は、単なる技術的なハックにとどまらず、IoT デバイスのライフサイクル再考 という側面も示唆しているからです。
参考として、Google と UC San Diego の研究者らが進める 「退役スマートフォンのクラスタコンピューティング」 というプロジェクトがあります。こちらは、3年前のスマートフォンのプロセッサでも、当時のマルチコアサーバーと比べて単一コア性能が高いという観察から、廃棄される端末を集めてデータセンター的な計算リソースとして活用することを目指しています。製造時の環境負荷(embodied carbon)との相殺、e-waste の削減という観点での評価ですが、本質的には「すでに存在するハードウェアをもう一度社会的に有用な目的に充てる」という思想が共通しています。
スマートライトの再利用にしろ、退役スマートフォンの活用にしろ、既存のハードウェアをローカルコントロール下で新しい価値に転換する取り組みが増えています。
これは、単なるコスト最適化ではなく、企業に依存しない自律的な技術活用—つまり「技術の民主化」という大きなテーマに関わっているのではないでしょうか。
実装者の視点から—制約と創意工夫
Osgood 氏がこのプロジェクトで直面した課題は、多くの個人開発者が経験する典型的なものです:
- ハードウェア選定:多くの市販スマートデバイスは分解や半田付けが必要であり、OTA 対応デバイスの発見には調査が不可欠
- ストレージの制約:4MB では書籍ライブラリとして実用的ではなく、拡張ストレージ(microSD など)の実装が必須
- ファームウェア開発:既存の Tasmota を修正するか、スクラッチから実装するかの判断
- テスト環境:最初の 1 台でのテスト失敗リスクを踏まえ、2 台購入する判断
特に、Tasmota をそのまま使わずカスタム実装を検討したという点は、「既存の汎用ソリューションよりも、用途に特化したファームウェアが必要」という認識の表れです。実装の詳細が気になるところですが、ESP32C3 の開発環境(Arduino IDE や PlatformIO など)を使った C++ での実装が想定されます。
個人的には、ここまでのレベルのハードウェアハッキングはまだ一般向けではないと感じますが、オープンソースコミュニティの成熟に伴い、敷居は着実に下がってきているのではないでしょうか。