aboutme.json
{
"name": "Kenzo Nagahisa",
"twitter": "@kenzonag",
"screen_name" : "けんぞう",
"interest": [
{
"topic": "電子工作",
"level": "全くの初心者"
},
{
"topic": "Elixir/Nerves",
"level": "永遠の初心者"
}
]
}
最近全然サボってますが・・・BLOGも
qiita.com/nagahisa,
medium.com/@kenzonag
Wifiが不安定なので有線LANもつけました
「今回、ルネサスエレクトロニクス株式会社様の全面的なご協力のもと、
「がじぇっとるねさすプロジェクトのIoT Edgeデバイス
「GR-ROSE(ジーアール・ローズ)」と周辺部材をどんとご提供頂き、
コンテストを開催する運びとなりました!」
#ALGYAN #がじぇるね
— けんぞう (@kenzonag) September 3, 2021
可愛いボードが届きましたー。
が、がんばらねば(^^; pic.twitter.com/FGuDnYXB2c
e2studioに出鼻を挫かれる
先日のMeetUpのプログラムがe2studioでビルド成功~
— しろいとり子 (@siroitori0413) September 17, 2021
公開されたプログラムをインポート後に抜けてるパスを追加したりいくつか変更必要でしたが、みなさんこんなのは楽勝な感じなのでしょうか…🤔←少し手間取った人
毎日仕事でEclipseをJavaで使っているのでこのIDEは使いやすいです😀
#ALGYAN pic.twitter.com/P2NC8gATtn
色々助けて何とか動いたのですが
・・・
普段Mac使ってるので
結局Webコンパイラにしました:p
BeeBotte Arduino Tutorialやってみる
This tutorial presents how Beebotte can be used
to control a led connected to an Arduino board.
We will use MQTT protocol to connect Arduino
to Beebotte to subscribe to messages to turn ON or OFF the led.
コミュニティに泣きついたり
WebコンパイラでBeeBotte?
ArduinoJsonとかの
バージョンに悩んだり
ラジバンダリ
・・・
有線LANにトライする
Ethernet単体では動くけど
PubSubライブラリが動かない
今回もコミュニティに泣きついたら
有線固定IPでMQTT
有線LANでのPubSubClientライブラリ向けのClientクラスの実装は
していません。
MQTTサンプルで以下のインスタンスを作ってますが、
これに相当するEthernetのClientはないです。
すみませんが、EthernetクラスはROS用、AWS用の残骸のようなものなので、
使用できません。
・・・
人生、そう甘くはない
有線LANは
赤外線を受信してみる
GR-KURUMIの記事を参考に
GR-KURUMIの機能を使う 外部割り込み編
受信のスケッチ作って
TVリモコンで「1、8、電源」を押下
remote control test.
type NEC:sz=4 code:40,bf,01,fe,
type NEC:sz=4 code:40,bf,08,f7,
type NEC:sz=4 code:40,bf,12,ed,
我が家のTV電源は
「type NEC:sz=4 code:40,bf,12,ed,」
を送れば良いみたい
赤外線を送信してみる
GR-KURUMIの記事を参考に
GR-KURUMIの機能を使う 外部割り込み編
送信のスケッチ作ってループ実行
remote control test.
TV on.
TV on.
TV on.
TVリモコンはon/off同じ信号なので
TVがオンオフ
外部割込みで赤外線送信
送信信号定義
// Target IR data.
const unsigned char TVOnOff[] = {0x40, 0xbf, 0x12, 0xed};
setup()でsetCallback
client.setServer(BBT, 1883);
// Set the on message callback
// onMesage function will be called
// every time the client received a message
client.setCallback(onMessage);
onMessage()でデータ解析してOKなら送信
// Send TV-ON
Serial.println("TV on.");
irRemocon_txNEC( TVOnOff, sizeof(TVOnOff) );
BeeBotte情報を解析する
Google Home→IFTTT→BeeBotte
こんなデータで取得できるので
それをGR-ROSEで解析
URL: https://api.beebotte.com/v1/ゴニョゴニョ
Method: POST
Content Type: application/json
Body : {“data":[
{"room":"living","device":"{{TextField}}","action":"on"}]
}
こんな感じ
void onMessage(char* topic, byte* payload, unsigned int length) {
// decode the JSON payload
StaticJsonDocument<256> doc;
// Test if parsing succeeds.
DeserializationError error = deserializeJson(doc, payload);
if (error) {
Serial.print(F("deserializeJson() failed: "));
Serial.println(error.c_str());
return;
}
const char* room = doc["data"][0]["room"];
const char* device = doc["data"][0]["device"];
const char* action = doc["data"][0]["action"];
スケッチにまとめました
GitHub URL
https://github.com/Nagahisa/20211113-algyan
感想とお礼
ラズパイpythonはコピペで動いてBlackBox
もしA*mだったら今回も同じでした
がじぇるねさん・先人の皆様に感謝
こんな機会を与えて頂いた小暮さんに大感謝
今後はGR-ROSE本来の使い方 "ROS"にも
挑戦したいです(有線LAN使えるみたいだし^^)
GR-ROSE+Azureを使って
IoTシステムのアイデアを具現化
Webコンパイラ: http://tool-cloud2.renesas.com/
→ 13.78.8.20
Azureで動いております