I purchased a Uno Wifi Rev 2 (R2) and have gotten it to work via coding in the Arduino IDE. But I would like to get it working via coding in Visual Studio (I have been using Community 2019 for programming my old Uno), but I get a bunch of errors upon compiling the same exact program in VS that I compiled/uploaded successfully in the Arduino IDE. Has anyone been able to successfully compile/upload the program below via VS?
/*
This example connects to an unencrypted WiFi network.
Then it prints the MAC address of the WiFi module,
the IP address obtained, and other network details.
created 13 July 2010
by dlf (Metodo2 srl)
modified 31 May 2012
by Tom Igoe
*/
#include <SPI.h>
#include <WiFiNINA.h>
//#include "arduino_secrets.h"
///////please enter your sensitive data in the Secret tab/arduino_secrets.h
char ssid[] = "mynetwork"; // your network SSID (name)
char pass[] = "mypassword"; // your network password (use for WPA, or use as key for WEP)
int status = WL_IDLE_STATUS; // the WiFi radio's status
void setup() {
//Initialize serial and wait for port to open:
Serial.begin(9600);
while (!Serial) {
; // wait for serial port to connect. Needed for native USB port only
}
// check for the WiFi module:
if (WiFi.status() == WL_NO_MODULE) {
Serial.println("Communication with WiFi module failed!");
// don't continue
while (true);
}
String fv = WiFi.firmwareVersion();
if (fv < WIFI_FIRMWARE_LATEST_VERSION) {
Serial.println("Please upgrade the firmware");
Serial.println("Current version: " + fv);
Serial.print("Latest version: ");
Serial.println(WIFI_FIRMWARE_LATEST_VERSION);
}
// attempt to connect to WiFi network:
while (status != WL_CONNECTED) {
Serial.print("Attempting to connect to WPA SSID: ");
Serial.println(ssid);
// Connect to WPA/WPA2 network:
status = WiFi.begin(ssid, pass);
// wait 10 seconds for connection:
delay(10000);
}
// you're connected now, so print out the data:
Serial.print("You're connected to the network");
//printCurrentNet();
//printWifiData();
}
void loop() {
// check the network connection once every 10 seconds:
printWifiData();
printCurrentNet();
delay(10000);
}
void printWifiData() {
// print your board's IP address:
IPAddress ip = WiFi.localIP();
Serial.print("IP Address: ");
Serial.println(ip);
// print your MAC address:
byte mac[6];
WiFi.macAddress(mac);
Serial.print("MAC address: ");
printMacAddress(mac);
}
void printCurrentNet() {
// print the SSID of the network you're attached to:
Serial.print("SSID: ");
Serial.println(WiFi.SSID());
// print the MAC address of the router you're attached to:
byte bssid[6];
WiFi.BSSID(bssid);
Serial.print("BSSID: ");
printMacAddress(bssid);
// print the received signal strength:
long rssi = WiFi.RSSI();
Serial.print("signal strength (RSSI):");
Serial.println(rssi);
// print the encryption type:
//byte encryption = WiFi.encryptionType();
//Serial.print("Encryption Type:");
//Serial.println(encryption, HEX);
//Serial.println();
}
void printMacAddress(byte mac[]) {
for (int i = 5; i >= 0; i--) {
if (mac[i] < 16) {
Serial.print("0");
}
Serial.print(mac[i], HEX);
if (i > 0) {
Serial.print(":");
}
}
Serial.println();
}
Did want to point out that the vMicro in Visual Studio seems to be complaining about not being able to find the files within the WiFiNINA directory, but the files are all there. Perhaps it is looking in an unexpected area? Here's an example of the errors:
error*: WiFiNINA\WiFiClient.cpp:1:-1: No such file or directory
error*: WiFiNINA\WiFiServer.cpp:1:-1: No such file or directory
error*: WiFiNINA\WiFiUdp.cpp:1:-1: No such file or directory
error*: WiFiNINA\utility\spi_drv.cpp:1:-1: No such file or directory
error*: WiFiNINA\utility\wifi_drv.cpp:1:-1: No such file or directory