【ESP32】Wi-Fiの固定IPアドレスを使う方法

ESP32では普通にWi-Fiのルーターに接続してIPを割り当ててもらう代わりに、IPを指定して接続する方法があります。

サンプルコード

#include <WiFI.h>
const char* ssid = "YOUR_SSID";
const char* password = "YOUR_PASSWORD";
const IPAddress ip(192,168,0,99);
const IPAddress subnet(255,255,255,0);

void setup(){
 if (!WiFI.config(ip,ip,subnet)){
     Serial.println("Failed to configure!");
 }
 WiFi.begin(ssid,password);
 While (WiFI.status() != WL_CONNECTED){
     delay(500);
     Serial.print(".");
 }
}

void loop(){
    //以下ループ処理
}

上記はホームゲートウェイを指定しない方法です。通常これで動きますが、ゲートウェイのアドレスを指定したい場合は以下のようにしましょう。

#include <WiFi.h>
const char* ssid = "YOUR_SSID";
const char* password = "YOUR_PASSWORD";
const IPAddress ip(192,168,0,99);
const IPAddress gateway(192.168.0.31); //gatewayのIPアドレス
const IPAddress subnet(255,255,255,0);

void setup(){
 if (!WiFi.config(ip,gateway,subnet)){
     Serial.println("Failed to configure!");
 }
 WiFi.begin(ssid,password);
 While (WiFi.status() != WL_CONNECTED){
     delay(500);
     Serial.print(".");
 }
}

解説

WiFi.config(ip,gateway,subnet,primaryDNS,secondaryDNS);のような引数を持ちます。必ず指定しなければいけないのはip gateway subnetの3つです。上記のサンプルプログラムではこの必須3項目のみを入力しています。

コメントする

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

Exit mobile version