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

Commit 225063f

Browse files
authored
v1.1.0 to add support to RP2040-based boards
### Major Releases v1.1.0 1. Add support to RP2040-based boards, such as **RASPBERRY_PI_PICO, ADAFRUIT_FEATHER_RP2040 and GENERIC_RP2040**, using [**Earle Philhower's arduino-pico** v1.6.2+ core](https://github.com/earlephilhower/arduino-pico). 2. Add support to RP2040-based boards, such as **Nano_RP2040_Connect, RASPBERRY_PI_PICO, ADAFRUIT_FEATHER_RP2040 and GENERIC_RP2040**, using [**Arduino-mbed RP2040** v2.1.0+ core](https://github.com/arduino/ArduinoCore-mbed). 3. Enable scan of WiFi networks for selection in Configuration Portal. Check [PR for v1.3.0 - Enable scan of WiFi networks #10](khoih-prog/WiFiManager_NINA_Lite#10). Now you can select optional **SCAN_WIFI_NETWORKS**, **MANUAL_SSID_INPUT_ALLOWED** to be able to manually input SSID, not only from a scanned SSID lists and **MAX_SSID_IN_LIST** (from 2-6 for ESP8266-AT or 2-15 for other) 4. Use more efficient [FlashStorage_SAMD v1.1.0](https://github.com/khoih-prog/FlashStorage_SAMD) and [FlashStorage_STM32 v1.0.0](https://github.com/khoih-prog/FlashStorage_STM32) 5. Add functions to control Config Portal from software or Virtual Switches. Check [How to trigger a Config Portal from code #25](khoih-prog/Blynk_WM#25) 6. Configurable **Customs HTML Headers**, including Customs Style, Customs Head Elements, CORS Header. 7. Fix MultiWiFi connection bug. Check [SAMD MultiWiFi issues when first WiFi SSID configured in CP is invalid or not available #6](khoih-prog/WiFiManager_NINA_Lite#6) 8. Fix invalid "blank" or NULL Config Data treated as Valid. Check [WiFiManager connection attempt to unconfigured ("blank") SSID after restart on SAMD #8](khoih-prog/WiFiManager_NINA_Lite#8) 9. Permit optionally inputting one set of WiFi SSID/PWD by using `REQUIRE_ONE_SET_SSID_PW == true` 10. Enforce WiFi Password minimum length of 8 chars 11. Enhance MultiWiFi connection logic 12. Minor enhancement to not display garbage when data is invalid 13. Tested with new [Arduino Core for STM32 v2.0.0](https://github.com/stm32duino/Arduino_Core_STM32) and add support to new STM32L5 boards 14. Optimize code. 15. Update examples 16. Update `Packages' Patches 17. Fix compiler warnings.
1 parent 6ae2237 commit 225063f

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

54 files changed

+12862
-3738
lines changed

CONTRIBUTING.md

Lines changed: 13 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,21 @@
1-
## Contributing to Blynk_WiFiManager
1+
## Contributing to Blynk_WiFiNINA_WM
22

33
### Reporting Bugs
44

5-
Please report bugs in Blynk_WiFiManager if you find them.
5+
Please report bugs in Blynk_WiFiNINA_WM if you find them.
66

77
However, before reporting a bug please check through the following:
88

9-
* [Existing Open Issues](https://github.com/khoih-prog/Blynk_WM/issues) - someone might have already encountered this.
9+
* [Existing Open Issues](https://github.com/khoih-prog/Blynk_WiFiNINA_WM/issues) - someone might have already encountered this.
1010

11-
If you don't find anything, please [open a new issue](https://github.com/khoih-prog/Blynk_WM/issues/new).
11+
If you don't find anything, please [open a new issue](https://github.com/khoih-prog/Blynk_WiFiNINA_WM/issues/new).
1212

1313
### How to submit a bug report
1414

1515
Please ensure to specify the following:
1616

17-
* Arduino IDE version (e.g. 1.8.10) or Platform.io version
18-
* `ESP8266` or `ESP32` Core Version (e.g. ESP8266 core v2.6.3 or ESP32 v1.0.4)
17+
* Arduino IDE version (e.g. 1.8.15) or Platform.io version
18+
* Board Core Version (e.g. Arduino SAMD core v1.8.11, Arduino SAMDUE core v1.6.12, etc.)
1919
* Contextual information (e.g. what you were trying to achieve)
2020
* Simplest possible steps to reproduce
2121
* Anything that might be relevant in your opinion, such as:
@@ -26,10 +26,10 @@ Please ensure to specify the following:
2626
### Example
2727

2828
```
29-
Arduino IDE version: 1.8.10
30-
ESP8266 Core Version 2.6.3
31-
OS: Ubuntu 16.04 LTS
32-
Linux Inspiron 4.4.0-170-generic #199-Ubuntu SMP Thu Nov 14 01:45:04 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux
29+
Arduino IDE version: 1.8.15
30+
Arduino SAMD Core Version 1.8.11
31+
OS: Ubuntu 20.04 LTS
32+
Linux xy-Inspiron-3593 5.4.0-73-generic #82-Ubuntu SMP Wed Apr 14 17:39:42 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux
3333
3434
Context:
3535
The board couldn't autoreconnect to Local Blynk Server after router power recycling.
@@ -39,13 +39,15 @@ Steps to reproduce:
3939
2. ...
4040
3. ...
4141
4. ...
42+
```
4243

4344
### Sending Feature Requests
4445

4546
Feel free to post feature requests. It's helpful if you can explain exactly why the feature would be useful.
4647

47-
There are usually some outstanding feature requests in the [existing issues list](https://github.com/khoih-prog/Blynk_WM/issues?q=is%3Aopen+is%3Aissue+label%3Aenhancement), feel free to add comments to them.
48+
There are usually some outstanding feature requests in the [existing issues list](https://github.com/khoih-prog/Blynk_WiFiNINA_WM/issues?q=is%3Aopen+is%3Aissue+label%3Aenhancement), feel free to add comments to them.
4849

4950
### Sending Pull Requests
5051

5152
Pull Requests with changes and fixes are also welcome!
53+

README.md

Lines changed: 1161 additions & 517 deletions
Large diffs are not rendered by default.

examples/Mega_WiFiNINA_WM/Credentials.h

Lines changed: 10 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -1,32 +1,14 @@
11
/****************************************************************************************************************************
2-
Credentials.h for Mega_WiFiNINA.ino
3-
For AVR Mega boards using WiFiNINA Shields
4-
5-
Blynk_WiFiNINA_WM is a library for the Mega, Teensy, SAM DUE, nRF52, STM32 and SAMD boards
6-
(https://github.com/khoih-prog/Blynk_WiFiNINA_WM) to enable easy configuration/reconfiguration and
7-
autoconnect/autoreconnect of WiFiNINA/Blynk
8-
9-
Modified from Blynk library v0.6.1 https://github.com/blynkkk/blynk-library/releases
10-
Built by Khoi Hoang https://github.com/khoih-prog/Blynk_WiFiNINA_WM
11-
Licensed under MIT license
12-
Version: 1.0.4
13-
14-
Original Blynk Library author:
15-
@file BlynkSimpleWiFiNINA.h
16-
@author Volodymyr Shymanskyy
17-
@license This project is released under the MIT License (MIT)
18-
@copyright Copyright (c) 2018 Volodymyr Shymanskyy
19-
@date Sep 2018
20-
@brief
21-
22-
Version Modified By Date Comments
23-
------- ----------- ---------- -----------
24-
1.0.0 K Hoang 07/04/2020 Initial coding
25-
1.0.1 K Hoang 09/04/2020 Add support to SAM DUE, Teensy, STM32
26-
1.0.2 K Hoang 15/04/2020 Fix bug. Add SAMD51 support.
27-
1.0.3 K Hoang 05/05/2020 Add nRF52 support, MultiWiFi/Blynk, Configurable Config Portal Title,
28-
Default Config Data and DRD. Update examples.
29-
1.0.4 K Hoang 13/05/2020 Add support to Arduino UNO WiFi R2
2+
Credentials.h
3+
For AVR Mega boards using WiFiNINA Shields
4+
5+
Blynk_WiFiNINA_WM is a library for the Mega, Teensy, SAM DUE, nRF52, STM32, SAMD and RP2040 boards
6+
(https://github.com/khoih-prog/Blynk_WiFiNINA_WM) to enable easy configuration/reconfiguration and
7+
autoconnect/autoreconnect of WiFiNINA/Blynk
8+
9+
Modified from Blynk library v0.6.1 https://github.com/blynkkk/blynk-library/releases
10+
Built by Khoi Hoang https://github.com/khoih-prog/Blynk_WiFiNINA_WM
11+
Licensed under MIT license
3012
*****************************************************************************************************************************/
3113

3214
#ifndef Credentials_h

examples/Mega_WiFiNINA_WM/Mega_WiFiNINA_WM.ino

Lines changed: 38 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -1,38 +1,41 @@
11
/****************************************************************************************************************************
2-
Mega_WiFiNINA.ino
3-
For AVR Mega boards using WiFiNINA Shields
4-
5-
Blynk_WiFiNINA_WM is a library for the Mega, Teensy, SAM DUE, nRF52, STM32 and SAMD boards
6-
(https://github.com/khoih-prog/Blynk_WiFiNINA_WM) to enable easy configuration/reconfiguration and
7-
autoconnect/autoreconnect of WiFiNINA/Blynk
8-
9-
Modified from Blynk library v0.6.1 https://github.com/blynkkk/blynk-library/releases
10-
Built by Khoi Hoang https://github.com/khoih-prog/Blynk_WiFiNINA_WM
11-
Licensed under MIT license
12-
Version: 1.0.4
13-
14-
Original Blynk Library author:
15-
@file BlynkSimpleWiFiNINA.h
16-
@author Volodymyr Shymanskyy
17-
@license This project is released under the MIT License (MIT)
18-
@copyright Copyright (c) 2018 Volodymyr Shymanskyy
19-
@date Sep 2018
20-
@brief
21-
22-
Version Modified By Date Comments
23-
------- ----------- ---------- -----------
24-
1.0.0 K Hoang 07/04/2020 Initial coding
25-
1.0.1 K Hoang 09/04/2020 Add support to SAM DUE, Teensy, STM32
26-
1.0.2 K Hoang 15/04/2020 Fix bug. Add SAMD51 support.
27-
1.0.3 K Hoang 05/05/2020 Add nRF52 support, MultiWiFi/Blynk, Configurable Config Portal Title,
28-
Default Config Data and DRD. Update examples.
29-
1.0.4 K Hoang 13/05/2020 Add support to Arduino UNO WiFi R2
2+
Mega_WiFiNINA.ino
3+
For AVR Mega boards using WiFiNINA Shields
4+
5+
Blynk_WiFiNINA_WM is a library for the Mega, Teensy, SAM DUE, nRF52, STM32, SAMD and RP2040 boards
6+
(https://github.com/khoih-prog/Blynk_WiFiNINA_WM) to enable easy configuration/reconfiguration and
7+
autoconnect/autoreconnect of WiFiNINA/Blynk
8+
9+
Modified from Blynk library v0.6.1 https://github.com/blynkkk/blynk-library/releases
10+
Built by Khoi Hoang https://github.com/khoih-prog/Blynk_WiFiNINA_WM
11+
Licensed under MIT license
12+
13+
Original Blynk Library author:
14+
@file BlynkSimpleWiFiNINA.h
15+
@author Volodymyr Shymanskyy
16+
@license This project is released under the MIT License (MIT)
17+
@copyright Copyright (c) 2018 Volodymyr Shymanskyy
18+
@date Sep 2018
19+
@brief
20+
21+
Version: 1.1.0
22+
23+
Version Modified By Date Comments
24+
------- ----------- ---------- -----------
25+
1.0.0 K Hoang 07/04/2020 Initial coding
26+
1.0.1 K Hoang 09/04/2020 Add support to SAM DUE, Teensy, STM32
27+
1.0.2 K Hoang 15/04/2020 Fix bug. Add SAMD51 support.
28+
1.0.3 K Hoang 05/05/2020 Add nRF52 support, MultiWiFi/Blynk, Configurable Config Portal Title,
29+
Default Config Data and DRD. Update examples.
30+
1.0.4 K Hoang 13/05/2020 Add support to Arduino UNO WiFi R2
31+
1.1.0 K Hoang 28/05/2021 Add support to Nano_RP2040_Connect, RASPBERRY_PI_PICO using Arduino mbed or pico core
32+
Enable scan of WiFi networks for selection in Configuration Portal
3033
*****************************************************************************************************************************/
3134
#include "defines.h"
3235
#include "Credentials.h"
3336
#include "dynamicParams.h"
3437

35-
void heartBeatPrint(void)
38+
void heartBeatPrint()
3639
{
3740
static int num = 1;
3841

@@ -79,9 +82,12 @@ void setup()
7982
while (!Serial);
8083
//delay(1000);
8184

82-
Serial.println("\nStart Blynk_WiFiNINA_WM using WiFiNINA_Shield on " + String(BOARD_TYPE));
85+
Serial.print("\nStart Mega_WiFiNINA_WM using WiFiNINA_Shield on ");
86+
Serial.println(BOARD_NAME);
8387

8488
#if USE_BLYNK_WM
89+
Serial.println(BLYNK_WIFININA_WM_VERSION);
90+
8591
//Blynk.setConfigPortalIP(IPAddress(192, 168, 120, 1));
8692
//Blynk.setConfigPortal("Mega", "MyMega");
8793
Blynk.begin();
@@ -95,7 +101,7 @@ void displayCredentials(void)
95101
{
96102
Serial.println("Your stored Credentials :");
97103

98-
for (int i = 0; i < NUM_MENU_ITEMS; i++)
104+
for (uint16_t i = 0; i < NUM_MENU_ITEMS; i++)
99105
{
100106
Serial.println(String(myMenuItems[i].displayName) + " = " + myMenuItems[i].pdata);
101107
}
@@ -112,7 +118,7 @@ void loop()
112118

113119
if (!displayedCredentials)
114120
{
115-
for (int i = 0; i < NUM_MENU_ITEMS; i++)
121+
for (uint16_t i = 0; i < NUM_MENU_ITEMS; i++)
116122
{
117123
if (!strlen(myMenuItems[i].pdata))
118124
{

examples/Mega_WiFiNINA_WM/defines.h

Lines changed: 20 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -1,32 +1,14 @@
11
/****************************************************************************************************************************
2-
defines.h for Mega_WiFiNINA.ino
3-
For AVR Mega boards using WiFiNINA Shields
4-
5-
Blynk_WiFiNINA_WM is a library for the Mega, Teensy, SAM DUE, nRF52, STM32 and SAMD boards
6-
(https://github.com/khoih-prog/Blynk_WiFiNINA_WM) to enable easy configuration/reconfiguration and
7-
autoconnect/autoreconnect of WiFiNINA/Blynk
8-
9-
Modified from Blynk library v0.6.1 https://github.com/blynkkk/blynk-library/releases
10-
Built by Khoi Hoang https://github.com/khoih-prog/Blynk_WiFiNINA_WM
11-
Licensed under MIT license
12-
Version: 1.0.4
13-
14-
Original Blynk Library author:
15-
@file BlynkSimpleWiFiNINA.h
16-
@author Volodymyr Shymanskyy
17-
@license This project is released under the MIT License (MIT)
18-
@copyright Copyright (c) 2018 Volodymyr Shymanskyy
19-
@date Sep 2018
20-
@brief
21-
22-
Version Modified By Date Comments
23-
------- ----------- ---------- -----------
24-
1.0.0 K Hoang 07/04/2020 Initial coding
25-
1.0.1 K Hoang 09/04/2020 Add support to SAM DUE, Teensy, STM32
26-
1.0.2 K Hoang 15/04/2020 Fix bug. Add SAMD51 support.
27-
1.0.3 K Hoang 05/05/2020 Add nRF52 support, MultiWiFi/Blynk, Configurable Config Portal Title,
28-
Default Config Data and DRD. Update examples.
29-
1.0.4 K Hoang 13/05/2020 Add support to Arduino UNO WiFi R2
2+
defines.h
3+
For AVR Mega boards using WiFiNINA Shields
4+
5+
Blynk_WiFiNINA_WM is a library for the Mega, Teensy, SAM DUE, nRF52, STM32, SAMD and RP2040 boards
6+
(https://github.com/khoih-prog/Blynk_WiFiNINA_WM) to enable easy configuration/reconfiguration and
7+
autoconnect/autoreconnect of WiFiNINA/Blynk
8+
9+
Modified from Blynk library v0.6.1 https://github.com/blynkkk/blynk-library/releases
10+
Built by Khoi Hoang https://github.com/khoih-prog/Blynk_WiFiNINA_WM
11+
Licensed under MIT license
3012
*****************************************************************************************************************************/
3113

3214
#ifndef defines_h
@@ -42,14 +24,20 @@
4224
#define WIFININA_DEBUG true
4325
#define BLYNK_WM_DEBUG 3
4426

45-
#if !( defined(ARDUINO_AVR_MEGA) || defined(ARDUINO_AVR_MEGA2560) )
46-
#error This code is intended to run only on the Arduino Mega 1280/2560 boards ! Please check your Tools->Board setting.
27+
#if !( defined(ARDUINO_AVR_MEGA) || defined(ARDUINO_AVR_MEGA2560) || defined(ARDUINO_AVR_ADK) )
28+
#error This code is intended to run only on the Arduino Mega 1280/2560/ADK boards ! Please check your Tools->Board setting.
4729
#endif
4830

4931
#if defined(ARDUINO_AVR_MEGA2560)
50-
#define BOARD_TYPE "AVR Mega2560"
32+
#define BOARD_TYPE "AVR Mega2560"
33+
#elif defined(ARDUINO_AVR_ADK)
34+
#define BOARD_TYPE "AVR Mega ADK"
5135
#else
52-
#define BOARD_TYPE "AVR Mega"
36+
#define BOARD_TYPE "AVR Mega"
37+
#endif
38+
39+
#if !defined(BOARD_NAME)
40+
#define BOARD_NAME BOARD_TYPE
5341
#endif
5442

5543
// Start location in EEPROM to store config data. Default 0

examples/Mega_WiFiNINA_WM/dynamicParams.h

Lines changed: 10 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -1,32 +1,14 @@
11
/****************************************************************************************************************************
2-
dynamicParams.h for Mega_WiFiNINA.ino
3-
For AVR Mega boards using WiFiNINA Shields
4-
5-
Blynk_WiFiNINA_WM is a library for the Mega, Teensy, SAM DUE, nRF52, STM32 and SAMD boards
6-
(https://github.com/khoih-prog/Blynk_WiFiNINA_WM) to enable easy configuration/reconfiguration and
7-
autoconnect/autoreconnect of WiFiNINA/Blynk
8-
9-
Modified from Blynk library v0.6.1 https://github.com/blynkkk/blynk-library/releases
10-
Built by Khoi Hoang https://github.com/khoih-prog/Blynk_WiFiNINA_WM
11-
Licensed under MIT license
12-
Version: 1.0.4
13-
14-
Original Blynk Library author:
15-
@file BlynkSimpleWiFiNINA.h
16-
@author Volodymyr Shymanskyy
17-
@license This project is released under the MIT License (MIT)
18-
@copyright Copyright (c) 2018 Volodymyr Shymanskyy
19-
@date Sep 2018
20-
@brief
21-
22-
Version Modified By Date Comments
23-
------- ----------- ---------- -----------
24-
1.0.0 K Hoang 07/04/2020 Initial coding
25-
1.0.1 K Hoang 09/04/2020 Add support to SAM DUE, Teensy, STM32
26-
1.0.2 K Hoang 15/04/2020 Fix bug. Add SAMD51 support.
27-
1.0.3 K Hoang 05/05/2020 Add nRF52 support, MultiWiFi/Blynk, Configurable Config Portal Title,
28-
Default Config Data and DRD. Update examples.
29-
1.0.4 K Hoang 13/05/2020 Add support to Arduino UNO WiFi R2
2+
dynamicParams.h
3+
For AVR Mega boards using WiFiNINA Shields
4+
5+
Blynk_WiFiNINA_WM is a library for the Mega, Teensy, SAM DUE, nRF52, STM32, SAMD and RP2040 boards
6+
(https://github.com/khoih-prog/Blynk_WiFiNINA_WM) to enable easy configuration/reconfiguration and
7+
autoconnect/autoreconnect of WiFiNINA/Blynk
8+
9+
Modified from Blynk library v0.6.1 https://github.com/blynkkk/blynk-library/releases
10+
Built by Khoi Hoang https://github.com/khoih-prog/Blynk_WiFiNINA_WM
11+
Licensed under MIT license
3012
*****************************************************************************************************************************/
3113

3214
#ifndef dynamicParams_h

0 commit comments

Comments
 (0)