search
LoginSignup
0

More than 5 years have passed since last update.

posted at

updated at

Nefry REST API一覧まとめ

NefryをもっとWeb系のエンジニアでも触れるように、REST APIでハードウエアをいじれるようにしてみました!

今回はそのRESTAPIで叩ける機能をまとめてみましたのでご覧ください。
こちらはNefry library version 2.2.2以上の場合使用できます。

Nefryとは

USBに直接繋げられたり、Webページ上でWiFiの設定やESP8266の端末設定ができるようになっていたりとIoTをより簡単に扱えるものになっています。
dotstudioさんにて販売中です!!

詳しくはLigブログで記事をいくつか載せていますのでご覧ください。

自作したオリジナルIoTデバイス「Nefry」とインターネットを繋いでみた

Webサービス同士を連携できる「IFTTT」と自作IoTデバイスを繋いで生活を便利にしてみた

API一覧

NefryRESTAPIは基本的にjsonのパケットで値を返します。
今後の実装次第でバージョンが上がっていきます。

Passwordをつけるもできます。(パスワードの入れ方は別の記事で紹介します。)

GPIO(入出力ピン)

Nefryについている入出力ピンを制御することができます。

入力

Nefryの入出力ピンがどうなっているか取得できます。

デジタル

NefryのD0-D5の入力を取得できます。

URL : /api/1.0/digitalRead
引数 : pin(範囲:D0-D5)

具体例 : /api/1.0/digitalRead?pin=D1

返り値 : {"mode":"digitalRead","pin":"D1","value":0}
pin名と状態がvalueに含まれて返答されます。valueの範囲は0(low)-1(high)となります。

アナログ

NefryのA0の入力を取得できます。

URL : /api/1.0/analogRead
引数 : なし

具体例 : /api/1.0/analogRead

返り値 : {"mode":"analogRead",""value":0}
状態がvalueに含まれて返答されます。valueの範囲は0-255となります。

出力

デジタル

NefryのD0-D5ピンの出力を制御できます。HIGH(3.3v)かLOW(0v)のどちらかを出力します。

URL : /api/1.0/digitalWrite
引数 : pin(範囲:D0-D5) state(範囲:HIGH(1)-LOW(0))

具体例 : /api/1.0/digitalWrite?pin=D1&state=HIGH

返り値 : {"mode":"digitalWrite","pin":"D1","value":1}
pin名と状態がvalueに含まれて返答されます。

アナログ(PWM)

NefryのD0-D5ピンの出力を制御できます。1023(3.3v)から0(0v)の指定された出力します。

URL : /api/1.0/analogWrite
引数 : pin(範囲:D0-D5) state(範囲:0-1023)

具体例 : /api/1.0/analogWrite?pin=D1&state=500

返り値 : {"mode":"analogWrite","pin":"D1","value":500}
pin名と状態がvalueに含まれて返答されます。

シリアル通信

シリアル通信の設定ができます。

設定

シリアル通信のバンドレートを設定できます。設定しないときは115200bpsのシリアル通信を行っています。

URL : /api/1.0/Serialbegin
引数 : band(バンドレートの指定を行います。デフォルト:115200bps)

具体例 : /api/1.0/Serialbegin?band=115200

返り値 : {"mode":"Serialbegin","band":115200}
状態がbandに含まれて返答されます。

入力

シリアル通信で入力された内容を返答します。コマンドを受けて1秒以内に受信したコマンドを返り値で返答します。

URL : /api/1.0/Serialread
引数 : なし

具体例 : /api/1.0/Serialread

返り値 : {"mode":"Serialread","message":"hello!"}
取得した内容がmessageに含まれて返答されます。

出力

シリアル通信で引数の内容を出力します。こちらは改行なし

URL : /api/1.0/Serialprint
引数 : message(送信したいメッセージ)

具体例 : /api/1.0/Serialprint?message=hello

返り値 : {"mode":"Serialprint","message":"hello"}
送信した内容がmessageに含まれて返答されます。

シリアル通信で引数の内容を出力します。こちらは改行あり

URL : /api/1.0/Serialprintln
引数 : message(送信したいメッセージ)

具体例 : /api/1.0/Serialprintln?message=hello

返り値 : {"mode":"Serialprintln","message":"hello"}
送信した内容がmessageに含まれて返答されます。

Nefry関数

Nefry Console

入力

Nefry Consoleで入力された内容を返答します。

URL : /api/1.0/Nefryread
引数 : なし

具体例 : /api/1.0/Nefryread

返り値 : {"mode":"Nefryread","message":"hello!"}
取得した内容がmessageに含まれて返答されます。

出力

NefryConsole+シリアル通信で引数の内容を出力します。こちらは改行なし

URL : /api/1.0/Nefryprint
引数 : message(送信したいメッセージ)

具体例 : /api/1.0/Nefryprint?message=hello

返り値 : {"mode":"Nefryprint","message":"hello"}
送信した内容がmessageに含まれて返答されます。

NefryConsole+シリアル通信で引数の内容を出力します。こちらは改行あり

URL : /api/1.0/Nefryprintln
引数 : message(送信したいメッセージ)

具体例 : /api/1.0/Nefryprintln?message=hello

返り値 : {"mode":"Nefryprintln","message":"hello"}
送信した内容がmessageに含まれて返答されます。

Nefry LED

NefryについているLEDの色を変更することができます。

URL : /api/1.0/NefrysetLed
引数 : r (範囲:0-255) g (範囲:0-255) b (範囲:0-255)

具体例 : /api/1.0/NefrysetLed?r=255&g=0&b=0

返り値 : {"mode":"NefrysetLed","r":255,"g":0,"b":0}
設定した値が返答されます。

I2C

準備段階

準備

I2C通信ができるように準備をします。

URL : /api/1.0/Wirebegin
引数 : なし

具体例 : /api/1.0/Wirebegin

返り値 : {"mode":"Wirebegin"}
Modeが返答されます。

アドレス指定

通信先のアドレスを指定し、通信の準備をします。

URL : /api/1.0/WirebeginTransmission
引数 : address(I2Cデバイスアドレス)

具体例 : /api/1.0/WirebeginTransmission?address=120

返り値 : {"mode":"WirebeginTransmission","address":120}
指定した内容が返り値に含まれて返答されます。

送信

送信

デバイスに対する送信を完了します。

URL : /api/1.0/Wirewrite
引数 : data(送信したいデータ)

具体例 : /api/1.0/Wirewrite?data=1

返り値 : {"mode":"Wirewrite","data":1}
送信した内容が返答されます。

デバイスへ送信完了の信号

デバイスに対する送信を完了します。

URL : /api/1.0/WireendTransmission
引数 : なし

具体例 : /api/1.0/WireendTransmission

返り値 : {"mode":"WireendTransmission","result":"success"}
送信した内容が成功したかどうかresultに含まれて返答されます。失敗の時も原因が挿入されます。

受信

デバイスへデータ要求処理

デバイスにデータを要求するのに使われる。データは、その後Wirereadを使って取得する。

URL : /api/1.0/WirerequestFrom
引数 : address(I2Cデバイスアドレス),count(要求するデータ数)

具体例 : /api/1.0/WirerequestFrom?address=105&count=1

返り値 : {"mode":"WirerequestFrom","address":255,"count":1}
設定した値が返答されます。

受信

データを読み取るときに使用します。

URL : /api/1.0/Wireread
引数 : なし

具体例 : /api/1.0/Wireread

返り値 : {"mode":"Wireread","data":""}
受信したデータが返答されます。

その他

version情報

NefryについているLEDの色を変更することができます。

URL : /api/version
引数 : なし

具体例 : /api/version

返り値 : {"mode":"version","version":"1.0"}
バージョン情報が返答されます。

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
What you can do with signing up
0