* Add CA certificate in example
SHA1 fingerprint is broken now: more info: https://shattered.io
* Best error handling
When occur an error in WiFiClientSecure library just return the error message
and clean the context avoiding crash - fix for https://github.com/espressif/arduino-esp32/issues/211
Translate MbedTLS error codes in messages for best understanding
* Declarate certificates as const
mbedtls_pk_parse_key needs a const unsigned char * certificate. In old implementation the certificate was declarated as char * so first it converts to unsigned and after to const.
When we convert signed to unsigned it may result in a +1 larger output.
Fix issue https://github.com/espressif/arduino-esp32/issues/223
* Rework WiFiClient
Rework WiFiClient to correct error where making a copy of a WiFiClient object resulted in the socket being closed prematurely.
Added loop and select to write to handle/prevent EAGAIN errors.
* Rework WiFiClient to use shared_ptr
Rework changes to utilize shared_ptr rather than manually maintaining reference count.
Revert changes to write
* Incorporate comments from review
Move WiFiClientSocketHandle and fd() into WiFiClient.cpp
The send call may return EAGAIN. This indicates a recoverable error and a retry should be attempted. The current implementation treats this as a fatal error. Further, the current implementation strips the error code, setting it to 0, which prevents the caller from handling it directly.
This change utilizes select to verify the socket is available prior to calling send and will retry on an EAGAIN condition.
* Improvements in EspClass
- fixed not working functions for flash chip size, speed and mode
- added function to retrieve chip revision from eFuse
- flashRead / flashWrite supports encrypted flash
* Rename getCpuRevision function to getChipRevision
* Revert: flashRead / flashWrite supports encrypted flash
Reading and writing to encrypted flash has to be aligned to 16-bytes. Also NAND way of writing (i.e. flipping 1s to 0s) will not work with spi_flash_write_encrypted. Note: spi_flash_read_encrypted will always try to decrypt data, even if it wasn't encrypted in the first place.
WiFi and BlueTooth can now be started and stopped at will.
basic functions added to esp32-hal to start and stop the BT radio
SimpleBLE class added to show the most basic functionality
Example to show how to switch between BT, WiFi or Both
Implement semaphore and mutex to safeguard the ISR.
This is the proper way to handle hardware Interrupts with FreeRTOS. The
more regular approach may/will lead to exceptions
* Added LEDC Fade exmaple
* Renamed LEDCFade example to LEDCSoftwareFade
Added valueMax parameter for ledcAnalogWrite
* Remove usage of LED_BUILTIN constant to solve CI errors
* Refactoring EPS32NVS library to Preferences library
* Renaming all set* functions to put
* Added functions for float, double and bool
* Small redesign of Preferences API
* added type to put* function names
* for (u)int64_t used functions name with *(U)Long64
* added functions for long and unsigned long (same like int a unsigned int)
* Improved ESP32NVS default value support for read* functions
Fixed uninitialized NVS flash storage. Added example code.
* Add methods for String and remove unnecessary nvs_flash_init() in ESP32NVS class
+ other minor declaration fixes
* ESP32NVS function name renaming
* read* -> get*
* write* -> set*
* erase -> clear / remove
Currently there is bug in WiFiUDP library when you want to use beginPacket(...) without listening on socket (without calling begin(...) first). You can't send any data because socket is not open and also tx_buffer is not allocated which cause crash while writing data to tx_buffer.
Previous __FlashStringHelper implementation was defines as a char which brought problem in case the method with char* parameter used overloading with __FlashStringHelper* parameter (they was identical). Now __FlashStringHelper is defined as a class and all casts between char* and __FlashStringHelper* are made with reinterpret_cast sugar.