Trouble with ESP8266 on Eero network I have an ESP8266 Node MCU and am learning to use its wifi capabilities. In my home I have a router provided by my ISP that runs a network we'll call 'network1'. I also have an Eero mesh network that runs in the house, called 'network2'.
When I upload the following minimal example and use network1,

my 8266 device connects to network1 (the messages in the serial monitor confirm this) and
I can use my phone and laptop to connect to the 8266 - i.e., I can put the IP into my browser and see a webpage telling me 'Hello World'.

However, I have trouble with network2, the Eero network.

I can connect my 8266 device to network2 (the messages in the serial monitor confirm this)
but
I can't connect to the 8266 device with my phone/laptop. (Yes, I switch these over to network2 first.) I put the new IP into my browser and I am told the page is taking too long to respond.

I haven't done anything special with my network1 router; things just worked. With network2, I've tried various settings with my Eero - given the 8266 a static IP address, enabled port forwarding (on port 80) and established a firewall rule for it, but nothing works.
I can run many different programs through network1, and nothing works on the Eero network. Any suggestions on getting things to work?
My minimal working example:
#include &lt;ESP8266WiFi.h&gt;

const char* ssid = &quot;network1&quot;; // or 'network2'
const char* password = &quot;thepassword&quot;; // real password used in code

WiFiServer server(80); //just pick any port number you like

void setup() {
  Serial.begin(115200);
  
  // Connect to WiFi network
  Serial.print(&quot;Connecting to &quot;);
  Serial.println(ssid);

  WiFi.begin(ssid, password);

  while (WiFi.status() != WL_CONNECTED) {
    delay(500);
    Serial.print(&quot;.&quot;);
  }
  
  Serial.println(&quot;&quot;);
  Serial.println(&quot;WiFi connected&quot;);

  // Start the server
  server.begin();
  Serial.println(&quot;Server started&quot;);

  // Print the IP address
  Serial.println(WiFi.localIP());
  //gateway = WiFi.gatewayIP();
  Serial.print(&quot;GATEWAY: &quot;);
  Serial.println(WiFi.gatewayIP());

  // print your subnet mask:
  //subnet = WiFi.subnetMask();
  Serial.print(&quot;NETMASK: &quot;);
  Serial.println(WiFi.subnetMask());
}

void loop() {
  // Check if a client has connected
  WiFiClient client = server.available();
  if (!client) {
    return;
  }

  // Prepare the response
  String s = &quot;HTTP/1.1 200 OK\r\n&quot;;
  s += &quot;Content-Type: text/html\r\n\r\n&quot;;
  s += &quot;&lt;!DOCTYPE HTML&gt;\r\n&lt;html&gt;\r\n&quot;;
  s += &quot;&lt;head&gt;\r\n&quot;;
  s+= &quot;&lt;meta name=\&quot;viewport\&quot; content=\&quot;width=device-width, initial-scale=1\&quot;&gt;\r\n&quot;;
  s+= &quot;&lt;title&gt;ESP Web Server&lt;/title&gt;\r\n&quot;;
  s+= &quot;&lt;/head&gt;\r\n&quot;;
  s += &quot;Hello World&quot;;
  s += &quot;&lt;/html&gt;\n&quot;;

  client.flush();

  // Send the response to the client
  client.print(s);
  delay(1);
}
I was able to find an answer though I'm not sure why it works. It comes down to adding WiFi.mode(WIFI_STA); in the setup, as in
void setup() {
  
  WiFi.mode(WIFI_STA);
  WiFi.begin(ssid, password);
  ...
  }

I was able to replicate success with another file on my ESP8266 device and Eero network as well.