arduino-esp32/libraries
Dirk-Willem van Gulik e581717bf3
Web server simplifications and handers (#7429)
* First stab ad simplyfing webserver auth and adding a handler.

* Tweaks after testing against docs and latest Library tree

* Add documentatin for callback handler

* Bodge to allow things to compile without the dependencies

* Remove dependency on sodium to make it compile with 4.4

* Fix hex conversion

* Move some common HEX functions into a static HEX class, remove those from MD5 and add some examples. This allows for the cleanup of various to/from HEX routines elsewhere.

* Remove some duplicated code

* Add simplfiied HEXBuilder under MD5Bulder to CMakefile.

* Update for 3.0.0 and QoL improvements

* Remove examples that depend on external libraries

* Skip H2 testing

* Formatting improvements

* Move builders examples to Utilities folder

* Fix indentation

* Add HashBuilder abstract class

* Add SHA1Builder

* Fix comment

* Fix whitespace

* Fix crashes and improve log messages

* Fix indentation for webserver

---------

Co-authored-by: Rodrigo Garcia <rodrigo.garcia@espressif.com>
Co-authored-by: Lucas Saavedra Vaz <32426024+lucasssvaz@users.noreply.github.com>
2024-01-16 15:49:46 +02:00
..
ArduinoOTA Update/upgrade OTAWebUpdater.ino example (#8839) 2023-11-10 01:27:38 +02:00
AsyncUDP This is a continuation on the topic of adding IPv6 Support to ESP32 Arduino (#9016) 2024-01-15 15:24:34 +02:00
BLE Replace new with malloc for non-class calls (#7868) 2023-12-13 10:22:54 +02:00
BluetoothSerial Bluetooth-classic: release BLE memory when BT classic only is requested (#8051) 2023-11-29 12:44:23 +02:00
DNSServer DNSServer refactoring, switch to AsyncUDP (#7482) 2023-12-18 14:47:04 +02:00
EEPROM ESP-IDF v5.1 (#7733) 2023-10-05 14:54:25 +03:00
ESP32 Web server simplifications and handers (#7429) 2024-01-16 15:49:46 +02:00
ESP_I2S Add support for I2S Slot Mask (#8936) 2023-11-29 15:48:34 +02:00
ESP_SR [I2S][SR] Add new I2S library and Sound Recognition support (#8714) 2023-10-18 12:05:26 +03:00
ESPmDNS This is a continuation on the topic of adding IPv6 Support to ESP32 Arduino (#9016) 2024-01-15 15:24:34 +02:00
Ethernet This is a continuation on the topic of adding IPv6 Support to ESP32 Arduino (#9016) 2024-01-15 15:24:34 +02:00
FFat ESP-IDF v5.1 (#7733) 2023-10-05 14:54:25 +03:00
FS Fix linker failure when using SPIFFS or LittleFS with Arduino as component. (#8768) 2023-10-17 13:22:42 +03:00
HTTPClient ESPLwIPClient::setTimeout conflict fix with Stream::setTimeout (#6676) 2023-12-13 16:02:54 +02:00
HTTPUpdate ESPLwIPClient::setTimeout conflict fix with Stream::setTimeout (#6676) 2023-12-13 16:02:54 +02:00
HTTPUpdateServer ESP-IDF v5.1 (#7733) 2023-10-05 14:54:25 +03:00
Insights ESP-IDF v5.1 (#7733) 2023-10-05 14:54:25 +03:00
LittleFS Added missing identifiers in esp_vfs_littlefs_conf_t (#9046) 2023-12-28 14:46:09 +02:00
NetBIOS ESP-IDF v5.1 (#7733) 2023-10-05 14:54:25 +03:00
Preferences Include nvs_commit() on three methods (#5309) 2021-08-23 21:23:42 +03:00
RainMaker Add documentation on threading issues with WiFi.onEvent() to examples (#8081) 2023-12-05 13:50:26 +02:00
SD sd_diskio.cpp: return 0 instead of false when return type != bool (#9075) 2024-01-08 14:01:59 +02:00
SD_MMC Add support for the Arduino Nano ESP32 on 3.x branch (#8909) 2023-11-29 12:43:59 +02:00
SimpleBLE Bump library versions to 2.0.0 (#5182) 2021-05-18 14:00:49 +03:00
SPI Add support for the Arduino Nano ESP32 on 3.x branch (#8909) 2023-11-29 12:43:59 +02:00
SPIFFS ESP-IDF v5.1 (#7733) 2023-10-05 14:54:25 +03:00
TFLiteMicro Add TFLite Micro examples (#8717) 2023-10-06 13:50:53 +03:00
Ticker Ticker fix solving #6155 (#7664) 2023-02-06 17:25:58 +02:00
Update UpdateClass::setMD5 store expected md5 in lowercase (#8959) 2023-12-05 13:30:26 +02:00
USB Add USB MIDI support to libraries/USB (#8166) 2023-12-05 10:42:53 +02:00
WebServer Web server simplifications and handers (#7429) 2024-01-16 15:49:46 +02:00
WiFi WiFiClient - assignment shouldn't stop connection (#9029) 2024-01-16 15:18:24 +02:00
WiFiClientSecure fix: Remove setTimeout (#8998) 2023-12-14 14:06:31 +02:00
WiFiProv Add documentation on threading issues with WiFi.onEvent() to examples (#8081) 2023-12-05 13:50:26 +02:00
Wire Add lock to protect concurrent i2c transactions performed by different tasks (#8127) 2023-11-29 11:42:56 +02:00
README.md Added example 'get mac address' (#8618) 2023-11-29 12:11:46 +02:00

ESP32 Libraries

arduino-esp32 includes libraries for Arduino compatibility along with some object wrappers around hardware specific devices. Examples are included in the examples folder under each library folder. The ESP32 includes additional examples which need no special drivers.

ArduinoOTA

Over The Air firmware update daemon. Use espota.py to upload to the device.

AsyncUDP

Asynchronous task driven UDP datagram client/server

BLE

Bluetooth Low Energy v4.2 client/server framework

BluetoothSerial

Serial to Bluetooth redirection server
Note: This library depends on Bluetooth Classic which is only available for ESP32
(Bluetoothserial is not available for ESP32-S2, ESP32-C3, ESP32-S3).

DNSServer

A basic UDP DNS daemon (includes captive portal demo)

EEPROM

Arduino compatibility for EEPROM (using flash)

ESP32

Additional examples

  • AnalogOut
  • Camera
  • ChipID
  • DeepSleep
  • ESPNow
  • FreeRTOS
  • GPIO
  • HallSensor
  • I2S
  • MacAddress
  • ResetReason
  • RMT
  • Time
  • Timer
  • Touch

ESPmDNS

mDNS service advertising

Ethernet

Ethernet networking

FFat

FAT indexed filesystem on SPI flash

FS

Filesystem virtualization framework

HTTPClient

A simple HTTP client, compatible with WiFiClientSecure

HTTPUpdate

Download a firmware update from HTTPd and apply it using Update

HTTPUpdateServer

Upload a firmware for the update from HTTPd

LittleFS

LittleFS (File System)

NetBIOS

NetBIOS name advertiser

Preferences

Flash keystore using ESP32 NVS

ESP RainMaker

End-to-end platform by Espressif that enables Makers to realize their IoT ideas faster

SD

Secure Digital card filesystem using SPI access

SD_MMC

Secure Digital card filesystem using 4-lane access

SimpleBLE

Minimal BLE advertiser

SPI

Arduino compatible Serial Peripheral Interface driver (master only)

SPIFFS

SPI Flash Filesystem (see spiffs-plugin to upload to device)

Ticker

A timer to call functions on an interval

Update

Sketch Update using ESP32 OTA functionality

USB

Universal Serial Bus driver (device only)

WebServer

A simple HTTP daemon

WiFi

Arduino compatible WiFi driver (includes Ethernet driver)

WiFiClientSecure

Arduino compatible WiFi client object using embedded encryption

Wire

Arduino compatible I2C driver