obniz BoardはWi-Fiを使ってobniz Cloudに常時接続します。
利用できるWi-Fiの規格はスペックを御覧ください。
obniz BoardのWi-Fiは現在のバージョンでPROXYとVPNには対応しておりません。
obniz Boardは起動後保存された設定を元にWi-Fiに接続しに行きます。
以下の順番に接続を行います。
設定済みのWi-Fiが見つからない場合はディスプレイにWi-Fi接続画面が表示されます。
Wi-Fi接続画面では、まずスイッチの位置を知らせるアニメーションが出て、その後SSID一覧が表示されます。この状態でobniz Boardは設定操作を待っています。以下の方法で設定が可能です。
1. obniz Boardのディスプレイとスイッチを使った設定
パスワード入力はSSID選択後にスイッチを使って行います。
詳しくはクイックスタートを御覧ください。
この方法ではDHCPが有効なWi-Fiにのみ接続が可能です。
2. obniz Boardが出力するWi-Fiに接続してブラウザから設定 (obnizOS 2.1.0以降)
上記画面が表示された状態でobniz BoardはWi-Fiを出力しています。そこにスマートフォンなどから接続することでSSIDの選択と、パスワードや固定IP設定などが行なえます。
2-1 obniz BoardのWi-Fiに接続
obniz Boardが出力するWi-Fiにスマートフォンなどで接続します。obniz-XXXXXXXX
といった名前のWi-Fiが出力されます。
2-2 パスワード入力
そのまま端末からブラウザを開き1.2.3.4またはhttp://1.2.3.4と入力し設定ページを開くと設定画面が開きます。
接続したいWi-FiのSSIDをプルダウンから選択し、パスワードを半角英数で入力します。
完了したら「Connect」ボタンを押します。
ブラウザは「ページが開けません」となりますがobniz Boardは教えられた情報を元に接続を開始します。成功すればオンラインとなり、失敗した場合は再度元の状態に戻ります。
固定IPを設定したい場合は「Option Setting」を開きます。ここで
の設定が可能です。この中の1つだけを設定することはできません、全てへの値の入力が必要です。
Wi-Fi設定はobniz Boardの内部容量の許す限り保存されます。上限に達した場合、古いものから設定は削除されます
obniz Boardに保存されたWi-Fi設定を自分から削除することも可能です。
obniz Boardのスイッチを押した状態で電源を投入することでメニューが表示されます。
その中からWi-Fi Resetを選ぶことで、すべてのWi-Fi設定を忘れさせることができます。
obniz BoardのMacアドレスはobniz Boardの電源をスイッチを押しながら入れることで表示されるメニューから「DisplayInfo」を選ぶことで表示できます。
obniz Boardは設定済みのWi-Fiに接続できる限り常にobniz Cloudに接続し、接続を維持します。
接続時には工場出荷時に設定されたobniz idと秘密鍵(公開鍵はobniz Cloudに設定済み)を使いobniz Cloudと認証の後、接続します。
通信方式はWebSocket(ws://)のみ選択可能です。利用しているobnizOSとSDKによります。
また、通信路上でやり取りされるのはjsonではなくobniz Cloud独自のプロトコルとなっています。
obniz Boardはクラウド側の設定で、接続を行うクラウドのリージョン設定が可能です。これにより最も近い大陸のクラウドを選択することで、cloud API利用時のレイテンシを改善できます。標準では「東アジア」となっています。
詳しくはクラウドコンソール御覧ください。
接続は様々な理由(Wi-Fiの接続断、ISPの障害、obniz Cloudのメンテナンス等)により切断される可能性があります。接続が切れた場合はobniz Boardは自動的に再接続を行います。また、obniz Cloudの1つのリージョン全体が利用不可な場合は、別のリージョンへの接続も試みます。
obniz Boardはクラウドとの接続後に、自身でもWebSocket接続を受け付けるようになります。
SDKを使うことで自動的に意識することなく、obniz Boardと直接P2P接続を行います。
このP2P通信は同一ネットワークにいると推定される場合のみクラウドにより仲介され、obniz BoardのIPの通知などがSDKに対して行われます。
通信方式はWebSocket(ws://)のみ選択可能です。
また、通信路上でやり取りされるのはjsonではなくobniz Cloud独自のプロトコルとなっています。