
米Cirkit Design LLCは、ブラウザ内で動作するESP32-S3シミュレータのベータ版を公開した。Cirkit Designer IDE上で利用でき、RustとWebAssemblyで一から構築された命令レベル精度の仮想ESP32-S3 CPUコアを搭載する。同社CirkitDesign氏によると、コアの開発には約8ヶ月を要した。
サーバー側にシミュレーション処理を置かず、ユーザーのブラウザ内でローカルに動く点が最大の特徴だ。既存のWokwi(クラウド型)や、オープンソースQEMUをサーバーで動かすVelxioなどの類似ツールに対して、WASM化した独自エミュレータをブラウザで直接実行することで、サーバーとの往復なしにシミュレーションが完結する。ただしArduinoスケッチのコンパイルについては、ツールチェーンを持ち込めないためサーバー側で処理される。
対応周辺機器は、GPIO、UART、SPI、I2C、PWM、ADC、ハードウェアタイマーに加え、AES、SHA、RSAの暗号アクセラレータ、乱数生成器、Flash、PSRAM、ウォッチドッグまで幅広い。WiFiは802.11層のエミュレーションに対応し、HTTP、HTTPS、MQTT、WebSocket、UDPが動作する。ただしWPA2/WPA3は未対応で、現時点ではオープンネットワーク限定となる。NeoPixel(WS2812)はRMT経由の送信のみ対応し、Bluetooth、TWAI/CAN、PCNTは未対応だ。
シミュレータのCPU周波数は既定で8MHzに制限され、16MHzや実機と同じ240MHzにも切り替え可能。周辺機器のタイミングは設定値に関わらず正確に保たれる。暗号演算が即座に完了するなど理想化された部分もあるが、多くのArduino開発では影響のない範囲とされる。コアシミュレーションは無料で提供され、AI支援設計やワークフローツールで収益化する方針。今後、SDカード、LoRa、nRF24などのRFモジュール、ESP-IDF対応、AI支援型のコンポーネントエディタによるコミュニティ拡張を予定しているという。

