Hello, @wsanders
The app0 and app1 partitions are used for firmware update with rollback in case of failure.
It is also used by the OTA function.
https://docs.espressif.com/projects/esp-idf/en/latest/esp32/api-reference/system/ota.html
Hello, @wsanders
The app0 and app1 partitions are used for firmware update with rollback in case of failure.
It is also used by the OTA function.
https://docs.espressif.com/projects/esp-idf/en/latest/esp32/api-reference/system/ota.html
TwitterでA_P_Delchiさんという方がMicroPythonでサーボの動作と別の処理をスレッドで実現しています。(WAV/MP3再生はしていません。)
こちらが参考になると思います。
ESP32はラズパイのようにLinuxOSはないので、パッケージを入れることはできません。サウンド制御の部分も独自のドライバでUIFlowからは使えるようになっています。
恐らくなのですが、portaudio部分を自分で実装しないとpyaudioは使用できないと考えます。(そのままでは動かすのは不可。)
Pythonで完結するように_threadを使用してサーボ制御と音声の再生を行う方法を模索するしかないでしょう。(UIFlowのMicroPythonでは細かいタスクやスレッドの優先度の制御はできないのでかなり難しいと思います。)
ESP32の時とは変わって、USBの書き込みはESP32-S3に内蔵されているUSBシリアル通信機能を利用しています。そのため、ダウンロードモードに入る操作が必要な場合があります。
特にWindowsでは書き込み時に必ずダウンロードモードにする必要がありそうです。
リセットボタンを2秒以上長押しします。ボタンの裏にある緑色のLEDが点灯したらダウンロードモードに入ったことが分かります。
USB端子を一度抜き、ボタンを押しながら再度差し込んで電源を入れます。(LEDは特に光らないので分かりづらいです。)
Esptoolのバージョンが4.4が原因で書き込めない場合があるそうです。バージョンが古すぎてもESP32-S3に対応していないので、ボードマネージャーのバージョンを変えてみてESPToolVer.4.1, 4.2, 4.3を使ってみてください。
ESP-S3系は今までのESP32の端末と異なり、新たなハマりポイントがあるようです。
Twitter等で発見したハマりポイントをまとめておきます。何か他にもあったらトピックに追加してください。
Hi,@admiralmaggie,
Resolution and refresh rate depend on the monitor being used. If variable, the resolution can be changed.
However, some monitors have a fixed resolution and refresh rate, in which case it is necessary to match the monitor specifications.
Hi, @xeon,
Japanese, but it is written here and A-rated SD cards can be used.
I recommend Lexar 32GB (V10 Class10).
https://docs.google.com/spreadsheets/d/10Vv8ZQkbXX59aT_GkoolTMHf83zroIT21uNjvQMaGng/edit#gid=0
It is unofficial and cannot be guaranteed, but it works in my environment if I make my own cable to connect Grove's +5V and GND to the USB terminal side.
Please see the thread in the link below for detailed instructions on how to make it.
他のフォーラムと同様、まずは問題に対する答えを検索するか、FAQをご覧ください。
セクションをご覧ください。どうしてもそこで答えが見つからない場合は、あなたの質問がどのフォーラムのカテゴリーに最も適しているかを検討してください。これにより、すべての関連情報が適切な場所に保管されるようになります。
投稿には必ず説明的な名前を付けてください。
他のユーザーがあなたのコードを見たり、コピー&ペーストしてテストすることを容易にするために
あなたのコードを3つのバックティック ``` で挟んでください。そうすると、あなたのコードがスクロール可能なウィンドウに表示され、以下のように構文が色分けされます。
from m5stack import *.
from m5ui import *.
clear_bg(0x111111)
btnA = M5Button(name="ButtonA", text="ButtonA", visibility=False)(ボタンA)。
btnB = M5Button(name="ButtonB", text="ButtonB", visibility=False)(ボタンB)
btnC = M5Button(name="ButtonC", text="ButtonC", visibility=False)です。
ターミナルコマンドの情報を投稿する場合は、コードスニペットと区別するために、コマンドの前後に2つのバックティック `` を使用してください(以下の例)。
sudo halt
この情報があると解決が早まる場合があります。
M5Stack、ESP-32、IoTなどに関する投稿は大歓迎です。もし、トピックから外れた話をしたい場合は、フォーラムの一般セクションに投稿してください。人種差別、政治、宗教、その他中傷的な話題は受け付けません。そのような内容を投稿した場合、あなたの投稿は削除され、あなたのアカウントは禁止されます。
2MB(2,048KB)以下にしてください。
こちらは日本語のフォーラムです。
読んでくれてありがとうございます。フォーラムを楽しんでください。
下記の黒いブロックをコピーしてテンプレートとして使用してください。
-
、 #
、```
や``
の記号は意味があるので消さないでください。# タイトル
# 詳しい状況の説明
# 使用しているUIFlowやArduinoライブラリのバージョン
-
-
# 再現可能なコード
```
# ここにコードを書きます。
```
ターミナルコマンド
`` command ``
マイクで拾った音に合わせて口パクと顔が傾きます。
・音に合わせて口パクします。
・ボタン(A)を押すと色が変わります。