Interface編集部
書籍「ESP&M5Stack電子工作プログラム集」サポート・ページ
書籍「ESP&M5Stack電子工作プログラム集」サポート・ページ
● 開発環境の構築方法
本書で使用するESP32用開発環境の構築は下記のページを参照してください.
ESP32開発ボード Micro Python開発環境の構築
https://interface.cqpub.co.jp/esp32-micro-python/
ESP32開発ボード Arduino IDE開発環境の構築
https://interface.cqpub.co.jp/esp32-arduino-ide-2/
M5Stack UIFlow Desktop IDE(Micro Python)開発環境の構築
https://interface.cqpub.co.jp/m5stack-micropython/
M5Stack Arduino IDE開発環境の構築
https://interface.cqpub.co.jp/m5stack-arduino-ide/
第2部 センサを使いこなす
第1章 IoTセンサをつなげる ハードウェア&ソフトウェア
表0-1 IoTセンシング実験のベースに使うESP32開発環境
Arduino core for ESP32 WiFi chip
https://github.com/espressif/arduino-esp32
MicroPython(Firmware for ESP32 boards)
https://micropython.org/download
第1章-4
VL53L0X を Arduino で使うためのライブラリのインストール
https://github.com/pololu/vl53l0x-arduino
第3部 カメラを使いこなす
第4章 小型ネットワーク映像カメラの製作
注1:TTGO T-Cameraの概要
https://github.com/lewisxhe/esp32-camera-series
注2:TTGO T-Cameraのソース・コンパイルのためにインストールするカメラ・ライブラリ
https://github.com/espressif/esp32-camera
注3:ESP32 technical reference manual 11.5.2章
https://www.openhacks.com/uploadsproductos/esp32_technical_reference_manual_en_qg.pdf
注4:ESP32のI2Sの説明.
https://docs.espressif.com/projects/esp-idf/en/latest/api-reference/peripherals/i2s.html
第5章 Slackチャット投稿カメラの製作
第4部 ESP32応用事例集
第1章 FreeRTOSを使った電光掲示板の製作
第2章 360°マッピング用レーザ・レーダの製作
レーザ・センサLIDAR-Lite v3をI2Cで動作させるプログラム
https://github.com/garmin/LIDARLite_v3_Arduino_Library
LIDAR-Lite v3のマニュアル
http://static.garmin.com/pumac/LIDAR_Lite_v3_Operation_Manual_and_Technical_Specifications.pdf
第3章 サーバ機能付き赤外線学習リモコンの製作
ESP32上にSPIFFSを構築する手順(@ht_deko氏のESP32-WROOM-32)
https://ht-deko.com/arduino/esp-wroom-32.html#23
任意の画像を使ったリモコン画面にカスタマイズしたデータ・ファイル類
https://github.com/Goji2100
第4章 Bluetooth開発環境のセットアップ
第5章 Bluetooth無線通信機能を使う
ESP-IDFの実行に必要なものが全て入っているAll-inoneパッケージをのダウンロード
http://esp-idf.readthedocs.io/en/latest/get-started/windows-setup.html#toolchain-setup
gitコマンドによるESP-IDFのダウンロード
git clone –recursive https://github.com/espressif/esp-idf.git
環境変数の設定
echo export IDF_PATH=/opt/esp-idf >> ~/.bashrc
echo source ¥$IDF_PATH/add_path. sh >> ~/.bashrc
ダウンロード・ページ
https://github.com/ciniml/esp_sensorhub
筆者のGitHubリポジトリ
git clone https://github.com/ciniml/esp_sensorhub/ -b interface_esp32
第6章 マイコン基板を屋外で単独運用するための電源を作る
Ambientライブラリ
https://github.com/AmbientDataInc/Ambient_ESP8266_lib
アカウントを登録とチャネル作成
https://ambidata.io/docs/gettingstarted/
第7章 現在位置を表示するスマート・ウォッチ
オフライン・モード用のファームウェア
https://github.com/m5stack/M5Cloud/tree/master/firmwares/OFF-LINE/m5stack-20180516-v0.4.0.bin
AmbientのPython(MicroPython)ライブラリ
git clone https://github.com/AmbientDataInc/ambient-python-lib.git
Map取得可能かを確認
`APIキー`と記載の部分は取得できたAPIキーに置き換えること
https://maps.googleapis.com/maps/api/staticmap?center=%E6%9D%B1%E4%BA%AC%E9%A7%85&size=600×450&key=`APIキー`
リクエストするURLを作成する(例: 東京駅)
url = “http://maps.googleapis.com/maps/api/staticmap?markers=35.681167,139.767052&size=320×240&form at=jpg-baseline&key=取得したAPIキーを設定する”
第8章 列車遅延情報を取得する
第9章 オープンソース地図ライブラリを使う
第5部 箱入りESP32 M5Stack活用
第3章 温度データのセンシング
M5StackのLCDやボタンなどをアクセスする関数
https://github.com/m5stack/M5Stack/blob/master/src/M5Stack.h#L19
Ambient
https://ambidata.io/
Ambientにデータを送るためのArduinoライブラリ
https://ambidata.io/docs/esp8266/#library_import
MicroPython API
https://github.com/m5stack/M5Cloud/blob/master/README_JP.md#micropython-api
Ambientにデータを送るMicro Python用ライブラリ
https://github.com/AmbientDataInc/ambient-python-lib
プログラム全体
https://github.com/AmbientDataInc/measuringwithM5Stack/tree/master/1_AnalogTempSensor
第4章 センサ・データをグラフ描画する
BME280を使うプログラム
https://github.com/AmbientDataInc/measuringwithM5Stack/tree/master/2_DigitalTempSensor/program1
プログラム全体
https://github.com/AmbientDataInc/measuringwithM5Stack/tree/master/2_DigitalTempSensor
ESP8266用MicroPythonライブラリ「catdog2/mpy_bme280_esp8266」
https://github.com/catdog2/mpy_bme280_esp8266
ampyコマンドのインストールと使い方「ampy: MicroPythonマイコンとPCとのファイル転送ツール」
https://ambidata.io/blog/2018/03/15/ampy
第5章 GPS衛星の現在位置を可視化する
micropyGPS
https://github.com/inmcm/micropyGPS
プログラム全体
https://github.com/AmbientDataInc/measuringwithM5Stack/tree/master/3_GPS/
第6章 センサの値に応じて表示色を変える
値の大きさをサーモグラフィのような色に変換する
https://qiita.com/krsak/items/94fad1d3fffa997cb651
プログラム全体
https://github.com/AmbientDataInc/measuringwithM5Stack/tree/master/4_CO2/
第7章 振動を測定し周波数成分ごとに棒グラフで表す
arduinoFFT
https://github.com/kosme/arduinoFFT
第8章 音の波形&周波数 スペクトラムを表示する
周波数を1kHz〜10kHzに変化させて音を出したときのFFTの画面
https://youtu.be/Hc9ZwXMnWX0
プログラム全体
https://github.com/AmbientDataInc/measuringwithM5Stack/tree/master/6_Sound
第9章 M5Stackの小型版M5StickC Plusを動かす
追加のボードマネージャのURL
https://m5stack.oss-cn-shenzhen.aliyuncs.com/resource/arduino/package_m5stack_index.json
第10章 AC消費電力モニタを作る
プログラミングのステップ1…交流の電流を測定する
https://github.com/AmbientDataInc/M5Stack_PowerMonitor/tree/master/MCP3004_test
プログラミングのステップ2…電流値を求めてLCDに表示
https://github.com/AmbientDataInc/M5Stack_PowerMonitor/tree/master/pmon
プログラミングのステップ3…IoTクラウドへの送信&可視化
https://github.com/AmbientDataInc/M5Stack_PowerMonitor/tree/master/pmon_ambient
第11章 8×8エリアの温度分布を色分け表示する
プログラム全体
https://github.com/AmbientDataInc/measuringwithM5Stack/tree/master/9_Thermography
第12章 レーザ方式/超音波方式 センサで距離を測る
https://github.com/AmbientDataInc/measuringwithM5Stack/tree/master/10_Ranging
第13章 姿勢データを生かした 3D表示の世界
MadgwickAHRSライブラリ
https://github.com/arduino-libraries/MadgwickAHRS
3Dモデルを作ってマウスで動かすプログラム
https://gist.github.com/TakehikoShimojima/f5b58a5bf7f5545fa27ae32d0d09e1a0
Processingのデータを回転するロジック
Arduino/ Genuino 101 CurieIMU Orientation Visualiser
https://www.arduino.cc/en/Tutorial/Genuino101CurieIMUOrientationVisualiser
BluetoothSerialへの出力を追加したプログラム(mpu9250_bt.ino)
https://gist.github.com/TakehikoShimojima/e6792a05562d894f6477c8e8da797f6d
第5部 慣れてきた人に…ステップアップ術
第5章 オープンソースの本格デバッグ環境を作る
MSYS2のインストール
https://dl.espressif.com/dl/esp32_win32_msys2_environment_and_toolchain-20181001.zip
ESP-IDFをgit cloneする
git clone -b v3.3 –recursive https://github.com/espressif/espidf.git
ドライバのインストール
https://zadig.akeo.ie/
OpenOCD
https://github.com/espressif/openocd-esp32/releases
Pleiades All in One Eclipse
https://mergedoc.osdn.jp/
Appendix 2 Wi-Fi通信を行う際に知っておくと便利な技
Espressif Esptouch(iOS用)
https://itunes.apple.com/app/id1071176700
ESP Touch(Android用)
(第三者がビルドしたもの)https://play.google.com/store/apps/details?id=com.cmmakerclub.iot.esptouch
https://www.espressif.com/en/products/software/esp-touch/resources