Amazon FreeRTOS ESP32-DevKit-CでMQTT Hello World (Mac版)

Amazon FreeRTOSをESP32開発ボードESP32-DevKit-Cにセットアップして、マイコンからMQTTのメッセージを送信し、AWS IoTのコンソール上で確認するHello Worldサンプルを動かしてみたので手順をまとめてみました。

FreeRTOSのセットアップ手順は公式ドキュメントの「Espressif ESP32-DevKitC と ESP-WROVER-KIT の開始方法」を参考にしています。
このドキュメントではESP-IDF v3とESP-IDF v4を利用したセットアップ方法が記載されていますが、今回は「ESP-IDF v4」の手順を選択しました。
“Amazon FreeRTOS ESP32-DevKit-CでMQTT Hello World (Mac版)” の続きを読む

ESP32のデジタル入力 プルアップ/プルダウンを検証、Arduinoとの違い

ボタンスイッチからの入力をESP32で処理する場合、プルアップ、プルダウンという言葉が出てきますが理解が怪しかったので、実機で試しつつまとめてみました。

ESP32の開発ボードは、ESPr Developer 32で試しています。

スイッチにプルアップ、プルダウンがなぜ必要か?

スイッチの回路にプルアップ、プルダウンがなぜ必要かについてですが、もし以下のようにスイッチがGNDと入力用のピンのみに接続されている回路で内部抵抗によるプルダウンなしの場合

このとき読み取られる値は直感的には0Vになりそうですが、そうはなりません。
実際にどこにも接続されていないピンをanalogReadした値は以下のようになぞの電圧が観測されます。

“ESP32のデジタル入力 プルアップ/プルダウンを検証、Arduinoとの違い” の続きを読む

M5Stick-Cで光センサユニット(LIGHT UNIT)を試す

M5Stack-Cで、光センサーのユニットLIGHTを試してみました。

LIGHT UNITの光センサは、フォトレジスタ(CdSセル)が組み込まれているモジュールで、光の強さをアナログおよびデジタルで読み取れます。

公式リファレンスのページ: Light – M5Stack Docs

プログラムは、上記の公式リファレンスのページで紹介されているサンプルを修正してみました。

Github: M5Stack/examples/Unit/LIGHT/LIGHT.ino

公式リファレンスのM5Stack Coreを利用した例と同じ様に、LIGHT UNITから読み取ったアナログとデジタルの値をLCDに表示します。


“M5Stick-Cで光センサユニット(LIGHT UNIT)を試す” の続きを読む

ESP32 MicroPython開発環境セットアップしてLチカまで

前回の記事「ESP-IDFをMacにセットアップしてESP32-DevKitCでLチカ」に続いてESP32ネタで、今回はMicroPythonによる開発手順を確認してみます。

開発環境のセットアップ手順は、MicroPython port to the ESP32に従って進めています。

この手順は、MicroPythonのファームウェアをソースからビルドしてESP32開発ボードに転送するものになります。MicroPythonファームウェアはESP32用のバイナリも配布されているので簡単に試したい方はバイナリ版 Firmware for ESP32 boards を利用したほうが良さそうです。

Toolchainのセットアップ

Toolchainのセットアップは前回のESP-IDFの記事「Toolchainのセットアップ」と同じです。

ESP32 toolchain for macOS を
https://dl.espressif.com/dl/xtensa-esp32-elf-osx-1.22.0-80-g6c4433a-5.2.0.tar.gz からダウンロードして、以下のようにファイルをespディレクトリに展開します。

$ mkdir -p ~/esp
$ cd ~/esp
$ tar -xzf ~/Downloads/xtensa-esp32-elf-osx-1.22.0-80-g6c4433a-5.2.0.tar.gz

参考: Setting up the toolchain and ESP-IDF

“ESP32 MicroPython開発環境セットアップしてLチカまで” の続きを読む

ESP-IDFをMacにセットアップしてESP32-DevKitCでLチカ

会社のテックWebマガジン コピペテック の電子工作ネタ用にESP32について調べています。

まずはHello Worldとして、ESP32用の開発環境ESP-IDFをMacにセットアップし、ESP32開発用ボード ESP32-DevKitCでLチカしてみました。

開発ボードは秋月電子通商で購入した「ESP32-DevKitC ESP-WROOM-32 開発ボード」で試しています。

ESP32の開発環境は、主にArduino IDEとESP-IDFがあり、
Arduino IDEの方が使い勝手が良いように思いますが、Arduinoと比べてESP32のメリットであるMicroPythonによる開発をするためにはESP-IDFをベースとした環境が必要になります。
そこでまずはESP-IDFによる開発手順も確認してみたので、それをまとめてみました。

(その後調べてわかったことですが、ESP32用のMicroPythonファームウェアはバイナリでも配布されているので、こちらの Firmware for ESP32 boards を使ったほうが簡単にセットアップでます。参考: ESP32でMicroPythonを試す!簡単ですぐできました!)

ESP-IDFを利用するために必要なもの

Get Started > What You Need にESP-IDFを利用した開発環境で必要となるものがまとめられています。

  1. PC
  2. Toolchain
  3. ESP-IDF
  4. テキストエディタ
  5. ESP32ボード本体とUSBケーブル

Toolchainは、ESP32用のアプリケーションのビルドツールです。
ESP-IDFは、ESP32用の基本APIとToolchainを使用するためのスクリプトを提供する開発フレームワークになります。

“ESP-IDFをMacにセットアップしてESP32-DevKitCでLチカ” の続きを読む