0%

HubotとSlackのDockerイメージを使ってMQTTのPublishとSubscribeを実装してみます。Hubotのスクリプトはnpmパッケージをrequireしてプログラムを書くことができます。再利用性を考えるとコマンドは外部パッケージにした方がよいですが、カジュアルにscriptsディレクトリにデプロイして使うこともできます。MQTTブローカーに環境データをpublishするRaspberry Pi 2や、MQTTブローカーからメッセージをsubscribeしてLEDライトの電源を制御するBeagleBone Blackについては次回まとめようと思います。

Read more »

これまでにRaspberry Piと環境センサーから計測したデータをMeshbluのMQTTブローカーにpublishしたあとはfreeboardのダッシュボードに表示しました。今回はHubotとSlackを使ってインタラクティブなインタフェースを追加しようと思います。SlackはモダンなUIでWebhookや他のWebサービスとのインテグレーションがしやすいので便利に使えます。

Read more »

ーネルが3.8.13でもBeagleBone Blackで1-WireのDS18B20を使えるようにするのは結構面倒ですが、capemgrを使った方法が紹介されているのでなんとかなりそうです。DTSを記述後DTCでコンパイルして作成したDTBのバイナリを使ってpin muxしてピンの機能を変更します。Dallas one-wire temperature reading on BeagleBone Black with dto BeagleBone and DS18B20 Temp Sensor

Read more »

ことの始まりは1-WireセンサのDS18B20をBeagleBone Blackに接続しようとしたことです。SDカードにインストールしていたUbuntu 14.04はカーネルが3.14と新しくCapemgrが存在していません。dtb-rebuilderを使ってDTSを編集してビルドした後、/boot/uEnv.txtのDTBを書き換える必要があります。ところが書き間違えてSDカードからbootしなくなりました。なんとかSDカードは復旧したのですが、カーネルが3.8.13のDebian 7.8を入れ直した方がよさそうです。

Read more »

ES6で書くIsomorphicアプリのBoilerplateを調べました。いくつか手を動かしながら勉強していこうと思います。最初はなるべくシンプルなIsomorphicな動作を選びたいのですが、Reactアプリは複雑になりがちで周辺ツールも多くどの構成を選んだら良いか悩みます。Tutorial Setting Up a Simple Isomorphic React appのポストがとてもわかりやすいので写経していきます。

Read more »

今回はRaspberry Pi 2に配線した環境センサのBME280からMeshbluのブローカーにMQTTを使ってデータを送信してみます。。取得した温度、湿度、気圧のデータは、オープンソースのIoT用ダッシュボードのfreeboadに表示します。簡単にブラウザからリアルタイムのグラフを作成することができます。

Read more »

IoTのためのメッセージングプラットフォームのMeshbluを使いやすくするためにDocker Composeにまとめました。MeshbluはOctobluがオープンソースで開発をしています。MeshbluはMQTT、HTTP REST、WebSocket、CoAPなど複数のプロトコルを使って相互にブリッジすることができます。例えばRaspberry PiからMQTTでpublishして、ブラウザからWebSocketでsubscribeするといった使い方ができます。MQTTのsubscribeに対してREST APIからメッセージをPOSTすることもできるので、さまざまなデバイスやサービスを連係することができます。

Read more »

アボカドの種の水耕栽培を始めて1週間くらい経ちました。芽がでるまで1ヶ月くらいかかるようです。植物育成LEDライトはカビの防止と生育に効果があるみたいなので、半日照明を当てていたら乾燥しすぎて種にヒビが入ってしまいました。温度や湿度を見ながらLEDライトを当てる時間を調整する必要があります。LEDは電源コンセントにつながる普通のライトです。マイコンから制御する方法をいろいろ考えていると、USB連動電源タップとプログラムから制御可能なUSBハブを使うと上手くいきそうです。以下のポストを参考にさせていただきました。

Read more »