Commit Graph

276 Commits

Author SHA1 Message Date
valeros 26aa55aa95 Process "build_src_flags" option in IDF build script
Resolves #1146
2023-07-21 15:56:22 +03:00
valeros ea405523d8 Remove unnecessary ULP binary dependency 2023-07-13 14:21:58 +03:00
valeros 28656548e2 Override default behavior of memory analysis feature 2023-07-13 14:20:47 +03:00
Valerii Koval b4211e98af Fix code indentation 2023-06-19 22:00:47 +03:00
Valerii Koval e49e312162 Improve the process of installing Python deps for IDF 2023-06-19 21:30:18 +03:00
Valerii Koval 99362a481a Lock precise versions of Python dependencies for IDF 5
Using loose constraints proved to be unsafe (e.g. latest pyparsing update v3.1.0)
2023-06-19 21:25:38 +03:00
Valerii Koval 131170f6c2 Lock "urllib3<2" because urllib3 v2.0 only supports OpenSSL 1.1.1+
Resolves platformio/platformio-core#4639
2023-05-25 21:01:33 +03:00
Valerii Koval 2988da9268 Better handling of macros exported from IDF
Issue #1080
2023-05-08 13:06:18 +03:00
Valerii Koval da133384b5 Process internal Arduino libraries in mixed Arduino/IDF projects
Resolves #1080
2023-05-03 17:15:55 +03:00
Mahavir Jain 18d0ec2fe1 Add local cacert file containing "DST Root CA X3" to certificate bundle (#1066)
ESP-IDF reference change:
https://github.com/espressif/esp-idf/commit/5f646b1d43e5df2436e1c22bf4418dbf5c016485

Relevant:
https://github.com/espressif/esp-idf/issues/11077
2023-04-06 19:15:25 +03:00
Valerii Koval 48c4226e52 IDF: Propagate build flags for ASM files
Resolves #1048
2023-03-03 14:13:44 +02:00
Fredrik Kling aa5beb4f1a Expand OS vars in build.esp-idf.sdkconfig_path (#995) 2023-02-27 12:37:17 +02:00
Valerii Koval 8507dd8e7f Better handling of ESP IDF Python dependencies
#1006, #1007, resolves #1013

Now IDF Python deps are installed in a pre-сreated virtual environment.
The name of the IDF venv contains the IDF version to avoid possible conflicts and
unnecessary reinstallation of Python dependencies in cases when Arduino
as an IDF component requires a different version of the IDF package and
hence a different set of Python deps or their versions
2023-01-31 21:51:01 +02:00
Valerii Koval 51ff51e9ef Typo fix 2023-01-16 19:21:21 +02:00
Valerii Koval 783e8a9ad7 Better handling of Python deps for IDF 2023-01-16 14:22:17 +02:00
Jason2866 0158a727b9 Fix ULP RISCV toolchain file selection (#993) 2023-01-09 12:06:18 +02:00
Nedko Boshkilov 168fa22561 Sort ULP sources to prevent relocation errors (#950) 2023-01-09 11:46:35 +02:00
Valerii Koval d0835e994c Take into account board flash mode when converting elf to bin 2023-01-06 14:29:58 +02:00
Valerii Koval ecc617e341 Add support for IDF v5.0
Resolves #979
2023-01-06 14:29:24 +02:00
Valerii Koval 26b5112bdc Fix ULP package paths 2022-12-26 19:09:29 +02:00
Valerii Koval 2f2ddc728e Normalize path in the "IDF_PATH" variable // Resolve #960 2022-12-01 13:43:11 +02:00
Valerii Koval 03d59c608b Use the "adapter speed" option for OpenOCD
Issue #917
2022-09-27 12:30:15 +03:00
Valerii Koval bb9b135803 Properly handle "memory_type" option 2022-09-26 15:13:52 +03:00
Jason2866 2f2a8d4b51 Better handling of bootloader configuration (#880) 2022-09-26 12:19:53 +03:00
Jason2866 4f51150708 Take into account "memory_type" option to properly select boot mode (#913)
Use correct bootloader `opi` when `"boot": "opi"` is not set for Arduino framework

Resolves #837, enhances #904
2022-09-26 12:11:48 +03:00
Jason2866 ad4f417ad3 Fix flash mode for opi (#904)
opi needs to be flashed in mode `dout` to work. Changed flash mode for `qout` since it can be flashed in `dio`.
This is the way espressif now does in IDF
2022-09-13 19:31:16 +03:00
Valerii Koval 0abe8d30e1 Update ESP-IDF to v4.4.2
Resolve #906, resolve #889
2022-09-13 15:12:59 +03:00
Valerii Koval 2edc2b2581 Remove obsolete workaround for propagating debug configurations
Resolves #883 and similar issues with build targets that don't run the platform build scripts
2022-08-23 13:51:03 +03:00
Valerii Koval e58a222e44 Move the process of patching bootloader to the Arduino build script 2022-08-23 13:46:12 +03:00
Valerii Koval cdd0867de6 Update bootloader image headers before debugging or uploading via debug tools
This approach is less intrusive than merging the entire application into one binary
implemented in #006d64e8b268e479703a0aac7eed8bef1ebea587

In this implementation we safely copy the required bootloader binary to the
build directory, adjust the headers via esptoolpy and the "merge_bin" command
according to --flash-size and --flash-mode arguments.

Resolves #872
2022-08-15 17:59:36 +03:00
Valerii Koval 358e84835d Allow overriding reset operation via project file
Resolve #874
2022-08-09 14:52:59 +03:00
Valerii Koval 0ed9a8524b Update default flash size value in merging procedure 2022-07-30 22:50:59 +03:00
Valerii Koval 006d64e8b2 Merge firmware before flashing via OpenOCD
Arduino core v2.0.4 contains updated bootloader images that have innacurate default headers. This results in bootloops if firmware is flashed via OpenOCD (e.g. debugging or
uploading via debug tools). For this reason, before uploading or debugging we need to merge all binaries (firmware, bootloader, partitions, etc.) via esptoolpy so that
the image headers will be adjusted according to --flash-size and --flash-mode arguments.

Note that this behavior doesn't occur if uploading is done via esptoolpy, as esptoolpy  overrides the binary image headers before flashing.
2022-07-30 21:09:01 +03:00
Valerii Koval f2a5977c91 Properly propagate additional data to configure debug session
- Add extra data to "projenv" as well so that the extra data it can be overridden after the BuildProgram routine
- Use the new INTEGRATION_EXTRA_DATA env variable instead of IDE_EXTRA_DATA
2022-07-29 17:53:19 +03:00
Valerii Koval e66e12cc57 Add default nameOnDisk value for external CMake projects
Issue #863
2022-07-25 21:54:16 +03:00
Valerii Koval 019ee098c3 Propagate Arduino build flags to global scope for mixed IDF/Arduino projects
Resolve #848
2022-07-14 21:16:39 +03:00
Valerii Koval bc284f7c6a Update IDF build script according to v4.4.1 2022-06-14 14:53:54 +03:00
Andrew Metcalf d4bfc01d9a Support esp-idf 4.4 (#716)
Resolves #711
2022-06-14 14:45:19 +03:00
Valerii Koval 3bff25083b Explicitly exit from build process when there is default IDF component
Resolve #823
2022-05-31 13:52:59 +03:00
Ivan Kravets 609a87f8b5 Improve support for assembly programming 2022-05-27 18:46:16 +03:00
Ivan Kravets 886f388e4d Improve support for assembly programming 2022-05-27 17:27:28 +03:00
Ivan Kravets de59b730a0 Remove unnecessary files 2022-05-27 16:17:38 +03:00
Valerii Koval 9f9f39d8d5 Add support for Arduino core v2.0.3
Resolve #799, resolves #762, resolves #674
2022-05-16 13:18:16 +03:00
Valerii Koval 6295224609 Refactor processing of IDF linker fragments
Resolve #760
2022-05-09 23:20:59 +03:00
Valerii Koval 20e866c74f Compile IDF bootloader with optimizations by default
By default the size of bootloader is limited to 0x2000 bytes,
in debug mode the footprint can be easily grow beyond this limit

Issue #793
2022-05-06 12:52:39 +03:00
Valerii Koval 6ef0330d7f Use GetBuildType for detecting debug mode 2022-04-22 18:34:19 +03:00
Valerii Koval cefdfb4793 Properly detect debug mode in IDF build script 2022-04-22 18:28:24 +03:00
Valerii Koval eff0222cd1 Process app offset in debug mode 2022-04-20 22:20:13 +03:00
Valerii Koval 2752112002 Use flash size from board manifest by default // Resolve #300 2022-04-19 13:45:36 +03:00
Valerii Koval 8980729628 Take into account application image offset when uploading via esptool
Resolve #538
2022-04-18 21:24:40 +03:00