戻る

PimoroniがVelxioをサポート — ブラウザタブの中のBadger 2350電子ペーパーバッジ

Pimoroniは、人々が愛着を持つようなハードウェアを作っています。Badger 2350は開発キットではなく、バッジです。名前を表示できる電子ペーパー画面、前面の5つのボタン、背面のバッテリー、そしてToDoリスト、ポモドーロタイマー、レイキャスターゲームがプリインストールされたファームウェアを備えています。Pimoroniと彼らのボードをVelxioに持ち込むことについて話し合ったとき、目標は簡単に言えて、達成するのは難しいものでした。ブラウザの中のバッジは、ボタンも含めて、ストラップにつけた実際のバッジと同じように感じられるべきだ、ということです。

これは、Seeed StudioM5Stackに続く、Velxioをサポートするハードウェア企業に関するシリーズの第3回目の記事です。Pimoroniのエントリーは、電子ペーパーを中心に構築された最初のものです。電子ペーパーはシミュレーションの感触を変えます。何も毎秒60フレームでアニメーションせず、画面は実際のインクのようにリフレッシュされ、表示されたものはそこに留まり続けます。

Velxio内のPimoroni Badger 2350が電子ペーパー画面にToDoリストを表示し、カーソルが最初のタスクにある様子

実際にチェックできるToDoリスト

velxio.dev/example/badger-2350-listを開いて、再生ボタンを押してください。スケッチがコンパイルされると、電子ペーパーにチェックリストが描画されます。これはバッジの公式ファームウェアにある「リスト」アプリと同じアイデアです。その後、実際のボードと同じように操作できます。

ボタンがこの例の要点です。シミュレーションが画面を描画するのを見るのと、物理的に見えるボタンをクリックしてインクが反応するのを見るのとでは、全く異なります。すべての操作は、実際のBadgerが行うのと同じGPIO読み取り(プルアップとアクティブロー動作を含む)を経由します。そのため、このスケッチを後で物理的なバッジで実行した場合も、ボタンは同じように動作します。

未変更の工場出荷時ファームウェア

上記の例はArduino C++スケッチで、回路図を読んだ後に書くであろう方法で書かれています。しかし、Velxio内のBadger 2350はさらに一歩進むことができます。 velxio.dev/example/badger-2350-badgeosは、Pimoroniが工場で書き込むのと同じファームウェアであるBadgeOS v2.0.2を起動します。これはARM MicroPythonとPimoroniのCモジュール、github.com/pimoroni/badger2350からの完全なソースツリーがブラウザ上で動作するものです。工場出荷時メニューが電子ペーパーに表示され、5つのボタンでバッジアプリ、時計、ギャラリー、水分補給カウンターなどに移動できます。

私たちはこのテストが好きです。なぜなら、誰もシミュレーター用にこれを書いていないからです。BadgeOSはバッジのために書かれ、そしてそのバッジが今やタブの中にも存在するのです。

MicroPythonで作業するなら、MicroPython REPLの例でライブプロンプトを試せます。ボードは標準のRP2350 MicroPythonで起動し、小さなファイルシステムからmain.pyを実行し、シリアルモニターのREPLにドロップして、インタラクティブにピンを操作できます。

3つのボード、1つのチップファミリー

VelxioにあるPimoroniのボードはすべて、Raspberry Pi RP2350をベースにしています。

Velxioキャンバス上に表示されたPimoroni Badger 2350

Badger 2350 — 電子ペーパーバッジ。264 x 176のSSD1680電子ペーパーパネル、5つの前面ボタン、4つのケースライト、サイドコネクタにI2Cを搭載。上記のようにArduino C++、MicroPython、BadgeOSを実行します。

Velxioキャンバス上に表示されたPimoroni Pico Plus 2 W。キャステレーション付きピンとRP2350Bを搭載

Pico Plus 2 W — Pico 2フォームファクタに対するPimoroniの解釈です。VelxioではRP2350コードをRISC-Vコア上で実行します。これは素晴らしいディテールです。同じチップ、異なる命令セット、そしてblinkの例がGPIO、タイミング、UARTがすべて正しく動作することを証明しています。

Velxioキャンバス上に表示されたPimoroni Galactic Unicorn。53 x 11のLEDマトリクスが正面を向いている

Galactic Unicorn — 53 x 11のLEDマトリクス。このボードの現状について率直に言うと、今日のVelxioはボードを起動してコードを実行できます(heartbeatの例はGPIOをトグルし、シリアル経由でループをカウントします)が、LEDマトリクス自体はまだエミュレートされていません。これはロードマップに載っており、パートナーシップが存在するまさにその理由のような作業です。マトリクスは「だいたい正しい」ではなく、「正しく」見える必要があるからです。

Pimoroniとの協業

Pimoroniはこの作業をサポートし、ハードウェアを提供してくれました。そして、彼らの公開方法によって、残りの部分が可能になりました。Badgerのファームウェアはオープンソースであり、回路図も公開されています。シミュレートされたバッジが、机の上の物理的なバッジとは異なる動作をした場合、それは再現手順付きのバグレポートとなります。上記のBadgeOS起動はその結果です。エミュレートされたボードが、ファームウェアが期待するものをピン単位で一致させているからこそ、機能するのです。

Pimoroniチームが、自社ハードウェアの本格的な居場所としてシミュレーターを支援してくれたことに感謝します。Badgerを使って教えているなら、クラス全員が箱が届く前に試すことができます。所有しているなら、バスの中でアプリのアイデアをスケッチして、家でフラッシュすることができます。

物理ボードはshop.pimoroni.comで購入できます。Badger 2350、Pico Plus 2 W、Galactic Unicornに加え、pimoroni.comでドキュメントも提供されています。

Velxio内のPimoroni関連のすべては、無料プランで実行できます。コンポーネントピッカーを開き、Boardsを選択すると、3つともリストに表示されます。

ギャラリーのすべてのPimoroni例

各リンクは、実行準備が整ったプロジェクトを開きます。

Badger 2350

Pico Plus 2 W と Galactic Unicorn

ボードのリファレンスページには完全なピン配置が記載されています。 Badger 2350Pico Plus 2 WGalactic Unicorn


共有:
David Montero

執筆者

David Montero

Creator of Velxio, the open-source circuit and Arduino simulator.

GitHub velxio.dev

関連記事


前の記事
DFRobotとVelxio — 配線前に試せるUNIHIKER、HuskyLens、そして6つのGravityセンサー
次の記事
Velxio における M5Stack — Cardputer ADV と Core がブラウザ上で M5Stack 公式サンプルを実行