MQTTを試してみよう・・挫折・・・。

追記:Threadingのやり方で、当面のマルチタスクは実現できたので、MQTTをあえて試してみる必然性は当面消えた。下記はあくまでも、トライしてみた記録。特に有意義な情報なし。 自分が悩んでいることが、このように、他の人も困っていて、解決策が Python/Blynkでは難しそう(threadをうまく使いこなせばできるはずではあるが・・)なので、MQTTとやらに初挑戦して見ることにした。 MQTTの準備 今回、大変参考にさせていただいたのは、このサイトで、ここには、MQTTとは何?からリンクが貼ってあるので勉強になる。 自宅のRaspberry Pi やスマホ(Publisher) からメッ…

続きを読む →

Raspberry上でPythonでBlynkと同時に他の処理をさせてみた(threadingを使って実現)

背景 Raspberry上でIOTのツールを作成しているが、Blynkと同時に他の処理(ディスプレイの表示とか、時計を使った処理とか、タイマーを使った処理とか)を行おうとすると、なかなかうまくいかない。 ArduinoでCを使って Blynkを使う時には、 void loop() { Blynk.run(); timer.run(); yield(); } のような記述で、Blynk.run()を走らせながら、他の処理もLoopとして回すことが簡単にできるのに対し、PythonでBlynkを使う時に、Blynk.run()を実行すると、この関数からは永遠に戻ってこないため、ループが作れない。 …

続きを読む →

Raspberry上のPythonで日の出、日の入りを計算する

Pythonには、’ephem’ という日の出や日の入りの時刻を計算する便利なライブラリが存在する。 ephemのインストール raspberry pi zeroにログインして、ライブラリを探す。 $apt-cache search ephem この中から、Python3のライブラリを探すと、python3-ephemというのがある。(python3-ephem – Compute positions of the planets and stars with Python 3) これをインストールする。 $sudo apt-get install python3-ephem pi…

続きを読む →

スマホのBlynkアプリを操作して、WiFiで接続したラズパイ(Raspberry Pi Zero WH)からリモコンを出力してみる。

構成 Raspberry Pi Zero WH (USBから電源供給、WiFiでネットワークに接続)x 1 赤外線LED x 1 電流制限抵抗(100ホーム)  x 1 赤外線受光モジュール x 1 (波形確認用) 環境 OSは、Raspbian Strech Lite ($ lsb_release -aで表示できる) WiFiでの接続設定は済。TeraTermからSSHでログインして操作 プログラム開発は、Windows上のVS Codeでソースコードを記述し、SSH File Systemでラズパイに接続してコピーする。(本当に便利!!) Blynkアプリをスマホにインストール …

続きを読む →

Raspberry Pi Zero WHを WiFi経由、ヘッドレス(HDMIモニター接続無し)で接続する。

これまで、Arduino、ESP-01、ESP-32などで、ちょっとした道具を作ってきたが、昔買った Raspberry Pi (今はEOLのRaspberry Pi Model-B)を、久々にタンスの奥から引っ張り出してきて、遊んでみることにした。ついでに、最近のRaspberry Pi Zero WH (WiFi/Bluetooth+Header付き)も、一つ購入したので比較しながら遊んでみる。 (スペック比較表はこちら) Raspberry Pi Model B Raspberry Pi Zero WH 会社で、Raspberry Piの話題が時々出るのに、実はちゃんと触ってこなかったの…

続きを読む →

ESP8266-01の接続(その3)

Arduino Pro Mini 3.3V, 8MHz から、EASP8266-01を経由してWiFiに接続するにあたって、いくつかの条件を満たしたいと考えていました。 Arduino Pro Miniと、ESP8266との間は、デフォルトのまま、115200 baudのシリアル通信速度で通信したい。 この本来のシリアル通信の他に、FTDI経由で Arduino Pro Miniに色々なコマンドを打ち込んだりして、ESP8266との通信(WiFi通信)をインタラクティブに実験したい。そのため、2つめのシリアル通信ポートをSoftwareSerialのライブラリを使って実現したい。 Arduin…

続きを読む →

ESP8266-01の接続(その2)

【ESP8266 ESP-01の回路・基板もう少し調査】 前回の確認で、やはりリセットが怪しいので、もう少し基板内でRESETピンがどのように接続されているのかを確認してみたいと思います。 ESP-01の回路図は、今のところネット上を探してもそれらしき、ピッタリするものが見つからないので、版下の情報から類推してみることにしました。 この基板レイアウト図上では、RESETピンは、”GPIO16”と記載されていますが、これについてはもう少し後で調べてみることにします。このピンからの配線を「むりやり」たどってみると ESP8266EXのICの、32ピン(EXT_RSTB)に直接つながっているように見…

続きを読む →

ESP8266-01とArduino Pro Mini 3.3Vを接続してみた (その1)

WiFiのモジュール ESP8266-01と、Arduino Pro Mini 3.3V, 8MHzを接続して、ネットワーク経由で色々な遊びを始めてみることにしました。 【ESP8266-01モジュール】  (参考にさせて頂いたページ) ESP8266モジュールの中では最も小さくて端子数の少ないESP-01タイプで実験をしてみます。モジュール仕様はこのページを参考にしました。 これによると、なかなか強力なスペックです。 このモジュール単体でホストコントローラーとして動作可能 2本のGPIOピンを直接センサー等に接続することも可能 I/Oは 3.6V耐圧なので、5V回路とは直接接続不可能。 電源…

続きを読む →