2つの異なるRFプラットフォーム(Arm7TDMIホストからSPIを介して制御されるCC2358およびAtmel AT86RTxx)でoT-cliを稼働させてください。実際のコンパイル、リンク、またはロードの問題はありません。すべてがうまく見えます。私はスキャンし、空中のすべてのデバイスを見ることができます。リーダー/ルータはどのように認識され登録されていますか?
しかし、「開始」コマンドが発行されたとき、何らかの理由で各デバイスの状態が「リーダー」になります - ルーターはありません。それぞれMLEメッセージを送信していますが、デバイスがMLEを受信すると、ルータリストに入力されませんでした。これはの行2015のテストがmle_router.cpp
で失敗します。
私の状況についての更新。まず第一に、Wireshark経由で航空交通を監視する経験があった人はいますか?私はwiresharkによって解読されたMLE UPDパケットがUPDチェック合計が間違っていることを示していることに気付きました。この状態は、ターゲット、TI、Atmelの両方に存在します。どんな場合でも、これはルーターテーブルが作成されていない理由です。受信チェックサムチェックが失敗します。
:
CCAは、3つのモードを持っていますか? – urman
こんにちは "ウルマン"、どういう意味ですか?データシートごとにSPIコントロールを実装しました。マジックなし。もちろん、otxxxコールバックへのインターフェースはやや面倒だったが、クラスではない。またはあなたは特定のものを持っていましたか?ところで、ホストはDresden elektroniks deRF7arm Gatewayです。どんな場合でも、私が今決定したことは、デバイスがmleコマンドのLink Requestに応答していないことです。TLVの値が0x15で、rfcを正しく読み取れば0x00 ==送信元アドレスであるはずです。 - それは41であり、フレームには43バイトあります。 –