Add support for static IPv4 addressing
This commit is contained in:
parent
b067b3f447
commit
c93bdc0e28
|
@ -18,6 +18,12 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|||
|
||||
### Security
|
||||
|
||||
## [1.1.0] - 2021-06-12
|
||||
|
||||
### Added
|
||||
|
||||
- Add support for static IPv4 addressing.
|
||||
|
||||
## [1.0.0] - 2020-06-29
|
||||
|
||||
Initial release.
|
||||
|
|
|
@ -10,10 +10,6 @@
|
|||
#define DHT_TYPE DHT11
|
||||
// DHT pin
|
||||
#define DHT_PIN 14
|
||||
// HTTP server port
|
||||
#define HTTP_SERVER_PORT 80
|
||||
// HTTP metrics endpoint
|
||||
#define HTTP_METRICS_ENDPOINT "/metrics"
|
||||
// Temperature offset in degrees Celsius
|
||||
#define TEMPERATURE_CORRECTION_OFFSET 0
|
||||
// Humidity offset in percent
|
||||
|
@ -22,7 +18,23 @@
|
|||
#define READ_INTERVAL 5000
|
||||
// How many times to try to read the sensor before returning an error
|
||||
#define READ_TRY_COUNT 5
|
||||
// WiFi SSID (required)
|
||||
// Wi-Fi SSID (required)
|
||||
#define WIFI_SSID ""
|
||||
// WiFi password (required)
|
||||
// Wi-Fi password (required)
|
||||
#define WIFI_PASSWORD ""
|
||||
// Wi-Fi static IPv4 address enabled or disabled (disable for DHCPv4)
|
||||
#define WIFI_IPV4_STATIC false
|
||||
// Wi-Fi static IPv4 address
|
||||
#define WIFI_IPV4_ADDRESS 192, 168, 1, 15
|
||||
// Wi-Fi static IPv4 gateway address
|
||||
#define WIFI_IPV4_GATEWAY 192, 168, 1, 1
|
||||
// Wi-Fi static IPv4 subnet mask
|
||||
#define WIFI_IPV4_SUBNET_MASK 255, 255, 255, 0
|
||||
// Wi-Fi static IPv4 primary DNS server
|
||||
#define WIFI_IPV4_DNS_1 1, 1, 1, 1
|
||||
// Wi-Fi static IPv4 secondary DNS server
|
||||
#define WIFI_IPV4_DNS_2 1, 0, 0, 1
|
||||
// HTTP server port
|
||||
#define HTTP_SERVER_PORT 80
|
||||
// HTTP metrics endpoint
|
||||
#define HTTP_METRICS_ENDPOINT "/metrics"
|
||||
|
|
30
src/src.ino
30
src/src.ino
|
@ -47,15 +47,37 @@ void setup_wifi() {
|
|||
char message[128];
|
||||
snprintf(message, 128, "Wi-Fi SSID: %s", WIFI_SSID);
|
||||
log(message);
|
||||
|
||||
if (WIFI_IPV4_STATIC) {
|
||||
IPAddress address(WIFI_IPV4_ADDRESS);
|
||||
IPAddress subnet(WIFI_IPV4_SUBNET_MASK);
|
||||
IPAddress gateway(WIFI_IPV4_GATEWAY);
|
||||
IPAddress dns1(WIFI_IPV4_DNS_1);
|
||||
IPAddress dns2(WIFI_IPV4_DNS_2);
|
||||
snprintf(message, 128, "Static IPv4 address: %d.%d.%d.%d", address[0], address[1], address[2], address[3]);
|
||||
log(message);
|
||||
snprintf(message, 128, "Static IPv4 subnet mask: %d.%d.%d.%d", subnet[0], subnet[1], subnet[2], subnet[3]);
|
||||
log(message);
|
||||
snprintf(message, 128, "Static IPv4 gateway: %d.%d.%d.%d", gateway[0], gateway[1], gateway[2], gateway[3]);
|
||||
log(message);
|
||||
snprintf(message, 128, "Static IPv4 primary DNS server: %d.%d.%d.%d", dns1[0], dns1[1], dns1[2], dns1[3]);
|
||||
log(message);
|
||||
snprintf(message, 128, "Static IPv4 secondary DNS server: %d.%d.%d.%d", dns2[0], dns2[1], dns2[2], dns2[3]);
|
||||
log(message);
|
||||
if (!WiFi.config(address, gateway, subnet, dns1, dns2)) {
|
||||
log("Failed to configure Wi-Fi.", LogLevel::ERROR);
|
||||
}
|
||||
}
|
||||
|
||||
log("Wi-Fi connecting ...");
|
||||
WiFi.begin(WIFI_SSID, WIFI_PASSWORD);
|
||||
while (WiFi.status() != WL_CONNECTED) {
|
||||
log("Wi-Fi waiting ...", LogLevel::DEBUG);
|
||||
delay(500);
|
||||
log("Wi-Fi waiting ...", LogLevel::DEBUG);
|
||||
delay(500);
|
||||
}
|
||||
const IPAddress &ipaddr = WiFi.localIP();
|
||||
const IPAddress &address = WiFi.localIP();
|
||||
log("Wi-Fi connected.");
|
||||
snprintf(message, 128, "IPv4 address: %d.%d.%d.%d", ipaddr[0], ipaddr[1], ipaddr[2], ipaddr[3]);
|
||||
snprintf(message, 128, "IPv4 address: %d.%d.%d.%d", address[0], address[1], address[2], address[3]);
|
||||
log(message);
|
||||
}
|
||||
|
||||
|
|
|
@ -1,3 +1,3 @@
|
|||
#pragma once
|
||||
|
||||
#define VERSION "1.0.0"
|
||||
#define VERSION "1.1.0"
|
||||
|
|
Loading…
Reference in New Issue