Commit Graph

1158 Commits

Author SHA1 Message Date
Dirk-Willem van Gulik
d79a1f3d10
Add an aditional (void *) arg to the RMT callback (much like Ticker() et.al.). (#3345)
* Add an aditional (void *) arg to the RMT callback - to allow more flexible handling of the callback (e.g. by passing a private struct or a class pointer). Same pattern as used by the Ticker() and many others. Example updated & new example with a trapoline added.

* Fix example for new API

* Fix lint warnings

* Add a second missed example.

* Correct timeout & improve socket error handling.
2020-10-14 14:41:50 +03:00
Marco Sirabella
831f0ac29a
Rename eep -> partitions.bin & hex -> bin (#4143)
This is in line with the
[arduino platform specification](https://arduino.github.io/arduino-cli/platform-specification/#recipes-for-extraction-of-executable-files-and-other-binary-data)
specifying that the file extension after recipe.objcopy is arbitrary and
that the AVR platform uses `eep` & `hex`, while the esp32 platform seems
to have file extensions `partition.bin` & `bin`
2020-10-14 14:34:14 +03:00
Dan Oprescu
ee3bb16c77
Fix support for following redirects added by ee88c42c3b (#4240) (#4385) 2020-10-14 14:32:47 +03:00
Andrey
d8dca9c73b
bugfix (#4389) 2020-10-14 14:30:32 +03:00
programminghoch10
c3f3497048
fixed some typos (#4395) 2020-10-14 14:27:49 +03:00
programminghoch10
18c3345451
fix typos in WiFiSTA.cpp (#4396)
* fix typos

* made return value description a bit more helpful
2020-10-14 14:27:19 +03:00
Saptarsi Saha
b07f1c11fe
Updated Readme.md (#4400)
* Updated Readme.md

Added links to latest release. Made it look a lot cleaner.

* Update README.md
2020-10-14 14:26:41 +03:00
Vo Linh Truc
2685a5dd7b
Certificate isn't be free in case parse failure. (#4412)
I met problem while I was working with the WiFiClientSecure.
I tried to found the source of the problem, and I found it in the sll_client.cpp.
Please check my contribution.

I've open this problem in #4335 but received no response.
2020-10-14 14:25:26 +03:00
TANAKA Masayuki
675a40b257
Fix Not by reference. But the value was updated. (#3279) 2020-10-03 03:41:03 +03:00
Alex
3570d48eb9
Added the DoIT ESPduino-32 board (#1520) 2020-10-03 03:06:40 +03:00
Shawn A
f76ec4f50b
adds debugging to dnsserver (#1046) 2020-10-03 02:59:55 +03:00
Pakpoom Eiamsouyngam
fb6d5ad234
Add Inex OpenKB Board (#4002)
Please add OpenKB Board Product from INEX Co. Ltd.

https://inex.co.th/shop/openkb.html
2020-10-03 02:20:10 +03:00
sasodoma
219ff3005b
Add missing slashes in HTTPUpdate examples (#4238)
I spent quite a while today figuring out how to get an OTA update over HTTPS on a custom port working. A part of my problem was not putting a slash before the .bin filename, since it wasn't there in the example. This produced invalid HTTP requests. Adding the slash would make it clear that it needs to be there.

Given that the URL in line 53 contains the same words "server" and "file.bin", one might assume that in line 55, the slash after the port number would get added automatically, however I have found out that without a slash you get an invalid request. Adding the slash removes any doubt.
2020-10-03 02:13:27 +03:00
Christoph Schultz
ccab428e4d
Added definitions for TTGO-LoRA32-V2.1.6 (#4205) 2020-10-03 02:06:11 +03:00
i3water
d2d24a14e0
add board WiFiduino32 (#4218) 2020-10-03 02:04:10 +03:00
SPELEC
af11921535
Add support for S.ODI_Ultra_v1.0 (#4372)
Add a new Dev Board S.ODI Ultra v1 in esp32 library
2020-10-03 01:59:53 +03:00
h2zero
82112384ca
Fix missing headers when compiling as IDF component with Cmake (#4377)
* HttpsOTAUpdate introduced new IDF component requirements.
These have been added to CMakeLists.txt to correct compilation errors when using Cmake.
2020-10-01 15:45:52 +03:00
thebigpotatoe
99aa866477
Update MDNSResponder::addService to return a boolean (#4365)
I was playing with the mDNS service and noticed the method MDNSResponder::addService could return a Boolean with the way it is implemented just like other functions in this library.

This would be handy to know at a higher level weather or not the service was added correctly to the mDNS server of the ESP32.
2020-10-01 15:44:24 +03:00
Jens Hauke
82670b96f8
Fix for missed scan response data (BLEScan). (#4358)
This is a fix for missing scan responses after a first successfull scan.

While running the BLE_scan.ino sketch with wantDuplicates=false, i got
only one result with correct advertising and scan response length (31,26):

pBLEScan->setAdvertisedDeviceCallbacks(new MyAdvertisedDeviceCallbacks(), false);
pBLEScan->start(scanTime, false);
...
[W][BLEScan.cpp:109] handleGAPEvent(): bytes length: 31 + 26, addr type: 1

All following calls to start() just returned the advertising data without
scan response data:

pBLEScan->start(scanTime, false);
[W][BLEScan.cpp:109] handleGAPEvent(): bytes length: 31 + 0, addr type: 1

With "wantDuplicates=true" i got:

pBLEScan->setAdvertisedDeviceCallbacks(new MyAdvertisedDeviceCallbacks(), true);
pBLEScan->start(scanTime, false);
[W][BLEScan.cpp:109] handleGAPEvent(): bytes length: 31 + 26, addr type: 1
[W][BLEScan.cpp:109] handleGAPEvent(): bytes length: 31 + 26, addr type: 1
[W][BLEScan.cpp:73] handleGAPEvent(): ESP_GAP_SEARCH_INQ_CMPL_EVT
Devices found: 1
Scan done!
pBLEScan->start(scanTime, false);
[W][BLEScan.cpp:109] handleGAPEvent(): bytes length: 31 + 0, addr type: 1
[W][BLEScan.cpp:109] handleGAPEvent(): bytes length: 0 + 26, addr type: 1
[W][BLEScan.cpp:109] handleGAPEvent(): bytes length: 31 + 0, addr type: 1
[W][BLEScan.cpp:109] handleGAPEvent(): bytes length: 0 + 26, addr type: 1

Explicitly initializing m_scan_params.scan_duplicate of BLEScan solves
this issue (In my case the un-initialized value was
m_scan_params.scan_duplicate == 1073599044).

Co-authored-by: Me No Dev <me-no-dev@users.noreply.github.com>
2020-10-01 15:43:30 +03:00
lbernstone
9e7b13e46d
WebServer.handleClient delay (#4350)
* If WebServer.handleClient is run in a tight loop, it will starve other processes.  So, if there is no connection, throw in a delay(1).  Fixes #4348

* Made a variable to control the delay behavior
2020-10-01 15:42:23 +03:00
lienbacher
2243081f85
add I2C_RX_FIFO_OVF_INT_ST handling to i2c_isr_handler_default (#4342)
Fixes crash on ESP32 when I2C FiFo overflows and interrupt function is unable to handle crash and throws this error:
[E][esp32-hal-i2c.c:1013] i2c_isr_handler_default(): unknown int=4

Co-authored-by: 0xDEADBEEF <0xde4dbeef@gmail.com>
2020-10-01 15:40:42 +03:00
Tom Davis
1f4491f4ee
Updated AzureIoT submodule. (#4322) 2020-10-01 15:38:56 +03:00
wadim
aa529eb5a0
Fix getString() freeze on empty responses (#4317) 2020-10-01 15:36:23 +03:00
lbernstone
a9cb7c6d6f
mismatched parameter names. Fixes #4310 (#4313) 2020-10-01 15:35:40 +03:00
Fabrice
45d47e2be0
Fix duplicated pin constant (#4282)
G22 was defined twice, changing the first one to G21
2020-10-01 15:31:56 +03:00
lbernstone
99c94bb482
Set SD state to idle before unregister (reduces power) (#4272) 2020-10-01 15:31:16 +03:00
Bert Melis
f98fc7ee9f
fix hwSerial tx only flush (#4263) 2020-10-01 15:30:45 +03:00
Cristian Popescu
0957776855
Reinit updater md5 related fields (#4260)
MD5 cleanup on begin
Typos
2020-10-01 15:29:58 +03:00
Sean Kwok
d93245d0f5
add m5stack-core2 board (#4255)
* add m5stack-core2 board
2020-10-01 15:28:40 +03:00
Dimitre
c917ed2504
shallow clone to make installation faster (#4246)
shallow clone (board and submodules) to make installation faster
2020-10-01 14:43:48 +03:00
Clickau
ee88c42c3b
Add support for following redirects in HTTPClient (#4240) 2020-10-01 14:41:54 +03:00
awende
837cc3d271
Added SparkFun ESP32 Thing Plus board (#4224) 2020-10-01 14:39:39 +03:00
gitolicious
9b2ae12fb7
Added D pin numbers (#4220)
Source: https://wiki.dfrobot.com/FireBeetle_ESP32_IOT_Microcontroller(V3.0)__Supports_Wi-Fi_&_Bluetooth__SKU__DFR0478
2020-10-01 14:39:01 +03:00
Javi
86e221d087
Update HelloServer.ino (#4219)
Change name esp8266 for esp32 in welcome message
2020-10-01 14:38:26 +03:00
nicolaser15
663effa00e
Update Parsing.cpp (#4217)
* Update Parsing.cpp

When uploading TLS cert files the end of file "-----END CERTIFICATE-----" (or any kind of file with the sequence "CRLF--") is taken as posible end boundary. Then it is compared to the start boundary string. As it is expected, comparison turns to be false, and the whole end boundary string is put to _currentUpload->buf through _uploadWriteByte(). Here you have the problem: if you read boundary.length() bytes from HTTP request and you have some of the actual end boundary bytes in it, when you put all those bytes into _currentUpload->buf you are making a mistake. You will miss the actual end boundary string because some of those bytes were put in _currentUpload->buf.

* Update Parsing.cpp
2020-10-01 14:37:59 +03:00
lewis he
6f237a8415
Fix ttgo twatch & tbeam board definition error (#4212) 2020-10-01 14:36:32 +03:00
Sergey Lyubka
c3c38a8eb5
Enable precompiled libraries (#4209)
The latest versions of Arduino IDE shifted the responsibility for precompiled libraries support to the core developers, which breaks precompiled library support in esp32 Arduino core. See https://github.com/arduino/ArduinoCore-avr/pull/52 for more details:

```
In this new version of the builder we are not doing any heuristics to find the right spot where the ldflags should be inserted (this was causing many bugs on its own); instead, we fully trust the core makers to add explicit support to precompiled libs.
```

This chage re-enables precompiled library support in the esp32 Arduino core.
2020-10-01 14:32:20 +03:00
brian-r-calder
8fcc914853
Added facility to invert the polarity of input UART bits. (#4200) 2020-10-01 13:58:48 +03:00
Sonthaya Boonchan
d03f8f1277
Update pins_arduino.h (#4190) 2020-10-01 13:54:01 +03:00
lbernstone
882b12c44e
rmdir causes issues in SPIFFS. Fixes #4138, albeit not very cleanly (#4154)
SPIFFS causes crashes if you attempt to rmdir. Since there are no true directories in spiffs, this ought to be a noop. It looks like @me-no-dev worked around this by using unlink instead of rmdir, which works in fatfs and doesn't panic spiffs. This behavior is not universal. In order to get littlefs working, it would be good to get this back to conformity. Rather than digging deep into the upstream spiffs, I just check the mountpoint and noop if it is "/spiffs". So, if the user has changed the mountpoint, this will not work, but I think it's a pretty good tradeoff.
2020-10-01 13:52:24 +03:00
Dan Head
93d850f783
Fixed comment with correct FQDN (#4152) 2020-10-01 13:51:36 +03:00
buxtronix
4f48caca2c
Set scan_duplicate in BLE scan params (#4126)
This value is uninitialised and as such can be a random (and invalid) value. It's needs to be set per the espressif documentation here:

https://docs.espressif.com/projects/esp-idf/en/latest/esp32/api-reference/bluetooth/esp_gap_ble.html#_CPPv4N21esp_ble_scan_params_t14scan_duplicateE

This PR sets it to DUPLICATE_DISABLE. Chosen as this is needed to ensure all scan data is populated in the scan callback, per this comment in the IDF:

https://github.com/espressif/esp-idf/blob/master/components/bt/host/bluedroid/stack/btm/btm_ble_gap.c#L3591

"//if scan duplicate is enabled, the adv packet without scan response is allowed to report to higher layer"

We **don't** want it to report to the higher layer (ie BLEScan.cpp) **unless** it has the active scan response.

Seems to resolve #3770 #3677 and possibly others.
2020-10-01 13:45:45 +03:00
Nikos Mouratidis
80e9e42c3b
Fix issue #3522 (WiFi does not restart after stopped) (#4114)
This commit fixes issue https://github.com/espressif/arduino-esp32/issues/3522 where WiFi service fails to start after a WiFi.disconnect(true) or a WiFi.mode(WIFI_OFF).
2020-09-30 15:34:10 +03:00
Emil Sandstø
494061af26
WebServer: Fix OOB write (#4088)
Successful exploitation could lead to arbitrary code execution.

The bug can be reproduced by running the following in a browser:
```
const formData = new FormData();
for (let i = 0;i < 33;++i) { formData.append("foo", i.toString()); }
await fetch("http://esp.local", { method: 'POST', body: formData });
```
2020-09-30 15:28:28 +03:00
Kevin Hester
2fd3d042b2
Fix #4046 Details below: (#4086)
Informed by the discussion in the bug and the code in 'that other branch'
the fix was clear.  Just set a flag if we start handling a write, and
use that flag to guard the long write complete call.
2020-09-30 15:27:35 +03:00
ToXIc
b551310c37
Minor change but could confuse some (#4084) 2020-09-30 15:26:38 +03:00
lbernstone
f30edd040e
Update CaptivePortal.ino (#4080)
* Update CaptivePortal.ino

Illegal SSID used for SoftAP

* Fixed ordering problem.  Now actually works
2020-09-30 15:26:15 +03:00
chegewara
b7c5e502e7
Add static pin support (#4078) 2020-09-30 15:25:42 +03:00
M. Betz
fa8a1c38d5
fix #4071 (#4072)
SPIFFS File object evaluates as true even if the file could not be opened.
2020-09-30 15:24:59 +03:00
cweinhofer
d56267bd8c
Update GetChipID.ino (#4070)
Co-authored-by: Me No Dev <me-no-dev@users.noreply.github.com>
2020-09-30 15:24:29 +03:00