vs Arduino UNO WiFi (1) セットアップ
Arduino UNO Wifi Rev.2のモデルは、Arduino UNOと同じくAVRマイコンを使っていますが、世代が新しいATMega4809を搭載しています。Arduino UNO用シールドにWi-Fiが利用できる製品がリリースされなくなって数年が経過しています。
このモデルでは、Wi-FiデバイスにU-bloxのNINA-W102が搭載され、従来のEthernet とWiFiのライブラリと同じように使えるWiFiNINA libraryが用意されました。NINA-W102は2018年6月15日に技適(204-810001)に登録されています。
●ボードのセットアップ
USBケーブルで接続して、ボードからArduino UNO Wifiを選ぶと次のメッセージが出ます。
リンクをクリックして表示されるソフトウェアをインストールしました。
定番のBlinkを読み込んで実行しました。Arduino IDEは1.8.8です。
コンパイルが終わって書き込みに失敗します。ここで、ボードマネージャからArduino Uno Wifi Rev2を選択しなおします。今度は正常に書き込みが行われ、Lチカが動きました。
最大49152バイトのフラッシュメモリのうち、スケッチが1570バイト(3%)を使っています。 最大6144バイトのRAMのうち、グローバル変数が22バイト(0%)を使っていて、ローカル変数で6122バイト使うことができます。 |
UNOとはだいぶメモリの容量が異なるようです。
UNO R3 | UNO Wifi Rev.2 | |
---|---|---|
動作電圧[V] | 5 | 5 |
I/Oピンの電流[mA] | 20 | 20 |
3.3V電源の電流[mA] | 50 | 50 |
ディジタルI/O |
14(内PWMが6本) |
14(内PWMが5本、外れたのは11番) |
アナログ入力 | 6(10ビット) | 6 |
フラッシュ・メモリ[Kバイト] | 32 | 48 |
SRAM[バイト] | 2k | 6144 |
EEPROM[バイト] | 1k | 256 |
LED_BUILTIN | 13 | 25 |
SCL/SDA | A4/A5共通 | 独立 |
UART | 0:Rx、1:Tx USB-シリアルと共通 | 0:Rx、1:Txは独立。USB-シリアルは別のシリアル・ポートを使う |
●アナログ入力
UNOと同じ6本の入力があります。ATMega4809のデータシートによると、10ビット150kspsと書かれているので、ATMega328の約10倍の変換スピードになったようです。内部リファレンス電圧は、ATMega328の1.1Vから0.55、1.1V、1.5V、2.5、4.3Vと増えています。IDEで指定できるは不明です。
●Wi-Fiライブラリ
WiFiNINAというライブラリをインストールします。執筆時点では1.3.0です。
ECC608暗号チップが搭載されていることとconnectSSL() / WiFiSSLClient()が用意されたこととの関連は調べられていません。従来のライブラリにはhttps関連はありませんでした。暗号チップはクラウドの認証に用いられるのかもしれません。
●追加されたデバイス
RGB LED NINA-W102のポートに直接つながれているので、利用する方法は不明です。
IMU 3軸加速度計と3軸ジャイロスコープを備えたLSM6DSを搭載。LSM6DS自体のライブラリはたくさん見つかるが、このボードでの利用に適しているかは不明です。回路図によると、3.3V側のSPIにつながれています。信号は外部に出ていないピンなので、どのようにアクセスできるか不明です。
UNOとは互換性が考えられたボードですが、不明な部分も多くあります。使用しながら調べていきます。
ピン関係備忘録
C:\Users\ユーザ名\AppData\Local\Arduino15\packages\arduino\hardware\megaavr\1.6.24\variants\uno2018\pins_arduino.h
(※)Wi-FiモジュールのNINA-W102は、Espressif ESP32で構成されています。したがって、ESP32搭載ボードにArduino IDEを入れて動かすのとほとんど変わりがないかもしれません。