Esp32 s2 mini boards support

Tried to get this ESP32 S2 mini board (https://www.amazon.com/HiLetgo-ESP32-S2FN4R2-ESP32-S2-Type-C-Connect/dp/B0B291LZ99/ref=sr_1_1?crid=3IAI3UKFWCQD1&keywords=hiletgo+mini+s2&qid=1678128998&sprefix=%2Caps%2C447&sr=8-1) running and cannot get the WiFi to connect.
Is the board fully supported in the Arduino IDE? I see conflicting information across the web. I'm using Arduino IDE 2.03/2.04.
Code is a simple test case with typical connect sequence I've used in dozens of projects. WiFi.status() returns a 6 (disconnect) sometimes moves to 1 (no_ssid_avail), never connects. It lists local networks with WiFi.SSID() so it can see the wifi. Tried different board types, nothing works so far. Using same credentials as working projects on other devices. (Tried Deneyap Mini v2, ESP32S2 Dev Module, LOLIN S2 Mini, ESP32S2 Native USB as board types).

Since I was using an ESP32 feather board before this, should I worry about library conflicts?

What make you think it is an Arduino board? It is an Espressif module which when used with the Arduino IDE allows you to program the clone board.

Espressif ESP32 Internet resource:
ESP32 Arduino - ESP32 Forum

ESP32 "Arduino support core":
GitHub - espressif/arduino-esp32: Arduino core for the ESP32

ESP32 "Arduino" docs:
Welcome to ESP32 Arduino Core’s documentation — Arduino-ESP32 2.0.6 documentation (espressif.com)

Suggest you try code from:
160+ ESP32 Projects, Tutorials and Guides with Arduino IDE​ | Random Nerd Tutorials

Mrburnette:
I did not intend to imply it is an Arduino board, I was asking about the development environment, that as you point out, generally supports these boards and allows you to program them.

The ESpressif ESP32 forum has a few notes that imply the Arduino environment did not fully support the ESP32s2 but the info is a couple years old. A lot of info on that forum is for use in the Espressif environment. For a variety of reasons I’d prefer not jump to that environment which is why I was asking about the Arduino IDE. If the answer is that is the only way to get these boards to work, so be it, but I’d like an explicit statement.
The Random Nerd Tutorials is where much of my work is derived from.

I did not originally include the code because it was boringly standard. But here it is.

/*ESP32s2*/

#include <WiFi.h>

IPAddress Server_ip(192, 168, 1, 201);  // IP address of this box
IPAddress gateway(192, 168, 1, 254);    // gateway of your network
IPAddress subnet(255, 255, 255, 0);     // subnet mask of your network
IPAddress dns(192, 168, 1, 254);        //dns address needed to help get to internet
const char* ssid = "your network";
const char* password = "your password";

void setup() {
  // set the speed for the serial monitor:
  Serial.begin(9600);
  delay(1000);
  Serial.println("Your Arduino is awake ...");

  //slow down the program, wait for some input so you know things are basically working
  String ReceivedInput;
  ReceivedInput = WaitForInput("Please enter your first name.");
  Serial.print("Your first name is: ");
  Serial.println(ReceivedInput);

  Serial.print("Scan start ... ");
  //scan for networks
  int n = WiFi.scanNetworks();
  Serial.print(n);
  Serial.println(" network(s) found");
  for (int i = 0; i < n; i++) {
    Serial.print(WiFi.SSID(i));
    Serial.print("\n");
  }
  //do some set up
  WiFi.config(Server_ip, dns, gateway, subnet);  // forces to use the fixed IP
  // WiFi.mode(WIFI_AP);
  WiFi.mode(WIFI_STA);

  //connect to Wifi
  WiFi.begin(ssid, password);
  //WiFi.softAP(ssid, password);

  while (WiFi.status() != WL_CONNECTED) {
    Serial.print(WiFi.status());
    //Serial.print(".");
    delay(1000);
  }

  Serial.print("Connecting to:   ");
  Serial.print(ssid);
  Serial.print("\n");
  Serial.print("This device IP address: ");
  Serial.println(WiFi.localIP());

  Serial.println("Your Arduino is done now and will start the loop, forever doing nothing ...");
}

void loop() {
  // leave empty for now
}

String WaitForInput(String Question) {
  Serial.println(Question);

  while (!Serial.available()) {
    // wait for input
  }

  return Serial.readStringUntil(10);
}
1 Like

I have a few in the parts bin; have not used in any recent projects. The core page on GitHub suggest the core essentially works, "connecting" is a very basic function. Fully compatible? One would have to ask the core authors.

I did do a search on the Espressif ESP32 Arduino forum:

Search found 5613 matches: "S2 connection"

My point with Randomnerd was to have you select a very simple connection example (or two) to check the hardware (with stock code you have not edited.)

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.