esp_timer_get_time returns monotonic time in microseconds, as a 64-bit
number. It can be called from tasks and interrupts, does not use any
critical sections/mutexes, and is thread safe.
The esp-idf expects duty values for the the sigma delta modulator in the range of -128 to 127
The arduino framework is supposed to use the range 0-255 thus the offset caclulation was wrong.
wifi_err_reason_t doesn't have reason code 12. After reason code 11, we are getting wrong wifi disconnected reason message. Added "UNSPECIFIED" in place of reason code 12.
And above 201 reason code, it should be r-176 instead of r-177. Because messages are started from zeroth offset.
build.board is used to define a macro but - is not a permitted character in macro names. This causes the macro name to actually be only everything up to the first - and also many warnings when compiling for one of these boards:
<command-line>:0:14: warning: ISO C++11 requires whitespace after the macro name
<command-line>:0:14: warning: ISO C99 requires whitespace after the macro name
I have followed the convention of the other build.board names by replacing - with _.
The wifi stack initialisation must be complete before calling `_udp_ota.parsePacket()` otherwise you just get a screen filled with
```
```
and due to the more async methods in ESP32 `handle()` may be called before this can occur.
If you develop on windows and need cr/lf files, see this:
https://git-scm.com/book/en/v2/Customizing-Git-Git-Configuration#_formatting_and_whitespace
Git can handle this by auto-converting CRLF line endings into LF
when you add a file to the index, and vice versa when it checks out
code onto your filesystem. You can turn on this functionality with
the core.autocrlf setting. If you're on a Windows machine, set it
to true - this converts LF endings into CRLF when you check out code:
$ git config --global core.autocrlf true
* Update BLE lib
* Update IDF to f586f5e
* Restructure Bluetooth Serial includes
* Update esptool and gen_esp32part
* Add partition scheme selection for menuconfig
* Add partition scheme selection for Arduino IDE
* Fix BLE example
* Second attempt BLE fix
* Add exceptions to PIO
This change uses the `_RST` bit of the i2c peripheral to force the hardware into power on reset state. The prior code assumed the peripheral was already in a reset, it just cleared the reset bit.
Chuck.
This code allows Wire.begin() to assign the default values of SDA, and SCL only if they have not been previously configured. Arduino libraries that use Wire() usually re-init the I2C interface in their initialization code with a call to Wire.begin(). If a user app sets custom pins assignment in setup(); These assignments will be overwritten with the default values whenever Wire.begin() is called.
M5Stack variant (pins_arduino.h) file is not automatically included,
because boards.txt m5stack-core-esp32.build.variant=esp32
This commit changes m5stack-core-esp32.build.variant from esp32 to m5stack_core_esp32
also rename M5Stack variant directory from m5stack-core-esp32 to m5stack_core_esp32
* Add BluetoothSerial library
A simple UART to Classical Bluetooth bridge for ESP32
* Create README.md
* Fix typos
* Replace deprecated header and small fixes
* Add coexistence with BLE
* Add missing semicolon
The cycle count that micros() is using to report timing is a PER Task value. When micros() or delayMicroseconds() is called from different Tasks, the lastCycleCount value may have no relationship to the current Task specific cycleCount. If the current cycleCount is less than the saved lastCycleCount a rollover condition is assumed. This erroneous conditions results in incorrect delays and reported microseconds. This fix creates thread local storage so that each Task will have accurate microsecond reporting and delays. The reported microseconds are not real time, they are microseconds of the current Task execution.
The ESP8266 version of the mDNS library expected service name and protocol without leading '_' (underscore). The ESP32 version expected service name and protocol with leading '_' (underscore).
This small change makes the ESP32 version compatible with the ESP8266 version and keeps backward compatible with existing code by accepting service name and protocol either with or without leading '_' (underscore).