VitconBrokerComm

このモジュールは、Vitcon IOTサーバーと通信を行うことができます。

Class

・BrokerComm

Public Memeber Function

・void SetTimeout(uint32_t ms) : 通信Timeoutを設定します。単位ms. Timeout発生時
のサーバーとの接続を切断し、再接続を行います。
・void SetInterval(uint32_t ms) : 通信の成功後、次の通信までの待機時間を設定しま
す。単位:ms.
・void Run() : プロセス進行

Usage

BrokerCommクラスはコンストラクタでIOTItem配列と数、サーバーから割り当てられたdevice idとserial port1つを引数として要求します。

class BrokerComm
{
  public:
    .
    .
    BrokerComm(Stream *stream, const char *device_id, IOTItem **items, uint8_titem_count);
    .
    .

したがって、宣言時、少なくとも下記のようなコードが必要です。

IOTItem *items[ITEM_COUNT] = { &item1. &item2, … }; // your items
const char device_id[] = “12345678901234567890123456789012”; // your device id
BrokerComm comm(&Serial, device_id, items, ITEM_COUNT);

通信に使用するserial portは、コンストラクタでbeginを自動的行わないため、setupから手動で行います。使用baudrateは250000です。

void setup()
{
  Serial.begin(250000);
  .
  .
  .

Timeoutと interval 時間を設定します。設定しない場合default値は1000msです。

void setup()
{
  .
  .
  comm.SetTimeout(2000);
  comm.SetInterval(200);
  .
  .

loop 関数でRun()を実行すると自動的にサーバーとの通信が行われます。

void loop()
{
  .
  .
  comm.Run();
  .
  .

Restrictions

該当モジュールを使用するときはArduinoの遅延関数であるdelay()を呼び出すと、問
題が発生することがあります。時間遅延が必要な場合、

millis()

などの時間関数を応用して使用しなければなりません

Delay Example
BlinkWithoutDelay

GitHub-VITCON