hobbyhappyです。
以前からESP32搭載のLolinD32の記事をいくつか挙げています。
ただこのLolinD32ですが、microPythonは導入できても、
CircuitPythonが導入できなかったんです。
CircuitPythonは、機種ごとの設定ファイルが用意されていて、
それにしっかり当てはまらないといけません。
LolinのESP32搭載のマイコンボードはいくつかあり、
その中の、Lolin S2 Miniまたは Pico、S3またはC3 Mini
であればCircuitPythonが使用可能です。
バッテリーの充電も駆動もできるのに、
ちょっと残念…
ESP32でCircuiPythonをやるのが目的だったので、
ここであきらめるわけにはいきません。
ということで新たに、
CircuitPythonで使用できることがわかっている、
ESP32-S3-DevKitC-1-N8R2を購入して試してみました。
Youtubeチャンネルにさまざまな動画を上げています。
↓↓↓こちらからYoutubeチャンネルにアクセス!! ↓↓↓
本ブログはアフィリエイトを用いた広告を掲載しています。
ESP32-S3-DevKitC-1-N8R2とはなんなのか??
ESP32-S3-DevKitC-1-N8R2とは、ESP32搭載のワンボードマイコンです。
ESP32をコアとするボードですね。
ESP32とは?特徴は?
ワンボードマイコンと言えば、
Arduinoシリーズ、STM32、RaspberryPiPicoなどがありますが、
このESP32の最大の特徴と言えば、無線通信が標準搭載されているところでしょう。
WiFi通信はもちろん、Bluetooth通信も可能で、
今はやりのBLE(Bluetooth Low Energy)なんかもできます。
BLEを使っているので有名なのは家中をIoT化できるSwitchBotなんかですね。
あれは、単四乾電池2本という省エネでBluetooth通信を可能にしています。
これとか。家にありますが、省エネですよね。
ここまではESP32についてのお話です。
ESP32-S3-DevKitC-1-N8R2の特徴は?
それでは作っているメーカーや、
スペック、ピン配置なんかについてこれから解説していきます。
作っているメーカーは?
さて、今回使用する、ESP32-S3-DevKitC-1-N8R2はESP32をコアとした
マイコンボードですが、どんな特徴があるかお伝えしていきましょう。
まず、このボードを作っているメーカーは、
ESPRESSIFというメーカーです。
実は、このメーカー、ESP32を作っているメーカーなんです。
つまり、コアであるESP32を作っているメーカーが基板の実装までやった。
それがこのマイコンボードなんですね。
STMicroなんかもこんな感じですよね。
NucleoはSTM32というSTMicro社製のマイコンを積んだSTMicro社製のマイコンボードですから。
このマイコンボードのスペックは?
次にスペックです。
スペックとして重要な項目は、基本的にはコアとなるCPUのスペックに依存します。
ESP32-S3-DevKitC-1-N8R2は、ESP32-S3-WROOM-1-N8R2というものが搭載されています。
ESP32-S3-WROOM-1-N8R2のピン配置は?
ピン配置はこんな感じです。
ESPRESSIFの情報を転載。
十分すぎるくらいの数が出ていますね。
Analog値とDigital値にしてくれるA/Dコンバーター付きのピンも豊富に備えています。
紫のピンですね。
左下に、4x SPIとか、2x I2C、2xI2Sなんて気になる記述がありますが、
これは、ピン番号に依存せず、こちら側で定義してあげれば使えるようです。
今後SPIやI2C通信が必要になったら記事にする予定です。
ESP32-S3-DevKitC-1-N8R2はどこで手に入る?
ESP32-S3-DevKitC-1は、町の電気屋さんでは売っていません。
Arduinoなどのマイコンボードが売っていないのと一緒ですね…
というわけで、購入はインターネット通販がベストです。
もちろん、秋葉原などが近い場合は現物がチェックできるかもしれませんが、
全員が全員行けるわけではないですからね….
ちなみに今回入手した先はAmazonです。
Amazonでなんでも手に入る時代ですね…思い立ったらすぐ購入できるのはいいところ。
Amazonの商品画像には技適マークが無いですが安心してください。
ちゃんと技適マークが入ったものが届きました。
ESP32-S3-DevKitC-1-N8R2用のCircuitPythonのファイルを入手する。
モノが入手できたところで、
今度は中身を準備しましょう。
こちらのCircuitPythonのページに飛んでください。
やり方も上記のリンクのページに書いてあるのですが、
ここでは詳しく解説していきます。
ESP32-S3-DevKitC-1-N8R2用のファイルの入手先(注意!!)
では、上記のページから何をダウンロードするのか解説していきます。
注意があります。
それが、しっかりとご自分の入手したボードの型番を確認すること。
え、当たり前じゃん。と思いましたよね?
ただ、このDevKitCシリーズですが、バリエーションが結構あります。
今回紹介しているESP32-S3-DevKitC-1-N8R2をそのまま購入していれば問題ありませんが、
例えば、ESP32-S3-DevKitC-1-N8というものも存在します。
注意なのが、このESP32-S3-DevKitC-1-N8用のファイルを使っても、
ESP32-S3-DevKitC-1-N8R2は動きません。
似ているからと言っても、完全に別モノだと意識してください。
※ちなみに私は型番をしっかり確認していなかったのでとんでもなく時間を浪費しました…..
ダウンロードするもの① BINファイル
まずはBINファイルをダウンロードします。
これは、いったんESP32-S3-DevKitC-1-N8R2をまっさらにしたあと、
新たにCircuitPythonを使えるようにするためのツールです。
ダウンロードするもの② UF2ファイル
次にダウンロードするのは、UF2ファイルです。
これは、RaspberryPiPicoで遊んだことがある人にはなじみ深いのではないでしょうか?
その時の記事はこちら。↓↓↓
ここまでくればあと少しです!
CircuitPythonをESP32-S3-DevKitC-1-N8R2に適用する手順。
手順としては、こんな感じです。
ESP32-S3-DevKitC-1-N8R2用をケーブルでPCにつなげる。
無線でもできるようですが、
今回は有線で行きます。有線と言えばUSBケーブルですね!
というわけで必要なものはUSBケーブルです。
ESP32-S3-DevKitC-1-N8R2は、MicroB端子搭載です。
TypeCではないので注意です。
みんな大好きArduino Pro MicroやArduino Nano Everyなんかと一緒ですね。
持ってない!という場合は、1本くらい持っておいたほうがいいです。
それから、長さ的に長いの、短いのが欲しい。という場合も買ってしまいましょう。
ケーブルをけちることにあまり意味はありませんからね…
ブラウザのツールを使用して初期化する。
BINファイルやUF2ファイルをダウンロードしたページに
詳しいことは書いてありましたが、まずはESP32-S3-DevKitC-1-N8R2をまっさらにします。
手順としては単純です。
こちらのページに行きます。
Adafruitのツールです。
すると、こんな感じの画面になりますので、
まずはConnectの隣の、ボーレートの設定です。
画像のように、460800に設定してください。
次が結構大事なのですが、
基板についている、BOOTボタンを押しながら、RESETボタンを押す。
その後、RESET⇒BOOTボタンの順で離す。
これをして下さい。
次に、Connectボタンを押しましょう。
すると、このように、COMポートが表示されますので、
選択して、接続ボタンを押します。
接続完了したら、下のほうまで項目が出てきますが、
押すのは、Eraseボタンです。
文字通り、基板内に書き込まれている内容を消します。
消しちゃっていいの?と思うかもしれませんが、
全く問題ありません。
ArduinoIDEで書き込みをするときなんかも、
とくに気にせず書き込めます。逆にいうと、
ArduinoIDEで書き込む場合は、こんなに面倒なことは必要ないですので安心して下さい。
Eraseボタンを押すと、結構処理に時間がかかります。
最初フリーズしたか?と思いますが、安心して下さい。
20秒くらいかかったりします。
↑これは実際にわたしのものが消去にかかった時間です。
20986msかかっているので、20秒以上ですね。
CircuitPython用のBINファイルを書き込む。
基板内の情報がいったんまっさらにできた状態で、
今度はCircuitPythonを書き込んでいきましょう。
この画面から、Choose a fileというボタンを押して下さい。
すると、書き込むファイルを選択するためにエクスプローラが開きます。
そうしたら、ダウンロードしたBINフォルダ内の、combined.binを選択して下さい。
選択すると、こんな感じで表示されます。
そうしたら、Programボタンを押してください。
Programボタンを押すと、処理が始まります。
完了すると、このようなメッセージが表示されます。
ということで、USBケーブルを抜き差しするか、
基板上のRESETボタンを押してください。
新たに出現したフォルダにUF2ファイルを投げ込む。
最後に、RESETボタンを押すと、
ハードリセットがかかって、エクスプローラが起動して、
このようなフォルダが開きます。
RaspberryPiPicoで見覚えがありませんか?
あとは何をするか何となくわかりますよね?
そうです。用意しておいたUF2ファイルをこの中に投げ込みます。
これでESP32-S3-DevKitC-1-N8R2でCircuitPythonで使えます。
ここからはCircuitPythonの扱いになるので、
Thonnyの出番ですね。
これでCircuitPythonが使えるようになっていますので、
いろいろ遊べますね!!
今回のまとめ
今回は、ESP32-S3-DevKitC-1-N8R2でCircuitPythonを使う方法についてご紹介しました。
LolinD32でCircuitPythonできれば特に不満はなかったんですが、
まあ、仕方ないですね~
結構このESP32-S3-DevKitC-1-N8R2ですが、最近の機種のようで
高性能なんですね。Bluetoothも5が入っているとか。
このボートを使って無線マウスとか、
無線キーボードも作れそうですね。
ただバッテリーが入れられないのがなあ。
あ、でもM5Stickとかだとバッテリーありで無線使えるし、CircuitPythonだって使えちゃうな…
んー悩ましいですね。
コメント