D1, Q1, R1, R2をはんだ付けします。D1のみ極性に注意してください。
D4--D7はオプションです。外部から5V給電を受け付ける場合は取り付けてください。 スイッチOFF時のみ外部給電モードに入ります。
電池ボックス、TRRSプラグは必要に応じて表面または裏面に取り付けます。 2個のBT PendantをErgo42 moduloと組み合わせる場合、片方のモジュールではこれらを裏面に取り付けると対称に装着できます。 Ergo42 Moduloでは4つのTRRSジャックのうち外側の2つがI2C用です。BT PendantのプラグのI2Cと書いてある側を外側に差し込んでください。
SWDまたはブートローダから書き込みます。SWDから書き込む場合、ブートローダ・ソフトデバイスを一度上書きする必要があります。
Ergo42 Moduloとの組み合わせを想定した動作確認の方法を説明します。
左手側がマスタ、右手側がスレーブの完全無線構成向けです。 また、Ergo42 Moduloのデバイスアドレスは0x26, 0x27を想定しています。(DIPスイッチが両方ともOFF)
-
スマートフォン・タブレットにnRF Toolboxをインストール(現時点ではPC版からは書き込めないようです。)
-
Releaseからデモプログラムをダウンロード
-
BT Pendantのデバッグ用ポート(V,S,C,/R,G,T,R)のうち、GとRをショートさせながら電源を投入(ブートローダが起動します。初回は不要です。)
-
nRF ToolboxでDFUを選択し起動
-
SELECT FILEから先ほどダウンロードしたzipファイルを選択
-
SELECT DEVICEでDFU Targを選択
-
UPLOADを押し、書き込みを開始
-
スレーブ側のみを起動し、スマートフォン等からBluetoothデバイスのスキャンを実行
-
デバイス一覧にNordic UARTという表示があることを確認したら、マスタ側を起動
-
デバイス一覧からNordic UARTという表示が消え、代わりにModuloBLEが表示されることを確認後、ペアリングを実行
以上の手順により、無線キーボードとしての動作確認ができます。 これ以降、スレーブ側のみを起動したとしてもNordic UARTはデバイス一覧に表示されません。
基本的にはBLE Micro Pro のものを参照してください。 ただし、SDKはv12.3.0をダウンロードし(技適の都合)、環境変数の名前はNRFSDK12_ROOTとしてください。
-
nrfutil.exeをダウンロードあるいはpipからインストール(python2.7)
-
Releaseから
modulo_bt_pendant.pem
をダウンロード -
nrfutilを使ってパッケージを生成
nrfutil pkg generate --application FIRMWARE_NAME.hex --debug-mode --hw-version 0 --sd-req 0x8c --key-file modulo_bt_pendant.pem FIRMWARE_NAME.zip
CMSIS-DAPとOpenOCD(0.10.0)を使った書き込み方法を説明します。OpenOCDはST-Link等にも対応しているはずですが未確認です。
デバッグ用ポート(V,S,C,/R,G,T,R)のSをSWDIO, CをSWCLK, GをGNDに接続します。
この手順は最初に一度実行すれば以降は不要です。
openocd -f interface/cmsis-dap.cfg -f target/nrf52.cfg -c init -c "reset init" -c halt -c "nrf5 mass_erase" -c "program s132_nrf52_3.0.0_softdevice.hex verify" -c reset -c exit
openocd -f interface/cmsis-dap.cfg -f target/nrf52.cfg -c "program FIRMWARE_NAME.hex verify" -c "reset" -c exit