Peculiar Issue

I get the local IP using WiFi.localIP() call. Was getting an IP address in return. Has changed to an integer now in display. Certain this is due to the app as nothing changed on the firmware side and it was working well till yesterday.

Written to terminal using the Blynk.virtualWrite() call. Can some one validate this and then maybe the developers can look at this?

In a prior topic (yesterday) you changed from terminal.print() to Blynk.virtualWrite() is that not a change on the sketch (firmware) side?

Have you tested with a display widget and serial print? Do they display the IP properly?

Yes. It was working well as expected after changing terminal.print to blynk.virtualWrite. in a couple of hours, will look at serial output and update this topic.

I can confirm that both Display Widgets and Terminal show converted? number, but Serial.print() shows proper IP.

Android App 2.20.0

Confirm serial ouput is ok while terminal output shows a number. I’ve used the same call in both. I tried changing the output to String and still have the same issue.

Serial.print("connected to wifi Access Point configured....");
  Serial.print(WiFi.SSID());
  Serial.print("\nlocal ip: ");
  Serial.println(WiFi.localIP());

Output: connected to wifi Access Point configured…Linksys-01750
local ip: 10.0.0.37
[40403]

Blynk.virtualWrite(V9,"\nName: ", WiFi.hostname(), "\nDevice ip: ", WiFi.localIP(), "\n");
or
Blynk.virtualWrite(V9,"\nName: ", WiFi.hostname(), "\nDevice ip: ", String(WiFi.localIP()), "\n");

Shows an integer number as seen in the screenshot.

Yes… Strange… I ran some more tests and it is only the IP that doesn’t display correctly?

  Blynk.virtualWrite(V6, "\n IP is  ");
  Blynk.virtualWrite(V6, WiFi.localIP());
  Serial.print("IP is ");
  Serial.println(WiFi.localIP());

  Blynk.virtualWrite(V6, "\n MAC is  ");
  Blynk.virtualWrite(V6, WiFi.macAddress());
  Serial.print("MAC is ");
  Serial.println(WiFi.macAddress());

  Blynk.virtualWrite(V6, "\n Core is  ");
  Blynk.virtualWrite(V6, ESP.getCoreVersion());
  Serial.print("Core is ");
  Serial.println(ESP.getCoreVersion());

  Blynk.virtualWrite(V6, "\n Lib Ver. is  ");
  Blynk.virtualWrite(V6, BLYNK_VERSION);
  Serial.print("Lib ver. is  ");
  Serial.println(BLYNK_VERSION);

image

image

So now the quiz: How on earth Blynk calculates one onto another. As for now my tries were unsuccessful :blush:

for me it displays correctly the ip addresses, though. s5, android 6.

The OP suspects the issue is due to last App version… i don’t normally display any IP address, so can’t confirm prior functionality.

What App version you running?

latest, you can guess :wink:

Seems like 3 fails to 1 non-failure so far… @wanek… don’t move a muscle then, else it fail :stuck_out_tongue:

i don’t even dare to blink…

2 Likes

I think @Costas found the answer some time ago in the second post in this thread:

Pete.

1 Like

Very informative topic. Thanks for finding!

Does @Costas get a prize?

Pete.

@Costas deserves for many prizes for his contribution on this forum (Sure there are others too!). Unfortunately all we can give him, is a tiny little heart under the post… :wink:

1 Like

Wow… so many little variations with code :stuck_out_tongue: I was trying all sorts but never even close to this…

  Blynk.virtualWrite(V9, WiFi.localIP().toString());

image


Still begs the question… why/how did it apparently work ‘before’, without any conversions?

1 Like

And that is a good question. “Someone” changed that, but “forgot” to notify? Or it’s just an overlook…

You can send virtual beers :beer: and as he lives on a “Greek” island he’ll always have a need for a few plates :plate_with_cutlery:

Pete.

2 Likes