購入したnRF24L01P がfake品だった。

一年くらい前かな?AliexpressにてnRF24L01Pが0.58$&送料無料なんてのを見つけてしまった。買わないでどうすんだというくらいの爆安価格に釣られ5個ほど購入。

Nrf24l01 + 2.4 ghz無線トランシーバモジュールarduinoのマイクロコントローラアンテナ無線トランシーバ

nRF24L01Pは、nRF24LE1/nRF24LU1Pと互換性があると本家の資料に記載されていたので試してみたところ全く通信できない。なぜ?と思い各種設定の組み合わせを手当たり次第に試してみる(以外にこういうのが宝探しのようで面白かったりもする)。

その結果、わかったのはDYNAMIC-ACK機能を有効にすると通信できなくなること。それ以外にも送受信タイミングに起因して通信が失敗するなど仕様からは理解不可能なタイミングや動作が多々あったりするし本当に送信してるのかもわからない。そこで、何が起こってるのか目で見たくなり秘密兵器を開発してみた。(というか組み合わせただけ)

【RFアンプ(SPF5189Z) + RFログ検出器(AD8318)】
以外にカッコいいかも!!(笑)

【AUTO-ACK通信成功時】

【AUTO-ACKリトライ動作】

【送信部分を拡大】

まず、送信時間がおかしい。計算上では40usほどで完了するはずだが一回目と2回目は90usもかかっている。3回目は正しそう。通信成功時でも90usかかってるので恐らくは無駄な送信キャリアを送出し続けてるだけと予想。
それと、リトライ動作もおかしい。リトライ4回に設定してるのに2回しかリトライしてないし、リトライ間隔は500usにしてるから送信間隔は500+130=630usのはずなのに1300us以上もかかっている。それに加え1回目と2回目の間隔が違っている。どうしたらこんなややこしい動作にできるのか、もう、わけわかりません。(笑)

結論は、私が購入したのはフル互換と言うfake品だったということ。

9. fully互換でnRF24XXシリーズ

商品説明の9項の記載だと不正販売に当たるのかどうか限りなくグレーっぽい気がするが...本家にも互換製品があるのでこの説明だとほとんどの人が勘違いするはず。

参考情報:
NORDIC NRF24L01+ – REAL VS FAKE
Variants and clones of the chip

世の中にこんなに多くのfake品が出回ってるなんて。ぜんぜん知らなかった...(-_-;)
日本でもamazonやらaitendoなどあちこちで入手できるようになったが安いのはまず間違いなくfake品だと疑ったほうがいいかも。安いからといって安易に手を出すのは世の中のためにならないだけでなく自分のお金と時間を無駄にすることになる。

[2018-02-16]
たまたま手元に純正品があったのでリトライ動作を検証してみたがドキュメント通りのタイミングとリトライ回数を確認することができた。参考まで。

【AUTO-ACKリトライ動作(純正品)】