NEQTO Docs
  • Languages icon日本語
    • English
  • ドキュメント
  • API
  • FAQ

›ソフトウェア仕様

Getting Started

  • NEQTO Hello World!
  • Tutorial Step 1. NEQTO Console設定
  • Tutorial Step 2. デバイス設定とサービスの開始 (NEQTO Bridge)
  • Tutorial Step 2. デバイス設定とサービスの開始 (STM32 Discovery)
  • Tutorial Step 2. デバイス設定とサービスの開始 (SPRESENSE)
  • Tutorial Step 3. スクリプトを使ったアプリケーション開発

NEQTO

  • NEQTO アカウント登録
  • サブアカウント
  • APIの利用
  • GCP用NEQTO CloudSync
  • NEQTO Engineファームウェアリスト
  • お問い合わせに関するガイドライン

NEQTO Console

  • はじめに
  • 基本情報
  • 管理者専用の操作
  • デバイス管理
  • 一括登録
  • スクリプト
  • アクション & コンタクト
  • NEQTO Apps

    • NEQTO Apps について
    • NEQTO Infinitypool
    • NEQTO Insights
    • NEQTO Custodia
    • NEQTO Flow
  • Machine Driver
  • 推奨ブラウザ
  • 請求情報

SPRESENSE

    ハードウェア仕様

    • 01. About Spresense

    ソフトウェア仕様

    • 01. 動作フロー
    • 02. 初期インストール
    • 03. Spresense Wi-Fi 初期設定
    • 04. Spresense LTE-M 初期設定
    • 05. デバッグログ取得方法
    • 06. システムLED動作
    • 07. イベントメッセージ
    • 08. ファームウェア更新方法

    neqto.js

    • 01. About neqto.js
    • 02. Log
    • 03. Timers
    • 04. HTTP
    • 05. HTTPS
    • 06. MQTT
    • 07. Secure
    • 08. Storage
    • 10. RTC
    • 12. GPIO
    • 13. UART
    • 14. SPI
    • 15. I2C
    • 16. ADC
    • 17. Camera
    • 18. Utils
    • 19. nqSpresense
    • 20. nqService
    • 21. nqMqtt
    • 22. nqFOTA
    • 23. nqWiFi
    • 24. nqLte

STM32 Discovery

    ハードウェア仕様

    • 01. About STM32 Discovery Kit (B-L4S5I-IOT01A)

    ソフトウェア仕様

    • 01. 動作フロー
    • 02. 初期インストール
    • 03. STM32 Discovery Wi-Fi 初期設定
    • 04. デバッグログ取得方法
    • 05. システムLED動作
    • 06. イベントメッセージ
    • 07. ファームウェア更新方法

    neqto.js

    • 01. About neqto.js
    • 02. Log
    • 03. Timers
    • 04. HTTP
    • 05. HTTPS
    • 06. MQTT
    • 07. Secure
    • 08. Storage
    • 09. Sleep
    • 10. RTC
    • 11. UserSW
    • 12. GPIO
    • 13. UART
    • 14. SPI
    • 15. I2C
    • 16. ADC
    • 18. Utils
    • 19. nqDiscovery
    • 20. nqService
    • 21. nqMqtt
    • 22. nqFOTA
    • 23. nqWiFi

NEQTO Bridge

    ハードウェア仕様

    • 01. NEQTO Bridge Module
    • 02. NEQTO Bridge Wi-Fi Module
    • 03. NEQTO Bridge LTE-1 Module
    • 04. NEQTO Bridge LTE-M/NB Module
    • 05. NEQTO Bridge IO Board
    • 06. NEQTO Bridge Digital IO Board
    • 07. NEQTO Bridge Connector Board

    ソフトウェア仕様

    • 01. 動作フロー
    • 02. NEQTO Bridge Wi-Fi Module 初期設定
    • 03. NEQTO Bridge LTE Module 初期設定
    • 04. デバッグログ取得方法
    • 05. システムLED動作
    • 06. イベントメッセージ
    • 07. ファームウェア更新方法

    neqto.js

    • 01. About neqto.js
    • 02. Log
    • 03. Timers
    • 04. HTTP
    • 05. HTTPS
    • 06. MQTT
    • 07. Secure
    • 08. Storage
    • 09. Sleep
    • 10. RTC
    • 11. UserSW
    • 12. GPIO
    • 13. UART
    • 14. SPI
    • 15. I2C
    • 16. ADC
    • 17. BLE
    • 18. Utils
    • 19. nqBridge
    • 20. nqService
    • 21. nqMqtt
    • 22. nqFOTA
    • 23. nqWiFi
    • 24. nqLte
    • 25. nqLAN
    • 26. nqEx

neqto.js Libraries

  • About neqto.js Libraries
  • UART

    • GM65 Barcode Reader
    • SRF Ultrasonic Range Finder - Serial Mode

    I2C

    • HTS221 v2 Temperature and Humidity Sensor
    • LIS2DW12 v2 Accelerometer
    • SRF Ultrasonic Range Finder - I2C Mode
    • [Archive] HTS221 Temperature and Humidity Sensor
    • [Archive] LIS2DW12 Accelerometer

    Utils

    • RTC Alarm Synchronized Scheduler

    Integration

    • AWS S3 v2
    • AWS IoT Core v2
    • Azure IoT v2
    • GCP IoT Core
    • [Archive] AWS S3
    • [Archive] AWS IoT Core

neqto.js Snippets

  • About neqto.js Snippets
  • DataDog
  • Dropbox
  • Google Sheets
  • InfluxDB
  • Oracle Cloud Object Storage
  • Salesforce
  • SAP Cloud Platform Internet of Things
  • Splunk
  • Niagara

Release Notes

  • NEQTO Console アップデート
  • NEQTO Firmware (Bridge Wi-Fi/LTE Module) リリース
  • NEQTO Firmware (STM32 Discovery Wi-Fi) リリース
  • NEQTO Firmware (Spresense Wi-Fi/LTE-M) リリース

01. 動作フロー

NEQTO Bridgeの動作フロー概要を説明します。
以降、"NEQTO Bridgeデバイス"を"デバイス"と称します。

※図中の赤い枠は、動作モード説明の開始点を示しています。

デバイスには、大きく分けて以下のモードがあります。

スクリプト実行モード
デバイスの基本動作で、動作スクリプトを実行するモードです。
セーフモード
動作スクリプト実行中に、throwやSyntax errorなどにおいて例外が発生した場合、動作スクリプトの修正を待つモードです。
ファームウェア更新モード
デバイスのファームウェア更新、及びNEQTO Machine Driverを使用してユーザーデバイスのファームウェア更新を行うモードです。

以下に各モードの動作フローを説明します。



スクリプト実行モード

通常起動動作

動作スクリプト実行モードは、デバイスの基本動作です。
デバイスは、起動後に初期化を行います。
初期化後、ネットワークに接続します。
ネットワーク接続後、NEQTO Consoleにアクセスし認証を行います。
認証が完了すると、動作スクリプトをダウンロードし実行します。

ネットワーク未接続時の起動動作

デバイス起動時にネットワーク接続できなかった場合、ネットワーク接続をリトライします。
この状態では、動作スクリプトは実行されないのでご注意ください。
ネットワーク設定や電波環境などを見直し、デバイスを再起動してください。

ノード未登録時の起動動作

NEQTO Console 上ノード未登録の状態で、デバイスを起動した場合、認証で失敗します。
この状態では、動作スクリプトは実行されないのでご注意ください。
ノード登録を確認し、デバイスを再起動してください。

スクリプトの再ロードの動作

スクリプトの再ロードは、一度動作スクリプトを終了し、更新された動作スクリプトをダウンロードして実行する動作となります。

基本的に、メインルーチンが全て完了した状態かつ、タイマやnqMQTTオブジェクト等、コールバック待ちを行うリソースが全て解放されている状態の場合、再ロードが行われます。

一方、リソースの解放を待たずに、再ロードする方法が2つあります。

  1. NEQTO Consoleからのトリガーコマンド(プッシュ通知)契機

    NEQTO Console上からトリガーコマンドを使用して、"スクリプトを再ロード"を起動します。
    デバイスはNEQTO Consoleから"スクリプトを再ロード"の指示を受信すると、強制的に動作スクリプトを終了し、スクリプトの再ロード動作を行います。
    動作スクリプトを更新する場合や、遠隔から意図的にスクリプトを再起動させたい場合等に使用します。

  2. 既定のハッシュタグを含んだthrow文契機

    下記、throw文を実行すると、動作スクリプト内から自発的に再ロードを起動させることができます。
    定期的にスクリプトの更新がないか確認を行う場合や意図的にスクリプトを再起動させたい場合等に使用します。

    throw '#nqEXIT';
    throw new Error('#nqEXIT');

スタンバイモードの動作

動作スクリプト上から下記メソッドを使用して、デバイスをスタンバイモードに遷移させることができます。
スタンバイモードは、電源オフに近い状態でデバイスが待機状態となります。
レジューム条件が発生すると、通常起動動作から再び開始されます。(通常レジューム)

1. sleep.setStandby() (推奨)

ネットワーク通信をシャットダウンしてから、スタンバイモードに遷移します。
待機電力を最も削減できます。

2. sleep.setStandbySync()

ネットワーク通信を維持した状態で、スタンバイモードに即時遷移します。
ネットワーク通信が維持されているため、sleep.setStandby()メソッドを使用した場合と比較して、スタンバイ時の消費電力が増加します。他に機能的な違いがないため、sleep.setStandby()メソッドを使用することを推奨します。

スタンバイモードのオフラインレジューム動作

上記、スタンバイモードメソッドには「オフラインレジューム」オプションがあります。
レジューム条件が発生すると、デバイスは再起動し、ネットワーク接続をスキップして、保持されている動作スクリプトをすぐに実行します。
オフラインレジュームでは、通信機能を要する機能を使用することができません。

尚、ユーザースイッチが押下された時のみ、強制的に通常レジュームとなります。(※1)

スタンバイモードのレジューム条件

  • ウェイクアップトリガ設定を有効にしたポートでエッジ変化を検出した時
  • ユーザースイッチが押下された時 (※1)
  • RTCアラームが発生した時

ストップモードの動作

動作スクリプト上から下記メソッドを使用して、デバイスをストップモードに遷移させることができます。
ストップモードは、スクリプトの実行が一時停止された状態でデバイスがスリープ状態になります。
レジューム条件が発生すると、スクリプト実行が再開されます。又、必要に応じてネットワークの再接続が自動的に開始されます。

1. sleep.setStop()

ネットワーク通信をシャットダウンしてから、ストップモードに遷移します。
待機電力を削減することができます。
但し、レジューム時にネットワークの再接続が必要となるため、通信機能が使用できるまで時間を要します。

2. sleep.setStopSync() (※2)

ネットワーク通信を維持した状態で、ストップモードに即時遷移します。
ネットワーク通信が維持されているため、待機時の消費電力は増加しますが、レジューム後、すぐに通信機能を使用できます。

ストップモードのレジューム条件

  • IOポート入力割り込み設定されたポートでエッジ変化を検出した時
  • ユーザースイッチポートでエッジ変化を検出した時
  • RTCアラームが発生した時
  • LTE通信切断が発生した時 (NEQTO Bridge LTEモジュールかつsleep.setStopSync()を使用した場合のみ) (※2)



セーフモード

セーフモード動作

動作スクリプト実行中に、throwやSyntax errorなどにおいて例外が発生した場合、動作スクリプトの修正を待ちます。この状態をセーフモードと呼びます。
動作スクリプトを確認、修正し、NEQTO Console上からトリガーコマンドを使用して、"スクリプトを再ロード"を起動します。
デバイスは、NEQTO Console から"スクリプトを再ロード"の指示を受信すると、更新された動作スクリプトをダウンロードし実行します。
また、デバイスはセーフモード中に自ら動作スクリプトの更新確認を行います。
確認を行う間隔は、
1分、2分、4分、8分、16分、30分...と延びていき、それ以降は30分間隔です。



ファームウェア更新モード

NEQTO Machine Driverを使用したユーザーデバイスのファームウェア更新動作

デバイスはNEQTO Console からMachine Driver更新指示を受信すると、Machine Driverスクリプトをダウンロードし実行します。
Machine Driverスクリプトが、ファームウェアイメージファイルのダウンロードやユーザーデバイスのファームウェア更新を行います。
Machine Driverスクリプト処理が終了すると、動作スクリプト実行に戻ります。

デバイスファームウェア更新動作

デバイスはNEQTO Console からファームウェア更新指示を受信すると、ファームウェアをダウンロードし、ファームウェア更新を行います。
ファームウェア更新が完了すると、自動的に再起動が行われ、通常動作に戻ります。
尚、既にデバイスのファームウェアが更新済みであった場合、ファームウェア更新処理はスキップされます。

注意

ファームウェア更新中は、デバイスの電源を切らないでください。



システム時刻同期について

デバイスはNEQTO Consoleから時刻情報を取得し、自動的に時刻同期します。
時刻同期が行われるタイミングは下記となります。

フェーズ時刻更新タイミング
NEQTO Console間認証時デバイス起動時等、認証シーケンスが実行された時
動作スクリプト実行中定期的に1日1回
nqServiceオブジェクトの時刻補正メソッドを実行した時任意タイミング



Updated: 2021-02-19
← 前次 →
  • スクリプト実行モード
    • 通常起動動作
    • ネットワーク未接続時の起動動作
    • ノード未登録時の起動動作
    • スクリプトの再ロードの動作
    • スタンバイモードの動作
    • ストップモードの動作
  • セーフモード
    • セーフモード動作
  • ファームウェア更新モード
    • NEQTO Machine Driverを使用したユーザーデバイスのファームウェア更新動作
    • デバイスファームウェア更新動作
  • システム時刻同期について
NEQTO とはニュースサービスFAQプライバシーポリシー}
NEQTO Console
はじめに基本情報管理者専用の操作デバイス管理NEQTO Apps
NEQTO Bridge
NEQTO Bridge ピン配置NEQTO Bridge Wi-Fi ModuleNEQTO Bridge LTE-1 Moduleデバッグログ取得方法イベントメッセージ
APIのドキュメント
APIの利用グローバル APIリージョン APIAPIサービス利用規約
Jigsaw, Inc.
© 2022 JIG-SAW INC.