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

Commit

Permalink
v1.8.14-4 to fix bugs
Browse files Browse the repository at this point in the history
### Releases v1.8.14-4

1. Fix bugs by using some unmerged PRs from original WiFiNINA, such as:

 - [WiFi.config - setting defaults as the Ethernet library #219](arduino-libraries/WiFiNINA#219)
 - [Fix WiFiClient watchdog usage #211](arduino-libraries/WiFiNINA#211)
 - [Watchdog trigger changes #208](arduino-libraries/WiFiNINA#208)
 - [added server.accept() #204](arduino-libraries/WiFiNINA#204)
 - [Fix PinStatus error on some platforms #185](arduino-libraries/WiFiNINA#185)
 
2. Add many WiFiMulti-related examples in [WiFiMulti](https://github.com/khoih-prog/WiFiNINA_Generic/tree/master/examples/WiFiMulti)
3. Update examples
4. Update `Packages' Patches`
  • Loading branch information
khoih-prog authored May 2, 2022
1 parent c840353 commit 5555717
Show file tree
Hide file tree
Showing 37 changed files with 3,427 additions and 57 deletions.
4 changes: 2 additions & 2 deletions examples/AP_SimpleWebServer/AP_SimpleWebServer.ino
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@

// To eliminate FW warning when using not latest nina-fw version
// To use whenever WiFi101-FirmwareUpdater-Plugin is not sync'ed with nina-fw version
#define WIFI_FIRMWARE_LATEST_VERSION "1.4.5"
#define WIFI_FIRMWARE_LATEST_VERSION "1.4.8"

#include <SPI.h>
#include <WiFiNINA_Generic.h>
Expand All @@ -68,7 +68,7 @@ void setup()
{
//Initialize serial and wait for port to open:
Serial.begin(115200);
while (!Serial);
while (!Serial && millis() < 5000);

Serial.print(F("\nStart AP_SimpleWebServer on ")); Serial.println(BOARD_NAME);
Serial.println(WIFININA_GENERIC_VERSION);
Expand Down
4 changes: 2 additions & 2 deletions examples/ConnectNoEncryption/ConnectNoEncryption.ino
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@

// To eliminate FW warning when using not latest nina-fw version
// To use whenever WiFi101-FirmwareUpdater-Plugin is not sync'ed with nina-fw version
#define WIFI_FIRMWARE_LATEST_VERSION "1.4.5"
#define WIFI_FIRMWARE_LATEST_VERSION "1.4.8"

#include <SPI.h>
#include <WiFiNINA_Generic.h>
Expand All @@ -53,7 +53,7 @@ void setup()
{
//Initialize serial and wait for port to open:
Serial.begin(115200);
while (!Serial);
while (!Serial && millis() < 5000);

Serial.print(F("\nStart ConnectNoEncryption on ")); Serial.println(BOARD_NAME);
Serial.println(WIFININA_GENERIC_VERSION);
Expand Down
4 changes: 2 additions & 2 deletions examples/ConnectWithWEP/ConnectWithWEP.ino
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,7 @@

// To eliminate FW warning when using not latest nina-fw version
// To use whenever WiFi101-FirmwareUpdater-Plugin is not sync'ed with nina-fw version
#define WIFI_FIRMWARE_LATEST_VERSION "1.4.5"
#define WIFI_FIRMWARE_LATEST_VERSION "1.4.8"

#include <SPI.h>
#include <WiFiNINA_Generic.h>
Expand All @@ -66,7 +66,7 @@ void setup()
{
//Initialize serial and wait for port to open:
Serial.begin(115200);
while (!Serial);
while (!Serial && millis() < 5000);

Serial.print(F("\nStart ConnectWithWEP on ")); Serial.println(BOARD_NAME);
Serial.println(WIFININA_GENERIC_VERSION);
Expand Down
4 changes: 2 additions & 2 deletions examples/ConnectWithWPA/ConnectWithWPA.ino
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@

// To eliminate FW warning when using not latest nina-fw version
// To use whenever WiFi101-FirmwareUpdater-Plugin is not sync'ed with nina-fw version
#define WIFI_FIRMWARE_LATEST_VERSION "1.4.5"
#define WIFI_FIRMWARE_LATEST_VERSION "1.4.8"

#include <SPI.h>
#include <WiFiNINA_Generic.h>
Expand All @@ -53,7 +53,7 @@ void setup()
{
//Initialize serial and wait for port to open:
Serial.begin(115200);
while (!Serial);
while (!Serial && millis() < 5000);

Serial.print(F("\nStart ConnectWithWPA on ")); Serial.println(BOARD_NAME);
Serial.println(WIFININA_GENERIC_VERSION);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@

// To eliminate FW warning when using not latest nina-fw version
// To use whenever WiFi101-FirmwareUpdater-Plugin is not sync'ed with nina-fw version
#define WIFI_FIRMWARE_LATEST_VERSION "1.4.5"
#define WIFI_FIRMWARE_LATEST_VERSION "1.4.8"

#include <SPI.h>
#include <WiFiNINA_Generic.h>
Expand All @@ -51,7 +51,7 @@ void setup()
{
//Initialize serial and wait for port to open:
Serial.begin(115200);
while (!Serial);
while (!Serial && millis() < 5000);

Serial.print(F("\nStart ConnectWithWPA2Enterprise on ")); Serial.println(BOARD_NAME);
Serial.println(WIFININA_GENERIC_VERSION);
Expand Down
4 changes: 2 additions & 2 deletions examples/MultiServers/MultiServers.ino
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@

// To eliminate FW warning when using not latest nina-fw version
// To use whenever WiFi101-FirmwareUpdater-Plugin is not sync'ed with nina-fw version
#define WIFI_FIRMWARE_LATEST_VERSION "1.4.5"
#define WIFI_FIRMWARE_LATEST_VERSION "1.4.8"

#include "defines.h"
#include <WiFiNINA_Generic.h>
Expand Down Expand Up @@ -100,7 +100,7 @@ void setup()
{
//Initialize serial and wait for port to open:
Serial.begin(115200);
while (!Serial);
while (!Serial && millis() < 5000);

Serial.print(F("\nStart MultiServers on ")); Serial.println(BOARD_TYPE);

Expand Down
6 changes: 5 additions & 1 deletion examples/RGB_LED_Test/RGB_LED_Test.ino
Original file line number Diff line number Diff line change
Expand Up @@ -26,13 +26,17 @@
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
*****************************************************************************************************************************/

#if (!defined(ARDUINO_NANO_RP2040_CONNECT) || defined(ARDUINO_ARCH_MBED))
#error Only for ARDUINO_NANO_RP2040_CONNECT using arduino-pico core
#endif

//#include <WiFiNINA.h>
#include <WiFiNINA_Generic.h>

void setup()
{
Serial.begin(115200);
while (!Serial);
while (!Serial && millis() < 5000);

Serial.print("RGB_LED_Test on ");
Serial.print(BOARD_NAME);
Expand Down
4 changes: 2 additions & 2 deletions examples/ScanNetworks/ScanNetworks.ino
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@

// To eliminate FW warning when using not latest nina-fw version
// To use whenever WiFi101-FirmwareUpdater-Plugin is not sync'ed with nina-fw version
#define WIFI_FIRMWARE_LATEST_VERSION "1.4.5"
#define WIFI_FIRMWARE_LATEST_VERSION "1.4.8"

#include <SPI.h>
#include <WiFiNINA_Generic.h>
Expand All @@ -52,7 +52,7 @@ void setup()
{
//Initialize serial and wait for port to open:
Serial.begin(115200);
while (!Serial);
while (!Serial && millis() < 5000);

Serial.print(F("\nStart ScanNetworks on ")); Serial.println(BOARD_NAME);
Serial.println(WIFININA_GENERIC_VERSION);
Expand Down
4 changes: 2 additions & 2 deletions examples/ScanNetworksAdvanced/ScanNetworksAdvanced.ino
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@

// To eliminate FW warning when using not latest nina-fw version
// To use whenever WiFi101-FirmwareUpdater-Plugin is not sync'ed with nina-fw version
#define WIFI_FIRMWARE_LATEST_VERSION "1.4.5"
#define WIFI_FIRMWARE_LATEST_VERSION "1.4.8"

#include <SPI.h>
#include <WiFiNINA_Generic.h>
Expand All @@ -53,7 +53,7 @@ void setup()
{
//Initialize serial and wait for port to open:
Serial.begin(115200);
while (!Serial);
while (!Serial && millis() < 5000);

Serial.print(F("\nStart ScanNetworksAdvanced on ")); Serial.println(BOARD_NAME);
Serial.println(WIFININA_GENERIC_VERSION);
Expand Down
4 changes: 2 additions & 2 deletions examples/SimpleWebServerWiFi/SimpleWebServerWiFi.ino
Original file line number Diff line number Diff line change
Expand Up @@ -51,7 +51,7 @@

// To eliminate FW warning when using not latest nina-fw version
// To use whenever WiFi101-FirmwareUpdater-Plugin is not sync'ed with nina-fw version
#define WIFI_FIRMWARE_LATEST_VERSION "1.4.5"
#define WIFI_FIRMWARE_LATEST_VERSION "1.4.8"

#include <SPI.h>
#include <WiFiNINA_Generic.h>
Expand All @@ -70,7 +70,7 @@ void setup()
{
//Initialize serial and wait for port to open:
Serial.begin(115200);
while (!Serial);
while (!Serial && millis() < 5000);

Serial.print(F("\nStart SimpleWebServerWiFi on ")); Serial.println(BOARD_NAME);
Serial.println(WIFININA_GENERIC_VERSION);
Expand Down
4 changes: 2 additions & 2 deletions examples/Tools/CheckFirmwareVersion/CheckFirmwareVersion.ino
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@

// To eliminate FW warning when using not latest nina-fw version
// To use whenever WiFi101-FirmwareUpdater-Plugin is not sync'ed with nina-fw version
//#define WIFI_FIRMWARE_LATEST_VERSION "1.4.5"
//#define WIFI_FIRMWARE_LATEST_VERSION "1.4.8"

#include "defines.h"
#include <SPI.h>
Expand All @@ -49,7 +49,7 @@ void setup()
{
//Initialize serial and wait for port to open:
Serial.begin(115200);
while (!Serial);
while (!Serial && millis() < 5000);

// Print a welcome message
Serial.print(F("\nStart WiFiNINA CheckFirmwareVersion on ")); Serial.println(BOARD_NAME);
Expand Down
161 changes: 161 additions & 0 deletions examples/WiFiAdvancedChatServer/WiFiAdvancedChatServer.ino
Original file line number Diff line number Diff line change
@@ -0,0 +1,161 @@
/****************************************************************************************************************************
WiFiAdvancedChatServer.ino
Advanced WiFi Chat Server
A more advanced server that distributes any incoming messages
to all connected clients but the client the message comes from.
To use, telnet to your device's IP address and type.
You can see the client's input in the serial monitor as well.
Circuit:
Board with NINA module (Arduino MKR WiFi 1010, MKR VIDOR 4000 and UNO WiFi Rev.2)
Based on and modified from WiFiNINA library https://www.arduino.cc/en/Reference/WiFiNINA
to support nRF52, SAMD21/SAMD51, STM32F/L/H/G/WB/MP1, Teensy, etc. boards besides Nano-33 IoT, MKRWIFI1010, MKRVIDOR400, etc.
Built by Khoi Hoang https://github.com/khoih-prog/WiFiNINA_Generic
Licensed under MIT license
Copyright (c) 2018 Arduino SA. All rights reserved.
Copyright (c) 2011-2014 Arduino LLC. All right reserved.
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public
License along with this library; if not, write to the Free Software
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
*****************************************************************************************************************************/

#include "defines.h"
#include "arduino_secrets.h"

#include <SPI.h>
#include <WiFiNINA_Generic.h>

///////please enter your sensitive data in the Secret tab/arduino_secrets.h
char ssid[] = SECRET_SSID; // your network SSID (name)
char pass[] = SECRET_PASS; // your network password (use for WPA, or use as key for WEP)

int status = WL_IDLE_STATUS;

#define TELNET_PORT 23

// telnet defaults to port 23
WiFiServer server(TELNET_PORT);

#define MAX_NUMBER_CLIENTS 8

WiFiClient clients[MAX_NUMBER_CLIENTS];

void setup()
{
//Initialize serial and wait for port to open:
Serial.begin(115200);
while (!Serial && millis() < 5000);

Serial.print(F("\nStart WiFiAdvancedChatServer on ")); Serial.println(BOARD_NAME);
Serial.println(WIFININA_GENERIC_VERSION);

// check for the WiFi module:
if (WiFi.status() == WL_NO_MODULE)
{
Serial.println(F("Communication with WiFi module failed!"));
// don't continue
while (true);
}

String fv = WiFi.firmwareVersion();
if (fv < WIFI_FIRMWARE_LATEST_VERSION)
{
Serial.print(F("Your current firmware NINA FW v"));
Serial.println(fv);
Serial.print(F("Please upgrade the firmware to NINA FW v"));
Serial.println(WIFI_FIRMWARE_LATEST_VERSION);
}

// attempt to connect to WiFi network:
while (status != WL_CONNECTED)
{
Serial.print(F("Attempting to connect to Network named: "));
Serial.println(ssid); // print the network name (SSID);

// Connect to WPA/WPA2 network. Change this line if using open or WEP network:
status = WiFi.begin(ssid, pass);
// wait 10 seconds for connection:
//delay(10000);
}

// start the server:
server.begin();

Serial.print("Chat server address:");
Serial.println(WiFi.localIP());
}

void loop()
{
// check for any new client connecting, and say hello (before any incoming data)
WiFiClient newClient = server.accept();

if (newClient)
{
for (byte i = 0; i < MAX_NUMBER_CLIENTS; i++)
{
if (!clients[i])
{
Serial.print("We have a new client #");
Serial.println(i);

newClient.print("Hello, client number: ");
newClient.println(i);

// Once we "accept", the client is no longer tracked by WiFiServer
// so we must store it into our list of clients
clients[i] = newClient;
break;
}
}
}

// check for incoming data from all clients
for (byte i = 0; i < MAX_NUMBER_CLIENTS; i++)
{
if (clients[i] && clients[i].available() > 0)
{
#define BUFFER_SIZE 80

// read bytes from a client
byte buffer[BUFFER_SIZE];
int count = clients[i].read(buffer, BUFFER_SIZE);

// write the bytes to all other connected clients
for (byte j = 0; j < MAX_NUMBER_CLIENTS; j++)
{
if (j != i && clients[j].connected())
{
clients[j].write(buffer, count);
}
}
}
}

// stop any clients which disconnect
for (byte i = 0; i < MAX_NUMBER_CLIENTS; i++)
{
if (clients[i] && !clients[i].connected())
{
Serial.print("disconnect client #");
Serial.println(i);
clients[i].stop();
}
}
}
2 changes: 2 additions & 0 deletions examples/WiFiAdvancedChatServer/arduino_secrets.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
#define SECRET_SSID ""
#define SECRET_PASS ""
Loading

0 comments on commit 5555717

Please sign in to comment.