Skip to content
This repository was archived by the owner on Feb 4, 2023. It is now read-only.

Commit 0542cf6

Browse files
authored
v1.10.1 to add LittleFS support to ESP32-C3
### Releases v1.10.1 1. Add LittleFS support to `ESP32-C3`. 2. Use ESP32-core's LittleFS library instead of Lorol's LITTLEFS library for v2.0.0+
1 parent f72b36f commit 0542cf6

File tree

28 files changed

+269
-820
lines changed

28 files changed

+269
-820
lines changed

README.md

+94-39
Original file line numberDiff line numberDiff line change
@@ -145,6 +145,7 @@
145145
* [8.3 Normal running with correct local time, TZ set and using NTP](#83-normal-running-with-correct-local-time-tz-set-and-using-ntp)
146146
* [9. ESP32_FSWebServer_DRD on ESP32C3_DEV using SPIFFS](#9-esp32_fswebserver_drd-on-esp32c3_dev-using-spiffs)
147147
* [10. ConfigOnDoubleReset on ESP32S3_DEV](#10-configondoublereset-on-esp32s3_dev)
148+
* [11. ConfigOnDoubleReset using LittleFS on ESP32C3_DEV](#11-configondoublereset-using-LittleFS-on-ESP32C3_DEV)
148149
* [Debug](#debug)
149150
* [Troubleshooting](#troubleshooting)
150151
* [Issues](#issues)
@@ -269,7 +270,7 @@ This [**ESP_WiFiManager** library](https://github.com/khoih-prog/ESP_WiFiManager
269270

270271
1. **ESP8266 and ESP32-based boards using EEPROM, SPIFFS or LittleFS**.
271272
2. **ESP32-S2 (ESP32-S2 Saola, AI-Thinker ESP-12K, etc.) using EEPROM, SPIFFS or LittleFS**.
272-
3. **ESP32-C3 (ARDUINO_ESP32C3_DEV) using EEPROM or SPIFFS**.
273+
3. **ESP32-C3 (ARDUINO_ESP32C3_DEV) using EEPROM, SPIFFS or LittleFS**.
273274
4. **ESP32-S3 (ESP32S3_DEV, ESP32_S3_BOX, UM TINYS3, UM PROS3, UM FEATHERS3, etc.) using EEPROM, SPIFFS or LittleFS**.
274275

275276
---
@@ -452,8 +453,14 @@ then connect WebBrowser to configurable ConfigPortal IP address, default is 192.
452453
WiFiMulti wifiMulti;
453454

454455
// LittleFS has higher priority than SPIFFS
455-
#define USE_LITTLEFS true
456-
#define USE_SPIFFS false
456+
#if ( defined(ESP_ARDUINO_VERSION_MAJOR) && (ESP_ARDUINO_VERSION_MAJOR >= 2) )
457+
#define USE_LITTLEFS true
458+
#define USE_SPIFFS false
459+
#elif defined(ARDUINO_ESP32C3_DEV)
460+
// For core v1.0.6-, ESP32-C3 only supporting SPIFFS and EEPROM. To use v2.0.0+ for LittleFS
461+
#define USE_LITTLEFS false
462+
#define USE_SPIFFS true
463+
#endif
457464

458465
#if USE_LITTLEFS
459466
// Use LittleFS
@@ -464,15 +471,15 @@ then connect WebBrowser to configurable ConfigPortal IP address, default is 192.
464471
#if ( defined(ESP_ARDUINO_VERSION_MAJOR) && (ESP_ARDUINO_VERSION_MAJOR >= 2) )
465472
#warning Using ESP32 Core 1.0.6 or 2.0.0+
466473
// The library has been merged into esp32 core from release 1.0.6
467-
#include <LittleFS.h>
474+
#include <LittleFS.h> // https://github.com/espressif/arduino-esp32/tree/master/libraries/LittleFS
468475
469476
FS* filesystem = &LittleFS;
470477
#define FileFS LittleFS
471478
#define FS_Name "LittleFS"
472479
#else
473480
#warning Using ESP32 Core 1.0.5-. You must install LITTLEFS library
474481
// The library has been merged into esp32 core from release 1.0.6
475-
#include <LITTLEFS.h> // https://github.com/lorol/LITTLEFS
482+
#include <LITTLEFS.h> // https://github.com/lorol/LITTLEFS
476483
477484
FS* filesystem = &LITTLEFS;
478485
#define FileFS LITTLEFS
@@ -2198,7 +2205,7 @@ ESP_wifiManager.setRemoveDuplicateAPs(false);
21982205
#error This code is intended to run on the ESP8266 or ESP32 platform! Please check your Tools->Board setting.
21992206
#endif
22002207

2201-
#define ESP_WIFIMANAGER_VERSION_MIN_TARGET "ESP_WiFiManager v1.10.0"
2208+
#define ESP_WIFIMANAGER_VERSION_MIN_TARGET "ESP_WiFiManager v1.10.1"
22022209
#define ESP_WIFIMANAGER_VERSION_MIN 1010000
22032210

22042211
// Use from 0 to 4. Higher number, more debugging messages and memory usage.
@@ -2224,13 +2231,13 @@ ESP_wifiManager.setRemoveDuplicateAPs(false);
22242231
WiFiMulti wifiMulti;
22252232

22262233
// LittleFS has higher priority than SPIFFS
2227-
#if ( ARDUINO_ESP32C3_DEV )
2228-
// Currently, ESP32-C3 only supporting SPIFFS and EEPROM. Will fix to support LittleFS
2229-
#define USE_LITTLEFS false
2230-
#define USE_SPIFFS true
2231-
#else
2234+
#if ( defined(ESP_ARDUINO_VERSION_MAJOR) && (ESP_ARDUINO_VERSION_MAJOR >= 2) )
22322235
#define USE_LITTLEFS true
22332236
#define USE_SPIFFS false
2237+
#elif defined(ARDUINO_ESP32C3_DEV)
2238+
// For core v1.0.6-, ESP32-C3 only supporting SPIFFS and EEPROM. To use v2.0.0+ for LittleFS
2239+
#define USE_LITTLEFS false
2240+
#define USE_SPIFFS true
22342241
#endif
22352242

22362243
#if USE_LITTLEFS
@@ -2242,15 +2249,15 @@ ESP_wifiManager.setRemoveDuplicateAPs(false);
22422249
#if ( defined(ESP_ARDUINO_VERSION_MAJOR) && (ESP_ARDUINO_VERSION_MAJOR >= 2) )
22432250
#warning Using ESP32 Core 1.0.6 or 2.0.0+
22442251
// The library has been merged into esp32 core from release 1.0.6
2245-
#include <LittleFS.h>
2252+
#include <LittleFS.h> // https://github.com/espressif/arduino-esp32/tree/master/libraries/LittleFS
22462253
22472254
FS* filesystem = &LittleFS;
22482255
#define FileFS LittleFS
22492256
#define FS_Name "LittleFS"
22502257
#else
22512258
#warning Using ESP32 Core 1.0.5-. You must install LITTLEFS library
22522259
// The library has been merged into esp32 core from release 1.0.6
2253-
#include <LITTLEFS.h> // https://github.com/lorol/LITTLEFS
2260+
#include <LITTLEFS.h> // https://github.com/lorol/LITTLEFS
22542261
22552262
FS* filesystem = &LITTLEFS;
22562263
#define FileFS LITTLEFS
@@ -3570,7 +3577,7 @@ This is terminal debug output when running [ConfigOnSwitchFS_MQTT_Ptr](examples/
35703577
35713578
```
35723579
Starting ConfigOnSwichFS_MQTT_Ptr using LittleFS on ESP8266_NODEMCU_ESP12E
3573-
ESP_WiFiManager v1.9.0
3580+
ESP_WiFiManager v1.10.1
35743581
Configuration file not found
35753582
Failed to read configuration file, using default values
35763583
[WM] RFC925 Hostname = ConfigOnSwichFS-MQTT
@@ -3682,8 +3689,8 @@ This is terminal debug output when running [ESP32_FSWebServer_DRD](examples/ESP3
36823689
36833690
```cpp
36843691
Starting ESP32_FSWebServer_DRD with DoubleResetDetect using SPIFFS on ESP32_DEV
3685-
ESP_WiFiManager v1.9.0
3686-
ESP_DoubleResetDetector v1.2.1
3692+
ESP_WiFiManager v1.10.1
3693+
ESP_DoubleResetDetector v1.3.0
36873694
FS File: /ConfigSW.json, size: 150B
36883695
FS File: /CanadaFlag_1.png, size: 40.25KB
36893696
FS File: /CanadaFlag_2.png, size: 8.12KB
@@ -3747,8 +3754,8 @@ This is terminal debug output when running [ESP32_FSWebServer_DRD](examples/ESP3
37473754

37483755
```
37493756
Starting ESP32_FSWebServer_DRD with DoubleResetDetect using LittleFS on ESP32_DEV
3750-
ESP_WiFiManager v1.9.0
3751-
ESP_DoubleResetDetector v1.2.1
3757+
ESP_WiFiManager v1.10.1
3758+
ESP_DoubleResetDetector v1.3.0
37523759
FS File: /CanadaFlag_1.png, size: 40.25KB
37533760
FS File: /CanadaFlag_2.png, size: 8.12KB
37543761
FS File: /CanadaFlag_3.jpg, size: 10.89KB
@@ -3806,8 +3813,8 @@ This is terminal debug output when running [ConfigOnDRD_FS_MQTT_Ptr_Complex](exa
38063813

38073814
```
38083815
Starting ConfigOnDRD_FS_MQTT_Ptr_Complex using LittleFS on ESP32_DEV
3809-
ESP_WiFiManager v1.9.0
3810-
ESP_DoubleResetDetector v1.2.1
3816+
ESP_WiFiManager v1.10.1
3817+
ESP_DoubleResetDetector v1.3.0
38113818
{"AIO_KEY_Label":"aio_key","AIO_SERVER_Label":"io.adafruit.com","AIO_SERVERPORT_Label":"1883","AIO_USERNAME_Label":"user_name"}
38123819
Config File successfully parsed
38133820
LittleFS Flag read = 0xd0d04321
@@ -3849,8 +3856,8 @@ WWWW WTWWWW WWTWWW WWWTWW WWWWTW WWWWW
38493856

38503857
```
38513858
Starting ConfigOnDRD_FS_MQTT_Ptr_Complex using LittleFS on ESP32_DEV
3852-
ESP_WiFiManager v1.9.0
3853-
ESP_DoubleResetDetector v1.2.1
3859+
ESP_WiFiManager v1.10.1
3860+
ESP_DoubleResetDetector v1.3.0
38543861
{"AIO_KEY_Label":"aio_key","AIO_SERVER_Label":"io.adafruit.com","AIO_SERVERPORT_Label":"1883","AIO_USERNAME_Label":"user_name"}
38553862
Config File successfully parsed
38563863
LittleFS Flag read = 0xd0d01234
@@ -3934,8 +3941,8 @@ This is terminal debug output when running [ConfigOnDRD_FS_MQTT_Ptr_Complex](exa
39343941

39353942
```
39363943
Starting ConfigOnDRD_FS_MQTT_Ptr_Medium using LittleFS on ESP8266_NODEMCU_ESP12E
3937-
ESP_WiFiManager v1.9.0
3938-
ESP_DoubleResetDetector v1.2.1
3944+
ESP_WiFiManager v1.10.1
3945+
ESP_DoubleResetDetector v1.3.0
39393946
{"AIO_KEY_Label":"aio_key","AIO_SERVER_Label":"io.adafruit.com","AIO_SERVERPORT_Label":"1883","AIO_USERNAME_Label":"user_name"}
39403947
Config File successfully parsed
39413948
LittleFS Flag read = 0xd0d04321
@@ -3974,8 +3981,8 @@ TWWWW WTWWWW WWTWWW WWWTWW WWWWTW WWWWW
39743981

39753982
```
39763983
Starting ConfigOnDRD_FS_MQTT_Ptr_Medium using LittleFS on ESP8266_NODEMCU_ESP12E
3977-
ESP_WiFiManager v1.9.0
3978-
ESP_DoubleResetDetector v1.2.1
3984+
ESP_WiFiManager v1.10.1
3985+
ESP_DoubleResetDetector v1.3.0
39793986
{"AIO_KEY_Label":"aio_key","AIO_SERVER_Label":"io.adafruit.com","AIO_SERVERPORT_Label":"1883","AIO_USERNAME_Label":"user_name"}
39803987
Config File successfully parsed
39813988
LittleFS Flag read = 0xd0d01234
@@ -4051,8 +4058,8 @@ This is terminal debug output when running [ConfigOnDoubleReset](examples/Config
40514058

40524059
```
40534060
Starting ConfigOnDoubleReset with DoubleResetDetect using LittleFS on ESP32S2_DEV
4054-
ESP_WiFiManager v1.9.0
4055-
ESP_DoubleResetDetector v1.2.1
4061+
ESP_WiFiManager v1.10.1
4062+
ESP_DoubleResetDetector v1.3.0
40564063
[WM] RFC925 Hostname = ConfigOnDoubleReset
40574064
[WM] setAPStaticIPConfig
40584065
[WM] Set CORS Header to : Your Access-Control-Allow-Origin
@@ -4101,8 +4108,8 @@ This is terminal debug output when running [ConfigOnDoubleReset](examples/Config
41014108

41024109
```
41034110
Starting ConfigOnDoubleReset with DoubleResetDetect using LittleFS on ESP32_DEV
4104-
ESP_WiFiManager v1.9.0
4105-
ESP_DoubleResetDetector v1.2.1
4111+
ESP_WiFiManager v1.10.1
4112+
ESP_DoubleResetDetector v1.3.0
41064113
[WM] RFC925 Hostname = ConfigOnDoubleReset
41074114
[WM] Set CORS Header to : Your Access-Control-Allow-Origin
41084115
ESP Self-Stored: SSID = HueNet1, Pass = password
@@ -4211,8 +4218,8 @@ Local Date/Time: Thu May 6 21:29:18 2021
42114218

42124219
```
42134220
Starting ConfigOnDoubleReset with DoubleResetDetect using LittleFS on ESP32_DEV
4214-
ESP_WiFiManager v1.9.0
4215-
ESP_DoubleResetDetector v1.2.1
4221+
ESP_WiFiManager v1.10.1
4222+
ESP_DoubleResetDetector v1.3.0
42164223
[WM] RFC925 Hostname = ConfigOnDoubleReset
42174224
[WM] Set CORS Header to : Your Access-Control-Allow-Origin
42184225
ESP Self-Stored: SSID = HueNet1, Pass = password
@@ -4262,8 +4269,8 @@ This is terminal debug output when running [ConfigOnDoubleReset](examples/Config
42624269

42634270
```
42644271
Starting ConfigOnDoubleReset with DoubleResetDetect using LittleFS on ESP32S2_DEV
4265-
ESP_WiFiManager v1.9.0
4266-
ESP_DoubleResetDetector v1.2.1
4272+
ESP_WiFiManager v1.10.1
4273+
ESP_DoubleResetDetector v1.3.0
42674274
[WM] RFC925 Hostname = ConfigOnDoubleReset
42684275
[WM] Set CORS Header to : Your Access-Control-Allow-Origin
42694276
ESP Self-Stored: SSID = HueNet1, Pass = password
@@ -4408,8 +4415,8 @@ Local Date/Time: Thu May 6 21:29:18 2021
44084415

44094416
```
44104417
Starting ConfigOnDoubleReset with DoubleResetDetect using LittleFS on ESP32S2_DEV
4411-
ESP_WiFiManager v1.9.0
4412-
ESP_DoubleResetDetector v1.2.1
4418+
ESP_WiFiManager v1.10.1
4419+
ESP_DoubleResetDetector v1.3.0
44134420
[WM] RFC925 Hostname = ConfigOnDoubleReset
44144421
[WM] Set CORS Header to : Your Access-Control-Allow-Origin
44154422
ESP Self-Stored: SSID = HueNet1, Pass = password
@@ -4461,8 +4468,8 @@ This is terminal debug output when running [ESP32_FSWebServer_DRD](examples/ESP3
44614468

44624469
```
44634470
Starting ESP32_FSWebServer_DRD with DoubleResetDetect using SPIFFS on ESP32C3_DEV
4464-
ESP_WiFiManager v1.9.0
4465-
ESP_DoubleResetDetector v1.2.1
4471+
ESP_WiFiManager v1.10.1
4472+
ESP_DoubleResetDetector v1.3.0
44664473
FS File: wm_cp.dat, size: 4B
44674474
FS File: wm_cp.bak, size: 4B
44684475
FS File: wmssl_conf.dat, size: 376B
@@ -4533,7 +4540,7 @@ This is terminal debug output when running [ConfigOnDoubleReset](examples/Config
45334540

45344541
```
45354542
Starting ConfigOnDoubleReset with DoubleResetDetect using LittleFS on ESP32S3_DEV
4536-
ESP_WiFiManager v1.10.0
4543+
ESP_WiFiManager v1.10.1
45374544
ESP_DoubleResetDetector v1.3.0
45384545
[WM] RFC925 Hostname = ConfigOnDoubleReset
45394546
[WM] Set CORS Header to : Your Access-Control-Allow-Origin
@@ -4584,6 +4591,54 @@ Local Date/Time: Thu Feb 10 23:26:26 2022
45844591

45854592
---
45864593

4594+
#### 11. [ConfigOnDoubleReset](examples/ConfigOnDoubleReset) using LittleFS on ESP32C3_DEV
4595+
4596+
This is terminal debug output when running [ConfigOnDoubleReset](examples/ConfigOnDoubleReset) on **ESP32C3_DEV**.
4597+
4598+
4599+
```
4600+
Starting ConfigOnDoubleReset with DoubleResetDetect using LittleFS on ESP32C3_DEV
4601+
ESP_WiFiManager v1.10.1
4602+
ESP_DoubleResetDetector v1.3.0
4603+
[WM] RFC925 Hostname = ConfigOnDoubleReset
4604+
[WM] Set CORS Header to : Your Access-Control-Allow-Origin
4605+
ESP Self-Stored: SSID = HueNet1, Pass = password
4606+
[WM] * Add SSID = HueNet1 , PW = password
4607+
Got ESP Self-Stored Credentials. Timeout 120s for Config Portal
4608+
[WM] LoadWiFiCfgFile
4609+
[WM] OK
4610+
[WM] stationIP = 0.0.0.0 , gatewayIP = 192.168.2.1
4611+
[WM] netMask = 255.255.255.0
4612+
[WM] dns1IP = 192.168.2.1 , dns2IP = 8.8.8.8
4613+
Got stored Credentials. Timeout 120s for Config Portal
4614+
[WM] Current TZ_Name = America/New_York , TZ = EST5EDT,M3.2.0,M11.1.0
4615+
LittleFS Flag read = 0xD0D04321
4616+
No doubleResetDetected
4617+
Saving config file...
4618+
Saving config file OK
4619+
[WM] * Add SSID = HueNet1 , PW = password
4620+
[WM] * Add SSID = HueNet2 , PW = password
4621+
ConnectMultiWiFi in setup
4622+
[WM] ConnectMultiWiFi with :
4623+
[WM] * Flash-stored Router_SSID = HueNet1 , Router_Pass = password
4624+
[WM] * Add SSID = HueNet1 , PW = password
4625+
[WM] * Additional SSID = HueNet1 , PW = password
4626+
[WM] * Additional SSID = HueNet2 , PW = password
4627+
[WM] Connecting MultiWifi...
4628+
[WM] WiFi connected after time: 1
4629+
[WM] SSID: HueNet1 ,RSSI= -20
4630+
[WM] Channel: 2 ,IP address: 192.168.2.85
4631+
After waiting 8.31 secs more in setup(), connection result is connected. Local IP: 192.168.2.85
4632+
[WM] freeing allocated params!
4633+
Stop doubleResetDetecting
4634+
Saving config file...
4635+
Saving config file OK
4636+
Local Date/Time: Fri Feb 11 18:40:46 2022
4637+
Local Date/Time: Fri Feb 11 18:41:46 2022
4638+
Local Date/Time: Fri Feb 11 18:42:46 2022
4639+
Local Date/Time: Fri Feb 11 18:43:46 2022
4640+
```
4641+
45874642
---
45884643
---
45894644

changelog.md

+6
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@
1313
## Table of Contents
1414

1515
* [Changelog](#changelog)
16+
* [Releases v1.10.1](#releases-v1101)
1617
* [Releases v1.10.0](#releases-v1100)
1718
* [Releases v1.9.0](#releases-v190)
1819
* [Releases v1.8.0](#releases-v180)
@@ -52,6 +53,11 @@
5253

5354
## Changelog
5455

56+
### Releases v1.10.1
57+
58+
1. Add LittleFS support to `ESP32-C3`.
59+
2. Use ESP32-core's LittleFS library instead of Lorol's LITTLEFS library for v2.0.0+
60+
5561
### Releases v1.10.0
5662

5763
1. Add support to `ESP32-S3` (`ESP32S3_DEV, ESP32_S3_BOX, UM TINYS3, UM PROS3, UM FEATHERS3`, etc.) using [ESP32 core, esp32-s3-support branch, v2.0.2+](https://github.com/espressif/arduino-esp32/tree/esp32-s3-support)

examples/AutoConnect/AutoConnect.ino

+9-9
Original file line numberDiff line numberDiff line change
@@ -15,8 +15,8 @@
1515
#error This code is intended to run on the ESP8266 or ESP32 platform! Please check your Tools->Board setting.
1616
#endif
1717

18-
#define ESP_WIFIMANAGER_VERSION_MIN_TARGET "ESP_WiFiManager v1.10.0"
19-
#define ESP_WIFIMANAGER_VERSION_MIN 1010000
18+
#define ESP_WIFIMANAGER_VERSION_MIN_TARGET "ESP_WiFiManager v1.10.1"
19+
#define ESP_WIFIMANAGER_VERSION_MIN 1010001
2020

2121
// Use from 0 to 4. Higher number, more debugging messages and memory usage.
2222
#define _WIFIMGR_LOGLEVEL_ 3
@@ -32,13 +32,13 @@
3232
WiFiMulti wifiMulti;
3333

3434
// LittleFS has higher priority than SPIFFS
35-
#if ( ARDUINO_ESP32C3_DEV )
36-
// Currently, ESP32-C3 only supporting SPIFFS and EEPROM. Will fix to support LittleFS
37-
#define USE_LITTLEFS false
38-
#define USE_SPIFFS true
39-
#else
35+
#if ( defined(ESP_ARDUINO_VERSION_MAJOR) && (ESP_ARDUINO_VERSION_MAJOR >= 2) )
4036
#define USE_LITTLEFS true
4137
#define USE_SPIFFS false
38+
#elif defined(ARDUINO_ESP32C3_DEV)
39+
// For core v1.0.6-, ESP32-C3 only supporting SPIFFS and EEPROM. To use v2.0.0+ for LittleFS
40+
#define USE_LITTLEFS false
41+
#define USE_SPIFFS true
4242
#endif
4343

4444
#if USE_LITTLEFS
@@ -50,15 +50,15 @@
5050
#if ( defined(ESP_ARDUINO_VERSION_MAJOR) && (ESP_ARDUINO_VERSION_MAJOR >= 2) )
5151
#warning Using ESP32 Core 1.0.6 or 2.0.0+
5252
// The library has been merged into esp32 core from release 1.0.6
53-
#include <LittleFS.h>
53+
#include <LittleFS.h> // https://github.com/espressif/arduino-esp32/tree/master/libraries/LittleFS
5454

5555
FS* filesystem = &LittleFS;
5656
#define FileFS LittleFS
5757
#define FS_Name "LittleFS"
5858
#else
5959
#warning Using ESP32 Core 1.0.5-. You must install LITTLEFS library
6060
// The library has been merged into esp32 core from release 1.0.6
61-
#include <LITTLEFS.h> // https://github.com/lorol/LITTLEFS
61+
#include <LITTLEFS.h> // https://github.com/lorol/LITTLEFS
6262

6363
FS* filesystem = &LITTLEFS;
6464
#define FileFS LITTLEFS

0 commit comments

Comments
 (0)