github espressif/arduino-esp32 3.1.0
Arduino Release v3.1.0 based on ESP-IDF v5.3.2

2 days ago

The Arduino ESP32 version 3.1.0 is stable release of new major release based on the ESP-IDF v5.3.2 (release notes).


For version migration, please check Migration Guide from v2.X to 3.X


Known Issues

  • I2C Slave is currently not working in ESP32-P4. Ongoing investigation.
  • RainMaker sketches are crashing in the current version. Pending fixes from RainMaker team.

What's Changed

System PR

Chip Support

Peripherals

GPIO

  • fix(HardwareSerial): fix pin remapping in begin() on master by @pillo79 in #10379

I2S

  • fix(i2s): Use separate variables when reading and writing by @me-no-dev in #10509

LEDC

PSRAM

Touch

UART

  • fix(uart): sleep retention by @SuGlider in #10248
  • feat(uart) : 3.1.x Core: fixes serialEventRun() to avoid calling available() if serialEvent() is not declared by @SuGlider in #10428
  • fix(uart): Add missing HP UARTs for ESP32-P4 by @lucasssvaz in #10447
  • ESP32-P4 UART Pin Definitions by @SuGlider in #10521
  • feat(uart): uart break example improvement by @SuGlider in #10525
  • feat(uart): adds Serial4 as a keyword - used by ESP32-P4 by @SuGlider in #10619
  • feat(uart): [IDF 5.3] fixes HardwareSerial::updateBaudRate() using a baud rate higher 230400 - checks UART Clock Source by @SuGlider in #10643
  • refactor(uart): Refactor UART test to work with any number of UARTs by @lucasssvaz in #10593

USB

  • feat(usb_hid_keyboard): Adds Keyboard Layout and Sends reports just for Modifier Keys by @SuGlider in #10591
  • fix(hid): Fix OUTPUT report not received by @me-no-dev in #10398

Libraries

Bluetooth & BLE

Ethernet

FS

Matter

  • Update Matter Light README.md by @lboue in #10357
  • feat(matter): initial commit with arduino matter lib by @SuGlider in #10467
  • feat(Matter): New Matter Endpoint - Dimmable Light by @SuGlider in #10543
  • Matter example patch by @SuGlider in #10618
  • feat(matter): New Matter Endpoint by @SuGlider in #10628
  • Adds a Minimum Code Matter Example by @SuGlider in #10639
  • feat(Matter): add new MatterColorLight endpoint by @SuGlider in #10654
  • feat(matter): New example => Wifi Prov within Matter as alternative for wireless network provisioning by @SuGlider in #10658
  • feat(matter): Adds Matter Enhanced Color Light Endpoint (CW/WW/RGB) by @SuGlider in #10657
  • feat(matter): Adds a new Matter Endpoint: Generic Switch (smart button) by @SuGlider in #10662
  • feat(Matter): Creates New Matter Fan Controller Endpoint by @SuGlider in #10691
  • feat(matter): adds new Temperature Sensor Matter Endpoint by @SuGlider in #10698
  • feat(Matter): Adds New Matter Humidity Sensor Endpoint by @SuGlider in #10703
  • feat(matter_examples): apply boot button change to all examples by @SuGlider in #10702
  • feat(matter): adds a Pressure Sensor Matter Endpoint by @SuGlider in #10710
  • feat(matter): creates a Matter Contact Sensor Endpoint by @SuGlider in #10712
  • feat(matter): adds new Matter Occupancy Sensor endpoint by @SuGlider in #10717
  • feat(matter): adds a new endpoint to Matter - On/Off Plugin (Power Relay) by @SuGlider in #10722
  • feat(matter): General Review - remove while(!serial) ipv6(enable) and fixes some commentaries in the code by @SuGlider in #10732
  • feat(matter): Adds Identification callback to all matter endpoints by @SuGlider in #10734

Network

OTA

OpenThread

  • feat(openthread): add license declaration to all soure code and examples by @SuGlider in #10631

SDMMC

Update

  • Guard crypto parts in "Update" to save resources by @Jason2866 in #10630
  • Update lib - User can choose if calc MD5 from encrypted or decrypted file by @zinkett in #10510

WebServer

WiFi

  • fix(DNSServer Lib) - improper startup code in WiFi mode by @vortigont in #10366
  • Add support for WiFi to ESP32-P4 by @me-no-dev in #10463
  • fix(wifi): Fix requirements and guards for hosted Wi-Fi by @lucasssvaz in #10579
  • fix(wifi): fixes WiFi.isconnected() to return true when it is connected and it has an IP Addr by @SuGlider in #10595
  • fix: Split provisioning into two parts for better synchronization by @kvp1703 in #10677

Wire

  • Wire library: Add conditional compilation for second I2C interface based on SOC_I2C_NUM by @sivar2311 in #10408
  • Replace outdated wrong SOC_I2C_NUM and use SOC_HP_I2C_NUM by @Jason2866 in #10452

Zigbee

  • feat(zigbee): Add Zigbee library by @P-R-O-C-H-Y in #10265
  • fix(zigbee): Enable the internal pull-up resistor for BUTTON_PIN by @lboue in #10491
  • feat(Zigbee): Support for sleepy device + Power Source and battery level + Humidity sensor cluster by @P-R-O-C-H-Y in #10551
  • fix(Zigbee): Fix typo in Zigbee_Temp_Hum_Sensor_Sleepy.ino by @lboue in #10581
  • fix(Zigbee): Add missing direction to report commands by @P-R-O-C-H-Y in #10623
  • feat(zigbee): Add setLight APIs to manually operate lights by @P-R-O-C-H-Y in #10626
  • fix(zigbee): Add connected(), minor fixes, example update by @P-R-O-C-H-Y in #10636
  • fix(zigbee): Increase timeout, commision again on failure + setScanDuration by @P-R-O-C-H-Y in #10651
  • feat(Zigbee): Recall bounded devices after reboot + IEEE address option for commands by @P-R-O-C-H-Y in #10676
  • fix(zigbee): Fix rejoin issue for battery powered devices by @P-R-O-C-H-Y in #10704
  • feat(zigbee): Add pressure, flow, ccupancy and carbon dioxide sensor by @P-R-O-C-H-Y in #10720
  • Zigbee: Add dimmable light endpoint class by @FaBjE in #10727

Boards Additions & Updates

CI & testing

Documentation

  • fix(arduino): adds ESP32-P4 to the package description by @SuGlider in #10426
  • docs(lib-builder): Improve UI and Docker image sections by @lucasssvaz in #10535
  • fix(typo): Fix typo in CDC DFU flash tutorial by @jurstu in #10584
  • Remove 3rd party references in code and documentation by @SuGlider in #10666

FreeRTOS

Tooling

Others

New Contributors

Full Changelog: 3.0.5...3.1.0

Don't miss a new arduino-esp32 release

NewReleases is sending notifications on new releases.