CircuitPython 10行プログラミング Step8 (1) 準備
連載のSTEP1はとてもコンパクトなTrinket M0を、STEP2はArduino MEGAと大きさが同じGrand Central M4 Expressを利用しました。STEP3はAdafruit Metro M4 Express AirLift (WiFi)を利用しました。大きさはArduino UNOと同じです。
STEP4では、いろいろなセンサを搭載したAdafruit Feather nRF52840 Sense(別の名称;Feather Bluefruit Sense)を利用します。BLE(技適のコードがモジュール上に刻印されている)が利用できるボードです。同じBLEのモジュールが搭載されているのがAdafruit Feather nRF52840です。
STEP5では、Raspberry Pi Pico(RP2040)を利用しました。STEP6では、Raspberry Pi Pico(RP2040)といくつかのセンサを搭載したNano RP2040 Connectを利用しました。STEP7で利用するマイコン・ボードはXIAO RP2040です。前のRaspberry Pi Pico(RP2040)と同じCPUですが、コンパクトです。
2020年6月、CircuitPython 8.0.0 Alpha版がリリースしました。その前の安定版7.3.0に比べて特徴はうたわれていませんが、Espressif Systems社のロゴが表記されているので、スポンサか何かになったものと思われます。日本国内では、新しいシリーズの技適はほとんどとられていないので、利用できません。
ここでは、Seeed XIAO BLE Senseを使います。STEP7のXIAO RP2040と同じような形状をしていますが、RFはBluetooth 5.0 対応のNordic製nRF52840を搭載しています。ボード上には、MSM261D3526H1CPMディジタル・マイクと6軸IMUを搭載しています。
PCとUSBケーブルでつないでリセット・ボタンをダブルクリックします。Windowsではドライブができませんでした。Seeedの説明でもMacが使われていたので、以下の検証はMacを使います。
(2022/06/30) Macでマウントされなくなることがたびたび起こります。その時は、Windows10にもっていくと、正常にマウントできることがあります。
https://wiki.seeedstudio.com/XIAO-BLE_CircutPython/
●Seeed XIAO BLE Senseのおもなスペック
- 電源 3.3V / 200mA
- 消費電流 5μA(DeepSleepモード時)
- バッテリ充電IC BQ25101 充電電流:50/100mA
- CPU Nordic製 nRF52840 ARM Cortex-M4F 32ビット浮動小数点演算ユニット付き64MHz
- 無線規格 Bluetooth5.0、NFC、ZigBee
- メモリ 256KB RAM
- フラッシュ・メモリ 内蔵1MB、外付け2MB
- 基板寸法 21 x 17.5mm
- USB Type-C
- 6軸IMU LSM6DS3TR-C
- ボタン Reset
●動作環境
- MacBook Pro (Retina,13inch,late2013)
- macOS Big Sur 11.6.6
- Mu 1.1.1
●Circuitpythonバージョン8.0.0 Alpha1を利用
Circuitpythonの最新版を利用するために、二つのファイルをダウンロードして、インストールします。
STEP1 下記のサイトからこのボードにあったUF2のファイルをダウンロードします。
https://github.com/adafruit/circuitpython/releases/tag/8.0.0-alpha.1
downloads page をクリックします。
検索欄にXIAOと入れます。見つかったSeeed XIAO BLE Senseをクリックします。
UF2ファイルをダウンロードします。
Seeed XIAO BLE SenseをUSBケーブルでMacとつなぎます。ボード上のリセット・スイッチを素早く2度押し、ブートローダ・モードになったら、ドライブ名がCIRCUITPYからXIAO_SENSEに変わります。uf2のファイルをそのドライブへドラッグします。
コピーが終わると、ドライブ名はCIRCUITPYに変わります。次の図は、ドライブを開いたところです。
STEP2 最新のライブラリlibとexampleをダウンロードします。
https://github.com/adafruit/Adafruit_CircuitPython_Bundle/releases
ストレージの容量は大きくないので、解凍したファイルのすべてをマイコン・ボード側へコピーできません。Macのデスクトップにいったんコピーしました。libは、必要に応じてコピーして使います。
プログラミングはMuエディタを使います。