* feature: create a Trust on First Use example the quell the increasingly common copy & paste of the insecure approach making it to production
* Quell CI/CD runs on non-WiFi supporting hardare
* Update libraries/WiFiClientSecure/examples/WiFiClientInsecure/WiFiClientInsecure.ino
typo/improvement to text
Co-authored-by: Lucas Saavedra Vaz <32426024+lucasssvaz@users.noreply.github.com>
* Update libraries/WiFiClientSecure/examples/WiFiClientTrustOnFirstUse/WiFiClientTrustOnFirstUse.ino
typo/improvement to text
Co-authored-by: Lucas Saavedra Vaz <32426024+lucasssvaz@users.noreply.github.com>
* Update libraries/WiFiClientSecure/examples/WiFiClientTrustOnFirstUse/WiFiClientTrustOnFirstUse.ino
Fix formatting
Co-authored-by: Lucas Saavedra Vaz <32426024+lucasssvaz@users.noreply.github.com>
* Update libraries/WiFiClientSecure/examples/WiFiClientTrustOnFirstUse/WiFiClientTrustOnFirstUse.ino
typo/improvement to text
Co-authored-by: Lucas Saavedra Vaz <32426024+lucasssvaz@users.noreply.github.com>
* Update libraries/WiFiClientSecure/examples/WiFiClientTrustOnFirstUse/WiFiClientTrustOnFirstUse.ino
typo/improvement to text
Co-authored-by: Lucas Saavedra Vaz <32426024+lucasssvaz@users.noreply.github.com>
* Update libraries/WiFiClientSecure/examples/WiFiClientTrustOnFirstUse/WiFiClientTrustOnFirstUse.ino
typo/improvement to text
Co-authored-by: Lucas Saavedra Vaz <32426024+lucasssvaz@users.noreply.github.com>
* Update libraries/WiFiClientSecure/examples/WiFiClientTrustOnFirstUse/WiFiClientTrustOnFirstUse.ino
typo/improvement to text
Co-authored-by: Lucas Saavedra Vaz <32426024+lucasssvaz@users.noreply.github.com>
* Update libraries/WiFiClientSecure/examples/WiFiClientTrustOnFirstUse/WiFiClientTrustOnFirstUse.ino
typo/improvement to text
Co-authored-by: Lucas Saavedra Vaz <32426024+lucasssvaz@users.noreply.github.com>
* Various things can all stop_ssl_socket() which sets the socket to -1; but the WiFiClientSecure checks for _connected. So we want to make sure the latter is always set. And thus have moved the state handling around *ssl_client down into the C code; below WiFiClientSecure.
* Unitialized NVRAM/EEPROM is actual set to 0xFF; so adjust for this. And print the LF/CR for the header lines.
* Update libraries/WiFiClientSecure/examples/WiFiClientTrustOnFirstUse/WiFiClientTrustOnFirstUse.ino
---------
Co-authored-by: Me No Dev <me-no-dev@users.noreply.github.com>
Co-authored-by: Lucas Saavedra Vaz <32426024+lucasssvaz@users.noreply.github.com>
* refactor(on-release): improve platform.txt path replacements
Use regexs to replace all occurrences of `{runtime.platform.path}` with
the correct `{runtime.tools.*.path}`, regardless of directory separator,
and remove dependency on specific text around each path.
Note that the order has been changed to ensure that the longest paths
are replaced first, to avoid replacing parts of other paths.
* fix(platform): Windows backslash cleanups
Ensure Windows paths properly use a backslash as folder separator.
* feat(platform)!: use new Arduino Debug API
Implement sketch debugging according to the official Arduino
Platform Debug Specification [1].
The biggest improvement is that now `launch.json` can be fully
customized by the core (including the type of each entry),
so there is no need to copy files in the sketch folder.
In particular, `debug_custom.json` is not used anymore.
[1] https://arduino.github.io/arduino-cli/latest/platform-specification/#sketch-debugging-configuration
BREAKING CHANGE: This commit requires Arduino IDE 2.3.0 or later to use
the debugging features. Older versions will no longer be able to start
a debug session successfully.
* feat(debug): pass objdump path to resolve globals
Cortex-debug requires objdump to be in the same folder as gdb, or needs
the full path to the executable in the `launch.json` file. This is now
possible with the new debugging API.
* feat(debug): conditionally enable debug button on Nano ESP32
If the `debug.executable` variable is null or unset, the Debug button
appears grayed out. The new IDE also takes current parameters into
account, allowing to conditionally enable the Debug button only when
some conditions are met.
* on_release: allow single board packages
---------
Co-authored-by: Martino Facchin <m.facchin@arduino.cc>
* Update Update.h
* Update Updater.cpp
* Add files via upload
* Add files via upload
* Add files via upload
* Update Update.h
* Update Updater.cpp
* Add files via upload
* Revert changes
* Revert changes
* Fix CI
* Fix format
* Skip H2
* Use new
* Fix comments and formatting
* Format example
* Remove binaries and QoL improvements
---------
Co-authored-by: Me No Dev <me-no-dev@users.noreply.github.com>
Co-authored-by: Lucas Saavedra Vaz <32426024+lucasssvaz@users.noreply.github.com>
* Fix ESP32-Solo WDT on HTTP OTA update
* Fix ESP32-Solo WDT on HTTP OTA update
* Fix commits
---------
Co-authored-by: Lucas Saavedra Vaz <32426024+lucasssvaz@users.noreply.github.com>
The Arduino Platform Specification requires that the recipe hooks are
distinguished by a number and does not endorse using text labels. Fix
all the usages of recipe hooks to use numbers.
Closesarduino/arduino-cli#2369 .
* Proposal for fixing file webserver uploads via form upload.
The form parser has shown to have issues with files ending with "--\r\n". This commit replaces the form parser with the parser from ESP8266, which passes the test case.
* Replace _uploadReadByte() in WebServer/Parsing.cpp with ESP8266 implementation.
* Changes on the requirements file to remove dependencies
* Comment removed
---------
Co-authored-by: Lucas Saavedra Vaz <32426024+lucasssvaz@users.noreply.github.com>
* Separated library sources in cmake for selective.
* Reodered selective process to match CI script
* Fixed missing SimpleBLE in library list
* fix(cmake): Remove duplicate or non existing sources
* fix(cmake): Remove required component
---------
Co-authored-by: Jan Procházka <90197375+P-R-O-C-H-Y@users.noreply.github.com>
* OTA upload often fails when client.read() return -1 and we subsequently try to write 4 gigabytes to flash. Fixed by signed comparison and retry.
* Delay of 1ms already solves the issue
* Update libraries/ArduinoOTA/src/ArduinoOTA.cpp
Co-authored-by: Jan Procházka <90197375+P-R-O-C-H-Y@users.noreply.github.com>
---------
Co-authored-by: Leif <git@leif.lc>
Co-authored-by: Lucas Saavedra Vaz <32426024+lucasssvaz@users.noreply.github.com>
Co-authored-by: Jan Procházka <90197375+P-R-O-C-H-Y@users.noreply.github.com>
* Update Ticker API to compatibility with ESP8266, prepares for co-op loop Scheduler
* Fixing Build server complaints
* Fix omitted casts in template member function
* Changes after review
* Expose µs resolution of OS API in Ticker class
* Return Ticker to libraries only for modularity.
* Unify Ticker examples.
* Default for LED_BUILTIN
* In Ticker, the *scheduled functions become available in another development branch.
* Astyle from ESP8266
* Fixed Arduino keywords.txt
* 64bit integers instead of 32bits, timer functions on ESP32 accept 64bit integers.
* Move code from header into compiliation unit.
Reformat.
* Test case same as ESP8266
* Implementing inline in header saves 204+ bytes program size.
* Examples
* Fix a compiler warning due to c-style casting.
* Revert formatting changes
* More format reversions
* Revert
* Revert
* Revert
---------
Co-authored-by: Lucas Saavedra Vaz <32426024+lucasssvaz@users.noreply.github.com>
* Adds SparkFun Pro Micro ESP32-C3 variant file
Adds SparkFun Pro Micro ESP32-C3 variant to boards.txt
* removes some pin definitions that are defined elsewhere
* removes the accidental camel case in variant folder name
* Attempts again to fix camel case in the variant file
---------
Co-authored-by: Jan Procházka <90197375+P-R-O-C-H-Y@users.noreply.github.com>
* Fix ambiguous for TwoWire::requestFrom() methods.
* Remove TwoWire::begin(int) overload
Inside the function, this overload truncated the data type to a shorter one. This could break some users' hopes.
* Rewrite TwoWire with using HardwareI2C
- implement proposal https://github.com/espressif/arduino-esp32/pull/8818#issuecomment-1792191815
to bring the HARDWARE interface into compliance
* Fix TwoWire::end() return type.
* Fix TwoWire::setClock() return type.
* Fix no return statement in the TwoWire::requestFrom.
* fix(libraries/Wire): fix bad return-statement
Remove non-void values of the return-statements in function returning 'void'.
* style(libraries/Wire): replace tabs with spaces
* refactor(libraries/Wire): use slave without support
TwoWire::begin(uint8_t address) should be available without slave
support by SoC?
* refactor(libraries/Wire): remove unused variables
Compiler reports "Wire.cpp:393:15: error: variable 'err' set but not used [-Werror=unused-but-set-variable]".
* refactor(libraries/Wire): remove unused variables
Compiler reports "Wire.cpp:337:15: error: variable 'err' set but not used [-Werror=unused-but-set-variable]".
* fix(libraries/Wire): hide slave support elements
TwoWire::user_onRequest is used only in conjunction with slave support?
* refactor(libraries/Wire): remove temporary comment
* fix(libraries/Wire): restore an accidentally deleted implementation
TwoWire::endTransmission() was accidentally deleted from a cpp file.
* refactor(libraries/Wire): return return types
In TwoWire class return return types.
* fix(libraries/Wire): fix return type
* refactor(libraries/Wire): add return statement if slave isn't supported
Co-authored-by: Jan Procházka <90197375+P-R-O-C-H-Y@users.noreply.github.com>
* refactor(libraries/Wire): fix indentation
Co-authored-by: Jan Procházka <90197375+P-R-O-C-H-Y@users.noreply.github.com>
* refactor(libraries/Wire): fix indentation
Co-authored-by: Jan Procházka <90197375+P-R-O-C-H-Y@users.noreply.github.com>
* refactor(libraries/Wire): fix indentation
Co-authored-by: Jan Procházka <90197375+P-R-O-C-H-Y@users.noreply.github.com>
* refactor(libraries/Wire): remove unnecessary empty lines
---------
Co-authored-by: Lucas Saavedra Vaz <32426024+lucasssvaz@users.noreply.github.com>
Co-authored-by: Jan Procházka <90197375+P-R-O-C-H-Y@users.noreply.github.com>
* feat(wifi): Improves WiFiMulti
* fix(wifi): Fixes Initialization of Security Mode
* feat(wifi): simplifies the example by using HTTPClient
* fix(WiFi): fixes a type in the commentaries
because print-to-all-clients is not implemented
Co-authored-by: Rodrigo Garcia <rodrigo.garcia@espressif.com>
Co-authored-by: Me No Dev <me-no-dev@users.noreply.github.com>
* feat(i2s): Add I2S examples
- ES8388 loopback example using the LyraT board
- ESP32-S3-EYE record WAV to SD card example
- Simple tone example
* docs(i2s): Add I2S API docs
* feature(spi): Allow detach of some SPI pins
* fix(spi): Remove unnecessary check
Co-authored-by: Lucas Saavedra Vaz <32426024+lucasssvaz@users.noreply.github.com>
* feat(spi): Rename CS pin to SS to match Arduino standard
* fix(spi): Remove unnecessary checks
* remove lock from spiAttackMISO
---------
Co-authored-by: Lucas Saavedra Vaz <32426024+lucasssvaz@users.noreply.github.com>
Co-authored-by: Me No Dev <me-no-dev@users.noreply.github.com>
Co-authored-by: me-no-dev <hristo@espressif.com>
* Changed the docs server from preview to deploy
* Removed one extra line
* Added on release action to the docs deploy CI
* Fix CI workflow file name in the path
* UART: fixes begin()
* Typo: fixes typos and some testing left over
* feat: fixes end()
* feat: adjust internal baurate
* feat: Changes CI [HardwareSerial]
[HardwareSerial]: Changes CI to match new HardwareSerial begin() and end()
* feat: fixes auto_baudrate_test
[uart]: fixes end(void) instead of end(bool)
* feat: adjust copyright year
[fix]: adjust commentary of the copyright year
* Add MakerGo C3 SuperMini def
* fix(makergo_c3_supermini): Remove pin definitions.
Remove pin definitions since this part has been moved to the core and it defines globally per SoC & add an empty line at the end of the file.
---------
Co-authored-by: Jan Procházka <90197375+P-R-O-C-H-Y@users.noreply.github.com>
* add heltec_wireless_tracker board
* Move the EraseFlash section to the end of the board.
* Restore readme.md document.
---------
Co-authored-by: Jan Procházka <90197375+P-R-O-C-H-Y@users.noreply.github.com>
* First stab ad simplyfing webserver auth and adding a handler.
* Tweaks after testing against docs and latest Library tree
* Add documentatin for callback handler
* Bodge to allow things to compile without the dependencies
* Remove dependency on sodium to make it compile with 4.4
* Fix hex conversion
* Move some common HEX functions into a static HEX class, remove those from MD5 and add some examples. This allows for the cleanup of various to/from HEX routines elsewhere.
* Remove some duplicated code
* Add simplfiied HEXBuilder under MD5Bulder to CMakefile.
* Update for 3.0.0 and QoL improvements
* Remove examples that depend on external libraries
* Skip H2 testing
* Formatting improvements
* Move builders examples to Utilities folder
* Fix indentation
* Add HashBuilder abstract class
* Add SHA1Builder
* Fix comment
* Fix whitespace
* Fix crashes and improve log messages
* Fix indentation for webserver
---------
Co-authored-by: Rodrigo Garcia <rodrigo.garcia@espressif.com>
Co-authored-by: Lucas Saavedra Vaz <32426024+lucasssvaz@users.noreply.github.com>