はじめに
M5StackシリーズのためにArduino IDEを使用していたが、以前投稿した記事「Arduino IDEの設定 (M5Stackシリーズ)」のために設定をいろいろと変えていたらArduino IDEが起動できなくなってしまった。(画面もエラーメッセージも何も表示されない)
Arduino IDEを再インストールしたりレジストリを削除したりしたが修復できず、OSの再インストールも覚悟した(有償ソフトがインストールされているので再インストールは避けたかった)が、どうにかArduino IDEが動作するようになった。
また同じ状況に陥ったときのためにまとめた。
環境
Windows PC:Windows 10 Pro 64bit (1909) と(20H2)
Arduino IDE:V1.8.13
原因
あくまで想像だがArduino IDEの環境設定で追加のボードマネージャのURL
を何度も変更したり、後述するローカルミラーサーバーを立てたりしてArduino IDEのファイル間に不整合を起こしてしまったと考えている。
再インストール方法
- 「コントロールパネル」等からArduino IDEをアンインストール
- Windowsを再起動(念のため)
- エクスプローラーの表示設定で隠しファイルを表示できるように変更(
C:¥Users¥<ユーザ名>¥AppData¥
が不可視フォルダのため) - Arduino IDEの環境設定ファイル
C:¥Users¥<ユーザ名>¥AppData¥Local¥Arduino15¥preferences.txt
をバックアップ - Arduino IDEのデータ
C:¥Users¥<ユーザ名>¥AppData¥Local¥Arduino15¥
以下を削除(必要があればバックアップも) - Arduino IDEを再インストール
- バックアップしておいた環境設定ファイル
preferences.txt
をもとの場所にリストア - Arduino IDEを起動
- ボードマネージャで追加したボードを再度追加する。(ライブラリマネージャから追加したライブラリは再度追加する必要はない)
今回のポイントは隠しフォルダのC:¥Users¥<ユーザ名>¥AppData¥Local¥Arduino15¥
以下を削除することで、Arduino IDEのインストール後の設定等がすべて初期化されてしまうが、環境設定ファイルをリストアすることで再設定を最小限にできる。
(おま環) M5Stackボード情報のローカルミラーサーバー
上記再インストール方法の問題点はM5Stackのボード情報を再度追加する必要がある点で、最近のM5Stack製品(CoreInk等)ではM5Stack社のサーバーからボード情報をダウンロードする必要がある。
しかし、このサーバーがとにかく遅くArduino IDEがいつもタイムアウトを起こしていた。
そのためボード情報(インデックスのjsonファイルと実体のzipファイル)を別途ダウンロードしておいてローカルミラーサーバーを立てていた。だが、Arduino IDEはこれらをファイル名だけで管理しているようでM5stack社のサーバーのファイル名とローカルミラーサーバーのファイル名を同一にしていたのも問題があったのかもしれない。
現在は、ローカルミラーサーバーのJSONファイル名をM5stack社のファイル名と変更することによって管理している(なお、jsonファイル名には命名規則があるようで、xxx_index_mirror.josn
は認識されずにxxx_mirror_index.json
なら認識された)
また、ボード情報の実体であるzipファイルはファイルが同一なのでファイル名も変えていない。