はじめに
XIAOシリーズに無線機能(Bluetooth® Low Energy)がついた製品(Seeed XIAO BLE nRF52840)が発売されたので、ノラバッジ(MINI LED BADGE)を対応するため、さっそく試してみた。
- Seeeduino XIAO
- Seeed XIAO RP2040
- Seeed XIAO BLE nRF52840
- Seeed XIAO BLE nRF52840 Sense
ノラバッジ(MINI LED BADGE)の対応機種
nRF52832で動作実績があったので、nRF52840でも動作するだろうと予測はしていましたが、新たなBLEライブラリ(ArduinoBLE) を使用する必要がありました。
- MDBT42Q (nRF52832)
- M5Stick-C、M5Atom Lite、M5Atom Matrix (ESP32)
XIAO BLEのArduino IDE環境
基本的にSeeed Wikiを参照して手順とおりに実施すれば環境構築は完了します。
ただし、Windows環境を前提に説明されていますので、macOS環境は少し異なる部分がありました。
USB接続で認識されるXIAO BLE nRF52840のデバイス情報
$ system_profiler SPUSBDataType
USB:
USB 3.1 Bus:
Host Controller Driver: AppleUSBXHCIAR
PCI Device ID: 0x15d4
PCI Revision ID: 0x0002
PCI Vendor ID: 0x8086
Bus Number: 0x00
USB 3.0 Bus:
Host Controller Driver: AppleUSBXHCISPTLP
PCI Device ID: 0x9d2f
PCI Revision ID: 0x0021
PCI Vendor ID: 0x8086
Seeed XIAO nRF52840 Sense:
Product ID: 0x8045
Vendor ID: 0x2886
Version: 1.01
Serial Number: 7B8BEF52CBA61E5E
Speed: Up to 12 Mb/s
Manufacturer: Arduino
Location ID: 0x14100000 / 4
Current Available (mA): 500
Current Required (mA): 100
Extra Operating Current (mA): 0
ボードマネージャーでSeeed XIAO nRF52840 Senseをインストール
インストール後に警告が表示されましたが、動作(コンパイル、ビルド、デバイスへのインストール)には問題ありませんでした。
ボードの選択
「ツール」→「ボード」→「Seeed nRF Boards」→「Seeed XIAO BLE - nRF52840」の順に選択します。
シリアルポートの選択
「ツール」→「シリアルポート」→「/dev/cu.usbmodem14101」の順に選択します。
(環境によって、usbmodemXXXXXのXXXXXの数字は変わる可能性があります)
Lチカの動作確認
Seeed Wikiの手順通りです。3色のLED動作を確認しました。
BLEの動作確認
Seeed Wikiの手順通りです。ArduinoBLE(BLEライブラリ)のバージョンは1.3.1でした。
LightBlueアプリの動作確認で、最初、表示名が「Arduino」でしたが、接続して値を書き込んだ後は表示名前が「LED」に変化しました。
ノラバッジとの接続確認
サンプルコードのBLE PeripheralのCallbackLEDのソースコードを参考にノラバッジとの接続確認を行いました。
ソースコードはGitHubに置きました。