chuck todd
a695187de8
Correct 10bit Device address handling.
...
The existing code did not follow protocol with 10bit addressed devices. Per _Philps/NXP Semiconductors UM10204 I2C-bus specification and user manual Rev. 6 4April2014_ pg.15 3.1.11 10-bit addressing:
~The first seven bits of the first byte are the combination of 1111 0xx of which the last two bits (xx) are the two Most-Significant Bits (MSB) of the 10-bit address; the eighth bit of the first byte is the R/!W! bit the determines the direction of the message~
2017-10-21 13:14:14 -06:00
Jason K
1270f40066
Add initial handling for long I2C reads.
2017-10-21 08:26:46 -04:00
chuck todd
7eff707ba6
Fix Early return when Address NAK is received ( #750 )
...
The i2cWrite() function was returning to the app before the i2c transaction had completed. This caused the next Wire() call to return a I2C_ERROR_BUSY.
2017-10-21 08:40:53 +02:00
me-no-dev
409c75da04
Implement ESP_LOGx override option
...
Usable for library developers who write code not dependent on Arduino.
Adding 3 lines to the includes will permit their debug messages to be
visible in Arduino IDE or when enabled under IDF
2017-10-14 00:06:55 +03:00
Ewald Wasscher
e6a5b68e40
Added argument to HardwareSerial.begin to specify whether the logic levels of the UART rx and tx lines should be inverted ( #719 )
2017-10-13 11:46:56 +03:00
me-no-dev
0fa25c09ef
Fix possible leak in String
...
Fixes: https://github.com/espressif/arduino-esp32/issues/710
2017-10-12 06:52:35 +03:00
chuck todd
2f0cfa92cd
Update pgmspace.h ( #707 )
...
Fix redefines of strXXX, original was using strnXXX with length set to 0x7fffffff. This caused problems with strcpy and strcat. The destination buffer was NULL'd to 0x7fffffff which killed the app.
2017-10-09 06:38:42 +03:00
Testato
8dc0c86457
Chip revision fix ( #704 )
...
* Chip revision fix
https://www.esp32.com/viewtopic.php?f=2&t=1358&sid=f77cd62ec254317f3bbb30d8ab75ca2a&start=10
* using of esp_chip_info instead of register reading
2017-10-08 14:48:50 +03:00
copercini
171032b701
Print an error when serial number is invalid ( #691 )
...
* Print error when serial number is invalid
* Move to the first check, change end by return
2017-10-04 11:12:21 +08:00
Luc
d208a36836
Use correct sign of offset for TZ variable ( #685 )
...
Use UTC instead of CDT for consistency
2017-10-01 10:19:00 +08:00
me-no-dev
28be506ce3
uncomment I2C debug so it can be used
2017-09-29 21:24:06 +08:00
Jason K
0cd62852da
I2c reset functionality ( #678 )
...
* Addition of a i2cReset method and timeout handling for the case where the i2c hardware FSM (state machine) gets stuck in a busy state.
* Use newly added i2cReset function within the wire library.
2017-09-29 21:17:13 +08:00
me-no-dev
af35773d65
OK Really change timer allocator
2017-09-28 18:38:07 +08:00
me-no-dev
17ece1bccd
Revert Timer Interrupt setup
2017-09-28 18:22:35 +08:00
me-no-dev
6d98555658
Change timer interrupt allocator
2017-09-28 16:45:08 +08:00
me-no-dev
f9b2d42a61
Change Touch interrupt allocator
2017-09-28 16:44:47 +08:00
me-no-dev
7991161f06
Change Pin Interrupt Allocator
2017-09-28 12:27:10 +08:00
me-no-dev
db77195404
Fix Serial
2017-09-27 13:50:05 +08:00
me-no-dev
d27d297195
Update IDF to c4e65d6
2017-09-22 17:28:54 +08:00
me-no-dev
e2bd93c092
Fix UART0 not able to read/available
2017-09-22 14:17:25 +08:00
me-no-dev
c66a020e80
Add guards to not compile BT code if not enabled
2017-09-21 19:08:18 +08:00
Luc
4092fc409e
Add baudRate function ( #651 )
...
usefull for ESP8266 compatibility
2017-09-21 17:00:12 +08:00
me-no-dev
db79c2ee95
Add api to get CPU temperature
...
Fixes: https://github.com/espressif/arduino-esp32/issues/563
Fixes: https://github.com/espressif/arduino-esp32/issues/625
Source:
https://github.com/pcbreflux/espressif/blob/master/esp32/arduino/sketchb
ook/ESP32_int_temp_sensor/ESP32_int_temp_sensor.ino
2017-09-18 17:47:06 +08:00
me-no-dev
ab0ea2f6da
Fix missing method from SPI HAL
...
Fixes: https://github.com/espressif/arduino-esp32/issues/640
2017-09-18 12:14:41 +08:00
me-no-dev
9fc3f1ebdd
Fix wrong SPI peripheral enabled
...
Related: https://github.com/espressif/arduino-esp32/issues/634
2017-09-13 17:21:34 +03:00
me-no-dev
39fb8c3044
Fix header deprecation
2017-09-12 09:42:14 +03:00
me-no-dev
59a6800cdf
Enable clocks for UART1 and 2
...
Recent change in IDF disables those clocks at boot. This change should
help with that.
Fixes: https://github.com/espressif/esp-idf/issues/975
2017-09-10 20:24:41 +03:00
Mark D
234c855c9b
add configTzTime() to setup sntp using TZ environment variable ( #608 )
2017-09-05 11:15:55 +03:00
me-no-dev
6707d4d331
Optimize timer drift
...
Fixes: https://github.com/espressif/arduino-esp32/issues/227
2017-08-26 00:01:02 +03:00
me-no-dev
77b03472c6
Set uart queue to NULL after free
...
Fixes: https://github.com/espressif/arduino-esp32/issues/435
2017-08-17 19:04:20 +03:00
Pranav Cherukupalli
41e36a72f3
uartEnd: Unlock mutex before detaching rx and tx ( #554 )
...
* uartEnd: Unlock mutex before detaching rx and tx
This should solve the device freezing issue when Serial.end() is called
* Unlock UART MUTEX only for detaching Rx and Tx
* Thanks to @me-no-dev for pointing it out that
uart->dev->conf0.val can be inside mutex lock
2017-08-04 12:00:51 +03:00
me-no-dev
a1bef8b5c3
improve Serial repeated begin/baud change
2017-08-02 00:32:42 +03:00
me-no-dev
4495659ac5
Increase the memory for loop task
2017-08-02 00:08:56 +03:00
Claude Heintz
23acb4d17b
Two Stop Bit Workaround ( #461 )
...
* Update esp32-hal-uart.c
* Two Stop Bit Workaround
see https://github.com/espressif/esp-idf/blob/master/components/driver/uart.c lines 118-127
2017-06-22 19:40:31 +02:00
me-no-dev
c2f83f48e0
Revert "Fix enable Update partition"
...
This reverts commit 63e1daa5ea67ce0f9b89b789e4bb26672f64d32e.
2017-06-03 20:11:41 +03:00
me-no-dev
2e5743eaa1
Fix enable Update partition
2017-06-03 20:11:41 +03:00
me-no-dev
7db8f70956
change return type of micros() and millis()
...
Fixes: https://github.com/espressif/arduino-esp32/issues/384
2017-05-22 15:47:12 +03:00
me-no-dev
d36e9bbfa9
Change deprecated esp_efuse_read_mac method
2017-05-15 21:35:25 +03:00
me-no-dev
4b47402afd
Use static buffer for log_printf
2017-05-15 20:53:45 +03:00
me-no-dev
befebb7242
Change DPORT access macros
2017-05-15 20:53:09 +03:00
me-no-dev
450df7e3f8
fix libb64
...
Implements: https://github.com/esp8266/Arduino/pull/2883
Fixes: https://github.com/espressif/arduino-esp32/issues/313
Fixes: https://github.com/espressif/arduino-esp32/issues/344
2017-05-06 18:56:25 +03:00
me-no-dev
673f453da0
BT define the hal methods even if BT is disabled (but return false)
2017-05-06 18:50:20 +03:00
me-no-dev
768e57f285
Fix BT enabled check
2017-05-06 18:40:23 +03:00
me-no-dev
b879f80017
Allow Arduino to be run without BT support in IDF
...
Fixes: https://github.com/espressif/arduino-esp32/issues/343
2017-05-06 18:27:03 +03:00
WEMOS Electronics
a38ffe58fe
Add ESP.getChipId() function to get ESP32's ChipID. ( #322 )
...
* Add ESP.getChipId() function to get ESP32's ChipID.
* change getChipId() to getEfuseMac()
2017-05-05 09:59:54 +03:00
Severin Smith
cc73f17add
SPI_MODE2 and SPI_MODE3 configurations inverted ( #345 )
...
It appears that the configurations for `ck_out_edge` were inverted for `SPI_MODE2` and `SPI_MODE3`. You can check the technical reference manual on page 76, table 23 "Clock Polarity and Phase, and Corresponding SPI Register Values for SPI Master".
I've check with my oscilloscope that the current configuration is wrong and this fix corrects the issue.
2017-05-05 09:59:18 +03:00
me-no-dev
aad4b336d6
Add default config for BT init and offsets for partition table
2017-04-22 16:33:07 +03:00
me-no-dev
ee14bc2cc6
Mute leftover debug from WiFi
2017-04-13 09:13:45 +03:00
me-no-dev
fd81fd0ac3
Fix BT init compilation error
...
Fixes: https://github.com/espressif/arduino-esp32/issues/309
2017-04-12 20:53:21 +03:00
me-no-dev
b465858563
Check and format NVS partition if size has changed
2017-04-04 01:27:26 +03:00
me-no-dev
90322ae7eb
Make I2C work reliably with interrupts
...
Thanks @marcmerlin and @MartyMacGyver
2017-03-26 00:27:27 +02:00
me-no-dev
dda89947a7
Fix writePixels
2017-03-22 02:26:18 +02:00
me-no-dev
9388d8358e
Return true for boolean test on Serial
...
Fixes: https://github.com/espressif/arduino-esp32/issues/270
2017-03-20 11:26:34 +02:00
me-no-dev
786425509e
Track microseconds overflow
...
Closes: https://github.com/espressif/arduino-esp32/pull/267
2017-03-20 11:21:56 +02:00
me-no-dev
eb46978a8d
Add Arduino SAM compatible analogReadResolution and Non-Blocking ADC api
...
connected to: https://github.com/espressif/arduino-esp32/issues/220 and
https://github.com/espressif/arduino-esp32/issues/161
2017-03-03 15:53:20 +02:00
me-no-dev
1058e89dc3
Fix wrong bitmask returned for pins above 31
2017-03-03 14:42:14 +02:00
me-no-dev
5f2b00228c
IDF add some defaults and allow Arduino to run in single-core mode
2017-02-28 23:36:05 +02:00
Martin Sloup
00c1a65612
Improvements in EspClass ( #222 )
...
* 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.
2017-02-23 02:23:27 +02:00
me-no-dev
1d759380a6
Major IDF and Arduino Update
...
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
2017-02-23 01:11:57 +02:00
me-no-dev
e873d577f7
Restructure Arduino.h a bit to help eclipse code indexer
2017-02-20 15:06:22 +02:00
me-no-dev
d0232d126a
SPI implement transaction locking
...
Use transactions to skip mutex locks for reads and writes
2017-02-14 04:15:38 +02:00
me-no-dev
9bd5de11a7
add hook for bluetooth to Arduino INIT
2017-02-14 04:15:38 +02:00
Martin Sloup
43cc3dc815
Fix for implicit declaration of function nvs_flash_init error ( #204 )
2017-02-13 01:56:47 +02:00
me-no-dev
4a90aeebc9
fix ESP:: getCpuFreqMHz
2017-02-11 23:36:16 +02:00
me-no-dev
450ea0d211
Update ESP class
2017-02-11 23:34:43 +02:00
me-no-dev
09f5f7266b
move yield to function
...
fixes: https://github.com/espressif/arduino-esp32/issues/193
2017-02-11 00:25:15 +02:00
Me No Dev
fb8fe671d6
New partitions ( #192 )
...
* Add new partition scheme
* Init NVS early, so it can be used without BT or WiFi
2017-02-10 14:11:24 +02:00
me-no-dev
7a7b697ff9
Add ESP::deepSleep(us)
...
fixes: https://github.com/espressif/arduino-esp32/issues/51
2017-02-08 20:32:49 +02:00
Martin Sloup
67128fcb2c
Fixes implementation of __FlashStringHelper ( #183 )
...
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.
2017-02-08 19:57:26 +02:00
Me No Dev
d02c1c786e
Update IDF, fix SS definition, add custom partitions and debug level selection ( #174 )
...
* Add build time partitions compilation
* Fix wrong definition of SS pin
* Add support for core debug level selection
* update idf libs
2017-02-06 15:17:11 +02:00
me-no-dev
de017a8a1b
Optimize SPI transfers to take one lock and do not return until completed
2017-02-01 02:14:36 +02:00
me-no-dev
6a1e7c1e99
Fix cbuf not being able to hold the full length
...
fixes: https://github.com/espressif/arduino-esp32/issues/145
2017-01-24 17:57:44 +02:00
me-no-dev
5f203e1a98
Add ESP::getSdkVersion
...
fixes: https://github.com/espressif/arduino-esp32/issues/146
2017-01-24 11:44:26 +02:00
me-no-dev
c8140f8288
add configTime, getLocalTime and support for time in Print
...
example:
```cpp
//done once on WiFi init
configTime(-7200, 3600, "pool.ntp.org");
//get local time
struct tm timeinfo;
if(!getLocalTime(&timeinfo)){
Serial.println("Failed to obtain time");
return;
}
//print time
Serial.println(&timeinfo);
//print time with different format
Serial.println(&timeinfo, "%A, %B %d %Y %H:%M:%S");
```
fixes: https://github.com/espressif/arduino-esp32/issues/29
2017-01-24 04:07:27 +02:00
sorscode
13f3ac569b
Enable pulseIn() ( #140 )
...
* Add files via upload
enable pulseIn()
* Remove optimistic_yield
2017-01-20 21:49:17 +02:00
me-no-dev
9e6e3249b6
update windows toolchain and platform.txt
2017-01-19 03:24:21 +02:00
me-no-dev
35316de8d3
revert toolchain for windows
2017-01-17 12:45:03 +02:00
Angus Gratton
ce5df79674
SDK headers: Use new esp-idf signal name VSPICLK_OUT_IDX ( #130 )
2017-01-16 12:12:13 +02:00
me-no-dev
6edf8a7795
fix renamed method names for SigmaDelta
2017-01-09 21:55:37 +02:00
me-no-dev
a4305284d0
LEDC Driver Update
...
- Add double precision to LEDC frequency
- Add method for writing frequencies (Tones)
- Add method for writing notes (8 channels polyphony anyone?)
2017-01-09 18:05:30 +02:00
me-no-dev
8e948096d4
Rename sd->sigmadelta in HAL
...
Change is to not be mistaken with SD Card
2017-01-09 17:57:17 +02:00
me-no-dev
7cef2e2954
Add initial IPv6 Support
2017-01-06 00:54:50 +02:00
me-no-dev
8b96b1a5f4
update IDF libs and esptool.py
...
adds autoreset after firmware upload
2017-01-05 13:54:40 +02:00
me-no-dev
668c3811b8
Wire: wait while bus is busy if ack failed
2016-12-15 01:41:54 +02:00
me-no-dev
b86fb30b1d
cleanup read commands
2016-12-14 23:31:28 +02:00
me-no-dev
04e0902ca6
Wire: if we are reading only one byte, do not send empty read command
2016-12-14 18:43:32 +02:00
me-no-dev
917a4fd6f0
allow setting internal pull resistors for any mode and enable them for I2C
2016-12-14 13:11:10 +02:00
me-no-dev
c19fc061b0
Hopefully fix I2C/Wire
...
Tested with (all at the same time):
- MPU9250
- HTU21
- TMP102
- BMP180
- AM2320
- SSD1306
2016-12-14 02:41:22 +02:00
me-no-dev
e92634a92b
Add analogSetAttenuation and analogSetPinAttenuation
2016-12-14 02:29:54 +02:00
me-no-dev
a6c02bc710
Add some missing defines
...
fixes: https://github.com/espressif/arduino-esp32/issues/76
fixes: https://github.com/espressif/arduino-esp32/issues/5
fixes: https://github.com/espressif/arduino-esp32/issues/91
2016-12-12 02:12:18 +02:00
Victor Tseng
54b1b8b1d3
const correctness ( #89 )
...
make IPAddress.toString() const method, it doesn't modify anything
within the class.
2016-12-12 01:32:55 +02:00
me-no-dev
8e7d00b9a8
i2c revert to old fifo write
2016-12-09 18:07:59 +02:00
me-no-dev
4e458fd6fb
Initial Timers driver
...
Implementation for Timers 0-4 (no locks yet)
2016-12-09 17:47:30 +02:00
me-no-dev
f5d6828c5a
Adjust interrupt numbers for GPIO and Touch
2016-12-09 13:22:56 +02:00
Me No Dev
d1025b6b5d
Update esp32-hal-i2c.c
...
wait for data to be latched and increase timeout in attempt to fix clock stretch issues
Connected issues:
http://esp32.com/viewtopic.php?f=19&t=632&p=2832#p2801
https://github.com/espressif/arduino-esp32/issues/81
https://github.com/espressif/arduino-esp32/issues/53
https://github.com/espressif/arduino-esp32/issues/11
2016-12-09 12:51:36 +02:00
me-no-dev
758553a786
Add analogRead, touchRead, dacWrite and updated esp-idf
2016-12-08 23:43:41 +02:00
me-no-dev
48abb79ed3
Remove autostart define overwrite
...
Fixes issue where switch will not properly trigger if Arduino is used
in IDF as component.
See
https://github.com/espressif/arduino-esp32/issues/83#issuecomment-265326
071
2016-12-07 11:06:33 +02:00
me-no-dev
ba04076f16
Move definitions to not conflict with C includes
2016-12-05 22:53:04 +02:00
me-no-dev
6dc34077c4
Add correct definitions for word
...
fixes: https://github.com/espressif/arduino-esp32/issues/76
2016-12-05 22:50:51 +02:00
me-no-dev
e77ec634a9
Fix deprecation warnings in ESP.cpp
2016-12-02 14:30:04 +02:00