My read
function returns an array of strings. i.e ssid and password
String* configuration::read() {
String rw_ssid = "";
String rw_pswd = "";
const int keys = 2;
String read_ssid_pswd [keys];
if (EEPROM.read(0) != 0) {
for (int i = 0; i < 32; ++i) {
rw_ssid += char(EEPROM.read(i));
}
for (int i = 32; i < 96; ++i) {
rw_pswd += char(EEPROM.read(i));
}
Serial.print("rPASSWORD: ");
Serial.println(rw_pswd);
read_ssid_pswd[0] = rw_ssid;
read_ssid_pswd[1] = rw_pswd;
Serial.print("Sending ssid:");
Serial.print(read_ssid_pswd[0]);
Serial.print(" Pswd: ");
Serial.println(read_ssid_pswd[1]);
return read_ssid_pswd;
} else {
Serial.println("Data wifi not found!");
return read_ssid_pswd;
}
}
I can see the print
Sending ssid:SSID Pswd: password
but where this function is called from I have set it up like this:
String* ssid_password = Eeprom::configuration::read();
Serial.print(">SSID: ");
Serial.println(ssid_password[0]);
Serial.print(">Password: ");
Serial.println(ssid_password[1]);
and I get thing in the prints I thought its not giving any error at compile time so it should be correct.