「インストール - Arduino IDE」の版間の差分

224行目: 224行目:
<br>
<br>
特に、解決方法1〜2の方法で解決することが多い。<br>
特に、解決方法1〜2の方法で解決することが多い。<br>
<br>
==== ファームウェアの復元 ====
===== Arudino UNO R4 WiFi =====
Arduino UNO R4 WiFiにはUSB-シリアル通信を処理するESP32-S3チップが搭載されている。<br>
このチップのファームウェアは、Arduino IDEまたはArduino Cloudを使用してアップグレードできるが、アップグレード後のファームウェアが正常に動作しない場合がある。<br>
<br>
この時、espflashツールを使用してファームウェアを復元することができる。<br>
<br>
これは、以下に示すような症状が起きている場合に有効である。<br>
* Arudino UNO R4 WiFiが、Arduino IDEまたはArduino Cloudの[ボード情報の取得]を選択すると、汎用のESP32ボード (例: ESP32-S3-Box) として検出される。
* Arudino UNO R4 WiFiが、Arduino IDEまたはArduino Cloudの[ボード情報の取得]を選択すると、データUSBケーブルでコンピュータに接続されているにもかかわらず、どのボードとしても検出されない。
<br>
まず、Arduino UNO R4 WiFiにある6ピンヘッダのGNDピンとDownloadピンを短絡 (ショート) させる必要がある。<br>
# Arduino UNO R4 WiFiと不要なUSBデバイスをPCから外す。
# Arduino UNO R4 WiFi上で、USB type Cコネクタの隣にある6ピンヘッダのGNDピンとDownloadピンを探す。
#: <br>
# GNDピンとDownloadピンを短絡させる。<br>これは、2つのピンの間にメス-メス ジャンパワイヤを使用して接続することを推奨する。
# メス-メス ジャンパワイヤが持っていない場合は、先の尖った導電性の物体 (オス-オス ジャンパワイヤの一端等) を使用して、両方のピンに接触するように配置することもできる。
# 短絡させた状態で、Arduino UNO R4 WiFiをPCに接続する。
# 新しいデバイスが接続されたというメッセージが表示される場合は、接続を許可する。
<br>
次に、[https://github.com/arduino/uno-r4-wifi-usb-bridge/releases espflashツールのGithub]にアクセスして、espflashツールをダウンロードする。<br>
ダウンロードしたファイルを解凍する。<br>
unzip unor4wifi-update-linux.zip
cd unor4wifi-update-linux
<br>
espflashツールを実行してファームウェアを復元する。<br>
./bin/espflash write-bin -b 115200 0x0 firmware/UNOR4-WIFI-S3-*.bin
<br>
復元前において、以下に示すようなプロンプトが表示される。<br>
この時、キーボードの[N]キーを押下する。<br>
? Remember this serial port for future use? (y/n) >
訳: 今後の使用のために、このシリアルポートを記憶しておきますか? (y/n)
<br>
ファームウェアの復元に成功した後、Arudino UNO R4 WiFiをPCから外す。<br>
次に、GNDピンとDownloadピンのジャンパワイヤ (短絡用) を外す。<br>
<br>
Arudino UNO R4 WiFiをPCに再度接続する。<br>
Arduino IDE等から[ボード情報の取得]を選択して、"Arudino UNO R4 WiFi"と表示されているかどうかを確認する。<br>
<br>
<u>※注意</u><br>
<u>Linux上でespflashツールを実行する時、以下に示すようなエラーが出力される場合がある。</u><br>
<u>これは、システムにインストールされているGLIBCのバージョンが古いためである。</u><br>
./bin/espflash: /lib64/libc.so.6: version `GLIBC_2.33' not found (required by ./bin/espflash)
./bin/espflash: /lib64/libc.so.6: version `GLIBC_2.32' not found (required by ./bin/espflash)
./bin/espflash: /lib64/libc.so.6: version `GLIBC_2.34' not found (required by ./bin/espflash)
<br>
この時、[[インストール - GLIBC]]のページを参照して、エラーで出力されているバージョン以降のGLIBCを別途インストールする。<br>
インストールしたGLIBCをラッピングして、espflashツールを実行する。<br>
# 別途インストールしたGLIBCをラッピングして、espflashツールを実行する場合
export GLIBC_DIR="<GLIBCのインストールディレクトリ>"
$GLIBC_DIR/lib/ld-linux-x86-64.so.2 \
    --library-path $GLIBC_DIR/lib64:$GLIBC_DIR/lib:/usr/lib64:/usr/lib:/lib64:/lib \
    ./bin/espflash write-bin -b 115200 0x0 firmware/UNOR4-WIFI-S3-*.bin
<br><br>
<br><br>