start
- start()
- start(HardwareSerial* serial)
obnizOSを開始します。
引数
- serial : obnizOSのログを出力するために使用します。NULLをいれるとログを出力しないようにできます。デフォルトでは、Serialに出力します。
返値
intで返値があります。
- 0 : OK
- -1 : id値エラー
- -2 : key値エラー
- -3 : 認証エラー
end
- end()
obnizOSを終了します。ネットワークから切断します。
引数
なし
返値
なし
pinReserve
- pinReserve(uint8_t pin)
obnizOSから制御されないようにIOの使用権を占有します。
次の関数ではIOを自動的に占有します。
- pinMode
- wire.begin
- analogRead
占有していない場合には、obnizOSが起動する際や切断時(切断時にリセットを無効にする場合は次の設定が必要 reset_obniz_on_ws_disconnection: false
) にIOのリセットが行われ、プラグインから正常に制御できなくなる可能性があります。
引数
- pin: 実際に使用するIOを指定します。0-40の値が設定できます。
返値
なし
pinFree
- pinFree(uint8_t pin)
IOの使用権を解放します。
引数
- pin: 実際に使用するIOを指定します。0-40の値が設定できます。
返値
なし
commandSend
- commandSend(uint8_t* data, uint16_t length)
コマンドのデータを送信します。
引数
- data: 送信データの配列
- length : 送信データの長さ
返値
なし
commandReceive
- commandReceive(CallbackCommandFunction func)
コマンドのデータを受信します。コールバック関数が必要です。
引数
- func : コールバック関数を設定します。
void func(uint8_t* data, uint16_t length)
返値
なし
サンプルプログラム
void onCommand(uint8_t* data, uint16_t length){
Serial.println("\nonCommand");
Serial.write(data,length);
Serial.println("\nEnd onCommand");
}
obniz.commandReceive(onCommand);
onEvent
- onEvent(CallbackEventFunction func)
オフラインやオンラインになったときにイベントを取得できます。コールバック関数が必要です。
引数
- func : コールバック関数を設定します。
void func(os_event_t event, uint8_t* data, uint16_t length)
返値
なし
イベントの種類
Network系イベント
- ネットワーク接続
PLUGIN_EVENT_NETWORK_HARDWARE_CONNECTED
- obnizクラウド接続
PLUGIN_EVENT_NETWORK_CLOUD_CONNECTED
- ネットワーク切断
PLUGIN_EVENT_NETWORK_HARDWARE_DISCONNECTED
- obnizクラウド切断
PLUGIN_EVENT_NETWORK_CLOUD_DISCONNECTED
- WiFiスキャン
PLUGIN_EVENT_NETWORK_WIFI_SCANNING
- WiFi未発見
PLUGIN_EVENT_NETWORK_WIFI_NOTFOUND
- WiFi接続中
PLUGIN_EVENT_NETWORK_WIFI_CONNECTING
- WiFiアクセスポイントモード時接続イベント
PLUGIN_EVENT_NETWORK_WIFI_SOFTAP_CONNECTED
- WiFiエラー
PLUGIN_EVENT_NETWORK_WIFI_FAIL
その他
- その他エラー
PLUGIN_EVENT_FAIL
- OTA開始
PLUGIN_EVENT_OTA_START
- OTA終了
PLUGIN_EVENT_OTA_END
- OTAエラー
PLUGIN_EVENT_OTA_ERROR
サンプルプログラム
void onEvent(os_event_t event, uint8_t* data, uint16_t length) {
switch (event) {
case PLUGIN_EVENT_NETWORK_HARDWARE_CONNECTED:
case PLUGIN_EVENT_NETWORK_CLOUD_CONNECTED:
case PLUGIN_EVENT_NETWORK_HARDWARE_DISCONNECTED:
case PLUGIN_EVENT_NETWORK_CLOUD_DISCONNECTED:
case PLUGIN_EVENT_NETWORK_WIFI_SCANNING:
case PLUGIN_EVENT_NETWORK_WIFI_NOTFOUND:
case PLUGIN_EVENT_NETWORK_WIFI_CONNECTING:
case PLUGIN_EVENT_NETWORK_WIFI_SOFTAP_CONNECTED:
case PLUGIN_EVENT_NETWORK_WIFI_FAIL:
case PLUGIN_EVENT_FAIL:
case PLUGIN_EVENT_OTA_START:
case PLUGIN_EVENT_OTA_END:
case PLUGIN_EVENT_OTA_ERROR:
break;
}
}
obniz.onEvent(onEvent);
getId
- getId()
obnizIDを取得できます。obnizOSを開始している必要があります。
開始直後や未実行の時に実行するとNULLが返ります。
引数
なし
返値
const char* : obnizIDが文字列で返されます。
getOsVersion
- getOsVersion()
obnizOSのバージョンを取得できます。
引数
なし
返値
const char* : obnizOSのバージョンが文字列で返されます。
isRunning
- isRunning()
obnizOSが実行されているか取得できます。
引数
なし
返値
bool : true時実行中
isOnline
- isOnline()
オンラインかどうか取得できます。
引数
なし
返値
bool : true時オンライン