mirror of
https://github.com/emsesp/EMS-ESP32.git
synced 2025-12-06 07:49:52 +03:00
enable IPv6 for tasmota, add env:ci_16M for E32V2
This commit is contained in:
4
.github/workflows/pre_release.yml
vendored
4
.github/workflows/pre_release.yml
vendored
@@ -48,6 +48,10 @@ jobs:
|
|||||||
run: |
|
run: |
|
||||||
platformio run -e ci_s3
|
platformio run -e ci_s3
|
||||||
|
|
||||||
|
- name: Build E32V2 firmware
|
||||||
|
run: |
|
||||||
|
platformio run -e ci_16M
|
||||||
|
|
||||||
- name: Create a GH Release
|
- name: Create a GH Release
|
||||||
id: 'automatic_releases'
|
id: 'automatic_releases'
|
||||||
uses: 'marvinpinto/action-automatic-releases@latest'
|
uses: 'marvinpinto/action-automatic-releases@latest'
|
||||||
|
|||||||
@@ -23,7 +23,7 @@
|
|||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@alova/adapter-xhr": "^1.0.3",
|
"@alova/adapter-xhr": "^1.0.3",
|
||||||
"@babel/core": "^7.23.9",
|
"@babel/core": "^7.24.0",
|
||||||
"@emotion/react": "^11.11.4",
|
"@emotion/react": "^11.11.4",
|
||||||
"@emotion/styled": "^11.11.0",
|
"@emotion/styled": "^11.11.0",
|
||||||
"@mui/icons-material": "^5.15.11",
|
"@mui/icons-material": "^5.15.11",
|
||||||
|
|||||||
@@ -216,6 +216,8 @@ const WiFiSettingsForm: FC = () => {
|
|||||||
<MenuItem value={44}>11 dBm</MenuItem>
|
<MenuItem value={44}>11 dBm</MenuItem>
|
||||||
<MenuItem value={34}>8.5 dBm</MenuItem>
|
<MenuItem value={34}>8.5 dBm</MenuItem>
|
||||||
<MenuItem value={28}>7 dBm</MenuItem>
|
<MenuItem value={28}>7 dBm</MenuItem>
|
||||||
|
<MenuItem value={20}>5 dBm</MenuItem>
|
||||||
|
<MenuItem value={8}>2 dBm</MenuItem>
|
||||||
</TextField>
|
</TextField>
|
||||||
<BlockFormControlLabel
|
<BlockFormControlLabel
|
||||||
control={<Checkbox name="nosleep" checked={data.nosleep} onChange={updateFormValue} />}
|
control={<Checkbox name="nosleep" checked={data.nosleep} onChange={updateFormValue} />}
|
||||||
@@ -257,10 +259,12 @@ const WiFiSettingsForm: FC = () => {
|
|||||||
margin="normal"
|
margin="normal"
|
||||||
/>
|
/>
|
||||||
)}
|
)}
|
||||||
<BlockFormControlLabel
|
{data.enableIPv6 !== undefined && (
|
||||||
control={<Checkbox name="enableIPv6" checked={data.enableIPv6} onChange={updateFormValue} />}
|
<BlockFormControlLabel
|
||||||
label={LL.NETWORK_ENABLE_IPV6()}
|
control={<Checkbox name="enableIPv6" checked={data.enableIPv6} onChange={updateFormValue} />}
|
||||||
/>
|
label={LL.NETWORK_ENABLE_IPV6()}
|
||||||
|
/>
|
||||||
|
)}
|
||||||
<BlockFormControlLabel
|
<BlockFormControlLabel
|
||||||
control={<Checkbox name="static_ip_config" checked={data.static_ip_config} onChange={updateFormValue} />}
|
control={<Checkbox name="static_ip_config" checked={data.static_ip_config} onChange={updateFormValue} />}
|
||||||
label={LL.NETWORK_FIXED_IP()}
|
label={LL.NETWORK_FIXED_IP()}
|
||||||
|
|||||||
@@ -42,7 +42,7 @@ export interface NetworkSettings {
|
|||||||
password: string;
|
password: string;
|
||||||
hostname: string;
|
hostname: string;
|
||||||
static_ip_config: boolean;
|
static_ip_config: boolean;
|
||||||
enableIPv6: boolean;
|
enableIPv6?: boolean;
|
||||||
bandwidth20: boolean;
|
bandwidth20: boolean;
|
||||||
nosleep: boolean;
|
nosleep: boolean;
|
||||||
tx_power: number;
|
tx_power: number;
|
||||||
|
|||||||
@@ -86,26 +86,26 @@ __metadata:
|
|||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
"@babel/core@npm:^7.23.9":
|
"@babel/core@npm:^7.24.0":
|
||||||
version: 7.23.9
|
version: 7.24.0
|
||||||
resolution: "@babel/core@npm:7.23.9"
|
resolution: "@babel/core@npm:7.24.0"
|
||||||
dependencies:
|
dependencies:
|
||||||
"@ampproject/remapping": "npm:^2.2.0"
|
"@ampproject/remapping": "npm:^2.2.0"
|
||||||
"@babel/code-frame": "npm:^7.23.5"
|
"@babel/code-frame": "npm:^7.23.5"
|
||||||
"@babel/generator": "npm:^7.23.6"
|
"@babel/generator": "npm:^7.23.6"
|
||||||
"@babel/helper-compilation-targets": "npm:^7.23.6"
|
"@babel/helper-compilation-targets": "npm:^7.23.6"
|
||||||
"@babel/helper-module-transforms": "npm:^7.23.3"
|
"@babel/helper-module-transforms": "npm:^7.23.3"
|
||||||
"@babel/helpers": "npm:^7.23.9"
|
"@babel/helpers": "npm:^7.24.0"
|
||||||
"@babel/parser": "npm:^7.23.9"
|
"@babel/parser": "npm:^7.24.0"
|
||||||
"@babel/template": "npm:^7.23.9"
|
"@babel/template": "npm:^7.24.0"
|
||||||
"@babel/traverse": "npm:^7.23.9"
|
"@babel/traverse": "npm:^7.24.0"
|
||||||
"@babel/types": "npm:^7.23.9"
|
"@babel/types": "npm:^7.24.0"
|
||||||
convert-source-map: "npm:^2.0.0"
|
convert-source-map: "npm:^2.0.0"
|
||||||
debug: "npm:^4.1.0"
|
debug: "npm:^4.1.0"
|
||||||
gensync: "npm:^1.0.0-beta.2"
|
gensync: "npm:^1.0.0-beta.2"
|
||||||
json5: "npm:^2.2.3"
|
json5: "npm:^2.2.3"
|
||||||
semver: "npm:^6.3.1"
|
semver: "npm:^6.3.1"
|
||||||
checksum: 10/268cdbb86bef1b8ea5b1300f2f325e56a1740a5051360cb228ffeaa0f80282b6674f3a2b4d6466adb0691183759b88d4c37b4a4f77232c84a49ed771c84cdc27
|
checksum: 10/1e22215cc89e061e0cbfed72f265ad24d363f3e9b24b51e9c4cf3ccb9222260a29a1c1e62edb439cb7e2229a3fce924edd43300500416613236c13fc8d62a947
|
||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
@@ -304,14 +304,14 @@ __metadata:
|
|||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
"@babel/helpers@npm:^7.23.9":
|
"@babel/helpers@npm:^7.24.0":
|
||||||
version: 7.23.9
|
version: 7.24.0
|
||||||
resolution: "@babel/helpers@npm:7.23.9"
|
resolution: "@babel/helpers@npm:7.24.0"
|
||||||
dependencies:
|
dependencies:
|
||||||
"@babel/template": "npm:^7.23.9"
|
"@babel/template": "npm:^7.24.0"
|
||||||
"@babel/traverse": "npm:^7.23.9"
|
"@babel/traverse": "npm:^7.24.0"
|
||||||
"@babel/types": "npm:^7.23.9"
|
"@babel/types": "npm:^7.24.0"
|
||||||
checksum: 10/dd56daac8bbd7ed174bb00fd185926fd449e591d9a00edaceb7ac6edbdd7a8db57e2cb365b4fafda382201752789ced2f7ae010f667eab0f198a4571cda4d2c5
|
checksum: 10/cc82012161b30185c2698da359c7311cf019f0932f8fcb805e985fec9e0053c354f0534dc9961f3170eee579df6724eecd34b0f5ffaa155cdd456af59fbff86e
|
||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
@@ -346,12 +346,12 @@ __metadata:
|
|||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
"@babel/parser@npm:^7.23.9":
|
"@babel/parser@npm:^7.24.0":
|
||||||
version: 7.23.9
|
version: 7.24.0
|
||||||
resolution: "@babel/parser@npm:7.23.9"
|
resolution: "@babel/parser@npm:7.24.0"
|
||||||
bin:
|
bin:
|
||||||
parser: ./bin/babel-parser.js
|
parser: ./bin/babel-parser.js
|
||||||
checksum: 10/727a7a807100f6a26df859e2f009c4ddbd0d3363287b45daa50bd082ccd0d431d0c4d0e610a91f806e04a1918726cd0f5a0592c9b902a815337feed12e1cafd9
|
checksum: 10/3e5ebb903a6f71629a9d0226743e37fe3d961e79911d2698b243637f66c4df7e3e0a42c07838bc0e7cc9fcd585d9be8f4134a145b9459ee4a459420fb0d1360b
|
||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
@@ -421,14 +421,14 @@ __metadata:
|
|||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
"@babel/template@npm:^7.23.9":
|
"@babel/template@npm:^7.24.0":
|
||||||
version: 7.23.9
|
version: 7.24.0
|
||||||
resolution: "@babel/template@npm:7.23.9"
|
resolution: "@babel/template@npm:7.24.0"
|
||||||
dependencies:
|
dependencies:
|
||||||
"@babel/code-frame": "npm:^7.23.5"
|
"@babel/code-frame": "npm:^7.23.5"
|
||||||
"@babel/parser": "npm:^7.23.9"
|
"@babel/parser": "npm:^7.24.0"
|
||||||
"@babel/types": "npm:^7.23.9"
|
"@babel/types": "npm:^7.24.0"
|
||||||
checksum: 10/1b011ba9354dc2e646561d54b6862e0df51760e6179faadd79be05825b0b6da04911e4e192df943f1766748da3037fd8493615b38707f7cadb0cf0c96601c170
|
checksum: 10/8c538338c7de8fac8ada691a5a812bdcbd60bd4a4eb5adae2cc9ee19773e8fb1a724312a00af9e1ce49056ffd3c3475e7287b5668cf6360bfb3f8ac827a06ffe
|
||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
@@ -450,9 +450,9 @@ __metadata:
|
|||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
"@babel/traverse@npm:^7.23.9":
|
"@babel/traverse@npm:^7.24.0":
|
||||||
version: 7.23.9
|
version: 7.24.0
|
||||||
resolution: "@babel/traverse@npm:7.23.9"
|
resolution: "@babel/traverse@npm:7.24.0"
|
||||||
dependencies:
|
dependencies:
|
||||||
"@babel/code-frame": "npm:^7.23.5"
|
"@babel/code-frame": "npm:^7.23.5"
|
||||||
"@babel/generator": "npm:^7.23.6"
|
"@babel/generator": "npm:^7.23.6"
|
||||||
@@ -460,11 +460,11 @@ __metadata:
|
|||||||
"@babel/helper-function-name": "npm:^7.23.0"
|
"@babel/helper-function-name": "npm:^7.23.0"
|
||||||
"@babel/helper-hoist-variables": "npm:^7.22.5"
|
"@babel/helper-hoist-variables": "npm:^7.22.5"
|
||||||
"@babel/helper-split-export-declaration": "npm:^7.22.6"
|
"@babel/helper-split-export-declaration": "npm:^7.22.6"
|
||||||
"@babel/parser": "npm:^7.23.9"
|
"@babel/parser": "npm:^7.24.0"
|
||||||
"@babel/types": "npm:^7.23.9"
|
"@babel/types": "npm:^7.24.0"
|
||||||
debug: "npm:^4.3.1"
|
debug: "npm:^4.3.1"
|
||||||
globals: "npm:^11.1.0"
|
globals: "npm:^11.1.0"
|
||||||
checksum: 10/e2bb845f7f229feb7c338f7e150f5f1abc5395dcd3a6a47f63a25242ec3ec6b165f04a6df7d4849468547faee34eb3cf52487eb0bd867a7d3c42fec2a648266f
|
checksum: 10/5cc482248ebb79adcbcf021aab4e0e95bafe2a1736ee4b46abe6f88b59848ad73e15e219db8f06c9a33a14c64257e5b47e53876601e998a8c596accb1b7f4996
|
||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
@@ -490,14 +490,14 @@ __metadata:
|
|||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
"@babel/types@npm:^7.23.9":
|
"@babel/types@npm:^7.24.0":
|
||||||
version: 7.23.9
|
version: 7.24.0
|
||||||
resolution: "@babel/types@npm:7.23.9"
|
resolution: "@babel/types@npm:7.24.0"
|
||||||
dependencies:
|
dependencies:
|
||||||
"@babel/helper-string-parser": "npm:^7.23.4"
|
"@babel/helper-string-parser": "npm:^7.23.4"
|
||||||
"@babel/helper-validator-identifier": "npm:^7.22.20"
|
"@babel/helper-validator-identifier": "npm:^7.22.20"
|
||||||
to-fast-properties: "npm:^2.0.0"
|
to-fast-properties: "npm:^2.0.0"
|
||||||
checksum: 10/bed9634e5fd0f9dc63c84cfa83316c4cb617192db9fedfea464fca743affe93736d7bf2ebf418ee8358751a9d388e303af87a0c050cb5d87d5870c1b0154f6cb
|
checksum: 10/a0b4875ce2e132f9daff0d5b27c7f4c4fcc97f2b084bdc5834e92c9d32592778489029e65d99d00c406da612d87b72d7a236c0afccaa1435c028d0c94c9b6da4
|
||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
@@ -1848,7 +1848,7 @@ __metadata:
|
|||||||
resolution: "EMS-ESP@workspace:."
|
resolution: "EMS-ESP@workspace:."
|
||||||
dependencies:
|
dependencies:
|
||||||
"@alova/adapter-xhr": "npm:^1.0.3"
|
"@alova/adapter-xhr": "npm:^1.0.3"
|
||||||
"@babel/core": "npm:^7.23.9"
|
"@babel/core": "npm:^7.24.0"
|
||||||
"@emotion/react": "npm:^11.11.4"
|
"@emotion/react": "npm:^11.11.4"
|
||||||
"@emotion/styled": "npm:^11.11.0"
|
"@emotion/styled": "npm:^11.11.0"
|
||||||
"@mui/icons-material": "npm:^5.15.11"
|
"@mui/icons-material": "npm:^5.15.11"
|
||||||
|
|||||||
@@ -39,7 +39,7 @@ void MqttSettingsService::startClient() {
|
|||||||
delete _mqttClient;
|
delete _mqttClient;
|
||||||
_mqttClient = nullptr;
|
_mqttClient = nullptr;
|
||||||
}
|
}
|
||||||
#if CONFIG_IDF_TARGET_ESP32S3
|
#ifndef TASMOTA_SDK
|
||||||
if (_state.enableTLS) {
|
if (_state.enableTLS) {
|
||||||
isSecure = true;
|
isSecure = true;
|
||||||
_mqttClient = new espMqttClientSecure(espMqttClientTypes::UseInternalTask::NO);
|
_mqttClient = new espMqttClientSecure(espMqttClientTypes::UseInternalTask::NO);
|
||||||
@@ -92,7 +92,7 @@ const char * MqttSettingsService::getClientId() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
void MqttSettingsService::setWill(const char * topic) {
|
void MqttSettingsService::setWill(const char * topic) {
|
||||||
#if CONFIG_IDF_TARGET_ESP32S3
|
#ifndef TASMOTA_SDK
|
||||||
if (_state.enableTLS) {
|
if (_state.enableTLS) {
|
||||||
static_cast<espMqttClientSecure *>(_mqttClient)->setWill(topic, 1, true, "offline");
|
static_cast<espMqttClientSecure *>(_mqttClient)->setWill(topic, 1, true, "offline");
|
||||||
return;
|
return;
|
||||||
@@ -178,7 +178,7 @@ bool MqttSettingsService::configureMqtt() {
|
|||||||
// only connect if WiFi is connected and MQTT is enabled
|
// only connect if WiFi is connected and MQTT is enabled
|
||||||
if (_state.enabled && emsesp::EMSESP::system_.network_connected() && !_state.host.isEmpty()) {
|
if (_state.enabled && emsesp::EMSESP::system_.network_connected() && !_state.host.isEmpty()) {
|
||||||
_reconfigureMqtt = false;
|
_reconfigureMqtt = false;
|
||||||
#if CONFIG_IDF_TARGET_ESP32S3
|
#ifndef TASMOTA_SDK
|
||||||
if (_state.enableTLS) {
|
if (_state.enableTLS) {
|
||||||
#if EMSESP_DEBUG
|
#if EMSESP_DEBUG
|
||||||
emsesp::EMSESP::logger().debug("Start secure MQTT with rootCA");
|
emsesp::EMSESP::logger().debug("Start secure MQTT with rootCA");
|
||||||
@@ -208,11 +208,9 @@ bool MqttSettingsService::configureMqtt() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
void MqttSettings::read(MqttSettings & settings, JsonObject root) {
|
void MqttSettings::read(MqttSettings & settings, JsonObject root) {
|
||||||
#if CONFIG_IDF_TARGET_ESP32S3
|
|
||||||
#ifndef TASMOTA_SDK
|
#ifndef TASMOTA_SDK
|
||||||
root["enableTLS"] = settings.enableTLS;
|
root["enableTLS"] = settings.enableTLS;
|
||||||
root["rootCA"] = settings.rootCA;
|
root["rootCA"] = settings.rootCA;
|
||||||
#endif
|
|
||||||
#endif
|
#endif
|
||||||
root["enabled"] = settings.enabled;
|
root["enabled"] = settings.enabled;
|
||||||
root["host"] = settings.host;
|
root["host"] = settings.host;
|
||||||
@@ -247,11 +245,11 @@ StateUpdateResult MqttSettings::update(JsonObject root, MqttSettings & settings)
|
|||||||
MqttSettings newSettings = {};
|
MqttSettings newSettings = {};
|
||||||
bool changed = false;
|
bool changed = false;
|
||||||
|
|
||||||
#if CONFIG_IDF_TARGET_ESP32S3
|
|
||||||
#ifndef TASMOTA_SDK
|
#ifndef TASMOTA_SDK
|
||||||
newSettings.enableTLS = root["enableTLS"] | false;
|
newSettings.enableTLS = root["enableTLS"] | false;
|
||||||
newSettings.rootCA = root["rootCA"] | "";
|
newSettings.rootCA = root["rootCA"] | "";
|
||||||
#endif
|
#else
|
||||||
|
newSettings.enableTLS = false;
|
||||||
#endif
|
#endif
|
||||||
newSettings.enabled = root["enabled"] | FACTORY_MQTT_ENABLED;
|
newSettings.enabled = root["enabled"] | FACTORY_MQTT_ENABLED;
|
||||||
newSettings.host = root["host"] | FACTORY_MQTT_HOST;
|
newSettings.host = root["host"] | FACTORY_MQTT_HOST;
|
||||||
@@ -368,7 +366,7 @@ StateUpdateResult MqttSettings::update(JsonObject root, MqttSettings & settings)
|
|||||||
emsesp::EMSESP::mqtt_.set_publish_time_heartbeat(newSettings.publish_time_heartbeat);
|
emsesp::EMSESP::mqtt_.set_publish_time_heartbeat(newSettings.publish_time_heartbeat);
|
||||||
}
|
}
|
||||||
|
|
||||||
#if CONFIG_IDF_TARGET_ESP32S3
|
#ifndef TASMOTA_SDK
|
||||||
// strip down to certificate only
|
// strip down to certificate only
|
||||||
newSettings.rootCA.replace("\r", "");
|
newSettings.rootCA.replace("\r", "");
|
||||||
newSettings.rootCA.replace("\n", "");
|
newSettings.rootCA.replace("\n", "");
|
||||||
|
|||||||
@@ -70,6 +70,9 @@ void NetworkSettingsService::manageSTA() {
|
|||||||
|
|
||||||
// Connect or reconnect as required
|
// Connect or reconnect as required
|
||||||
if ((WiFi.getMode() & WIFI_STA) == 0) {
|
if ((WiFi.getMode() & WIFI_STA) == 0) {
|
||||||
|
#ifdef TASMOTA_SDK
|
||||||
|
WiFi.enableIPv6(_state.enableIPv6);
|
||||||
|
#endif
|
||||||
if (_state.staticIPConfig) {
|
if (_state.staticIPConfig) {
|
||||||
WiFi.config(_state.localIP, _state.gatewayIP, _state.subnetMask, _state.dnsIP1, _state.dnsIP2); // configure for static IP
|
WiFi.config(_state.localIP, _state.gatewayIP, _state.subnetMask, _state.dnsIP1, _state.dnsIP2); // configure for static IP
|
||||||
}
|
}
|
||||||
@@ -388,13 +391,15 @@ void NetworkSettings::read(NetworkSettings & settings, JsonObject root) {
|
|||||||
root["password"] = settings.password;
|
root["password"] = settings.password;
|
||||||
root["hostname"] = settings.hostname;
|
root["hostname"] = settings.hostname;
|
||||||
root["static_ip_config"] = settings.staticIPConfig;
|
root["static_ip_config"] = settings.staticIPConfig;
|
||||||
root["enableIPv6"] = settings.enableIPv6;
|
|
||||||
root["bandwidth20"] = settings.bandwidth20;
|
root["bandwidth20"] = settings.bandwidth20;
|
||||||
root["nosleep"] = settings.nosleep;
|
root["nosleep"] = settings.nosleep;
|
||||||
root["enableMDNS"] = settings.enableMDNS;
|
root["enableMDNS"] = settings.enableMDNS;
|
||||||
root["enableCORS"] = settings.enableCORS;
|
root["enableCORS"] = settings.enableCORS;
|
||||||
root["CORSOrigin"] = settings.CORSOrigin;
|
root["CORSOrigin"] = settings.CORSOrigin;
|
||||||
root["tx_power"] = settings.tx_power;
|
root["tx_power"] = settings.tx_power;
|
||||||
|
#ifndef TASMOTA_SDK
|
||||||
|
root["enableIPv6"] = settings.enableIPv6;
|
||||||
|
#endif
|
||||||
|
|
||||||
// extended settings
|
// extended settings
|
||||||
JsonUtils::writeIP(root, "local_ip", settings.localIP);
|
JsonUtils::writeIP(root, "local_ip", settings.localIP);
|
||||||
@@ -416,14 +421,17 @@ StateUpdateResult NetworkSettings::update(JsonObject root, NetworkSettings & set
|
|||||||
settings.password = root["password"] | FACTORY_WIFI_PASSWORD;
|
settings.password = root["password"] | FACTORY_WIFI_PASSWORD;
|
||||||
settings.hostname = root["hostname"] | FACTORY_WIFI_HOSTNAME;
|
settings.hostname = root["hostname"] | FACTORY_WIFI_HOSTNAME;
|
||||||
settings.staticIPConfig = root["static_ip_config"] | false;
|
settings.staticIPConfig = root["static_ip_config"] | false;
|
||||||
settings.enableIPv6 = root["enableIPv6"] | false;
|
|
||||||
settings.bandwidth20 = root["bandwidth20"] | false;
|
settings.bandwidth20 = root["bandwidth20"] | false;
|
||||||
settings.tx_power = static_cast<uint8_t>(root["tx_power"] | 0);
|
settings.tx_power = static_cast<uint8_t>(root["tx_power"] | 0);
|
||||||
settings.nosleep = root["nosleep"] | false;
|
settings.nosleep = root["nosleep"] | false;
|
||||||
settings.enableMDNS = root["enableMDNS"] | true;
|
settings.enableMDNS = root["enableMDNS"] | true;
|
||||||
settings.enableCORS = root["enableCORS"] | false;
|
settings.enableCORS = root["enableCORS"] | false;
|
||||||
settings.CORSOrigin = root["CORSOrigin"] | "*";
|
settings.CORSOrigin = root["CORSOrigin"] | "*";
|
||||||
|
#ifdef TASMOTA_SDK
|
||||||
|
settings.enableIPv6 = true;
|
||||||
|
#else
|
||||||
|
settings.enableIPv6 = root["enableIPv6"] | false;
|
||||||
|
#endif
|
||||||
// extended settings
|
// extended settings
|
||||||
JsonUtils::readIP(root, "local_ip", settings.localIP);
|
JsonUtils::readIP(root, "local_ip", settings.localIP);
|
||||||
JsonUtils::readIP(root, "gateway_ip", settings.gatewayIP);
|
JsonUtils::readIP(root, "gateway_ip", settings.gatewayIP);
|
||||||
|
|||||||
@@ -96,6 +96,16 @@ build_flags =
|
|||||||
${espressi32_base.build_flags}
|
${espressi32_base.build_flags}
|
||||||
'-DEMSESP_DEFAULT_BOARD_PROFILE="S32S3"'
|
'-DEMSESP_DEFAULT_BOARD_PROFILE="S32S3"'
|
||||||
|
|
||||||
|
[env:ci_16M]
|
||||||
|
extends = espressi32_base
|
||||||
|
extra_scripts = scripts/rename_fw.py
|
||||||
|
board = esp32dev
|
||||||
|
board_build.partitions = esp32_partition_16M.csv
|
||||||
|
board_build.extra_flags = -DBOARD_HAS_PSRAM
|
||||||
|
build_flags =
|
||||||
|
${espressi32_base.build_flags}
|
||||||
|
'-DEMSESP_DEFAULT_BOARD_PROFILE="E32V2"'
|
||||||
|
|
||||||
[env:esp32_4M]
|
[env:esp32_4M]
|
||||||
extends = espressi32_base_tasmota
|
extends = espressi32_base_tasmota
|
||||||
board = esp32dev
|
board = esp32dev
|
||||||
@@ -111,7 +121,7 @@ board_upload.flash_size = 4MB
|
|||||||
board_build.partitions = esp32_asym_partition_4M.csv
|
board_build.partitions = esp32_asym_partition_4M.csv
|
||||||
|
|
||||||
[env:esp32_16M]
|
[env:esp32_16M]
|
||||||
extends = espressi32_base_tasmota
|
extends = espressi32_base
|
||||||
board = esp32dev
|
board = esp32dev
|
||||||
board_build.extra_flags = -DBOARD_HAS_PSRAM
|
board_build.extra_flags = -DBOARD_HAS_PSRAM
|
||||||
board_upload.flash_size = 16MB
|
board_upload.flash_size = 16MB
|
||||||
|
|||||||
Reference in New Issue
Block a user