Skip to content

Arduino WiFi library for ESP32. Using AT commands over UART.

License

Notifications You must be signed in to change notification settings

m2m-solutions/WiFiEsp

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Notes on fork:

Fixed build errors with RingBuffer and others.

Only tested on ESP32

Only tested as client using tcp and http.

Updated so most of it uses these commands: https://www.espressif.com/sites/default/files/documentation/esp32_at_instruction_set_and_examples_en.pdf

WiFiEsp

With an ESP32 board, WiFiEsp library allows an Arduino board to connect to the internet. It can serve as either a server accepting incoming connections or a client making outgoing ones. The WiFiEsp library is very similar to the Arduino WiFi and Ethernet libraries, and many of the function calls are the same.

Supports ESP SDK version 1.1.1 and above (AT version 0.25 and above).

Features

  • APIs compatible with standard Arduino WiFi library.
  • Use AT commands of standard ESP firmware (no need to flash a custom firmware).
  • Support hardware and software serial ports.
  • Configurable tracing level.

Wiring

The WiFiEsp library has been designed to work with the ESP WiFi shield. It is a cheap version of the Arduino WiFi shield that uses an ESP-01 module to provide networking capabilities to Arduino boards.

Examples

  • ConnectWPA - Demonstrates how to connect to a network that is encrypted with WPA2 Personal
  • WebClient - Connect to a remote webserver
  • WebClientRepeating - Make repeated HTTP calls to a webserver
  • WebServer - Serve a webpage from the WiFi shield
  • WebServerAP - Serve a webpage from the WiFi shield starting a local Access Point
  • WebServerLed - Turn on and off a led from a webpage
  • UdpNTPClient - Query a Network Time Protocol (NTP) server using UDP

Supported APIs

Most of the standard Arduino WiFi library methods are available. Refer to the WiFi library page for more details.

WiFiEsp class

  • begin() - Not all authentication types
  • disconnect() - YES
  • config()
  • setDNS() - NO (no AT command available)
  • SSID() - YES
  • BSSID() - YES
  • RSSI() - YES
  • encryptionType() - NO (no AT command available)
  • scanNetworks() - YES
  • getSocket()
  • macAddress() - YES

WiFiEspServer class

The WiFiEspServer class creates servers which can send data to and receive data from connected clients (programs running on other computers or devices).

  • WiFiEspServer() - YES
  • begin() - YES
  • available() - YES
  • write() - YES
  • print() - YES
  • println() - YES

Client class

The WiFiEspClient class creates clients that can connect to servers and send and receive data.

  • WiFiEspClient() - YES
  • connected() - YES
  • connect() - YES
  • write() - YES
  • print() - YES
  • println() - YES
  • available() - YES
  • read() - YES
  • flush() - YES
  • stop() - YES

WiFiEspUDP class

The UDP class enables UDP message to be sent and received.

  • WiFiUDP - YES
  • begin() - YES
  • available() - YES
  • beginPacket() - YES
  • endPacket() - YES
  • write() - YES
  • parsePacket() - YES
  • peek()
  • read() - YES
  • flush()
  • stop()
  • remoteIP() - YES
  • remotePort() - YES

Contributing

If you discover a bug or would like to propose a new feature, please open a new issue.

About

Arduino WiFi library for ESP32. Using AT commands over UART.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C++ 100.0%