arduino-esp32/tools/gen_esp32part.py

678 lines
23 KiB
Python
Raw Normal View History

#!/usr/bin/env python
#
# ESP32 partition table generation tool
#
# Converts partition tables to/from CSV and binary formats.
#
Update IDF to aaf1239 (#1539) * fix sdmmc config * Fix warnings in EEPROM from @Curclamas * remove leftover TAG in EEPROM * Initial add of @stickbreaker i2c * Add log_n * fix warnings when log is off * i2c code clean up and reorganization * add flags to interrupt allocator * fix sdmmc config * Fix warnings in EEPROM from @Curclamas * remove leftover TAG in EEPROM * fix errors with latest IDF * fix debug optimization (#1365) incorrect optimization for debugging tick markers. * Fix some missing BT header * Change BTSerial log calls * Update BLE lib * Arduino-ESP32 release management scripted (#1515) * Calculate an absolute path for a custom partitions table (#1452) * * Arduino-ESP32 release management scripted (ready-to-merge) * * secure env for espressif/arduino-esp32 * * build tests enabled * gitter webhook enabled * * gitter room link fixed * better comment * * filepaths fixed * BT Serial adjustments * * don't run sketch builds & tests for tagged builds * Return false from WiFi.hostByName() if hostname is not resolved * Free BT Memory when BT is not used * WIFI_MODE_NULL is not supported anymore * Select some key examples to build with PlatformIO to save some time * Update BLE lib * Fixed BLE lib * Major WiFi overhaul - auto reconnect on connection loss now works - moved to event groups - some code clean up and procedure optimizations - new methods to get a more elaborate system ststus * Add cmake tests to travis * Add initial AsyncUDP * Add NetBIOS lib and fix CMake includes * Add Initial WebServer * Fix WebServer and examples * travis not quiting on build fail * Try different travis build * Update IDF to aaf1239 * Fix WPS Example * fix script permission and add some fail tests to sketch builder * Add missing space in WiFiClient::write(Stream &stream)
2018-06-27 07:01:06 +00:00
# See https://docs.espressif.com/projects/esp-idf/en/latest/api-guides/partition-tables.html
2017-08-01 05:51:04 +00:00
# for explanation of partition table structure and uses.
#
# SPDX-FileCopyrightText: 2016-2021 Espressif Systems (Shanghai) CO LTD
# SPDX-License-Identifier: Apache-2.0
from __future__ import division, print_function, unicode_literals
import argparse
import binascii
import errno
import hashlib
import os
import re
import struct
import sys
MAX_PARTITION_LENGTH = 0xC00 # 3K for partition data (96 entries) leaves 1K in a 4K sector for signature
MD5_PARTITION_BEGIN = b"\xEB\xEB" + b"\xFF" * 14 # The first 2 bytes are like magic numbers for MD5 sum
PARTITION_TABLE_SIZE = 0x1000 # Size of partition table
Update IDF to aaf1239 (#1539) * fix sdmmc config * Fix warnings in EEPROM from @Curclamas * remove leftover TAG in EEPROM * Initial add of @stickbreaker i2c * Add log_n * fix warnings when log is off * i2c code clean up and reorganization * add flags to interrupt allocator * fix sdmmc config * Fix warnings in EEPROM from @Curclamas * remove leftover TAG in EEPROM * fix errors with latest IDF * fix debug optimization (#1365) incorrect optimization for debugging tick markers. * Fix some missing BT header * Change BTSerial log calls * Update BLE lib * Arduino-ESP32 release management scripted (#1515) * Calculate an absolute path for a custom partitions table (#1452) * * Arduino-ESP32 release management scripted (ready-to-merge) * * secure env for espressif/arduino-esp32 * * build tests enabled * gitter webhook enabled * * gitter room link fixed * better comment * * filepaths fixed * BT Serial adjustments * * don't run sketch builds & tests for tagged builds * Return false from WiFi.hostByName() if hostname is not resolved * Free BT Memory when BT is not used * WIFI_MODE_NULL is not supported anymore * Select some key examples to build with PlatformIO to save some time * Update BLE lib * Fixed BLE lib * Major WiFi overhaul - auto reconnect on connection loss now works - moved to event groups - some code clean up and procedure optimizations - new methods to get a more elaborate system ststus * Add cmake tests to travis * Add initial AsyncUDP * Add NetBIOS lib and fix CMake includes * Add Initial WebServer * Fix WebServer and examples * travis not quiting on build fail * Try different travis build * Update IDF to aaf1239 * Fix WPS Example * fix script permission and add some fail tests to sketch builder * Add missing space in WiFiClient::write(Stream &stream)
2018-06-27 07:01:06 +00:00
MIN_PARTITION_SUBTYPE_APP_OTA = 0x10
NUM_PARTITION_SUBTYPE_APP_OTA = 16
ESP-IDF v5.1 (#7733) * Initial changes to compile under ESP-IDF v5.1 * Initial import for ESP-IDF v5.1 libs * Update toolchain * Update esp32-hal-psram.c * Add missing LDs * Update platform.txt * Stop some CI jobs, because they will always fail * Fix examples * Update app_httpd.cpp * Update ResetReason.ino * Warnings fixes * Added the example guideline and template (#7665) * Added the example guideline and template * PR review changes with some typos and grammar fixes * Changes according to the PR review * Added ESP32-S3 link to the datasheet (#7738) * Update HiFreq_ADC.ino * Replace periph_ctrl.h use because of deprecation * Replace esp_spi_flash.h use because of deprecation * Add includes to male mDNS::enableWorkstation compile * Fix ssl_client mbedtls_pk_parse_key callback * Update temperature sensor driver * Allow sketch_utils to compile with arduino-cli * Run CI with arduino-cli * Fix arduino-cli CI build on Windows * Refactor platform.txt to not use components installed through the board manager when running from git * Initial Peripheral Manager Implementation * Update SigmaDelta driver to use the new ESP-IDF driver API * Small improvements to peripheral manager and SigmaDelta * Remove deleted function from SigmaDelta header * Update DAC driver to use the new ESP-IDF driver API * Adds softAp(String) to make it compatible with ESP8266 (#7801) * Fix commentary (#7800) Minor fix based on observation done in https://github.com/espressif/arduino-esp32/issues/7795#issuecomment-1416868611 * add adafruit new board feather esp32s2 reserve tft (#7794) * bugfix: add <stdint.h> for uint8_t to avoid compilation failure (GCC 11.2.0) (#7744) * Adding 3rd party boards for VALTRACK-V4-VTS-ESP32-C3 & VALTRACK-V4-MFW-ESP32-C3 (#7735) * Added VALTRACK-V4-VTS-ESP32-C3 board definition Created pins_arduino.h & made changes to boards.txt with necessary changes * Modified the URL * Renamed json * renamed all auRL * Adding VALTRACK-V4 series board definitions Added VALTRACK-V4-VTS-ESP32C3 & VALTRACK-V4-MFW-ESP32-C3 board variants * Adding VALTRACK-V4 series board definitions Added VALTRACK-V4-VTS-ESP32C3 & VALTRACK-V4-MFW-ESP32-C3 board variants * Reverted package_esp32_index.template.json restored package_esp32_index.template.json from edits * Reverted package_esp32_index.template.json Added new line to package_esp32_index.template.json * Update Platformio CI (#7725) * WiFiClient example fix (#7711) * Modified WiFiClient example to use thingspeak instead of non-functionig sparkfun * Moved instructions to README * Fixed spelling * Added link to S3 datasheet --------- Co-authored-by: Jan Procházka <90197375+P-R-O-C-H-Y@users.noreply.github.com> * Mirror update from Heltec repository (#7709) Heltec updated the I2C pins in https://github.com/Heltec-Aaron-Lee/WiFi_Kit_series/commit/b10f4bf85d13fd01be80dcdb0eb59e6a8c8ba19a * Fixes BLE data printing (#7699) * Fixes BLE data printing BLE data has no '\0' terminator, therefore it can't be printed as a regular C string. This fix just prints the BLE data based on its length. * Simplify printing to a single call * split menu options + lora_32_V3 fix (#7697) * Change header gaurd name (#7696) * Fix Name (#7691) Wrong name in definitions. * Fix error in WiFiClient.cpp where the connect function fails for timeouts below 1 second (#7686) * Update WiFiClient.cpp This change will allow specifying connect timeouts below 1 second. Without this change, if connect timeouts under 1 second are given, the connect defaults to 0ms and fails. This will also allow timeouts in fractions of seconds, e.g. 1500ms. Without this change, connect timeouts are truncated to full second increments. * Make parameter timeout_ms clear * Change connection timeout_ms name for clarity --------- Co-authored-by: Rodrigo Garcia <rodrigo.garcia@espressif.com> * fixed the function header (#7674) * fixed the function header * fixed function name and paramaters --------- Co-authored-by: Jan Procházka <90197375+P-R-O-C-H-Y@users.noreply.github.com> * Ticker fix solving #6155 (#7664) * Wrapped Ticker functions with #pragma disabling -Wcast-function-type * Revert "Wrapped Ticker functions with #pragma disabling -Wcast-function-type" This reverts commit 160be7e67a10d01b6e44c4bf2521c0ccd6348976. * Fixed Ticker example * Modified Ticker example * Fixed LED_BUILTIN err for ESP32 --------- Co-authored-by: Jan Procházka <90197375+P-R-O-C-H-Y@users.noreply.github.com> * setPins fix ESP32 "specified pins are not supported by this chip." (#7646) [ESP32: SDMMCFS::begin hardcodes the usage of slot 1, only check if the pins match slot 1 pins.] setPins() was testing pins D1, D2 and D3 all against D1 ... fine in 1 pin mode when all are -1 not so much if you're trying to get 4 pin mode working. I now see this function doesn't really do anything on the ESP32...accept now correctly checks that you are trying to use the slot 1 pins. Co-authored-by: Jan Procházka <90197375+P-R-O-C-H-Y@users.noreply.github.com> * Allow passing IP as connect method parameter in WiFiClientSecure and skip unnecessary host-ip conversions (#7643) * Add LED_BUILTIN* definitions and initialization for LEDs to stop them floating. (#7636) Co-authored-by: Rodrigo Garcia <rodrigo.garcia@espressif.com> * Expand path to tinuf2 image when checking existence in platformio-build.py (#7631) * Expand path to tinuf2 image when checking existence * More isFiles fixed * Remove (useless) trailing semicolon from Print.cpp (#7622) * ADD: New variant Edgebox-ESP-100 (#7771) * ADD: New variant Edgebox-ESP-100 * FIX: Edgebox-ESP-100 Board.txt usb mode option change back to default value as ESP32S3 * Add Crabik Slot ESP32-S3 board (#7790) * Added Crabik Slot ESP32-S3 * Adding CPU frequency settings and removing excess from partition scheme settings * new variant LilyGO T-Display-S3 (#7763) * new variant LilyGO T-Display-S3 https://github.com/Xinyuan-LilyGO/T-Display-S3 * Add boards.txt definition --------- Co-authored-by: Me No Dev <me-no-dev@users.noreply.github.com> * Update get.py to support Apple ARM64 * Update package_esp32_index.template.json * WString Return bool (#7774) * Add Roboheart Hercules development board to the esp32-core (#7672) * added Roboheart Hercules pin definitions and board.txt entries * added package_roboheat.json for prototyping * Roboheart Hercules pins * Updated the pins * Delete package_roboheart.json * Requested changes --------- Co-authored-by: renebohne <rene.bohne@gmail.com> * Reword "ESP-IDF as Component" (#7812) I think "Arduino as an ESP-IDF component" or just "As ESP-IDF component" instead of "ESP-IDF as Component" is more correct way to name the link. 1. "ESP-IDF as Component" would imply that ESP-IDF is some sort of library for Arduino, which is (IMO) misleading, because it's true the other way around. 2. It's written as "Arduino as an ESP-IDF component" on the webpage it points to as well. - Also I removed the capitalization from "Component" as I have not found a reason why is it capitalized. * add new board Adafruit Feather ESP32-S3 Reverse TFT (#7811) * Multi threading examples (tasks, queues, semaphores, mutexes) (#7660) * Moved and renamed example ESP32/FreeRTOS to MultiThreading/BasicMultiThreading * Added dummy files * Modified original example * Fixed BasicMultiThreading.ino * Added Example demonstrating use of queues * Extended info in BasicMultiThreading * Renamed Queues to singular Queue * Added Mutex example * Added Semaphore example * Moved info from example to README * Moved doc from Mutex to README * Added Queue README * Removed unecesary text * Fixed grammar * Increased stack size for Sempahore example * Added headers into .ino files * Added word Example at the end of title in README * removed unused line * Added forgotten README * Modified BasicMultiThreading example * Added missing S3 entry in README * moved location * Update ESP-IDF libs * Update CMakeLists.txt * Update esptool to v4.4 * Add function timerAttachInterruptFlag (#7809) * Update esptool to v4.5 * ADC refactoring (#7827) * Adc refactored + periman implementation Peripheral manager still needs to be checked if the implementation is right. * switched to working solution for milivolts read * Periman detachbus fix * coding style * fix CI warnings * fix FreeRTOS example * Update ETH.cpp * Update FunctionalInterruptStruct.ino * Update package_esp32_index.template.json * Update package_esp32_index.template.json * Fixes for the latest IDF v5.1 * update esp-idf libs and toolchain * Turn OFF auto crystal frequency for ESP32 (needed by TWAI) * Update examples * Switch build to mostly use flags from files Includes can not be done this way * Reorganize flag files * Optimize chip build flags further * Revert defines from file. MBEDTLS_CONFIG_FILE does not properly expand * Add support for includes and defines from file * Replace old sdk path references in platform.txt * use gcc-ar (#8013) * Makes F_CPU generic for all SoC (#8007) Based on CONFIG_ESP_DEFAULT_CPU_FREQ_MHZ that is correctly defined in the sdkconfig file for each SoC. * TIMER refactoring (#7904) * refactor using GPtimer * Updated timer HW test * fix examples * Add v2.0.7 in issue template (#7871) * refactor using GPtimer * Updated timer HW test * fix examples * Revert "Add v2.0.7 in issue template (#7871)" This reverts commit fcc3b17d62ff57861f8913ca1f142fd5163b7457. * Update upload-artifact to v3 in HW CI * Revert "Update upload-artifact to v3 in HW CI" This reverts commit 1ba228071718ba37c4e26d98db22f77b2a7364a6. * replace resolution with frequency * remove count_down option * countup removed from examples + header * Refactored timer object * code cleanup + examples and tests fixes * TimerAlarm fix --------- Co-authored-by: Vojtěch Bartoška <76958047+VojtechBartoska@users.noreply.github.com> * [Docs] ADC and Timer API Update (+some docs fixes) (#7906) * updated docs * remove hall sensor docs Removed Hall sensor documentation as its no longer supported in IDF-5 * Fixed ESPNow examples location in docs * Last timer refactored API + gpio small fix * AlarmWrite fix * Fixes APLL/PLL with RTC Frequency (#8025) log_d() was displaying APLL for any SoC, but S3 and C3 has not such option, causing compilation errors. * Update IDF libs and fix OPI PSRAM on S3 * Add setMode function HardwareSerial.c to set the esp32 uart mode for use with RS485 auto RTS (#7935) * Added setMode function to set the esp32 uart mode Used to set the esp32 uart mode for use with RS485 Half Duplex and the auto RTS pin mode. This will set/clear the RTS pin output to control the RE/DE pin on most RS485 chips. * Add Success (bool) return in some functions * Add Success (bool) return code to some functions * Add Success (bool) return to some functions * Add Success (bool) return to some functions * Fix uartSetRxTimeout return type --------- Co-authored-by: Rodrigo Garcia <rodrigo.garcia@espressif.com> * Add support for esp-elf-gdb * WFG Crashfix (#8044) * Update component libs * IDF release/v5.1 (#8061) * IDF release/v5.1 bb9200acec * Update Esp.cpp * IDF release/v5.1 420ebd208a * Update esp32-hal-psram.c * Switch SDK to be an external package * fix path (#8096) * Makes UART work at any APB Frequency (#8097) Fixes HardwareSerial to work with IDF 5.1 on any CPU/APB Frequency (240MHz to 10MHZ), including user created low power modes. * Add required callbacks for TinyUSB DFU * Update version to 3.0.0 * Add ESP.getCoreVersion() and update ESP.getChipModel() * Update timer hal for the latest 5.1 * Use separate RX and TX buffer sizes in HTTP client optimizes download by allowing up to 4K packets to be received * Rename clock tree enum name in latest 5.1 * ESP32-H4 support was removed in ESP-IDF v5.1 * IDF release/v5.1 2004bf4e11 (#8165) * Deinit previous bus first (#8180) * TIMER - add timer_started flag, fix timerEnd() + timer HW test (#8135) * Add timer_started flag and stop before disable * Fix timer HW test * TOUCH - Peripheral manager implementation (#8129) * Touch periman implemented * Deinit previous bus first * LEDC Refactoring - Peripheral manager implemented (#8126) * LEDC periman implementation * Fix examples * Rework tone * Update ledc docs * fix missing bracket * Update analog funtions esp32-hal.h * Update CameraWebServer example * Fix HiFreq_ADC example * minor fixes - typos * Avoid calling tone/notone when tone already runs on dif. pin * Remove unused channels_resolution * GPIO - Peripheral manager implementation (#8179) * periman-implementation * fix RGB_BUILTIN and remove space * Enforces more consistency into Peripheral Manager (#8188) * Avoid log_i() message the first time a bus is assigned * Prevent operation with ESP32_BUS_TYPE_INIT * keeps coding style * do not print messages on INIT bus type * [Arduino Core 3.0.0] RMT IDF5.1 Refactoring (#7994) * RMT IDF5.1 refactoring * Fixes initial value setting * removed rmtRead() with user callback * simplify/remove Read data structure * Deep API simplification * fixes the examples * fix rmt.h * adds support to APB different frequencies * fixes CI and not defined RGB_BUILTIN * new RMT API and examples * fixing commentaties * Update esp32-hal-rgb-led.c * changes Filter API * Fixes example with Filter API * Update PlatformIO scripts for the upcoming 3.0 core (#8183) * Update PlatformIO scripts for the upcoming 3.0 core * Dynamically select proper framework-arduinoespressif32-libs package With this change the dev-platform will be dynamically configured to pull the latest .zip package with precompiled libraries from extracted from package_esp32_index.template.json * free memory on detach (#8264) * SPI - Peripheral manager implementation (#8255) * spi periman implementation * fix header file * remove unused struct * fix missing braces * Update esp32-hal-rmt.c (#8216) Optimizing Peripheral Manager Test * I2C - Peripheral manager implementation (#8220) * i2c-master periman initial commit * i2c-master make detachbus static + comment remove * i2c-slave periman implementation * SetPinBus to INIT on i2cDeinits * Fix slave pins deinit * remove dbg logs * set ret to ESP_FAIL instead of returning * Fix warnings in hal-spi caused by pariman transition * Update esptool.py to version 4.6 * Add platform support for ESP_SR * Add USB Type and valid pin check to periman * replace bus with spi->num+1 (#8279) * Remove default pins from SPI HAL * Add commented out handlers for esptool.js in TinyUSB CDC For future use * Add build defines for host os and fqbn (for debug purposes) * Provide proper memory caps total size * Update Esp.cpp * SDMMC - Peripheral manager implementation (#8289) * sdmmc periman implemented * save pins when SOC_SDMMC_USE_IOMUX * IDF release/v5.1 4bc762621d (#8292) * Adds missing pinMode (#8312) * Adds missing pinMode The example code lacks a pinMode() to initialize the GPIO 0 (button). In Arduino Core 3.0.0, it prints an error message when trying to read a not initialized GPIO. * Update KeyboardLogout.ino Adds <buttonPin> to keep code standard * Update KeyboardReprogram.ino Adds <buttonPin> to keep code standard * LEDC Fade implementation (#8338) * fade API + pointer fixes * Add fade api * Add fade example * update ledc docs * remove unused variables * fix path to example * Adds USB to Peripheral Manager - Arduino Core 3.0.0 (#8335) * ETHERNET - Peripheral manager implementation (#8297) * Peripheral manager implemented * remove unused variable * Add all RMII pins * fix typo * Adds HardwareSerial to Peripheral Manager Arduino 3.0.0 (#8328) * Do not limit ETHERNET in periman to only ESP32. SPI is also an option * Initial support for ESP32-C6 (#8337) * Add checks for SOC defines (#8351) * Add checks for SOC defines * Add SoC checks to BLE library * fix i2c compilation error * fix wrong placement of include * add check to SPI library * add check to USB library * add checks to Wire library * Feature/esp32h2 support (#8373) * Initial support for ESP32H2 * Additional changes for ESP32H2 * Update libs for ESP32H2 * Fix flashing on ESP32-H2 * Fix GPIO Configs for ESP32-C6 and ESP32-H2 * Update Timer test sketch * Fix upload flash parameters * Use ets_write_char_uart instead of ets_printf in log_printfv * Print full chip report when log level is sufficient (#8282) * ESP32-C3 does not have ets_write_char_uart * Fix BLE gap event name * HW Testing - Pytest update (#8389) * update tests requirements * remove already handled components * Update version of pytest * Add missing ESP32-H2 to hil.yml * Updated FreeRTOS names (#8418) * HW Testing - ESP32-C6 + ESP32-H2 fixes (#8404) * add C6/H2 to tests cfg.json * remove , * workflow runs-on runner by matrix * Add need for arduino tag to select runner * Add cryptography to requirements.txt * Removed duplicate TX1 define for H2 (#8402) * Fix broken examples * Fixes RMT filter & idle timing and setup (#8359) * Fixes Filter and Idle parameter to uint32 * Fixes Filter and Idle setup * Fixes it to 5.1Libs branch * fix RMT CLK source and Filter API * fixes missing ; * fixes missing ; * fixes RMT example * IDF release/v5.1 a7b62bbcaf (#8438) * Add workflow to build executables from python scripts (#8290) * Add workflow to build executables from python scripts * Push binary to tools * Enable executable signing on Windows * Update get.py * Push binary to tools * Try with multiple files * Try more actions * Try powershell * Restore tools so they do not get rebuilt * Finalize scripts * Push binary to tools * App rollback should be after PSRAM is initialized * Correcting RX1 to GPIO4 and TX1 to GPIO5 to be consistent with documentation. Previous pin use works but is inconsistent with C6 docs. * Fixes Memory Leak (#8486) * fixes preprocessor test (#8485) * fixes preprocessor test When using `#define USE_SOFT_AP` Change `&& not USE_SOFT_AP` ==> `&& !defined(USE_SOFT_AP)` * Adds any BLE capable device in WiFiProv.ino Removing ESP32 restriction for BLE Provisioning. * fix flash mode read out for C6 * Add option for custom partitions without restrictions * SD_MMC update (#8298) * Updated SD_MMC lib and examples * Removed getter implementation and commented usage in examples * squashed updates * IDF release/v5.1 f0437b945f (#8599) * Update package_esp32_index.template.json * Fix printf format build error in BTAdvertisedDeviceSet.cpp --------- Co-authored-by: Pedro Minatel <pedro.minatel@espressif.com> Co-authored-by: Rodrigo Garcia <rodrigo.garcia@espressif.com> Co-authored-by: Ha Thach <thach@tinyusb.org> Co-authored-by: Martin Turski <quiret@vfemail.net> Co-authored-by: raviypujar <raviypujar@gmail.com> Co-authored-by: Jason2866 <24528715+Jason2866@users.noreply.github.com> Co-authored-by: Tomáš Pilný <34927466+PilnyTomas@users.noreply.github.com> Co-authored-by: Jan Procházka <90197375+P-R-O-C-H-Y@users.noreply.github.com> Co-authored-by: Daniel Berlin <dberlin@dberlin.org> Co-authored-by: Nima Askari (نیما عسکری) <nimaltd@yahoo.com> Co-authored-by: rtpmsys <106180646+rtpmsys@users.noreply.github.com> Co-authored-by: bytiful <55647551+bytiful@users.noreply.github.com> Co-authored-by: tmfarrington <tmfarrington@users.noreply.github.com> Co-authored-by: Krzysiek S <chris.streh@gmail.com> Co-authored-by: surt <carl.olsson@gmail.com> Co-authored-by: Max Scheffler <max.scheffler@pm.me> Co-authored-by: Clemens Kirchgatterer <clemens@1541.org> Co-authored-by: Peter Pan's Techland <twinkle-pirate@hotmail.com> Co-authored-by: Roman <programmeofficemilkyway@gmail.com> Co-authored-by: Eistee <Eistee82@users.noreply.github.com> Co-authored-by: David McCurley <44048235+mrengineer7777@users.noreply.github.com> Co-authored-by: Gaya3N25 <30388176+Gaya3N25@users.noreply.github.com> Co-authored-by: renebohne <rene.bohne@gmail.com> Co-authored-by: Olivér Remény <25034625+remenyo@users.noreply.github.com> Co-authored-by: davidk88 <david.kotar@gmail.com> Co-authored-by: Vojtěch Bartoška <76958047+VojtechBartoska@users.noreply.github.com> Co-authored-by: James Armstrong <jamesarmstrong3@me.com> Co-authored-by: Valerii Koval <valeros@users.noreply.github.com> Co-authored-by: Peter G. Jensen <root@petergjoel.dk>
2023-10-05 11:54:25 +00:00
SECURE_NONE = None
SECURE_V1 = "v1"
SECURE_V2 = "v2"
ESP-IDF v5.1 (#7733) * Initial changes to compile under ESP-IDF v5.1 * Initial import for ESP-IDF v5.1 libs * Update toolchain * Update esp32-hal-psram.c * Add missing LDs * Update platform.txt * Stop some CI jobs, because they will always fail * Fix examples * Update app_httpd.cpp * Update ResetReason.ino * Warnings fixes * Added the example guideline and template (#7665) * Added the example guideline and template * PR review changes with some typos and grammar fixes * Changes according to the PR review * Added ESP32-S3 link to the datasheet (#7738) * Update HiFreq_ADC.ino * Replace periph_ctrl.h use because of deprecation * Replace esp_spi_flash.h use because of deprecation * Add includes to male mDNS::enableWorkstation compile * Fix ssl_client mbedtls_pk_parse_key callback * Update temperature sensor driver * Allow sketch_utils to compile with arduino-cli * Run CI with arduino-cli * Fix arduino-cli CI build on Windows * Refactor platform.txt to not use components installed through the board manager when running from git * Initial Peripheral Manager Implementation * Update SigmaDelta driver to use the new ESP-IDF driver API * Small improvements to peripheral manager and SigmaDelta * Remove deleted function from SigmaDelta header * Update DAC driver to use the new ESP-IDF driver API * Adds softAp(String) to make it compatible with ESP8266 (#7801) * Fix commentary (#7800) Minor fix based on observation done in https://github.com/espressif/arduino-esp32/issues/7795#issuecomment-1416868611 * add adafruit new board feather esp32s2 reserve tft (#7794) * bugfix: add <stdint.h> for uint8_t to avoid compilation failure (GCC 11.2.0) (#7744) * Adding 3rd party boards for VALTRACK-V4-VTS-ESP32-C3 & VALTRACK-V4-MFW-ESP32-C3 (#7735) * Added VALTRACK-V4-VTS-ESP32-C3 board definition Created pins_arduino.h & made changes to boards.txt with necessary changes * Modified the URL * Renamed json * renamed all auRL * Adding VALTRACK-V4 series board definitions Added VALTRACK-V4-VTS-ESP32C3 & VALTRACK-V4-MFW-ESP32-C3 board variants * Adding VALTRACK-V4 series board definitions Added VALTRACK-V4-VTS-ESP32C3 & VALTRACK-V4-MFW-ESP32-C3 board variants * Reverted package_esp32_index.template.json restored package_esp32_index.template.json from edits * Reverted package_esp32_index.template.json Added new line to package_esp32_index.template.json * Update Platformio CI (#7725) * WiFiClient example fix (#7711) * Modified WiFiClient example to use thingspeak instead of non-functionig sparkfun * Moved instructions to README * Fixed spelling * Added link to S3 datasheet --------- Co-authored-by: Jan Procházka <90197375+P-R-O-C-H-Y@users.noreply.github.com> * Mirror update from Heltec repository (#7709) Heltec updated the I2C pins in https://github.com/Heltec-Aaron-Lee/WiFi_Kit_series/commit/b10f4bf85d13fd01be80dcdb0eb59e6a8c8ba19a * Fixes BLE data printing (#7699) * Fixes BLE data printing BLE data has no '\0' terminator, therefore it can't be printed as a regular C string. This fix just prints the BLE data based on its length. * Simplify printing to a single call * split menu options + lora_32_V3 fix (#7697) * Change header gaurd name (#7696) * Fix Name (#7691) Wrong name in definitions. * Fix error in WiFiClient.cpp where the connect function fails for timeouts below 1 second (#7686) * Update WiFiClient.cpp This change will allow specifying connect timeouts below 1 second. Without this change, if connect timeouts under 1 second are given, the connect defaults to 0ms and fails. This will also allow timeouts in fractions of seconds, e.g. 1500ms. Without this change, connect timeouts are truncated to full second increments. * Make parameter timeout_ms clear * Change connection timeout_ms name for clarity --------- Co-authored-by: Rodrigo Garcia <rodrigo.garcia@espressif.com> * fixed the function header (#7674) * fixed the function header * fixed function name and paramaters --------- Co-authored-by: Jan Procházka <90197375+P-R-O-C-H-Y@users.noreply.github.com> * Ticker fix solving #6155 (#7664) * Wrapped Ticker functions with #pragma disabling -Wcast-function-type * Revert "Wrapped Ticker functions with #pragma disabling -Wcast-function-type" This reverts commit 160be7e67a10d01b6e44c4bf2521c0ccd6348976. * Fixed Ticker example * Modified Ticker example * Fixed LED_BUILTIN err for ESP32 --------- Co-authored-by: Jan Procházka <90197375+P-R-O-C-H-Y@users.noreply.github.com> * setPins fix ESP32 "specified pins are not supported by this chip." (#7646) [ESP32: SDMMCFS::begin hardcodes the usage of slot 1, only check if the pins match slot 1 pins.] setPins() was testing pins D1, D2 and D3 all against D1 ... fine in 1 pin mode when all are -1 not so much if you're trying to get 4 pin mode working. I now see this function doesn't really do anything on the ESP32...accept now correctly checks that you are trying to use the slot 1 pins. Co-authored-by: Jan Procházka <90197375+P-R-O-C-H-Y@users.noreply.github.com> * Allow passing IP as connect method parameter in WiFiClientSecure and skip unnecessary host-ip conversions (#7643) * Add LED_BUILTIN* definitions and initialization for LEDs to stop them floating. (#7636) Co-authored-by: Rodrigo Garcia <rodrigo.garcia@espressif.com> * Expand path to tinuf2 image when checking existence in platformio-build.py (#7631) * Expand path to tinuf2 image when checking existence * More isFiles fixed * Remove (useless) trailing semicolon from Print.cpp (#7622) * ADD: New variant Edgebox-ESP-100 (#7771) * ADD: New variant Edgebox-ESP-100 * FIX: Edgebox-ESP-100 Board.txt usb mode option change back to default value as ESP32S3 * Add Crabik Slot ESP32-S3 board (#7790) * Added Crabik Slot ESP32-S3 * Adding CPU frequency settings and removing excess from partition scheme settings * new variant LilyGO T-Display-S3 (#7763) * new variant LilyGO T-Display-S3 https://github.com/Xinyuan-LilyGO/T-Display-S3 * Add boards.txt definition --------- Co-authored-by: Me No Dev <me-no-dev@users.noreply.github.com> * Update get.py to support Apple ARM64 * Update package_esp32_index.template.json * WString Return bool (#7774) * Add Roboheart Hercules development board to the esp32-core (#7672) * added Roboheart Hercules pin definitions and board.txt entries * added package_roboheat.json for prototyping * Roboheart Hercules pins * Updated the pins * Delete package_roboheart.json * Requested changes --------- Co-authored-by: renebohne <rene.bohne@gmail.com> * Reword "ESP-IDF as Component" (#7812) I think "Arduino as an ESP-IDF component" or just "As ESP-IDF component" instead of "ESP-IDF as Component" is more correct way to name the link. 1. "ESP-IDF as Component" would imply that ESP-IDF is some sort of library for Arduino, which is (IMO) misleading, because it's true the other way around. 2. It's written as "Arduino as an ESP-IDF component" on the webpage it points to as well. - Also I removed the capitalization from "Component" as I have not found a reason why is it capitalized. * add new board Adafruit Feather ESP32-S3 Reverse TFT (#7811) * Multi threading examples (tasks, queues, semaphores, mutexes) (#7660) * Moved and renamed example ESP32/FreeRTOS to MultiThreading/BasicMultiThreading * Added dummy files * Modified original example * Fixed BasicMultiThreading.ino * Added Example demonstrating use of queues * Extended info in BasicMultiThreading * Renamed Queues to singular Queue * Added Mutex example * Added Semaphore example * Moved info from example to README * Moved doc from Mutex to README * Added Queue README * Removed unecesary text * Fixed grammar * Increased stack size for Sempahore example * Added headers into .ino files * Added word Example at the end of title in README * removed unused line * Added forgotten README * Modified BasicMultiThreading example * Added missing S3 entry in README * moved location * Update ESP-IDF libs * Update CMakeLists.txt * Update esptool to v4.4 * Add function timerAttachInterruptFlag (#7809) * Update esptool to v4.5 * ADC refactoring (#7827) * Adc refactored + periman implementation Peripheral manager still needs to be checked if the implementation is right. * switched to working solution for milivolts read * Periman detachbus fix * coding style * fix CI warnings * fix FreeRTOS example * Update ETH.cpp * Update FunctionalInterruptStruct.ino * Update package_esp32_index.template.json * Update package_esp32_index.template.json * Fixes for the latest IDF v5.1 * update esp-idf libs and toolchain * Turn OFF auto crystal frequency for ESP32 (needed by TWAI) * Update examples * Switch build to mostly use flags from files Includes can not be done this way * Reorganize flag files * Optimize chip build flags further * Revert defines from file. MBEDTLS_CONFIG_FILE does not properly expand * Add support for includes and defines from file * Replace old sdk path references in platform.txt * use gcc-ar (#8013) * Makes F_CPU generic for all SoC (#8007) Based on CONFIG_ESP_DEFAULT_CPU_FREQ_MHZ that is correctly defined in the sdkconfig file for each SoC. * TIMER refactoring (#7904) * refactor using GPtimer * Updated timer HW test * fix examples * Add v2.0.7 in issue template (#7871) * refactor using GPtimer * Updated timer HW test * fix examples * Revert "Add v2.0.7 in issue template (#7871)" This reverts commit fcc3b17d62ff57861f8913ca1f142fd5163b7457. * Update upload-artifact to v3 in HW CI * Revert "Update upload-artifact to v3 in HW CI" This reverts commit 1ba228071718ba37c4e26d98db22f77b2a7364a6. * replace resolution with frequency * remove count_down option * countup removed from examples + header * Refactored timer object * code cleanup + examples and tests fixes * TimerAlarm fix --------- Co-authored-by: Vojtěch Bartoška <76958047+VojtechBartoska@users.noreply.github.com> * [Docs] ADC and Timer API Update (+some docs fixes) (#7906) * updated docs * remove hall sensor docs Removed Hall sensor documentation as its no longer supported in IDF-5 * Fixed ESPNow examples location in docs * Last timer refactored API + gpio small fix * AlarmWrite fix * Fixes APLL/PLL with RTC Frequency (#8025) log_d() was displaying APLL for any SoC, but S3 and C3 has not such option, causing compilation errors. * Update IDF libs and fix OPI PSRAM on S3 * Add setMode function HardwareSerial.c to set the esp32 uart mode for use with RS485 auto RTS (#7935) * Added setMode function to set the esp32 uart mode Used to set the esp32 uart mode for use with RS485 Half Duplex and the auto RTS pin mode. This will set/clear the RTS pin output to control the RE/DE pin on most RS485 chips. * Add Success (bool) return in some functions * Add Success (bool) return code to some functions * Add Success (bool) return to some functions * Add Success (bool) return to some functions * Fix uartSetRxTimeout return type --------- Co-authored-by: Rodrigo Garcia <rodrigo.garcia@espressif.com> * Add support for esp-elf-gdb * WFG Crashfix (#8044) * Update component libs * IDF release/v5.1 (#8061) * IDF release/v5.1 bb9200acec * Update Esp.cpp * IDF release/v5.1 420ebd208a * Update esp32-hal-psram.c * Switch SDK to be an external package * fix path (#8096) * Makes UART work at any APB Frequency (#8097) Fixes HardwareSerial to work with IDF 5.1 on any CPU/APB Frequency (240MHz to 10MHZ), including user created low power modes. * Add required callbacks for TinyUSB DFU * Update version to 3.0.0 * Add ESP.getCoreVersion() and update ESP.getChipModel() * Update timer hal for the latest 5.1 * Use separate RX and TX buffer sizes in HTTP client optimizes download by allowing up to 4K packets to be received * Rename clock tree enum name in latest 5.1 * ESP32-H4 support was removed in ESP-IDF v5.1 * IDF release/v5.1 2004bf4e11 (#8165) * Deinit previous bus first (#8180) * TIMER - add timer_started flag, fix timerEnd() + timer HW test (#8135) * Add timer_started flag and stop before disable * Fix timer HW test * TOUCH - Peripheral manager implementation (#8129) * Touch periman implemented * Deinit previous bus first * LEDC Refactoring - Peripheral manager implemented (#8126) * LEDC periman implementation * Fix examples * Rework tone * Update ledc docs * fix missing bracket * Update analog funtions esp32-hal.h * Update CameraWebServer example * Fix HiFreq_ADC example * minor fixes - typos * Avoid calling tone/notone when tone already runs on dif. pin * Remove unused channels_resolution * GPIO - Peripheral manager implementation (#8179) * periman-implementation * fix RGB_BUILTIN and remove space * Enforces more consistency into Peripheral Manager (#8188) * Avoid log_i() message the first time a bus is assigned * Prevent operation with ESP32_BUS_TYPE_INIT * keeps coding style * do not print messages on INIT bus type * [Arduino Core 3.0.0] RMT IDF5.1 Refactoring (#7994) * RMT IDF5.1 refactoring * Fixes initial value setting * removed rmtRead() with user callback * simplify/remove Read data structure * Deep API simplification * fixes the examples * fix rmt.h * adds support to APB different frequencies * fixes CI and not defined RGB_BUILTIN * new RMT API and examples * fixing commentaties * Update esp32-hal-rgb-led.c * changes Filter API * Fixes example with Filter API * Update PlatformIO scripts for the upcoming 3.0 core (#8183) * Update PlatformIO scripts for the upcoming 3.0 core * Dynamically select proper framework-arduinoespressif32-libs package With this change the dev-platform will be dynamically configured to pull the latest .zip package with precompiled libraries from extracted from package_esp32_index.template.json * free memory on detach (#8264) * SPI - Peripheral manager implementation (#8255) * spi periman implementation * fix header file * remove unused struct * fix missing braces * Update esp32-hal-rmt.c (#8216) Optimizing Peripheral Manager Test * I2C - Peripheral manager implementation (#8220) * i2c-master periman initial commit * i2c-master make detachbus static + comment remove * i2c-slave periman implementation * SetPinBus to INIT on i2cDeinits * Fix slave pins deinit * remove dbg logs * set ret to ESP_FAIL instead of returning * Fix warnings in hal-spi caused by pariman transition * Update esptool.py to version 4.6 * Add platform support for ESP_SR * Add USB Type and valid pin check to periman * replace bus with spi->num+1 (#8279) * Remove default pins from SPI HAL * Add commented out handlers for esptool.js in TinyUSB CDC For future use * Add build defines for host os and fqbn (for debug purposes) * Provide proper memory caps total size * Update Esp.cpp * SDMMC - Peripheral manager implementation (#8289) * sdmmc periman implemented * save pins when SOC_SDMMC_USE_IOMUX * IDF release/v5.1 4bc762621d (#8292) * Adds missing pinMode (#8312) * Adds missing pinMode The example code lacks a pinMode() to initialize the GPIO 0 (button). In Arduino Core 3.0.0, it prints an error message when trying to read a not initialized GPIO. * Update KeyboardLogout.ino Adds <buttonPin> to keep code standard * Update KeyboardReprogram.ino Adds <buttonPin> to keep code standard * LEDC Fade implementation (#8338) * fade API + pointer fixes * Add fade api * Add fade example * update ledc docs * remove unused variables * fix path to example * Adds USB to Peripheral Manager - Arduino Core 3.0.0 (#8335) * ETHERNET - Peripheral manager implementation (#8297) * Peripheral manager implemented * remove unused variable * Add all RMII pins * fix typo * Adds HardwareSerial to Peripheral Manager Arduino 3.0.0 (#8328) * Do not limit ETHERNET in periman to only ESP32. SPI is also an option * Initial support for ESP32-C6 (#8337) * Add checks for SOC defines (#8351) * Add checks for SOC defines * Add SoC checks to BLE library * fix i2c compilation error * fix wrong placement of include * add check to SPI library * add check to USB library * add checks to Wire library * Feature/esp32h2 support (#8373) * Initial support for ESP32H2 * Additional changes for ESP32H2 * Update libs for ESP32H2 * Fix flashing on ESP32-H2 * Fix GPIO Configs for ESP32-C6 and ESP32-H2 * Update Timer test sketch * Fix upload flash parameters * Use ets_write_char_uart instead of ets_printf in log_printfv * Print full chip report when log level is sufficient (#8282) * ESP32-C3 does not have ets_write_char_uart * Fix BLE gap event name * HW Testing - Pytest update (#8389) * update tests requirements * remove already handled components * Update version of pytest * Add missing ESP32-H2 to hil.yml * Updated FreeRTOS names (#8418) * HW Testing - ESP32-C6 + ESP32-H2 fixes (#8404) * add C6/H2 to tests cfg.json * remove , * workflow runs-on runner by matrix * Add need for arduino tag to select runner * Add cryptography to requirements.txt * Removed duplicate TX1 define for H2 (#8402) * Fix broken examples * Fixes RMT filter & idle timing and setup (#8359) * Fixes Filter and Idle parameter to uint32 * Fixes Filter and Idle setup * Fixes it to 5.1Libs branch * fix RMT CLK source and Filter API * fixes missing ; * fixes missing ; * fixes RMT example * IDF release/v5.1 a7b62bbcaf (#8438) * Add workflow to build executables from python scripts (#8290) * Add workflow to build executables from python scripts * Push binary to tools * Enable executable signing on Windows * Update get.py * Push binary to tools * Try with multiple files * Try more actions * Try powershell * Restore tools so they do not get rebuilt * Finalize scripts * Push binary to tools * App rollback should be after PSRAM is initialized * Correcting RX1 to GPIO4 and TX1 to GPIO5 to be consistent with documentation. Previous pin use works but is inconsistent with C6 docs. * Fixes Memory Leak (#8486) * fixes preprocessor test (#8485) * fixes preprocessor test When using `#define USE_SOFT_AP` Change `&& not USE_SOFT_AP` ==> `&& !defined(USE_SOFT_AP)` * Adds any BLE capable device in WiFiProv.ino Removing ESP32 restriction for BLE Provisioning. * fix flash mode read out for C6 * Add option for custom partitions without restrictions * SD_MMC update (#8298) * Updated SD_MMC lib and examples * Removed getter implementation and commented usage in examples * squashed updates * IDF release/v5.1 f0437b945f (#8599) * Update package_esp32_index.template.json * Fix printf format build error in BTAdvertisedDeviceSet.cpp --------- Co-authored-by: Pedro Minatel <pedro.minatel@espressif.com> Co-authored-by: Rodrigo Garcia <rodrigo.garcia@espressif.com> Co-authored-by: Ha Thach <thach@tinyusb.org> Co-authored-by: Martin Turski <quiret@vfemail.net> Co-authored-by: raviypujar <raviypujar@gmail.com> Co-authored-by: Jason2866 <24528715+Jason2866@users.noreply.github.com> Co-authored-by: Tomáš Pilný <34927466+PilnyTomas@users.noreply.github.com> Co-authored-by: Jan Procházka <90197375+P-R-O-C-H-Y@users.noreply.github.com> Co-authored-by: Daniel Berlin <dberlin@dberlin.org> Co-authored-by: Nima Askari (نیما عسکری) <nimaltd@yahoo.com> Co-authored-by: rtpmsys <106180646+rtpmsys@users.noreply.github.com> Co-authored-by: bytiful <55647551+bytiful@users.noreply.github.com> Co-authored-by: tmfarrington <tmfarrington@users.noreply.github.com> Co-authored-by: Krzysiek S <chris.streh@gmail.com> Co-authored-by: surt <carl.olsson@gmail.com> Co-authored-by: Max Scheffler <max.scheffler@pm.me> Co-authored-by: Clemens Kirchgatterer <clemens@1541.org> Co-authored-by: Peter Pan's Techland <twinkle-pirate@hotmail.com> Co-authored-by: Roman <programmeofficemilkyway@gmail.com> Co-authored-by: Eistee <Eistee82@users.noreply.github.com> Co-authored-by: David McCurley <44048235+mrengineer7777@users.noreply.github.com> Co-authored-by: Gaya3N25 <30388176+Gaya3N25@users.noreply.github.com> Co-authored-by: renebohne <rene.bohne@gmail.com> Co-authored-by: Olivér Remény <25034625+remenyo@users.noreply.github.com> Co-authored-by: davidk88 <david.kotar@gmail.com> Co-authored-by: Vojtěch Bartoška <76958047+VojtechBartoska@users.noreply.github.com> Co-authored-by: James Armstrong <jamesarmstrong3@me.com> Co-authored-by: Valerii Koval <valeros@users.noreply.github.com> Co-authored-by: Peter G. Jensen <root@petergjoel.dk>
2023-10-05 11:54:25 +00:00
__version__ = "1.2"
Update IDF to aaf1239 (#1539) * fix sdmmc config * Fix warnings in EEPROM from @Curclamas * remove leftover TAG in EEPROM * Initial add of @stickbreaker i2c * Add log_n * fix warnings when log is off * i2c code clean up and reorganization * add flags to interrupt allocator * fix sdmmc config * Fix warnings in EEPROM from @Curclamas * remove leftover TAG in EEPROM * fix errors with latest IDF * fix debug optimization (#1365) incorrect optimization for debugging tick markers. * Fix some missing BT header * Change BTSerial log calls * Update BLE lib * Arduino-ESP32 release management scripted (#1515) * Calculate an absolute path for a custom partitions table (#1452) * * Arduino-ESP32 release management scripted (ready-to-merge) * * secure env for espressif/arduino-esp32 * * build tests enabled * gitter webhook enabled * * gitter room link fixed * better comment * * filepaths fixed * BT Serial adjustments * * don't run sketch builds & tests for tagged builds * Return false from WiFi.hostByName() if hostname is not resolved * Free BT Memory when BT is not used * WIFI_MODE_NULL is not supported anymore * Select some key examples to build with PlatformIO to save some time * Update BLE lib * Fixed BLE lib * Major WiFi overhaul - auto reconnect on connection loss now works - moved to event groups - some code clean up and procedure optimizations - new methods to get a more elaborate system ststus * Add cmake tests to travis * Add initial AsyncUDP * Add NetBIOS lib and fix CMake includes * Add Initial WebServer * Fix WebServer and examples * travis not quiting on build fail * Try different travis build * Update IDF to aaf1239 * Fix WPS Example * fix script permission and add some fail tests to sketch builder * Add missing space in WiFiClient::write(Stream &stream)
2018-06-27 07:01:06 +00:00
APP_TYPE = 0x00
DATA_TYPE = 0x01
TYPES = {
"app": APP_TYPE,
"data": DATA_TYPE,
Update IDF to aaf1239 (#1539) * fix sdmmc config * Fix warnings in EEPROM from @Curclamas * remove leftover TAG in EEPROM * Initial add of @stickbreaker i2c * Add log_n * fix warnings when log is off * i2c code clean up and reorganization * add flags to interrupt allocator * fix sdmmc config * Fix warnings in EEPROM from @Curclamas * remove leftover TAG in EEPROM * fix errors with latest IDF * fix debug optimization (#1365) incorrect optimization for debugging tick markers. * Fix some missing BT header * Change BTSerial log calls * Update BLE lib * Arduino-ESP32 release management scripted (#1515) * Calculate an absolute path for a custom partitions table (#1452) * * Arduino-ESP32 release management scripted (ready-to-merge) * * secure env for espressif/arduino-esp32 * * build tests enabled * gitter webhook enabled * * gitter room link fixed * better comment * * filepaths fixed * BT Serial adjustments * * don't run sketch builds & tests for tagged builds * Return false from WiFi.hostByName() if hostname is not resolved * Free BT Memory when BT is not used * WIFI_MODE_NULL is not supported anymore * Select some key examples to build with PlatformIO to save some time * Update BLE lib * Fixed BLE lib * Major WiFi overhaul - auto reconnect on connection loss now works - moved to event groups - some code clean up and procedure optimizations - new methods to get a more elaborate system ststus * Add cmake tests to travis * Add initial AsyncUDP * Add NetBIOS lib and fix CMake includes * Add Initial WebServer * Fix WebServer and examples * travis not quiting on build fail * Try different travis build * Update IDF to aaf1239 * Fix WPS Example * fix script permission and add some fail tests to sketch builder * Add missing space in WiFiClient::write(Stream &stream)
2018-06-27 07:01:06 +00:00
}
def get_ptype_as_int(ptype):
"""Convert a string which might be numeric or the name of a partition type to an integer"""
try:
return TYPES[ptype]
except KeyError:
try:
return int(ptype, 0)
except TypeError:
return ptype
Update IDF to aaf1239 (#1539) * fix sdmmc config * Fix warnings in EEPROM from @Curclamas * remove leftover TAG in EEPROM * Initial add of @stickbreaker i2c * Add log_n * fix warnings when log is off * i2c code clean up and reorganization * add flags to interrupt allocator * fix sdmmc config * Fix warnings in EEPROM from @Curclamas * remove leftover TAG in EEPROM * fix errors with latest IDF * fix debug optimization (#1365) incorrect optimization for debugging tick markers. * Fix some missing BT header * Change BTSerial log calls * Update BLE lib * Arduino-ESP32 release management scripted (#1515) * Calculate an absolute path for a custom partitions table (#1452) * * Arduino-ESP32 release management scripted (ready-to-merge) * * secure env for espressif/arduino-esp32 * * build tests enabled * gitter webhook enabled * * gitter room link fixed * better comment * * filepaths fixed * BT Serial adjustments * * don't run sketch builds & tests for tagged builds * Return false from WiFi.hostByName() if hostname is not resolved * Free BT Memory when BT is not used * WIFI_MODE_NULL is not supported anymore * Select some key examples to build with PlatformIO to save some time * Update BLE lib * Fixed BLE lib * Major WiFi overhaul - auto reconnect on connection loss now works - moved to event groups - some code clean up and procedure optimizations - new methods to get a more elaborate system ststus * Add cmake tests to travis * Add initial AsyncUDP * Add NetBIOS lib and fix CMake includes * Add Initial WebServer * Fix WebServer and examples * travis not quiting on build fail * Try different travis build * Update IDF to aaf1239 * Fix WPS Example * fix script permission and add some fail tests to sketch builder * Add missing space in WiFiClient::write(Stream &stream)
2018-06-27 07:01:06 +00:00
# Keep this map in sync with esp_partition_subtype_t enum in esp_partition.h
SUBTYPES = {
APP_TYPE: {
"factory": 0x00,
"test": 0x20,
Update IDF to aaf1239 (#1539) * fix sdmmc config * Fix warnings in EEPROM from @Curclamas * remove leftover TAG in EEPROM * Initial add of @stickbreaker i2c * Add log_n * fix warnings when log is off * i2c code clean up and reorganization * add flags to interrupt allocator * fix sdmmc config * Fix warnings in EEPROM from @Curclamas * remove leftover TAG in EEPROM * fix errors with latest IDF * fix debug optimization (#1365) incorrect optimization for debugging tick markers. * Fix some missing BT header * Change BTSerial log calls * Update BLE lib * Arduino-ESP32 release management scripted (#1515) * Calculate an absolute path for a custom partitions table (#1452) * * Arduino-ESP32 release management scripted (ready-to-merge) * * secure env for espressif/arduino-esp32 * * build tests enabled * gitter webhook enabled * * gitter room link fixed * better comment * * filepaths fixed * BT Serial adjustments * * don't run sketch builds & tests for tagged builds * Return false from WiFi.hostByName() if hostname is not resolved * Free BT Memory when BT is not used * WIFI_MODE_NULL is not supported anymore * Select some key examples to build with PlatformIO to save some time * Update BLE lib * Fixed BLE lib * Major WiFi overhaul - auto reconnect on connection loss now works - moved to event groups - some code clean up and procedure optimizations - new methods to get a more elaborate system ststus * Add cmake tests to travis * Add initial AsyncUDP * Add NetBIOS lib and fix CMake includes * Add Initial WebServer * Fix WebServer and examples * travis not quiting on build fail * Try different travis build * Update IDF to aaf1239 * Fix WPS Example * fix script permission and add some fail tests to sketch builder * Add missing space in WiFiClient::write(Stream &stream)
2018-06-27 07:01:06 +00:00
},
DATA_TYPE: {
"ota": 0x00,
"phy": 0x01,
"nvs": 0x02,
"coredump": 0x03,
"nvs_keys": 0x04,
"efuse": 0x05,
"undefined": 0x06,
"esphttpd": 0x80,
"fat": 0x81,
"spiffs": 0x82,
"littlefs": 0x83,
Update IDF to aaf1239 (#1539) * fix sdmmc config * Fix warnings in EEPROM from @Curclamas * remove leftover TAG in EEPROM * Initial add of @stickbreaker i2c * Add log_n * fix warnings when log is off * i2c code clean up and reorganization * add flags to interrupt allocator * fix sdmmc config * Fix warnings in EEPROM from @Curclamas * remove leftover TAG in EEPROM * fix errors with latest IDF * fix debug optimization (#1365) incorrect optimization for debugging tick markers. * Fix some missing BT header * Change BTSerial log calls * Update BLE lib * Arduino-ESP32 release management scripted (#1515) * Calculate an absolute path for a custom partitions table (#1452) * * Arduino-ESP32 release management scripted (ready-to-merge) * * secure env for espressif/arduino-esp32 * * build tests enabled * gitter webhook enabled * * gitter room link fixed * better comment * * filepaths fixed * BT Serial adjustments * * don't run sketch builds & tests for tagged builds * Return false from WiFi.hostByName() if hostname is not resolved * Free BT Memory when BT is not used * WIFI_MODE_NULL is not supported anymore * Select some key examples to build with PlatformIO to save some time * Update BLE lib * Fixed BLE lib * Major WiFi overhaul - auto reconnect on connection loss now works - moved to event groups - some code clean up and procedure optimizations - new methods to get a more elaborate system ststus * Add cmake tests to travis * Add initial AsyncUDP * Add NetBIOS lib and fix CMake includes * Add Initial WebServer * Fix WebServer and examples * travis not quiting on build fail * Try different travis build * Update IDF to aaf1239 * Fix WPS Example * fix script permission and add some fail tests to sketch builder * Add missing space in WiFiClient::write(Stream &stream)
2018-06-27 07:01:06 +00:00
},
}
def get_subtype_as_int(ptype, subtype):
"""Convert a string which might be numeric or the name of a partition subtype to an integer"""
try:
return SUBTYPES[get_ptype_as_int(ptype)][subtype]
except KeyError:
try:
return int(subtype, 0)
except TypeError:
return subtype
ALIGNMENT = {
APP_TYPE: 0x10000,
ESP-IDF v5.1 (#7733) * Initial changes to compile under ESP-IDF v5.1 * Initial import for ESP-IDF v5.1 libs * Update toolchain * Update esp32-hal-psram.c * Add missing LDs * Update platform.txt * Stop some CI jobs, because they will always fail * Fix examples * Update app_httpd.cpp * Update ResetReason.ino * Warnings fixes * Added the example guideline and template (#7665) * Added the example guideline and template * PR review changes with some typos and grammar fixes * Changes according to the PR review * Added ESP32-S3 link to the datasheet (#7738) * Update HiFreq_ADC.ino * Replace periph_ctrl.h use because of deprecation * Replace esp_spi_flash.h use because of deprecation * Add includes to male mDNS::enableWorkstation compile * Fix ssl_client mbedtls_pk_parse_key callback * Update temperature sensor driver * Allow sketch_utils to compile with arduino-cli * Run CI with arduino-cli * Fix arduino-cli CI build on Windows * Refactor platform.txt to not use components installed through the board manager when running from git * Initial Peripheral Manager Implementation * Update SigmaDelta driver to use the new ESP-IDF driver API * Small improvements to peripheral manager and SigmaDelta * Remove deleted function from SigmaDelta header * Update DAC driver to use the new ESP-IDF driver API * Adds softAp(String) to make it compatible with ESP8266 (#7801) * Fix commentary (#7800) Minor fix based on observation done in https://github.com/espressif/arduino-esp32/issues/7795#issuecomment-1416868611 * add adafruit new board feather esp32s2 reserve tft (#7794) * bugfix: add <stdint.h> for uint8_t to avoid compilation failure (GCC 11.2.0) (#7744) * Adding 3rd party boards for VALTRACK-V4-VTS-ESP32-C3 & VALTRACK-V4-MFW-ESP32-C3 (#7735) * Added VALTRACK-V4-VTS-ESP32-C3 board definition Created pins_arduino.h & made changes to boards.txt with necessary changes * Modified the URL * Renamed json * renamed all auRL * Adding VALTRACK-V4 series board definitions Added VALTRACK-V4-VTS-ESP32C3 & VALTRACK-V4-MFW-ESP32-C3 board variants * Adding VALTRACK-V4 series board definitions Added VALTRACK-V4-VTS-ESP32C3 & VALTRACK-V4-MFW-ESP32-C3 board variants * Reverted package_esp32_index.template.json restored package_esp32_index.template.json from edits * Reverted package_esp32_index.template.json Added new line to package_esp32_index.template.json * Update Platformio CI (#7725) * WiFiClient example fix (#7711) * Modified WiFiClient example to use thingspeak instead of non-functionig sparkfun * Moved instructions to README * Fixed spelling * Added link to S3 datasheet --------- Co-authored-by: Jan Procházka <90197375+P-R-O-C-H-Y@users.noreply.github.com> * Mirror update from Heltec repository (#7709) Heltec updated the I2C pins in https://github.com/Heltec-Aaron-Lee/WiFi_Kit_series/commit/b10f4bf85d13fd01be80dcdb0eb59e6a8c8ba19a * Fixes BLE data printing (#7699) * Fixes BLE data printing BLE data has no '\0' terminator, therefore it can't be printed as a regular C string. This fix just prints the BLE data based on its length. * Simplify printing to a single call * split menu options + lora_32_V3 fix (#7697) * Change header gaurd name (#7696) * Fix Name (#7691) Wrong name in definitions. * Fix error in WiFiClient.cpp where the connect function fails for timeouts below 1 second (#7686) * Update WiFiClient.cpp This change will allow specifying connect timeouts below 1 second. Without this change, if connect timeouts under 1 second are given, the connect defaults to 0ms and fails. This will also allow timeouts in fractions of seconds, e.g. 1500ms. Without this change, connect timeouts are truncated to full second increments. * Make parameter timeout_ms clear * Change connection timeout_ms name for clarity --------- Co-authored-by: Rodrigo Garcia <rodrigo.garcia@espressif.com> * fixed the function header (#7674) * fixed the function header * fixed function name and paramaters --------- Co-authored-by: Jan Procházka <90197375+P-R-O-C-H-Y@users.noreply.github.com> * Ticker fix solving #6155 (#7664) * Wrapped Ticker functions with #pragma disabling -Wcast-function-type * Revert "Wrapped Ticker functions with #pragma disabling -Wcast-function-type" This reverts commit 160be7e67a10d01b6e44c4bf2521c0ccd6348976. * Fixed Ticker example * Modified Ticker example * Fixed LED_BUILTIN err for ESP32 --------- Co-authored-by: Jan Procházka <90197375+P-R-O-C-H-Y@users.noreply.github.com> * setPins fix ESP32 "specified pins are not supported by this chip." (#7646) [ESP32: SDMMCFS::begin hardcodes the usage of slot 1, only check if the pins match slot 1 pins.] setPins() was testing pins D1, D2 and D3 all against D1 ... fine in 1 pin mode when all are -1 not so much if you're trying to get 4 pin mode working. I now see this function doesn't really do anything on the ESP32...accept now correctly checks that you are trying to use the slot 1 pins. Co-authored-by: Jan Procházka <90197375+P-R-O-C-H-Y@users.noreply.github.com> * Allow passing IP as connect method parameter in WiFiClientSecure and skip unnecessary host-ip conversions (#7643) * Add LED_BUILTIN* definitions and initialization for LEDs to stop them floating. (#7636) Co-authored-by: Rodrigo Garcia <rodrigo.garcia@espressif.com> * Expand path to tinuf2 image when checking existence in platformio-build.py (#7631) * Expand path to tinuf2 image when checking existence * More isFiles fixed * Remove (useless) trailing semicolon from Print.cpp (#7622) * ADD: New variant Edgebox-ESP-100 (#7771) * ADD: New variant Edgebox-ESP-100 * FIX: Edgebox-ESP-100 Board.txt usb mode option change back to default value as ESP32S3 * Add Crabik Slot ESP32-S3 board (#7790) * Added Crabik Slot ESP32-S3 * Adding CPU frequency settings and removing excess from partition scheme settings * new variant LilyGO T-Display-S3 (#7763) * new variant LilyGO T-Display-S3 https://github.com/Xinyuan-LilyGO/T-Display-S3 * Add boards.txt definition --------- Co-authored-by: Me No Dev <me-no-dev@users.noreply.github.com> * Update get.py to support Apple ARM64 * Update package_esp32_index.template.json * WString Return bool (#7774) * Add Roboheart Hercules development board to the esp32-core (#7672) * added Roboheart Hercules pin definitions and board.txt entries * added package_roboheat.json for prototyping * Roboheart Hercules pins * Updated the pins * Delete package_roboheart.json * Requested changes --------- Co-authored-by: renebohne <rene.bohne@gmail.com> * Reword "ESP-IDF as Component" (#7812) I think "Arduino as an ESP-IDF component" or just "As ESP-IDF component" instead of "ESP-IDF as Component" is more correct way to name the link. 1. "ESP-IDF as Component" would imply that ESP-IDF is some sort of library for Arduino, which is (IMO) misleading, because it's true the other way around. 2. It's written as "Arduino as an ESP-IDF component" on the webpage it points to as well. - Also I removed the capitalization from "Component" as I have not found a reason why is it capitalized. * add new board Adafruit Feather ESP32-S3 Reverse TFT (#7811) * Multi threading examples (tasks, queues, semaphores, mutexes) (#7660) * Moved and renamed example ESP32/FreeRTOS to MultiThreading/BasicMultiThreading * Added dummy files * Modified original example * Fixed BasicMultiThreading.ino * Added Example demonstrating use of queues * Extended info in BasicMultiThreading * Renamed Queues to singular Queue * Added Mutex example * Added Semaphore example * Moved info from example to README * Moved doc from Mutex to README * Added Queue README * Removed unecesary text * Fixed grammar * Increased stack size for Sempahore example * Added headers into .ino files * Added word Example at the end of title in README * removed unused line * Added forgotten README * Modified BasicMultiThreading example * Added missing S3 entry in README * moved location * Update ESP-IDF libs * Update CMakeLists.txt * Update esptool to v4.4 * Add function timerAttachInterruptFlag (#7809) * Update esptool to v4.5 * ADC refactoring (#7827) * Adc refactored + periman implementation Peripheral manager still needs to be checked if the implementation is right. * switched to working solution for milivolts read * Periman detachbus fix * coding style * fix CI warnings * fix FreeRTOS example * Update ETH.cpp * Update FunctionalInterruptStruct.ino * Update package_esp32_index.template.json * Update package_esp32_index.template.json * Fixes for the latest IDF v5.1 * update esp-idf libs and toolchain * Turn OFF auto crystal frequency for ESP32 (needed by TWAI) * Update examples * Switch build to mostly use flags from files Includes can not be done this way * Reorganize flag files * Optimize chip build flags further * Revert defines from file. MBEDTLS_CONFIG_FILE does not properly expand * Add support for includes and defines from file * Replace old sdk path references in platform.txt * use gcc-ar (#8013) * Makes F_CPU generic for all SoC (#8007) Based on CONFIG_ESP_DEFAULT_CPU_FREQ_MHZ that is correctly defined in the sdkconfig file for each SoC. * TIMER refactoring (#7904) * refactor using GPtimer * Updated timer HW test * fix examples * Add v2.0.7 in issue template (#7871) * refactor using GPtimer * Updated timer HW test * fix examples * Revert "Add v2.0.7 in issue template (#7871)" This reverts commit fcc3b17d62ff57861f8913ca1f142fd5163b7457. * Update upload-artifact to v3 in HW CI * Revert "Update upload-artifact to v3 in HW CI" This reverts commit 1ba228071718ba37c4e26d98db22f77b2a7364a6. * replace resolution with frequency * remove count_down option * countup removed from examples + header * Refactored timer object * code cleanup + examples and tests fixes * TimerAlarm fix --------- Co-authored-by: Vojtěch Bartoška <76958047+VojtechBartoska@users.noreply.github.com> * [Docs] ADC and Timer API Update (+some docs fixes) (#7906) * updated docs * remove hall sensor docs Removed Hall sensor documentation as its no longer supported in IDF-5 * Fixed ESPNow examples location in docs * Last timer refactored API + gpio small fix * AlarmWrite fix * Fixes APLL/PLL with RTC Frequency (#8025) log_d() was displaying APLL for any SoC, but S3 and C3 has not such option, causing compilation errors. * Update IDF libs and fix OPI PSRAM on S3 * Add setMode function HardwareSerial.c to set the esp32 uart mode for use with RS485 auto RTS (#7935) * Added setMode function to set the esp32 uart mode Used to set the esp32 uart mode for use with RS485 Half Duplex and the auto RTS pin mode. This will set/clear the RTS pin output to control the RE/DE pin on most RS485 chips. * Add Success (bool) return in some functions * Add Success (bool) return code to some functions * Add Success (bool) return to some functions * Add Success (bool) return to some functions * Fix uartSetRxTimeout return type --------- Co-authored-by: Rodrigo Garcia <rodrigo.garcia@espressif.com> * Add support for esp-elf-gdb * WFG Crashfix (#8044) * Update component libs * IDF release/v5.1 (#8061) * IDF release/v5.1 bb9200acec * Update Esp.cpp * IDF release/v5.1 420ebd208a * Update esp32-hal-psram.c * Switch SDK to be an external package * fix path (#8096) * Makes UART work at any APB Frequency (#8097) Fixes HardwareSerial to work with IDF 5.1 on any CPU/APB Frequency (240MHz to 10MHZ), including user created low power modes. * Add required callbacks for TinyUSB DFU * Update version to 3.0.0 * Add ESP.getCoreVersion() and update ESP.getChipModel() * Update timer hal for the latest 5.1 * Use separate RX and TX buffer sizes in HTTP client optimizes download by allowing up to 4K packets to be received * Rename clock tree enum name in latest 5.1 * ESP32-H4 support was removed in ESP-IDF v5.1 * IDF release/v5.1 2004bf4e11 (#8165) * Deinit previous bus first (#8180) * TIMER - add timer_started flag, fix timerEnd() + timer HW test (#8135) * Add timer_started flag and stop before disable * Fix timer HW test * TOUCH - Peripheral manager implementation (#8129) * Touch periman implemented * Deinit previous bus first * LEDC Refactoring - Peripheral manager implemented (#8126) * LEDC periman implementation * Fix examples * Rework tone * Update ledc docs * fix missing bracket * Update analog funtions esp32-hal.h * Update CameraWebServer example * Fix HiFreq_ADC example * minor fixes - typos * Avoid calling tone/notone when tone already runs on dif. pin * Remove unused channels_resolution * GPIO - Peripheral manager implementation (#8179) * periman-implementation * fix RGB_BUILTIN and remove space * Enforces more consistency into Peripheral Manager (#8188) * Avoid log_i() message the first time a bus is assigned * Prevent operation with ESP32_BUS_TYPE_INIT * keeps coding style * do not print messages on INIT bus type * [Arduino Core 3.0.0] RMT IDF5.1 Refactoring (#7994) * RMT IDF5.1 refactoring * Fixes initial value setting * removed rmtRead() with user callback * simplify/remove Read data structure * Deep API simplification * fixes the examples * fix rmt.h * adds support to APB different frequencies * fixes CI and not defined RGB_BUILTIN * new RMT API and examples * fixing commentaties * Update esp32-hal-rgb-led.c * changes Filter API * Fixes example with Filter API * Update PlatformIO scripts for the upcoming 3.0 core (#8183) * Update PlatformIO scripts for the upcoming 3.0 core * Dynamically select proper framework-arduinoespressif32-libs package With this change the dev-platform will be dynamically configured to pull the latest .zip package with precompiled libraries from extracted from package_esp32_index.template.json * free memory on detach (#8264) * SPI - Peripheral manager implementation (#8255) * spi periman implementation * fix header file * remove unused struct * fix missing braces * Update esp32-hal-rmt.c (#8216) Optimizing Peripheral Manager Test * I2C - Peripheral manager implementation (#8220) * i2c-master periman initial commit * i2c-master make detachbus static + comment remove * i2c-slave periman implementation * SetPinBus to INIT on i2cDeinits * Fix slave pins deinit * remove dbg logs * set ret to ESP_FAIL instead of returning * Fix warnings in hal-spi caused by pariman transition * Update esptool.py to version 4.6 * Add platform support for ESP_SR * Add USB Type and valid pin check to periman * replace bus with spi->num+1 (#8279) * Remove default pins from SPI HAL * Add commented out handlers for esptool.js in TinyUSB CDC For future use * Add build defines for host os and fqbn (for debug purposes) * Provide proper memory caps total size * Update Esp.cpp * SDMMC - Peripheral manager implementation (#8289) * sdmmc periman implemented * save pins when SOC_SDMMC_USE_IOMUX * IDF release/v5.1 4bc762621d (#8292) * Adds missing pinMode (#8312) * Adds missing pinMode The example code lacks a pinMode() to initialize the GPIO 0 (button). In Arduino Core 3.0.0, it prints an error message when trying to read a not initialized GPIO. * Update KeyboardLogout.ino Adds <buttonPin> to keep code standard * Update KeyboardReprogram.ino Adds <buttonPin> to keep code standard * LEDC Fade implementation (#8338) * fade API + pointer fixes * Add fade api * Add fade example * update ledc docs * remove unused variables * fix path to example * Adds USB to Peripheral Manager - Arduino Core 3.0.0 (#8335) * ETHERNET - Peripheral manager implementation (#8297) * Peripheral manager implemented * remove unused variable * Add all RMII pins * fix typo * Adds HardwareSerial to Peripheral Manager Arduino 3.0.0 (#8328) * Do not limit ETHERNET in periman to only ESP32. SPI is also an option * Initial support for ESP32-C6 (#8337) * Add checks for SOC defines (#8351) * Add checks for SOC defines * Add SoC checks to BLE library * fix i2c compilation error * fix wrong placement of include * add check to SPI library * add check to USB library * add checks to Wire library * Feature/esp32h2 support (#8373) * Initial support for ESP32H2 * Additional changes for ESP32H2 * Update libs for ESP32H2 * Fix flashing on ESP32-H2 * Fix GPIO Configs for ESP32-C6 and ESP32-H2 * Update Timer test sketch * Fix upload flash parameters * Use ets_write_char_uart instead of ets_printf in log_printfv * Print full chip report when log level is sufficient (#8282) * ESP32-C3 does not have ets_write_char_uart * Fix BLE gap event name * HW Testing - Pytest update (#8389) * update tests requirements * remove already handled components * Update version of pytest * Add missing ESP32-H2 to hil.yml * Updated FreeRTOS names (#8418) * HW Testing - ESP32-C6 + ESP32-H2 fixes (#8404) * add C6/H2 to tests cfg.json * remove , * workflow runs-on runner by matrix * Add need for arduino tag to select runner * Add cryptography to requirements.txt * Removed duplicate TX1 define for H2 (#8402) * Fix broken examples * Fixes RMT filter & idle timing and setup (#8359) * Fixes Filter and Idle parameter to uint32 * Fixes Filter and Idle setup * Fixes it to 5.1Libs branch * fix RMT CLK source and Filter API * fixes missing ; * fixes missing ; * fixes RMT example * IDF release/v5.1 a7b62bbcaf (#8438) * Add workflow to build executables from python scripts (#8290) * Add workflow to build executables from python scripts * Push binary to tools * Enable executable signing on Windows * Update get.py * Push binary to tools * Try with multiple files * Try more actions * Try powershell * Restore tools so they do not get rebuilt * Finalize scripts * Push binary to tools * App rollback should be after PSRAM is initialized * Correcting RX1 to GPIO4 and TX1 to GPIO5 to be consistent with documentation. Previous pin use works but is inconsistent with C6 docs. * Fixes Memory Leak (#8486) * fixes preprocessor test (#8485) * fixes preprocessor test When using `#define USE_SOFT_AP` Change `&& not USE_SOFT_AP` ==> `&& !defined(USE_SOFT_AP)` * Adds any BLE capable device in WiFiProv.ino Removing ESP32 restriction for BLE Provisioning. * fix flash mode read out for C6 * Add option for custom partitions without restrictions * SD_MMC update (#8298) * Updated SD_MMC lib and examples * Removed getter implementation and commented usage in examples * squashed updates * IDF release/v5.1 f0437b945f (#8599) * Update package_esp32_index.template.json * Fix printf format build error in BTAdvertisedDeviceSet.cpp --------- Co-authored-by: Pedro Minatel <pedro.minatel@espressif.com> Co-authored-by: Rodrigo Garcia <rodrigo.garcia@espressif.com> Co-authored-by: Ha Thach <thach@tinyusb.org> Co-authored-by: Martin Turski <quiret@vfemail.net> Co-authored-by: raviypujar <raviypujar@gmail.com> Co-authored-by: Jason2866 <24528715+Jason2866@users.noreply.github.com> Co-authored-by: Tomáš Pilný <34927466+PilnyTomas@users.noreply.github.com> Co-authored-by: Jan Procházka <90197375+P-R-O-C-H-Y@users.noreply.github.com> Co-authored-by: Daniel Berlin <dberlin@dberlin.org> Co-authored-by: Nima Askari (نیما عسکری) <nimaltd@yahoo.com> Co-authored-by: rtpmsys <106180646+rtpmsys@users.noreply.github.com> Co-authored-by: bytiful <55647551+bytiful@users.noreply.github.com> Co-authored-by: tmfarrington <tmfarrington@users.noreply.github.com> Co-authored-by: Krzysiek S <chris.streh@gmail.com> Co-authored-by: surt <carl.olsson@gmail.com> Co-authored-by: Max Scheffler <max.scheffler@pm.me> Co-authored-by: Clemens Kirchgatterer <clemens@1541.org> Co-authored-by: Peter Pan's Techland <twinkle-pirate@hotmail.com> Co-authored-by: Roman <programmeofficemilkyway@gmail.com> Co-authored-by: Eistee <Eistee82@users.noreply.github.com> Co-authored-by: David McCurley <44048235+mrengineer7777@users.noreply.github.com> Co-authored-by: Gaya3N25 <30388176+Gaya3N25@users.noreply.github.com> Co-authored-by: renebohne <rene.bohne@gmail.com> Co-authored-by: Olivér Remény <25034625+remenyo@users.noreply.github.com> Co-authored-by: davidk88 <david.kotar@gmail.com> Co-authored-by: Vojtěch Bartoška <76958047+VojtechBartoska@users.noreply.github.com> Co-authored-by: James Armstrong <jamesarmstrong3@me.com> Co-authored-by: Valerii Koval <valeros@users.noreply.github.com> Co-authored-by: Peter G. Jensen <root@petergjoel.dk>
2023-10-05 11:54:25 +00:00
DATA_TYPE: 0x1000,
}
ESP-IDF v5.1 (#7733) * Initial changes to compile under ESP-IDF v5.1 * Initial import for ESP-IDF v5.1 libs * Update toolchain * Update esp32-hal-psram.c * Add missing LDs * Update platform.txt * Stop some CI jobs, because they will always fail * Fix examples * Update app_httpd.cpp * Update ResetReason.ino * Warnings fixes * Added the example guideline and template (#7665) * Added the example guideline and template * PR review changes with some typos and grammar fixes * Changes according to the PR review * Added ESP32-S3 link to the datasheet (#7738) * Update HiFreq_ADC.ino * Replace periph_ctrl.h use because of deprecation * Replace esp_spi_flash.h use because of deprecation * Add includes to male mDNS::enableWorkstation compile * Fix ssl_client mbedtls_pk_parse_key callback * Update temperature sensor driver * Allow sketch_utils to compile with arduino-cli * Run CI with arduino-cli * Fix arduino-cli CI build on Windows * Refactor platform.txt to not use components installed through the board manager when running from git * Initial Peripheral Manager Implementation * Update SigmaDelta driver to use the new ESP-IDF driver API * Small improvements to peripheral manager and SigmaDelta * Remove deleted function from SigmaDelta header * Update DAC driver to use the new ESP-IDF driver API * Adds softAp(String) to make it compatible with ESP8266 (#7801) * Fix commentary (#7800) Minor fix based on observation done in https://github.com/espressif/arduino-esp32/issues/7795#issuecomment-1416868611 * add adafruit new board feather esp32s2 reserve tft (#7794) * bugfix: add <stdint.h> for uint8_t to avoid compilation failure (GCC 11.2.0) (#7744) * Adding 3rd party boards for VALTRACK-V4-VTS-ESP32-C3 & VALTRACK-V4-MFW-ESP32-C3 (#7735) * Added VALTRACK-V4-VTS-ESP32-C3 board definition Created pins_arduino.h & made changes to boards.txt with necessary changes * Modified the URL * Renamed json * renamed all auRL * Adding VALTRACK-V4 series board definitions Added VALTRACK-V4-VTS-ESP32C3 & VALTRACK-V4-MFW-ESP32-C3 board variants * Adding VALTRACK-V4 series board definitions Added VALTRACK-V4-VTS-ESP32C3 & VALTRACK-V4-MFW-ESP32-C3 board variants * Reverted package_esp32_index.template.json restored package_esp32_index.template.json from edits * Reverted package_esp32_index.template.json Added new line to package_esp32_index.template.json * Update Platformio CI (#7725) * WiFiClient example fix (#7711) * Modified WiFiClient example to use thingspeak instead of non-functionig sparkfun * Moved instructions to README * Fixed spelling * Added link to S3 datasheet --------- Co-authored-by: Jan Procházka <90197375+P-R-O-C-H-Y@users.noreply.github.com> * Mirror update from Heltec repository (#7709) Heltec updated the I2C pins in https://github.com/Heltec-Aaron-Lee/WiFi_Kit_series/commit/b10f4bf85d13fd01be80dcdb0eb59e6a8c8ba19a * Fixes BLE data printing (#7699) * Fixes BLE data printing BLE data has no '\0' terminator, therefore it can't be printed as a regular C string. This fix just prints the BLE data based on its length. * Simplify printing to a single call * split menu options + lora_32_V3 fix (#7697) * Change header gaurd name (#7696) * Fix Name (#7691) Wrong name in definitions. * Fix error in WiFiClient.cpp where the connect function fails for timeouts below 1 second (#7686) * Update WiFiClient.cpp This change will allow specifying connect timeouts below 1 second. Without this change, if connect timeouts under 1 second are given, the connect defaults to 0ms and fails. This will also allow timeouts in fractions of seconds, e.g. 1500ms. Without this change, connect timeouts are truncated to full second increments. * Make parameter timeout_ms clear * Change connection timeout_ms name for clarity --------- Co-authored-by: Rodrigo Garcia <rodrigo.garcia@espressif.com> * fixed the function header (#7674) * fixed the function header * fixed function name and paramaters --------- Co-authored-by: Jan Procházka <90197375+P-R-O-C-H-Y@users.noreply.github.com> * Ticker fix solving #6155 (#7664) * Wrapped Ticker functions with #pragma disabling -Wcast-function-type * Revert "Wrapped Ticker functions with #pragma disabling -Wcast-function-type" This reverts commit 160be7e67a10d01b6e44c4bf2521c0ccd6348976. * Fixed Ticker example * Modified Ticker example * Fixed LED_BUILTIN err for ESP32 --------- Co-authored-by: Jan Procházka <90197375+P-R-O-C-H-Y@users.noreply.github.com> * setPins fix ESP32 "specified pins are not supported by this chip." (#7646) [ESP32: SDMMCFS::begin hardcodes the usage of slot 1, only check if the pins match slot 1 pins.] setPins() was testing pins D1, D2 and D3 all against D1 ... fine in 1 pin mode when all are -1 not so much if you're trying to get 4 pin mode working. I now see this function doesn't really do anything on the ESP32...accept now correctly checks that you are trying to use the slot 1 pins. Co-authored-by: Jan Procházka <90197375+P-R-O-C-H-Y@users.noreply.github.com> * Allow passing IP as connect method parameter in WiFiClientSecure and skip unnecessary host-ip conversions (#7643) * Add LED_BUILTIN* definitions and initialization for LEDs to stop them floating. (#7636) Co-authored-by: Rodrigo Garcia <rodrigo.garcia@espressif.com> * Expand path to tinuf2 image when checking existence in platformio-build.py (#7631) * Expand path to tinuf2 image when checking existence * More isFiles fixed * Remove (useless) trailing semicolon from Print.cpp (#7622) * ADD: New variant Edgebox-ESP-100 (#7771) * ADD: New variant Edgebox-ESP-100 * FIX: Edgebox-ESP-100 Board.txt usb mode option change back to default value as ESP32S3 * Add Crabik Slot ESP32-S3 board (#7790) * Added Crabik Slot ESP32-S3 * Adding CPU frequency settings and removing excess from partition scheme settings * new variant LilyGO T-Display-S3 (#7763) * new variant LilyGO T-Display-S3 https://github.com/Xinyuan-LilyGO/T-Display-S3 * Add boards.txt definition --------- Co-authored-by: Me No Dev <me-no-dev@users.noreply.github.com> * Update get.py to support Apple ARM64 * Update package_esp32_index.template.json * WString Return bool (#7774) * Add Roboheart Hercules development board to the esp32-core (#7672) * added Roboheart Hercules pin definitions and board.txt entries * added package_roboheat.json for prototyping * Roboheart Hercules pins * Updated the pins * Delete package_roboheart.json * Requested changes --------- Co-authored-by: renebohne <rene.bohne@gmail.com> * Reword "ESP-IDF as Component" (#7812) I think "Arduino as an ESP-IDF component" or just "As ESP-IDF component" instead of "ESP-IDF as Component" is more correct way to name the link. 1. "ESP-IDF as Component" would imply that ESP-IDF is some sort of library for Arduino, which is (IMO) misleading, because it's true the other way around. 2. It's written as "Arduino as an ESP-IDF component" on the webpage it points to as well. - Also I removed the capitalization from "Component" as I have not found a reason why is it capitalized. * add new board Adafruit Feather ESP32-S3 Reverse TFT (#7811) * Multi threading examples (tasks, queues, semaphores, mutexes) (#7660) * Moved and renamed example ESP32/FreeRTOS to MultiThreading/BasicMultiThreading * Added dummy files * Modified original example * Fixed BasicMultiThreading.ino * Added Example demonstrating use of queues * Extended info in BasicMultiThreading * Renamed Queues to singular Queue * Added Mutex example * Added Semaphore example * Moved info from example to README * Moved doc from Mutex to README * Added Queue README * Removed unecesary text * Fixed grammar * Increased stack size for Sempahore example * Added headers into .ino files * Added word Example at the end of title in README * removed unused line * Added forgotten README * Modified BasicMultiThreading example * Added missing S3 entry in README * moved location * Update ESP-IDF libs * Update CMakeLists.txt * Update esptool to v4.4 * Add function timerAttachInterruptFlag (#7809) * Update esptool to v4.5 * ADC refactoring (#7827) * Adc refactored + periman implementation Peripheral manager still needs to be checked if the implementation is right. * switched to working solution for milivolts read * Periman detachbus fix * coding style * fix CI warnings * fix FreeRTOS example * Update ETH.cpp * Update FunctionalInterruptStruct.ino * Update package_esp32_index.template.json * Update package_esp32_index.template.json * Fixes for the latest IDF v5.1 * update esp-idf libs and toolchain * Turn OFF auto crystal frequency for ESP32 (needed by TWAI) * Update examples * Switch build to mostly use flags from files Includes can not be done this way * Reorganize flag files * Optimize chip build flags further * Revert defines from file. MBEDTLS_CONFIG_FILE does not properly expand * Add support for includes and defines from file * Replace old sdk path references in platform.txt * use gcc-ar (#8013) * Makes F_CPU generic for all SoC (#8007) Based on CONFIG_ESP_DEFAULT_CPU_FREQ_MHZ that is correctly defined in the sdkconfig file for each SoC. * TIMER refactoring (#7904) * refactor using GPtimer * Updated timer HW test * fix examples * Add v2.0.7 in issue template (#7871) * refactor using GPtimer * Updated timer HW test * fix examples * Revert "Add v2.0.7 in issue template (#7871)" This reverts commit fcc3b17d62ff57861f8913ca1f142fd5163b7457. * Update upload-artifact to v3 in HW CI * Revert "Update upload-artifact to v3 in HW CI" This reverts commit 1ba228071718ba37c4e26d98db22f77b2a7364a6. * replace resolution with frequency * remove count_down option * countup removed from examples + header * Refactored timer object * code cleanup + examples and tests fixes * TimerAlarm fix --------- Co-authored-by: Vojtěch Bartoška <76958047+VojtechBartoska@users.noreply.github.com> * [Docs] ADC and Timer API Update (+some docs fixes) (#7906) * updated docs * remove hall sensor docs Removed Hall sensor documentation as its no longer supported in IDF-5 * Fixed ESPNow examples location in docs * Last timer refactored API + gpio small fix * AlarmWrite fix * Fixes APLL/PLL with RTC Frequency (#8025) log_d() was displaying APLL for any SoC, but S3 and C3 has not such option, causing compilation errors. * Update IDF libs and fix OPI PSRAM on S3 * Add setMode function HardwareSerial.c to set the esp32 uart mode for use with RS485 auto RTS (#7935) * Added setMode function to set the esp32 uart mode Used to set the esp32 uart mode for use with RS485 Half Duplex and the auto RTS pin mode. This will set/clear the RTS pin output to control the RE/DE pin on most RS485 chips. * Add Success (bool) return in some functions * Add Success (bool) return code to some functions * Add Success (bool) return to some functions * Add Success (bool) return to some functions * Fix uartSetRxTimeout return type --------- Co-authored-by: Rodrigo Garcia <rodrigo.garcia@espressif.com> * Add support for esp-elf-gdb * WFG Crashfix (#8044) * Update component libs * IDF release/v5.1 (#8061) * IDF release/v5.1 bb9200acec * Update Esp.cpp * IDF release/v5.1 420ebd208a * Update esp32-hal-psram.c * Switch SDK to be an external package * fix path (#8096) * Makes UART work at any APB Frequency (#8097) Fixes HardwareSerial to work with IDF 5.1 on any CPU/APB Frequency (240MHz to 10MHZ), including user created low power modes. * Add required callbacks for TinyUSB DFU * Update version to 3.0.0 * Add ESP.getCoreVersion() and update ESP.getChipModel() * Update timer hal for the latest 5.1 * Use separate RX and TX buffer sizes in HTTP client optimizes download by allowing up to 4K packets to be received * Rename clock tree enum name in latest 5.1 * ESP32-H4 support was removed in ESP-IDF v5.1 * IDF release/v5.1 2004bf4e11 (#8165) * Deinit previous bus first (#8180) * TIMER - add timer_started flag, fix timerEnd() + timer HW test (#8135) * Add timer_started flag and stop before disable * Fix timer HW test * TOUCH - Peripheral manager implementation (#8129) * Touch periman implemented * Deinit previous bus first * LEDC Refactoring - Peripheral manager implemented (#8126) * LEDC periman implementation * Fix examples * Rework tone * Update ledc docs * fix missing bracket * Update analog funtions esp32-hal.h * Update CameraWebServer example * Fix HiFreq_ADC example * minor fixes - typos * Avoid calling tone/notone when tone already runs on dif. pin * Remove unused channels_resolution * GPIO - Peripheral manager implementation (#8179) * periman-implementation * fix RGB_BUILTIN and remove space * Enforces more consistency into Peripheral Manager (#8188) * Avoid log_i() message the first time a bus is assigned * Prevent operation with ESP32_BUS_TYPE_INIT * keeps coding style * do not print messages on INIT bus type * [Arduino Core 3.0.0] RMT IDF5.1 Refactoring (#7994) * RMT IDF5.1 refactoring * Fixes initial value setting * removed rmtRead() with user callback * simplify/remove Read data structure * Deep API simplification * fixes the examples * fix rmt.h * adds support to APB different frequencies * fixes CI and not defined RGB_BUILTIN * new RMT API and examples * fixing commentaties * Update esp32-hal-rgb-led.c * changes Filter API * Fixes example with Filter API * Update PlatformIO scripts for the upcoming 3.0 core (#8183) * Update PlatformIO scripts for the upcoming 3.0 core * Dynamically select proper framework-arduinoespressif32-libs package With this change the dev-platform will be dynamically configured to pull the latest .zip package with precompiled libraries from extracted from package_esp32_index.template.json * free memory on detach (#8264) * SPI - Peripheral manager implementation (#8255) * spi periman implementation * fix header file * remove unused struct * fix missing braces * Update esp32-hal-rmt.c (#8216) Optimizing Peripheral Manager Test * I2C - Peripheral manager implementation (#8220) * i2c-master periman initial commit * i2c-master make detachbus static + comment remove * i2c-slave periman implementation * SetPinBus to INIT on i2cDeinits * Fix slave pins deinit * remove dbg logs * set ret to ESP_FAIL instead of returning * Fix warnings in hal-spi caused by pariman transition * Update esptool.py to version 4.6 * Add platform support for ESP_SR * Add USB Type and valid pin check to periman * replace bus with spi->num+1 (#8279) * Remove default pins from SPI HAL * Add commented out handlers for esptool.js in TinyUSB CDC For future use * Add build defines for host os and fqbn (for debug purposes) * Provide proper memory caps total size * Update Esp.cpp * SDMMC - Peripheral manager implementation (#8289) * sdmmc periman implemented * save pins when SOC_SDMMC_USE_IOMUX * IDF release/v5.1 4bc762621d (#8292) * Adds missing pinMode (#8312) * Adds missing pinMode The example code lacks a pinMode() to initialize the GPIO 0 (button). In Arduino Core 3.0.0, it prints an error message when trying to read a not initialized GPIO. * Update KeyboardLogout.ino Adds <buttonPin> to keep code standard * Update KeyboardReprogram.ino Adds <buttonPin> to keep code standard * LEDC Fade implementation (#8338) * fade API + pointer fixes * Add fade api * Add fade example * update ledc docs * remove unused variables * fix path to example * Adds USB to Peripheral Manager - Arduino Core 3.0.0 (#8335) * ETHERNET - Peripheral manager implementation (#8297) * Peripheral manager implemented * remove unused variable * Add all RMII pins * fix typo * Adds HardwareSerial to Peripheral Manager Arduino 3.0.0 (#8328) * Do not limit ETHERNET in periman to only ESP32. SPI is also an option * Initial support for ESP32-C6 (#8337) * Add checks for SOC defines (#8351) * Add checks for SOC defines * Add SoC checks to BLE library * fix i2c compilation error * fix wrong placement of include * add check to SPI library * add check to USB library * add checks to Wire library * Feature/esp32h2 support (#8373) * Initial support for ESP32H2 * Additional changes for ESP32H2 * Update libs for ESP32H2 * Fix flashing on ESP32-H2 * Fix GPIO Configs for ESP32-C6 and ESP32-H2 * Update Timer test sketch * Fix upload flash parameters * Use ets_write_char_uart instead of ets_printf in log_printfv * Print full chip report when log level is sufficient (#8282) * ESP32-C3 does not have ets_write_char_uart * Fix BLE gap event name * HW Testing - Pytest update (#8389) * update tests requirements * remove already handled components * Update version of pytest * Add missing ESP32-H2 to hil.yml * Updated FreeRTOS names (#8418) * HW Testing - ESP32-C6 + ESP32-H2 fixes (#8404) * add C6/H2 to tests cfg.json * remove , * workflow runs-on runner by matrix * Add need for arduino tag to select runner * Add cryptography to requirements.txt * Removed duplicate TX1 define for H2 (#8402) * Fix broken examples * Fixes RMT filter & idle timing and setup (#8359) * Fixes Filter and Idle parameter to uint32 * Fixes Filter and Idle setup * Fixes it to 5.1Libs branch * fix RMT CLK source and Filter API * fixes missing ; * fixes missing ; * fixes RMT example * IDF release/v5.1 a7b62bbcaf (#8438) * Add workflow to build executables from python scripts (#8290) * Add workflow to build executables from python scripts * Push binary to tools * Enable executable signing on Windows * Update get.py * Push binary to tools * Try with multiple files * Try more actions * Try powershell * Restore tools so they do not get rebuilt * Finalize scripts * Push binary to tools * App rollback should be after PSRAM is initialized * Correcting RX1 to GPIO4 and TX1 to GPIO5 to be consistent with documentation. Previous pin use works but is inconsistent with C6 docs. * Fixes Memory Leak (#8486) * fixes preprocessor test (#8485) * fixes preprocessor test When using `#define USE_SOFT_AP` Change `&& not USE_SOFT_AP` ==> `&& !defined(USE_SOFT_AP)` * Adds any BLE capable device in WiFiProv.ino Removing ESP32 restriction for BLE Provisioning. * fix flash mode read out for C6 * Add option for custom partitions without restrictions * SD_MMC update (#8298) * Updated SD_MMC lib and examples * Removed getter implementation and commented usage in examples * squashed updates * IDF release/v5.1 f0437b945f (#8599) * Update package_esp32_index.template.json * Fix printf format build error in BTAdvertisedDeviceSet.cpp --------- Co-authored-by: Pedro Minatel <pedro.minatel@espressif.com> Co-authored-by: Rodrigo Garcia <rodrigo.garcia@espressif.com> Co-authored-by: Ha Thach <thach@tinyusb.org> Co-authored-by: Martin Turski <quiret@vfemail.net> Co-authored-by: raviypujar <raviypujar@gmail.com> Co-authored-by: Jason2866 <24528715+Jason2866@users.noreply.github.com> Co-authored-by: Tomáš Pilný <34927466+PilnyTomas@users.noreply.github.com> Co-authored-by: Jan Procházka <90197375+P-R-O-C-H-Y@users.noreply.github.com> Co-authored-by: Daniel Berlin <dberlin@dberlin.org> Co-authored-by: Nima Askari (نیما عسکری) <nimaltd@yahoo.com> Co-authored-by: rtpmsys <106180646+rtpmsys@users.noreply.github.com> Co-authored-by: bytiful <55647551+bytiful@users.noreply.github.com> Co-authored-by: tmfarrington <tmfarrington@users.noreply.github.com> Co-authored-by: Krzysiek S <chris.streh@gmail.com> Co-authored-by: surt <carl.olsson@gmail.com> Co-authored-by: Max Scheffler <max.scheffler@pm.me> Co-authored-by: Clemens Kirchgatterer <clemens@1541.org> Co-authored-by: Peter Pan's Techland <twinkle-pirate@hotmail.com> Co-authored-by: Roman <programmeofficemilkyway@gmail.com> Co-authored-by: Eistee <Eistee82@users.noreply.github.com> Co-authored-by: David McCurley <44048235+mrengineer7777@users.noreply.github.com> Co-authored-by: Gaya3N25 <30388176+Gaya3N25@users.noreply.github.com> Co-authored-by: renebohne <rene.bohne@gmail.com> Co-authored-by: Olivér Remény <25034625+remenyo@users.noreply.github.com> Co-authored-by: davidk88 <david.kotar@gmail.com> Co-authored-by: Vojtěch Bartoška <76958047+VojtechBartoska@users.noreply.github.com> Co-authored-by: James Armstrong <jamesarmstrong3@me.com> Co-authored-by: Valerii Koval <valeros@users.noreply.github.com> Co-authored-by: Peter G. Jensen <root@petergjoel.dk>
2023-10-05 11:54:25 +00:00
def get_alignment_offset_for_type(ptype):
return ALIGNMENT.get(ptype, ALIGNMENT[DATA_TYPE])
ESP-IDF v5.1 (#7733) * Initial changes to compile under ESP-IDF v5.1 * Initial import for ESP-IDF v5.1 libs * Update toolchain * Update esp32-hal-psram.c * Add missing LDs * Update platform.txt * Stop some CI jobs, because they will always fail * Fix examples * Update app_httpd.cpp * Update ResetReason.ino * Warnings fixes * Added the example guideline and template (#7665) * Added the example guideline and template * PR review changes with some typos and grammar fixes * Changes according to the PR review * Added ESP32-S3 link to the datasheet (#7738) * Update HiFreq_ADC.ino * Replace periph_ctrl.h use because of deprecation * Replace esp_spi_flash.h use because of deprecation * Add includes to male mDNS::enableWorkstation compile * Fix ssl_client mbedtls_pk_parse_key callback * Update temperature sensor driver * Allow sketch_utils to compile with arduino-cli * Run CI with arduino-cli * Fix arduino-cli CI build on Windows * Refactor platform.txt to not use components installed through the board manager when running from git * Initial Peripheral Manager Implementation * Update SigmaDelta driver to use the new ESP-IDF driver API * Small improvements to peripheral manager and SigmaDelta * Remove deleted function from SigmaDelta header * Update DAC driver to use the new ESP-IDF driver API * Adds softAp(String) to make it compatible with ESP8266 (#7801) * Fix commentary (#7800) Minor fix based on observation done in https://github.com/espressif/arduino-esp32/issues/7795#issuecomment-1416868611 * add adafruit new board feather esp32s2 reserve tft (#7794) * bugfix: add <stdint.h> for uint8_t to avoid compilation failure (GCC 11.2.0) (#7744) * Adding 3rd party boards for VALTRACK-V4-VTS-ESP32-C3 & VALTRACK-V4-MFW-ESP32-C3 (#7735) * Added VALTRACK-V4-VTS-ESP32-C3 board definition Created pins_arduino.h & made changes to boards.txt with necessary changes * Modified the URL * Renamed json * renamed all auRL * Adding VALTRACK-V4 series board definitions Added VALTRACK-V4-VTS-ESP32C3 & VALTRACK-V4-MFW-ESP32-C3 board variants * Adding VALTRACK-V4 series board definitions Added VALTRACK-V4-VTS-ESP32C3 & VALTRACK-V4-MFW-ESP32-C3 board variants * Reverted package_esp32_index.template.json restored package_esp32_index.template.json from edits * Reverted package_esp32_index.template.json Added new line to package_esp32_index.template.json * Update Platformio CI (#7725) * WiFiClient example fix (#7711) * Modified WiFiClient example to use thingspeak instead of non-functionig sparkfun * Moved instructions to README * Fixed spelling * Added link to S3 datasheet --------- Co-authored-by: Jan Procházka <90197375+P-R-O-C-H-Y@users.noreply.github.com> * Mirror update from Heltec repository (#7709) Heltec updated the I2C pins in https://github.com/Heltec-Aaron-Lee/WiFi_Kit_series/commit/b10f4bf85d13fd01be80dcdb0eb59e6a8c8ba19a * Fixes BLE data printing (#7699) * Fixes BLE data printing BLE data has no '\0' terminator, therefore it can't be printed as a regular C string. This fix just prints the BLE data based on its length. * Simplify printing to a single call * split menu options + lora_32_V3 fix (#7697) * Change header gaurd name (#7696) * Fix Name (#7691) Wrong name in definitions. * Fix error in WiFiClient.cpp where the connect function fails for timeouts below 1 second (#7686) * Update WiFiClient.cpp This change will allow specifying connect timeouts below 1 second. Without this change, if connect timeouts under 1 second are given, the connect defaults to 0ms and fails. This will also allow timeouts in fractions of seconds, e.g. 1500ms. Without this change, connect timeouts are truncated to full second increments. * Make parameter timeout_ms clear * Change connection timeout_ms name for clarity --------- Co-authored-by: Rodrigo Garcia <rodrigo.garcia@espressif.com> * fixed the function header (#7674) * fixed the function header * fixed function name and paramaters --------- Co-authored-by: Jan Procházka <90197375+P-R-O-C-H-Y@users.noreply.github.com> * Ticker fix solving #6155 (#7664) * Wrapped Ticker functions with #pragma disabling -Wcast-function-type * Revert "Wrapped Ticker functions with #pragma disabling -Wcast-function-type" This reverts commit 160be7e67a10d01b6e44c4bf2521c0ccd6348976. * Fixed Ticker example * Modified Ticker example * Fixed LED_BUILTIN err for ESP32 --------- Co-authored-by: Jan Procházka <90197375+P-R-O-C-H-Y@users.noreply.github.com> * setPins fix ESP32 "specified pins are not supported by this chip." (#7646) [ESP32: SDMMCFS::begin hardcodes the usage of slot 1, only check if the pins match slot 1 pins.] setPins() was testing pins D1, D2 and D3 all against D1 ... fine in 1 pin mode when all are -1 not so much if you're trying to get 4 pin mode working. I now see this function doesn't really do anything on the ESP32...accept now correctly checks that you are trying to use the slot 1 pins. Co-authored-by: Jan Procházka <90197375+P-R-O-C-H-Y@users.noreply.github.com> * Allow passing IP as connect method parameter in WiFiClientSecure and skip unnecessary host-ip conversions (#7643) * Add LED_BUILTIN* definitions and initialization for LEDs to stop them floating. (#7636) Co-authored-by: Rodrigo Garcia <rodrigo.garcia@espressif.com> * Expand path to tinuf2 image when checking existence in platformio-build.py (#7631) * Expand path to tinuf2 image when checking existence * More isFiles fixed * Remove (useless) trailing semicolon from Print.cpp (#7622) * ADD: New variant Edgebox-ESP-100 (#7771) * ADD: New variant Edgebox-ESP-100 * FIX: Edgebox-ESP-100 Board.txt usb mode option change back to default value as ESP32S3 * Add Crabik Slot ESP32-S3 board (#7790) * Added Crabik Slot ESP32-S3 * Adding CPU frequency settings and removing excess from partition scheme settings * new variant LilyGO T-Display-S3 (#7763) * new variant LilyGO T-Display-S3 https://github.com/Xinyuan-LilyGO/T-Display-S3 * Add boards.txt definition --------- Co-authored-by: Me No Dev <me-no-dev@users.noreply.github.com> * Update get.py to support Apple ARM64 * Update package_esp32_index.template.json * WString Return bool (#7774) * Add Roboheart Hercules development board to the esp32-core (#7672) * added Roboheart Hercules pin definitions and board.txt entries * added package_roboheat.json for prototyping * Roboheart Hercules pins * Updated the pins * Delete package_roboheart.json * Requested changes --------- Co-authored-by: renebohne <rene.bohne@gmail.com> * Reword "ESP-IDF as Component" (#7812) I think "Arduino as an ESP-IDF component" or just "As ESP-IDF component" instead of "ESP-IDF as Component" is more correct way to name the link. 1. "ESP-IDF as Component" would imply that ESP-IDF is some sort of library for Arduino, which is (IMO) misleading, because it's true the other way around. 2. It's written as "Arduino as an ESP-IDF component" on the webpage it points to as well. - Also I removed the capitalization from "Component" as I have not found a reason why is it capitalized. * add new board Adafruit Feather ESP32-S3 Reverse TFT (#7811) * Multi threading examples (tasks, queues, semaphores, mutexes) (#7660) * Moved and renamed example ESP32/FreeRTOS to MultiThreading/BasicMultiThreading * Added dummy files * Modified original example * Fixed BasicMultiThreading.ino * Added Example demonstrating use of queues * Extended info in BasicMultiThreading * Renamed Queues to singular Queue * Added Mutex example * Added Semaphore example * Moved info from example to README * Moved doc from Mutex to README * Added Queue README * Removed unecesary text * Fixed grammar * Increased stack size for Sempahore example * Added headers into .ino files * Added word Example at the end of title in README * removed unused line * Added forgotten README * Modified BasicMultiThreading example * Added missing S3 entry in README * moved location * Update ESP-IDF libs * Update CMakeLists.txt * Update esptool to v4.4 * Add function timerAttachInterruptFlag (#7809) * Update esptool to v4.5 * ADC refactoring (#7827) * Adc refactored + periman implementation Peripheral manager still needs to be checked if the implementation is right. * switched to working solution for milivolts read * Periman detachbus fix * coding style * fix CI warnings * fix FreeRTOS example * Update ETH.cpp * Update FunctionalInterruptStruct.ino * Update package_esp32_index.template.json * Update package_esp32_index.template.json * Fixes for the latest IDF v5.1 * update esp-idf libs and toolchain * Turn OFF auto crystal frequency for ESP32 (needed by TWAI) * Update examples * Switch build to mostly use flags from files Includes can not be done this way * Reorganize flag files * Optimize chip build flags further * Revert defines from file. MBEDTLS_CONFIG_FILE does not properly expand * Add support for includes and defines from file * Replace old sdk path references in platform.txt * use gcc-ar (#8013) * Makes F_CPU generic for all SoC (#8007) Based on CONFIG_ESP_DEFAULT_CPU_FREQ_MHZ that is correctly defined in the sdkconfig file for each SoC. * TIMER refactoring (#7904) * refactor using GPtimer * Updated timer HW test * fix examples * Add v2.0.7 in issue template (#7871) * refactor using GPtimer * Updated timer HW test * fix examples * Revert "Add v2.0.7 in issue template (#7871)" This reverts commit fcc3b17d62ff57861f8913ca1f142fd5163b7457. * Update upload-artifact to v3 in HW CI * Revert "Update upload-artifact to v3 in HW CI" This reverts commit 1ba228071718ba37c4e26d98db22f77b2a7364a6. * replace resolution with frequency * remove count_down option * countup removed from examples + header * Refactored timer object * code cleanup + examples and tests fixes * TimerAlarm fix --------- Co-authored-by: Vojtěch Bartoška <76958047+VojtechBartoska@users.noreply.github.com> * [Docs] ADC and Timer API Update (+some docs fixes) (#7906) * updated docs * remove hall sensor docs Removed Hall sensor documentation as its no longer supported in IDF-5 * Fixed ESPNow examples location in docs * Last timer refactored API + gpio small fix * AlarmWrite fix * Fixes APLL/PLL with RTC Frequency (#8025) log_d() was displaying APLL for any SoC, but S3 and C3 has not such option, causing compilation errors. * Update IDF libs and fix OPI PSRAM on S3 * Add setMode function HardwareSerial.c to set the esp32 uart mode for use with RS485 auto RTS (#7935) * Added setMode function to set the esp32 uart mode Used to set the esp32 uart mode for use with RS485 Half Duplex and the auto RTS pin mode. This will set/clear the RTS pin output to control the RE/DE pin on most RS485 chips. * Add Success (bool) return in some functions * Add Success (bool) return code to some functions * Add Success (bool) return to some functions * Add Success (bool) return to some functions * Fix uartSetRxTimeout return type --------- Co-authored-by: Rodrigo Garcia <rodrigo.garcia@espressif.com> * Add support for esp-elf-gdb * WFG Crashfix (#8044) * Update component libs * IDF release/v5.1 (#8061) * IDF release/v5.1 bb9200acec * Update Esp.cpp * IDF release/v5.1 420ebd208a * Update esp32-hal-psram.c * Switch SDK to be an external package * fix path (#8096) * Makes UART work at any APB Frequency (#8097) Fixes HardwareSerial to work with IDF 5.1 on any CPU/APB Frequency (240MHz to 10MHZ), including user created low power modes. * Add required callbacks for TinyUSB DFU * Update version to 3.0.0 * Add ESP.getCoreVersion() and update ESP.getChipModel() * Update timer hal for the latest 5.1 * Use separate RX and TX buffer sizes in HTTP client optimizes download by allowing up to 4K packets to be received * Rename clock tree enum name in latest 5.1 * ESP32-H4 support was removed in ESP-IDF v5.1 * IDF release/v5.1 2004bf4e11 (#8165) * Deinit previous bus first (#8180) * TIMER - add timer_started flag, fix timerEnd() + timer HW test (#8135) * Add timer_started flag and stop before disable * Fix timer HW test * TOUCH - Peripheral manager implementation (#8129) * Touch periman implemented * Deinit previous bus first * LEDC Refactoring - Peripheral manager implemented (#8126) * LEDC periman implementation * Fix examples * Rework tone * Update ledc docs * fix missing bracket * Update analog funtions esp32-hal.h * Update CameraWebServer example * Fix HiFreq_ADC example * minor fixes - typos * Avoid calling tone/notone when tone already runs on dif. pin * Remove unused channels_resolution * GPIO - Peripheral manager implementation (#8179) * periman-implementation * fix RGB_BUILTIN and remove space * Enforces more consistency into Peripheral Manager (#8188) * Avoid log_i() message the first time a bus is assigned * Prevent operation with ESP32_BUS_TYPE_INIT * keeps coding style * do not print messages on INIT bus type * [Arduino Core 3.0.0] RMT IDF5.1 Refactoring (#7994) * RMT IDF5.1 refactoring * Fixes initial value setting * removed rmtRead() with user callback * simplify/remove Read data structure * Deep API simplification * fixes the examples * fix rmt.h * adds support to APB different frequencies * fixes CI and not defined RGB_BUILTIN * new RMT API and examples * fixing commentaties * Update esp32-hal-rgb-led.c * changes Filter API * Fixes example with Filter API * Update PlatformIO scripts for the upcoming 3.0 core (#8183) * Update PlatformIO scripts for the upcoming 3.0 core * Dynamically select proper framework-arduinoespressif32-libs package With this change the dev-platform will be dynamically configured to pull the latest .zip package with precompiled libraries from extracted from package_esp32_index.template.json * free memory on detach (#8264) * SPI - Peripheral manager implementation (#8255) * spi periman implementation * fix header file * remove unused struct * fix missing braces * Update esp32-hal-rmt.c (#8216) Optimizing Peripheral Manager Test * I2C - Peripheral manager implementation (#8220) * i2c-master periman initial commit * i2c-master make detachbus static + comment remove * i2c-slave periman implementation * SetPinBus to INIT on i2cDeinits * Fix slave pins deinit * remove dbg logs * set ret to ESP_FAIL instead of returning * Fix warnings in hal-spi caused by pariman transition * Update esptool.py to version 4.6 * Add platform support for ESP_SR * Add USB Type and valid pin check to periman * replace bus with spi->num+1 (#8279) * Remove default pins from SPI HAL * Add commented out handlers for esptool.js in TinyUSB CDC For future use * Add build defines for host os and fqbn (for debug purposes) * Provide proper memory caps total size * Update Esp.cpp * SDMMC - Peripheral manager implementation (#8289) * sdmmc periman implemented * save pins when SOC_SDMMC_USE_IOMUX * IDF release/v5.1 4bc762621d (#8292) * Adds missing pinMode (#8312) * Adds missing pinMode The example code lacks a pinMode() to initialize the GPIO 0 (button). In Arduino Core 3.0.0, it prints an error message when trying to read a not initialized GPIO. * Update KeyboardLogout.ino Adds <buttonPin> to keep code standard * Update KeyboardReprogram.ino Adds <buttonPin> to keep code standard * LEDC Fade implementation (#8338) * fade API + pointer fixes * Add fade api * Add fade example * update ledc docs * remove unused variables * fix path to example * Adds USB to Peripheral Manager - Arduino Core 3.0.0 (#8335) * ETHERNET - Peripheral manager implementation (#8297) * Peripheral manager implemented * remove unused variable * Add all RMII pins * fix typo * Adds HardwareSerial to Peripheral Manager Arduino 3.0.0 (#8328) * Do not limit ETHERNET in periman to only ESP32. SPI is also an option * Initial support for ESP32-C6 (#8337) * Add checks for SOC defines (#8351) * Add checks for SOC defines * Add SoC checks to BLE library * fix i2c compilation error * fix wrong placement of include * add check to SPI library * add check to USB library * add checks to Wire library * Feature/esp32h2 support (#8373) * Initial support for ESP32H2 * Additional changes for ESP32H2 * Update libs for ESP32H2 * Fix flashing on ESP32-H2 * Fix GPIO Configs for ESP32-C6 and ESP32-H2 * Update Timer test sketch * Fix upload flash parameters * Use ets_write_char_uart instead of ets_printf in log_printfv * Print full chip report when log level is sufficient (#8282) * ESP32-C3 does not have ets_write_char_uart * Fix BLE gap event name * HW Testing - Pytest update (#8389) * update tests requirements * remove already handled components * Update version of pytest * Add missing ESP32-H2 to hil.yml * Updated FreeRTOS names (#8418) * HW Testing - ESP32-C6 + ESP32-H2 fixes (#8404) * add C6/H2 to tests cfg.json * remove , * workflow runs-on runner by matrix * Add need for arduino tag to select runner * Add cryptography to requirements.txt * Removed duplicate TX1 define for H2 (#8402) * Fix broken examples * Fixes RMT filter & idle timing and setup (#8359) * Fixes Filter and Idle parameter to uint32 * Fixes Filter and Idle setup * Fixes it to 5.1Libs branch * fix RMT CLK source and Filter API * fixes missing ; * fixes missing ; * fixes RMT example * IDF release/v5.1 a7b62bbcaf (#8438) * Add workflow to build executables from python scripts (#8290) * Add workflow to build executables from python scripts * Push binary to tools * Enable executable signing on Windows * Update get.py * Push binary to tools * Try with multiple files * Try more actions * Try powershell * Restore tools so they do not get rebuilt * Finalize scripts * Push binary to tools * App rollback should be after PSRAM is initialized * Correcting RX1 to GPIO4 and TX1 to GPIO5 to be consistent with documentation. Previous pin use works but is inconsistent with C6 docs. * Fixes Memory Leak (#8486) * fixes preprocessor test (#8485) * fixes preprocessor test When using `#define USE_SOFT_AP` Change `&& not USE_SOFT_AP` ==> `&& !defined(USE_SOFT_AP)` * Adds any BLE capable device in WiFiProv.ino Removing ESP32 restriction for BLE Provisioning. * fix flash mode read out for C6 * Add option for custom partitions without restrictions * SD_MMC update (#8298) * Updated SD_MMC lib and examples * Removed getter implementation and commented usage in examples * squashed updates * IDF release/v5.1 f0437b945f (#8599) * Update package_esp32_index.template.json * Fix printf format build error in BTAdvertisedDeviceSet.cpp --------- Co-authored-by: Pedro Minatel <pedro.minatel@espressif.com> Co-authored-by: Rodrigo Garcia <rodrigo.garcia@espressif.com> Co-authored-by: Ha Thach <thach@tinyusb.org> Co-authored-by: Martin Turski <quiret@vfemail.net> Co-authored-by: raviypujar <raviypujar@gmail.com> Co-authored-by: Jason2866 <24528715+Jason2866@users.noreply.github.com> Co-authored-by: Tomáš Pilný <34927466+PilnyTomas@users.noreply.github.com> Co-authored-by: Jan Procházka <90197375+P-R-O-C-H-Y@users.noreply.github.com> Co-authored-by: Daniel Berlin <dberlin@dberlin.org> Co-authored-by: Nima Askari (نیما عسکری) <nimaltd@yahoo.com> Co-authored-by: rtpmsys <106180646+rtpmsys@users.noreply.github.com> Co-authored-by: bytiful <55647551+bytiful@users.noreply.github.com> Co-authored-by: tmfarrington <tmfarrington@users.noreply.github.com> Co-authored-by: Krzysiek S <chris.streh@gmail.com> Co-authored-by: surt <carl.olsson@gmail.com> Co-authored-by: Max Scheffler <max.scheffler@pm.me> Co-authored-by: Clemens Kirchgatterer <clemens@1541.org> Co-authored-by: Peter Pan's Techland <twinkle-pirate@hotmail.com> Co-authored-by: Roman <programmeofficemilkyway@gmail.com> Co-authored-by: Eistee <Eistee82@users.noreply.github.com> Co-authored-by: David McCurley <44048235+mrengineer7777@users.noreply.github.com> Co-authored-by: Gaya3N25 <30388176+Gaya3N25@users.noreply.github.com> Co-authored-by: renebohne <rene.bohne@gmail.com> Co-authored-by: Olivér Remény <25034625+remenyo@users.noreply.github.com> Co-authored-by: davidk88 <david.kotar@gmail.com> Co-authored-by: Vojtěch Bartoška <76958047+VojtechBartoska@users.noreply.github.com> Co-authored-by: James Armstrong <jamesarmstrong3@me.com> Co-authored-by: Valerii Koval <valeros@users.noreply.github.com> Co-authored-by: Peter G. Jensen <root@petergjoel.dk>
2023-10-05 11:54:25 +00:00
def get_alignment_size_for_type(ptype):
if ptype == APP_TYPE and secure == SECURE_V1:
# For secure boot v1 case, app partition must be 64K aligned
# signature block (68 bytes) lies at the very end of 64K block
return 0x10000
if ptype == APP_TYPE and secure == SECURE_V2:
# For secure boot v2 case, app partition must be 4K aligned
# signature block (4K) is kept after padding the unsigned image to 64K boundary
return 0x1000
# No specific size alignment requirement as such
ESP-IDF v5.1 (#7733) * Initial changes to compile under ESP-IDF v5.1 * Initial import for ESP-IDF v5.1 libs * Update toolchain * Update esp32-hal-psram.c * Add missing LDs * Update platform.txt * Stop some CI jobs, because they will always fail * Fix examples * Update app_httpd.cpp * Update ResetReason.ino * Warnings fixes * Added the example guideline and template (#7665) * Added the example guideline and template * PR review changes with some typos and grammar fixes * Changes according to the PR review * Added ESP32-S3 link to the datasheet (#7738) * Update HiFreq_ADC.ino * Replace periph_ctrl.h use because of deprecation * Replace esp_spi_flash.h use because of deprecation * Add includes to male mDNS::enableWorkstation compile * Fix ssl_client mbedtls_pk_parse_key callback * Update temperature sensor driver * Allow sketch_utils to compile with arduino-cli * Run CI with arduino-cli * Fix arduino-cli CI build on Windows * Refactor platform.txt to not use components installed through the board manager when running from git * Initial Peripheral Manager Implementation * Update SigmaDelta driver to use the new ESP-IDF driver API * Small improvements to peripheral manager and SigmaDelta * Remove deleted function from SigmaDelta header * Update DAC driver to use the new ESP-IDF driver API * Adds softAp(String) to make it compatible with ESP8266 (#7801) * Fix commentary (#7800) Minor fix based on observation done in https://github.com/espressif/arduino-esp32/issues/7795#issuecomment-1416868611 * add adafruit new board feather esp32s2 reserve tft (#7794) * bugfix: add <stdint.h> for uint8_t to avoid compilation failure (GCC 11.2.0) (#7744) * Adding 3rd party boards for VALTRACK-V4-VTS-ESP32-C3 & VALTRACK-V4-MFW-ESP32-C3 (#7735) * Added VALTRACK-V4-VTS-ESP32-C3 board definition Created pins_arduino.h & made changes to boards.txt with necessary changes * Modified the URL * Renamed json * renamed all auRL * Adding VALTRACK-V4 series board definitions Added VALTRACK-V4-VTS-ESP32C3 & VALTRACK-V4-MFW-ESP32-C3 board variants * Adding VALTRACK-V4 series board definitions Added VALTRACK-V4-VTS-ESP32C3 & VALTRACK-V4-MFW-ESP32-C3 board variants * Reverted package_esp32_index.template.json restored package_esp32_index.template.json from edits * Reverted package_esp32_index.template.json Added new line to package_esp32_index.template.json * Update Platformio CI (#7725) * WiFiClient example fix (#7711) * Modified WiFiClient example to use thingspeak instead of non-functionig sparkfun * Moved instructions to README * Fixed spelling * Added link to S3 datasheet --------- Co-authored-by: Jan Procházka <90197375+P-R-O-C-H-Y@users.noreply.github.com> * Mirror update from Heltec repository (#7709) Heltec updated the I2C pins in https://github.com/Heltec-Aaron-Lee/WiFi_Kit_series/commit/b10f4bf85d13fd01be80dcdb0eb59e6a8c8ba19a * Fixes BLE data printing (#7699) * Fixes BLE data printing BLE data has no '\0' terminator, therefore it can't be printed as a regular C string. This fix just prints the BLE data based on its length. * Simplify printing to a single call * split menu options + lora_32_V3 fix (#7697) * Change header gaurd name (#7696) * Fix Name (#7691) Wrong name in definitions. * Fix error in WiFiClient.cpp where the connect function fails for timeouts below 1 second (#7686) * Update WiFiClient.cpp This change will allow specifying connect timeouts below 1 second. Without this change, if connect timeouts under 1 second are given, the connect defaults to 0ms and fails. This will also allow timeouts in fractions of seconds, e.g. 1500ms. Without this change, connect timeouts are truncated to full second increments. * Make parameter timeout_ms clear * Change connection timeout_ms name for clarity --------- Co-authored-by: Rodrigo Garcia <rodrigo.garcia@espressif.com> * fixed the function header (#7674) * fixed the function header * fixed function name and paramaters --------- Co-authored-by: Jan Procházka <90197375+P-R-O-C-H-Y@users.noreply.github.com> * Ticker fix solving #6155 (#7664) * Wrapped Ticker functions with #pragma disabling -Wcast-function-type * Revert "Wrapped Ticker functions with #pragma disabling -Wcast-function-type" This reverts commit 160be7e67a10d01b6e44c4bf2521c0ccd6348976. * Fixed Ticker example * Modified Ticker example * Fixed LED_BUILTIN err for ESP32 --------- Co-authored-by: Jan Procházka <90197375+P-R-O-C-H-Y@users.noreply.github.com> * setPins fix ESP32 "specified pins are not supported by this chip." (#7646) [ESP32: SDMMCFS::begin hardcodes the usage of slot 1, only check if the pins match slot 1 pins.] setPins() was testing pins D1, D2 and D3 all against D1 ... fine in 1 pin mode when all are -1 not so much if you're trying to get 4 pin mode working. I now see this function doesn't really do anything on the ESP32...accept now correctly checks that you are trying to use the slot 1 pins. Co-authored-by: Jan Procházka <90197375+P-R-O-C-H-Y@users.noreply.github.com> * Allow passing IP as connect method parameter in WiFiClientSecure and skip unnecessary host-ip conversions (#7643) * Add LED_BUILTIN* definitions and initialization for LEDs to stop them floating. (#7636) Co-authored-by: Rodrigo Garcia <rodrigo.garcia@espressif.com> * Expand path to tinuf2 image when checking existence in platformio-build.py (#7631) * Expand path to tinuf2 image when checking existence * More isFiles fixed * Remove (useless) trailing semicolon from Print.cpp (#7622) * ADD: New variant Edgebox-ESP-100 (#7771) * ADD: New variant Edgebox-ESP-100 * FIX: Edgebox-ESP-100 Board.txt usb mode option change back to default value as ESP32S3 * Add Crabik Slot ESP32-S3 board (#7790) * Added Crabik Slot ESP32-S3 * Adding CPU frequency settings and removing excess from partition scheme settings * new variant LilyGO T-Display-S3 (#7763) * new variant LilyGO T-Display-S3 https://github.com/Xinyuan-LilyGO/T-Display-S3 * Add boards.txt definition --------- Co-authored-by: Me No Dev <me-no-dev@users.noreply.github.com> * Update get.py to support Apple ARM64 * Update package_esp32_index.template.json * WString Return bool (#7774) * Add Roboheart Hercules development board to the esp32-core (#7672) * added Roboheart Hercules pin definitions and board.txt entries * added package_roboheat.json for prototyping * Roboheart Hercules pins * Updated the pins * Delete package_roboheart.json * Requested changes --------- Co-authored-by: renebohne <rene.bohne@gmail.com> * Reword "ESP-IDF as Component" (#7812) I think "Arduino as an ESP-IDF component" or just "As ESP-IDF component" instead of "ESP-IDF as Component" is more correct way to name the link. 1. "ESP-IDF as Component" would imply that ESP-IDF is some sort of library for Arduino, which is (IMO) misleading, because it's true the other way around. 2. It's written as "Arduino as an ESP-IDF component" on the webpage it points to as well. - Also I removed the capitalization from "Component" as I have not found a reason why is it capitalized. * add new board Adafruit Feather ESP32-S3 Reverse TFT (#7811) * Multi threading examples (tasks, queues, semaphores, mutexes) (#7660) * Moved and renamed example ESP32/FreeRTOS to MultiThreading/BasicMultiThreading * Added dummy files * Modified original example * Fixed BasicMultiThreading.ino * Added Example demonstrating use of queues * Extended info in BasicMultiThreading * Renamed Queues to singular Queue * Added Mutex example * Added Semaphore example * Moved info from example to README * Moved doc from Mutex to README * Added Queue README * Removed unecesary text * Fixed grammar * Increased stack size for Sempahore example * Added headers into .ino files * Added word Example at the end of title in README * removed unused line * Added forgotten README * Modified BasicMultiThreading example * Added missing S3 entry in README * moved location * Update ESP-IDF libs * Update CMakeLists.txt * Update esptool to v4.4 * Add function timerAttachInterruptFlag (#7809) * Update esptool to v4.5 * ADC refactoring (#7827) * Adc refactored + periman implementation Peripheral manager still needs to be checked if the implementation is right. * switched to working solution for milivolts read * Periman detachbus fix * coding style * fix CI warnings * fix FreeRTOS example * Update ETH.cpp * Update FunctionalInterruptStruct.ino * Update package_esp32_index.template.json * Update package_esp32_index.template.json * Fixes for the latest IDF v5.1 * update esp-idf libs and toolchain * Turn OFF auto crystal frequency for ESP32 (needed by TWAI) * Update examples * Switch build to mostly use flags from files Includes can not be done this way * Reorganize flag files * Optimize chip build flags further * Revert defines from file. MBEDTLS_CONFIG_FILE does not properly expand * Add support for includes and defines from file * Replace old sdk path references in platform.txt * use gcc-ar (#8013) * Makes F_CPU generic for all SoC (#8007) Based on CONFIG_ESP_DEFAULT_CPU_FREQ_MHZ that is correctly defined in the sdkconfig file for each SoC. * TIMER refactoring (#7904) * refactor using GPtimer * Updated timer HW test * fix examples * Add v2.0.7 in issue template (#7871) * refactor using GPtimer * Updated timer HW test * fix examples * Revert "Add v2.0.7 in issue template (#7871)" This reverts commit fcc3b17d62ff57861f8913ca1f142fd5163b7457. * Update upload-artifact to v3 in HW CI * Revert "Update upload-artifact to v3 in HW CI" This reverts commit 1ba228071718ba37c4e26d98db22f77b2a7364a6. * replace resolution with frequency * remove count_down option * countup removed from examples + header * Refactored timer object * code cleanup + examples and tests fixes * TimerAlarm fix --------- Co-authored-by: Vojtěch Bartoška <76958047+VojtechBartoska@users.noreply.github.com> * [Docs] ADC and Timer API Update (+some docs fixes) (#7906) * updated docs * remove hall sensor docs Removed Hall sensor documentation as its no longer supported in IDF-5 * Fixed ESPNow examples location in docs * Last timer refactored API + gpio small fix * AlarmWrite fix * Fixes APLL/PLL with RTC Frequency (#8025) log_d() was displaying APLL for any SoC, but S3 and C3 has not such option, causing compilation errors. * Update IDF libs and fix OPI PSRAM on S3 * Add setMode function HardwareSerial.c to set the esp32 uart mode for use with RS485 auto RTS (#7935) * Added setMode function to set the esp32 uart mode Used to set the esp32 uart mode for use with RS485 Half Duplex and the auto RTS pin mode. This will set/clear the RTS pin output to control the RE/DE pin on most RS485 chips. * Add Success (bool) return in some functions * Add Success (bool) return code to some functions * Add Success (bool) return to some functions * Add Success (bool) return to some functions * Fix uartSetRxTimeout return type --------- Co-authored-by: Rodrigo Garcia <rodrigo.garcia@espressif.com> * Add support for esp-elf-gdb * WFG Crashfix (#8044) * Update component libs * IDF release/v5.1 (#8061) * IDF release/v5.1 bb9200acec * Update Esp.cpp * IDF release/v5.1 420ebd208a * Update esp32-hal-psram.c * Switch SDK to be an external package * fix path (#8096) * Makes UART work at any APB Frequency (#8097) Fixes HardwareSerial to work with IDF 5.1 on any CPU/APB Frequency (240MHz to 10MHZ), including user created low power modes. * Add required callbacks for TinyUSB DFU * Update version to 3.0.0 * Add ESP.getCoreVersion() and update ESP.getChipModel() * Update timer hal for the latest 5.1 * Use separate RX and TX buffer sizes in HTTP client optimizes download by allowing up to 4K packets to be received * Rename clock tree enum name in latest 5.1 * ESP32-H4 support was removed in ESP-IDF v5.1 * IDF release/v5.1 2004bf4e11 (#8165) * Deinit previous bus first (#8180) * TIMER - add timer_started flag, fix timerEnd() + timer HW test (#8135) * Add timer_started flag and stop before disable * Fix timer HW test * TOUCH - Peripheral manager implementation (#8129) * Touch periman implemented * Deinit previous bus first * LEDC Refactoring - Peripheral manager implemented (#8126) * LEDC periman implementation * Fix examples * Rework tone * Update ledc docs * fix missing bracket * Update analog funtions esp32-hal.h * Update CameraWebServer example * Fix HiFreq_ADC example * minor fixes - typos * Avoid calling tone/notone when tone already runs on dif. pin * Remove unused channels_resolution * GPIO - Peripheral manager implementation (#8179) * periman-implementation * fix RGB_BUILTIN and remove space * Enforces more consistency into Peripheral Manager (#8188) * Avoid log_i() message the first time a bus is assigned * Prevent operation with ESP32_BUS_TYPE_INIT * keeps coding style * do not print messages on INIT bus type * [Arduino Core 3.0.0] RMT IDF5.1 Refactoring (#7994) * RMT IDF5.1 refactoring * Fixes initial value setting * removed rmtRead() with user callback * simplify/remove Read data structure * Deep API simplification * fixes the examples * fix rmt.h * adds support to APB different frequencies * fixes CI and not defined RGB_BUILTIN * new RMT API and examples * fixing commentaties * Update esp32-hal-rgb-led.c * changes Filter API * Fixes example with Filter API * Update PlatformIO scripts for the upcoming 3.0 core (#8183) * Update PlatformIO scripts for the upcoming 3.0 core * Dynamically select proper framework-arduinoespressif32-libs package With this change the dev-platform will be dynamically configured to pull the latest .zip package with precompiled libraries from extracted from package_esp32_index.template.json * free memory on detach (#8264) * SPI - Peripheral manager implementation (#8255) * spi periman implementation * fix header file * remove unused struct * fix missing braces * Update esp32-hal-rmt.c (#8216) Optimizing Peripheral Manager Test * I2C - Peripheral manager implementation (#8220) * i2c-master periman initial commit * i2c-master make detachbus static + comment remove * i2c-slave periman implementation * SetPinBus to INIT on i2cDeinits * Fix slave pins deinit * remove dbg logs * set ret to ESP_FAIL instead of returning * Fix warnings in hal-spi caused by pariman transition * Update esptool.py to version 4.6 * Add platform support for ESP_SR * Add USB Type and valid pin check to periman * replace bus with spi->num+1 (#8279) * Remove default pins from SPI HAL * Add commented out handlers for esptool.js in TinyUSB CDC For future use * Add build defines for host os and fqbn (for debug purposes) * Provide proper memory caps total size * Update Esp.cpp * SDMMC - Peripheral manager implementation (#8289) * sdmmc periman implemented * save pins when SOC_SDMMC_USE_IOMUX * IDF release/v5.1 4bc762621d (#8292) * Adds missing pinMode (#8312) * Adds missing pinMode The example code lacks a pinMode() to initialize the GPIO 0 (button). In Arduino Core 3.0.0, it prints an error message when trying to read a not initialized GPIO. * Update KeyboardLogout.ino Adds <buttonPin> to keep code standard * Update KeyboardReprogram.ino Adds <buttonPin> to keep code standard * LEDC Fade implementation (#8338) * fade API + pointer fixes * Add fade api * Add fade example * update ledc docs * remove unused variables * fix path to example * Adds USB to Peripheral Manager - Arduino Core 3.0.0 (#8335) * ETHERNET - Peripheral manager implementation (#8297) * Peripheral manager implemented * remove unused variable * Add all RMII pins * fix typo * Adds HardwareSerial to Peripheral Manager Arduino 3.0.0 (#8328) * Do not limit ETHERNET in periman to only ESP32. SPI is also an option * Initial support for ESP32-C6 (#8337) * Add checks for SOC defines (#8351) * Add checks for SOC defines * Add SoC checks to BLE library * fix i2c compilation error * fix wrong placement of include * add check to SPI library * add check to USB library * add checks to Wire library * Feature/esp32h2 support (#8373) * Initial support for ESP32H2 * Additional changes for ESP32H2 * Update libs for ESP32H2 * Fix flashing on ESP32-H2 * Fix GPIO Configs for ESP32-C6 and ESP32-H2 * Update Timer test sketch * Fix upload flash parameters * Use ets_write_char_uart instead of ets_printf in log_printfv * Print full chip report when log level is sufficient (#8282) * ESP32-C3 does not have ets_write_char_uart * Fix BLE gap event name * HW Testing - Pytest update (#8389) * update tests requirements * remove already handled components * Update version of pytest * Add missing ESP32-H2 to hil.yml * Updated FreeRTOS names (#8418) * HW Testing - ESP32-C6 + ESP32-H2 fixes (#8404) * add C6/H2 to tests cfg.json * remove , * workflow runs-on runner by matrix * Add need for arduino tag to select runner * Add cryptography to requirements.txt * Removed duplicate TX1 define for H2 (#8402) * Fix broken examples * Fixes RMT filter & idle timing and setup (#8359) * Fixes Filter and Idle parameter to uint32 * Fixes Filter and Idle setup * Fixes it to 5.1Libs branch * fix RMT CLK source and Filter API * fixes missing ; * fixes missing ; * fixes RMT example * IDF release/v5.1 a7b62bbcaf (#8438) * Add workflow to build executables from python scripts (#8290) * Add workflow to build executables from python scripts * Push binary to tools * Enable executable signing on Windows * Update get.py * Push binary to tools * Try with multiple files * Try more actions * Try powershell * Restore tools so they do not get rebuilt * Finalize scripts * Push binary to tools * App rollback should be after PSRAM is initialized * Correcting RX1 to GPIO4 and TX1 to GPIO5 to be consistent with documentation. Previous pin use works but is inconsistent with C6 docs. * Fixes Memory Leak (#8486) * fixes preprocessor test (#8485) * fixes preprocessor test When using `#define USE_SOFT_AP` Change `&& not USE_SOFT_AP` ==> `&& !defined(USE_SOFT_AP)` * Adds any BLE capable device in WiFiProv.ino Removing ESP32 restriction for BLE Provisioning. * fix flash mode read out for C6 * Add option for custom partitions without restrictions * SD_MMC update (#8298) * Updated SD_MMC lib and examples * Removed getter implementation and commented usage in examples * squashed updates * IDF release/v5.1 f0437b945f (#8599) * Update package_esp32_index.template.json * Fix printf format build error in BTAdvertisedDeviceSet.cpp --------- Co-authored-by: Pedro Minatel <pedro.minatel@espressif.com> Co-authored-by: Rodrigo Garcia <rodrigo.garcia@espressif.com> Co-authored-by: Ha Thach <thach@tinyusb.org> Co-authored-by: Martin Turski <quiret@vfemail.net> Co-authored-by: raviypujar <raviypujar@gmail.com> Co-authored-by: Jason2866 <24528715+Jason2866@users.noreply.github.com> Co-authored-by: Tomáš Pilný <34927466+PilnyTomas@users.noreply.github.com> Co-authored-by: Jan Procházka <90197375+P-R-O-C-H-Y@users.noreply.github.com> Co-authored-by: Daniel Berlin <dberlin@dberlin.org> Co-authored-by: Nima Askari (نیما عسکری) <nimaltd@yahoo.com> Co-authored-by: rtpmsys <106180646+rtpmsys@users.noreply.github.com> Co-authored-by: bytiful <55647551+bytiful@users.noreply.github.com> Co-authored-by: tmfarrington <tmfarrington@users.noreply.github.com> Co-authored-by: Krzysiek S <chris.streh@gmail.com> Co-authored-by: surt <carl.olsson@gmail.com> Co-authored-by: Max Scheffler <max.scheffler@pm.me> Co-authored-by: Clemens Kirchgatterer <clemens@1541.org> Co-authored-by: Peter Pan's Techland <twinkle-pirate@hotmail.com> Co-authored-by: Roman <programmeofficemilkyway@gmail.com> Co-authored-by: Eistee <Eistee82@users.noreply.github.com> Co-authored-by: David McCurley <44048235+mrengineer7777@users.noreply.github.com> Co-authored-by: Gaya3N25 <30388176+Gaya3N25@users.noreply.github.com> Co-authored-by: renebohne <rene.bohne@gmail.com> Co-authored-by: Olivér Remény <25034625+remenyo@users.noreply.github.com> Co-authored-by: davidk88 <david.kotar@gmail.com> Co-authored-by: Vojtěch Bartoška <76958047+VojtechBartoska@users.noreply.github.com> Co-authored-by: James Armstrong <jamesarmstrong3@me.com> Co-authored-by: Valerii Koval <valeros@users.noreply.github.com> Co-authored-by: Peter G. Jensen <root@petergjoel.dk>
2023-10-05 11:54:25 +00:00
return 0x1
def get_partition_type(ptype):
if ptype == "app":
ESP-IDF v5.1 (#7733) * Initial changes to compile under ESP-IDF v5.1 * Initial import for ESP-IDF v5.1 libs * Update toolchain * Update esp32-hal-psram.c * Add missing LDs * Update platform.txt * Stop some CI jobs, because they will always fail * Fix examples * Update app_httpd.cpp * Update ResetReason.ino * Warnings fixes * Added the example guideline and template (#7665) * Added the example guideline and template * PR review changes with some typos and grammar fixes * Changes according to the PR review * Added ESP32-S3 link to the datasheet (#7738) * Update HiFreq_ADC.ino * Replace periph_ctrl.h use because of deprecation * Replace esp_spi_flash.h use because of deprecation * Add includes to male mDNS::enableWorkstation compile * Fix ssl_client mbedtls_pk_parse_key callback * Update temperature sensor driver * Allow sketch_utils to compile with arduino-cli * Run CI with arduino-cli * Fix arduino-cli CI build on Windows * Refactor platform.txt to not use components installed through the board manager when running from git * Initial Peripheral Manager Implementation * Update SigmaDelta driver to use the new ESP-IDF driver API * Small improvements to peripheral manager and SigmaDelta * Remove deleted function from SigmaDelta header * Update DAC driver to use the new ESP-IDF driver API * Adds softAp(String) to make it compatible with ESP8266 (#7801) * Fix commentary (#7800) Minor fix based on observation done in https://github.com/espressif/arduino-esp32/issues/7795#issuecomment-1416868611 * add adafruit new board feather esp32s2 reserve tft (#7794) * bugfix: add <stdint.h> for uint8_t to avoid compilation failure (GCC 11.2.0) (#7744) * Adding 3rd party boards for VALTRACK-V4-VTS-ESP32-C3 & VALTRACK-V4-MFW-ESP32-C3 (#7735) * Added VALTRACK-V4-VTS-ESP32-C3 board definition Created pins_arduino.h & made changes to boards.txt with necessary changes * Modified the URL * Renamed json * renamed all auRL * Adding VALTRACK-V4 series board definitions Added VALTRACK-V4-VTS-ESP32C3 & VALTRACK-V4-MFW-ESP32-C3 board variants * Adding VALTRACK-V4 series board definitions Added VALTRACK-V4-VTS-ESP32C3 & VALTRACK-V4-MFW-ESP32-C3 board variants * Reverted package_esp32_index.template.json restored package_esp32_index.template.json from edits * Reverted package_esp32_index.template.json Added new line to package_esp32_index.template.json * Update Platformio CI (#7725) * WiFiClient example fix (#7711) * Modified WiFiClient example to use thingspeak instead of non-functionig sparkfun * Moved instructions to README * Fixed spelling * Added link to S3 datasheet --------- Co-authored-by: Jan Procházka <90197375+P-R-O-C-H-Y@users.noreply.github.com> * Mirror update from Heltec repository (#7709) Heltec updated the I2C pins in https://github.com/Heltec-Aaron-Lee/WiFi_Kit_series/commit/b10f4bf85d13fd01be80dcdb0eb59e6a8c8ba19a * Fixes BLE data printing (#7699) * Fixes BLE data printing BLE data has no '\0' terminator, therefore it can't be printed as a regular C string. This fix just prints the BLE data based on its length. * Simplify printing to a single call * split menu options + lora_32_V3 fix (#7697) * Change header gaurd name (#7696) * Fix Name (#7691) Wrong name in definitions. * Fix error in WiFiClient.cpp where the connect function fails for timeouts below 1 second (#7686) * Update WiFiClient.cpp This change will allow specifying connect timeouts below 1 second. Without this change, if connect timeouts under 1 second are given, the connect defaults to 0ms and fails. This will also allow timeouts in fractions of seconds, e.g. 1500ms. Without this change, connect timeouts are truncated to full second increments. * Make parameter timeout_ms clear * Change connection timeout_ms name for clarity --------- Co-authored-by: Rodrigo Garcia <rodrigo.garcia@espressif.com> * fixed the function header (#7674) * fixed the function header * fixed function name and paramaters --------- Co-authored-by: Jan Procházka <90197375+P-R-O-C-H-Y@users.noreply.github.com> * Ticker fix solving #6155 (#7664) * Wrapped Ticker functions with #pragma disabling -Wcast-function-type * Revert "Wrapped Ticker functions with #pragma disabling -Wcast-function-type" This reverts commit 160be7e67a10d01b6e44c4bf2521c0ccd6348976. * Fixed Ticker example * Modified Ticker example * Fixed LED_BUILTIN err for ESP32 --------- Co-authored-by: Jan Procházka <90197375+P-R-O-C-H-Y@users.noreply.github.com> * setPins fix ESP32 "specified pins are not supported by this chip." (#7646) [ESP32: SDMMCFS::begin hardcodes the usage of slot 1, only check if the pins match slot 1 pins.] setPins() was testing pins D1, D2 and D3 all against D1 ... fine in 1 pin mode when all are -1 not so much if you're trying to get 4 pin mode working. I now see this function doesn't really do anything on the ESP32...accept now correctly checks that you are trying to use the slot 1 pins. Co-authored-by: Jan Procházka <90197375+P-R-O-C-H-Y@users.noreply.github.com> * Allow passing IP as connect method parameter in WiFiClientSecure and skip unnecessary host-ip conversions (#7643) * Add LED_BUILTIN* definitions and initialization for LEDs to stop them floating. (#7636) Co-authored-by: Rodrigo Garcia <rodrigo.garcia@espressif.com> * Expand path to tinuf2 image when checking existence in platformio-build.py (#7631) * Expand path to tinuf2 image when checking existence * More isFiles fixed * Remove (useless) trailing semicolon from Print.cpp (#7622) * ADD: New variant Edgebox-ESP-100 (#7771) * ADD: New variant Edgebox-ESP-100 * FIX: Edgebox-ESP-100 Board.txt usb mode option change back to default value as ESP32S3 * Add Crabik Slot ESP32-S3 board (#7790) * Added Crabik Slot ESP32-S3 * Adding CPU frequency settings and removing excess from partition scheme settings * new variant LilyGO T-Display-S3 (#7763) * new variant LilyGO T-Display-S3 https://github.com/Xinyuan-LilyGO/T-Display-S3 * Add boards.txt definition --------- Co-authored-by: Me No Dev <me-no-dev@users.noreply.github.com> * Update get.py to support Apple ARM64 * Update package_esp32_index.template.json * WString Return bool (#7774) * Add Roboheart Hercules development board to the esp32-core (#7672) * added Roboheart Hercules pin definitions and board.txt entries * added package_roboheat.json for prototyping * Roboheart Hercules pins * Updated the pins * Delete package_roboheart.json * Requested changes --------- Co-authored-by: renebohne <rene.bohne@gmail.com> * Reword "ESP-IDF as Component" (#7812) I think "Arduino as an ESP-IDF component" or just "As ESP-IDF component" instead of "ESP-IDF as Component" is more correct way to name the link. 1. "ESP-IDF as Component" would imply that ESP-IDF is some sort of library for Arduino, which is (IMO) misleading, because it's true the other way around. 2. It's written as "Arduino as an ESP-IDF component" on the webpage it points to as well. - Also I removed the capitalization from "Component" as I have not found a reason why is it capitalized. * add new board Adafruit Feather ESP32-S3 Reverse TFT (#7811) * Multi threading examples (tasks, queues, semaphores, mutexes) (#7660) * Moved and renamed example ESP32/FreeRTOS to MultiThreading/BasicMultiThreading * Added dummy files * Modified original example * Fixed BasicMultiThreading.ino * Added Example demonstrating use of queues * Extended info in BasicMultiThreading * Renamed Queues to singular Queue * Added Mutex example * Added Semaphore example * Moved info from example to README * Moved doc from Mutex to README * Added Queue README * Removed unecesary text * Fixed grammar * Increased stack size for Sempahore example * Added headers into .ino files * Added word Example at the end of title in README * removed unused line * Added forgotten README * Modified BasicMultiThreading example * Added missing S3 entry in README * moved location * Update ESP-IDF libs * Update CMakeLists.txt * Update esptool to v4.4 * Add function timerAttachInterruptFlag (#7809) * Update esptool to v4.5 * ADC refactoring (#7827) * Adc refactored + periman implementation Peripheral manager still needs to be checked if the implementation is right. * switched to working solution for milivolts read * Periman detachbus fix * coding style * fix CI warnings * fix FreeRTOS example * Update ETH.cpp * Update FunctionalInterruptStruct.ino * Update package_esp32_index.template.json * Update package_esp32_index.template.json * Fixes for the latest IDF v5.1 * update esp-idf libs and toolchain * Turn OFF auto crystal frequency for ESP32 (needed by TWAI) * Update examples * Switch build to mostly use flags from files Includes can not be done this way * Reorganize flag files * Optimize chip build flags further * Revert defines from file. MBEDTLS_CONFIG_FILE does not properly expand * Add support for includes and defines from file * Replace old sdk path references in platform.txt * use gcc-ar (#8013) * Makes F_CPU generic for all SoC (#8007) Based on CONFIG_ESP_DEFAULT_CPU_FREQ_MHZ that is correctly defined in the sdkconfig file for each SoC. * TIMER refactoring (#7904) * refactor using GPtimer * Updated timer HW test * fix examples * Add v2.0.7 in issue template (#7871) * refactor using GPtimer * Updated timer HW test * fix examples * Revert "Add v2.0.7 in issue template (#7871)" This reverts commit fcc3b17d62ff57861f8913ca1f142fd5163b7457. * Update upload-artifact to v3 in HW CI * Revert "Update upload-artifact to v3 in HW CI" This reverts commit 1ba228071718ba37c4e26d98db22f77b2a7364a6. * replace resolution with frequency * remove count_down option * countup removed from examples + header * Refactored timer object * code cleanup + examples and tests fixes * TimerAlarm fix --------- Co-authored-by: Vojtěch Bartoška <76958047+VojtechBartoska@users.noreply.github.com> * [Docs] ADC and Timer API Update (+some docs fixes) (#7906) * updated docs * remove hall sensor docs Removed Hall sensor documentation as its no longer supported in IDF-5 * Fixed ESPNow examples location in docs * Last timer refactored API + gpio small fix * AlarmWrite fix * Fixes APLL/PLL with RTC Frequency (#8025) log_d() was displaying APLL for any SoC, but S3 and C3 has not such option, causing compilation errors. * Update IDF libs and fix OPI PSRAM on S3 * Add setMode function HardwareSerial.c to set the esp32 uart mode for use with RS485 auto RTS (#7935) * Added setMode function to set the esp32 uart mode Used to set the esp32 uart mode for use with RS485 Half Duplex and the auto RTS pin mode. This will set/clear the RTS pin output to control the RE/DE pin on most RS485 chips. * Add Success (bool) return in some functions * Add Success (bool) return code to some functions * Add Success (bool) return to some functions * Add Success (bool) return to some functions * Fix uartSetRxTimeout return type --------- Co-authored-by: Rodrigo Garcia <rodrigo.garcia@espressif.com> * Add support for esp-elf-gdb * WFG Crashfix (#8044) * Update component libs * IDF release/v5.1 (#8061) * IDF release/v5.1 bb9200acec * Update Esp.cpp * IDF release/v5.1 420ebd208a * Update esp32-hal-psram.c * Switch SDK to be an external package * fix path (#8096) * Makes UART work at any APB Frequency (#8097) Fixes HardwareSerial to work with IDF 5.1 on any CPU/APB Frequency (240MHz to 10MHZ), including user created low power modes. * Add required callbacks for TinyUSB DFU * Update version to 3.0.0 * Add ESP.getCoreVersion() and update ESP.getChipModel() * Update timer hal for the latest 5.1 * Use separate RX and TX buffer sizes in HTTP client optimizes download by allowing up to 4K packets to be received * Rename clock tree enum name in latest 5.1 * ESP32-H4 support was removed in ESP-IDF v5.1 * IDF release/v5.1 2004bf4e11 (#8165) * Deinit previous bus first (#8180) * TIMER - add timer_started flag, fix timerEnd() + timer HW test (#8135) * Add timer_started flag and stop before disable * Fix timer HW test * TOUCH - Peripheral manager implementation (#8129) * Touch periman implemented * Deinit previous bus first * LEDC Refactoring - Peripheral manager implemented (#8126) * LEDC periman implementation * Fix examples * Rework tone * Update ledc docs * fix missing bracket * Update analog funtions esp32-hal.h * Update CameraWebServer example * Fix HiFreq_ADC example * minor fixes - typos * Avoid calling tone/notone when tone already runs on dif. pin * Remove unused channels_resolution * GPIO - Peripheral manager implementation (#8179) * periman-implementation * fix RGB_BUILTIN and remove space * Enforces more consistency into Peripheral Manager (#8188) * Avoid log_i() message the first time a bus is assigned * Prevent operation with ESP32_BUS_TYPE_INIT * keeps coding style * do not print messages on INIT bus type * [Arduino Core 3.0.0] RMT IDF5.1 Refactoring (#7994) * RMT IDF5.1 refactoring * Fixes initial value setting * removed rmtRead() with user callback * simplify/remove Read data structure * Deep API simplification * fixes the examples * fix rmt.h * adds support to APB different frequencies * fixes CI and not defined RGB_BUILTIN * new RMT API and examples * fixing commentaties * Update esp32-hal-rgb-led.c * changes Filter API * Fixes example with Filter API * Update PlatformIO scripts for the upcoming 3.0 core (#8183) * Update PlatformIO scripts for the upcoming 3.0 core * Dynamically select proper framework-arduinoespressif32-libs package With this change the dev-platform will be dynamically configured to pull the latest .zip package with precompiled libraries from extracted from package_esp32_index.template.json * free memory on detach (#8264) * SPI - Peripheral manager implementation (#8255) * spi periman implementation * fix header file * remove unused struct * fix missing braces * Update esp32-hal-rmt.c (#8216) Optimizing Peripheral Manager Test * I2C - Peripheral manager implementation (#8220) * i2c-master periman initial commit * i2c-master make detachbus static + comment remove * i2c-slave periman implementation * SetPinBus to INIT on i2cDeinits * Fix slave pins deinit * remove dbg logs * set ret to ESP_FAIL instead of returning * Fix warnings in hal-spi caused by pariman transition * Update esptool.py to version 4.6 * Add platform support for ESP_SR * Add USB Type and valid pin check to periman * replace bus with spi->num+1 (#8279) * Remove default pins from SPI HAL * Add commented out handlers for esptool.js in TinyUSB CDC For future use * Add build defines for host os and fqbn (for debug purposes) * Provide proper memory caps total size * Update Esp.cpp * SDMMC - Peripheral manager implementation (#8289) * sdmmc periman implemented * save pins when SOC_SDMMC_USE_IOMUX * IDF release/v5.1 4bc762621d (#8292) * Adds missing pinMode (#8312) * Adds missing pinMode The example code lacks a pinMode() to initialize the GPIO 0 (button). In Arduino Core 3.0.0, it prints an error message when trying to read a not initialized GPIO. * Update KeyboardLogout.ino Adds <buttonPin> to keep code standard * Update KeyboardReprogram.ino Adds <buttonPin> to keep code standard * LEDC Fade implementation (#8338) * fade API + pointer fixes * Add fade api * Add fade example * update ledc docs * remove unused variables * fix path to example * Adds USB to Peripheral Manager - Arduino Core 3.0.0 (#8335) * ETHERNET - Peripheral manager implementation (#8297) * Peripheral manager implemented * remove unused variable * Add all RMII pins * fix typo * Adds HardwareSerial to Peripheral Manager Arduino 3.0.0 (#8328) * Do not limit ETHERNET in periman to only ESP32. SPI is also an option * Initial support for ESP32-C6 (#8337) * Add checks for SOC defines (#8351) * Add checks for SOC defines * Add SoC checks to BLE library * fix i2c compilation error * fix wrong placement of include * add check to SPI library * add check to USB library * add checks to Wire library * Feature/esp32h2 support (#8373) * Initial support for ESP32H2 * Additional changes for ESP32H2 * Update libs for ESP32H2 * Fix flashing on ESP32-H2 * Fix GPIO Configs for ESP32-C6 and ESP32-H2 * Update Timer test sketch * Fix upload flash parameters * Use ets_write_char_uart instead of ets_printf in log_printfv * Print full chip report when log level is sufficient (#8282) * ESP32-C3 does not have ets_write_char_uart * Fix BLE gap event name * HW Testing - Pytest update (#8389) * update tests requirements * remove already handled components * Update version of pytest * Add missing ESP32-H2 to hil.yml * Updated FreeRTOS names (#8418) * HW Testing - ESP32-C6 + ESP32-H2 fixes (#8404) * add C6/H2 to tests cfg.json * remove , * workflow runs-on runner by matrix * Add need for arduino tag to select runner * Add cryptography to requirements.txt * Removed duplicate TX1 define for H2 (#8402) * Fix broken examples * Fixes RMT filter & idle timing and setup (#8359) * Fixes Filter and Idle parameter to uint32 * Fixes Filter and Idle setup * Fixes it to 5.1Libs branch * fix RMT CLK source and Filter API * fixes missing ; * fixes missing ; * fixes RMT example * IDF release/v5.1 a7b62bbcaf (#8438) * Add workflow to build executables from python scripts (#8290) * Add workflow to build executables from python scripts * Push binary to tools * Enable executable signing on Windows * Update get.py * Push binary to tools * Try with multiple files * Try more actions * Try powershell * Restore tools so they do not get rebuilt * Finalize scripts * Push binary to tools * App rollback should be after PSRAM is initialized * Correcting RX1 to GPIO4 and TX1 to GPIO5 to be consistent with documentation. Previous pin use works but is inconsistent with C6 docs. * Fixes Memory Leak (#8486) * fixes preprocessor test (#8485) * fixes preprocessor test When using `#define USE_SOFT_AP` Change `&& not USE_SOFT_AP` ==> `&& !defined(USE_SOFT_AP)` * Adds any BLE capable device in WiFiProv.ino Removing ESP32 restriction for BLE Provisioning. * fix flash mode read out for C6 * Add option for custom partitions without restrictions * SD_MMC update (#8298) * Updated SD_MMC lib and examples * Removed getter implementation and commented usage in examples * squashed updates * IDF release/v5.1 f0437b945f (#8599) * Update package_esp32_index.template.json * Fix printf format build error in BTAdvertisedDeviceSet.cpp --------- Co-authored-by: Pedro Minatel <pedro.minatel@espressif.com> Co-authored-by: Rodrigo Garcia <rodrigo.garcia@espressif.com> Co-authored-by: Ha Thach <thach@tinyusb.org> Co-authored-by: Martin Turski <quiret@vfemail.net> Co-authored-by: raviypujar <raviypujar@gmail.com> Co-authored-by: Jason2866 <24528715+Jason2866@users.noreply.github.com> Co-authored-by: Tomáš Pilný <34927466+PilnyTomas@users.noreply.github.com> Co-authored-by: Jan Procházka <90197375+P-R-O-C-H-Y@users.noreply.github.com> Co-authored-by: Daniel Berlin <dberlin@dberlin.org> Co-authored-by: Nima Askari (نیما عسکری) <nimaltd@yahoo.com> Co-authored-by: rtpmsys <106180646+rtpmsys@users.noreply.github.com> Co-authored-by: bytiful <55647551+bytiful@users.noreply.github.com> Co-authored-by: tmfarrington <tmfarrington@users.noreply.github.com> Co-authored-by: Krzysiek S <chris.streh@gmail.com> Co-authored-by: surt <carl.olsson@gmail.com> Co-authored-by: Max Scheffler <max.scheffler@pm.me> Co-authored-by: Clemens Kirchgatterer <clemens@1541.org> Co-authored-by: Peter Pan's Techland <twinkle-pirate@hotmail.com> Co-authored-by: Roman <programmeofficemilkyway@gmail.com> Co-authored-by: Eistee <Eistee82@users.noreply.github.com> Co-authored-by: David McCurley <44048235+mrengineer7777@users.noreply.github.com> Co-authored-by: Gaya3N25 <30388176+Gaya3N25@users.noreply.github.com> Co-authored-by: renebohne <rene.bohne@gmail.com> Co-authored-by: Olivér Remény <25034625+remenyo@users.noreply.github.com> Co-authored-by: davidk88 <david.kotar@gmail.com> Co-authored-by: Vojtěch Bartoška <76958047+VojtechBartoska@users.noreply.github.com> Co-authored-by: James Armstrong <jamesarmstrong3@me.com> Co-authored-by: Valerii Koval <valeros@users.noreply.github.com> Co-authored-by: Peter G. Jensen <root@petergjoel.dk>
2023-10-05 11:54:25 +00:00
return APP_TYPE
if ptype == "data":
ESP-IDF v5.1 (#7733) * Initial changes to compile under ESP-IDF v5.1 * Initial import for ESP-IDF v5.1 libs * Update toolchain * Update esp32-hal-psram.c * Add missing LDs * Update platform.txt * Stop some CI jobs, because they will always fail * Fix examples * Update app_httpd.cpp * Update ResetReason.ino * Warnings fixes * Added the example guideline and template (#7665) * Added the example guideline and template * PR review changes with some typos and grammar fixes * Changes according to the PR review * Added ESP32-S3 link to the datasheet (#7738) * Update HiFreq_ADC.ino * Replace periph_ctrl.h use because of deprecation * Replace esp_spi_flash.h use because of deprecation * Add includes to male mDNS::enableWorkstation compile * Fix ssl_client mbedtls_pk_parse_key callback * Update temperature sensor driver * Allow sketch_utils to compile with arduino-cli * Run CI with arduino-cli * Fix arduino-cli CI build on Windows * Refactor platform.txt to not use components installed through the board manager when running from git * Initial Peripheral Manager Implementation * Update SigmaDelta driver to use the new ESP-IDF driver API * Small improvements to peripheral manager and SigmaDelta * Remove deleted function from SigmaDelta header * Update DAC driver to use the new ESP-IDF driver API * Adds softAp(String) to make it compatible with ESP8266 (#7801) * Fix commentary (#7800) Minor fix based on observation done in https://github.com/espressif/arduino-esp32/issues/7795#issuecomment-1416868611 * add adafruit new board feather esp32s2 reserve tft (#7794) * bugfix: add <stdint.h> for uint8_t to avoid compilation failure (GCC 11.2.0) (#7744) * Adding 3rd party boards for VALTRACK-V4-VTS-ESP32-C3 & VALTRACK-V4-MFW-ESP32-C3 (#7735) * Added VALTRACK-V4-VTS-ESP32-C3 board definition Created pins_arduino.h & made changes to boards.txt with necessary changes * Modified the URL * Renamed json * renamed all auRL * Adding VALTRACK-V4 series board definitions Added VALTRACK-V4-VTS-ESP32C3 & VALTRACK-V4-MFW-ESP32-C3 board variants * Adding VALTRACK-V4 series board definitions Added VALTRACK-V4-VTS-ESP32C3 & VALTRACK-V4-MFW-ESP32-C3 board variants * Reverted package_esp32_index.template.json restored package_esp32_index.template.json from edits * Reverted package_esp32_index.template.json Added new line to package_esp32_index.template.json * Update Platformio CI (#7725) * WiFiClient example fix (#7711) * Modified WiFiClient example to use thingspeak instead of non-functionig sparkfun * Moved instructions to README * Fixed spelling * Added link to S3 datasheet --------- Co-authored-by: Jan Procházka <90197375+P-R-O-C-H-Y@users.noreply.github.com> * Mirror update from Heltec repository (#7709) Heltec updated the I2C pins in https://github.com/Heltec-Aaron-Lee/WiFi_Kit_series/commit/b10f4bf85d13fd01be80dcdb0eb59e6a8c8ba19a * Fixes BLE data printing (#7699) * Fixes BLE data printing BLE data has no '\0' terminator, therefore it can't be printed as a regular C string. This fix just prints the BLE data based on its length. * Simplify printing to a single call * split menu options + lora_32_V3 fix (#7697) * Change header gaurd name (#7696) * Fix Name (#7691) Wrong name in definitions. * Fix error in WiFiClient.cpp where the connect function fails for timeouts below 1 second (#7686) * Update WiFiClient.cpp This change will allow specifying connect timeouts below 1 second. Without this change, if connect timeouts under 1 second are given, the connect defaults to 0ms and fails. This will also allow timeouts in fractions of seconds, e.g. 1500ms. Without this change, connect timeouts are truncated to full second increments. * Make parameter timeout_ms clear * Change connection timeout_ms name for clarity --------- Co-authored-by: Rodrigo Garcia <rodrigo.garcia@espressif.com> * fixed the function header (#7674) * fixed the function header * fixed function name and paramaters --------- Co-authored-by: Jan Procházka <90197375+P-R-O-C-H-Y@users.noreply.github.com> * Ticker fix solving #6155 (#7664) * Wrapped Ticker functions with #pragma disabling -Wcast-function-type * Revert "Wrapped Ticker functions with #pragma disabling -Wcast-function-type" This reverts commit 160be7e67a10d01b6e44c4bf2521c0ccd6348976. * Fixed Ticker example * Modified Ticker example * Fixed LED_BUILTIN err for ESP32 --------- Co-authored-by: Jan Procházka <90197375+P-R-O-C-H-Y@users.noreply.github.com> * setPins fix ESP32 "specified pins are not supported by this chip." (#7646) [ESP32: SDMMCFS::begin hardcodes the usage of slot 1, only check if the pins match slot 1 pins.] setPins() was testing pins D1, D2 and D3 all against D1 ... fine in 1 pin mode when all are -1 not so much if you're trying to get 4 pin mode working. I now see this function doesn't really do anything on the ESP32...accept now correctly checks that you are trying to use the slot 1 pins. Co-authored-by: Jan Procházka <90197375+P-R-O-C-H-Y@users.noreply.github.com> * Allow passing IP as connect method parameter in WiFiClientSecure and skip unnecessary host-ip conversions (#7643) * Add LED_BUILTIN* definitions and initialization for LEDs to stop them floating. (#7636) Co-authored-by: Rodrigo Garcia <rodrigo.garcia@espressif.com> * Expand path to tinuf2 image when checking existence in platformio-build.py (#7631) * Expand path to tinuf2 image when checking existence * More isFiles fixed * Remove (useless) trailing semicolon from Print.cpp (#7622) * ADD: New variant Edgebox-ESP-100 (#7771) * ADD: New variant Edgebox-ESP-100 * FIX: Edgebox-ESP-100 Board.txt usb mode option change back to default value as ESP32S3 * Add Crabik Slot ESP32-S3 board (#7790) * Added Crabik Slot ESP32-S3 * Adding CPU frequency settings and removing excess from partition scheme settings * new variant LilyGO T-Display-S3 (#7763) * new variant LilyGO T-Display-S3 https://github.com/Xinyuan-LilyGO/T-Display-S3 * Add boards.txt definition --------- Co-authored-by: Me No Dev <me-no-dev@users.noreply.github.com> * Update get.py to support Apple ARM64 * Update package_esp32_index.template.json * WString Return bool (#7774) * Add Roboheart Hercules development board to the esp32-core (#7672) * added Roboheart Hercules pin definitions and board.txt entries * added package_roboheat.json for prototyping * Roboheart Hercules pins * Updated the pins * Delete package_roboheart.json * Requested changes --------- Co-authored-by: renebohne <rene.bohne@gmail.com> * Reword "ESP-IDF as Component" (#7812) I think "Arduino as an ESP-IDF component" or just "As ESP-IDF component" instead of "ESP-IDF as Component" is more correct way to name the link. 1. "ESP-IDF as Component" would imply that ESP-IDF is some sort of library for Arduino, which is (IMO) misleading, because it's true the other way around. 2. It's written as "Arduino as an ESP-IDF component" on the webpage it points to as well. - Also I removed the capitalization from "Component" as I have not found a reason why is it capitalized. * add new board Adafruit Feather ESP32-S3 Reverse TFT (#7811) * Multi threading examples (tasks, queues, semaphores, mutexes) (#7660) * Moved and renamed example ESP32/FreeRTOS to MultiThreading/BasicMultiThreading * Added dummy files * Modified original example * Fixed BasicMultiThreading.ino * Added Example demonstrating use of queues * Extended info in BasicMultiThreading * Renamed Queues to singular Queue * Added Mutex example * Added Semaphore example * Moved info from example to README * Moved doc from Mutex to README * Added Queue README * Removed unecesary text * Fixed grammar * Increased stack size for Sempahore example * Added headers into .ino files * Added word Example at the end of title in README * removed unused line * Added forgotten README * Modified BasicMultiThreading example * Added missing S3 entry in README * moved location * Update ESP-IDF libs * Update CMakeLists.txt * Update esptool to v4.4 * Add function timerAttachInterruptFlag (#7809) * Update esptool to v4.5 * ADC refactoring (#7827) * Adc refactored + periman implementation Peripheral manager still needs to be checked if the implementation is right. * switched to working solution for milivolts read * Periman detachbus fix * coding style * fix CI warnings * fix FreeRTOS example * Update ETH.cpp * Update FunctionalInterruptStruct.ino * Update package_esp32_index.template.json * Update package_esp32_index.template.json * Fixes for the latest IDF v5.1 * update esp-idf libs and toolchain * Turn OFF auto crystal frequency for ESP32 (needed by TWAI) * Update examples * Switch build to mostly use flags from files Includes can not be done this way * Reorganize flag files * Optimize chip build flags further * Revert defines from file. MBEDTLS_CONFIG_FILE does not properly expand * Add support for includes and defines from file * Replace old sdk path references in platform.txt * use gcc-ar (#8013) * Makes F_CPU generic for all SoC (#8007) Based on CONFIG_ESP_DEFAULT_CPU_FREQ_MHZ that is correctly defined in the sdkconfig file for each SoC. * TIMER refactoring (#7904) * refactor using GPtimer * Updated timer HW test * fix examples * Add v2.0.7 in issue template (#7871) * refactor using GPtimer * Updated timer HW test * fix examples * Revert "Add v2.0.7 in issue template (#7871)" This reverts commit fcc3b17d62ff57861f8913ca1f142fd5163b7457. * Update upload-artifact to v3 in HW CI * Revert "Update upload-artifact to v3 in HW CI" This reverts commit 1ba228071718ba37c4e26d98db22f77b2a7364a6. * replace resolution with frequency * remove count_down option * countup removed from examples + header * Refactored timer object * code cleanup + examples and tests fixes * TimerAlarm fix --------- Co-authored-by: Vojtěch Bartoška <76958047+VojtechBartoska@users.noreply.github.com> * [Docs] ADC and Timer API Update (+some docs fixes) (#7906) * updated docs * remove hall sensor docs Removed Hall sensor documentation as its no longer supported in IDF-5 * Fixed ESPNow examples location in docs * Last timer refactored API + gpio small fix * AlarmWrite fix * Fixes APLL/PLL with RTC Frequency (#8025) log_d() was displaying APLL for any SoC, but S3 and C3 has not such option, causing compilation errors. * Update IDF libs and fix OPI PSRAM on S3 * Add setMode function HardwareSerial.c to set the esp32 uart mode for use with RS485 auto RTS (#7935) * Added setMode function to set the esp32 uart mode Used to set the esp32 uart mode for use with RS485 Half Duplex and the auto RTS pin mode. This will set/clear the RTS pin output to control the RE/DE pin on most RS485 chips. * Add Success (bool) return in some functions * Add Success (bool) return code to some functions * Add Success (bool) return to some functions * Add Success (bool) return to some functions * Fix uartSetRxTimeout return type --------- Co-authored-by: Rodrigo Garcia <rodrigo.garcia@espressif.com> * Add support for esp-elf-gdb * WFG Crashfix (#8044) * Update component libs * IDF release/v5.1 (#8061) * IDF release/v5.1 bb9200acec * Update Esp.cpp * IDF release/v5.1 420ebd208a * Update esp32-hal-psram.c * Switch SDK to be an external package * fix path (#8096) * Makes UART work at any APB Frequency (#8097) Fixes HardwareSerial to work with IDF 5.1 on any CPU/APB Frequency (240MHz to 10MHZ), including user created low power modes. * Add required callbacks for TinyUSB DFU * Update version to 3.0.0 * Add ESP.getCoreVersion() and update ESP.getChipModel() * Update timer hal for the latest 5.1 * Use separate RX and TX buffer sizes in HTTP client optimizes download by allowing up to 4K packets to be received * Rename clock tree enum name in latest 5.1 * ESP32-H4 support was removed in ESP-IDF v5.1 * IDF release/v5.1 2004bf4e11 (#8165) * Deinit previous bus first (#8180) * TIMER - add timer_started flag, fix timerEnd() + timer HW test (#8135) * Add timer_started flag and stop before disable * Fix timer HW test * TOUCH - Peripheral manager implementation (#8129) * Touch periman implemented * Deinit previous bus first * LEDC Refactoring - Peripheral manager implemented (#8126) * LEDC periman implementation * Fix examples * Rework tone * Update ledc docs * fix missing bracket * Update analog funtions esp32-hal.h * Update CameraWebServer example * Fix HiFreq_ADC example * minor fixes - typos * Avoid calling tone/notone when tone already runs on dif. pin * Remove unused channels_resolution * GPIO - Peripheral manager implementation (#8179) * periman-implementation * fix RGB_BUILTIN and remove space * Enforces more consistency into Peripheral Manager (#8188) * Avoid log_i() message the first time a bus is assigned * Prevent operation with ESP32_BUS_TYPE_INIT * keeps coding style * do not print messages on INIT bus type * [Arduino Core 3.0.0] RMT IDF5.1 Refactoring (#7994) * RMT IDF5.1 refactoring * Fixes initial value setting * removed rmtRead() with user callback * simplify/remove Read data structure * Deep API simplification * fixes the examples * fix rmt.h * adds support to APB different frequencies * fixes CI and not defined RGB_BUILTIN * new RMT API and examples * fixing commentaties * Update esp32-hal-rgb-led.c * changes Filter API * Fixes example with Filter API * Update PlatformIO scripts for the upcoming 3.0 core (#8183) * Update PlatformIO scripts for the upcoming 3.0 core * Dynamically select proper framework-arduinoespressif32-libs package With this change the dev-platform will be dynamically configured to pull the latest .zip package with precompiled libraries from extracted from package_esp32_index.template.json * free memory on detach (#8264) * SPI - Peripheral manager implementation (#8255) * spi periman implementation * fix header file * remove unused struct * fix missing braces * Update esp32-hal-rmt.c (#8216) Optimizing Peripheral Manager Test * I2C - Peripheral manager implementation (#8220) * i2c-master periman initial commit * i2c-master make detachbus static + comment remove * i2c-slave periman implementation * SetPinBus to INIT on i2cDeinits * Fix slave pins deinit * remove dbg logs * set ret to ESP_FAIL instead of returning * Fix warnings in hal-spi caused by pariman transition * Update esptool.py to version 4.6 * Add platform support for ESP_SR * Add USB Type and valid pin check to periman * replace bus with spi->num+1 (#8279) * Remove default pins from SPI HAL * Add commented out handlers for esptool.js in TinyUSB CDC For future use * Add build defines for host os and fqbn (for debug purposes) * Provide proper memory caps total size * Update Esp.cpp * SDMMC - Peripheral manager implementation (#8289) * sdmmc periman implemented * save pins when SOC_SDMMC_USE_IOMUX * IDF release/v5.1 4bc762621d (#8292) * Adds missing pinMode (#8312) * Adds missing pinMode The example code lacks a pinMode() to initialize the GPIO 0 (button). In Arduino Core 3.0.0, it prints an error message when trying to read a not initialized GPIO. * Update KeyboardLogout.ino Adds <buttonPin> to keep code standard * Update KeyboardReprogram.ino Adds <buttonPin> to keep code standard * LEDC Fade implementation (#8338) * fade API + pointer fixes * Add fade api * Add fade example * update ledc docs * remove unused variables * fix path to example * Adds USB to Peripheral Manager - Arduino Core 3.0.0 (#8335) * ETHERNET - Peripheral manager implementation (#8297) * Peripheral manager implemented * remove unused variable * Add all RMII pins * fix typo * Adds HardwareSerial to Peripheral Manager Arduino 3.0.0 (#8328) * Do not limit ETHERNET in periman to only ESP32. SPI is also an option * Initial support for ESP32-C6 (#8337) * Add checks for SOC defines (#8351) * Add checks for SOC defines * Add SoC checks to BLE library * fix i2c compilation error * fix wrong placement of include * add check to SPI library * add check to USB library * add checks to Wire library * Feature/esp32h2 support (#8373) * Initial support for ESP32H2 * Additional changes for ESP32H2 * Update libs for ESP32H2 * Fix flashing on ESP32-H2 * Fix GPIO Configs for ESP32-C6 and ESP32-H2 * Update Timer test sketch * Fix upload flash parameters * Use ets_write_char_uart instead of ets_printf in log_printfv * Print full chip report when log level is sufficient (#8282) * ESP32-C3 does not have ets_write_char_uart * Fix BLE gap event name * HW Testing - Pytest update (#8389) * update tests requirements * remove already handled components * Update version of pytest * Add missing ESP32-H2 to hil.yml * Updated FreeRTOS names (#8418) * HW Testing - ESP32-C6 + ESP32-H2 fixes (#8404) * add C6/H2 to tests cfg.json * remove , * workflow runs-on runner by matrix * Add need for arduino tag to select runner * Add cryptography to requirements.txt * Removed duplicate TX1 define for H2 (#8402) * Fix broken examples * Fixes RMT filter & idle timing and setup (#8359) * Fixes Filter and Idle parameter to uint32 * Fixes Filter and Idle setup * Fixes it to 5.1Libs branch * fix RMT CLK source and Filter API * fixes missing ; * fixes missing ; * fixes RMT example * IDF release/v5.1 a7b62bbcaf (#8438) * Add workflow to build executables from python scripts (#8290) * Add workflow to build executables from python scripts * Push binary to tools * Enable executable signing on Windows * Update get.py * Push binary to tools * Try with multiple files * Try more actions * Try powershell * Restore tools so they do not get rebuilt * Finalize scripts * Push binary to tools * App rollback should be after PSRAM is initialized * Correcting RX1 to GPIO4 and TX1 to GPIO5 to be consistent with documentation. Previous pin use works but is inconsistent with C6 docs. * Fixes Memory Leak (#8486) * fixes preprocessor test (#8485) * fixes preprocessor test When using `#define USE_SOFT_AP` Change `&& not USE_SOFT_AP` ==> `&& !defined(USE_SOFT_AP)` * Adds any BLE capable device in WiFiProv.ino Removing ESP32 restriction for BLE Provisioning. * fix flash mode read out for C6 * Add option for custom partitions without restrictions * SD_MMC update (#8298) * Updated SD_MMC lib and examples * Removed getter implementation and commented usage in examples * squashed updates * IDF release/v5.1 f0437b945f (#8599) * Update package_esp32_index.template.json * Fix printf format build error in BTAdvertisedDeviceSet.cpp --------- Co-authored-by: Pedro Minatel <pedro.minatel@espressif.com> Co-authored-by: Rodrigo Garcia <rodrigo.garcia@espressif.com> Co-authored-by: Ha Thach <thach@tinyusb.org> Co-authored-by: Martin Turski <quiret@vfemail.net> Co-authored-by: raviypujar <raviypujar@gmail.com> Co-authored-by: Jason2866 <24528715+Jason2866@users.noreply.github.com> Co-authored-by: Tomáš Pilný <34927466+PilnyTomas@users.noreply.github.com> Co-authored-by: Jan Procházka <90197375+P-R-O-C-H-Y@users.noreply.github.com> Co-authored-by: Daniel Berlin <dberlin@dberlin.org> Co-authored-by: Nima Askari (نیما عسکری) <nimaltd@yahoo.com> Co-authored-by: rtpmsys <106180646+rtpmsys@users.noreply.github.com> Co-authored-by: bytiful <55647551+bytiful@users.noreply.github.com> Co-authored-by: tmfarrington <tmfarrington@users.noreply.github.com> Co-authored-by: Krzysiek S <chris.streh@gmail.com> Co-authored-by: surt <carl.olsson@gmail.com> Co-authored-by: Max Scheffler <max.scheffler@pm.me> Co-authored-by: Clemens Kirchgatterer <clemens@1541.org> Co-authored-by: Peter Pan's Techland <twinkle-pirate@hotmail.com> Co-authored-by: Roman <programmeofficemilkyway@gmail.com> Co-authored-by: Eistee <Eistee82@users.noreply.github.com> Co-authored-by: David McCurley <44048235+mrengineer7777@users.noreply.github.com> Co-authored-by: Gaya3N25 <30388176+Gaya3N25@users.noreply.github.com> Co-authored-by: renebohne <rene.bohne@gmail.com> Co-authored-by: Olivér Remény <25034625+remenyo@users.noreply.github.com> Co-authored-by: davidk88 <david.kotar@gmail.com> Co-authored-by: Vojtěch Bartoška <76958047+VojtechBartoska@users.noreply.github.com> Co-authored-by: James Armstrong <jamesarmstrong3@me.com> Co-authored-by: Valerii Koval <valeros@users.noreply.github.com> Co-authored-by: Peter G. Jensen <root@petergjoel.dk>
2023-10-05 11:54:25 +00:00
return DATA_TYPE
raise InputError("Invalid partition type")
ESP-IDF v5.1 (#7733) * Initial changes to compile under ESP-IDF v5.1 * Initial import for ESP-IDF v5.1 libs * Update toolchain * Update esp32-hal-psram.c * Add missing LDs * Update platform.txt * Stop some CI jobs, because they will always fail * Fix examples * Update app_httpd.cpp * Update ResetReason.ino * Warnings fixes * Added the example guideline and template (#7665) * Added the example guideline and template * PR review changes with some typos and grammar fixes * Changes according to the PR review * Added ESP32-S3 link to the datasheet (#7738) * Update HiFreq_ADC.ino * Replace periph_ctrl.h use because of deprecation * Replace esp_spi_flash.h use because of deprecation * Add includes to male mDNS::enableWorkstation compile * Fix ssl_client mbedtls_pk_parse_key callback * Update temperature sensor driver * Allow sketch_utils to compile with arduino-cli * Run CI with arduino-cli * Fix arduino-cli CI build on Windows * Refactor platform.txt to not use components installed through the board manager when running from git * Initial Peripheral Manager Implementation * Update SigmaDelta driver to use the new ESP-IDF driver API * Small improvements to peripheral manager and SigmaDelta * Remove deleted function from SigmaDelta header * Update DAC driver to use the new ESP-IDF driver API * Adds softAp(String) to make it compatible with ESP8266 (#7801) * Fix commentary (#7800) Minor fix based on observation done in https://github.com/espressif/arduino-esp32/issues/7795#issuecomment-1416868611 * add adafruit new board feather esp32s2 reserve tft (#7794) * bugfix: add <stdint.h> for uint8_t to avoid compilation failure (GCC 11.2.0) (#7744) * Adding 3rd party boards for VALTRACK-V4-VTS-ESP32-C3 & VALTRACK-V4-MFW-ESP32-C3 (#7735) * Added VALTRACK-V4-VTS-ESP32-C3 board definition Created pins_arduino.h & made changes to boards.txt with necessary changes * Modified the URL * Renamed json * renamed all auRL * Adding VALTRACK-V4 series board definitions Added VALTRACK-V4-VTS-ESP32C3 & VALTRACK-V4-MFW-ESP32-C3 board variants * Adding VALTRACK-V4 series board definitions Added VALTRACK-V4-VTS-ESP32C3 & VALTRACK-V4-MFW-ESP32-C3 board variants * Reverted package_esp32_index.template.json restored package_esp32_index.template.json from edits * Reverted package_esp32_index.template.json Added new line to package_esp32_index.template.json * Update Platformio CI (#7725) * WiFiClient example fix (#7711) * Modified WiFiClient example to use thingspeak instead of non-functionig sparkfun * Moved instructions to README * Fixed spelling * Added link to S3 datasheet --------- Co-authored-by: Jan Procházka <90197375+P-R-O-C-H-Y@users.noreply.github.com> * Mirror update from Heltec repository (#7709) Heltec updated the I2C pins in https://github.com/Heltec-Aaron-Lee/WiFi_Kit_series/commit/b10f4bf85d13fd01be80dcdb0eb59e6a8c8ba19a * Fixes BLE data printing (#7699) * Fixes BLE data printing BLE data has no '\0' terminator, therefore it can't be printed as a regular C string. This fix just prints the BLE data based on its length. * Simplify printing to a single call * split menu options + lora_32_V3 fix (#7697) * Change header gaurd name (#7696) * Fix Name (#7691) Wrong name in definitions. * Fix error in WiFiClient.cpp where the connect function fails for timeouts below 1 second (#7686) * Update WiFiClient.cpp This change will allow specifying connect timeouts below 1 second. Without this change, if connect timeouts under 1 second are given, the connect defaults to 0ms and fails. This will also allow timeouts in fractions of seconds, e.g. 1500ms. Without this change, connect timeouts are truncated to full second increments. * Make parameter timeout_ms clear * Change connection timeout_ms name for clarity --------- Co-authored-by: Rodrigo Garcia <rodrigo.garcia@espressif.com> * fixed the function header (#7674) * fixed the function header * fixed function name and paramaters --------- Co-authored-by: Jan Procházka <90197375+P-R-O-C-H-Y@users.noreply.github.com> * Ticker fix solving #6155 (#7664) * Wrapped Ticker functions with #pragma disabling -Wcast-function-type * Revert "Wrapped Ticker functions with #pragma disabling -Wcast-function-type" This reverts commit 160be7e67a10d01b6e44c4bf2521c0ccd6348976. * Fixed Ticker example * Modified Ticker example * Fixed LED_BUILTIN err for ESP32 --------- Co-authored-by: Jan Procházka <90197375+P-R-O-C-H-Y@users.noreply.github.com> * setPins fix ESP32 "specified pins are not supported by this chip." (#7646) [ESP32: SDMMCFS::begin hardcodes the usage of slot 1, only check if the pins match slot 1 pins.] setPins() was testing pins D1, D2 and D3 all against D1 ... fine in 1 pin mode when all are -1 not so much if you're trying to get 4 pin mode working. I now see this function doesn't really do anything on the ESP32...accept now correctly checks that you are trying to use the slot 1 pins. Co-authored-by: Jan Procházka <90197375+P-R-O-C-H-Y@users.noreply.github.com> * Allow passing IP as connect method parameter in WiFiClientSecure and skip unnecessary host-ip conversions (#7643) * Add LED_BUILTIN* definitions and initialization for LEDs to stop them floating. (#7636) Co-authored-by: Rodrigo Garcia <rodrigo.garcia@espressif.com> * Expand path to tinuf2 image when checking existence in platformio-build.py (#7631) * Expand path to tinuf2 image when checking existence * More isFiles fixed * Remove (useless) trailing semicolon from Print.cpp (#7622) * ADD: New variant Edgebox-ESP-100 (#7771) * ADD: New variant Edgebox-ESP-100 * FIX: Edgebox-ESP-100 Board.txt usb mode option change back to default value as ESP32S3 * Add Crabik Slot ESP32-S3 board (#7790) * Added Crabik Slot ESP32-S3 * Adding CPU frequency settings and removing excess from partition scheme settings * new variant LilyGO T-Display-S3 (#7763) * new variant LilyGO T-Display-S3 https://github.com/Xinyuan-LilyGO/T-Display-S3 * Add boards.txt definition --------- Co-authored-by: Me No Dev <me-no-dev@users.noreply.github.com> * Update get.py to support Apple ARM64 * Update package_esp32_index.template.json * WString Return bool (#7774) * Add Roboheart Hercules development board to the esp32-core (#7672) * added Roboheart Hercules pin definitions and board.txt entries * added package_roboheat.json for prototyping * Roboheart Hercules pins * Updated the pins * Delete package_roboheart.json * Requested changes --------- Co-authored-by: renebohne <rene.bohne@gmail.com> * Reword "ESP-IDF as Component" (#7812) I think "Arduino as an ESP-IDF component" or just "As ESP-IDF component" instead of "ESP-IDF as Component" is more correct way to name the link. 1. "ESP-IDF as Component" would imply that ESP-IDF is some sort of library for Arduino, which is (IMO) misleading, because it's true the other way around. 2. It's written as "Arduino as an ESP-IDF component" on the webpage it points to as well. - Also I removed the capitalization from "Component" as I have not found a reason why is it capitalized. * add new board Adafruit Feather ESP32-S3 Reverse TFT (#7811) * Multi threading examples (tasks, queues, semaphores, mutexes) (#7660) * Moved and renamed example ESP32/FreeRTOS to MultiThreading/BasicMultiThreading * Added dummy files * Modified original example * Fixed BasicMultiThreading.ino * Added Example demonstrating use of queues * Extended info in BasicMultiThreading * Renamed Queues to singular Queue * Added Mutex example * Added Semaphore example * Moved info from example to README * Moved doc from Mutex to README * Added Queue README * Removed unecesary text * Fixed grammar * Increased stack size for Sempahore example * Added headers into .ino files * Added word Example at the end of title in README * removed unused line * Added forgotten README * Modified BasicMultiThreading example * Added missing S3 entry in README * moved location * Update ESP-IDF libs * Update CMakeLists.txt * Update esptool to v4.4 * Add function timerAttachInterruptFlag (#7809) * Update esptool to v4.5 * ADC refactoring (#7827) * Adc refactored + periman implementation Peripheral manager still needs to be checked if the implementation is right. * switched to working solution for milivolts read * Periman detachbus fix * coding style * fix CI warnings * fix FreeRTOS example * Update ETH.cpp * Update FunctionalInterruptStruct.ino * Update package_esp32_index.template.json * Update package_esp32_index.template.json * Fixes for the latest IDF v5.1 * update esp-idf libs and toolchain * Turn OFF auto crystal frequency for ESP32 (needed by TWAI) * Update examples * Switch build to mostly use flags from files Includes can not be done this way * Reorganize flag files * Optimize chip build flags further * Revert defines from file. MBEDTLS_CONFIG_FILE does not properly expand * Add support for includes and defines from file * Replace old sdk path references in platform.txt * use gcc-ar (#8013) * Makes F_CPU generic for all SoC (#8007) Based on CONFIG_ESP_DEFAULT_CPU_FREQ_MHZ that is correctly defined in the sdkconfig file for each SoC. * TIMER refactoring (#7904) * refactor using GPtimer * Updated timer HW test * fix examples * Add v2.0.7 in issue template (#7871) * refactor using GPtimer * Updated timer HW test * fix examples * Revert "Add v2.0.7 in issue template (#7871)" This reverts commit fcc3b17d62ff57861f8913ca1f142fd5163b7457. * Update upload-artifact to v3 in HW CI * Revert "Update upload-artifact to v3 in HW CI" This reverts commit 1ba228071718ba37c4e26d98db22f77b2a7364a6. * replace resolution with frequency * remove count_down option * countup removed from examples + header * Refactored timer object * code cleanup + examples and tests fixes * TimerAlarm fix --------- Co-authored-by: Vojtěch Bartoška <76958047+VojtechBartoska@users.noreply.github.com> * [Docs] ADC and Timer API Update (+some docs fixes) (#7906) * updated docs * remove hall sensor docs Removed Hall sensor documentation as its no longer supported in IDF-5 * Fixed ESPNow examples location in docs * Last timer refactored API + gpio small fix * AlarmWrite fix * Fixes APLL/PLL with RTC Frequency (#8025) log_d() was displaying APLL for any SoC, but S3 and C3 has not such option, causing compilation errors. * Update IDF libs and fix OPI PSRAM on S3 * Add setMode function HardwareSerial.c to set the esp32 uart mode for use with RS485 auto RTS (#7935) * Added setMode function to set the esp32 uart mode Used to set the esp32 uart mode for use with RS485 Half Duplex and the auto RTS pin mode. This will set/clear the RTS pin output to control the RE/DE pin on most RS485 chips. * Add Success (bool) return in some functions * Add Success (bool) return code to some functions * Add Success (bool) return to some functions * Add Success (bool) return to some functions * Fix uartSetRxTimeout return type --------- Co-authored-by: Rodrigo Garcia <rodrigo.garcia@espressif.com> * Add support for esp-elf-gdb * WFG Crashfix (#8044) * Update component libs * IDF release/v5.1 (#8061) * IDF release/v5.1 bb9200acec * Update Esp.cpp * IDF release/v5.1 420ebd208a * Update esp32-hal-psram.c * Switch SDK to be an external package * fix path (#8096) * Makes UART work at any APB Frequency (#8097) Fixes HardwareSerial to work with IDF 5.1 on any CPU/APB Frequency (240MHz to 10MHZ), including user created low power modes. * Add required callbacks for TinyUSB DFU * Update version to 3.0.0 * Add ESP.getCoreVersion() and update ESP.getChipModel() * Update timer hal for the latest 5.1 * Use separate RX and TX buffer sizes in HTTP client optimizes download by allowing up to 4K packets to be received * Rename clock tree enum name in latest 5.1 * ESP32-H4 support was removed in ESP-IDF v5.1 * IDF release/v5.1 2004bf4e11 (#8165) * Deinit previous bus first (#8180) * TIMER - add timer_started flag, fix timerEnd() + timer HW test (#8135) * Add timer_started flag and stop before disable * Fix timer HW test * TOUCH - Peripheral manager implementation (#8129) * Touch periman implemented * Deinit previous bus first * LEDC Refactoring - Peripheral manager implemented (#8126) * LEDC periman implementation * Fix examples * Rework tone * Update ledc docs * fix missing bracket * Update analog funtions esp32-hal.h * Update CameraWebServer example * Fix HiFreq_ADC example * minor fixes - typos * Avoid calling tone/notone when tone already runs on dif. pin * Remove unused channels_resolution * GPIO - Peripheral manager implementation (#8179) * periman-implementation * fix RGB_BUILTIN and remove space * Enforces more consistency into Peripheral Manager (#8188) * Avoid log_i() message the first time a bus is assigned * Prevent operation with ESP32_BUS_TYPE_INIT * keeps coding style * do not print messages on INIT bus type * [Arduino Core 3.0.0] RMT IDF5.1 Refactoring (#7994) * RMT IDF5.1 refactoring * Fixes initial value setting * removed rmtRead() with user callback * simplify/remove Read data structure * Deep API simplification * fixes the examples * fix rmt.h * adds support to APB different frequencies * fixes CI and not defined RGB_BUILTIN * new RMT API and examples * fixing commentaties * Update esp32-hal-rgb-led.c * changes Filter API * Fixes example with Filter API * Update PlatformIO scripts for the upcoming 3.0 core (#8183) * Update PlatformIO scripts for the upcoming 3.0 core * Dynamically select proper framework-arduinoespressif32-libs package With this change the dev-platform will be dynamically configured to pull the latest .zip package with precompiled libraries from extracted from package_esp32_index.template.json * free memory on detach (#8264) * SPI - Peripheral manager implementation (#8255) * spi periman implementation * fix header file * remove unused struct * fix missing braces * Update esp32-hal-rmt.c (#8216) Optimizing Peripheral Manager Test * I2C - Peripheral manager implementation (#8220) * i2c-master periman initial commit * i2c-master make detachbus static + comment remove * i2c-slave periman implementation * SetPinBus to INIT on i2cDeinits * Fix slave pins deinit * remove dbg logs * set ret to ESP_FAIL instead of returning * Fix warnings in hal-spi caused by pariman transition * Update esptool.py to version 4.6 * Add platform support for ESP_SR * Add USB Type and valid pin check to periman * replace bus with spi->num+1 (#8279) * Remove default pins from SPI HAL * Add commented out handlers for esptool.js in TinyUSB CDC For future use * Add build defines for host os and fqbn (for debug purposes) * Provide proper memory caps total size * Update Esp.cpp * SDMMC - Peripheral manager implementation (#8289) * sdmmc periman implemented * save pins when SOC_SDMMC_USE_IOMUX * IDF release/v5.1 4bc762621d (#8292) * Adds missing pinMode (#8312) * Adds missing pinMode The example code lacks a pinMode() to initialize the GPIO 0 (button). In Arduino Core 3.0.0, it prints an error message when trying to read a not initialized GPIO. * Update KeyboardLogout.ino Adds <buttonPin> to keep code standard * Update KeyboardReprogram.ino Adds <buttonPin> to keep code standard * LEDC Fade implementation (#8338) * fade API + pointer fixes * Add fade api * Add fade example * update ledc docs * remove unused variables * fix path to example * Adds USB to Peripheral Manager - Arduino Core 3.0.0 (#8335) * ETHERNET - Peripheral manager implementation (#8297) * Peripheral manager implemented * remove unused variable * Add all RMII pins * fix typo * Adds HardwareSerial to Peripheral Manager Arduino 3.0.0 (#8328) * Do not limit ETHERNET in periman to only ESP32. SPI is also an option * Initial support for ESP32-C6 (#8337) * Add checks for SOC defines (#8351) * Add checks for SOC defines * Add SoC checks to BLE library * fix i2c compilation error * fix wrong placement of include * add check to SPI library * add check to USB library * add checks to Wire library * Feature/esp32h2 support (#8373) * Initial support for ESP32H2 * Additional changes for ESP32H2 * Update libs for ESP32H2 * Fix flashing on ESP32-H2 * Fix GPIO Configs for ESP32-C6 and ESP32-H2 * Update Timer test sketch * Fix upload flash parameters * Use ets_write_char_uart instead of ets_printf in log_printfv * Print full chip report when log level is sufficient (#8282) * ESP32-C3 does not have ets_write_char_uart * Fix BLE gap event name * HW Testing - Pytest update (#8389) * update tests requirements * remove already handled components * Update version of pytest * Add missing ESP32-H2 to hil.yml * Updated FreeRTOS names (#8418) * HW Testing - ESP32-C6 + ESP32-H2 fixes (#8404) * add C6/H2 to tests cfg.json * remove , * workflow runs-on runner by matrix * Add need for arduino tag to select runner * Add cryptography to requirements.txt * Removed duplicate TX1 define for H2 (#8402) * Fix broken examples * Fixes RMT filter & idle timing and setup (#8359) * Fixes Filter and Idle parameter to uint32 * Fixes Filter and Idle setup * Fixes it to 5.1Libs branch * fix RMT CLK source and Filter API * fixes missing ; * fixes missing ; * fixes RMT example * IDF release/v5.1 a7b62bbcaf (#8438) * Add workflow to build executables from python scripts (#8290) * Add workflow to build executables from python scripts * Push binary to tools * Enable executable signing on Windows * Update get.py * Push binary to tools * Try with multiple files * Try more actions * Try powershell * Restore tools so they do not get rebuilt * Finalize scripts * Push binary to tools * App rollback should be after PSRAM is initialized * Correcting RX1 to GPIO4 and TX1 to GPIO5 to be consistent with documentation. Previous pin use works but is inconsistent with C6 docs. * Fixes Memory Leak (#8486) * fixes preprocessor test (#8485) * fixes preprocessor test When using `#define USE_SOFT_AP` Change `&& not USE_SOFT_AP` ==> `&& !defined(USE_SOFT_AP)` * Adds any BLE capable device in WiFiProv.ino Removing ESP32 restriction for BLE Provisioning. * fix flash mode read out for C6 * Add option for custom partitions without restrictions * SD_MMC update (#8298) * Updated SD_MMC lib and examples * Removed getter implementation and commented usage in examples * squashed updates * IDF release/v5.1 f0437b945f (#8599) * Update package_esp32_index.template.json * Fix printf format build error in BTAdvertisedDeviceSet.cpp --------- Co-authored-by: Pedro Minatel <pedro.minatel@espressif.com> Co-authored-by: Rodrigo Garcia <rodrigo.garcia@espressif.com> Co-authored-by: Ha Thach <thach@tinyusb.org> Co-authored-by: Martin Turski <quiret@vfemail.net> Co-authored-by: raviypujar <raviypujar@gmail.com> Co-authored-by: Jason2866 <24528715+Jason2866@users.noreply.github.com> Co-authored-by: Tomáš Pilný <34927466+PilnyTomas@users.noreply.github.com> Co-authored-by: Jan Procházka <90197375+P-R-O-C-H-Y@users.noreply.github.com> Co-authored-by: Daniel Berlin <dberlin@dberlin.org> Co-authored-by: Nima Askari (نیما عسکری) <nimaltd@yahoo.com> Co-authored-by: rtpmsys <106180646+rtpmsys@users.noreply.github.com> Co-authored-by: bytiful <55647551+bytiful@users.noreply.github.com> Co-authored-by: tmfarrington <tmfarrington@users.noreply.github.com> Co-authored-by: Krzysiek S <chris.streh@gmail.com> Co-authored-by: surt <carl.olsson@gmail.com> Co-authored-by: Max Scheffler <max.scheffler@pm.me> Co-authored-by: Clemens Kirchgatterer <clemens@1541.org> Co-authored-by: Peter Pan's Techland <twinkle-pirate@hotmail.com> Co-authored-by: Roman <programmeofficemilkyway@gmail.com> Co-authored-by: Eistee <Eistee82@users.noreply.github.com> Co-authored-by: David McCurley <44048235+mrengineer7777@users.noreply.github.com> Co-authored-by: Gaya3N25 <30388176+Gaya3N25@users.noreply.github.com> Co-authored-by: renebohne <rene.bohne@gmail.com> Co-authored-by: Olivér Remény <25034625+remenyo@users.noreply.github.com> Co-authored-by: davidk88 <david.kotar@gmail.com> Co-authored-by: Vojtěch Bartoška <76958047+VojtechBartoska@users.noreply.github.com> Co-authored-by: James Armstrong <jamesarmstrong3@me.com> Co-authored-by: Valerii Koval <valeros@users.noreply.github.com> Co-authored-by: Peter G. Jensen <root@petergjoel.dk>
2023-10-05 11:54:25 +00:00
def add_extra_subtypes(csv):
for line_no in csv:
try:
fields = [line.strip() for line in line_no.split(",")]
ESP-IDF v5.1 (#7733) * Initial changes to compile under ESP-IDF v5.1 * Initial import for ESP-IDF v5.1 libs * Update toolchain * Update esp32-hal-psram.c * Add missing LDs * Update platform.txt * Stop some CI jobs, because they will always fail * Fix examples * Update app_httpd.cpp * Update ResetReason.ino * Warnings fixes * Added the example guideline and template (#7665) * Added the example guideline and template * PR review changes with some typos and grammar fixes * Changes according to the PR review * Added ESP32-S3 link to the datasheet (#7738) * Update HiFreq_ADC.ino * Replace periph_ctrl.h use because of deprecation * Replace esp_spi_flash.h use because of deprecation * Add includes to male mDNS::enableWorkstation compile * Fix ssl_client mbedtls_pk_parse_key callback * Update temperature sensor driver * Allow sketch_utils to compile with arduino-cli * Run CI with arduino-cli * Fix arduino-cli CI build on Windows * Refactor platform.txt to not use components installed through the board manager when running from git * Initial Peripheral Manager Implementation * Update SigmaDelta driver to use the new ESP-IDF driver API * Small improvements to peripheral manager and SigmaDelta * Remove deleted function from SigmaDelta header * Update DAC driver to use the new ESP-IDF driver API * Adds softAp(String) to make it compatible with ESP8266 (#7801) * Fix commentary (#7800) Minor fix based on observation done in https://github.com/espressif/arduino-esp32/issues/7795#issuecomment-1416868611 * add adafruit new board feather esp32s2 reserve tft (#7794) * bugfix: add <stdint.h> for uint8_t to avoid compilation failure (GCC 11.2.0) (#7744) * Adding 3rd party boards for VALTRACK-V4-VTS-ESP32-C3 & VALTRACK-V4-MFW-ESP32-C3 (#7735) * Added VALTRACK-V4-VTS-ESP32-C3 board definition Created pins_arduino.h & made changes to boards.txt with necessary changes * Modified the URL * Renamed json * renamed all auRL * Adding VALTRACK-V4 series board definitions Added VALTRACK-V4-VTS-ESP32C3 & VALTRACK-V4-MFW-ESP32-C3 board variants * Adding VALTRACK-V4 series board definitions Added VALTRACK-V4-VTS-ESP32C3 & VALTRACK-V4-MFW-ESP32-C3 board variants * Reverted package_esp32_index.template.json restored package_esp32_index.template.json from edits * Reverted package_esp32_index.template.json Added new line to package_esp32_index.template.json * Update Platformio CI (#7725) * WiFiClient example fix (#7711) * Modified WiFiClient example to use thingspeak instead of non-functionig sparkfun * Moved instructions to README * Fixed spelling * Added link to S3 datasheet --------- Co-authored-by: Jan Procházka <90197375+P-R-O-C-H-Y@users.noreply.github.com> * Mirror update from Heltec repository (#7709) Heltec updated the I2C pins in https://github.com/Heltec-Aaron-Lee/WiFi_Kit_series/commit/b10f4bf85d13fd01be80dcdb0eb59e6a8c8ba19a * Fixes BLE data printing (#7699) * Fixes BLE data printing BLE data has no '\0' terminator, therefore it can't be printed as a regular C string. This fix just prints the BLE data based on its length. * Simplify printing to a single call * split menu options + lora_32_V3 fix (#7697) * Change header gaurd name (#7696) * Fix Name (#7691) Wrong name in definitions. * Fix error in WiFiClient.cpp where the connect function fails for timeouts below 1 second (#7686) * Update WiFiClient.cpp This change will allow specifying connect timeouts below 1 second. Without this change, if connect timeouts under 1 second are given, the connect defaults to 0ms and fails. This will also allow timeouts in fractions of seconds, e.g. 1500ms. Without this change, connect timeouts are truncated to full second increments. * Make parameter timeout_ms clear * Change connection timeout_ms name for clarity --------- Co-authored-by: Rodrigo Garcia <rodrigo.garcia@espressif.com> * fixed the function header (#7674) * fixed the function header * fixed function name and paramaters --------- Co-authored-by: Jan Procházka <90197375+P-R-O-C-H-Y@users.noreply.github.com> * Ticker fix solving #6155 (#7664) * Wrapped Ticker functions with #pragma disabling -Wcast-function-type * Revert "Wrapped Ticker functions with #pragma disabling -Wcast-function-type" This reverts commit 160be7e67a10d01b6e44c4bf2521c0ccd6348976. * Fixed Ticker example * Modified Ticker example * Fixed LED_BUILTIN err for ESP32 --------- Co-authored-by: Jan Procházka <90197375+P-R-O-C-H-Y@users.noreply.github.com> * setPins fix ESP32 "specified pins are not supported by this chip." (#7646) [ESP32: SDMMCFS::begin hardcodes the usage of slot 1, only check if the pins match slot 1 pins.] setPins() was testing pins D1, D2 and D3 all against D1 ... fine in 1 pin mode when all are -1 not so much if you're trying to get 4 pin mode working. I now see this function doesn't really do anything on the ESP32...accept now correctly checks that you are trying to use the slot 1 pins. Co-authored-by: Jan Procházka <90197375+P-R-O-C-H-Y@users.noreply.github.com> * Allow passing IP as connect method parameter in WiFiClientSecure and skip unnecessary host-ip conversions (#7643) * Add LED_BUILTIN* definitions and initialization for LEDs to stop them floating. (#7636) Co-authored-by: Rodrigo Garcia <rodrigo.garcia@espressif.com> * Expand path to tinuf2 image when checking existence in platformio-build.py (#7631) * Expand path to tinuf2 image when checking existence * More isFiles fixed * Remove (useless) trailing semicolon from Print.cpp (#7622) * ADD: New variant Edgebox-ESP-100 (#7771) * ADD: New variant Edgebox-ESP-100 * FIX: Edgebox-ESP-100 Board.txt usb mode option change back to default value as ESP32S3 * Add Crabik Slot ESP32-S3 board (#7790) * Added Crabik Slot ESP32-S3 * Adding CPU frequency settings and removing excess from partition scheme settings * new variant LilyGO T-Display-S3 (#7763) * new variant LilyGO T-Display-S3 https://github.com/Xinyuan-LilyGO/T-Display-S3 * Add boards.txt definition --------- Co-authored-by: Me No Dev <me-no-dev@users.noreply.github.com> * Update get.py to support Apple ARM64 * Update package_esp32_index.template.json * WString Return bool (#7774) * Add Roboheart Hercules development board to the esp32-core (#7672) * added Roboheart Hercules pin definitions and board.txt entries * added package_roboheat.json for prototyping * Roboheart Hercules pins * Updated the pins * Delete package_roboheart.json * Requested changes --------- Co-authored-by: renebohne <rene.bohne@gmail.com> * Reword "ESP-IDF as Component" (#7812) I think "Arduino as an ESP-IDF component" or just "As ESP-IDF component" instead of "ESP-IDF as Component" is more correct way to name the link. 1. "ESP-IDF as Component" would imply that ESP-IDF is some sort of library for Arduino, which is (IMO) misleading, because it's true the other way around. 2. It's written as "Arduino as an ESP-IDF component" on the webpage it points to as well. - Also I removed the capitalization from "Component" as I have not found a reason why is it capitalized. * add new board Adafruit Feather ESP32-S3 Reverse TFT (#7811) * Multi threading examples (tasks, queues, semaphores, mutexes) (#7660) * Moved and renamed example ESP32/FreeRTOS to MultiThreading/BasicMultiThreading * Added dummy files * Modified original example * Fixed BasicMultiThreading.ino * Added Example demonstrating use of queues * Extended info in BasicMultiThreading * Renamed Queues to singular Queue * Added Mutex example * Added Semaphore example * Moved info from example to README * Moved doc from Mutex to README * Added Queue README * Removed unecesary text * Fixed grammar * Increased stack size for Sempahore example * Added headers into .ino files * Added word Example at the end of title in README * removed unused line * Added forgotten README * Modified BasicMultiThreading example * Added missing S3 entry in README * moved location * Update ESP-IDF libs * Update CMakeLists.txt * Update esptool to v4.4 * Add function timerAttachInterruptFlag (#7809) * Update esptool to v4.5 * ADC refactoring (#7827) * Adc refactored + periman implementation Peripheral manager still needs to be checked if the implementation is right. * switched to working solution for milivolts read * Periman detachbus fix * coding style * fix CI warnings * fix FreeRTOS example * Update ETH.cpp * Update FunctionalInterruptStruct.ino * Update package_esp32_index.template.json * Update package_esp32_index.template.json * Fixes for the latest IDF v5.1 * update esp-idf libs and toolchain * Turn OFF auto crystal frequency for ESP32 (needed by TWAI) * Update examples * Switch build to mostly use flags from files Includes can not be done this way * Reorganize flag files * Optimize chip build flags further * Revert defines from file. MBEDTLS_CONFIG_FILE does not properly expand * Add support for includes and defines from file * Replace old sdk path references in platform.txt * use gcc-ar (#8013) * Makes F_CPU generic for all SoC (#8007) Based on CONFIG_ESP_DEFAULT_CPU_FREQ_MHZ that is correctly defined in the sdkconfig file for each SoC. * TIMER refactoring (#7904) * refactor using GPtimer * Updated timer HW test * fix examples * Add v2.0.7 in issue template (#7871) * refactor using GPtimer * Updated timer HW test * fix examples * Revert "Add v2.0.7 in issue template (#7871)" This reverts commit fcc3b17d62ff57861f8913ca1f142fd5163b7457. * Update upload-artifact to v3 in HW CI * Revert "Update upload-artifact to v3 in HW CI" This reverts commit 1ba228071718ba37c4e26d98db22f77b2a7364a6. * replace resolution with frequency * remove count_down option * countup removed from examples + header * Refactored timer object * code cleanup + examples and tests fixes * TimerAlarm fix --------- Co-authored-by: Vojtěch Bartoška <76958047+VojtechBartoska@users.noreply.github.com> * [Docs] ADC and Timer API Update (+some docs fixes) (#7906) * updated docs * remove hall sensor docs Removed Hall sensor documentation as its no longer supported in IDF-5 * Fixed ESPNow examples location in docs * Last timer refactored API + gpio small fix * AlarmWrite fix * Fixes APLL/PLL with RTC Frequency (#8025) log_d() was displaying APLL for any SoC, but S3 and C3 has not such option, causing compilation errors. * Update IDF libs and fix OPI PSRAM on S3 * Add setMode function HardwareSerial.c to set the esp32 uart mode for use with RS485 auto RTS (#7935) * Added setMode function to set the esp32 uart mode Used to set the esp32 uart mode for use with RS485 Half Duplex and the auto RTS pin mode. This will set/clear the RTS pin output to control the RE/DE pin on most RS485 chips. * Add Success (bool) return in some functions * Add Success (bool) return code to some functions * Add Success (bool) return to some functions * Add Success (bool) return to some functions * Fix uartSetRxTimeout return type --------- Co-authored-by: Rodrigo Garcia <rodrigo.garcia@espressif.com> * Add support for esp-elf-gdb * WFG Crashfix (#8044) * Update component libs * IDF release/v5.1 (#8061) * IDF release/v5.1 bb9200acec * Update Esp.cpp * IDF release/v5.1 420ebd208a * Update esp32-hal-psram.c * Switch SDK to be an external package * fix path (#8096) * Makes UART work at any APB Frequency (#8097) Fixes HardwareSerial to work with IDF 5.1 on any CPU/APB Frequency (240MHz to 10MHZ), including user created low power modes. * Add required callbacks for TinyUSB DFU * Update version to 3.0.0 * Add ESP.getCoreVersion() and update ESP.getChipModel() * Update timer hal for the latest 5.1 * Use separate RX and TX buffer sizes in HTTP client optimizes download by allowing up to 4K packets to be received * Rename clock tree enum name in latest 5.1 * ESP32-H4 support was removed in ESP-IDF v5.1 * IDF release/v5.1 2004bf4e11 (#8165) * Deinit previous bus first (#8180) * TIMER - add timer_started flag, fix timerEnd() + timer HW test (#8135) * Add timer_started flag and stop before disable * Fix timer HW test * TOUCH - Peripheral manager implementation (#8129) * Touch periman implemented * Deinit previous bus first * LEDC Refactoring - Peripheral manager implemented (#8126) * LEDC periman implementation * Fix examples * Rework tone * Update ledc docs * fix missing bracket * Update analog funtions esp32-hal.h * Update CameraWebServer example * Fix HiFreq_ADC example * minor fixes - typos * Avoid calling tone/notone when tone already runs on dif. pin * Remove unused channels_resolution * GPIO - Peripheral manager implementation (#8179) * periman-implementation * fix RGB_BUILTIN and remove space * Enforces more consistency into Peripheral Manager (#8188) * Avoid log_i() message the first time a bus is assigned * Prevent operation with ESP32_BUS_TYPE_INIT * keeps coding style * do not print messages on INIT bus type * [Arduino Core 3.0.0] RMT IDF5.1 Refactoring (#7994) * RMT IDF5.1 refactoring * Fixes initial value setting * removed rmtRead() with user callback * simplify/remove Read data structure * Deep API simplification * fixes the examples * fix rmt.h * adds support to APB different frequencies * fixes CI and not defined RGB_BUILTIN * new RMT API and examples * fixing commentaties * Update esp32-hal-rgb-led.c * changes Filter API * Fixes example with Filter API * Update PlatformIO scripts for the upcoming 3.0 core (#8183) * Update PlatformIO scripts for the upcoming 3.0 core * Dynamically select proper framework-arduinoespressif32-libs package With this change the dev-platform will be dynamically configured to pull the latest .zip package with precompiled libraries from extracted from package_esp32_index.template.json * free memory on detach (#8264) * SPI - Peripheral manager implementation (#8255) * spi periman implementation * fix header file * remove unused struct * fix missing braces * Update esp32-hal-rmt.c (#8216) Optimizing Peripheral Manager Test * I2C - Peripheral manager implementation (#8220) * i2c-master periman initial commit * i2c-master make detachbus static + comment remove * i2c-slave periman implementation * SetPinBus to INIT on i2cDeinits * Fix slave pins deinit * remove dbg logs * set ret to ESP_FAIL instead of returning * Fix warnings in hal-spi caused by pariman transition * Update esptool.py to version 4.6 * Add platform support for ESP_SR * Add USB Type and valid pin check to periman * replace bus with spi->num+1 (#8279) * Remove default pins from SPI HAL * Add commented out handlers for esptool.js in TinyUSB CDC For future use * Add build defines for host os and fqbn (for debug purposes) * Provide proper memory caps total size * Update Esp.cpp * SDMMC - Peripheral manager implementation (#8289) * sdmmc periman implemented * save pins when SOC_SDMMC_USE_IOMUX * IDF release/v5.1 4bc762621d (#8292) * Adds missing pinMode (#8312) * Adds missing pinMode The example code lacks a pinMode() to initialize the GPIO 0 (button). In Arduino Core 3.0.0, it prints an error message when trying to read a not initialized GPIO. * Update KeyboardLogout.ino Adds <buttonPin> to keep code standard * Update KeyboardReprogram.ino Adds <buttonPin> to keep code standard * LEDC Fade implementation (#8338) * fade API + pointer fixes * Add fade api * Add fade example * update ledc docs * remove unused variables * fix path to example * Adds USB to Peripheral Manager - Arduino Core 3.0.0 (#8335) * ETHERNET - Peripheral manager implementation (#8297) * Peripheral manager implemented * remove unused variable * Add all RMII pins * fix typo * Adds HardwareSerial to Peripheral Manager Arduino 3.0.0 (#8328) * Do not limit ETHERNET in periman to only ESP32. SPI is also an option * Initial support for ESP32-C6 (#8337) * Add checks for SOC defines (#8351) * Add checks for SOC defines * Add SoC checks to BLE library * fix i2c compilation error * fix wrong placement of include * add check to SPI library * add check to USB library * add checks to Wire library * Feature/esp32h2 support (#8373) * Initial support for ESP32H2 * Additional changes for ESP32H2 * Update libs for ESP32H2 * Fix flashing on ESP32-H2 * Fix GPIO Configs for ESP32-C6 and ESP32-H2 * Update Timer test sketch * Fix upload flash parameters * Use ets_write_char_uart instead of ets_printf in log_printfv * Print full chip report when log level is sufficient (#8282) * ESP32-C3 does not have ets_write_char_uart * Fix BLE gap event name * HW Testing - Pytest update (#8389) * update tests requirements * remove already handled components * Update version of pytest * Add missing ESP32-H2 to hil.yml * Updated FreeRTOS names (#8418) * HW Testing - ESP32-C6 + ESP32-H2 fixes (#8404) * add C6/H2 to tests cfg.json * remove , * workflow runs-on runner by matrix * Add need for arduino tag to select runner * Add cryptography to requirements.txt * Removed duplicate TX1 define for H2 (#8402) * Fix broken examples * Fixes RMT filter & idle timing and setup (#8359) * Fixes Filter and Idle parameter to uint32 * Fixes Filter and Idle setup * Fixes it to 5.1Libs branch * fix RMT CLK source and Filter API * fixes missing ; * fixes missing ; * fixes RMT example * IDF release/v5.1 a7b62bbcaf (#8438) * Add workflow to build executables from python scripts (#8290) * Add workflow to build executables from python scripts * Push binary to tools * Enable executable signing on Windows * Update get.py * Push binary to tools * Try with multiple files * Try more actions * Try powershell * Restore tools so they do not get rebuilt * Finalize scripts * Push binary to tools * App rollback should be after PSRAM is initialized * Correcting RX1 to GPIO4 and TX1 to GPIO5 to be consistent with documentation. Previous pin use works but is inconsistent with C6 docs. * Fixes Memory Leak (#8486) * fixes preprocessor test (#8485) * fixes preprocessor test When using `#define USE_SOFT_AP` Change `&& not USE_SOFT_AP` ==> `&& !defined(USE_SOFT_AP)` * Adds any BLE capable device in WiFiProv.ino Removing ESP32 restriction for BLE Provisioning. * fix flash mode read out for C6 * Add option for custom partitions without restrictions * SD_MMC update (#8298) * Updated SD_MMC lib and examples * Removed getter implementation and commented usage in examples * squashed updates * IDF release/v5.1 f0437b945f (#8599) * Update package_esp32_index.template.json * Fix printf format build error in BTAdvertisedDeviceSet.cpp --------- Co-authored-by: Pedro Minatel <pedro.minatel@espressif.com> Co-authored-by: Rodrigo Garcia <rodrigo.garcia@espressif.com> Co-authored-by: Ha Thach <thach@tinyusb.org> Co-authored-by: Martin Turski <quiret@vfemail.net> Co-authored-by: raviypujar <raviypujar@gmail.com> Co-authored-by: Jason2866 <24528715+Jason2866@users.noreply.github.com> Co-authored-by: Tomáš Pilný <34927466+PilnyTomas@users.noreply.github.com> Co-authored-by: Jan Procházka <90197375+P-R-O-C-H-Y@users.noreply.github.com> Co-authored-by: Daniel Berlin <dberlin@dberlin.org> Co-authored-by: Nima Askari (نیما عسکری) <nimaltd@yahoo.com> Co-authored-by: rtpmsys <106180646+rtpmsys@users.noreply.github.com> Co-authored-by: bytiful <55647551+bytiful@users.noreply.github.com> Co-authored-by: tmfarrington <tmfarrington@users.noreply.github.com> Co-authored-by: Krzysiek S <chris.streh@gmail.com> Co-authored-by: surt <carl.olsson@gmail.com> Co-authored-by: Max Scheffler <max.scheffler@pm.me> Co-authored-by: Clemens Kirchgatterer <clemens@1541.org> Co-authored-by: Peter Pan's Techland <twinkle-pirate@hotmail.com> Co-authored-by: Roman <programmeofficemilkyway@gmail.com> Co-authored-by: Eistee <Eistee82@users.noreply.github.com> Co-authored-by: David McCurley <44048235+mrengineer7777@users.noreply.github.com> Co-authored-by: Gaya3N25 <30388176+Gaya3N25@users.noreply.github.com> Co-authored-by: renebohne <rene.bohne@gmail.com> Co-authored-by: Olivér Remény <25034625+remenyo@users.noreply.github.com> Co-authored-by: davidk88 <david.kotar@gmail.com> Co-authored-by: Vojtěch Bartoška <76958047+VojtechBartoska@users.noreply.github.com> Co-authored-by: James Armstrong <jamesarmstrong3@me.com> Co-authored-by: Valerii Koval <valeros@users.noreply.github.com> Co-authored-by: Peter G. Jensen <root@petergjoel.dk>
2023-10-05 11:54:25 +00:00
for subtype, subtype_values in SUBTYPES.items():
if int(fields[2], 16) in subtype_values.values() and subtype == get_partition_type(fields[0]):
raise ValueError("Found duplicate value in partition subtype")
ESP-IDF v5.1 (#7733) * Initial changes to compile under ESP-IDF v5.1 * Initial import for ESP-IDF v5.1 libs * Update toolchain * Update esp32-hal-psram.c * Add missing LDs * Update platform.txt * Stop some CI jobs, because they will always fail * Fix examples * Update app_httpd.cpp * Update ResetReason.ino * Warnings fixes * Added the example guideline and template (#7665) * Added the example guideline and template * PR review changes with some typos and grammar fixes * Changes according to the PR review * Added ESP32-S3 link to the datasheet (#7738) * Update HiFreq_ADC.ino * Replace periph_ctrl.h use because of deprecation * Replace esp_spi_flash.h use because of deprecation * Add includes to male mDNS::enableWorkstation compile * Fix ssl_client mbedtls_pk_parse_key callback * Update temperature sensor driver * Allow sketch_utils to compile with arduino-cli * Run CI with arduino-cli * Fix arduino-cli CI build on Windows * Refactor platform.txt to not use components installed through the board manager when running from git * Initial Peripheral Manager Implementation * Update SigmaDelta driver to use the new ESP-IDF driver API * Small improvements to peripheral manager and SigmaDelta * Remove deleted function from SigmaDelta header * Update DAC driver to use the new ESP-IDF driver API * Adds softAp(String) to make it compatible with ESP8266 (#7801) * Fix commentary (#7800) Minor fix based on observation done in https://github.com/espressif/arduino-esp32/issues/7795#issuecomment-1416868611 * add adafruit new board feather esp32s2 reserve tft (#7794) * bugfix: add <stdint.h> for uint8_t to avoid compilation failure (GCC 11.2.0) (#7744) * Adding 3rd party boards for VALTRACK-V4-VTS-ESP32-C3 & VALTRACK-V4-MFW-ESP32-C3 (#7735) * Added VALTRACK-V4-VTS-ESP32-C3 board definition Created pins_arduino.h & made changes to boards.txt with necessary changes * Modified the URL * Renamed json * renamed all auRL * Adding VALTRACK-V4 series board definitions Added VALTRACK-V4-VTS-ESP32C3 & VALTRACK-V4-MFW-ESP32-C3 board variants * Adding VALTRACK-V4 series board definitions Added VALTRACK-V4-VTS-ESP32C3 & VALTRACK-V4-MFW-ESP32-C3 board variants * Reverted package_esp32_index.template.json restored package_esp32_index.template.json from edits * Reverted package_esp32_index.template.json Added new line to package_esp32_index.template.json * Update Platformio CI (#7725) * WiFiClient example fix (#7711) * Modified WiFiClient example to use thingspeak instead of non-functionig sparkfun * Moved instructions to README * Fixed spelling * Added link to S3 datasheet --------- Co-authored-by: Jan Procházka <90197375+P-R-O-C-H-Y@users.noreply.github.com> * Mirror update from Heltec repository (#7709) Heltec updated the I2C pins in https://github.com/Heltec-Aaron-Lee/WiFi_Kit_series/commit/b10f4bf85d13fd01be80dcdb0eb59e6a8c8ba19a * Fixes BLE data printing (#7699) * Fixes BLE data printing BLE data has no '\0' terminator, therefore it can't be printed as a regular C string. This fix just prints the BLE data based on its length. * Simplify printing to a single call * split menu options + lora_32_V3 fix (#7697) * Change header gaurd name (#7696) * Fix Name (#7691) Wrong name in definitions. * Fix error in WiFiClient.cpp where the connect function fails for timeouts below 1 second (#7686) * Update WiFiClient.cpp This change will allow specifying connect timeouts below 1 second. Without this change, if connect timeouts under 1 second are given, the connect defaults to 0ms and fails. This will also allow timeouts in fractions of seconds, e.g. 1500ms. Without this change, connect timeouts are truncated to full second increments. * Make parameter timeout_ms clear * Change connection timeout_ms name for clarity --------- Co-authored-by: Rodrigo Garcia <rodrigo.garcia@espressif.com> * fixed the function header (#7674) * fixed the function header * fixed function name and paramaters --------- Co-authored-by: Jan Procházka <90197375+P-R-O-C-H-Y@users.noreply.github.com> * Ticker fix solving #6155 (#7664) * Wrapped Ticker functions with #pragma disabling -Wcast-function-type * Revert "Wrapped Ticker functions with #pragma disabling -Wcast-function-type" This reverts commit 160be7e67a10d01b6e44c4bf2521c0ccd6348976. * Fixed Ticker example * Modified Ticker example * Fixed LED_BUILTIN err for ESP32 --------- Co-authored-by: Jan Procházka <90197375+P-R-O-C-H-Y@users.noreply.github.com> * setPins fix ESP32 "specified pins are not supported by this chip." (#7646) [ESP32: SDMMCFS::begin hardcodes the usage of slot 1, only check if the pins match slot 1 pins.] setPins() was testing pins D1, D2 and D3 all against D1 ... fine in 1 pin mode when all are -1 not so much if you're trying to get 4 pin mode working. I now see this function doesn't really do anything on the ESP32...accept now correctly checks that you are trying to use the slot 1 pins. Co-authored-by: Jan Procházka <90197375+P-R-O-C-H-Y@users.noreply.github.com> * Allow passing IP as connect method parameter in WiFiClientSecure and skip unnecessary host-ip conversions (#7643) * Add LED_BUILTIN* definitions and initialization for LEDs to stop them floating. (#7636) Co-authored-by: Rodrigo Garcia <rodrigo.garcia@espressif.com> * Expand path to tinuf2 image when checking existence in platformio-build.py (#7631) * Expand path to tinuf2 image when checking existence * More isFiles fixed * Remove (useless) trailing semicolon from Print.cpp (#7622) * ADD: New variant Edgebox-ESP-100 (#7771) * ADD: New variant Edgebox-ESP-100 * FIX: Edgebox-ESP-100 Board.txt usb mode option change back to default value as ESP32S3 * Add Crabik Slot ESP32-S3 board (#7790) * Added Crabik Slot ESP32-S3 * Adding CPU frequency settings and removing excess from partition scheme settings * new variant LilyGO T-Display-S3 (#7763) * new variant LilyGO T-Display-S3 https://github.com/Xinyuan-LilyGO/T-Display-S3 * Add boards.txt definition --------- Co-authored-by: Me No Dev <me-no-dev@users.noreply.github.com> * Update get.py to support Apple ARM64 * Update package_esp32_index.template.json * WString Return bool (#7774) * Add Roboheart Hercules development board to the esp32-core (#7672) * added Roboheart Hercules pin definitions and board.txt entries * added package_roboheat.json for prototyping * Roboheart Hercules pins * Updated the pins * Delete package_roboheart.json * Requested changes --------- Co-authored-by: renebohne <rene.bohne@gmail.com> * Reword "ESP-IDF as Component" (#7812) I think "Arduino as an ESP-IDF component" or just "As ESP-IDF component" instead of "ESP-IDF as Component" is more correct way to name the link. 1. "ESP-IDF as Component" would imply that ESP-IDF is some sort of library for Arduino, which is (IMO) misleading, because it's true the other way around. 2. It's written as "Arduino as an ESP-IDF component" on the webpage it points to as well. - Also I removed the capitalization from "Component" as I have not found a reason why is it capitalized. * add new board Adafruit Feather ESP32-S3 Reverse TFT (#7811) * Multi threading examples (tasks, queues, semaphores, mutexes) (#7660) * Moved and renamed example ESP32/FreeRTOS to MultiThreading/BasicMultiThreading * Added dummy files * Modified original example * Fixed BasicMultiThreading.ino * Added Example demonstrating use of queues * Extended info in BasicMultiThreading * Renamed Queues to singular Queue * Added Mutex example * Added Semaphore example * Moved info from example to README * Moved doc from Mutex to README * Added Queue README * Removed unecesary text * Fixed grammar * Increased stack size for Sempahore example * Added headers into .ino files * Added word Example at the end of title in README * removed unused line * Added forgotten README * Modified BasicMultiThreading example * Added missing S3 entry in README * moved location * Update ESP-IDF libs * Update CMakeLists.txt * Update esptool to v4.4 * Add function timerAttachInterruptFlag (#7809) * Update esptool to v4.5 * ADC refactoring (#7827) * Adc refactored + periman implementation Peripheral manager still needs to be checked if the implementation is right. * switched to working solution for milivolts read * Periman detachbus fix * coding style * fix CI warnings * fix FreeRTOS example * Update ETH.cpp * Update FunctionalInterruptStruct.ino * Update package_esp32_index.template.json * Update package_esp32_index.template.json * Fixes for the latest IDF v5.1 * update esp-idf libs and toolchain * Turn OFF auto crystal frequency for ESP32 (needed by TWAI) * Update examples * Switch build to mostly use flags from files Includes can not be done this way * Reorganize flag files * Optimize chip build flags further * Revert defines from file. MBEDTLS_CONFIG_FILE does not properly expand * Add support for includes and defines from file * Replace old sdk path references in platform.txt * use gcc-ar (#8013) * Makes F_CPU generic for all SoC (#8007) Based on CONFIG_ESP_DEFAULT_CPU_FREQ_MHZ that is correctly defined in the sdkconfig file for each SoC. * TIMER refactoring (#7904) * refactor using GPtimer * Updated timer HW test * fix examples * Add v2.0.7 in issue template (#7871) * refactor using GPtimer * Updated timer HW test * fix examples * Revert "Add v2.0.7 in issue template (#7871)" This reverts commit fcc3b17d62ff57861f8913ca1f142fd5163b7457. * Update upload-artifact to v3 in HW CI * Revert "Update upload-artifact to v3 in HW CI" This reverts commit 1ba228071718ba37c4e26d98db22f77b2a7364a6. * replace resolution with frequency * remove count_down option * countup removed from examples + header * Refactored timer object * code cleanup + examples and tests fixes * TimerAlarm fix --------- Co-authored-by: Vojtěch Bartoška <76958047+VojtechBartoska@users.noreply.github.com> * [Docs] ADC and Timer API Update (+some docs fixes) (#7906) * updated docs * remove hall sensor docs Removed Hall sensor documentation as its no longer supported in IDF-5 * Fixed ESPNow examples location in docs * Last timer refactored API + gpio small fix * AlarmWrite fix * Fixes APLL/PLL with RTC Frequency (#8025) log_d() was displaying APLL for any SoC, but S3 and C3 has not such option, causing compilation errors. * Update IDF libs and fix OPI PSRAM on S3 * Add setMode function HardwareSerial.c to set the esp32 uart mode for use with RS485 auto RTS (#7935) * Added setMode function to set the esp32 uart mode Used to set the esp32 uart mode for use with RS485 Half Duplex and the auto RTS pin mode. This will set/clear the RTS pin output to control the RE/DE pin on most RS485 chips. * Add Success (bool) return in some functions * Add Success (bool) return code to some functions * Add Success (bool) return to some functions * Add Success (bool) return to some functions * Fix uartSetRxTimeout return type --------- Co-authored-by: Rodrigo Garcia <rodrigo.garcia@espressif.com> * Add support for esp-elf-gdb * WFG Crashfix (#8044) * Update component libs * IDF release/v5.1 (#8061) * IDF release/v5.1 bb9200acec * Update Esp.cpp * IDF release/v5.1 420ebd208a * Update esp32-hal-psram.c * Switch SDK to be an external package * fix path (#8096) * Makes UART work at any APB Frequency (#8097) Fixes HardwareSerial to work with IDF 5.1 on any CPU/APB Frequency (240MHz to 10MHZ), including user created low power modes. * Add required callbacks for TinyUSB DFU * Update version to 3.0.0 * Add ESP.getCoreVersion() and update ESP.getChipModel() * Update timer hal for the latest 5.1 * Use separate RX and TX buffer sizes in HTTP client optimizes download by allowing up to 4K packets to be received * Rename clock tree enum name in latest 5.1 * ESP32-H4 support was removed in ESP-IDF v5.1 * IDF release/v5.1 2004bf4e11 (#8165) * Deinit previous bus first (#8180) * TIMER - add timer_started flag, fix timerEnd() + timer HW test (#8135) * Add timer_started flag and stop before disable * Fix timer HW test * TOUCH - Peripheral manager implementation (#8129) * Touch periman implemented * Deinit previous bus first * LEDC Refactoring - Peripheral manager implemented (#8126) * LEDC periman implementation * Fix examples * Rework tone * Update ledc docs * fix missing bracket * Update analog funtions esp32-hal.h * Update CameraWebServer example * Fix HiFreq_ADC example * minor fixes - typos * Avoid calling tone/notone when tone already runs on dif. pin * Remove unused channels_resolution * GPIO - Peripheral manager implementation (#8179) * periman-implementation * fix RGB_BUILTIN and remove space * Enforces more consistency into Peripheral Manager (#8188) * Avoid log_i() message the first time a bus is assigned * Prevent operation with ESP32_BUS_TYPE_INIT * keeps coding style * do not print messages on INIT bus type * [Arduino Core 3.0.0] RMT IDF5.1 Refactoring (#7994) * RMT IDF5.1 refactoring * Fixes initial value setting * removed rmtRead() with user callback * simplify/remove Read data structure * Deep API simplification * fixes the examples * fix rmt.h * adds support to APB different frequencies * fixes CI and not defined RGB_BUILTIN * new RMT API and examples * fixing commentaties * Update esp32-hal-rgb-led.c * changes Filter API * Fixes example with Filter API * Update PlatformIO scripts for the upcoming 3.0 core (#8183) * Update PlatformIO scripts for the upcoming 3.0 core * Dynamically select proper framework-arduinoespressif32-libs package With this change the dev-platform will be dynamically configured to pull the latest .zip package with precompiled libraries from extracted from package_esp32_index.template.json * free memory on detach (#8264) * SPI - Peripheral manager implementation (#8255) * spi periman implementation * fix header file * remove unused struct * fix missing braces * Update esp32-hal-rmt.c (#8216) Optimizing Peripheral Manager Test * I2C - Peripheral manager implementation (#8220) * i2c-master periman initial commit * i2c-master make detachbus static + comment remove * i2c-slave periman implementation * SetPinBus to INIT on i2cDeinits * Fix slave pins deinit * remove dbg logs * set ret to ESP_FAIL instead of returning * Fix warnings in hal-spi caused by pariman transition * Update esptool.py to version 4.6 * Add platform support for ESP_SR * Add USB Type and valid pin check to periman * replace bus with spi->num+1 (#8279) * Remove default pins from SPI HAL * Add commented out handlers for esptool.js in TinyUSB CDC For future use * Add build defines for host os and fqbn (for debug purposes) * Provide proper memory caps total size * Update Esp.cpp * SDMMC - Peripheral manager implementation (#8289) * sdmmc periman implemented * save pins when SOC_SDMMC_USE_IOMUX * IDF release/v5.1 4bc762621d (#8292) * Adds missing pinMode (#8312) * Adds missing pinMode The example code lacks a pinMode() to initialize the GPIO 0 (button). In Arduino Core 3.0.0, it prints an error message when trying to read a not initialized GPIO. * Update KeyboardLogout.ino Adds <buttonPin> to keep code standard * Update KeyboardReprogram.ino Adds <buttonPin> to keep code standard * LEDC Fade implementation (#8338) * fade API + pointer fixes * Add fade api * Add fade example * update ledc docs * remove unused variables * fix path to example * Adds USB to Peripheral Manager - Arduino Core 3.0.0 (#8335) * ETHERNET - Peripheral manager implementation (#8297) * Peripheral manager implemented * remove unused variable * Add all RMII pins * fix typo * Adds HardwareSerial to Peripheral Manager Arduino 3.0.0 (#8328) * Do not limit ETHERNET in periman to only ESP32. SPI is also an option * Initial support for ESP32-C6 (#8337) * Add checks for SOC defines (#8351) * Add checks for SOC defines * Add SoC checks to BLE library * fix i2c compilation error * fix wrong placement of include * add check to SPI library * add check to USB library * add checks to Wire library * Feature/esp32h2 support (#8373) * Initial support for ESP32H2 * Additional changes for ESP32H2 * Update libs for ESP32H2 * Fix flashing on ESP32-H2 * Fix GPIO Configs for ESP32-C6 and ESP32-H2 * Update Timer test sketch * Fix upload flash parameters * Use ets_write_char_uart instead of ets_printf in log_printfv * Print full chip report when log level is sufficient (#8282) * ESP32-C3 does not have ets_write_char_uart * Fix BLE gap event name * HW Testing - Pytest update (#8389) * update tests requirements * remove already handled components * Update version of pytest * Add missing ESP32-H2 to hil.yml * Updated FreeRTOS names (#8418) * HW Testing - ESP32-C6 + ESP32-H2 fixes (#8404) * add C6/H2 to tests cfg.json * remove , * workflow runs-on runner by matrix * Add need for arduino tag to select runner * Add cryptography to requirements.txt * Removed duplicate TX1 define for H2 (#8402) * Fix broken examples * Fixes RMT filter & idle timing and setup (#8359) * Fixes Filter and Idle parameter to uint32 * Fixes Filter and Idle setup * Fixes it to 5.1Libs branch * fix RMT CLK source and Filter API * fixes missing ; * fixes missing ; * fixes RMT example * IDF release/v5.1 a7b62bbcaf (#8438) * Add workflow to build executables from python scripts (#8290) * Add workflow to build executables from python scripts * Push binary to tools * Enable executable signing on Windows * Update get.py * Push binary to tools * Try with multiple files * Try more actions * Try powershell * Restore tools so they do not get rebuilt * Finalize scripts * Push binary to tools * App rollback should be after PSRAM is initialized * Correcting RX1 to GPIO4 and TX1 to GPIO5 to be consistent with documentation. Previous pin use works but is inconsistent with C6 docs. * Fixes Memory Leak (#8486) * fixes preprocessor test (#8485) * fixes preprocessor test When using `#define USE_SOFT_AP` Change `&& not USE_SOFT_AP` ==> `&& !defined(USE_SOFT_AP)` * Adds any BLE capable device in WiFiProv.ino Removing ESP32 restriction for BLE Provisioning. * fix flash mode read out for C6 * Add option for custom partitions without restrictions * SD_MMC update (#8298) * Updated SD_MMC lib and examples * Removed getter implementation and commented usage in examples * squashed updates * IDF release/v5.1 f0437b945f (#8599) * Update package_esp32_index.template.json * Fix printf format build error in BTAdvertisedDeviceSet.cpp --------- Co-authored-by: Pedro Minatel <pedro.minatel@espressif.com> Co-authored-by: Rodrigo Garcia <rodrigo.garcia@espressif.com> Co-authored-by: Ha Thach <thach@tinyusb.org> Co-authored-by: Martin Turski <quiret@vfemail.net> Co-authored-by: raviypujar <raviypujar@gmail.com> Co-authored-by: Jason2866 <24528715+Jason2866@users.noreply.github.com> Co-authored-by: Tomáš Pilný <34927466+PilnyTomas@users.noreply.github.com> Co-authored-by: Jan Procházka <90197375+P-R-O-C-H-Y@users.noreply.github.com> Co-authored-by: Daniel Berlin <dberlin@dberlin.org> Co-authored-by: Nima Askari (نیما عسکری) <nimaltd@yahoo.com> Co-authored-by: rtpmsys <106180646+rtpmsys@users.noreply.github.com> Co-authored-by: bytiful <55647551+bytiful@users.noreply.github.com> Co-authored-by: tmfarrington <tmfarrington@users.noreply.github.com> Co-authored-by: Krzysiek S <chris.streh@gmail.com> Co-authored-by: surt <carl.olsson@gmail.com> Co-authored-by: Max Scheffler <max.scheffler@pm.me> Co-authored-by: Clemens Kirchgatterer <clemens@1541.org> Co-authored-by: Peter Pan's Techland <twinkle-pirate@hotmail.com> Co-authored-by: Roman <programmeofficemilkyway@gmail.com> Co-authored-by: Eistee <Eistee82@users.noreply.github.com> Co-authored-by: David McCurley <44048235+mrengineer7777@users.noreply.github.com> Co-authored-by: Gaya3N25 <30388176+Gaya3N25@users.noreply.github.com> Co-authored-by: renebohne <rene.bohne@gmail.com> Co-authored-by: Olivér Remény <25034625+remenyo@users.noreply.github.com> Co-authored-by: davidk88 <david.kotar@gmail.com> Co-authored-by: Vojtěch Bartoška <76958047+VojtechBartoska@users.noreply.github.com> Co-authored-by: James Armstrong <jamesarmstrong3@me.com> Co-authored-by: Valerii Koval <valeros@users.noreply.github.com> Co-authored-by: Peter G. Jensen <root@petergjoel.dk>
2023-10-05 11:54:25 +00:00
SUBTYPES[TYPES[fields[0]]][fields[1]] = int(fields[2], 16)
except InputError as err:
raise InputError("Error parsing custom subtypes: %s" % err)
quiet = False
md5sum = True
ESP-IDF v5.1 (#7733) * Initial changes to compile under ESP-IDF v5.1 * Initial import for ESP-IDF v5.1 libs * Update toolchain * Update esp32-hal-psram.c * Add missing LDs * Update platform.txt * Stop some CI jobs, because they will always fail * Fix examples * Update app_httpd.cpp * Update ResetReason.ino * Warnings fixes * Added the example guideline and template (#7665) * Added the example guideline and template * PR review changes with some typos and grammar fixes * Changes according to the PR review * Added ESP32-S3 link to the datasheet (#7738) * Update HiFreq_ADC.ino * Replace periph_ctrl.h use because of deprecation * Replace esp_spi_flash.h use because of deprecation * Add includes to male mDNS::enableWorkstation compile * Fix ssl_client mbedtls_pk_parse_key callback * Update temperature sensor driver * Allow sketch_utils to compile with arduino-cli * Run CI with arduino-cli * Fix arduino-cli CI build on Windows * Refactor platform.txt to not use components installed through the board manager when running from git * Initial Peripheral Manager Implementation * Update SigmaDelta driver to use the new ESP-IDF driver API * Small improvements to peripheral manager and SigmaDelta * Remove deleted function from SigmaDelta header * Update DAC driver to use the new ESP-IDF driver API * Adds softAp(String) to make it compatible with ESP8266 (#7801) * Fix commentary (#7800) Minor fix based on observation done in https://github.com/espressif/arduino-esp32/issues/7795#issuecomment-1416868611 * add adafruit new board feather esp32s2 reserve tft (#7794) * bugfix: add <stdint.h> for uint8_t to avoid compilation failure (GCC 11.2.0) (#7744) * Adding 3rd party boards for VALTRACK-V4-VTS-ESP32-C3 & VALTRACK-V4-MFW-ESP32-C3 (#7735) * Added VALTRACK-V4-VTS-ESP32-C3 board definition Created pins_arduino.h & made changes to boards.txt with necessary changes * Modified the URL * Renamed json * renamed all auRL * Adding VALTRACK-V4 series board definitions Added VALTRACK-V4-VTS-ESP32C3 & VALTRACK-V4-MFW-ESP32-C3 board variants * Adding VALTRACK-V4 series board definitions Added VALTRACK-V4-VTS-ESP32C3 & VALTRACK-V4-MFW-ESP32-C3 board variants * Reverted package_esp32_index.template.json restored package_esp32_index.template.json from edits * Reverted package_esp32_index.template.json Added new line to package_esp32_index.template.json * Update Platformio CI (#7725) * WiFiClient example fix (#7711) * Modified WiFiClient example to use thingspeak instead of non-functionig sparkfun * Moved instructions to README * Fixed spelling * Added link to S3 datasheet --------- Co-authored-by: Jan Procházka <90197375+P-R-O-C-H-Y@users.noreply.github.com> * Mirror update from Heltec repository (#7709) Heltec updated the I2C pins in https://github.com/Heltec-Aaron-Lee/WiFi_Kit_series/commit/b10f4bf85d13fd01be80dcdb0eb59e6a8c8ba19a * Fixes BLE data printing (#7699) * Fixes BLE data printing BLE data has no '\0' terminator, therefore it can't be printed as a regular C string. This fix just prints the BLE data based on its length. * Simplify printing to a single call * split menu options + lora_32_V3 fix (#7697) * Change header gaurd name (#7696) * Fix Name (#7691) Wrong name in definitions. * Fix error in WiFiClient.cpp where the connect function fails for timeouts below 1 second (#7686) * Update WiFiClient.cpp This change will allow specifying connect timeouts below 1 second. Without this change, if connect timeouts under 1 second are given, the connect defaults to 0ms and fails. This will also allow timeouts in fractions of seconds, e.g. 1500ms. Without this change, connect timeouts are truncated to full second increments. * Make parameter timeout_ms clear * Change connection timeout_ms name for clarity --------- Co-authored-by: Rodrigo Garcia <rodrigo.garcia@espressif.com> * fixed the function header (#7674) * fixed the function header * fixed function name and paramaters --------- Co-authored-by: Jan Procházka <90197375+P-R-O-C-H-Y@users.noreply.github.com> * Ticker fix solving #6155 (#7664) * Wrapped Ticker functions with #pragma disabling -Wcast-function-type * Revert "Wrapped Ticker functions with #pragma disabling -Wcast-function-type" This reverts commit 160be7e67a10d01b6e44c4bf2521c0ccd6348976. * Fixed Ticker example * Modified Ticker example * Fixed LED_BUILTIN err for ESP32 --------- Co-authored-by: Jan Procházka <90197375+P-R-O-C-H-Y@users.noreply.github.com> * setPins fix ESP32 "specified pins are not supported by this chip." (#7646) [ESP32: SDMMCFS::begin hardcodes the usage of slot 1, only check if the pins match slot 1 pins.] setPins() was testing pins D1, D2 and D3 all against D1 ... fine in 1 pin mode when all are -1 not so much if you're trying to get 4 pin mode working. I now see this function doesn't really do anything on the ESP32...accept now correctly checks that you are trying to use the slot 1 pins. Co-authored-by: Jan Procházka <90197375+P-R-O-C-H-Y@users.noreply.github.com> * Allow passing IP as connect method parameter in WiFiClientSecure and skip unnecessary host-ip conversions (#7643) * Add LED_BUILTIN* definitions and initialization for LEDs to stop them floating. (#7636) Co-authored-by: Rodrigo Garcia <rodrigo.garcia@espressif.com> * Expand path to tinuf2 image when checking existence in platformio-build.py (#7631) * Expand path to tinuf2 image when checking existence * More isFiles fixed * Remove (useless) trailing semicolon from Print.cpp (#7622) * ADD: New variant Edgebox-ESP-100 (#7771) * ADD: New variant Edgebox-ESP-100 * FIX: Edgebox-ESP-100 Board.txt usb mode option change back to default value as ESP32S3 * Add Crabik Slot ESP32-S3 board (#7790) * Added Crabik Slot ESP32-S3 * Adding CPU frequency settings and removing excess from partition scheme settings * new variant LilyGO T-Display-S3 (#7763) * new variant LilyGO T-Display-S3 https://github.com/Xinyuan-LilyGO/T-Display-S3 * Add boards.txt definition --------- Co-authored-by: Me No Dev <me-no-dev@users.noreply.github.com> * Update get.py to support Apple ARM64 * Update package_esp32_index.template.json * WString Return bool (#7774) * Add Roboheart Hercules development board to the esp32-core (#7672) * added Roboheart Hercules pin definitions and board.txt entries * added package_roboheat.json for prototyping * Roboheart Hercules pins * Updated the pins * Delete package_roboheart.json * Requested changes --------- Co-authored-by: renebohne <rene.bohne@gmail.com> * Reword "ESP-IDF as Component" (#7812) I think "Arduino as an ESP-IDF component" or just "As ESP-IDF component" instead of "ESP-IDF as Component" is more correct way to name the link. 1. "ESP-IDF as Component" would imply that ESP-IDF is some sort of library for Arduino, which is (IMO) misleading, because it's true the other way around. 2. It's written as "Arduino as an ESP-IDF component" on the webpage it points to as well. - Also I removed the capitalization from "Component" as I have not found a reason why is it capitalized. * add new board Adafruit Feather ESP32-S3 Reverse TFT (#7811) * Multi threading examples (tasks, queues, semaphores, mutexes) (#7660) * Moved and renamed example ESP32/FreeRTOS to MultiThreading/BasicMultiThreading * Added dummy files * Modified original example * Fixed BasicMultiThreading.ino * Added Example demonstrating use of queues * Extended info in BasicMultiThreading * Renamed Queues to singular Queue * Added Mutex example * Added Semaphore example * Moved info from example to README * Moved doc from Mutex to README * Added Queue README * Removed unecesary text * Fixed grammar * Increased stack size for Sempahore example * Added headers into .ino files * Added word Example at the end of title in README * removed unused line * Added forgotten README * Modified BasicMultiThreading example * Added missing S3 entry in README * moved location * Update ESP-IDF libs * Update CMakeLists.txt * Update esptool to v4.4 * Add function timerAttachInterruptFlag (#7809) * Update esptool to v4.5 * ADC refactoring (#7827) * Adc refactored + periman implementation Peripheral manager still needs to be checked if the implementation is right. * switched to working solution for milivolts read * Periman detachbus fix * coding style * fix CI warnings * fix FreeRTOS example * Update ETH.cpp * Update FunctionalInterruptStruct.ino * Update package_esp32_index.template.json * Update package_esp32_index.template.json * Fixes for the latest IDF v5.1 * update esp-idf libs and toolchain * Turn OFF auto crystal frequency for ESP32 (needed by TWAI) * Update examples * Switch build to mostly use flags from files Includes can not be done this way * Reorganize flag files * Optimize chip build flags further * Revert defines from file. MBEDTLS_CONFIG_FILE does not properly expand * Add support for includes and defines from file * Replace old sdk path references in platform.txt * use gcc-ar (#8013) * Makes F_CPU generic for all SoC (#8007) Based on CONFIG_ESP_DEFAULT_CPU_FREQ_MHZ that is correctly defined in the sdkconfig file for each SoC. * TIMER refactoring (#7904) * refactor using GPtimer * Updated timer HW test * fix examples * Add v2.0.7 in issue template (#7871) * refactor using GPtimer * Updated timer HW test * fix examples * Revert "Add v2.0.7 in issue template (#7871)" This reverts commit fcc3b17d62ff57861f8913ca1f142fd5163b7457. * Update upload-artifact to v3 in HW CI * Revert "Update upload-artifact to v3 in HW CI" This reverts commit 1ba228071718ba37c4e26d98db22f77b2a7364a6. * replace resolution with frequency * remove count_down option * countup removed from examples + header * Refactored timer object * code cleanup + examples and tests fixes * TimerAlarm fix --------- Co-authored-by: Vojtěch Bartoška <76958047+VojtechBartoska@users.noreply.github.com> * [Docs] ADC and Timer API Update (+some docs fixes) (#7906) * updated docs * remove hall sensor docs Removed Hall sensor documentation as its no longer supported in IDF-5 * Fixed ESPNow examples location in docs * Last timer refactored API + gpio small fix * AlarmWrite fix * Fixes APLL/PLL with RTC Frequency (#8025) log_d() was displaying APLL for any SoC, but S3 and C3 has not such option, causing compilation errors. * Update IDF libs and fix OPI PSRAM on S3 * Add setMode function HardwareSerial.c to set the esp32 uart mode for use with RS485 auto RTS (#7935) * Added setMode function to set the esp32 uart mode Used to set the esp32 uart mode for use with RS485 Half Duplex and the auto RTS pin mode. This will set/clear the RTS pin output to control the RE/DE pin on most RS485 chips. * Add Success (bool) return in some functions * Add Success (bool) return code to some functions * Add Success (bool) return to some functions * Add Success (bool) return to some functions * Fix uartSetRxTimeout return type --------- Co-authored-by: Rodrigo Garcia <rodrigo.garcia@espressif.com> * Add support for esp-elf-gdb * WFG Crashfix (#8044) * Update component libs * IDF release/v5.1 (#8061) * IDF release/v5.1 bb9200acec * Update Esp.cpp * IDF release/v5.1 420ebd208a * Update esp32-hal-psram.c * Switch SDK to be an external package * fix path (#8096) * Makes UART work at any APB Frequency (#8097) Fixes HardwareSerial to work with IDF 5.1 on any CPU/APB Frequency (240MHz to 10MHZ), including user created low power modes. * Add required callbacks for TinyUSB DFU * Update version to 3.0.0 * Add ESP.getCoreVersion() and update ESP.getChipModel() * Update timer hal for the latest 5.1 * Use separate RX and TX buffer sizes in HTTP client optimizes download by allowing up to 4K packets to be received * Rename clock tree enum name in latest 5.1 * ESP32-H4 support was removed in ESP-IDF v5.1 * IDF release/v5.1 2004bf4e11 (#8165) * Deinit previous bus first (#8180) * TIMER - add timer_started flag, fix timerEnd() + timer HW test (#8135) * Add timer_started flag and stop before disable * Fix timer HW test * TOUCH - Peripheral manager implementation (#8129) * Touch periman implemented * Deinit previous bus first * LEDC Refactoring - Peripheral manager implemented (#8126) * LEDC periman implementation * Fix examples * Rework tone * Update ledc docs * fix missing bracket * Update analog funtions esp32-hal.h * Update CameraWebServer example * Fix HiFreq_ADC example * minor fixes - typos * Avoid calling tone/notone when tone already runs on dif. pin * Remove unused channels_resolution * GPIO - Peripheral manager implementation (#8179) * periman-implementation * fix RGB_BUILTIN and remove space * Enforces more consistency into Peripheral Manager (#8188) * Avoid log_i() message the first time a bus is assigned * Prevent operation with ESP32_BUS_TYPE_INIT * keeps coding style * do not print messages on INIT bus type * [Arduino Core 3.0.0] RMT IDF5.1 Refactoring (#7994) * RMT IDF5.1 refactoring * Fixes initial value setting * removed rmtRead() with user callback * simplify/remove Read data structure * Deep API simplification * fixes the examples * fix rmt.h * adds support to APB different frequencies * fixes CI and not defined RGB_BUILTIN * new RMT API and examples * fixing commentaties * Update esp32-hal-rgb-led.c * changes Filter API * Fixes example with Filter API * Update PlatformIO scripts for the upcoming 3.0 core (#8183) * Update PlatformIO scripts for the upcoming 3.0 core * Dynamically select proper framework-arduinoespressif32-libs package With this change the dev-platform will be dynamically configured to pull the latest .zip package with precompiled libraries from extracted from package_esp32_index.template.json * free memory on detach (#8264) * SPI - Peripheral manager implementation (#8255) * spi periman implementation * fix header file * remove unused struct * fix missing braces * Update esp32-hal-rmt.c (#8216) Optimizing Peripheral Manager Test * I2C - Peripheral manager implementation (#8220) * i2c-master periman initial commit * i2c-master make detachbus static + comment remove * i2c-slave periman implementation * SetPinBus to INIT on i2cDeinits * Fix slave pins deinit * remove dbg logs * set ret to ESP_FAIL instead of returning * Fix warnings in hal-spi caused by pariman transition * Update esptool.py to version 4.6 * Add platform support for ESP_SR * Add USB Type and valid pin check to periman * replace bus with spi->num+1 (#8279) * Remove default pins from SPI HAL * Add commented out handlers for esptool.js in TinyUSB CDC For future use * Add build defines for host os and fqbn (for debug purposes) * Provide proper memory caps total size * Update Esp.cpp * SDMMC - Peripheral manager implementation (#8289) * sdmmc periman implemented * save pins when SOC_SDMMC_USE_IOMUX * IDF release/v5.1 4bc762621d (#8292) * Adds missing pinMode (#8312) * Adds missing pinMode The example code lacks a pinMode() to initialize the GPIO 0 (button). In Arduino Core 3.0.0, it prints an error message when trying to read a not initialized GPIO. * Update KeyboardLogout.ino Adds <buttonPin> to keep code standard * Update KeyboardReprogram.ino Adds <buttonPin> to keep code standard * LEDC Fade implementation (#8338) * fade API + pointer fixes * Add fade api * Add fade example * update ledc docs * remove unused variables * fix path to example * Adds USB to Peripheral Manager - Arduino Core 3.0.0 (#8335) * ETHERNET - Peripheral manager implementation (#8297) * Peripheral manager implemented * remove unused variable * Add all RMII pins * fix typo * Adds HardwareSerial to Peripheral Manager Arduino 3.0.0 (#8328) * Do not limit ETHERNET in periman to only ESP32. SPI is also an option * Initial support for ESP32-C6 (#8337) * Add checks for SOC defines (#8351) * Add checks for SOC defines * Add SoC checks to BLE library * fix i2c compilation error * fix wrong placement of include * add check to SPI library * add check to USB library * add checks to Wire library * Feature/esp32h2 support (#8373) * Initial support for ESP32H2 * Additional changes for ESP32H2 * Update libs for ESP32H2 * Fix flashing on ESP32-H2 * Fix GPIO Configs for ESP32-C6 and ESP32-H2 * Update Timer test sketch * Fix upload flash parameters * Use ets_write_char_uart instead of ets_printf in log_printfv * Print full chip report when log level is sufficient (#8282) * ESP32-C3 does not have ets_write_char_uart * Fix BLE gap event name * HW Testing - Pytest update (#8389) * update tests requirements * remove already handled components * Update version of pytest * Add missing ESP32-H2 to hil.yml * Updated FreeRTOS names (#8418) * HW Testing - ESP32-C6 + ESP32-H2 fixes (#8404) * add C6/H2 to tests cfg.json * remove , * workflow runs-on runner by matrix * Add need for arduino tag to select runner * Add cryptography to requirements.txt * Removed duplicate TX1 define for H2 (#8402) * Fix broken examples * Fixes RMT filter & idle timing and setup (#8359) * Fixes Filter and Idle parameter to uint32 * Fixes Filter and Idle setup * Fixes it to 5.1Libs branch * fix RMT CLK source and Filter API * fixes missing ; * fixes missing ; * fixes RMT example * IDF release/v5.1 a7b62bbcaf (#8438) * Add workflow to build executables from python scripts (#8290) * Add workflow to build executables from python scripts * Push binary to tools * Enable executable signing on Windows * Update get.py * Push binary to tools * Try with multiple files * Try more actions * Try powershell * Restore tools so they do not get rebuilt * Finalize scripts * Push binary to tools * App rollback should be after PSRAM is initialized * Correcting RX1 to GPIO4 and TX1 to GPIO5 to be consistent with documentation. Previous pin use works but is inconsistent with C6 docs. * Fixes Memory Leak (#8486) * fixes preprocessor test (#8485) * fixes preprocessor test When using `#define USE_SOFT_AP` Change `&& not USE_SOFT_AP` ==> `&& !defined(USE_SOFT_AP)` * Adds any BLE capable device in WiFiProv.ino Removing ESP32 restriction for BLE Provisioning. * fix flash mode read out for C6 * Add option for custom partitions without restrictions * SD_MMC update (#8298) * Updated SD_MMC lib and examples * Removed getter implementation and commented usage in examples * squashed updates * IDF release/v5.1 f0437b945f (#8599) * Update package_esp32_index.template.json * Fix printf format build error in BTAdvertisedDeviceSet.cpp --------- Co-authored-by: Pedro Minatel <pedro.minatel@espressif.com> Co-authored-by: Rodrigo Garcia <rodrigo.garcia@espressif.com> Co-authored-by: Ha Thach <thach@tinyusb.org> Co-authored-by: Martin Turski <quiret@vfemail.net> Co-authored-by: raviypujar <raviypujar@gmail.com> Co-authored-by: Jason2866 <24528715+Jason2866@users.noreply.github.com> Co-authored-by: Tomáš Pilný <34927466+PilnyTomas@users.noreply.github.com> Co-authored-by: Jan Procházka <90197375+P-R-O-C-H-Y@users.noreply.github.com> Co-authored-by: Daniel Berlin <dberlin@dberlin.org> Co-authored-by: Nima Askari (نیما عسکری) <nimaltd@yahoo.com> Co-authored-by: rtpmsys <106180646+rtpmsys@users.noreply.github.com> Co-authored-by: bytiful <55647551+bytiful@users.noreply.github.com> Co-authored-by: tmfarrington <tmfarrington@users.noreply.github.com> Co-authored-by: Krzysiek S <chris.streh@gmail.com> Co-authored-by: surt <carl.olsson@gmail.com> Co-authored-by: Max Scheffler <max.scheffler@pm.me> Co-authored-by: Clemens Kirchgatterer <clemens@1541.org> Co-authored-by: Peter Pan's Techland <twinkle-pirate@hotmail.com> Co-authored-by: Roman <programmeofficemilkyway@gmail.com> Co-authored-by: Eistee <Eistee82@users.noreply.github.com> Co-authored-by: David McCurley <44048235+mrengineer7777@users.noreply.github.com> Co-authored-by: Gaya3N25 <30388176+Gaya3N25@users.noreply.github.com> Co-authored-by: renebohne <rene.bohne@gmail.com> Co-authored-by: Olivér Remény <25034625+remenyo@users.noreply.github.com> Co-authored-by: davidk88 <david.kotar@gmail.com> Co-authored-by: Vojtěch Bartoška <76958047+VojtechBartoska@users.noreply.github.com> Co-authored-by: James Armstrong <jamesarmstrong3@me.com> Co-authored-by: Valerii Koval <valeros@users.noreply.github.com> Co-authored-by: Peter G. Jensen <root@petergjoel.dk>
2023-10-05 11:54:25 +00:00
secure = SECURE_NONE
Update IDF to aaf1239 (#1539) * fix sdmmc config * Fix warnings in EEPROM from @Curclamas * remove leftover TAG in EEPROM * Initial add of @stickbreaker i2c * Add log_n * fix warnings when log is off * i2c code clean up and reorganization * add flags to interrupt allocator * fix sdmmc config * Fix warnings in EEPROM from @Curclamas * remove leftover TAG in EEPROM * fix errors with latest IDF * fix debug optimization (#1365) incorrect optimization for debugging tick markers. * Fix some missing BT header * Change BTSerial log calls * Update BLE lib * Arduino-ESP32 release management scripted (#1515) * Calculate an absolute path for a custom partitions table (#1452) * * Arduino-ESP32 release management scripted (ready-to-merge) * * secure env for espressif/arduino-esp32 * * build tests enabled * gitter webhook enabled * * gitter room link fixed * better comment * * filepaths fixed * BT Serial adjustments * * don't run sketch builds & tests for tagged builds * Return false from WiFi.hostByName() if hostname is not resolved * Free BT Memory when BT is not used * WIFI_MODE_NULL is not supported anymore * Select some key examples to build with PlatformIO to save some time * Update BLE lib * Fixed BLE lib * Major WiFi overhaul - auto reconnect on connection loss now works - moved to event groups - some code clean up and procedure optimizations - new methods to get a more elaborate system ststus * Add cmake tests to travis * Add initial AsyncUDP * Add NetBIOS lib and fix CMake includes * Add Initial WebServer * Fix WebServer and examples * travis not quiting on build fail * Try different travis build * Update IDF to aaf1239 * Fix WPS Example * fix script permission and add some fail tests to sketch builder * Add missing space in WiFiClient::write(Stream &stream)
2018-06-27 07:01:06 +00:00
offset_part_table = 0
def status(msg):
"""Print status message to stderr"""
if not quiet:
critical(msg)
def critical(msg):
"""Print critical message to stderr"""
Update IDF to aaf1239 (#1539) * fix sdmmc config * Fix warnings in EEPROM from @Curclamas * remove leftover TAG in EEPROM * Initial add of @stickbreaker i2c * Add log_n * fix warnings when log is off * i2c code clean up and reorganization * add flags to interrupt allocator * fix sdmmc config * Fix warnings in EEPROM from @Curclamas * remove leftover TAG in EEPROM * fix errors with latest IDF * fix debug optimization (#1365) incorrect optimization for debugging tick markers. * Fix some missing BT header * Change BTSerial log calls * Update BLE lib * Arduino-ESP32 release management scripted (#1515) * Calculate an absolute path for a custom partitions table (#1452) * * Arduino-ESP32 release management scripted (ready-to-merge) * * secure env for espressif/arduino-esp32 * * build tests enabled * gitter webhook enabled * * gitter room link fixed * better comment * * filepaths fixed * BT Serial adjustments * * don't run sketch builds & tests for tagged builds * Return false from WiFi.hostByName() if hostname is not resolved * Free BT Memory when BT is not used * WIFI_MODE_NULL is not supported anymore * Select some key examples to build with PlatformIO to save some time * Update BLE lib * Fixed BLE lib * Major WiFi overhaul - auto reconnect on connection loss now works - moved to event groups - some code clean up and procedure optimizations - new methods to get a more elaborate system ststus * Add cmake tests to travis * Add initial AsyncUDP * Add NetBIOS lib and fix CMake includes * Add Initial WebServer * Fix WebServer and examples * travis not quiting on build fail * Try different travis build * Update IDF to aaf1239 * Fix WPS Example * fix script permission and add some fail tests to sketch builder * Add missing space in WiFiClient::write(Stream &stream)
2018-06-27 07:01:06 +00:00
sys.stderr.write(msg)
sys.stderr.write("\n")
class PartitionTable(list):
def __init__(self):
super(PartitionTable, self).__init__(self)
@classmethod
def from_file(cls, f):
data = f.read()
data_is_binary = data[0:2] == PartitionDefinition.MAGIC_BYTES
if data_is_binary:
status("Parsing binary partition input...")
return cls.from_binary(data), True
data = data.decode()
status("Parsing CSV input...")
return cls.from_csv(data), False
@classmethod
def from_csv(cls, csv_contents): # noqa: C901
res = PartitionTable()
2017-09-22 09:28:54 +00:00
lines = csv_contents.splitlines()
def expand_vars(f):
f = os.path.expandvars(f)
m = re.match(r"(?<!\\)\$([A-Za-z_][A-Za-z0-9_]*)", f)
2017-09-22 09:28:54 +00:00
if m:
raise InputError("unknown variable '%s'" % m.group(1))
return f
for line_no in range(len(lines)):
2017-09-22 09:28:54 +00:00
line = expand_vars(lines[line_no]).strip()
if line.startswith("#") or len(line) == 0:
continue
try:
res.append(PartitionDefinition.from_csv(line, line_no + 1))
except InputError as err:
raise InputError(
"Error at line %d: %s\nPlease check extra_partition_subtypes.inc file in build/config directory"
% (line_no + 1, err)
)
except Exception:
critical("Unexpected error parsing CSV line %d: %s" % (line_no + 1, line))
raise
# fix up missing offsets & negative sizes
last_end = offset_part_table + PARTITION_TABLE_SIZE # first offset after partition table
for e in res:
if e.offset is not None and e.offset < last_end:
if e == res[0]:
raise InputError(
"CSV Error at line %d: Partitions overlap. Partition sets offset 0x%x. "
"But partition table occupies the whole sector 0x%x. "
"Use a free offset 0x%x or higher." % (e.line_no, e.offset, offset_part_table, last_end)
)
else:
raise InputError(
"CSV Error at line %d: Partitions overlap. Partition sets offset 0x%x. Previous partition ends 0x%x" # noqa: E501
% (e.line_no, e.offset, last_end)
)
if e.offset is None:
ESP-IDF v5.1 (#7733) * Initial changes to compile under ESP-IDF v5.1 * Initial import for ESP-IDF v5.1 libs * Update toolchain * Update esp32-hal-psram.c * Add missing LDs * Update platform.txt * Stop some CI jobs, because they will always fail * Fix examples * Update app_httpd.cpp * Update ResetReason.ino * Warnings fixes * Added the example guideline and template (#7665) * Added the example guideline and template * PR review changes with some typos and grammar fixes * Changes according to the PR review * Added ESP32-S3 link to the datasheet (#7738) * Update HiFreq_ADC.ino * Replace periph_ctrl.h use because of deprecation * Replace esp_spi_flash.h use because of deprecation * Add includes to male mDNS::enableWorkstation compile * Fix ssl_client mbedtls_pk_parse_key callback * Update temperature sensor driver * Allow sketch_utils to compile with arduino-cli * Run CI with arduino-cli * Fix arduino-cli CI build on Windows * Refactor platform.txt to not use components installed through the board manager when running from git * Initial Peripheral Manager Implementation * Update SigmaDelta driver to use the new ESP-IDF driver API * Small improvements to peripheral manager and SigmaDelta * Remove deleted function from SigmaDelta header * Update DAC driver to use the new ESP-IDF driver API * Adds softAp(String) to make it compatible with ESP8266 (#7801) * Fix commentary (#7800) Minor fix based on observation done in https://github.com/espressif/arduino-esp32/issues/7795#issuecomment-1416868611 * add adafruit new board feather esp32s2 reserve tft (#7794) * bugfix: add <stdint.h> for uint8_t to avoid compilation failure (GCC 11.2.0) (#7744) * Adding 3rd party boards for VALTRACK-V4-VTS-ESP32-C3 & VALTRACK-V4-MFW-ESP32-C3 (#7735) * Added VALTRACK-V4-VTS-ESP32-C3 board definition Created pins_arduino.h & made changes to boards.txt with necessary changes * Modified the URL * Renamed json * renamed all auRL * Adding VALTRACK-V4 series board definitions Added VALTRACK-V4-VTS-ESP32C3 & VALTRACK-V4-MFW-ESP32-C3 board variants * Adding VALTRACK-V4 series board definitions Added VALTRACK-V4-VTS-ESP32C3 & VALTRACK-V4-MFW-ESP32-C3 board variants * Reverted package_esp32_index.template.json restored package_esp32_index.template.json from edits * Reverted package_esp32_index.template.json Added new line to package_esp32_index.template.json * Update Platformio CI (#7725) * WiFiClient example fix (#7711) * Modified WiFiClient example to use thingspeak instead of non-functionig sparkfun * Moved instructions to README * Fixed spelling * Added link to S3 datasheet --------- Co-authored-by: Jan Procházka <90197375+P-R-O-C-H-Y@users.noreply.github.com> * Mirror update from Heltec repository (#7709) Heltec updated the I2C pins in https://github.com/Heltec-Aaron-Lee/WiFi_Kit_series/commit/b10f4bf85d13fd01be80dcdb0eb59e6a8c8ba19a * Fixes BLE data printing (#7699) * Fixes BLE data printing BLE data has no '\0' terminator, therefore it can't be printed as a regular C string. This fix just prints the BLE data based on its length. * Simplify printing to a single call * split menu options + lora_32_V3 fix (#7697) * Change header gaurd name (#7696) * Fix Name (#7691) Wrong name in definitions. * Fix error in WiFiClient.cpp where the connect function fails for timeouts below 1 second (#7686) * Update WiFiClient.cpp This change will allow specifying connect timeouts below 1 second. Without this change, if connect timeouts under 1 second are given, the connect defaults to 0ms and fails. This will also allow timeouts in fractions of seconds, e.g. 1500ms. Without this change, connect timeouts are truncated to full second increments. * Make parameter timeout_ms clear * Change connection timeout_ms name for clarity --------- Co-authored-by: Rodrigo Garcia <rodrigo.garcia@espressif.com> * fixed the function header (#7674) * fixed the function header * fixed function name and paramaters --------- Co-authored-by: Jan Procházka <90197375+P-R-O-C-H-Y@users.noreply.github.com> * Ticker fix solving #6155 (#7664) * Wrapped Ticker functions with #pragma disabling -Wcast-function-type * Revert "Wrapped Ticker functions with #pragma disabling -Wcast-function-type" This reverts commit 160be7e67a10d01b6e44c4bf2521c0ccd6348976. * Fixed Ticker example * Modified Ticker example * Fixed LED_BUILTIN err for ESP32 --------- Co-authored-by: Jan Procházka <90197375+P-R-O-C-H-Y@users.noreply.github.com> * setPins fix ESP32 "specified pins are not supported by this chip." (#7646) [ESP32: SDMMCFS::begin hardcodes the usage of slot 1, only check if the pins match slot 1 pins.] setPins() was testing pins D1, D2 and D3 all against D1 ... fine in 1 pin mode when all are -1 not so much if you're trying to get 4 pin mode working. I now see this function doesn't really do anything on the ESP32...accept now correctly checks that you are trying to use the slot 1 pins. Co-authored-by: Jan Procházka <90197375+P-R-O-C-H-Y@users.noreply.github.com> * Allow passing IP as connect method parameter in WiFiClientSecure and skip unnecessary host-ip conversions (#7643) * Add LED_BUILTIN* definitions and initialization for LEDs to stop them floating. (#7636) Co-authored-by: Rodrigo Garcia <rodrigo.garcia@espressif.com> * Expand path to tinuf2 image when checking existence in platformio-build.py (#7631) * Expand path to tinuf2 image when checking existence * More isFiles fixed * Remove (useless) trailing semicolon from Print.cpp (#7622) * ADD: New variant Edgebox-ESP-100 (#7771) * ADD: New variant Edgebox-ESP-100 * FIX: Edgebox-ESP-100 Board.txt usb mode option change back to default value as ESP32S3 * Add Crabik Slot ESP32-S3 board (#7790) * Added Crabik Slot ESP32-S3 * Adding CPU frequency settings and removing excess from partition scheme settings * new variant LilyGO T-Display-S3 (#7763) * new variant LilyGO T-Display-S3 https://github.com/Xinyuan-LilyGO/T-Display-S3 * Add boards.txt definition --------- Co-authored-by: Me No Dev <me-no-dev@users.noreply.github.com> * Update get.py to support Apple ARM64 * Update package_esp32_index.template.json * WString Return bool (#7774) * Add Roboheart Hercules development board to the esp32-core (#7672) * added Roboheart Hercules pin definitions and board.txt entries * added package_roboheat.json for prototyping * Roboheart Hercules pins * Updated the pins * Delete package_roboheart.json * Requested changes --------- Co-authored-by: renebohne <rene.bohne@gmail.com> * Reword "ESP-IDF as Component" (#7812) I think "Arduino as an ESP-IDF component" or just "As ESP-IDF component" instead of "ESP-IDF as Component" is more correct way to name the link. 1. "ESP-IDF as Component" would imply that ESP-IDF is some sort of library for Arduino, which is (IMO) misleading, because it's true the other way around. 2. It's written as "Arduino as an ESP-IDF component" on the webpage it points to as well. - Also I removed the capitalization from "Component" as I have not found a reason why is it capitalized. * add new board Adafruit Feather ESP32-S3 Reverse TFT (#7811) * Multi threading examples (tasks, queues, semaphores, mutexes) (#7660) * Moved and renamed example ESP32/FreeRTOS to MultiThreading/BasicMultiThreading * Added dummy files * Modified original example * Fixed BasicMultiThreading.ino * Added Example demonstrating use of queues * Extended info in BasicMultiThreading * Renamed Queues to singular Queue * Added Mutex example * Added Semaphore example * Moved info from example to README * Moved doc from Mutex to README * Added Queue README * Removed unecesary text * Fixed grammar * Increased stack size for Sempahore example * Added headers into .ino files * Added word Example at the end of title in README * removed unused line * Added forgotten README * Modified BasicMultiThreading example * Added missing S3 entry in README * moved location * Update ESP-IDF libs * Update CMakeLists.txt * Update esptool to v4.4 * Add function timerAttachInterruptFlag (#7809) * Update esptool to v4.5 * ADC refactoring (#7827) * Adc refactored + periman implementation Peripheral manager still needs to be checked if the implementation is right. * switched to working solution for milivolts read * Periman detachbus fix * coding style * fix CI warnings * fix FreeRTOS example * Update ETH.cpp * Update FunctionalInterruptStruct.ino * Update package_esp32_index.template.json * Update package_esp32_index.template.json * Fixes for the latest IDF v5.1 * update esp-idf libs and toolchain * Turn OFF auto crystal frequency for ESP32 (needed by TWAI) * Update examples * Switch build to mostly use flags from files Includes can not be done this way * Reorganize flag files * Optimize chip build flags further * Revert defines from file. MBEDTLS_CONFIG_FILE does not properly expand * Add support for includes and defines from file * Replace old sdk path references in platform.txt * use gcc-ar (#8013) * Makes F_CPU generic for all SoC (#8007) Based on CONFIG_ESP_DEFAULT_CPU_FREQ_MHZ that is correctly defined in the sdkconfig file for each SoC. * TIMER refactoring (#7904) * refactor using GPtimer * Updated timer HW test * fix examples * Add v2.0.7 in issue template (#7871) * refactor using GPtimer * Updated timer HW test * fix examples * Revert "Add v2.0.7 in issue template (#7871)" This reverts commit fcc3b17d62ff57861f8913ca1f142fd5163b7457. * Update upload-artifact to v3 in HW CI * Revert "Update upload-artifact to v3 in HW CI" This reverts commit 1ba228071718ba37c4e26d98db22f77b2a7364a6. * replace resolution with frequency * remove count_down option * countup removed from examples + header * Refactored timer object * code cleanup + examples and tests fixes * TimerAlarm fix --------- Co-authored-by: Vojtěch Bartoška <76958047+VojtechBartoska@users.noreply.github.com> * [Docs] ADC and Timer API Update (+some docs fixes) (#7906) * updated docs * remove hall sensor docs Removed Hall sensor documentation as its no longer supported in IDF-5 * Fixed ESPNow examples location in docs * Last timer refactored API + gpio small fix * AlarmWrite fix * Fixes APLL/PLL with RTC Frequency (#8025) log_d() was displaying APLL for any SoC, but S3 and C3 has not such option, causing compilation errors. * Update IDF libs and fix OPI PSRAM on S3 * Add setMode function HardwareSerial.c to set the esp32 uart mode for use with RS485 auto RTS (#7935) * Added setMode function to set the esp32 uart mode Used to set the esp32 uart mode for use with RS485 Half Duplex and the auto RTS pin mode. This will set/clear the RTS pin output to control the RE/DE pin on most RS485 chips. * Add Success (bool) return in some functions * Add Success (bool) return code to some functions * Add Success (bool) return to some functions * Add Success (bool) return to some functions * Fix uartSetRxTimeout return type --------- Co-authored-by: Rodrigo Garcia <rodrigo.garcia@espressif.com> * Add support for esp-elf-gdb * WFG Crashfix (#8044) * Update component libs * IDF release/v5.1 (#8061) * IDF release/v5.1 bb9200acec * Update Esp.cpp * IDF release/v5.1 420ebd208a * Update esp32-hal-psram.c * Switch SDK to be an external package * fix path (#8096) * Makes UART work at any APB Frequency (#8097) Fixes HardwareSerial to work with IDF 5.1 on any CPU/APB Frequency (240MHz to 10MHZ), including user created low power modes. * Add required callbacks for TinyUSB DFU * Update version to 3.0.0 * Add ESP.getCoreVersion() and update ESP.getChipModel() * Update timer hal for the latest 5.1 * Use separate RX and TX buffer sizes in HTTP client optimizes download by allowing up to 4K packets to be received * Rename clock tree enum name in latest 5.1 * ESP32-H4 support was removed in ESP-IDF v5.1 * IDF release/v5.1 2004bf4e11 (#8165) * Deinit previous bus first (#8180) * TIMER - add timer_started flag, fix timerEnd() + timer HW test (#8135) * Add timer_started flag and stop before disable * Fix timer HW test * TOUCH - Peripheral manager implementation (#8129) * Touch periman implemented * Deinit previous bus first * LEDC Refactoring - Peripheral manager implemented (#8126) * LEDC periman implementation * Fix examples * Rework tone * Update ledc docs * fix missing bracket * Update analog funtions esp32-hal.h * Update CameraWebServer example * Fix HiFreq_ADC example * minor fixes - typos * Avoid calling tone/notone when tone already runs on dif. pin * Remove unused channels_resolution * GPIO - Peripheral manager implementation (#8179) * periman-implementation * fix RGB_BUILTIN and remove space * Enforces more consistency into Peripheral Manager (#8188) * Avoid log_i() message the first time a bus is assigned * Prevent operation with ESP32_BUS_TYPE_INIT * keeps coding style * do not print messages on INIT bus type * [Arduino Core 3.0.0] RMT IDF5.1 Refactoring (#7994) * RMT IDF5.1 refactoring * Fixes initial value setting * removed rmtRead() with user callback * simplify/remove Read data structure * Deep API simplification * fixes the examples * fix rmt.h * adds support to APB different frequencies * fixes CI and not defined RGB_BUILTIN * new RMT API and examples * fixing commentaties * Update esp32-hal-rgb-led.c * changes Filter API * Fixes example with Filter API * Update PlatformIO scripts for the upcoming 3.0 core (#8183) * Update PlatformIO scripts for the upcoming 3.0 core * Dynamically select proper framework-arduinoespressif32-libs package With this change the dev-platform will be dynamically configured to pull the latest .zip package with precompiled libraries from extracted from package_esp32_index.template.json * free memory on detach (#8264) * SPI - Peripheral manager implementation (#8255) * spi periman implementation * fix header file * remove unused struct * fix missing braces * Update esp32-hal-rmt.c (#8216) Optimizing Peripheral Manager Test * I2C - Peripheral manager implementation (#8220) * i2c-master periman initial commit * i2c-master make detachbus static + comment remove * i2c-slave periman implementation * SetPinBus to INIT on i2cDeinits * Fix slave pins deinit * remove dbg logs * set ret to ESP_FAIL instead of returning * Fix warnings in hal-spi caused by pariman transition * Update esptool.py to version 4.6 * Add platform support for ESP_SR * Add USB Type and valid pin check to periman * replace bus with spi->num+1 (#8279) * Remove default pins from SPI HAL * Add commented out handlers for esptool.js in TinyUSB CDC For future use * Add build defines for host os and fqbn (for debug purposes) * Provide proper memory caps total size * Update Esp.cpp * SDMMC - Peripheral manager implementation (#8289) * sdmmc periman implemented * save pins when SOC_SDMMC_USE_IOMUX * IDF release/v5.1 4bc762621d (#8292) * Adds missing pinMode (#8312) * Adds missing pinMode The example code lacks a pinMode() to initialize the GPIO 0 (button). In Arduino Core 3.0.0, it prints an error message when trying to read a not initialized GPIO. * Update KeyboardLogout.ino Adds <buttonPin> to keep code standard * Update KeyboardReprogram.ino Adds <buttonPin> to keep code standard * LEDC Fade implementation (#8338) * fade API + pointer fixes * Add fade api * Add fade example * update ledc docs * remove unused variables * fix path to example * Adds USB to Peripheral Manager - Arduino Core 3.0.0 (#8335) * ETHERNET - Peripheral manager implementation (#8297) * Peripheral manager implemented * remove unused variable * Add all RMII pins * fix typo * Adds HardwareSerial to Peripheral Manager Arduino 3.0.0 (#8328) * Do not limit ETHERNET in periman to only ESP32. SPI is also an option * Initial support for ESP32-C6 (#8337) * Add checks for SOC defines (#8351) * Add checks for SOC defines * Add SoC checks to BLE library * fix i2c compilation error * fix wrong placement of include * add check to SPI library * add check to USB library * add checks to Wire library * Feature/esp32h2 support (#8373) * Initial support for ESP32H2 * Additional changes for ESP32H2 * Update libs for ESP32H2 * Fix flashing on ESP32-H2 * Fix GPIO Configs for ESP32-C6 and ESP32-H2 * Update Timer test sketch * Fix upload flash parameters * Use ets_write_char_uart instead of ets_printf in log_printfv * Print full chip report when log level is sufficient (#8282) * ESP32-C3 does not have ets_write_char_uart * Fix BLE gap event name * HW Testing - Pytest update (#8389) * update tests requirements * remove already handled components * Update version of pytest * Add missing ESP32-H2 to hil.yml * Updated FreeRTOS names (#8418) * HW Testing - ESP32-C6 + ESP32-H2 fixes (#8404) * add C6/H2 to tests cfg.json * remove , * workflow runs-on runner by matrix * Add need for arduino tag to select runner * Add cryptography to requirements.txt * Removed duplicate TX1 define for H2 (#8402) * Fix broken examples * Fixes RMT filter & idle timing and setup (#8359) * Fixes Filter and Idle parameter to uint32 * Fixes Filter and Idle setup * Fixes it to 5.1Libs branch * fix RMT CLK source and Filter API * fixes missing ; * fixes missing ; * fixes RMT example * IDF release/v5.1 a7b62bbcaf (#8438) * Add workflow to build executables from python scripts (#8290) * Add workflow to build executables from python scripts * Push binary to tools * Enable executable signing on Windows * Update get.py * Push binary to tools * Try with multiple files * Try more actions * Try powershell * Restore tools so they do not get rebuilt * Finalize scripts * Push binary to tools * App rollback should be after PSRAM is initialized * Correcting RX1 to GPIO4 and TX1 to GPIO5 to be consistent with documentation. Previous pin use works but is inconsistent with C6 docs. * Fixes Memory Leak (#8486) * fixes preprocessor test (#8485) * fixes preprocessor test When using `#define USE_SOFT_AP` Change `&& not USE_SOFT_AP` ==> `&& !defined(USE_SOFT_AP)` * Adds any BLE capable device in WiFiProv.ino Removing ESP32 restriction for BLE Provisioning. * fix flash mode read out for C6 * Add option for custom partitions without restrictions * SD_MMC update (#8298) * Updated SD_MMC lib and examples * Removed getter implementation and commented usage in examples * squashed updates * IDF release/v5.1 f0437b945f (#8599) * Update package_esp32_index.template.json * Fix printf format build error in BTAdvertisedDeviceSet.cpp --------- Co-authored-by: Pedro Minatel <pedro.minatel@espressif.com> Co-authored-by: Rodrigo Garcia <rodrigo.garcia@espressif.com> Co-authored-by: Ha Thach <thach@tinyusb.org> Co-authored-by: Martin Turski <quiret@vfemail.net> Co-authored-by: raviypujar <raviypujar@gmail.com> Co-authored-by: Jason2866 <24528715+Jason2866@users.noreply.github.com> Co-authored-by: Tomáš Pilný <34927466+PilnyTomas@users.noreply.github.com> Co-authored-by: Jan Procházka <90197375+P-R-O-C-H-Y@users.noreply.github.com> Co-authored-by: Daniel Berlin <dberlin@dberlin.org> Co-authored-by: Nima Askari (نیما عسکری) <nimaltd@yahoo.com> Co-authored-by: rtpmsys <106180646+rtpmsys@users.noreply.github.com> Co-authored-by: bytiful <55647551+bytiful@users.noreply.github.com> Co-authored-by: tmfarrington <tmfarrington@users.noreply.github.com> Co-authored-by: Krzysiek S <chris.streh@gmail.com> Co-authored-by: surt <carl.olsson@gmail.com> Co-authored-by: Max Scheffler <max.scheffler@pm.me> Co-authored-by: Clemens Kirchgatterer <clemens@1541.org> Co-authored-by: Peter Pan's Techland <twinkle-pirate@hotmail.com> Co-authored-by: Roman <programmeofficemilkyway@gmail.com> Co-authored-by: Eistee <Eistee82@users.noreply.github.com> Co-authored-by: David McCurley <44048235+mrengineer7777@users.noreply.github.com> Co-authored-by: Gaya3N25 <30388176+Gaya3N25@users.noreply.github.com> Co-authored-by: renebohne <rene.bohne@gmail.com> Co-authored-by: Olivér Remény <25034625+remenyo@users.noreply.github.com> Co-authored-by: davidk88 <david.kotar@gmail.com> Co-authored-by: Vojtěch Bartoška <76958047+VojtechBartoska@users.noreply.github.com> Co-authored-by: James Armstrong <jamesarmstrong3@me.com> Co-authored-by: Valerii Koval <valeros@users.noreply.github.com> Co-authored-by: Peter G. Jensen <root@petergjoel.dk>
2023-10-05 11:54:25 +00:00
pad_to = get_alignment_offset_for_type(e.type)
if last_end % pad_to != 0:
last_end += pad_to - (last_end % pad_to)
e.offset = last_end
if e.size < 0:
e.size = -e.size - e.offset
last_end = e.offset + e.size
return res
def __getitem__(self, item):
"""Allow partition table access via name as well as by
numeric index."""
if isinstance(item, str):
for x in self:
if x.name == item:
return x
raise ValueError("No partition entry named '%s'" % item)
else:
return super(PartitionTable, self).__getitem__(item)
Update IDF to aaf1239 (#1539) * fix sdmmc config * Fix warnings in EEPROM from @Curclamas * remove leftover TAG in EEPROM * Initial add of @stickbreaker i2c * Add log_n * fix warnings when log is off * i2c code clean up and reorganization * add flags to interrupt allocator * fix sdmmc config * Fix warnings in EEPROM from @Curclamas * remove leftover TAG in EEPROM * fix errors with latest IDF * fix debug optimization (#1365) incorrect optimization for debugging tick markers. * Fix some missing BT header * Change BTSerial log calls * Update BLE lib * Arduino-ESP32 release management scripted (#1515) * Calculate an absolute path for a custom partitions table (#1452) * * Arduino-ESP32 release management scripted (ready-to-merge) * * secure env for espressif/arduino-esp32 * * build tests enabled * gitter webhook enabled * * gitter room link fixed * better comment * * filepaths fixed * BT Serial adjustments * * don't run sketch builds & tests for tagged builds * Return false from WiFi.hostByName() if hostname is not resolved * Free BT Memory when BT is not used * WIFI_MODE_NULL is not supported anymore * Select some key examples to build with PlatformIO to save some time * Update BLE lib * Fixed BLE lib * Major WiFi overhaul - auto reconnect on connection loss now works - moved to event groups - some code clean up and procedure optimizations - new methods to get a more elaborate system ststus * Add cmake tests to travis * Add initial AsyncUDP * Add NetBIOS lib and fix CMake includes * Add Initial WebServer * Fix WebServer and examples * travis not quiting on build fail * Try different travis build * Update IDF to aaf1239 * Fix WPS Example * fix script permission and add some fail tests to sketch builder * Add missing space in WiFiClient::write(Stream &stream)
2018-06-27 07:01:06 +00:00
def find_by_type(self, ptype, subtype):
"""Return a partition by type & subtype, returns
None if not found"""
Update IDF to aaf1239 (#1539) * fix sdmmc config * Fix warnings in EEPROM from @Curclamas * remove leftover TAG in EEPROM * Initial add of @stickbreaker i2c * Add log_n * fix warnings when log is off * i2c code clean up and reorganization * add flags to interrupt allocator * fix sdmmc config * Fix warnings in EEPROM from @Curclamas * remove leftover TAG in EEPROM * fix errors with latest IDF * fix debug optimization (#1365) incorrect optimization for debugging tick markers. * Fix some missing BT header * Change BTSerial log calls * Update BLE lib * Arduino-ESP32 release management scripted (#1515) * Calculate an absolute path for a custom partitions table (#1452) * * Arduino-ESP32 release management scripted (ready-to-merge) * * secure env for espressif/arduino-esp32 * * build tests enabled * gitter webhook enabled * * gitter room link fixed * better comment * * filepaths fixed * BT Serial adjustments * * don't run sketch builds & tests for tagged builds * Return false from WiFi.hostByName() if hostname is not resolved * Free BT Memory when BT is not used * WIFI_MODE_NULL is not supported anymore * Select some key examples to build with PlatformIO to save some time * Update BLE lib * Fixed BLE lib * Major WiFi overhaul - auto reconnect on connection loss now works - moved to event groups - some code clean up and procedure optimizations - new methods to get a more elaborate system ststus * Add cmake tests to travis * Add initial AsyncUDP * Add NetBIOS lib and fix CMake includes * Add Initial WebServer * Fix WebServer and examples * travis not quiting on build fail * Try different travis build * Update IDF to aaf1239 * Fix WPS Example * fix script permission and add some fail tests to sketch builder * Add missing space in WiFiClient::write(Stream &stream)
2018-06-27 07:01:06 +00:00
# convert ptype & subtypes names (if supplied this way) to integer values
ptype = get_ptype_as_int(ptype)
subtype = get_subtype_as_int(ptype, subtype)
Update IDF to aaf1239 (#1539) * fix sdmmc config * Fix warnings in EEPROM from @Curclamas * remove leftover TAG in EEPROM * Initial add of @stickbreaker i2c * Add log_n * fix warnings when log is off * i2c code clean up and reorganization * add flags to interrupt allocator * fix sdmmc config * Fix warnings in EEPROM from @Curclamas * remove leftover TAG in EEPROM * fix errors with latest IDF * fix debug optimization (#1365) incorrect optimization for debugging tick markers. * Fix some missing BT header * Change BTSerial log calls * Update BLE lib * Arduino-ESP32 release management scripted (#1515) * Calculate an absolute path for a custom partitions table (#1452) * * Arduino-ESP32 release management scripted (ready-to-merge) * * secure env for espressif/arduino-esp32 * * build tests enabled * gitter webhook enabled * * gitter room link fixed * better comment * * filepaths fixed * BT Serial adjustments * * don't run sketch builds & tests for tagged builds * Return false from WiFi.hostByName() if hostname is not resolved * Free BT Memory when BT is not used * WIFI_MODE_NULL is not supported anymore * Select some key examples to build with PlatformIO to save some time * Update BLE lib * Fixed BLE lib * Major WiFi overhaul - auto reconnect on connection loss now works - moved to event groups - some code clean up and procedure optimizations - new methods to get a more elaborate system ststus * Add cmake tests to travis * Add initial AsyncUDP * Add NetBIOS lib and fix CMake includes * Add Initial WebServer * Fix WebServer and examples * travis not quiting on build fail * Try different travis build * Update IDF to aaf1239 * Fix WPS Example * fix script permission and add some fail tests to sketch builder * Add missing space in WiFiClient::write(Stream &stream)
2018-06-27 07:01:06 +00:00
for p in self:
if p.type == ptype and p.subtype == subtype:
yield p
return
Update IDF to aaf1239 (#1539) * fix sdmmc config * Fix warnings in EEPROM from @Curclamas * remove leftover TAG in EEPROM * Initial add of @stickbreaker i2c * Add log_n * fix warnings when log is off * i2c code clean up and reorganization * add flags to interrupt allocator * fix sdmmc config * Fix warnings in EEPROM from @Curclamas * remove leftover TAG in EEPROM * fix errors with latest IDF * fix debug optimization (#1365) incorrect optimization for debugging tick markers. * Fix some missing BT header * Change BTSerial log calls * Update BLE lib * Arduino-ESP32 release management scripted (#1515) * Calculate an absolute path for a custom partitions table (#1452) * * Arduino-ESP32 release management scripted (ready-to-merge) * * secure env for espressif/arduino-esp32 * * build tests enabled * gitter webhook enabled * * gitter room link fixed * better comment * * filepaths fixed * BT Serial adjustments * * don't run sketch builds & tests for tagged builds * Return false from WiFi.hostByName() if hostname is not resolved * Free BT Memory when BT is not used * WIFI_MODE_NULL is not supported anymore * Select some key examples to build with PlatformIO to save some time * Update BLE lib * Fixed BLE lib * Major WiFi overhaul - auto reconnect on connection loss now works - moved to event groups - some code clean up and procedure optimizations - new methods to get a more elaborate system ststus * Add cmake tests to travis * Add initial AsyncUDP * Add NetBIOS lib and fix CMake includes * Add Initial WebServer * Fix WebServer and examples * travis not quiting on build fail * Try different travis build * Update IDF to aaf1239 * Fix WPS Example * fix script permission and add some fail tests to sketch builder * Add missing space in WiFiClient::write(Stream &stream)
2018-06-27 07:01:06 +00:00
def find_by_name(self, name):
for p in self:
if p.name == name:
return p
return None
def verify(self): # noqa: C901
# verify each partition individually
for p in self:
p.verify()
# check on duplicate name
names = [p.name for p in self]
duplicates = set(n for n in names if names.count(n) > 1) # noqa: C401
# print sorted duplicate partitions by name
if len(duplicates) != 0:
critical("A list of partitions that have the same name:")
for p in sorted(self, key=lambda x: x.name):
if len(duplicates.intersection([p.name])) != 0:
critical("%s" % (p.to_csv()))
raise InputError("Partition names must be unique")
# check for overlaps
last = None
for p in sorted(self, key=lambda x: x.offset):
Update IDF to aaf1239 (#1539) * fix sdmmc config * Fix warnings in EEPROM from @Curclamas * remove leftover TAG in EEPROM * Initial add of @stickbreaker i2c * Add log_n * fix warnings when log is off * i2c code clean up and reorganization * add flags to interrupt allocator * fix sdmmc config * Fix warnings in EEPROM from @Curclamas * remove leftover TAG in EEPROM * fix errors with latest IDF * fix debug optimization (#1365) incorrect optimization for debugging tick markers. * Fix some missing BT header * Change BTSerial log calls * Update BLE lib * Arduino-ESP32 release management scripted (#1515) * Calculate an absolute path for a custom partitions table (#1452) * * Arduino-ESP32 release management scripted (ready-to-merge) * * secure env for espressif/arduino-esp32 * * build tests enabled * gitter webhook enabled * * gitter room link fixed * better comment * * filepaths fixed * BT Serial adjustments * * don't run sketch builds & tests for tagged builds * Return false from WiFi.hostByName() if hostname is not resolved * Free BT Memory when BT is not used * WIFI_MODE_NULL is not supported anymore * Select some key examples to build with PlatformIO to save some time * Update BLE lib * Fixed BLE lib * Major WiFi overhaul - auto reconnect on connection loss now works - moved to event groups - some code clean up and procedure optimizations - new methods to get a more elaborate system ststus * Add cmake tests to travis * Add initial AsyncUDP * Add NetBIOS lib and fix CMake includes * Add Initial WebServer * Fix WebServer and examples * travis not quiting on build fail * Try different travis build * Update IDF to aaf1239 * Fix WPS Example * fix script permission and add some fail tests to sketch builder * Add missing space in WiFiClient::write(Stream &stream)
2018-06-27 07:01:06 +00:00
if p.offset < offset_part_table + PARTITION_TABLE_SIZE:
raise InputError(
"Partition offset 0x%x is below 0x%x" % (p.offset, offset_part_table + PARTITION_TABLE_SIZE)
)
if last is not None and p.offset < last.offset + last.size:
raise InputError(
"Partition at 0x%x overlaps 0x%x-0x%x" % (p.offset, last.offset, last.offset + last.size - 1)
)
last = p
# check that otadata should be unique
otadata_duplicates = [p for p in self if p.type == TYPES["data"] and p.subtype == SUBTYPES[DATA_TYPE]["ota"]]
if len(otadata_duplicates) > 1:
for p in otadata_duplicates:
critical("%s" % (p.to_csv()))
raise InputError(
'Found multiple otadata partitions. Only one partition can be defined with type="data"(1) and subtype="ota"(0).' # noqa: E501
)
if len(otadata_duplicates) == 1 and otadata_duplicates[0].size != 0x2000:
p = otadata_duplicates[0]
critical("%s" % (p.to_csv()))
raise InputError("otadata partition must have size = 0x2000")
Update IDF to aaf1239 (#1539) * fix sdmmc config * Fix warnings in EEPROM from @Curclamas * remove leftover TAG in EEPROM * Initial add of @stickbreaker i2c * Add log_n * fix warnings when log is off * i2c code clean up and reorganization * add flags to interrupt allocator * fix sdmmc config * Fix warnings in EEPROM from @Curclamas * remove leftover TAG in EEPROM * fix errors with latest IDF * fix debug optimization (#1365) incorrect optimization for debugging tick markers. * Fix some missing BT header * Change BTSerial log calls * Update BLE lib * Arduino-ESP32 release management scripted (#1515) * Calculate an absolute path for a custom partitions table (#1452) * * Arduino-ESP32 release management scripted (ready-to-merge) * * secure env for espressif/arduino-esp32 * * build tests enabled * gitter webhook enabled * * gitter room link fixed * better comment * * filepaths fixed * BT Serial adjustments * * don't run sketch builds & tests for tagged builds * Return false from WiFi.hostByName() if hostname is not resolved * Free BT Memory when BT is not used * WIFI_MODE_NULL is not supported anymore * Select some key examples to build with PlatformIO to save some time * Update BLE lib * Fixed BLE lib * Major WiFi overhaul - auto reconnect on connection loss now works - moved to event groups - some code clean up and procedure optimizations - new methods to get a more elaborate system ststus * Add cmake tests to travis * Add initial AsyncUDP * Add NetBIOS lib and fix CMake includes * Add Initial WebServer * Fix WebServer and examples * travis not quiting on build fail * Try different travis build * Update IDF to aaf1239 * Fix WPS Example * fix script permission and add some fail tests to sketch builder * Add missing space in WiFiClient::write(Stream &stream)
2018-06-27 07:01:06 +00:00
def flash_size(self):
"""Return the size that partitions will occupy in flash
(ie the offset the last partition ends at)
Update IDF to aaf1239 (#1539) * fix sdmmc config * Fix warnings in EEPROM from @Curclamas * remove leftover TAG in EEPROM * Initial add of @stickbreaker i2c * Add log_n * fix warnings when log is off * i2c code clean up and reorganization * add flags to interrupt allocator * fix sdmmc config * Fix warnings in EEPROM from @Curclamas * remove leftover TAG in EEPROM * fix errors with latest IDF * fix debug optimization (#1365) incorrect optimization for debugging tick markers. * Fix some missing BT header * Change BTSerial log calls * Update BLE lib * Arduino-ESP32 release management scripted (#1515) * Calculate an absolute path for a custom partitions table (#1452) * * Arduino-ESP32 release management scripted (ready-to-merge) * * secure env for espressif/arduino-esp32 * * build tests enabled * gitter webhook enabled * * gitter room link fixed * better comment * * filepaths fixed * BT Serial adjustments * * don't run sketch builds & tests for tagged builds * Return false from WiFi.hostByName() if hostname is not resolved * Free BT Memory when BT is not used * WIFI_MODE_NULL is not supported anymore * Select some key examples to build with PlatformIO to save some time * Update BLE lib * Fixed BLE lib * Major WiFi overhaul - auto reconnect on connection loss now works - moved to event groups - some code clean up and procedure optimizations - new methods to get a more elaborate system ststus * Add cmake tests to travis * Add initial AsyncUDP * Add NetBIOS lib and fix CMake includes * Add Initial WebServer * Fix WebServer and examples * travis not quiting on build fail * Try different travis build * Update IDF to aaf1239 * Fix WPS Example * fix script permission and add some fail tests to sketch builder * Add missing space in WiFiClient::write(Stream &stream)
2018-06-27 07:01:06 +00:00
"""
try:
last = sorted(self, reverse=True)[0]
except IndexError:
return 0 # empty table!
return last.offset + last.size
def verify_size_fits(self, flash_size_bytes: int) -> None:
"""Check that partition table fits into the given flash size.
Raises InputError otherwise.
"""
table_size = self.flash_size()
if flash_size_bytes < table_size:
mb = 1024 * 1024
raise InputError(
"Partitions tables occupies %.1fMB of flash (%d bytes) which does not fit in configured "
"flash size %dMB. Change the flash size in menuconfig under the 'Serial Flasher Config' menu."
% (table_size / mb, table_size, flash_size_bytes / mb)
)
@classmethod
def from_binary(cls, b):
md5 = hashlib.md5()
result = cls()
for o in range(0, len(b), 32):
data = b[o : o + 32]
if len(data) != 32:
raise InputError("Partition table length must be a multiple of 32 bytes")
if data == b"\xFF" * 32:
return result # got end marker
if md5sum and data[:2] == MD5_PARTITION_BEGIN[:2]: # check only the magic number part
if data[16:] == md5.digest():
continue # the next iteration will check for the end marker
else:
raise InputError(
"MD5 checksums don't match! (computed: 0x%s, parsed: 0x%s)"
% (md5.hexdigest(), binascii.hexlify(data[16:]))
)
else:
md5.update(data)
result.append(PartitionDefinition.from_binary(data))
raise InputError("Partition table is missing an end-of-table marker")
def to_binary(self):
result = b"".join(e.to_binary() for e in self)
if md5sum:
result += MD5_PARTITION_BEGIN + hashlib.md5(result).digest()
if len(result) >= MAX_PARTITION_LENGTH:
raise InputError("Binary partition table length (%d) longer than max" % len(result))
result += b"\xFF" * (MAX_PARTITION_LENGTH - len(result)) # pad the sector, for signing
return result
def to_csv(self, simple_formatting=False):
rows = ["# ESP-IDF Partition Table", "# Name, Type, SubType, Offset, Size, Flags"]
rows += [x.to_csv(simple_formatting) for x in self]
return "\n".join(rows) + "\n"
class PartitionDefinition(object):
MAGIC_BYTES = b"\xAA\x50"
# dictionary maps flag name (as used in CSV flags list, property name)
# to bit set in flags words in binary format
FLAGS = {"encrypted": 0}
Update IDF to aaf1239 (#1539) * fix sdmmc config * Fix warnings in EEPROM from @Curclamas * remove leftover TAG in EEPROM * Initial add of @stickbreaker i2c * Add log_n * fix warnings when log is off * i2c code clean up and reorganization * add flags to interrupt allocator * fix sdmmc config * Fix warnings in EEPROM from @Curclamas * remove leftover TAG in EEPROM * fix errors with latest IDF * fix debug optimization (#1365) incorrect optimization for debugging tick markers. * Fix some missing BT header * Change BTSerial log calls * Update BLE lib * Arduino-ESP32 release management scripted (#1515) * Calculate an absolute path for a custom partitions table (#1452) * * Arduino-ESP32 release management scripted (ready-to-merge) * * secure env for espressif/arduino-esp32 * * build tests enabled * gitter webhook enabled * * gitter room link fixed * better comment * * filepaths fixed * BT Serial adjustments * * don't run sketch builds & tests for tagged builds * Return false from WiFi.hostByName() if hostname is not resolved * Free BT Memory when BT is not used * WIFI_MODE_NULL is not supported anymore * Select some key examples to build with PlatformIO to save some time * Update BLE lib * Fixed BLE lib * Major WiFi overhaul - auto reconnect on connection loss now works - moved to event groups - some code clean up and procedure optimizations - new methods to get a more elaborate system ststus * Add cmake tests to travis * Add initial AsyncUDP * Add NetBIOS lib and fix CMake includes * Add Initial WebServer * Fix WebServer and examples * travis not quiting on build fail * Try different travis build * Update IDF to aaf1239 * Fix WPS Example * fix script permission and add some fail tests to sketch builder * Add missing space in WiFiClient::write(Stream &stream)
2018-06-27 07:01:06 +00:00
# add subtypes for the 16 OTA slot values ("ota_XX, etc.")
for ota_slot in range(NUM_PARTITION_SUBTYPE_APP_OTA):
SUBTYPES[TYPES["app"]]["ota_%d" % ota_slot] = MIN_PARTITION_SUBTYPE_APP_OTA + ota_slot
def __init__(self):
self.name = ""
self.type = None
self.subtype = None
self.offset = None
self.size = None
self.encrypted = False
@classmethod
def from_csv(cls, line, line_no):
"""Parse a line from the CSV"""
line_w_defaults = line + ",,,," # lazy way to support default fields
fields = [f.strip() for f in line_w_defaults.split(",")]
res = PartitionDefinition()
res.line_no = line_no
res.name = fields[0]
res.type = res.parse_type(fields[1])
res.subtype = res.parse_subtype(fields[2])
res.offset = res.parse_address(fields[3])
res.size = res.parse_address(fields[4])
if res.size is None:
raise InputError("Size field can't be empty")
flags = fields[5].split(":")
for flag in flags:
if flag in cls.FLAGS:
setattr(res, flag, True)
elif len(flag) > 0:
raise InputError("CSV flag column contains unknown flag '%s'" % (flag))
return res
def __eq__(self, other):
return (
self.name == other.name
and self.type == other.type
and self.subtype == other.subtype
and self.offset == other.offset
and self.size == other.size
)
def __repr__(self):
def maybe_hex(x):
return "0x%x" % x if x is not None else "None"
return "PartitionDefinition('%s', 0x%x, 0x%x, %s, %s)" % (
self.name,
self.type,
self.subtype or 0,
maybe_hex(self.offset),
maybe_hex(self.size),
)
def __str__(self):
return "Part '%s' %d/%d @ 0x%x size 0x%x" % (
self.name,
self.type,
self.subtype,
self.offset or -1,
self.size or -1,
)
def __cmp__(self, other):
return self.offset - other.offset
Update IDF to aaf1239 (#1539) * fix sdmmc config * Fix warnings in EEPROM from @Curclamas * remove leftover TAG in EEPROM * Initial add of @stickbreaker i2c * Add log_n * fix warnings when log is off * i2c code clean up and reorganization * add flags to interrupt allocator * fix sdmmc config * Fix warnings in EEPROM from @Curclamas * remove leftover TAG in EEPROM * fix errors with latest IDF * fix debug optimization (#1365) incorrect optimization for debugging tick markers. * Fix some missing BT header * Change BTSerial log calls * Update BLE lib * Arduino-ESP32 release management scripted (#1515) * Calculate an absolute path for a custom partitions table (#1452) * * Arduino-ESP32 release management scripted (ready-to-merge) * * secure env for espressif/arduino-esp32 * * build tests enabled * gitter webhook enabled * * gitter room link fixed * better comment * * filepaths fixed * BT Serial adjustments * * don't run sketch builds & tests for tagged builds * Return false from WiFi.hostByName() if hostname is not resolved * Free BT Memory when BT is not used * WIFI_MODE_NULL is not supported anymore * Select some key examples to build with PlatformIO to save some time * Update BLE lib * Fixed BLE lib * Major WiFi overhaul - auto reconnect on connection loss now works - moved to event groups - some code clean up and procedure optimizations - new methods to get a more elaborate system ststus * Add cmake tests to travis * Add initial AsyncUDP * Add NetBIOS lib and fix CMake includes * Add Initial WebServer * Fix WebServer and examples * travis not quiting on build fail * Try different travis build * Update IDF to aaf1239 * Fix WPS Example * fix script permission and add some fail tests to sketch builder * Add missing space in WiFiClient::write(Stream &stream)
2018-06-27 07:01:06 +00:00
def __lt__(self, other):
return self.offset < other.offset
def __gt__(self, other):
return self.offset > other.offset
def __le__(self, other):
return self.offset <= other.offset
def __ge__(self, other):
return self.offset >= other.offset
def parse_type(self, strval):
if strval == "":
raise InputError("Field 'type' can't be left empty.")
Update IDF to aaf1239 (#1539) * fix sdmmc config * Fix warnings in EEPROM from @Curclamas * remove leftover TAG in EEPROM * Initial add of @stickbreaker i2c * Add log_n * fix warnings when log is off * i2c code clean up and reorganization * add flags to interrupt allocator * fix sdmmc config * Fix warnings in EEPROM from @Curclamas * remove leftover TAG in EEPROM * fix errors with latest IDF * fix debug optimization (#1365) incorrect optimization for debugging tick markers. * Fix some missing BT header * Change BTSerial log calls * Update BLE lib * Arduino-ESP32 release management scripted (#1515) * Calculate an absolute path for a custom partitions table (#1452) * * Arduino-ESP32 release management scripted (ready-to-merge) * * secure env for espressif/arduino-esp32 * * build tests enabled * gitter webhook enabled * * gitter room link fixed * better comment * * filepaths fixed * BT Serial adjustments * * don't run sketch builds & tests for tagged builds * Return false from WiFi.hostByName() if hostname is not resolved * Free BT Memory when BT is not used * WIFI_MODE_NULL is not supported anymore * Select some key examples to build with PlatformIO to save some time * Update BLE lib * Fixed BLE lib * Major WiFi overhaul - auto reconnect on connection loss now works - moved to event groups - some code clean up and procedure optimizations - new methods to get a more elaborate system ststus * Add cmake tests to travis * Add initial AsyncUDP * Add NetBIOS lib and fix CMake includes * Add Initial WebServer * Fix WebServer and examples * travis not quiting on build fail * Try different travis build * Update IDF to aaf1239 * Fix WPS Example * fix script permission and add some fail tests to sketch builder * Add missing space in WiFiClient::write(Stream &stream)
2018-06-27 07:01:06 +00:00
return parse_int(strval, TYPES)
def parse_subtype(self, strval):
if strval == "":
if self.type == TYPES["app"]:
raise InputError("App partition cannot have an empty subtype")
return SUBTYPES[DATA_TYPE]["undefined"]
Update IDF to aaf1239 (#1539) * fix sdmmc config * Fix warnings in EEPROM from @Curclamas * remove leftover TAG in EEPROM * Initial add of @stickbreaker i2c * Add log_n * fix warnings when log is off * i2c code clean up and reorganization * add flags to interrupt allocator * fix sdmmc config * Fix warnings in EEPROM from @Curclamas * remove leftover TAG in EEPROM * fix errors with latest IDF * fix debug optimization (#1365) incorrect optimization for debugging tick markers. * Fix some missing BT header * Change BTSerial log calls * Update BLE lib * Arduino-ESP32 release management scripted (#1515) * Calculate an absolute path for a custom partitions table (#1452) * * Arduino-ESP32 release management scripted (ready-to-merge) * * secure env for espressif/arduino-esp32 * * build tests enabled * gitter webhook enabled * * gitter room link fixed * better comment * * filepaths fixed * BT Serial adjustments * * don't run sketch builds & tests for tagged builds * Return false from WiFi.hostByName() if hostname is not resolved * Free BT Memory when BT is not used * WIFI_MODE_NULL is not supported anymore * Select some key examples to build with PlatformIO to save some time * Update BLE lib * Fixed BLE lib * Major WiFi overhaul - auto reconnect on connection loss now works - moved to event groups - some code clean up and procedure optimizations - new methods to get a more elaborate system ststus * Add cmake tests to travis * Add initial AsyncUDP * Add NetBIOS lib and fix CMake includes * Add Initial WebServer * Fix WebServer and examples * travis not quiting on build fail * Try different travis build * Update IDF to aaf1239 * Fix WPS Example * fix script permission and add some fail tests to sketch builder * Add missing space in WiFiClient::write(Stream &stream)
2018-06-27 07:01:06 +00:00
return parse_int(strval, SUBTYPES.get(self.type, {}))
def parse_address(self, strval):
if strval == "":
return None # PartitionTable will fill in default
return parse_int(strval)
def verify(self): # noqa: C901
if self.type is None:
raise ValidationError(self, "Type field is not set")
if self.subtype is None:
raise ValidationError(self, "Subtype field is not set")
if self.offset is None:
raise ValidationError(self, "Offset field is not set")
if self.size is None:
raise ValidationError(self, "Size field is not set")
ESP-IDF v5.1 (#7733) * Initial changes to compile under ESP-IDF v5.1 * Initial import for ESP-IDF v5.1 libs * Update toolchain * Update esp32-hal-psram.c * Add missing LDs * Update platform.txt * Stop some CI jobs, because they will always fail * Fix examples * Update app_httpd.cpp * Update ResetReason.ino * Warnings fixes * Added the example guideline and template (#7665) * Added the example guideline and template * PR review changes with some typos and grammar fixes * Changes according to the PR review * Added ESP32-S3 link to the datasheet (#7738) * Update HiFreq_ADC.ino * Replace periph_ctrl.h use because of deprecation * Replace esp_spi_flash.h use because of deprecation * Add includes to male mDNS::enableWorkstation compile * Fix ssl_client mbedtls_pk_parse_key callback * Update temperature sensor driver * Allow sketch_utils to compile with arduino-cli * Run CI with arduino-cli * Fix arduino-cli CI build on Windows * Refactor platform.txt to not use components installed through the board manager when running from git * Initial Peripheral Manager Implementation * Update SigmaDelta driver to use the new ESP-IDF driver API * Small improvements to peripheral manager and SigmaDelta * Remove deleted function from SigmaDelta header * Update DAC driver to use the new ESP-IDF driver API * Adds softAp(String) to make it compatible with ESP8266 (#7801) * Fix commentary (#7800) Minor fix based on observation done in https://github.com/espressif/arduino-esp32/issues/7795#issuecomment-1416868611 * add adafruit new board feather esp32s2 reserve tft (#7794) * bugfix: add <stdint.h> for uint8_t to avoid compilation failure (GCC 11.2.0) (#7744) * Adding 3rd party boards for VALTRACK-V4-VTS-ESP32-C3 & VALTRACK-V4-MFW-ESP32-C3 (#7735) * Added VALTRACK-V4-VTS-ESP32-C3 board definition Created pins_arduino.h & made changes to boards.txt with necessary changes * Modified the URL * Renamed json * renamed all auRL * Adding VALTRACK-V4 series board definitions Added VALTRACK-V4-VTS-ESP32C3 & VALTRACK-V4-MFW-ESP32-C3 board variants * Adding VALTRACK-V4 series board definitions Added VALTRACK-V4-VTS-ESP32C3 & VALTRACK-V4-MFW-ESP32-C3 board variants * Reverted package_esp32_index.template.json restored package_esp32_index.template.json from edits * Reverted package_esp32_index.template.json Added new line to package_esp32_index.template.json * Update Platformio CI (#7725) * WiFiClient example fix (#7711) * Modified WiFiClient example to use thingspeak instead of non-functionig sparkfun * Moved instructions to README * Fixed spelling * Added link to S3 datasheet --------- Co-authored-by: Jan Procházka <90197375+P-R-O-C-H-Y@users.noreply.github.com> * Mirror update from Heltec repository (#7709) Heltec updated the I2C pins in https://github.com/Heltec-Aaron-Lee/WiFi_Kit_series/commit/b10f4bf85d13fd01be80dcdb0eb59e6a8c8ba19a * Fixes BLE data printing (#7699) * Fixes BLE data printing BLE data has no '\0' terminator, therefore it can't be printed as a regular C string. This fix just prints the BLE data based on its length. * Simplify printing to a single call * split menu options + lora_32_V3 fix (#7697) * Change header gaurd name (#7696) * Fix Name (#7691) Wrong name in definitions. * Fix error in WiFiClient.cpp where the connect function fails for timeouts below 1 second (#7686) * Update WiFiClient.cpp This change will allow specifying connect timeouts below 1 second. Without this change, if connect timeouts under 1 second are given, the connect defaults to 0ms and fails. This will also allow timeouts in fractions of seconds, e.g. 1500ms. Without this change, connect timeouts are truncated to full second increments. * Make parameter timeout_ms clear * Change connection timeout_ms name for clarity --------- Co-authored-by: Rodrigo Garcia <rodrigo.garcia@espressif.com> * fixed the function header (#7674) * fixed the function header * fixed function name and paramaters --------- Co-authored-by: Jan Procházka <90197375+P-R-O-C-H-Y@users.noreply.github.com> * Ticker fix solving #6155 (#7664) * Wrapped Ticker functions with #pragma disabling -Wcast-function-type * Revert "Wrapped Ticker functions with #pragma disabling -Wcast-function-type" This reverts commit 160be7e67a10d01b6e44c4bf2521c0ccd6348976. * Fixed Ticker example * Modified Ticker example * Fixed LED_BUILTIN err for ESP32 --------- Co-authored-by: Jan Procházka <90197375+P-R-O-C-H-Y@users.noreply.github.com> * setPins fix ESP32 "specified pins are not supported by this chip." (#7646) [ESP32: SDMMCFS::begin hardcodes the usage of slot 1, only check if the pins match slot 1 pins.] setPins() was testing pins D1, D2 and D3 all against D1 ... fine in 1 pin mode when all are -1 not so much if you're trying to get 4 pin mode working. I now see this function doesn't really do anything on the ESP32...accept now correctly checks that you are trying to use the slot 1 pins. Co-authored-by: Jan Procházka <90197375+P-R-O-C-H-Y@users.noreply.github.com> * Allow passing IP as connect method parameter in WiFiClientSecure and skip unnecessary host-ip conversions (#7643) * Add LED_BUILTIN* definitions and initialization for LEDs to stop them floating. (#7636) Co-authored-by: Rodrigo Garcia <rodrigo.garcia@espressif.com> * Expand path to tinuf2 image when checking existence in platformio-build.py (#7631) * Expand path to tinuf2 image when checking existence * More isFiles fixed * Remove (useless) trailing semicolon from Print.cpp (#7622) * ADD: New variant Edgebox-ESP-100 (#7771) * ADD: New variant Edgebox-ESP-100 * FIX: Edgebox-ESP-100 Board.txt usb mode option change back to default value as ESP32S3 * Add Crabik Slot ESP32-S3 board (#7790) * Added Crabik Slot ESP32-S3 * Adding CPU frequency settings and removing excess from partition scheme settings * new variant LilyGO T-Display-S3 (#7763) * new variant LilyGO T-Display-S3 https://github.com/Xinyuan-LilyGO/T-Display-S3 * Add boards.txt definition --------- Co-authored-by: Me No Dev <me-no-dev@users.noreply.github.com> * Update get.py to support Apple ARM64 * Update package_esp32_index.template.json * WString Return bool (#7774) * Add Roboheart Hercules development board to the esp32-core (#7672) * added Roboheart Hercules pin definitions and board.txt entries * added package_roboheat.json for prototyping * Roboheart Hercules pins * Updated the pins * Delete package_roboheart.json * Requested changes --------- Co-authored-by: renebohne <rene.bohne@gmail.com> * Reword "ESP-IDF as Component" (#7812) I think "Arduino as an ESP-IDF component" or just "As ESP-IDF component" instead of "ESP-IDF as Component" is more correct way to name the link. 1. "ESP-IDF as Component" would imply that ESP-IDF is some sort of library for Arduino, which is (IMO) misleading, because it's true the other way around. 2. It's written as "Arduino as an ESP-IDF component" on the webpage it points to as well. - Also I removed the capitalization from "Component" as I have not found a reason why is it capitalized. * add new board Adafruit Feather ESP32-S3 Reverse TFT (#7811) * Multi threading examples (tasks, queues, semaphores, mutexes) (#7660) * Moved and renamed example ESP32/FreeRTOS to MultiThreading/BasicMultiThreading * Added dummy files * Modified original example * Fixed BasicMultiThreading.ino * Added Example demonstrating use of queues * Extended info in BasicMultiThreading * Renamed Queues to singular Queue * Added Mutex example * Added Semaphore example * Moved info from example to README * Moved doc from Mutex to README * Added Queue README * Removed unecesary text * Fixed grammar * Increased stack size for Sempahore example * Added headers into .ino files * Added word Example at the end of title in README * removed unused line * Added forgotten README * Modified BasicMultiThreading example * Added missing S3 entry in README * moved location * Update ESP-IDF libs * Update CMakeLists.txt * Update esptool to v4.4 * Add function timerAttachInterruptFlag (#7809) * Update esptool to v4.5 * ADC refactoring (#7827) * Adc refactored + periman implementation Peripheral manager still needs to be checked if the implementation is right. * switched to working solution for milivolts read * Periman detachbus fix * coding style * fix CI warnings * fix FreeRTOS example * Update ETH.cpp * Update FunctionalInterruptStruct.ino * Update package_esp32_index.template.json * Update package_esp32_index.template.json * Fixes for the latest IDF v5.1 * update esp-idf libs and toolchain * Turn OFF auto crystal frequency for ESP32 (needed by TWAI) * Update examples * Switch build to mostly use flags from files Includes can not be done this way * Reorganize flag files * Optimize chip build flags further * Revert defines from file. MBEDTLS_CONFIG_FILE does not properly expand * Add support for includes and defines from file * Replace old sdk path references in platform.txt * use gcc-ar (#8013) * Makes F_CPU generic for all SoC (#8007) Based on CONFIG_ESP_DEFAULT_CPU_FREQ_MHZ that is correctly defined in the sdkconfig file for each SoC. * TIMER refactoring (#7904) * refactor using GPtimer * Updated timer HW test * fix examples * Add v2.0.7 in issue template (#7871) * refactor using GPtimer * Updated timer HW test * fix examples * Revert "Add v2.0.7 in issue template (#7871)" This reverts commit fcc3b17d62ff57861f8913ca1f142fd5163b7457. * Update upload-artifact to v3 in HW CI * Revert "Update upload-artifact to v3 in HW CI" This reverts commit 1ba228071718ba37c4e26d98db22f77b2a7364a6. * replace resolution with frequency * remove count_down option * countup removed from examples + header * Refactored timer object * code cleanup + examples and tests fixes * TimerAlarm fix --------- Co-authored-by: Vojtěch Bartoška <76958047+VojtechBartoska@users.noreply.github.com> * [Docs] ADC and Timer API Update (+some docs fixes) (#7906) * updated docs * remove hall sensor docs Removed Hall sensor documentation as its no longer supported in IDF-5 * Fixed ESPNow examples location in docs * Last timer refactored API + gpio small fix * AlarmWrite fix * Fixes APLL/PLL with RTC Frequency (#8025) log_d() was displaying APLL for any SoC, but S3 and C3 has not such option, causing compilation errors. * Update IDF libs and fix OPI PSRAM on S3 * Add setMode function HardwareSerial.c to set the esp32 uart mode for use with RS485 auto RTS (#7935) * Added setMode function to set the esp32 uart mode Used to set the esp32 uart mode for use with RS485 Half Duplex and the auto RTS pin mode. This will set/clear the RTS pin output to control the RE/DE pin on most RS485 chips. * Add Success (bool) return in some functions * Add Success (bool) return code to some functions * Add Success (bool) return to some functions * Add Success (bool) return to some functions * Fix uartSetRxTimeout return type --------- Co-authored-by: Rodrigo Garcia <rodrigo.garcia@espressif.com> * Add support for esp-elf-gdb * WFG Crashfix (#8044) * Update component libs * IDF release/v5.1 (#8061) * IDF release/v5.1 bb9200acec * Update Esp.cpp * IDF release/v5.1 420ebd208a * Update esp32-hal-psram.c * Switch SDK to be an external package * fix path (#8096) * Makes UART work at any APB Frequency (#8097) Fixes HardwareSerial to work with IDF 5.1 on any CPU/APB Frequency (240MHz to 10MHZ), including user created low power modes. * Add required callbacks for TinyUSB DFU * Update version to 3.0.0 * Add ESP.getCoreVersion() and update ESP.getChipModel() * Update timer hal for the latest 5.1 * Use separate RX and TX buffer sizes in HTTP client optimizes download by allowing up to 4K packets to be received * Rename clock tree enum name in latest 5.1 * ESP32-H4 support was removed in ESP-IDF v5.1 * IDF release/v5.1 2004bf4e11 (#8165) * Deinit previous bus first (#8180) * TIMER - add timer_started flag, fix timerEnd() + timer HW test (#8135) * Add timer_started flag and stop before disable * Fix timer HW test * TOUCH - Peripheral manager implementation (#8129) * Touch periman implemented * Deinit previous bus first * LEDC Refactoring - Peripheral manager implemented (#8126) * LEDC periman implementation * Fix examples * Rework tone * Update ledc docs * fix missing bracket * Update analog funtions esp32-hal.h * Update CameraWebServer example * Fix HiFreq_ADC example * minor fixes - typos * Avoid calling tone/notone when tone already runs on dif. pin * Remove unused channels_resolution * GPIO - Peripheral manager implementation (#8179) * periman-implementation * fix RGB_BUILTIN and remove space * Enforces more consistency into Peripheral Manager (#8188) * Avoid log_i() message the first time a bus is assigned * Prevent operation with ESP32_BUS_TYPE_INIT * keeps coding style * do not print messages on INIT bus type * [Arduino Core 3.0.0] RMT IDF5.1 Refactoring (#7994) * RMT IDF5.1 refactoring * Fixes initial value setting * removed rmtRead() with user callback * simplify/remove Read data structure * Deep API simplification * fixes the examples * fix rmt.h * adds support to APB different frequencies * fixes CI and not defined RGB_BUILTIN * new RMT API and examples * fixing commentaties * Update esp32-hal-rgb-led.c * changes Filter API * Fixes example with Filter API * Update PlatformIO scripts for the upcoming 3.0 core (#8183) * Update PlatformIO scripts for the upcoming 3.0 core * Dynamically select proper framework-arduinoespressif32-libs package With this change the dev-platform will be dynamically configured to pull the latest .zip package with precompiled libraries from extracted from package_esp32_index.template.json * free memory on detach (#8264) * SPI - Peripheral manager implementation (#8255) * spi periman implementation * fix header file * remove unused struct * fix missing braces * Update esp32-hal-rmt.c (#8216) Optimizing Peripheral Manager Test * I2C - Peripheral manager implementation (#8220) * i2c-master periman initial commit * i2c-master make detachbus static + comment remove * i2c-slave periman implementation * SetPinBus to INIT on i2cDeinits * Fix slave pins deinit * remove dbg logs * set ret to ESP_FAIL instead of returning * Fix warnings in hal-spi caused by pariman transition * Update esptool.py to version 4.6 * Add platform support for ESP_SR * Add USB Type and valid pin check to periman * replace bus with spi->num+1 (#8279) * Remove default pins from SPI HAL * Add commented out handlers for esptool.js in TinyUSB CDC For future use * Add build defines for host os and fqbn (for debug purposes) * Provide proper memory caps total size * Update Esp.cpp * SDMMC - Peripheral manager implementation (#8289) * sdmmc periman implemented * save pins when SOC_SDMMC_USE_IOMUX * IDF release/v5.1 4bc762621d (#8292) * Adds missing pinMode (#8312) * Adds missing pinMode The example code lacks a pinMode() to initialize the GPIO 0 (button). In Arduino Core 3.0.0, it prints an error message when trying to read a not initialized GPIO. * Update KeyboardLogout.ino Adds <buttonPin> to keep code standard * Update KeyboardReprogram.ino Adds <buttonPin> to keep code standard * LEDC Fade implementation (#8338) * fade API + pointer fixes * Add fade api * Add fade example * update ledc docs * remove unused variables * fix path to example * Adds USB to Peripheral Manager - Arduino Core 3.0.0 (#8335) * ETHERNET - Peripheral manager implementation (#8297) * Peripheral manager implemented * remove unused variable * Add all RMII pins * fix typo * Adds HardwareSerial to Peripheral Manager Arduino 3.0.0 (#8328) * Do not limit ETHERNET in periman to only ESP32. SPI is also an option * Initial support for ESP32-C6 (#8337) * Add checks for SOC defines (#8351) * Add checks for SOC defines * Add SoC checks to BLE library * fix i2c compilation error * fix wrong placement of include * add check to SPI library * add check to USB library * add checks to Wire library * Feature/esp32h2 support (#8373) * Initial support for ESP32H2 * Additional changes for ESP32H2 * Update libs for ESP32H2 * Fix flashing on ESP32-H2 * Fix GPIO Configs for ESP32-C6 and ESP32-H2 * Update Timer test sketch * Fix upload flash parameters * Use ets_write_char_uart instead of ets_printf in log_printfv * Print full chip report when log level is sufficient (#8282) * ESP32-C3 does not have ets_write_char_uart * Fix BLE gap event name * HW Testing - Pytest update (#8389) * update tests requirements * remove already handled components * Update version of pytest * Add missing ESP32-H2 to hil.yml * Updated FreeRTOS names (#8418) * HW Testing - ESP32-C6 + ESP32-H2 fixes (#8404) * add C6/H2 to tests cfg.json * remove , * workflow runs-on runner by matrix * Add need for arduino tag to select runner * Add cryptography to requirements.txt * Removed duplicate TX1 define for H2 (#8402) * Fix broken examples * Fixes RMT filter & idle timing and setup (#8359) * Fixes Filter and Idle parameter to uint32 * Fixes Filter and Idle setup * Fixes it to 5.1Libs branch * fix RMT CLK source and Filter API * fixes missing ; * fixes missing ; * fixes RMT example * IDF release/v5.1 a7b62bbcaf (#8438) * Add workflow to build executables from python scripts (#8290) * Add workflow to build executables from python scripts * Push binary to tools * Enable executable signing on Windows * Update get.py * Push binary to tools * Try with multiple files * Try more actions * Try powershell * Restore tools so they do not get rebuilt * Finalize scripts * Push binary to tools * App rollback should be after PSRAM is initialized * Correcting RX1 to GPIO4 and TX1 to GPIO5 to be consistent with documentation. Previous pin use works but is inconsistent with C6 docs. * Fixes Memory Leak (#8486) * fixes preprocessor test (#8485) * fixes preprocessor test When using `#define USE_SOFT_AP` Change `&& not USE_SOFT_AP` ==> `&& !defined(USE_SOFT_AP)` * Adds any BLE capable device in WiFiProv.ino Removing ESP32 restriction for BLE Provisioning. * fix flash mode read out for C6 * Add option for custom partitions without restrictions * SD_MMC update (#8298) * Updated SD_MMC lib and examples * Removed getter implementation and commented usage in examples * squashed updates * IDF release/v5.1 f0437b945f (#8599) * Update package_esp32_index.template.json * Fix printf format build error in BTAdvertisedDeviceSet.cpp --------- Co-authored-by: Pedro Minatel <pedro.minatel@espressif.com> Co-authored-by: Rodrigo Garcia <rodrigo.garcia@espressif.com> Co-authored-by: Ha Thach <thach@tinyusb.org> Co-authored-by: Martin Turski <quiret@vfemail.net> Co-authored-by: raviypujar <raviypujar@gmail.com> Co-authored-by: Jason2866 <24528715+Jason2866@users.noreply.github.com> Co-authored-by: Tomáš Pilný <34927466+PilnyTomas@users.noreply.github.com> Co-authored-by: Jan Procházka <90197375+P-R-O-C-H-Y@users.noreply.github.com> Co-authored-by: Daniel Berlin <dberlin@dberlin.org> Co-authored-by: Nima Askari (نیما عسکری) <nimaltd@yahoo.com> Co-authored-by: rtpmsys <106180646+rtpmsys@users.noreply.github.com> Co-authored-by: bytiful <55647551+bytiful@users.noreply.github.com> Co-authored-by: tmfarrington <tmfarrington@users.noreply.github.com> Co-authored-by: Krzysiek S <chris.streh@gmail.com> Co-authored-by: surt <carl.olsson@gmail.com> Co-authored-by: Max Scheffler <max.scheffler@pm.me> Co-authored-by: Clemens Kirchgatterer <clemens@1541.org> Co-authored-by: Peter Pan's Techland <twinkle-pirate@hotmail.com> Co-authored-by: Roman <programmeofficemilkyway@gmail.com> Co-authored-by: Eistee <Eistee82@users.noreply.github.com> Co-authored-by: David McCurley <44048235+mrengineer7777@users.noreply.github.com> Co-authored-by: Gaya3N25 <30388176+Gaya3N25@users.noreply.github.com> Co-authored-by: renebohne <rene.bohne@gmail.com> Co-authored-by: Olivér Remény <25034625+remenyo@users.noreply.github.com> Co-authored-by: davidk88 <david.kotar@gmail.com> Co-authored-by: Vojtěch Bartoška <76958047+VojtechBartoska@users.noreply.github.com> Co-authored-by: James Armstrong <jamesarmstrong3@me.com> Co-authored-by: Valerii Koval <valeros@users.noreply.github.com> Co-authored-by: Peter G. Jensen <root@petergjoel.dk>
2023-10-05 11:54:25 +00:00
offset_align = get_alignment_offset_for_type(self.type)
if self.offset % offset_align:
raise ValidationError(self, "Offset 0x%x is not aligned to 0x%x" % (self.offset, offset_align))
ESP-IDF v5.1 (#7733) * Initial changes to compile under ESP-IDF v5.1 * Initial import for ESP-IDF v5.1 libs * Update toolchain * Update esp32-hal-psram.c * Add missing LDs * Update platform.txt * Stop some CI jobs, because they will always fail * Fix examples * Update app_httpd.cpp * Update ResetReason.ino * Warnings fixes * Added the example guideline and template (#7665) * Added the example guideline and template * PR review changes with some typos and grammar fixes * Changes according to the PR review * Added ESP32-S3 link to the datasheet (#7738) * Update HiFreq_ADC.ino * Replace periph_ctrl.h use because of deprecation * Replace esp_spi_flash.h use because of deprecation * Add includes to male mDNS::enableWorkstation compile * Fix ssl_client mbedtls_pk_parse_key callback * Update temperature sensor driver * Allow sketch_utils to compile with arduino-cli * Run CI with arduino-cli * Fix arduino-cli CI build on Windows * Refactor platform.txt to not use components installed through the board manager when running from git * Initial Peripheral Manager Implementation * Update SigmaDelta driver to use the new ESP-IDF driver API * Small improvements to peripheral manager and SigmaDelta * Remove deleted function from SigmaDelta header * Update DAC driver to use the new ESP-IDF driver API * Adds softAp(String) to make it compatible with ESP8266 (#7801) * Fix commentary (#7800) Minor fix based on observation done in https://github.com/espressif/arduino-esp32/issues/7795#issuecomment-1416868611 * add adafruit new board feather esp32s2 reserve tft (#7794) * bugfix: add <stdint.h> for uint8_t to avoid compilation failure (GCC 11.2.0) (#7744) * Adding 3rd party boards for VALTRACK-V4-VTS-ESP32-C3 & VALTRACK-V4-MFW-ESP32-C3 (#7735) * Added VALTRACK-V4-VTS-ESP32-C3 board definition Created pins_arduino.h & made changes to boards.txt with necessary changes * Modified the URL * Renamed json * renamed all auRL * Adding VALTRACK-V4 series board definitions Added VALTRACK-V4-VTS-ESP32C3 & VALTRACK-V4-MFW-ESP32-C3 board variants * Adding VALTRACK-V4 series board definitions Added VALTRACK-V4-VTS-ESP32C3 & VALTRACK-V4-MFW-ESP32-C3 board variants * Reverted package_esp32_index.template.json restored package_esp32_index.template.json from edits * Reverted package_esp32_index.template.json Added new line to package_esp32_index.template.json * Update Platformio CI (#7725) * WiFiClient example fix (#7711) * Modified WiFiClient example to use thingspeak instead of non-functionig sparkfun * Moved instructions to README * Fixed spelling * Added link to S3 datasheet --------- Co-authored-by: Jan Procházka <90197375+P-R-O-C-H-Y@users.noreply.github.com> * Mirror update from Heltec repository (#7709) Heltec updated the I2C pins in https://github.com/Heltec-Aaron-Lee/WiFi_Kit_series/commit/b10f4bf85d13fd01be80dcdb0eb59e6a8c8ba19a * Fixes BLE data printing (#7699) * Fixes BLE data printing BLE data has no '\0' terminator, therefore it can't be printed as a regular C string. This fix just prints the BLE data based on its length. * Simplify printing to a single call * split menu options + lora_32_V3 fix (#7697) * Change header gaurd name (#7696) * Fix Name (#7691) Wrong name in definitions. * Fix error in WiFiClient.cpp where the connect function fails for timeouts below 1 second (#7686) * Update WiFiClient.cpp This change will allow specifying connect timeouts below 1 second. Without this change, if connect timeouts under 1 second are given, the connect defaults to 0ms and fails. This will also allow timeouts in fractions of seconds, e.g. 1500ms. Without this change, connect timeouts are truncated to full second increments. * Make parameter timeout_ms clear * Change connection timeout_ms name for clarity --------- Co-authored-by: Rodrigo Garcia <rodrigo.garcia@espressif.com> * fixed the function header (#7674) * fixed the function header * fixed function name and paramaters --------- Co-authored-by: Jan Procházka <90197375+P-R-O-C-H-Y@users.noreply.github.com> * Ticker fix solving #6155 (#7664) * Wrapped Ticker functions with #pragma disabling -Wcast-function-type * Revert "Wrapped Ticker functions with #pragma disabling -Wcast-function-type" This reverts commit 160be7e67a10d01b6e44c4bf2521c0ccd6348976. * Fixed Ticker example * Modified Ticker example * Fixed LED_BUILTIN err for ESP32 --------- Co-authored-by: Jan Procházka <90197375+P-R-O-C-H-Y@users.noreply.github.com> * setPins fix ESP32 "specified pins are not supported by this chip." (#7646) [ESP32: SDMMCFS::begin hardcodes the usage of slot 1, only check if the pins match slot 1 pins.] setPins() was testing pins D1, D2 and D3 all against D1 ... fine in 1 pin mode when all are -1 not so much if you're trying to get 4 pin mode working. I now see this function doesn't really do anything on the ESP32...accept now correctly checks that you are trying to use the slot 1 pins. Co-authored-by: Jan Procházka <90197375+P-R-O-C-H-Y@users.noreply.github.com> * Allow passing IP as connect method parameter in WiFiClientSecure and skip unnecessary host-ip conversions (#7643) * Add LED_BUILTIN* definitions and initialization for LEDs to stop them floating. (#7636) Co-authored-by: Rodrigo Garcia <rodrigo.garcia@espressif.com> * Expand path to tinuf2 image when checking existence in platformio-build.py (#7631) * Expand path to tinuf2 image when checking existence * More isFiles fixed * Remove (useless) trailing semicolon from Print.cpp (#7622) * ADD: New variant Edgebox-ESP-100 (#7771) * ADD: New variant Edgebox-ESP-100 * FIX: Edgebox-ESP-100 Board.txt usb mode option change back to default value as ESP32S3 * Add Crabik Slot ESP32-S3 board (#7790) * Added Crabik Slot ESP32-S3 * Adding CPU frequency settings and removing excess from partition scheme settings * new variant LilyGO T-Display-S3 (#7763) * new variant LilyGO T-Display-S3 https://github.com/Xinyuan-LilyGO/T-Display-S3 * Add boards.txt definition --------- Co-authored-by: Me No Dev <me-no-dev@users.noreply.github.com> * Update get.py to support Apple ARM64 * Update package_esp32_index.template.json * WString Return bool (#7774) * Add Roboheart Hercules development board to the esp32-core (#7672) * added Roboheart Hercules pin definitions and board.txt entries * added package_roboheat.json for prototyping * Roboheart Hercules pins * Updated the pins * Delete package_roboheart.json * Requested changes --------- Co-authored-by: renebohne <rene.bohne@gmail.com> * Reword "ESP-IDF as Component" (#7812) I think "Arduino as an ESP-IDF component" or just "As ESP-IDF component" instead of "ESP-IDF as Component" is more correct way to name the link. 1. "ESP-IDF as Component" would imply that ESP-IDF is some sort of library for Arduino, which is (IMO) misleading, because it's true the other way around. 2. It's written as "Arduino as an ESP-IDF component" on the webpage it points to as well. - Also I removed the capitalization from "Component" as I have not found a reason why is it capitalized. * add new board Adafruit Feather ESP32-S3 Reverse TFT (#7811) * Multi threading examples (tasks, queues, semaphores, mutexes) (#7660) * Moved and renamed example ESP32/FreeRTOS to MultiThreading/BasicMultiThreading * Added dummy files * Modified original example * Fixed BasicMultiThreading.ino * Added Example demonstrating use of queues * Extended info in BasicMultiThreading * Renamed Queues to singular Queue * Added Mutex example * Added Semaphore example * Moved info from example to README * Moved doc from Mutex to README * Added Queue README * Removed unecesary text * Fixed grammar * Increased stack size for Sempahore example * Added headers into .ino files * Added word Example at the end of title in README * removed unused line * Added forgotten README * Modified BasicMultiThreading example * Added missing S3 entry in README * moved location * Update ESP-IDF libs * Update CMakeLists.txt * Update esptool to v4.4 * Add function timerAttachInterruptFlag (#7809) * Update esptool to v4.5 * ADC refactoring (#7827) * Adc refactored + periman implementation Peripheral manager still needs to be checked if the implementation is right. * switched to working solution for milivolts read * Periman detachbus fix * coding style * fix CI warnings * fix FreeRTOS example * Update ETH.cpp * Update FunctionalInterruptStruct.ino * Update package_esp32_index.template.json * Update package_esp32_index.template.json * Fixes for the latest IDF v5.1 * update esp-idf libs and toolchain * Turn OFF auto crystal frequency for ESP32 (needed by TWAI) * Update examples * Switch build to mostly use flags from files Includes can not be done this way * Reorganize flag files * Optimize chip build flags further * Revert defines from file. MBEDTLS_CONFIG_FILE does not properly expand * Add support for includes and defines from file * Replace old sdk path references in platform.txt * use gcc-ar (#8013) * Makes F_CPU generic for all SoC (#8007) Based on CONFIG_ESP_DEFAULT_CPU_FREQ_MHZ that is correctly defined in the sdkconfig file for each SoC. * TIMER refactoring (#7904) * refactor using GPtimer * Updated timer HW test * fix examples * Add v2.0.7 in issue template (#7871) * refactor using GPtimer * Updated timer HW test * fix examples * Revert "Add v2.0.7 in issue template (#7871)" This reverts commit fcc3b17d62ff57861f8913ca1f142fd5163b7457. * Update upload-artifact to v3 in HW CI * Revert "Update upload-artifact to v3 in HW CI" This reverts commit 1ba228071718ba37c4e26d98db22f77b2a7364a6. * replace resolution with frequency * remove count_down option * countup removed from examples + header * Refactored timer object * code cleanup + examples and tests fixes * TimerAlarm fix --------- Co-authored-by: Vojtěch Bartoška <76958047+VojtechBartoska@users.noreply.github.com> * [Docs] ADC and Timer API Update (+some docs fixes) (#7906) * updated docs * remove hall sensor docs Removed Hall sensor documentation as its no longer supported in IDF-5 * Fixed ESPNow examples location in docs * Last timer refactored API + gpio small fix * AlarmWrite fix * Fixes APLL/PLL with RTC Frequency (#8025) log_d() was displaying APLL for any SoC, but S3 and C3 has not such option, causing compilation errors. * Update IDF libs and fix OPI PSRAM on S3 * Add setMode function HardwareSerial.c to set the esp32 uart mode for use with RS485 auto RTS (#7935) * Added setMode function to set the esp32 uart mode Used to set the esp32 uart mode for use with RS485 Half Duplex and the auto RTS pin mode. This will set/clear the RTS pin output to control the RE/DE pin on most RS485 chips. * Add Success (bool) return in some functions * Add Success (bool) return code to some functions * Add Success (bool) return to some functions * Add Success (bool) return to some functions * Fix uartSetRxTimeout return type --------- Co-authored-by: Rodrigo Garcia <rodrigo.garcia@espressif.com> * Add support for esp-elf-gdb * WFG Crashfix (#8044) * Update component libs * IDF release/v5.1 (#8061) * IDF release/v5.1 bb9200acec * Update Esp.cpp * IDF release/v5.1 420ebd208a * Update esp32-hal-psram.c * Switch SDK to be an external package * fix path (#8096) * Makes UART work at any APB Frequency (#8097) Fixes HardwareSerial to work with IDF 5.1 on any CPU/APB Frequency (240MHz to 10MHZ), including user created low power modes. * Add required callbacks for TinyUSB DFU * Update version to 3.0.0 * Add ESP.getCoreVersion() and update ESP.getChipModel() * Update timer hal for the latest 5.1 * Use separate RX and TX buffer sizes in HTTP client optimizes download by allowing up to 4K packets to be received * Rename clock tree enum name in latest 5.1 * ESP32-H4 support was removed in ESP-IDF v5.1 * IDF release/v5.1 2004bf4e11 (#8165) * Deinit previous bus first (#8180) * TIMER - add timer_started flag, fix timerEnd() + timer HW test (#8135) * Add timer_started flag and stop before disable * Fix timer HW test * TOUCH - Peripheral manager implementation (#8129) * Touch periman implemented * Deinit previous bus first * LEDC Refactoring - Peripheral manager implemented (#8126) * LEDC periman implementation * Fix examples * Rework tone * Update ledc docs * fix missing bracket * Update analog funtions esp32-hal.h * Update CameraWebServer example * Fix HiFreq_ADC example * minor fixes - typos * Avoid calling tone/notone when tone already runs on dif. pin * Remove unused channels_resolution * GPIO - Peripheral manager implementation (#8179) * periman-implementation * fix RGB_BUILTIN and remove space * Enforces more consistency into Peripheral Manager (#8188) * Avoid log_i() message the first time a bus is assigned * Prevent operation with ESP32_BUS_TYPE_INIT * keeps coding style * do not print messages on INIT bus type * [Arduino Core 3.0.0] RMT IDF5.1 Refactoring (#7994) * RMT IDF5.1 refactoring * Fixes initial value setting * removed rmtRead() with user callback * simplify/remove Read data structure * Deep API simplification * fixes the examples * fix rmt.h * adds support to APB different frequencies * fixes CI and not defined RGB_BUILTIN * new RMT API and examples * fixing commentaties * Update esp32-hal-rgb-led.c * changes Filter API * Fixes example with Filter API * Update PlatformIO scripts for the upcoming 3.0 core (#8183) * Update PlatformIO scripts for the upcoming 3.0 core * Dynamically select proper framework-arduinoespressif32-libs package With this change the dev-platform will be dynamically configured to pull the latest .zip package with precompiled libraries from extracted from package_esp32_index.template.json * free memory on detach (#8264) * SPI - Peripheral manager implementation (#8255) * spi periman implementation * fix header file * remove unused struct * fix missing braces * Update esp32-hal-rmt.c (#8216) Optimizing Peripheral Manager Test * I2C - Peripheral manager implementation (#8220) * i2c-master periman initial commit * i2c-master make detachbus static + comment remove * i2c-slave periman implementation * SetPinBus to INIT on i2cDeinits * Fix slave pins deinit * remove dbg logs * set ret to ESP_FAIL instead of returning * Fix warnings in hal-spi caused by pariman transition * Update esptool.py to version 4.6 * Add platform support for ESP_SR * Add USB Type and valid pin check to periman * replace bus with spi->num+1 (#8279) * Remove default pins from SPI HAL * Add commented out handlers for esptool.js in TinyUSB CDC For future use * Add build defines for host os and fqbn (for debug purposes) * Provide proper memory caps total size * Update Esp.cpp * SDMMC - Peripheral manager implementation (#8289) * sdmmc periman implemented * save pins when SOC_SDMMC_USE_IOMUX * IDF release/v5.1 4bc762621d (#8292) * Adds missing pinMode (#8312) * Adds missing pinMode The example code lacks a pinMode() to initialize the GPIO 0 (button). In Arduino Core 3.0.0, it prints an error message when trying to read a not initialized GPIO. * Update KeyboardLogout.ino Adds <buttonPin> to keep code standard * Update KeyboardReprogram.ino Adds <buttonPin> to keep code standard * LEDC Fade implementation (#8338) * fade API + pointer fixes * Add fade api * Add fade example * update ledc docs * remove unused variables * fix path to example * Adds USB to Peripheral Manager - Arduino Core 3.0.0 (#8335) * ETHERNET - Peripheral manager implementation (#8297) * Peripheral manager implemented * remove unused variable * Add all RMII pins * fix typo * Adds HardwareSerial to Peripheral Manager Arduino 3.0.0 (#8328) * Do not limit ETHERNET in periman to only ESP32. SPI is also an option * Initial support for ESP32-C6 (#8337) * Add checks for SOC defines (#8351) * Add checks for SOC defines * Add SoC checks to BLE library * fix i2c compilation error * fix wrong placement of include * add check to SPI library * add check to USB library * add checks to Wire library * Feature/esp32h2 support (#8373) * Initial support for ESP32H2 * Additional changes for ESP32H2 * Update libs for ESP32H2 * Fix flashing on ESP32-H2 * Fix GPIO Configs for ESP32-C6 and ESP32-H2 * Update Timer test sketch * Fix upload flash parameters * Use ets_write_char_uart instead of ets_printf in log_printfv * Print full chip report when log level is sufficient (#8282) * ESP32-C3 does not have ets_write_char_uart * Fix BLE gap event name * HW Testing - Pytest update (#8389) * update tests requirements * remove already handled components * Update version of pytest * Add missing ESP32-H2 to hil.yml * Updated FreeRTOS names (#8418) * HW Testing - ESP32-C6 + ESP32-H2 fixes (#8404) * add C6/H2 to tests cfg.json * remove , * workflow runs-on runner by matrix * Add need for arduino tag to select runner * Add cryptography to requirements.txt * Removed duplicate TX1 define for H2 (#8402) * Fix broken examples * Fixes RMT filter & idle timing and setup (#8359) * Fixes Filter and Idle parameter to uint32 * Fixes Filter and Idle setup * Fixes it to 5.1Libs branch * fix RMT CLK source and Filter API * fixes missing ; * fixes missing ; * fixes RMT example * IDF release/v5.1 a7b62bbcaf (#8438) * Add workflow to build executables from python scripts (#8290) * Add workflow to build executables from python scripts * Push binary to tools * Enable executable signing on Windows * Update get.py * Push binary to tools * Try with multiple files * Try more actions * Try powershell * Restore tools so they do not get rebuilt * Finalize scripts * Push binary to tools * App rollback should be after PSRAM is initialized * Correcting RX1 to GPIO4 and TX1 to GPIO5 to be consistent with documentation. Previous pin use works but is inconsistent with C6 docs. * Fixes Memory Leak (#8486) * fixes preprocessor test (#8485) * fixes preprocessor test When using `#define USE_SOFT_AP` Change `&& not USE_SOFT_AP` ==> `&& !defined(USE_SOFT_AP)` * Adds any BLE capable device in WiFiProv.ino Removing ESP32 restriction for BLE Provisioning. * fix flash mode read out for C6 * Add option for custom partitions without restrictions * SD_MMC update (#8298) * Updated SD_MMC lib and examples * Removed getter implementation and commented usage in examples * squashed updates * IDF release/v5.1 f0437b945f (#8599) * Update package_esp32_index.template.json * Fix printf format build error in BTAdvertisedDeviceSet.cpp --------- Co-authored-by: Pedro Minatel <pedro.minatel@espressif.com> Co-authored-by: Rodrigo Garcia <rodrigo.garcia@espressif.com> Co-authored-by: Ha Thach <thach@tinyusb.org> Co-authored-by: Martin Turski <quiret@vfemail.net> Co-authored-by: raviypujar <raviypujar@gmail.com> Co-authored-by: Jason2866 <24528715+Jason2866@users.noreply.github.com> Co-authored-by: Tomáš Pilný <34927466+PilnyTomas@users.noreply.github.com> Co-authored-by: Jan Procházka <90197375+P-R-O-C-H-Y@users.noreply.github.com> Co-authored-by: Daniel Berlin <dberlin@dberlin.org> Co-authored-by: Nima Askari (نیما عسکری) <nimaltd@yahoo.com> Co-authored-by: rtpmsys <106180646+rtpmsys@users.noreply.github.com> Co-authored-by: bytiful <55647551+bytiful@users.noreply.github.com> Co-authored-by: tmfarrington <tmfarrington@users.noreply.github.com> Co-authored-by: Krzysiek S <chris.streh@gmail.com> Co-authored-by: surt <carl.olsson@gmail.com> Co-authored-by: Max Scheffler <max.scheffler@pm.me> Co-authored-by: Clemens Kirchgatterer <clemens@1541.org> Co-authored-by: Peter Pan's Techland <twinkle-pirate@hotmail.com> Co-authored-by: Roman <programmeofficemilkyway@gmail.com> Co-authored-by: Eistee <Eistee82@users.noreply.github.com> Co-authored-by: David McCurley <44048235+mrengineer7777@users.noreply.github.com> Co-authored-by: Gaya3N25 <30388176+Gaya3N25@users.noreply.github.com> Co-authored-by: renebohne <rene.bohne@gmail.com> Co-authored-by: Olivér Remény <25034625+remenyo@users.noreply.github.com> Co-authored-by: davidk88 <david.kotar@gmail.com> Co-authored-by: Vojtěch Bartoška <76958047+VojtechBartoska@users.noreply.github.com> Co-authored-by: James Armstrong <jamesarmstrong3@me.com> Co-authored-by: Valerii Koval <valeros@users.noreply.github.com> Co-authored-by: Peter G. Jensen <root@petergjoel.dk>
2023-10-05 11:54:25 +00:00
if self.type == APP_TYPE and secure is not SECURE_NONE:
size_align = get_alignment_size_for_type(self.type)
if self.size % size_align:
raise ValidationError(self, "Size 0x%x is not aligned to 0x%x" % (self.size, size_align))
if self.name in TYPES and TYPES.get(self.name, "") != self.type:
critical(
"WARNING: Partition has name '%s' which is a partition type, but does not match this partition's "
"type (0x%x). Mistake in partition table?" % (self.name, self.type)
)
Update IDF to aaf1239 (#1539) * fix sdmmc config * Fix warnings in EEPROM from @Curclamas * remove leftover TAG in EEPROM * Initial add of @stickbreaker i2c * Add log_n * fix warnings when log is off * i2c code clean up and reorganization * add flags to interrupt allocator * fix sdmmc config * Fix warnings in EEPROM from @Curclamas * remove leftover TAG in EEPROM * fix errors with latest IDF * fix debug optimization (#1365) incorrect optimization for debugging tick markers. * Fix some missing BT header * Change BTSerial log calls * Update BLE lib * Arduino-ESP32 release management scripted (#1515) * Calculate an absolute path for a custom partitions table (#1452) * * Arduino-ESP32 release management scripted (ready-to-merge) * * secure env for espressif/arduino-esp32 * * build tests enabled * gitter webhook enabled * * gitter room link fixed * better comment * * filepaths fixed * BT Serial adjustments * * don't run sketch builds & tests for tagged builds * Return false from WiFi.hostByName() if hostname is not resolved * Free BT Memory when BT is not used * WIFI_MODE_NULL is not supported anymore * Select some key examples to build with PlatformIO to save some time * Update BLE lib * Fixed BLE lib * Major WiFi overhaul - auto reconnect on connection loss now works - moved to event groups - some code clean up and procedure optimizations - new methods to get a more elaborate system ststus * Add cmake tests to travis * Add initial AsyncUDP * Add NetBIOS lib and fix CMake includes * Add Initial WebServer * Fix WebServer and examples * travis not quiting on build fail * Try different travis build * Update IDF to aaf1239 * Fix WPS Example * fix script permission and add some fail tests to sketch builder * Add missing space in WiFiClient::write(Stream &stream)
2018-06-27 07:01:06 +00:00
all_subtype_names = []
for names in (t.keys() for t in SUBTYPES.values()):
all_subtype_names += names
if self.name in all_subtype_names and SUBTYPES.get(self.type, {}).get(self.name, "") != self.subtype:
critical(
"WARNING: Partition has name '%s' which is a partition subtype, but this partition has "
"non-matching type 0x%x and subtype 0x%x. Mistake in partition table?"
% (self.name, self.type, self.subtype)
)
Update IDF to aaf1239 (#1539) * fix sdmmc config * Fix warnings in EEPROM from @Curclamas * remove leftover TAG in EEPROM * Initial add of @stickbreaker i2c * Add log_n * fix warnings when log is off * i2c code clean up and reorganization * add flags to interrupt allocator * fix sdmmc config * Fix warnings in EEPROM from @Curclamas * remove leftover TAG in EEPROM * fix errors with latest IDF * fix debug optimization (#1365) incorrect optimization for debugging tick markers. * Fix some missing BT header * Change BTSerial log calls * Update BLE lib * Arduino-ESP32 release management scripted (#1515) * Calculate an absolute path for a custom partitions table (#1452) * * Arduino-ESP32 release management scripted (ready-to-merge) * * secure env for espressif/arduino-esp32 * * build tests enabled * gitter webhook enabled * * gitter room link fixed * better comment * * filepaths fixed * BT Serial adjustments * * don't run sketch builds & tests for tagged builds * Return false from WiFi.hostByName() if hostname is not resolved * Free BT Memory when BT is not used * WIFI_MODE_NULL is not supported anymore * Select some key examples to build with PlatformIO to save some time * Update BLE lib * Fixed BLE lib * Major WiFi overhaul - auto reconnect on connection loss now works - moved to event groups - some code clean up and procedure optimizations - new methods to get a more elaborate system ststus * Add cmake tests to travis * Add initial AsyncUDP * Add NetBIOS lib and fix CMake includes * Add Initial WebServer * Fix WebServer and examples * travis not quiting on build fail * Try different travis build * Update IDF to aaf1239 * Fix WPS Example * fix script permission and add some fail tests to sketch builder * Add missing space in WiFiClient::write(Stream &stream)
2018-06-27 07:01:06 +00:00
STRUCT_FORMAT = b"<2sBBLL16sL"
@classmethod
def from_binary(cls, b):
if len(b) != 32:
raise InputError("Partition definition length must be exactly 32 bytes. Got %d bytes." % len(b))
res = cls()
(magic, res.type, res.subtype, res.offset, res.size, res.name, flags) = struct.unpack(cls.STRUCT_FORMAT, b)
if b"\x00" in res.name: # strip null byte padding from name string
res.name = res.name[: res.name.index(b"\x00")]
2017-08-01 05:51:04 +00:00
res.name = res.name.decode()
if magic != cls.MAGIC_BYTES:
raise InputError("Invalid magic bytes (%r) for partition definition" % magic)
for flag, bit in cls.FLAGS.items():
if flags & (1 << bit):
setattr(res, flag, True)
flags &= ~(1 << bit)
if flags != 0:
critical("WARNING: Partition definition had unknown flag(s) 0x%08x. Newer binary format?" % flags)
return res
def get_flags_list(self):
return [flag for flag in self.FLAGS.keys() if getattr(self, flag)]
def to_binary(self):
flags = sum((1 << self.FLAGS[flag]) for flag in self.get_flags_list())
return struct.pack(
self.STRUCT_FORMAT,
self.MAGIC_BYTES,
self.type,
self.subtype,
self.offset,
self.size,
self.name.encode(),
flags,
)
def to_csv(self, simple_formatting=False):
def addr_format(a, include_sizes):
if not simple_formatting and include_sizes:
for (val, suffix) in [(0x100000, "M"), (0x400, "K")]:
if a % val == 0:
return "%d%s" % (a // val, suffix)
return "0x%x" % a
def lookup_keyword(t, keywords):
for k, v in keywords.items():
if simple_formatting is False and t == v:
return k
return "%d" % t
def generate_text_flags():
"""colon-delimited list of flags"""
return ":".join(self.get_flags_list())
return ",".join(
[
self.name,
lookup_keyword(self.type, TYPES),
lookup_keyword(self.subtype, SUBTYPES.get(self.type, {})),
addr_format(self.offset, False),
addr_format(self.size, True),
generate_text_flags(),
]
)
def parse_int(v, keywords={}):
"""Generic parser for integer fields - int(x,0) with provision for
k/m/K/M suffixes and 'keyword' value lookup.
"""
try:
for letter, multiplier in [("k", 1024), ("m", 1024 * 1024)]:
if v.lower().endswith(letter):
return parse_int(v[:-1], keywords) * multiplier
return int(v, 0)
except ValueError:
if len(keywords) == 0:
raise InputError("Invalid field value %s" % v)
try:
return keywords[v.lower()]
except KeyError:
raise InputError("Value '%s' is not valid. Known keywords: %s" % (v, ", ".join(keywords)))
def main(): # noqa: C901
global quiet
global md5sum
Update IDF to aaf1239 (#1539) * fix sdmmc config * Fix warnings in EEPROM from @Curclamas * remove leftover TAG in EEPROM * Initial add of @stickbreaker i2c * Add log_n * fix warnings when log is off * i2c code clean up and reorganization * add flags to interrupt allocator * fix sdmmc config * Fix warnings in EEPROM from @Curclamas * remove leftover TAG in EEPROM * fix errors with latest IDF * fix debug optimization (#1365) incorrect optimization for debugging tick markers. * Fix some missing BT header * Change BTSerial log calls * Update BLE lib * Arduino-ESP32 release management scripted (#1515) * Calculate an absolute path for a custom partitions table (#1452) * * Arduino-ESP32 release management scripted (ready-to-merge) * * secure env for espressif/arduino-esp32 * * build tests enabled * gitter webhook enabled * * gitter room link fixed * better comment * * filepaths fixed * BT Serial adjustments * * don't run sketch builds & tests for tagged builds * Return false from WiFi.hostByName() if hostname is not resolved * Free BT Memory when BT is not used * WIFI_MODE_NULL is not supported anymore * Select some key examples to build with PlatformIO to save some time * Update BLE lib * Fixed BLE lib * Major WiFi overhaul - auto reconnect on connection loss now works - moved to event groups - some code clean up and procedure optimizations - new methods to get a more elaborate system ststus * Add cmake tests to travis * Add initial AsyncUDP * Add NetBIOS lib and fix CMake includes * Add Initial WebServer * Fix WebServer and examples * travis not quiting on build fail * Try different travis build * Update IDF to aaf1239 * Fix WPS Example * fix script permission and add some fail tests to sketch builder * Add missing space in WiFiClient::write(Stream &stream)
2018-06-27 07:01:06 +00:00
global offset_part_table
global secure
parser = argparse.ArgumentParser(description="ESP32 partition table utility")
parser.add_argument(
"--flash-size",
help="Optional flash size limit, checks partition table fits in flash",
nargs="?",
choices=["1MB", "2MB", "4MB", "8MB", "16MB", "32MB", "64MB", "128MB"],
)
parser.add_argument(
"--disable-md5sum", help="Disable md5 checksum for the partition table", default=False, action="store_true"
)
parser.add_argument("--no-verify", help="Don't verify partition table fields", action="store_true")
parser.add_argument(
"--verify",
"-v",
help="Verify partition table fields (deprecated, this behavior is "
"enabled by default and this flag does nothing.",
action="store_true",
)
parser.add_argument("--quiet", "-q", help="Don't print non-critical status messages to stderr", action="store_true")
parser.add_argument("--offset", "-o", help="Set offset partition table", default="0x8000")
parser.add_argument(
"--secure",
help="Require app partitions to be suitable for secure boot",
nargs="?",
const=SECURE_V1,
choices=[SECURE_V1, SECURE_V2],
)
parser.add_argument("--extra-partition-subtypes", help="Extra partition subtype entries", nargs="*")
parser.add_argument("input", help="Path to CSV or binary file to parse.", type=argparse.FileType("rb"))
parser.add_argument(
"output",
help="Path to output converted binary or CSV file. Will use stdout if omitted.",
nargs="?",
default="-",
)
args = parser.parse_args()
quiet = args.quiet
md5sum = not args.disable_md5sum
secure = args.secure
Update IDF to aaf1239 (#1539) * fix sdmmc config * Fix warnings in EEPROM from @Curclamas * remove leftover TAG in EEPROM * Initial add of @stickbreaker i2c * Add log_n * fix warnings when log is off * i2c code clean up and reorganization * add flags to interrupt allocator * fix sdmmc config * Fix warnings in EEPROM from @Curclamas * remove leftover TAG in EEPROM * fix errors with latest IDF * fix debug optimization (#1365) incorrect optimization for debugging tick markers. * Fix some missing BT header * Change BTSerial log calls * Update BLE lib * Arduino-ESP32 release management scripted (#1515) * Calculate an absolute path for a custom partitions table (#1452) * * Arduino-ESP32 release management scripted (ready-to-merge) * * secure env for espressif/arduino-esp32 * * build tests enabled * gitter webhook enabled * * gitter room link fixed * better comment * * filepaths fixed * BT Serial adjustments * * don't run sketch builds & tests for tagged builds * Return false from WiFi.hostByName() if hostname is not resolved * Free BT Memory when BT is not used * WIFI_MODE_NULL is not supported anymore * Select some key examples to build with PlatformIO to save some time * Update BLE lib * Fixed BLE lib * Major WiFi overhaul - auto reconnect on connection loss now works - moved to event groups - some code clean up and procedure optimizations - new methods to get a more elaborate system ststus * Add cmake tests to travis * Add initial AsyncUDP * Add NetBIOS lib and fix CMake includes * Add Initial WebServer * Fix WebServer and examples * travis not quiting on build fail * Try different travis build * Update IDF to aaf1239 * Fix WPS Example * fix script permission and add some fail tests to sketch builder * Add missing space in WiFiClient::write(Stream &stream)
2018-06-27 07:01:06 +00:00
offset_part_table = int(args.offset, 0)
ESP-IDF v5.1 (#7733) * Initial changes to compile under ESP-IDF v5.1 * Initial import for ESP-IDF v5.1 libs * Update toolchain * Update esp32-hal-psram.c * Add missing LDs * Update platform.txt * Stop some CI jobs, because they will always fail * Fix examples * Update app_httpd.cpp * Update ResetReason.ino * Warnings fixes * Added the example guideline and template (#7665) * Added the example guideline and template * PR review changes with some typos and grammar fixes * Changes according to the PR review * Added ESP32-S3 link to the datasheet (#7738) * Update HiFreq_ADC.ino * Replace periph_ctrl.h use because of deprecation * Replace esp_spi_flash.h use because of deprecation * Add includes to male mDNS::enableWorkstation compile * Fix ssl_client mbedtls_pk_parse_key callback * Update temperature sensor driver * Allow sketch_utils to compile with arduino-cli * Run CI with arduino-cli * Fix arduino-cli CI build on Windows * Refactor platform.txt to not use components installed through the board manager when running from git * Initial Peripheral Manager Implementation * Update SigmaDelta driver to use the new ESP-IDF driver API * Small improvements to peripheral manager and SigmaDelta * Remove deleted function from SigmaDelta header * Update DAC driver to use the new ESP-IDF driver API * Adds softAp(String) to make it compatible with ESP8266 (#7801) * Fix commentary (#7800) Minor fix based on observation done in https://github.com/espressif/arduino-esp32/issues/7795#issuecomment-1416868611 * add adafruit new board feather esp32s2 reserve tft (#7794) * bugfix: add <stdint.h> for uint8_t to avoid compilation failure (GCC 11.2.0) (#7744) * Adding 3rd party boards for VALTRACK-V4-VTS-ESP32-C3 & VALTRACK-V4-MFW-ESP32-C3 (#7735) * Added VALTRACK-V4-VTS-ESP32-C3 board definition Created pins_arduino.h & made changes to boards.txt with necessary changes * Modified the URL * Renamed json * renamed all auRL * Adding VALTRACK-V4 series board definitions Added VALTRACK-V4-VTS-ESP32C3 & VALTRACK-V4-MFW-ESP32-C3 board variants * Adding VALTRACK-V4 series board definitions Added VALTRACK-V4-VTS-ESP32C3 & VALTRACK-V4-MFW-ESP32-C3 board variants * Reverted package_esp32_index.template.json restored package_esp32_index.template.json from edits * Reverted package_esp32_index.template.json Added new line to package_esp32_index.template.json * Update Platformio CI (#7725) * WiFiClient example fix (#7711) * Modified WiFiClient example to use thingspeak instead of non-functionig sparkfun * Moved instructions to README * Fixed spelling * Added link to S3 datasheet --------- Co-authored-by: Jan Procházka <90197375+P-R-O-C-H-Y@users.noreply.github.com> * Mirror update from Heltec repository (#7709) Heltec updated the I2C pins in https://github.com/Heltec-Aaron-Lee/WiFi_Kit_series/commit/b10f4bf85d13fd01be80dcdb0eb59e6a8c8ba19a * Fixes BLE data printing (#7699) * Fixes BLE data printing BLE data has no '\0' terminator, therefore it can't be printed as a regular C string. This fix just prints the BLE data based on its length. * Simplify printing to a single call * split menu options + lora_32_V3 fix (#7697) * Change header gaurd name (#7696) * Fix Name (#7691) Wrong name in definitions. * Fix error in WiFiClient.cpp where the connect function fails for timeouts below 1 second (#7686) * Update WiFiClient.cpp This change will allow specifying connect timeouts below 1 second. Without this change, if connect timeouts under 1 second are given, the connect defaults to 0ms and fails. This will also allow timeouts in fractions of seconds, e.g. 1500ms. Without this change, connect timeouts are truncated to full second increments. * Make parameter timeout_ms clear * Change connection timeout_ms name for clarity --------- Co-authored-by: Rodrigo Garcia <rodrigo.garcia@espressif.com> * fixed the function header (#7674) * fixed the function header * fixed function name and paramaters --------- Co-authored-by: Jan Procházka <90197375+P-R-O-C-H-Y@users.noreply.github.com> * Ticker fix solving #6155 (#7664) * Wrapped Ticker functions with #pragma disabling -Wcast-function-type * Revert "Wrapped Ticker functions with #pragma disabling -Wcast-function-type" This reverts commit 160be7e67a10d01b6e44c4bf2521c0ccd6348976. * Fixed Ticker example * Modified Ticker example * Fixed LED_BUILTIN err for ESP32 --------- Co-authored-by: Jan Procházka <90197375+P-R-O-C-H-Y@users.noreply.github.com> * setPins fix ESP32 "specified pins are not supported by this chip." (#7646) [ESP32: SDMMCFS::begin hardcodes the usage of slot 1, only check if the pins match slot 1 pins.] setPins() was testing pins D1, D2 and D3 all against D1 ... fine in 1 pin mode when all are -1 not so much if you're trying to get 4 pin mode working. I now see this function doesn't really do anything on the ESP32...accept now correctly checks that you are trying to use the slot 1 pins. Co-authored-by: Jan Procházka <90197375+P-R-O-C-H-Y@users.noreply.github.com> * Allow passing IP as connect method parameter in WiFiClientSecure and skip unnecessary host-ip conversions (#7643) * Add LED_BUILTIN* definitions and initialization for LEDs to stop them floating. (#7636) Co-authored-by: Rodrigo Garcia <rodrigo.garcia@espressif.com> * Expand path to tinuf2 image when checking existence in platformio-build.py (#7631) * Expand path to tinuf2 image when checking existence * More isFiles fixed * Remove (useless) trailing semicolon from Print.cpp (#7622) * ADD: New variant Edgebox-ESP-100 (#7771) * ADD: New variant Edgebox-ESP-100 * FIX: Edgebox-ESP-100 Board.txt usb mode option change back to default value as ESP32S3 * Add Crabik Slot ESP32-S3 board (#7790) * Added Crabik Slot ESP32-S3 * Adding CPU frequency settings and removing excess from partition scheme settings * new variant LilyGO T-Display-S3 (#7763) * new variant LilyGO T-Display-S3 https://github.com/Xinyuan-LilyGO/T-Display-S3 * Add boards.txt definition --------- Co-authored-by: Me No Dev <me-no-dev@users.noreply.github.com> * Update get.py to support Apple ARM64 * Update package_esp32_index.template.json * WString Return bool (#7774) * Add Roboheart Hercules development board to the esp32-core (#7672) * added Roboheart Hercules pin definitions and board.txt entries * added package_roboheat.json for prototyping * Roboheart Hercules pins * Updated the pins * Delete package_roboheart.json * Requested changes --------- Co-authored-by: renebohne <rene.bohne@gmail.com> * Reword "ESP-IDF as Component" (#7812) I think "Arduino as an ESP-IDF component" or just "As ESP-IDF component" instead of "ESP-IDF as Component" is more correct way to name the link. 1. "ESP-IDF as Component" would imply that ESP-IDF is some sort of library for Arduino, which is (IMO) misleading, because it's true the other way around. 2. It's written as "Arduino as an ESP-IDF component" on the webpage it points to as well. - Also I removed the capitalization from "Component" as I have not found a reason why is it capitalized. * add new board Adafruit Feather ESP32-S3 Reverse TFT (#7811) * Multi threading examples (tasks, queues, semaphores, mutexes) (#7660) * Moved and renamed example ESP32/FreeRTOS to MultiThreading/BasicMultiThreading * Added dummy files * Modified original example * Fixed BasicMultiThreading.ino * Added Example demonstrating use of queues * Extended info in BasicMultiThreading * Renamed Queues to singular Queue * Added Mutex example * Added Semaphore example * Moved info from example to README * Moved doc from Mutex to README * Added Queue README * Removed unecesary text * Fixed grammar * Increased stack size for Sempahore example * Added headers into .ino files * Added word Example at the end of title in README * removed unused line * Added forgotten README * Modified BasicMultiThreading example * Added missing S3 entry in README * moved location * Update ESP-IDF libs * Update CMakeLists.txt * Update esptool to v4.4 * Add function timerAttachInterruptFlag (#7809) * Update esptool to v4.5 * ADC refactoring (#7827) * Adc refactored + periman implementation Peripheral manager still needs to be checked if the implementation is right. * switched to working solution for milivolts read * Periman detachbus fix * coding style * fix CI warnings * fix FreeRTOS example * Update ETH.cpp * Update FunctionalInterruptStruct.ino * Update package_esp32_index.template.json * Update package_esp32_index.template.json * Fixes for the latest IDF v5.1 * update esp-idf libs and toolchain * Turn OFF auto crystal frequency for ESP32 (needed by TWAI) * Update examples * Switch build to mostly use flags from files Includes can not be done this way * Reorganize flag files * Optimize chip build flags further * Revert defines from file. MBEDTLS_CONFIG_FILE does not properly expand * Add support for includes and defines from file * Replace old sdk path references in platform.txt * use gcc-ar (#8013) * Makes F_CPU generic for all SoC (#8007) Based on CONFIG_ESP_DEFAULT_CPU_FREQ_MHZ that is correctly defined in the sdkconfig file for each SoC. * TIMER refactoring (#7904) * refactor using GPtimer * Updated timer HW test * fix examples * Add v2.0.7 in issue template (#7871) * refactor using GPtimer * Updated timer HW test * fix examples * Revert "Add v2.0.7 in issue template (#7871)" This reverts commit fcc3b17d62ff57861f8913ca1f142fd5163b7457. * Update upload-artifact to v3 in HW CI * Revert "Update upload-artifact to v3 in HW CI" This reverts commit 1ba228071718ba37c4e26d98db22f77b2a7364a6. * replace resolution with frequency * remove count_down option * countup removed from examples + header * Refactored timer object * code cleanup + examples and tests fixes * TimerAlarm fix --------- Co-authored-by: Vojtěch Bartoška <76958047+VojtechBartoska@users.noreply.github.com> * [Docs] ADC and Timer API Update (+some docs fixes) (#7906) * updated docs * remove hall sensor docs Removed Hall sensor documentation as its no longer supported in IDF-5 * Fixed ESPNow examples location in docs * Last timer refactored API + gpio small fix * AlarmWrite fix * Fixes APLL/PLL with RTC Frequency (#8025) log_d() was displaying APLL for any SoC, but S3 and C3 has not such option, causing compilation errors. * Update IDF libs and fix OPI PSRAM on S3 * Add setMode function HardwareSerial.c to set the esp32 uart mode for use with RS485 auto RTS (#7935) * Added setMode function to set the esp32 uart mode Used to set the esp32 uart mode for use with RS485 Half Duplex and the auto RTS pin mode. This will set/clear the RTS pin output to control the RE/DE pin on most RS485 chips. * Add Success (bool) return in some functions * Add Success (bool) return code to some functions * Add Success (bool) return to some functions * Add Success (bool) return to some functions * Fix uartSetRxTimeout return type --------- Co-authored-by: Rodrigo Garcia <rodrigo.garcia@espressif.com> * Add support for esp-elf-gdb * WFG Crashfix (#8044) * Update component libs * IDF release/v5.1 (#8061) * IDF release/v5.1 bb9200acec * Update Esp.cpp * IDF release/v5.1 420ebd208a * Update esp32-hal-psram.c * Switch SDK to be an external package * fix path (#8096) * Makes UART work at any APB Frequency (#8097) Fixes HardwareSerial to work with IDF 5.1 on any CPU/APB Frequency (240MHz to 10MHZ), including user created low power modes. * Add required callbacks for TinyUSB DFU * Update version to 3.0.0 * Add ESP.getCoreVersion() and update ESP.getChipModel() * Update timer hal for the latest 5.1 * Use separate RX and TX buffer sizes in HTTP client optimizes download by allowing up to 4K packets to be received * Rename clock tree enum name in latest 5.1 * ESP32-H4 support was removed in ESP-IDF v5.1 * IDF release/v5.1 2004bf4e11 (#8165) * Deinit previous bus first (#8180) * TIMER - add timer_started flag, fix timerEnd() + timer HW test (#8135) * Add timer_started flag and stop before disable * Fix timer HW test * TOUCH - Peripheral manager implementation (#8129) * Touch periman implemented * Deinit previous bus first * LEDC Refactoring - Peripheral manager implemented (#8126) * LEDC periman implementation * Fix examples * Rework tone * Update ledc docs * fix missing bracket * Update analog funtions esp32-hal.h * Update CameraWebServer example * Fix HiFreq_ADC example * minor fixes - typos * Avoid calling tone/notone when tone already runs on dif. pin * Remove unused channels_resolution * GPIO - Peripheral manager implementation (#8179) * periman-implementation * fix RGB_BUILTIN and remove space * Enforces more consistency into Peripheral Manager (#8188) * Avoid log_i() message the first time a bus is assigned * Prevent operation with ESP32_BUS_TYPE_INIT * keeps coding style * do not print messages on INIT bus type * [Arduino Core 3.0.0] RMT IDF5.1 Refactoring (#7994) * RMT IDF5.1 refactoring * Fixes initial value setting * removed rmtRead() with user callback * simplify/remove Read data structure * Deep API simplification * fixes the examples * fix rmt.h * adds support to APB different frequencies * fixes CI and not defined RGB_BUILTIN * new RMT API and examples * fixing commentaties * Update esp32-hal-rgb-led.c * changes Filter API * Fixes example with Filter API * Update PlatformIO scripts for the upcoming 3.0 core (#8183) * Update PlatformIO scripts for the upcoming 3.0 core * Dynamically select proper framework-arduinoespressif32-libs package With this change the dev-platform will be dynamically configured to pull the latest .zip package with precompiled libraries from extracted from package_esp32_index.template.json * free memory on detach (#8264) * SPI - Peripheral manager implementation (#8255) * spi periman implementation * fix header file * remove unused struct * fix missing braces * Update esp32-hal-rmt.c (#8216) Optimizing Peripheral Manager Test * I2C - Peripheral manager implementation (#8220) * i2c-master periman initial commit * i2c-master make detachbus static + comment remove * i2c-slave periman implementation * SetPinBus to INIT on i2cDeinits * Fix slave pins deinit * remove dbg logs * set ret to ESP_FAIL instead of returning * Fix warnings in hal-spi caused by pariman transition * Update esptool.py to version 4.6 * Add platform support for ESP_SR * Add USB Type and valid pin check to periman * replace bus with spi->num+1 (#8279) * Remove default pins from SPI HAL * Add commented out handlers for esptool.js in TinyUSB CDC For future use * Add build defines for host os and fqbn (for debug purposes) * Provide proper memory caps total size * Update Esp.cpp * SDMMC - Peripheral manager implementation (#8289) * sdmmc periman implemented * save pins when SOC_SDMMC_USE_IOMUX * IDF release/v5.1 4bc762621d (#8292) * Adds missing pinMode (#8312) * Adds missing pinMode The example code lacks a pinMode() to initialize the GPIO 0 (button). In Arduino Core 3.0.0, it prints an error message when trying to read a not initialized GPIO. * Update KeyboardLogout.ino Adds <buttonPin> to keep code standard * Update KeyboardReprogram.ino Adds <buttonPin> to keep code standard * LEDC Fade implementation (#8338) * fade API + pointer fixes * Add fade api * Add fade example * update ledc docs * remove unused variables * fix path to example * Adds USB to Peripheral Manager - Arduino Core 3.0.0 (#8335) * ETHERNET - Peripheral manager implementation (#8297) * Peripheral manager implemented * remove unused variable * Add all RMII pins * fix typo * Adds HardwareSerial to Peripheral Manager Arduino 3.0.0 (#8328) * Do not limit ETHERNET in periman to only ESP32. SPI is also an option * Initial support for ESP32-C6 (#8337) * Add checks for SOC defines (#8351) * Add checks for SOC defines * Add SoC checks to BLE library * fix i2c compilation error * fix wrong placement of include * add check to SPI library * add check to USB library * add checks to Wire library * Feature/esp32h2 support (#8373) * Initial support for ESP32H2 * Additional changes for ESP32H2 * Update libs for ESP32H2 * Fix flashing on ESP32-H2 * Fix GPIO Configs for ESP32-C6 and ESP32-H2 * Update Timer test sketch * Fix upload flash parameters * Use ets_write_char_uart instead of ets_printf in log_printfv * Print full chip report when log level is sufficient (#8282) * ESP32-C3 does not have ets_write_char_uart * Fix BLE gap event name * HW Testing - Pytest update (#8389) * update tests requirements * remove already handled components * Update version of pytest * Add missing ESP32-H2 to hil.yml * Updated FreeRTOS names (#8418) * HW Testing - ESP32-C6 + ESP32-H2 fixes (#8404) * add C6/H2 to tests cfg.json * remove , * workflow runs-on runner by matrix * Add need for arduino tag to select runner * Add cryptography to requirements.txt * Removed duplicate TX1 define for H2 (#8402) * Fix broken examples * Fixes RMT filter & idle timing and setup (#8359) * Fixes Filter and Idle parameter to uint32 * Fixes Filter and Idle setup * Fixes it to 5.1Libs branch * fix RMT CLK source and Filter API * fixes missing ; * fixes missing ; * fixes RMT example * IDF release/v5.1 a7b62bbcaf (#8438) * Add workflow to build executables from python scripts (#8290) * Add workflow to build executables from python scripts * Push binary to tools * Enable executable signing on Windows * Update get.py * Push binary to tools * Try with multiple files * Try more actions * Try powershell * Restore tools so they do not get rebuilt * Finalize scripts * Push binary to tools * App rollback should be after PSRAM is initialized * Correcting RX1 to GPIO4 and TX1 to GPIO5 to be consistent with documentation. Previous pin use works but is inconsistent with C6 docs. * Fixes Memory Leak (#8486) * fixes preprocessor test (#8485) * fixes preprocessor test When using `#define USE_SOFT_AP` Change `&& not USE_SOFT_AP` ==> `&& !defined(USE_SOFT_AP)` * Adds any BLE capable device in WiFiProv.ino Removing ESP32 restriction for BLE Provisioning. * fix flash mode read out for C6 * Add option for custom partitions without restrictions * SD_MMC update (#8298) * Updated SD_MMC lib and examples * Removed getter implementation and commented usage in examples * squashed updates * IDF release/v5.1 f0437b945f (#8599) * Update package_esp32_index.template.json * Fix printf format build error in BTAdvertisedDeviceSet.cpp --------- Co-authored-by: Pedro Minatel <pedro.minatel@espressif.com> Co-authored-by: Rodrigo Garcia <rodrigo.garcia@espressif.com> Co-authored-by: Ha Thach <thach@tinyusb.org> Co-authored-by: Martin Turski <quiret@vfemail.net> Co-authored-by: raviypujar <raviypujar@gmail.com> Co-authored-by: Jason2866 <24528715+Jason2866@users.noreply.github.com> Co-authored-by: Tomáš Pilný <34927466+PilnyTomas@users.noreply.github.com> Co-authored-by: Jan Procházka <90197375+P-R-O-C-H-Y@users.noreply.github.com> Co-authored-by: Daniel Berlin <dberlin@dberlin.org> Co-authored-by: Nima Askari (نیما عسکری) <nimaltd@yahoo.com> Co-authored-by: rtpmsys <106180646+rtpmsys@users.noreply.github.com> Co-authored-by: bytiful <55647551+bytiful@users.noreply.github.com> Co-authored-by: tmfarrington <tmfarrington@users.noreply.github.com> Co-authored-by: Krzysiek S <chris.streh@gmail.com> Co-authored-by: surt <carl.olsson@gmail.com> Co-authored-by: Max Scheffler <max.scheffler@pm.me> Co-authored-by: Clemens Kirchgatterer <clemens@1541.org> Co-authored-by: Peter Pan's Techland <twinkle-pirate@hotmail.com> Co-authored-by: Roman <programmeofficemilkyway@gmail.com> Co-authored-by: Eistee <Eistee82@users.noreply.github.com> Co-authored-by: David McCurley <44048235+mrengineer7777@users.noreply.github.com> Co-authored-by: Gaya3N25 <30388176+Gaya3N25@users.noreply.github.com> Co-authored-by: renebohne <rene.bohne@gmail.com> Co-authored-by: Olivér Remény <25034625+remenyo@users.noreply.github.com> Co-authored-by: davidk88 <david.kotar@gmail.com> Co-authored-by: Vojtěch Bartoška <76958047+VojtechBartoska@users.noreply.github.com> Co-authored-by: James Armstrong <jamesarmstrong3@me.com> Co-authored-by: Valerii Koval <valeros@users.noreply.github.com> Co-authored-by: Peter G. Jensen <root@petergjoel.dk>
2023-10-05 11:54:25 +00:00
if args.extra_partition_subtypes:
add_extra_subtypes(args.extra_partition_subtypes)
table, input_is_binary = PartitionTable.from_file(args.input)
Update IDF to aaf1239 (#1539) * fix sdmmc config * Fix warnings in EEPROM from @Curclamas * remove leftover TAG in EEPROM * Initial add of @stickbreaker i2c * Add log_n * fix warnings when log is off * i2c code clean up and reorganization * add flags to interrupt allocator * fix sdmmc config * Fix warnings in EEPROM from @Curclamas * remove leftover TAG in EEPROM * fix errors with latest IDF * fix debug optimization (#1365) incorrect optimization for debugging tick markers. * Fix some missing BT header * Change BTSerial log calls * Update BLE lib * Arduino-ESP32 release management scripted (#1515) * Calculate an absolute path for a custom partitions table (#1452) * * Arduino-ESP32 release management scripted (ready-to-merge) * * secure env for espressif/arduino-esp32 * * build tests enabled * gitter webhook enabled * * gitter room link fixed * better comment * * filepaths fixed * BT Serial adjustments * * don't run sketch builds & tests for tagged builds * Return false from WiFi.hostByName() if hostname is not resolved * Free BT Memory when BT is not used * WIFI_MODE_NULL is not supported anymore * Select some key examples to build with PlatformIO to save some time * Update BLE lib * Fixed BLE lib * Major WiFi overhaul - auto reconnect on connection loss now works - moved to event groups - some code clean up and procedure optimizations - new methods to get a more elaborate system ststus * Add cmake tests to travis * Add initial AsyncUDP * Add NetBIOS lib and fix CMake includes * Add Initial WebServer * Fix WebServer and examples * travis not quiting on build fail * Try different travis build * Update IDF to aaf1239 * Fix WPS Example * fix script permission and add some fail tests to sketch builder * Add missing space in WiFiClient::write(Stream &stream)
2018-06-27 07:01:06 +00:00
if not args.no_verify:
status("Verifying table...")
table.verify()
Update IDF to aaf1239 (#1539) * fix sdmmc config * Fix warnings in EEPROM from @Curclamas * remove leftover TAG in EEPROM * Initial add of @stickbreaker i2c * Add log_n * fix warnings when log is off * i2c code clean up and reorganization * add flags to interrupt allocator * fix sdmmc config * Fix warnings in EEPROM from @Curclamas * remove leftover TAG in EEPROM * fix errors with latest IDF * fix debug optimization (#1365) incorrect optimization for debugging tick markers. * Fix some missing BT header * Change BTSerial log calls * Update BLE lib * Arduino-ESP32 release management scripted (#1515) * Calculate an absolute path for a custom partitions table (#1452) * * Arduino-ESP32 release management scripted (ready-to-merge) * * secure env for espressif/arduino-esp32 * * build tests enabled * gitter webhook enabled * * gitter room link fixed * better comment * * filepaths fixed * BT Serial adjustments * * don't run sketch builds & tests for tagged builds * Return false from WiFi.hostByName() if hostname is not resolved * Free BT Memory when BT is not used * WIFI_MODE_NULL is not supported anymore * Select some key examples to build with PlatformIO to save some time * Update BLE lib * Fixed BLE lib * Major WiFi overhaul - auto reconnect on connection loss now works - moved to event groups - some code clean up and procedure optimizations - new methods to get a more elaborate system ststus * Add cmake tests to travis * Add initial AsyncUDP * Add NetBIOS lib and fix CMake includes * Add Initial WebServer * Fix WebServer and examples * travis not quiting on build fail * Try different travis build * Update IDF to aaf1239 * Fix WPS Example * fix script permission and add some fail tests to sketch builder * Add missing space in WiFiClient::write(Stream &stream)
2018-06-27 07:01:06 +00:00
if args.flash_size:
size_mb = int(args.flash_size.replace("MB", ""))
table.verify_size_fits(size_mb * 1024 * 1024)
Update IDF to aaf1239 (#1539) * fix sdmmc config * Fix warnings in EEPROM from @Curclamas * remove leftover TAG in EEPROM * Initial add of @stickbreaker i2c * Add log_n * fix warnings when log is off * i2c code clean up and reorganization * add flags to interrupt allocator * fix sdmmc config * Fix warnings in EEPROM from @Curclamas * remove leftover TAG in EEPROM * fix errors with latest IDF * fix debug optimization (#1365) incorrect optimization for debugging tick markers. * Fix some missing BT header * Change BTSerial log calls * Update BLE lib * Arduino-ESP32 release management scripted (#1515) * Calculate an absolute path for a custom partitions table (#1452) * * Arduino-ESP32 release management scripted (ready-to-merge) * * secure env for espressif/arduino-esp32 * * build tests enabled * gitter webhook enabled * * gitter room link fixed * better comment * * filepaths fixed * BT Serial adjustments * * don't run sketch builds & tests for tagged builds * Return false from WiFi.hostByName() if hostname is not resolved * Free BT Memory when BT is not used * WIFI_MODE_NULL is not supported anymore * Select some key examples to build with PlatformIO to save some time * Update BLE lib * Fixed BLE lib * Major WiFi overhaul - auto reconnect on connection loss now works - moved to event groups - some code clean up and procedure optimizations - new methods to get a more elaborate system ststus * Add cmake tests to travis * Add initial AsyncUDP * Add NetBIOS lib and fix CMake includes * Add Initial WebServer * Fix WebServer and examples * travis not quiting on build fail * Try different travis build * Update IDF to aaf1239 * Fix WPS Example * fix script permission and add some fail tests to sketch builder * Add missing space in WiFiClient::write(Stream &stream)
2018-06-27 07:01:06 +00:00
# Make sure that the output directory is created
output_dir = os.path.abspath(os.path.dirname(args.output))
if not os.path.exists(output_dir):
try:
os.makedirs(output_dir)
except OSError as exc:
if exc.errno != errno.EEXIST:
raise
if input_is_binary:
output = table.to_csv()
with sys.stdout if args.output == "-" else open(args.output, "w") as f:
2017-08-01 05:51:04 +00:00
f.write(output)
else:
output = table.to_binary()
Update IDF to aaf1239 (#1539) * fix sdmmc config * Fix warnings in EEPROM from @Curclamas * remove leftover TAG in EEPROM * Initial add of @stickbreaker i2c * Add log_n * fix warnings when log is off * i2c code clean up and reorganization * add flags to interrupt allocator * fix sdmmc config * Fix warnings in EEPROM from @Curclamas * remove leftover TAG in EEPROM * fix errors with latest IDF * fix debug optimization (#1365) incorrect optimization for debugging tick markers. * Fix some missing BT header * Change BTSerial log calls * Update BLE lib * Arduino-ESP32 release management scripted (#1515) * Calculate an absolute path for a custom partitions table (#1452) * * Arduino-ESP32 release management scripted (ready-to-merge) * * secure env for espressif/arduino-esp32 * * build tests enabled * gitter webhook enabled * * gitter room link fixed * better comment * * filepaths fixed * BT Serial adjustments * * don't run sketch builds & tests for tagged builds * Return false from WiFi.hostByName() if hostname is not resolved * Free BT Memory when BT is not used * WIFI_MODE_NULL is not supported anymore * Select some key examples to build with PlatformIO to save some time * Update BLE lib * Fixed BLE lib * Major WiFi overhaul - auto reconnect on connection loss now works - moved to event groups - some code clean up and procedure optimizations - new methods to get a more elaborate system ststus * Add cmake tests to travis * Add initial AsyncUDP * Add NetBIOS lib and fix CMake includes * Add Initial WebServer * Fix WebServer and examples * travis not quiting on build fail * Try different travis build * Update IDF to aaf1239 * Fix WPS Example * fix script permission and add some fail tests to sketch builder * Add missing space in WiFiClient::write(Stream &stream)
2018-06-27 07:01:06 +00:00
try:
stdout_binary = sys.stdout.buffer # Python 3
except AttributeError:
stdout_binary = sys.stdout
with stdout_binary if args.output == "-" else open(args.output, "wb") as f:
2017-08-01 05:51:04 +00:00
f.write(output)
class InputError(RuntimeError):
def __init__(self, e):
super(InputError, self).__init__(e)
class ValidationError(InputError):
def __init__(self, partition, message):
super(ValidationError, self).__init__("Partition %s invalid: %s" % (partition.name, message))
2017-08-01 05:51:04 +00:00
if __name__ == "__main__":
try:
main()
except InputError as e:
2017-08-01 05:51:04 +00:00
print(e, file=sys.stderr)
sys.exit(2)