戻る

カスタムチップが本格進化 — 統合エディタ、ライブセンサースライダー、パーソナルチップライブラリ

カスタムチップは、Velxioの静かなスーパーパワーでした。カタログに必要な部品がないとき、数行のCコードを書けば、それをWebAssemblyにコンパイルし、結果は本物のシリコンのように動作します。ピン、I2C、SPI、UART、タイマー、さらにはフレームバッファまで。今日、それらは静かではなくなります。このリリースでは、その体験全体を根本から作り直しました。

すべてを1つのエディタで

従来のフローでは、チップを2つの画面に分けていました。Cソースとマニフェスト用のモーダルダイアログと、レトロCPUチップが実行するプログラム用の通常エディタです。これは廃止されました。すべてのカスタムチップは、ファイルエクスプローラー内に**chip.cとchip.json**を通常のファイルとして持つセクションを所有します。スケッチと同じMonacoエディタで編集でき、入力中にマニフェストのJSONスキーマ検証が行われます。Runを押すと、ソースが変更されるたびにチップが再コンパイルされます。チップごとのコンパイルボタンを使用すると、Cコードだけを繰り返し調整する場合に高速なループが得られます。

シミュレーション実行中に操作できるセンサー

カスタムチップは、マニフェストでライブコントロールを宣言できるようになりました。

"controls": [
  { "id": "ppm", "label": "CO2 (ppm)", "type": "range",
    "min": 400, "max": 5000, "step": 10, "unit": "ppm" }
]

各コントロールは、同じIDを持つ属性を駆動します。シミュレーション実行中にチップをクリックし、スライダーをドラッグすると、vx_attr_readは即座に新しい値を返します。再コンパイルも再起動も不要です。ギャラリーには、この方法で構築された2つのテンプレートが同梱されています。ppmスライダーに追従するアナログ出力を持つCO2センサーと、レジスタマップの背後に温度と湿度のスライダーを持つI2C環境センサーです。チップのDAC出力はボードのADCにも到達するようになったため、analogRead(A0)はスライダーにリアルタイムで追従します。

minとmaxを宣言する属性を持つ既存のチップは、マニフェストの変更なしで自動的にスライダーが追加されます。

マイチップ — 一度作れば、どこでも再利用

Proユーザーは、パーソナルチップライブラリを利用できます。ファイルエクスプローラーのセクションからチップを保存すると、あなたのコンポーネントピッカーに表示されます。すべてのプロジェクトで、CUSTOMバッジ付きで表示されます。ドロップすると、ソース、マニフェスト、コンパイル済みバイナリがプロジェクトにコピーされるため、プロジェクトは自己完結型で共有可能な状態を維持できます。

AIエージェントも大幅にアップグレード

アプリ内エージェントに「シミュレーション中に動かせるスライダー付きのCO2センサー」を依頼すると、それを作成します。このリリース全体は、まさにそのタスクでエージェントが失敗するのを見たことから始まりました。エージェントのチップ知識に誤りがあり、ピンなしの不活性なチップが生成されていました。これは修正され、サーバーはすべてのワイヤーでチップピンを検証するようになり、エージェントはチップをマイチップに保存して再利用できるようになりました。MCPブリッジ経由で接続された外部エージェントも、サーバーサイドのコンパイルツールを含む同じ機能を利用できます。

SDK — velxio-chip.h ヘッダーと、クリーンルームのレトロCPUファミリーを含む成長を続けるオープンソースチップのコレクション — は、github.com/velxio/velxio-chipsにあります。ドキュメントには完全なストーリーが記載されています。はじめ方、プログラマブルセンサー、マイチップ、そして完全なAPIリファレンスです。


共有:
David Montero

執筆者

David Montero

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

GitHub velxio.dev

関連記事


前の記事
ZバッファなしでESP32-S3向けのOutRun風3Dレーシングゲームを作る
次の記事
WiFiはおまかせ — カスタムアクセスポイント、パケットキャプチャ、そしてあなたのローカルネットワーク