ArduinoやESP32等のマイコンでWiFiモジュールを利用する場合は以下のように平文でWiFiのSSID、パスワードをプログラム上に記載します。
1 2 3 4 5 6 7 8 |
#include <Arduino.h> #include <WiFi.h> const char *ssid="hogehoge"; const char *password="hugahuga"; /*以下省略*/ |
しかしながらこの様な方法では、git等でプロジェクトを管理する場合、自身のWiFi情報を外部に公開してしまったり、チームメンバーごとにWiFi情報を都度書き換える必要があったり等様々な問題が発生します。
そこで今回は、SSIDとパスワードを別ファイルに分け管理する方法を紹介します。
①設定用のヘッダーファイルを作成する。
メインプログラム(Arduinoの場合は.ino)とは別に設定用のパラメータを管理するヘッダーファイル(config.h)を以下のように作成します。
1 2 3 4 |
#define SSID "hogehoge" #define WIFI_PASSWORD "fugafuga" |
IDEによってヘッダーファイルの格納場所は異なりますが、僕はVS CodeでPlatform.ioで開発しているのでプロジェクトファイルの/include以下に保存します。
②メインのプログラムから呼び出す。
メインプログラムで作成したヘッダーファイルからSSIDとパスワードを呼び出します。
1 2 3 4 5 6 7 8 9 10 11 |
#include <Arduino.h> #include <WiFi.h> #include "config.h" const char* ssid = SSID; const char* password = WIFI_PASSWORD; /*以下省略*/ |
③ヘッダーファイルをgitignoreに登録する
WiFiの設定情報(config.h)とメインプログラム(main.ino)のファイルを分割することできたので、WiFiの設定情報(config.h)をgit上に登録しないように.gitignoreに登録します。
フォルダ構成によって記述は異なりますが、config.hへのパスを.gitignoreに追加します。
1 2 |
include/config.h |