2026年5月1日金曜日

FNIRSI DMC-100をBluetooth対応にしてみた。

 この前、UARTをBLEで飛ばせるかどうか確認がうまく行ったのでnRF52840DMC-100に内蔵できるかどうかを確認してみた。

3.3V電源を生成しているところは裏面にありそうなんだけど3.3Vラインが今どのぐらい使われているかもわからないのでとりあえずLipoにつながっているPch FETのラインから取ることに。ここは逆流防止とスイッチのよくある回路っぽい配置になっていた。電源がオンになるとここからLipoの電圧が直接出てくる。
GNDはUSBコネクタのところから、SD7502の出力は22Ωの抵抗のところから取った。nRF52840に繋がないといけないのはこの3本の線。
こんな感じで電源をVBUSラインに、RXにSD7502を繋いでGNDはGNDの3本の線だけ。とりあえず動作確認したかったのでまだはんだ付けはしていないけど簡単。
ブザーの上に取り付けようと思ったら可動部が上の方にあるので結局SD7502の上に厚手の両面テープを2枚重ねで装着してみた。nRF52840は温度が上がらないので問題ないと思うけど念のため。はんだ付けして完了。

ソフトを書き換えるときはVBUSがLipoに直結してしまうので一旦電源ラインだけは剥がす必要がある。頻繁に書き換えるならショットキーダイオードとか入れておいたほうがいいかも。とりあえず前回作ったスケッチを書き込んでおいて、あとはクライアント側のアプリでどうにかする方式にしたので書き換えたりはしない予定だけど。

アプリの方はこの前作ったPythonツールnRF52840のスケッチをGeminiに投げてWeb Bluetooth APIで作ってもらった。シリアル通信の解析はダメダメだったけどここまで出来てれば素早くきれいなアプリが出来上がるのすごいな…
スマホとか対応できるようになったらもっと便利かも。