以前の記事で、PicoCalcが届いたら、PicoRubyを動かしてみたい、というお話をしていました。

/2025/06/picorubybesunominikonpiyuta/

9月頭に実際にPicoCalcが実際届きました。5月に注文していたので、4カ月弱で届いたことになりますね。

PicoCalcはRaspberry pi Picoで動くコンソールマシンです。

320x320の液晶とキーボードにスピーカーなどもついてきます。

付属のPicoにブートローダソフトがあらかじめインストールされており、SDからアプリを起動することができます。

インストールされているバイナリのソースはこちら。

GitHub - clockworkpi/PicoCalc: A calculator like nothing you've ever seen before, right?A calculator like nothing you've ever seen before, right? - clockworkpi/PicoCalcGitHub

以下、PicoCalcの写真たち。

外箱

組立前の中身

PicoMiteを起動させたところ

開発環境

ファームウェア側をいじることになるため、毎回手作業でファイルコピーするのは面倒です。そのためPicoProbeを繋いでみました。ただ、そのままで背面からデバッガー用の線を出すのはちょっと厳しかったので、ケースの背面の一部だけカットして線を通す穴を作ってます。

Probeを接続したところ

改造の方法

PicoCalcでPicoRubyを動かすためには、PicoRubyの文字列の入出力周りを置き換える必要があります。

PicoRuby Overflow Kaigiで展示した以下の資料で考え方を説明しています。

PicoRuby Overflow Kaigi

この時は、まだ実機が無かったので、類似の液晶コントローラで動いている液晶と、キーボードはI2C対応の別のM5Stackから出ているやつを使ってます。

実際にPicoCalc実機に移植するときは、最低限の修正で1日で動かすことができました。

コードはこちら。PicoCalcお持ちであれば試せます。私はRpi-Pico 2で試してます。

GitHub - kishima/picocalc-R2P2: PicoRuby shell for PicoCalcPicoRuby shell for PicoCalc. Contribute to kishima/picocalc-R2P2 development by creating an account on GitHub.GitHub

実際に起動させるときには、横幅の解像度が標準より狭いので、そのままだとPicoRubyのロゴが表示されません。そのためShell起動処理にあるロゴの絵文字を手作業でいじって、ぎりぎり収まるように修正してます。

PicoRubyを起動させたところ

一応、基本的な機能は使えるはずです。

課題

画面のスクロールするときに全画面かきなおしているため、スクロールがとても遅いです。液晶コントローラとうまく連携して高速描画やスクロール処理するなど、改善が必要です。

今後のこと

いったん、動かせて満足しちゃったところはありますが、自作のESP32コアの基板と連携させたりできたらいいな、とか、この素晴らしい機体を生かす方法は考えていきたいと思っています。