M5Stamp C3U 続き

引き続きM5Stamp C3Uのお話。

hollyhockberry.hatenablog.com

前回の記事ではM5Stamp C3と同じ環境でに書き込みできました。
ですが、Serialで出力してもシリアルポートから何も出力されません。G20とG21に出力されてるからでしょうね。

「ESP32-C3 USB」とかで検索してESP32のフォーラムで以下のやりとりが。

www.esp32.com

2022/12/22更新しました

気づいたらESP32のArduino Coreがアップデートされてました。

ARDUINO_USB_CDC_ON_BOOTARDUINO_USB_MODE をdefineすることで Serialが内蔵のUSB CDCでインスタンス化されます。

#if ARDUINO_USB_MODE
#if ARDUINO_USB_CDC_ON_BOOT//Serial used for USB CDC
HWCDC Serial;
#else
HWCDC USBSerial;
#endif
#endif

github.com

ARDUINO_HW_CDC_ON_BOOTをdefineすることでSerialが内蔵のUSB CDCになるようです。

#if ARDUINO_HW_CDC_ON_BOOT //Serial used for USB CDC
    HWCDC Serial;
#else
    HWCDC USBSerial;
#endif

ArduinoIDEではToolsにあるUSB CDC On BootEnableに設定すると定義されるようです。

デフォルトのHardwareSerialの実体はSerial0でアクセスできます。 ARDUINO_USB_MODEARDUINO_HW_CDC_ON_BOOT定義時と未定義時でこんな感じで生成されていました。

ARDUINO_USB_MODE ARDUINO_HW_CDC_ON_BOOT HWCDC HardwareSerial
defined Serial Serial0
not defined USBSerial Serial

余談ですが、C3Uは付属のシールを貼ってみました。リセットボタンを爪を立てて押してるので既に跡が目立ってますね。
なるべく優しく押すようにしないと・・