Commit Graph

1541 Commits

Author SHA1 Message Date
b94b38c9d1 Fix compiler.libraries.ldflags Option (#5866)
I misplaced the additions.
2021-11-09 17:01:21 +02:00
d218e58f96 Update package_esp32_index.template.json 2.0.1 2021-11-09 10:47:31 +02:00
14ece43654 Update README.md 2021-11-09 10:41:20 +02:00
ae7173d4d5 cmake: error out of IDF version is outside of supported range 2021-11-09 10:31:46 +02:00
c7080b0a83 ci: run CMake in script mode when finding source files 2021-11-09 10:31:11 +02:00
96c184d213 Add basic analogWrite support based on LEDC (#5861) 2021-11-09 10:26:41 +02:00
da72bc90b7 eliminates error messages when using Ethernet Static IP (#5836)
Summary

Only affects ETH (not WiFi)

This PR solves #5733 by allowing the DHCP IDF server to complete its tasks and only then it sets a static IP.
This also solves another related failure reported in this issue (#5733 (comment)).

fix #5733

Impact

Adds a delay in order to wait for DHCP to actually terminate before setting the static IP configuration in ETH.
2021-11-09 10:23:29 +02:00
16a9cf781f Add another Wire requestFrom function signature (#5768)
* Re-add with clean master

* Address @me-no-dev's comments

* static_cast<size_t> to static_cast<uint8_t>
2021-11-08 14:29:04 +02:00
b1497fb257 [Docs] Peripheral list updated to include all supported SoCs (#5851) 2021-11-08 12:36:06 +02:00
5e04eb48b6 Add precompiled (#5854)
Added an option for using precompiled libraries.

Empty if there is no precompilation.

```
compiler.libraries.ldflags=
```

Compiler Message when there is precompilation.

```
Compiling libraries...
Compiling library "aquestalk-esp32"
Library aquestalk-esp32 has been declared precompiled:
Using precompiled library in C:\Users\tanaka\Documents\Arduino\libraries\aquestalk-esp32\src\esp32
```

The precompiler cannot be used because it is not set up now.
2021-11-08 12:13:45 +02:00
674cf812e7 [FEATURE] add -D ARDUINO_PARTITION_xxx build flag to platform.txt (#5804)
* [FEATURE]  ARDUINO_PARTITION_xxx build flag

Proposition: adding `-DARDUINO_PARTITION_{build.partitions}` flag to make the build partition information available at compile time.

Use cas example:

```C
#if defined ARDUINO_PARTITION_default
  // prevent compilation
  #error "This sketch needs 'Minimal SPIFFS' partition scheme to compile" 
  // or disable sketch features that need flash space
  #define USE_HUGE_BITMAP_IMAGES false
#endif
```

* Adding -DARDUINO_PARTITION_{build.partitions} (see #5804)
2021-11-06 13:58:48 +02:00
83884a0cda Fix SparkFun MicroMod compilation issues
Fixes: https://github.com/espressif/arduino-esp32/issues/5818
2021-11-04 19:18:31 +02:00
80b8262595 Update esp-idf_component.rst 2021-11-04 17:21:44 +01:00
5747bfab67 Merge branch 'master' of https://github.com/espressif/arduino-esp32 2021-11-04 16:59:11 +01:00
4b9dc61447 Solving *"wifi:channel=0 is invalid"* when using FTM example code (#5809)
When using the FTM examples I got an error in the FTM_Initiator.ino:

*"wifi:channel=0 is invalid"*

I solved it for myself by simply passing the channel argument to be 1 in *WiFi.initiateFTM*. However, a better fix would be to directly change the default channel here.
2021-11-04 16:08:50 +02:00
a2d7c0dcf6 [Examples] WiFi and Ethernet examples organization (#5830)
* examples: WiFi and Ethernet examples organization

* examples: Change on CI scripts to include new folder

* Library name reverted to WiFi

* examples: WiFi and Ethernet examples organization in a new folder

* examples: Eth files moved from WiFi to Ethernet lib and CMakeLists updated
2021-11-04 16:08:08 +02:00
666cd3cde5 [Docs] Added I2C driver docs (#5770)
* Added I2C driver docs
docs: Changes on the images and added more details about the I2C slave

* docs: Added slaveWrite description and added docs build folder to the gitignore file
2021-11-04 14:32:05 +02:00
3e851b537a [Docs] Added useStaticBuffers function description (#5820)
* docs: Added useStaticBuffers function description

* docs: Default useStaticBuffers configuration in highlight
2021-11-04 14:30:16 +02:00
f410728444 docs: Added supported peripherals list on libraries section (#5829) 2021-11-04 14:29:42 +02:00
79e0889a16 Allow use of log_x() in if (#5844)
if (1) log_e("error") produces a warning ("missing braces") and probably wrong code if no log level is defined.
This fixes that.
2021-11-04 14:25:44 +02:00
4aff6dde39 Support additional authorization schemes (#5845)
The client always appends "Basic" to the authorization header, however there are other auth schemes that can be used: https://developer.mozilla.org/en-US/docs/Web/HTTP/Authentication
For example "Bearer" when using OAuth.
This PR adds a `setAuthorizationType` method to the HTTPClient which allows this scheme to be configured by the caller. Authorization type is set to "Basic" by default so this will have no impact on existing usecases.
2021-11-04 14:25:12 +02:00
bb50046540 Fix double promotion in Stream::parseFloat() (#5846) 2021-11-04 14:24:28 +02:00
10258b4cc2 fix double promotions in rmtSetTick() (#5847) 2021-11-04 14:24:14 +02:00
418ac74be0 IDF release/v4.4 6a7d83af19
* Update toolchain to 2021r2 (#5828)
* Update C3 libs to support only ECO3 and newer
2021-11-04 14:22:34 +02:00
caa8d07aaf yay for esp32-s2 mini module with PSRAM :) (#5811) 2021-10-26 22:26:32 +03:00
15bbd0a187 Add ALPN support to WiFiClientSecure (#5633)
This adds a function to WiFiClientSecure to set the ALPN protocol.

This is required for an MQTT client to connect to AWS IoT when using an AWS Custom Authorizer, as described here.

Example code snippet:

...
WiFiClientSecure wiFiClient;

// ALPN protocol, needed with AWS custom authorizer
const char *aws_protos[] = {"mqtt", NULL};

void setup() {
  wiFiClient.setCACert(AWSCAPEM);
  wiFiClient.setAlpnProtocols(aws_protos);
}
...
2.0.1-RC1
2021-10-25 09:20:47 +03:00
02c3ec01cc remove _user_defined_size from EEPROM (#5775)
Summary

Related to the issue #5773 and #2280.

_user_defined_size is removed from EEPROMClass because it is redundant in the current code
EEPROMClass::length() returns _size that is the true available size of EEPROM
Impact

_user_defined_size is removed from EEPROMClass
EEPROMClass::length() returns _size that is the true available size of EEPROM
2021-10-25 09:15:47 +03:00
cb5a490616 Correct CDC on boot custom menu for Deneyap Mini (#5767)
The Deneyap Mini used a SerialMode custom menu item, which is not defined. The correct item, CDCOnBoot, has replaced it.
2021-10-25 09:13:48 +03:00
f257d6f126 IDF release/v4.4 2720d45e71 (#5801) 2021-10-25 09:12:37 +03:00
aabbed0bbc analogRead() now return value according to value set in analogReadResulotion() (#5776)
Function analogReadResolution set how many bits will analogRead return.

Find out that this functionality was added back 2017 by @me-no-dev in #161.

Related issues:
#5163
2021-10-24 13:01:05 +03:00
a418058a66 log statement missing parameter #5778 (#5796) 2021-10-23 11:34:00 -03:00
96ad341451 Merge pull request #5795 from SuGlider/esp_eth_clear_default_handlers
removes deprecated esp_eth_set_default_handlers()
2021-10-22 22:13:08 -03:00
2673b88582 removes deprecated esp_eth_set_default_handlers() 2021-10-22 21:56:14 -03:00
67c99142d2 Allows spiram malloc with wifi dynamic buffers - better free heap (#5791)
Summary

Modifies WiFi lib to allow dynamic buffer allocation along with SPIRAM MALLOC enabled
This gives more heap space to the users

Related PR in Arduino Lib Builder: espressif/esp32-arduino-lib-builder#47

Impact

WiFi will work the same as it was in version 1.0.6, restoring free heap.

close #5630
close #5474
close #5699
close #5697
2021-10-22 02:22:20 +03:00
951c8bece5 libraries/SPI/src/SPI.h: SPIClass: add method to get SS pin number (#5788)
* SPI.h add new call to return a SS pin number used.

As code example states, the SS pin needs to be explicitly set for output for SPI to work, but the pin number have to be coded in addition to the SPI logic in the library, which means this duplicates code. It is much better to just be able to get the pin number from library itself.

* Update SPI_Multiple_Buses.ino to use new pinSS method

Simplify the example case, to show usage of pinSS method. This also simplifies the example, removing duplicated code.
2021-10-21 16:48:55 +03:00
4413dbbd87 IDF master 4e03a9c34c (#5792)
esp-dsp: master e05fc36
esp-face: master f108a83
esp-rainmaker: f1b82c7
esp32-camera: master 3022601
esp_littlefs: master 05d55ab
2021-10-21 16:27:28 +03:00
ed53b6c8d4 Merge pull request #5746 from espressif/i2c-slave
I2C Slave Implementation
2021-10-14 12:52:20 +03:00
2e53300da5 IDF master b86fe0c66c
esp-dsp: master e05fc36
esp-face: master f108a83
esp-rainmaker: f1b82c7
esp32-camera: master 3022601
esp_littlefs: master f6e7108
2021-10-14 12:51:25 +03:00
64c7f746fd Merge pull request #5753 from pedrominatel/docs/troubleshooting_python_not_found
[Docs] Added Python is missing on the troubleshooting section
2021-10-14 09:48:15 +01:00
1049be7d56 Merge branch 'master' into docs/troubleshooting_python_not_found 2021-10-14 09:37:12 +01:00
34c81be93b IDF master b86fe0c66c 2021-10-13 18:21:12 +00:00
2fb2ef54ce Calculate properly Firmware MSC fat table sectors 2021-10-13 15:39:36 +03:00
49f525c91d Added Python is missing on the troubleshooting section 2021-10-12 13:26:13 +01:00
b145e65975 API Optimizations
- Support Wire::end() for Slave
- Prevent Master operations when in Slave mode
2021-10-11 14:46:31 +03:00
951c32056a Merge branch 'master' into i2c-slave 2021-10-11 13:13:13 +03:00
7a7bd37e51 feat: Add the ability to get the peer certificate of an SSL connection
Summary

New feature: Add the ability to get the peer certificate of an SSL connectio. This is useful for IoT when the root/cert trust chain has a shorter lifecylce than the device itself. Includes example code.

It adds two methods to the WiFiClientSecure client:

bool getFingerprintSHA256( uint8_t fingerprint_remote_sha256[32]) -- return true and the fingerprint (i.e. the SHA256 of the raw x509 as a DER - identical to what you see in for example your webbrowser). Or false on error.
const mbedtls_x509_crt* getPeerCertificate(); -- return the actual X509 struct or NULL on error.
Impact

No impact; backwards compatible (only adds to the API)
2021-10-11 13:04:13 +03:00
a75602dc68 Add support M5Stack Unit CAM (#5748)
In this PR, we add support for M5Stack Unit CAM to CameraWebServer.
https://docs.m5stack.com/en/unit/unit_cam
2021-10-11 13:01:10 +03:00
88789cd817 Fix build error when compiling with verbose logging (#5747)
When compiling with verbose logging, the build would error with a message saying `len` is not defined in `tud_vendor_rx_cb()`. This change fixes the error.
2021-10-11 13:00:25 +03:00
335cedf4f7 Update CMakeLists.txt 2021-10-09 14:37:10 +03:00
f9f70d2f73 I2C Slave Implementation 2021-10-09 14:30:20 +03:00