nRF24L01のふぁーすといんぷれ
nRF24L01使ってみました。
こいつは何かというと、簡単に無線通信が出来る便利系ICです。
国内だとXbeeとかTWI-Lightとかでしょうか。
あれらにくらべてとても安いところが特徴です。
ただ、流通している格安モジュールは技適を通ってないので、実際日本国内で使うのは電波法違反っぽい・・・
隣人を混乱させるような電力出しているわけではないので何も言われないとはおもいますが、組み込んで販売等する場合は技適の取得が必要になるでしょう。
基本的に、下記に書かれているとおりなのですがnRF24を扱うライブラリはいくつかありました。下記の記事でつかわれているのは一番機能がリッチそうなやつ
https://ehbtj.com/electronics/nrf24l01/
なのですが今回はより簡単そうなNRFLiteというライブラリを使用しました。
データシートをろくすっぽ読まずにICが利用できてとても便利ですね。先人たちに感謝ですが、自分の身にならなくて不安です・・・
配線
ライブラリのはなしをしてしましましたが、まずは配線です。
VCCは3.3Vを与えましょう。5Vはアウトです。
ただ、入力ポートは5Vトレラントなので、5V動作のArduinoでもレベル変換回路は不要です。ポートに直接繋いでOK。
GNDはGNDに落としましょう。
MOSI/MISO/SCKはそのままハードウェアSPIのポートにつなぎます。Arduinoで変わるので自分で調べてください。
CS・CSNは適当なデジタルピンに繋ぎます。
IRQは実験では未接続でOKです。
※これは割り込み用のピンなので、本番では使用し、データ来るまでマイコンスリープさせるなど、待機電力を削減するようにしないと・・
これらを2台用意します。
ソフト
Arduinoの開発環境を開いたらCtrl+Shift+Iでライブラリ管理を呼び出し、NRFLiteを検索します。
ロードできたらサンプルスケッチが追加されているので、
ファイル→スケッチ例→NRFLite→Basic_RX(2台目はBasic_TX)
からサンプルを読み込んで書き込みましょう。
シリアルから読めた的なログが出てきたら成功です。
おわり
今回は結線してサンプルを流し込んで終わりですが、実際手元で動くことを確認できました。
これは自作キーボードの無線化にも使えるし、ほかにも無線化したいものがあるのでそれに組み込んでいこうと思います。
ただ、技適通ってないのが痛いですね。だから安いんですけど。。
なんか無線ものを販売したいとなった場合は、モジュールは各自調達してもらうかXbeeなど技適通ったものを使う必要がありそう。