Lazurite 日本語リファレンス


SubGHz.setAckReq(on)


詳細

SUBGHZ_MSG SubGHz.setAckReq(bool on);

仕様

本関数は送信機側に設定をする関数で、データ送信時の無線制御信号内に含まれているACKの有効/無効を設定します。初期値はtrue(ACK有効)です。

通常のユニキャスト通信(1対1の通信)では受信機がデータを受け取った後、受信機はデータを受信したことを示すACKを返します。これによりデータを確実に相手に届けることが出来るのですが、一方でACKのやり取りをするとデータの送信間隔が長くなります。特にACKが返らなかった場合、送信機は再送を試みるのですが、その時は約500msの間隔で最大3回の再送を試みます。そのようになると1秒間に数回にわたりデータを取得するようなアプリケーションを実現することが出来ません。このようなアプリケーションを実現する場合、本関数でACKを無効にするとデータが届いたという確実性の確認を行うことが出来なくなりますが、安定した送信間隔でデータを送り続けることが出来るようになります。

なお、BroadcastとGroupcastは本設定と関係なく、自動的にACKが無効になります。

パラメータ

bool on

true:  ACK有効 (broadcastとgroupcastはACKが自動的に無効になります)
false:  ACK無効

戻り値

常時、SUBGHZ_OK

 

サンプル

なし