＝＝＝ 上り下り送信を行う子機のデモ ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝

本デモンストレーションでは、電池駆動の子機を想定し、子機からデータを送信後、ネットワークからの
メッセージを受信し、メッセージ受信が終了した時点でスリープします。

■ ネットワーク参加時の上位ノード探索の最適化
通常の動作では、電源投入時上位ノードを探索し、データを送信すべき親機もしくは中継機を発見し、
スリープ復帰時には中継機にダミー通信を行い、失敗すれば再探索する手続きを取ります。

本デモではこの手続きを省略する例を紹介します。

EndDevice.c の vProcessEventCore
  E_STATE_APP_WAIT_NW_START_BOOT状態
    ネットワーク開始待ちのディレー（必須ではないが、同時電源投入時の混雑を避ける）
    ToCoNet_Nwk_bInit(), ToCoNet_Nwk_bStart() により初回ネットワーク参加を実施

    ここで設定パラメータに以下を追加しています。.u8ResumeOpt を 0x01 にすると、
    起床時の ToCoNet_Nwk_bResume() 時にダミー通信を行わず、通信先が存在すると
    仮定します。.u8Second_To_Relocate を 0xFF とすると、定期的に行うダミー通信
    を省略します。

      sAppData.sNwkLayerTreeConfig.u8ResumeOpt = 0x01;
      sAppData.sNwkLayerTreeConfig.u8Second_To_Relocate = 0xFF;

    これらのオプションは通信相手先が通信不能になった場合に、問題となります。
    このため、通信の失敗などを材料に明示的に再スキャンするコードを含めます。

  E_STATE_IDLE状態
    スリープ起床時の処理ですが、sAppData.u8failct により、通信の失敗回数の蓄積
    に応じて、ToCoNet_Nwk_bResume() を実行するか、再度スキャンし直すかを決定し
    ています。

■ メッセージプールの要求とデータ送信を同時に行う API 関数の利用
メッセージプールの要求とデータ通信はほぼ同時に実施されますが、このような通信を行うと上りと
下りの送受信が入り乱れることになり、通信の成功率が低下します。このため、データ送信に加え
メッセージプールの要求を行う API 関数を利用しています。本デモでは、３スロット分のプール
を一度に要求しています（必要無ければ１スロットとしてください）

  ToCoNet_MsgPl_bRequest_w_Payload_to_Parenet()


＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝