Arduino UNO R4 wifi 使ってみました!
- 組み込みや IoT の無線通信を気軽に試したいとき、コード量や環境構築の煩雑さは大きな壁になります
- Arduino UNO R4 WiFiは、Arduino IDE/Arduinoフレームワークを使って極めて短時間で動かせます
- これまで無線マイコンは、esp32やpicoWを使用しましたが、手を出せていなかったarduino R4wifiで遊んでみました
本記事の目的
- 本記事の目的は次のとおりです:
- Arduinoとしての開発のしやすさ・環境構築の簡単さを体験する
- Wi-Fi経由の無線通信(ESP32-S3 由来)を Arduino スケッチだけで実装する
使ってみた感想
- 環境構築から動かすまでは、3つのマイコン(ESP32,picoW、arduinoR4wifi)で一番早く、わかりやすかったです。半面、拡張性は少ないのかな、と思いました
Arduino R4 WiFiの特徴
- Arduino R4 WiFi は、従来の Arduino UNO R3 の使い勝手を保ちながら、ESP32-S3モジュールによる Wi-Fi/Bluetooth 無線機能 を内蔵しているため、別部品や複雑な設定なしにネットワーク機能を追加できます
Githubでデモのコードを公開しています
PlatformIOでサクッと環境構築
デモに使うセンサ:MAX31865
-
RTDセンサ(測温抵抗体)を使ってセンシングデモをしました
-
注意!そのままでは動きません。改造が必要です
-
改造の詳細は、先駆者から以下サイトにて詳しく掲載いただいています
https://www.denshi.club/cookbook/arduino/r4/step4-2-max31865.html
ピンアサインなど
-
MAX31865とのSPI通信用サンプルコードを作成しました。上記githubにアップしています
-
SPI ピンアサイン(Arduino UNO R4 WiFi)
| 機能 | ピン | 備考 |
|---|---|---|
| SCK | D13 | ハードウェアSPI |
| MOSI | D11 | ハードウェアSPI |
| MISO | D12 | ハードウェアSPI |
| CS | D10 | チップセレクト |
- MAX31865 ブレークアウトとの接続
| 信号 | 接続先 | 備考 |
|---|---|---|
| VIN | 5V | |
| GND | GND | |
| SDI | D11 | MOSI |
| SDO | D12 | MISO |
| SCK | D13 | |
| CS | D10 |
- 実装している処理
レジスタ読み書き … 設定・フォルト・RTD値をSPI経由で取得
起動時の確認 … Config/Fault レジスタを読み、SPI通信をチェック
ループ処理 … 2秒ごとに RTD 生値・抵抗値・温度をシリアル出力
パラメータ
PT100(0°Cで100Ω)を想定
Rref = 430Ω(Adafruitブレークアウト相当)
※異なるRTD(例: PT1000)や Rref の場合は、RTD_NOMINAL と RREF の変更が必要
デモ
- 親機(ESP32)と接続させ、親機に組み込んだwebサーバから温度を取得させました
まとめ
-
Arduino UNO R4 WiFi を使ってみて強く感じたのは、開発の速さと導入の敷居の低さです
-
Arduino IDE でボード設定を済ませれば、環境構築に迷うことなくすぐに無線通信を試すことができます
-
特に ESP32-S3 由来の Wi-Fi 機能は、外付けのモジュールや複雑な設定不要で利用できる点が大きなメリットでした
-
一方で、Arduino フレームワークは簡便さを重視しているため、より高度な制御などでは拡張性の部分で他に劣っているのかなと感じました
-
とはいえ、IoT プロトタイプの作成やセンサーデータの無線送信・可視化など アイデアを形にする速度は圧倒的に速い と言えます
-
最後に、Arduino R4 WiFi は、無線機能を簡単に扱いながらも既存の Arduino エコシステムをフル活用できるため、これから無線 IoT を始めたい人にとって非常に良い出発点になると感じました



