arduino-esp32/cores/esp32
chuck todd 9db207afbe Improve bus recovery (#1767)
If the esp32 is reset during a i2c read cycle the slave device may be in control of the SDA line.  

If the SDA line is held low, the esp32 cannot issue a START or STOP to recover the bus. 

The previous code did not correctly configure the SCL output pin, and it cycled SCL 9 times with SDA Low.  Since the slave device was in a READ cycle, it just continued outputting the bits of the current byte.  When the ACK/NAK bit space occurred, The low output value of SDA was interpreted as ACK so the slave device continued with the next byte.  It never terminated the READ cycle. 

This new code will correctly recover from an interrupted READ
2018-08-18 08:50:59 +02:00
..
libb64 fix libb64 2017-05-06 18:56:25 +03:00
Arduino.h Add compatibility macros with esp8266 (#783) 2017-10-30 10:27:26 +01:00
base64.cpp Convert the few remaining cr/lf files to use lf for eol. (#1316) 2018-04-16 16:34:39 +02:00
base64.h Convert the few remaining cr/lf files to use lf for eol. (#1316) 2018-04-16 16:34:39 +02:00
binary.h initial import 2016-10-06 07:09:44 -06:00
cbuf.cpp Fix cbuf not being able to hold the full length 2017-01-24 17:57:44 +02:00
cbuf.h initial import 2016-10-06 07:09:44 -06:00
Client.h initial import 2016-10-06 07:09:44 -06:00
esp32-hal-adc.c Add Arduino SAM compatible analogReadResolution and Non-Blocking ADC api 2017-03-03 15:53:20 +02:00
esp32-hal-adc.h Add Arduino SAM compatible analogReadResolution and Non-Blocking ADC api 2017-03-03 15:53:20 +02:00
esp32-hal-bt.c Update IDF to aaf1239 (#1539) 2018-06-27 09:01:06 +02:00
esp32-hal-bt.h BT define the hal methods even if BT is disabled (but return false) 2017-05-06 18:50:20 +03:00
esp32-hal-dac.c Add analogRead, touchRead, dacWrite and updated esp-idf 2016-12-08 23:43:41 +02:00
esp32-hal-dac.h Missing include gpio.h in esp32-hal-dac.h (#1512) 2018-06-19 11:33:17 +03:00
esp32-hal-gpio.c Allow using argument with attachInterrupt (#1535) 2018-07-07 11:26:58 +02:00
esp32-hal-gpio.h Allow using argument with attachInterrupt (#1535) 2018-07-07 11:26:58 +02:00
esp32-hal-i2c.c Improve bus recovery (#1767) 2018-08-18 08:50:59 +02:00
esp32-hal-i2c.h Wire ReSTART fix, with others (#1717) 2018-08-14 11:51:15 +02:00
esp32-hal-ledc.c Update IDF to 1c3dd23 2018-01-18 00:56:58 +02:00
esp32-hal-ledc.h LEDC Driver Update 2017-01-09 18:05:30 +02:00
esp32-hal-log.h Update IDF to aaf1239 (#1539) 2018-06-27 09:01:06 +02:00
esp32-hal-matrix.c initial import 2016-10-06 07:09:44 -06:00
esp32-hal-matrix.h initial import 2016-10-06 07:09:44 -06:00
esp32-hal-misc.c Add Wrover Support and Option to enable SPIRAM 2018-07-03 23:03:50 +02:00
esp32-hal-psram.c Add Wrover Support and Option to enable SPIRAM 2018-07-03 23:03:50 +02:00
esp32-hal-psram.h Add Wrover Support and Option to enable SPIRAM 2018-07-03 23:03:50 +02:00
esp32-hal-sigmadelta.c Fix wrong range of duty cycle (#1353) 2018-05-14 13:18:03 +02:00
esp32-hal-sigmadelta.h fix renamed method names for SigmaDelta 2017-01-09 21:55:37 +02:00
esp32-hal-spi.c Fixes SPI mode setting (Issue #1094) (#1096) 2018-03-04 20:56:33 +01:00
esp32-hal-spi.h SPI implement transaction locking 2017-02-14 04:15:38 +02:00
esp32-hal-time.c Use correct sign of offset for TZ variable (#685) 2017-10-01 10:19:00 +08:00
esp32-hal-timer.c OK Really change timer allocator 2017-09-28 18:38:07 +08:00
esp32-hal-timer.h Initial Timers driver 2016-12-09 17:47:30 +02:00
esp32-hal-touch.c Change Touch interrupt allocator 2017-09-28 16:44:47 +08:00
esp32-hal-touch.h Add analogRead, touchRead, dacWrite and updated esp-idf 2016-12-08 23:43:41 +02:00
esp32-hal-uart.c Port UART reset fix from ESP-IDF (#1408) 2018-07-03 17:54:08 +02:00
esp32-hal-uart.h HardwareSerial - availableForWrite() support (#1226) 2018-04-06 19:07:46 +03:00
esp32-hal.h Add Wrover Support and Option to enable SPIRAM 2018-07-03 23:03:50 +02:00
esp8266-compat.h Convert the few remaining cr/lf files to use lf for eol. (#1316) 2018-04-16 16:34:39 +02:00
Esp.cpp FIX: getEfuseMac can return random data (#1059) 2018-03-04 20:35:14 +01:00
Esp.h Add ESP.getChipId() function to get ESP32's ChipID. (#322) 2017-05-05 09:59:54 +03:00
HardwareSerial.cpp Add declarations for all Serial, SPI and Wire buses 2018-07-03 20:41:03 +02:00
HardwareSerial.h Add declarations for all Serial, SPI and Wire buses 2018-07-03 20:41:03 +02:00
IPAddress.cpp const correctness (#89) 2016-12-12 01:32:55 +02:00
IPAddress.h const correctness (#89) 2016-12-12 01:32:55 +02:00
IPv6Address.cpp Add initial IPv6 Support 2017-01-06 00:54:50 +02:00
IPv6Address.h Add initial IPv6 Support 2017-01-06 00:54:50 +02:00
main.cpp Use esp_timer_get_time as time source for micros and mills (#1424) 2018-05-22 16:12:30 +02:00
MD5Builder.cpp initial import 2016-10-06 07:09:44 -06:00
MD5Builder.h initial import 2016-10-06 07:09:44 -06:00
pgmspace.h std::functioanl for WFIF event + Minor fix (#1366) 2018-05-14 13:05:49 +02:00
Print.cpp Fixes implementation of __FlashStringHelper (#183) 2017-02-08 19:57:26 +02:00
Print.h Fixes implementation of __FlashStringHelper (#183) 2017-02-08 19:57:26 +02:00
Printable.h initial import 2016-10-06 07:09:44 -06:00
Server.h Update IDF to aaf1239 (#1539) 2018-06-27 09:01:06 +02:00
stdlib_noniso.c include stdlib_noniso in Arduino.h 2016-10-26 02:13:00 +03:00
stdlib_noniso.h initial import 2016-10-06 07:09:44 -06:00
Stream.cpp Wiring.h -> Arduino.h 2016-10-06 07:09:45 -06:00
Stream.h initial import 2016-10-06 07:09:44 -06:00
StreamString.cpp Convert the few remaining cr/lf files to use lf for eol. (#1316) 2018-04-16 16:34:39 +02:00
StreamString.h Convert the few remaining cr/lf files to use lf for eol. (#1316) 2018-04-16 16:34:39 +02:00
Udp.h initial import 2016-10-06 07:09:44 -06:00
WCharacter.h Wiring.h -> Arduino.h 2016-10-06 07:09:45 -06:00
wiring_private.h Do not include file that does not exist 2016-11-13 13:26:49 +02:00
wiring_pulse.c Enable pulseIn() (#140) 2017-01-20 21:49:17 +02:00
wiring_shift.c add shiftIn shiftOut 2016-11-13 16:53:56 +02:00
WMath.cpp use esp_random in WMath.cpp 2016-12-02 13:42:31 +02:00
WString.cpp Update IDF to aaf1239 (#1539) 2018-06-27 09:01:06 +02:00
WString.h Update IDF to aaf1239 (#1539) 2018-06-27 09:01:06 +02:00