複数のタブに配置されたSerial outが干渉し動作異常

1.概要

Node-REDのフローをいくつも作っていく時には、フローに新規タブを追加して、新しいノードを配置していきます。複数のタブに配置したMSMへのSerial outノードが干渉を起こし、期待した動作にならないという事例が発生したので事例として紹介します。
対策は、同一の出力ポートを持つSerial outノードを、一つのフローの中に複数配置しない。対策は、Linkノードを使って、1か所から出力されるようにすることです。

2.具体例

以前に開発したflow1から30秒毎にrfcomm0に信号が出力されるため、新たに作ったflow2の10秒毎の動作が時々おかしくなります(図1)。
対策として、図2のようにSerial outノードはフローの中で1か所のみとし、あらかじめ干渉が分かる構成にします。

3.参考

Serial outノードで動作がおかしくなった案件で、出力の区切り文字をしてしなかったことが原因だったことがあります。上の対策で駄目な場合は、確認してみてください。