ラズパイをiPodに組み込んで、Spotifyを再生するつわもの登場
iPodを魔改造で現代風によみがえらせた動画を見て、UIの秀逸さを改めて認識
2021年02月10日 13時00分更新
氏がプログラミングしたソフトウェアモジュールは大きく2つある。
まずC言語でプログラミングされたクリックホイールとのインターフェースで、クリックホイールのデータは32bitのシリアルデータとして入力処理を行っている。これは例えば32bitの7bit目が1ならばボタンが押されていることを示すということだ。C言語のモジュールではハプティックモジュールのコントロールもGPIO経由で行っている。
次はフロントエンド部分のモジュールでこれはPythonでプログラミングされている。PythonでのGUIアクセスには「Tkinter」を使用している。
Spotifyサーバーとのインターフェースは「Raspotify」というSpotifyストリーミングを扱えるソフトウエアモジュールを使用している。iPodがリプートするたびに最新のデータに更新されるなどかなり本格的な仕様だ。
つまり、このsPotではRaspberry Pi OS Lite/Openboxの上で、Pythonで書かれたフロントエンド(メイン部分)モジュール、Cで書かれたIOコントロールモジュール、Raspotifyモジュールの3つが協調動作していることになる。
Depont氏が書いたソースコード(IOコントロールとフロントエンド)は、GitHubに公開されている。最近日本では良くない話題で有名になってしまったGitHubだが、これが正しい使い方と言えるだろう。
動画を見るとiPodの独自のコントロールホイールを使用した操作で、Spotifyの選曲がなされ、Bluetoothスピーカーで再生されている。検索機能まで実装されている。これを見ると専用機としてのiPodの優れたUIがいまでも魅力的なことがわかる。スクロールによるメニュー選択も、今見るとかえってわかりやすいようにも思える。
こうしてiPodを今の環境で眺めなおすと新鮮だ。やはり時代を超えた名機だったと言えるのかもしれない。