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

Commit

Permalink
v1.1.0 to add support to RP2040-based boards
Browse files Browse the repository at this point in the history
### 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.
  • Loading branch information
khoih-prog committed Jun 1, 2021
1 parent 6ae2237 commit 225063f
Show file tree
Hide file tree
Showing 54 changed files with 12,862 additions and 3,738 deletions.
24 changes: 13 additions & 11 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -1,21 +1,21 @@
## Contributing to Blynk_WiFiManager
## Contributing to Blynk_WiFiNINA_WM

### Reporting Bugs

Please report bugs in Blynk_WiFiManager if you find them.
Please report bugs in Blynk_WiFiNINA_WM if you find them.

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

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

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

### How to submit a bug report

Please ensure to specify the following:

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

```
Arduino IDE version: 1.8.10
ESP8266 Core Version 2.6.3
OS: Ubuntu 16.04 LTS
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
Arduino IDE version: 1.8.15
Arduino SAMD Core Version 1.8.11
OS: Ubuntu 20.04 LTS
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
Context:
The board couldn't autoreconnect to Local Blynk Server after router power recycling.
Expand All @@ -39,13 +39,15 @@ Steps to reproduce:
2. ...
3. ...
4. ...
```

### Sending Feature Requests

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

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.
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.

### Sending Pull Requests

Pull Requests with changes and fixes are also welcome!

1,678 changes: 1,161 additions & 517 deletions README.md

Large diffs are not rendered by default.

38 changes: 10 additions & 28 deletions examples/Mega_WiFiNINA_WM/Credentials.h
Original file line number Diff line number Diff line change
@@ -1,32 +1,14 @@
/****************************************************************************************************************************
Credentials.h for Mega_WiFiNINA.ino
For AVR Mega boards using WiFiNINA Shields
Blynk_WiFiNINA_WM is a library for the Mega, Teensy, SAM DUE, nRF52, STM32 and SAMD boards
(https://github.com/khoih-prog/Blynk_WiFiNINA_WM) to enable easy configuration/reconfiguration and
autoconnect/autoreconnect of WiFiNINA/Blynk
Modified from Blynk library v0.6.1 https://github.com/blynkkk/blynk-library/releases
Built by Khoi Hoang https://github.com/khoih-prog/Blynk_WiFiNINA_WM
Licensed under MIT license
Version: 1.0.4
Original Blynk Library author:
@file BlynkSimpleWiFiNINA.h
@author Volodymyr Shymanskyy
@license This project is released under the MIT License (MIT)
@copyright Copyright (c) 2018 Volodymyr Shymanskyy
@date Sep 2018
@brief
Version Modified By Date Comments
------- ----------- ---------- -----------
1.0.0 K Hoang 07/04/2020 Initial coding
1.0.1 K Hoang 09/04/2020 Add support to SAM DUE, Teensy, STM32
1.0.2 K Hoang 15/04/2020 Fix bug. Add SAMD51 support.
1.0.3 K Hoang 05/05/2020 Add nRF52 support, MultiWiFi/Blynk, Configurable Config Portal Title,
Default Config Data and DRD. Update examples.
1.0.4 K Hoang 13/05/2020 Add support to Arduino UNO WiFi R2
Credentials.h
For AVR Mega boards using WiFiNINA Shields
Blynk_WiFiNINA_WM is a library for the Mega, Teensy, SAM DUE, nRF52, STM32, SAMD and RP2040 boards
(https://github.com/khoih-prog/Blynk_WiFiNINA_WM) to enable easy configuration/reconfiguration and
autoconnect/autoreconnect of WiFiNINA/Blynk
Modified from Blynk library v0.6.1 https://github.com/blynkkk/blynk-library/releases
Built by Khoi Hoang https://github.com/khoih-prog/Blynk_WiFiNINA_WM
Licensed under MIT license
*****************************************************************************************************************************/

#ifndef Credentials_h
Expand Down
70 changes: 38 additions & 32 deletions examples/Mega_WiFiNINA_WM/Mega_WiFiNINA_WM.ino
Original file line number Diff line number Diff line change
@@ -1,38 +1,41 @@
/****************************************************************************************************************************
Mega_WiFiNINA.ino
For AVR Mega boards using WiFiNINA Shields

Blynk_WiFiNINA_WM is a library for the Mega, Teensy, SAM DUE, nRF52, STM32 and SAMD boards
(https://github.com/khoih-prog/Blynk_WiFiNINA_WM) to enable easy configuration/reconfiguration and
autoconnect/autoreconnect of WiFiNINA/Blynk

Modified from Blynk library v0.6.1 https://github.com/blynkkk/blynk-library/releases
Built by Khoi Hoang https://github.com/khoih-prog/Blynk_WiFiNINA_WM
Licensed under MIT license
Version: 1.0.4

Original Blynk Library author:
@file BlynkSimpleWiFiNINA.h
@author Volodymyr Shymanskyy
@license This project is released under the MIT License (MIT)
@copyright Copyright (c) 2018 Volodymyr Shymanskyy
@date Sep 2018
@brief

Version Modified By Date Comments
------- ----------- ---------- -----------
1.0.0 K Hoang 07/04/2020 Initial coding
1.0.1 K Hoang 09/04/2020 Add support to SAM DUE, Teensy, STM32
1.0.2 K Hoang 15/04/2020 Fix bug. Add SAMD51 support.
1.0.3 K Hoang 05/05/2020 Add nRF52 support, MultiWiFi/Blynk, Configurable Config Portal Title,
Default Config Data and DRD. Update examples.
1.0.4 K Hoang 13/05/2020 Add support to Arduino UNO WiFi R2
Mega_WiFiNINA.ino
For AVR Mega boards using WiFiNINA Shields

Blynk_WiFiNINA_WM is a library for the Mega, Teensy, SAM DUE, nRF52, STM32, SAMD and RP2040 boards
(https://github.com/khoih-prog/Blynk_WiFiNINA_WM) to enable easy configuration/reconfiguration and
autoconnect/autoreconnect of WiFiNINA/Blynk

Modified from Blynk library v0.6.1 https://github.com/blynkkk/blynk-library/releases
Built by Khoi Hoang https://github.com/khoih-prog/Blynk_WiFiNINA_WM
Licensed under MIT license

Original Blynk Library author:
@file BlynkSimpleWiFiNINA.h
@author Volodymyr Shymanskyy
@license This project is released under the MIT License (MIT)
@copyright Copyright (c) 2018 Volodymyr Shymanskyy
@date Sep 2018
@brief

Version: 1.1.0

Version Modified By Date Comments
------- ----------- ---------- -----------
1.0.0 K Hoang 07/04/2020 Initial coding
1.0.1 K Hoang 09/04/2020 Add support to SAM DUE, Teensy, STM32
1.0.2 K Hoang 15/04/2020 Fix bug. Add SAMD51 support.
1.0.3 K Hoang 05/05/2020 Add nRF52 support, MultiWiFi/Blynk, Configurable Config Portal Title,
Default Config Data and DRD. Update examples.
1.0.4 K Hoang 13/05/2020 Add support to Arduino UNO WiFi R2
1.1.0 K Hoang 28/05/2021 Add support to Nano_RP2040_Connect, RASPBERRY_PI_PICO using Arduino mbed or pico core
Enable scan of WiFi networks for selection in Configuration Portal
*****************************************************************************************************************************/
#include "defines.h"
#include "Credentials.h"
#include "dynamicParams.h"

void heartBeatPrint(void)
void heartBeatPrint()
{
static int num = 1;

Expand Down Expand Up @@ -79,9 +82,12 @@ void setup()
while (!Serial);
//delay(1000);

Serial.println("\nStart Blynk_WiFiNINA_WM using WiFiNINA_Shield on " + String(BOARD_TYPE));
Serial.print("\nStart Mega_WiFiNINA_WM using WiFiNINA_Shield on ");
Serial.println(BOARD_NAME);

#if USE_BLYNK_WM
Serial.println(BLYNK_WIFININA_WM_VERSION);

//Blynk.setConfigPortalIP(IPAddress(192, 168, 120, 1));
//Blynk.setConfigPortal("Mega", "MyMega");
Blynk.begin();
Expand All @@ -95,7 +101,7 @@ void displayCredentials(void)
{
Serial.println("Your stored Credentials :");

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

if (!displayedCredentials)
{
for (int i = 0; i < NUM_MENU_ITEMS; i++)
for (uint16_t i = 0; i < NUM_MENU_ITEMS; i++)
{
if (!strlen(myMenuItems[i].pdata))
{
Expand Down
52 changes: 20 additions & 32 deletions examples/Mega_WiFiNINA_WM/defines.h
Original file line number Diff line number Diff line change
@@ -1,32 +1,14 @@
/****************************************************************************************************************************
defines.h for Mega_WiFiNINA.ino
For AVR Mega boards using WiFiNINA Shields
Blynk_WiFiNINA_WM is a library for the Mega, Teensy, SAM DUE, nRF52, STM32 and SAMD boards
(https://github.com/khoih-prog/Blynk_WiFiNINA_WM) to enable easy configuration/reconfiguration and
autoconnect/autoreconnect of WiFiNINA/Blynk
Modified from Blynk library v0.6.1 https://github.com/blynkkk/blynk-library/releases
Built by Khoi Hoang https://github.com/khoih-prog/Blynk_WiFiNINA_WM
Licensed under MIT license
Version: 1.0.4
Original Blynk Library author:
@file BlynkSimpleWiFiNINA.h
@author Volodymyr Shymanskyy
@license This project is released under the MIT License (MIT)
@copyright Copyright (c) 2018 Volodymyr Shymanskyy
@date Sep 2018
@brief
Version Modified By Date Comments
------- ----------- ---------- -----------
1.0.0 K Hoang 07/04/2020 Initial coding
1.0.1 K Hoang 09/04/2020 Add support to SAM DUE, Teensy, STM32
1.0.2 K Hoang 15/04/2020 Fix bug. Add SAMD51 support.
1.0.3 K Hoang 05/05/2020 Add nRF52 support, MultiWiFi/Blynk, Configurable Config Portal Title,
Default Config Data and DRD. Update examples.
1.0.4 K Hoang 13/05/2020 Add support to Arduino UNO WiFi R2
defines.h
For AVR Mega boards using WiFiNINA Shields
Blynk_WiFiNINA_WM is a library for the Mega, Teensy, SAM DUE, nRF52, STM32, SAMD and RP2040 boards
(https://github.com/khoih-prog/Blynk_WiFiNINA_WM) to enable easy configuration/reconfiguration and
autoconnect/autoreconnect of WiFiNINA/Blynk
Modified from Blynk library v0.6.1 https://github.com/blynkkk/blynk-library/releases
Built by Khoi Hoang https://github.com/khoih-prog/Blynk_WiFiNINA_WM
Licensed under MIT license
*****************************************************************************************************************************/

#ifndef defines_h
Expand All @@ -42,14 +24,20 @@
#define WIFININA_DEBUG true
#define BLYNK_WM_DEBUG 3

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

#if defined(ARDUINO_AVR_MEGA2560)
#define BOARD_TYPE "AVR Mega2560"
#define BOARD_TYPE "AVR Mega2560"
#elif defined(ARDUINO_AVR_ADK)
#define BOARD_TYPE "AVR Mega ADK"
#else
#define BOARD_TYPE "AVR Mega"
#define BOARD_TYPE "AVR Mega"
#endif

#if !defined(BOARD_NAME)
#define BOARD_NAME BOARD_TYPE
#endif

// Start location in EEPROM to store config data. Default 0
Expand Down
38 changes: 10 additions & 28 deletions examples/Mega_WiFiNINA_WM/dynamicParams.h
Original file line number Diff line number Diff line change
@@ -1,32 +1,14 @@
/****************************************************************************************************************************
dynamicParams.h for Mega_WiFiNINA.ino
For AVR Mega boards using WiFiNINA Shields
Blynk_WiFiNINA_WM is a library for the Mega, Teensy, SAM DUE, nRF52, STM32 and SAMD boards
(https://github.com/khoih-prog/Blynk_WiFiNINA_WM) to enable easy configuration/reconfiguration and
autoconnect/autoreconnect of WiFiNINA/Blynk
Modified from Blynk library v0.6.1 https://github.com/blynkkk/blynk-library/releases
Built by Khoi Hoang https://github.com/khoih-prog/Blynk_WiFiNINA_WM
Licensed under MIT license
Version: 1.0.4
Original Blynk Library author:
@file BlynkSimpleWiFiNINA.h
@author Volodymyr Shymanskyy
@license This project is released under the MIT License (MIT)
@copyright Copyright (c) 2018 Volodymyr Shymanskyy
@date Sep 2018
@brief
Version Modified By Date Comments
------- ----------- ---------- -----------
1.0.0 K Hoang 07/04/2020 Initial coding
1.0.1 K Hoang 09/04/2020 Add support to SAM DUE, Teensy, STM32
1.0.2 K Hoang 15/04/2020 Fix bug. Add SAMD51 support.
1.0.3 K Hoang 05/05/2020 Add nRF52 support, MultiWiFi/Blynk, Configurable Config Portal Title,
Default Config Data and DRD. Update examples.
1.0.4 K Hoang 13/05/2020 Add support to Arduino UNO WiFi R2
dynamicParams.h
For AVR Mega boards using WiFiNINA Shields
Blynk_WiFiNINA_WM is a library for the Mega, Teensy, SAM DUE, nRF52, STM32, SAMD and RP2040 boards
(https://github.com/khoih-prog/Blynk_WiFiNINA_WM) to enable easy configuration/reconfiguration and
autoconnect/autoreconnect of WiFiNINA/Blynk
Modified from Blynk library v0.6.1 https://github.com/blynkkk/blynk-library/releases
Built by Khoi Hoang https://github.com/khoih-prog/Blynk_WiFiNINA_WM
Licensed under MIT license
*****************************************************************************************************************************/

#ifndef dynamicParams_h
Expand Down
Loading

0 comments on commit 225063f

Please sign in to comment.