diff --git a/.codespellrc b/.codespellrc index 690782793..756f7e950 100644 --- a/.codespellrc +++ b/.codespellrc @@ -1,9 +1,8 @@ [codespell] # Source: https://github.com/arduino/tooling-project-assets/blob/main/workflow-templates/assets/spell-check/.codespellrc # In the event of a false positive, add the problematic word, in all lowercase, to a comma-separated list here: -ignore-words-list = ba,licence,ot,dout,als,exten,acount,totaly,pasttime +ignore-words-list = ba,licence,ot,dout,als,exten skip = ./.git,./.licenses,__pycache__,.clang-format,.codespellrc,.editorconfig,.flake8,.prettierignore,.yamllint.yml,.gitignore,boards.txt,platform.txt,programmers.txt builtin = clear,informal,en-GB_to_en-US check-filenames = check-hidden = -write-changes = diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index c92e9ad0d..538bc4be9 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -1,7 +1,9 @@ exclude: | (?x)( ^\.github\/| - ^tests\/performance\/coremark\/.*\.[ch]$ + ^tests\/performance\/coremark\/.*\.[ch]$| + ^tests\/performance\/superpi\/.*\.(cpp|h)$| + LICENSE\.md$ ) default_language_version: @@ -24,11 +26,10 @@ repos: - id: trailing-whitespace args: [--markdown-linebreak-ext=md] - repo: https://github.com/codespell-project/codespell - rev: "v2.2.4" + rev: "v2.3.0" hooks: - id: codespell exclude: ^.*\.(svd|SVD)$ - stages: [manual] - repo: https://github.com/pre-commit/mirrors-clang-format rev: "v18.1.3" hooks: @@ -64,8 +65,6 @@ repos: pass_filenames: false args: [sync] types_or: [markdown, rst] - stages: [manual] - id: vale language_version: "1.21.6" types_or: [markdown, rst] - stages: [manual] diff --git a/.vale.ini b/.vale.ini index d51d3016a..f04df30f8 100644 --- a/.vale.ini +++ b/.vale.ini @@ -23,7 +23,7 @@ StylesPath = .vale/styles # Specify the minimum alert severity that Vale will report. -MinAlertLevel = suggestion # "suggestion", "warning", or "error" +MinAlertLevel = error # "suggestion", "warning", or "error" # Specify vocabulary for special treatment. diff --git a/CODE_OF_CONDUCT.md b/CODE_OF_CONDUCT.md index ab0dbd360..0c90775c7 100644 --- a/CODE_OF_CONDUCT.md +++ b/CODE_OF_CONDUCT.md @@ -5,7 +5,7 @@ We as members, contributors, and leaders pledge to make participation in our community a harassment-free experience for everyone, regardless of age, body size, visible or invisible disability, ethnicity, sex characteristics, gender -identity and expression, level of experience, education, socio-economic status, +identity and expression, level of experience, education, socioeconomic status, nationality, personal appearance, race, religion, or sexual identity and orientation. diff --git a/cores/esp32/Arduino.h b/cores/esp32/Arduino.h index 2f2c53af4..4a92f29d0 100644 --- a/cores/esp32/Arduino.h +++ b/cores/esp32/Arduino.h @@ -179,7 +179,7 @@ void initArduino(void); unsigned long pulseIn(uint8_t pin, uint8_t state, unsigned long timeout); unsigned long pulseInLong(uint8_t pin, uint8_t state, unsigned long timeout); -uint8_t shiftIn(uint8_t dataPin, uint8_t clockPin, uint8_t bitOrder); +uint8_t shiftIn(uint8_t dataPin, uint8_t clockPin, uint8_t bitOrder); // codespell:ignore shiftin void shiftOut(uint8_t dataPin, uint8_t clockPin, uint8_t bitOrder, uint8_t val); #ifdef __cplusplus diff --git a/cores/esp32/HWCDC.cpp b/cores/esp32/HWCDC.cpp index 59709fd4f..170e323a0 100644 --- a/cores/esp32/HWCDC.cpp +++ b/cores/esp32/HWCDC.cpp @@ -443,7 +443,7 @@ size_t HWCDC::write(const uint8_t *buffer, size_t size) { if (connected) { usb_serial_jtag_ll_ena_intr_mask(USB_SERIAL_JTAG_INTR_SERIAL_IN_EMPTY); } - // tracks CDC trasmission progress to avoid hanging if CDC is unplugged while still sending data + // tracks CDC transmission progress to avoid hanging if CDC is unplugged while still sending data size_t last_toSend = to_send; uint32_t tries = tx_timeout_ms; // waits 1ms per sending data attempt, in case CDC is unplugged while (connected && to_send) { @@ -479,7 +479,7 @@ size_t HWCDC::write(const uint8_t *buffer, size_t size) { } } } - // CDC was diconnected while sending data ==> flush the TX buffer keeping the last data + // CDC was disconnected while sending data ==> flush the TX buffer keeping the last data if (to_send && !usb_serial_jtag_ll_txfifo_writable()) { connected = false; flushTXBuffer(buffer + so_far, to_send); diff --git a/cores/esp32/HardwareSerial.h b/cores/esp32/HardwareSerial.h index 2d280b053..23a8823df 100644 --- a/cores/esp32/HardwareSerial.h +++ b/cores/esp32/HardwareSerial.h @@ -228,7 +228,7 @@ public: // onReceive will setup a callback that will be called whenever an UART interruption occurs (UART_INTR_RXFIFO_FULL or UART_INTR_RXFIFO_TOUT) // UART_INTR_RXFIFO_FULL interrupt triggers at UART_FULL_THRESH_DEFAULT bytes received (defined as 120 bytes by default in IDF) - // UART_INTR_RXFIFO_TOUT interrupt triggers at UART_TOUT_THRESH_DEFAULT symbols passed without any reception (defined as 10 symbos by default in IDF) + // UART_INTR_RXFIFO_TOUT interrupt triggers at UART_TOUT_THRESH_DEFAULT symbols passed without any reception (defined as 10 symbols by default in IDF) // onlyOnTimeout parameter will define how onReceive will behave: // Default: true -- The callback will only be called when RX Timeout happens. // Whole stream of bytes will be ready for being read on the callback function at once. diff --git a/cores/esp32/esp32-hal-uart.c b/cores/esp32/esp32-hal-uart.c index c2065e806..2af23e075 100644 --- a/cores/esp32/esp32-hal-uart.c +++ b/cores/esp32/esp32-hal-uart.c @@ -45,7 +45,7 @@ struct uart_struct_t { bool has_peek; // flag to indicate that there is a peek byte pending to be read uint8_t peek_byte; // peek byte that has been read but not consumed QueueHandle_t uart_event_queue; // export it by some uartGetEventQueue() function - // configuration data:: Arduino API tipical data + // configuration data:: Arduino API typical data int8_t _rxPin, _txPin, _ctsPin, _rtsPin; // UART GPIOs uint32_t _baudrate, _config; // UART baudrate and config // UART ESP32 specific data diff --git a/cores/esp32/wiring_shift.c b/cores/esp32/wiring_shift.c index 7148ec303..2198b2e52 100644 --- a/cores/esp32/wiring_shift.c +++ b/cores/esp32/wiring_shift.c @@ -20,7 +20,7 @@ #include "esp32-hal.h" #include "wiring_private.h" -uint8_t shiftIn(uint8_t dataPin, uint8_t clockPin, uint8_t bitOrder) { +uint8_t shiftIn(uint8_t dataPin, uint8_t clockPin, uint8_t bitOrder) { // codespell:ignore shiftin uint8_t value = 0; uint8_t i; diff --git a/docs/en/api/adc.rst b/docs/en/api/adc.rst index 1e2952289..434384f8d 100644 --- a/docs/en/api/adc.rst +++ b/docs/en/api/adc.rst @@ -53,7 +53,7 @@ analogReadResolution ^^^^^^^^^^^^^^^^^^^^ This function is used to set the resolution of ``analogRead`` return value. Default is 12 bits (range from 0 to 4095) -for all chips except ESP32S3 where default is 13 bits (range from 0 to 8191). +for all chips except ESP32-S3 where default is 13 bits (range from 0 to 8191). When different resolution is set, the values read will be shifted to match the given resolution. Range is 1 - 16 .The default value will be used, if this function is not used. @@ -146,7 +146,7 @@ analogSetWidth .. note:: This function is only available for ESP32 chip. This function is used to set the hardware sample bits and read resolution. -Default is 12bit (0 - 4095). +Default is 12 bits (0 - 4095). Range is 9 - 12. .. code-block:: arduino @@ -250,13 +250,13 @@ This function is used to set the attenuation for ADC continuous peripheral. For void analogContinuousSetAtten(adc_attenuation_t attenuation); -* ``attenuation`` sets the attenuation (default is 11db). +* ``attenuation`` sets the attenuation (default is 11 dB). analogContinuousSetWidth ^^^^^^^^^^^^^^^^^^^^^^^^ This function is used to set the hardware resolution bits. -Default value for all chips is 12bit (0 - 4095). +Default value for all chips is 12 bits (0 - 4095). .. note:: This function will take effect only for ESP32 chip, as it allows to set resolution in range 9-12 bits. diff --git a/docs/en/api/dac.rst b/docs/en/api/dac.rst index d66c6878c..96939be96 100644 --- a/docs/en/api/dac.rst +++ b/docs/en/api/dac.rst @@ -33,7 +33,7 @@ This function is used to set the DAC value for a given pin/DAC channel. void dacWrite(uint8_t pin, uint8_t value); * ``pin`` GPIO pin. -* ``value`` to be set. Range is 0 - 255 (equals 0V - 3.3V). +* ``value`` to be set. Range is 0 - 255 (equals 0 V - 3.3 V). dacDisable ********** diff --git a/docs/en/api/espnow.rst b/docs/en/api/espnow.rst index d9f27ee71..585c2e3f5 100644 --- a/docs/en/api/espnow.rst +++ b/docs/en/api/espnow.rst @@ -104,7 +104,7 @@ Create an instance of the `ESP_NOW_Peer` class. * ``mac_addr``: MAC address of the peer device. * ``channel``: Communication channel. -* ``iface``: WiFi interface. +* ``iface``: Wi-Fi interface. * ``lmk``: Optional. Pass the local master key (LMK) if encryption is enabled. add @@ -190,24 +190,24 @@ Set the communication channel of the peer. getInterface ^^^^^^^^^^^^ -Get the WiFi interface of the peer. +Get the Wi-Fi interface of the peer. .. code-block:: cpp wifi_interface_t getInterface() const; -Returns the WiFi interface. +Returns the Wi-Fi interface. setInterface ^^^^^^^^^^^^ -Set the WiFi interface of the peer. +Set the Wi-Fi interface of the peer. .. code-block:: cpp void setInterface(wifi_interface_t iface); -* ``iface``: WiFi interface. +* ``iface``: Wi-Fi interface. isEncrypted ^^^^^^^^^^^ diff --git a/docs/en/api/gpio.rst b/docs/en/api/gpio.rst index e74f90bff..ebf31088f 100644 --- a/docs/en/api/gpio.rst +++ b/docs/en/api/gpio.rst @@ -9,7 +9,7 @@ One of the most used and versatile peripheral in a microcontroller is the GPIO. GPIO stands to General Purpose Input Output, and is responsible to control or read the state of a specific pin in the digital world. For example, this peripheral is widely used to create the LED blinking or to read a simple button. -.. note:: There are some GPIOs with special restrictions, and not all GPIOs are accessible through the developemnt board. For more information about it, see the corresponding board pin layout information. +.. note:: There are some GPIOs with special restrictions, and not all GPIOs are accessible through the development board. For more information about it, see the corresponding board pin layout information. GPIOs Modes *********** diff --git a/docs/en/api/i2c.rst b/docs/en/api/i2c.rst index 3723b5e39..eac04b76a 100644 --- a/docs/en/api/i2c.rst +++ b/docs/en/api/i2c.rst @@ -103,7 +103,7 @@ This function will return the current frequency configuration. setTimeOut ^^^^^^^^^^ -Set the bus timeout given in milliseconds. The default value is 50ms. +Set the bus timeout given in milliseconds. The default value is 50 ms. .. code-block:: arduino diff --git a/docs/en/api/insights.rst b/docs/en/api/insights.rst index 1350c7bce..a5e294f82 100644 --- a/docs/en/api/insights.rst +++ b/docs/en/api/insights.rst @@ -5,7 +5,7 @@ ESP Insights About ----- -ESP Insights is a remote diagnostics solution that allows users to remotely monitor the health of ESP devices in the field. +ESP Insights is a remote diagnostics solution that allows users to remotely monitor the health of Espressif devices in the field. Developers normally prefer debugging issues by physically probing them using gdb or observing the logs. This surely helps debug issues, but there are often cases wherein issues are seen only in specific environments under specific conditions. Even things like casings and placement of the product can affect the behavior. A few examples are @@ -156,8 +156,8 @@ This function will return Insights.metrics.dumpWiFi ************************* -Dumps the wifi metrics and prints them to the console. -This API can be used to collect wifi metrics at any given point in time. +Dumps the Wi-Fi metrics and prints them to the console. +This API can be used to collect Wi-Fi metrics at any given point in time. .. code-block:: arduino @@ -185,8 +185,8 @@ Insights.metrics.setWiFiPeriod ****************************** Reset the periodic interval -By default, wifi metrics are collected every 30 seconds, this function can be used to change the interval. -If the interval is set to 0, wifi metrics collection disabled. +By default, Wi-Fi metrics are collected every 30 seconds, this function can be used to change the interval. +If the interval is set to 0, Wi-Fi metrics collection disabled. .. code-block:: arduino diff --git a/docs/en/api/rainmaker.rst b/docs/en/api/rainmaker.rst index 3c8a7958b..01309f605 100644 --- a/docs/en/api/rainmaker.rst +++ b/docs/en/api/rainmaker.rst @@ -29,7 +29,7 @@ ESP RainMaker Agent API RMaker.initNode *************** -This initializes the ESP RainMaker agent, wifi and creates the node. +This initializes the ESP RainMaker agent, Wi-Fi and creates the node. You can also set the configuration of the node using the following API @@ -54,7 +54,7 @@ It starts the ESP RainMaker agent. **NOTE**: 1. ESP RainMaker agent should be initialized before this call. -2. Once ESP RainMaker agent starts, compulsorily call WiFi.beginProvision() API. +2. Once ESP RainMaker agent starts, compulsorily call ``WiFi.beginProvision()`` API. .. code-block:: arduino diff --git a/docs/en/api/touch.rst b/docs/en/api/touch.rst index 7b9775b2c..d4a905f86 100644 --- a/docs/en/api/touch.rst +++ b/docs/en/api/touch.rst @@ -36,7 +36,7 @@ touchSetCycles ^^^^^^^^^^^^^^ This function is used to set cycles that measurement operation takes. The result from touchRead, threshold and detection accuracy depend on these values. -The defaults are setting touchRead to take ~0.5ms. +The defaults are setting touchRead to take ~0.5 ms. .. code-block:: arduino @@ -112,8 +112,8 @@ the threshold value. Default is lower. void touchInterruptSetThresholdDirection(bool mustbeLower); -TOUCH API specific for ESP32S2 and ESP32S3 chip (TOUCH_V2) -********************************************************** +TOUCH API specific for ESP32-S2 and ESP32-S3 chip (TOUCH_V2) +************************************************************ touchInterruptGetLastStatus ^^^^^^^^^^^^^^^^^^^^^^^^^^^ diff --git a/docs/en/api/usb.rst b/docs/en/api/usb.rst index b7d77b9d5..8e5388a4d 100644 --- a/docs/en/api/usb.rst +++ b/docs/en/api/usb.rst @@ -154,7 +154,7 @@ Get the USB power configuration. uint16_t usbPower(void); -Return the current in mA. The default value is: ``0x500`` (500mA). +Return the current in mA. The default value is: ``0x500`` (500 mA). usbClass ^^^^^^^^ diff --git a/docs/en/api/wifi.rst b/docs/en/api/wifi.rst index 5bdd050ac..16d8a9d56 100644 --- a/docs/en/api/wifi.rst +++ b/docs/en/api/wifi.rst @@ -43,7 +43,7 @@ This is the mode to be used if you want to connect your project to the Internet. API Description --------------- -Here is the description of the WiFi API. +Here is the description of the Wi-Fi API. Common API ---------- @@ -53,7 +53,7 @@ Here are the common APIs that are used for both modes, AP and STA. onEvent (and removeEvent) ************************* -Registers a caller-supplied function to be called when WiFi events +Registers a caller-supplied function to be called when Wi-Fi events occur. Several forms are available. Function pointer callback taking the event ID: @@ -92,7 +92,7 @@ A similar set of functions are available to remove callbacks: In all cases, the subscribing function accepts an optional event type to invoke the callback only for that specific event; with the default -``ARDUINO_EVENT_MAX``, the callback will be invoked for all WiFi events. +``ARDUINO_EVENT_MAX``, the callback will be invoked for all Wi-Fi events. Any callback function is given the event type in a parameter. Some of the possible callback function formats also take an @@ -141,9 +141,9 @@ may be retrieved: .. warning:: - The ``setHostname()`` function must be called BEFORE WiFi is started with + The ``setHostname()`` function must be called BEFORE Wi-Fi is started with ``WiFi.begin()``, ``WiFi.softAP()``, ``WiFi.mode()``, or ``WiFi.run()``. - To change the name, reset WiFi with ``WiFi.mode(WIFI_MODE_NULL)``, + To change the name, reset Wi-Fi with ``WiFi.mode(WIFI_MODE_NULL)``, then proceed with ``WiFi.setHostname(...)`` and restart WiFi from scratch. useStaticBuffers @@ -619,7 +619,7 @@ WiFiScan To perform the Wi-Fi scan for networks, you can use the following functions: -Start scan WiFi networks available. +Start scan Wi-Fi networks available. .. code-block:: arduino @@ -637,7 +637,7 @@ Delete last scan result from RAM. void scanDelete(); -Loads all infos from a scanned wifi in to the ptr parameters. +Loads all infos from a scanned Wi-Fi in to the ptr parameters. .. code-block:: arduino @@ -648,7 +648,7 @@ To see how to use the ``WiFiScan``, take a look at the ``WiFiScan.ino`` or ``WiF Examples -------- -`Complete list of WiFi examples `_. +`Complete list of Wi-Fi examples `_. .. _ap example: diff --git a/docs/en/boards/ESP32-C3-DevKitM-1.rst b/docs/en/boards/ESP32-C3-DevKitM-1.rst index 763e5e5d6..abf7d2cef 100644 --- a/docs/en/boards/ESP32-C3-DevKitM-1.rst +++ b/docs/en/boards/ESP32-C3-DevKitM-1.rst @@ -7,8 +7,8 @@ The ESP32-C3-DevKitM-1 development board is one of Espressif's official boards. Specifications -------------- -- Small­ sized 2.4 GHz Wi­Fi (802.11 b/g/n) and Bluetooth® 5 module -- Built around ESP32­C3 series of SoCs, RISC­V single­core microprocessor +- Small sized 2.4 GHz Wi-Fi (802.11b/g/n) and Bluetooth® 5 module +- Built around ESP32-C3 series of SoCs, RISC-V single-core microprocessor - 4 MB flash in chip package - 15 available GPIOs (module) - Peripherals @@ -30,7 +30,7 @@ Specifications - 2 × 54-bit general-purpose timers - 3 × watchdog timers - 1 × 52-bit system timer -- On­board PCB antenna or external antenna connector +- PCB antenna or external antenna connector Header Block ------------ @@ -40,6 +40,9 @@ Header Block J1 ^^^ + +.. vale off + === ==== ========== =================================== No. Name Type [1]_ Function === ==== ========== =================================== @@ -60,6 +63,8 @@ No. Name Type [1]_ Function 15 GND G Ground === ==== ========== =================================== +.. vale on + J3 ^^^ === ==== ========== ==================================== diff --git a/docs/en/boards/ESP32-DevKitC-1.rst b/docs/en/boards/ESP32-DevKitC-1.rst index f7aa63da6..6a7f1c788 100644 --- a/docs/en/boards/ESP32-DevKitC-1.rst +++ b/docs/en/boards/ESP32-DevKitC-1.rst @@ -7,7 +7,7 @@ The `ESP32-DevKitC-1`_ development board is one of Espressif's official boards. Specifications -------------- -- Wi-Fi 802.11 b/g/n (802.11n up to 150 Mbps) +- Wi-Fi 802.11b/g/n (802.11n up to 150 Mbps) - Bluetooth v4.2 BR/EDR and BLE specification - Built around ESP32 series of SoCs - Integrated 4 MB SPI flash @@ -28,7 +28,7 @@ Specifications - ADC - DAC - Two-Wire Automotive Interface (TWAI®, compatible with ISO11898-1) -- On­board PCB antenna or external antenna connector +- PCB antenna or external antenna connector Header Block ------------ @@ -38,6 +38,9 @@ Header Block J1 ^^^ + +.. vale off + === ==== ===== =================================== No. Name Type Function === ==== ===== =================================== @@ -62,6 +65,8 @@ No. Name Type Function 19 5V0 P 5 V power supply === ==== ===== =================================== +.. vale on + J3 ^^^ === ==== ===== ==================================== @@ -110,7 +115,7 @@ Some of the GPIO's have important features during the booting process. Here is t ==== ========= ===================================================================== ============ ============== GPIO Default Function Pull-up Pull-down ==== ========= ===================================================================== ============ ============== -IO12 Pull-down Voltage of Internal LDO (VDD_SDIO) 1V8 3V3 +IO12 Pull-down Voltage of Internal LDO (VDD_SDIO) 1.8 V 3.3 V IO0 Pull-up Booting Mode SPI Boot Download Boot IO2 Pull-down Booting Mode Don't Care Download Boot IO15 Pull-up Enabling/Disabling Log Print During Booting and Timing of SDIO Slave U0TXD Active U0TXD Silent diff --git a/docs/en/boards/ESP32-S2-Saola-1.rst b/docs/en/boards/ESP32-S2-Saola-1.rst index 99b489024..9c8c83c62 100644 --- a/docs/en/boards/ESP32-S2-Saola-1.rst +++ b/docs/en/boards/ESP32-S2-Saola-1.rst @@ -7,7 +7,7 @@ The `ESP32-S2-Saola-1`_ development board is one of Espressif's official boards. Specifications -------------- -- Wi-Fi 802.11 b/g/n (802.11n up to 150 Mbps) +- Wi-Fi 802.11b/g/n (802.11n up to 150 Mbps) - Built around ESP32-S2 series of SoCs Xtensa® single-core - Integrated 4 MB SPI flash - Integrated 2 MB PSRAM @@ -28,7 +28,7 @@ Specifications - 1 × LCD interface (8-bit serial RGB/8080/6800), implemented using the hardware resources of SPI2 - 1 × LCD interface (8/16/24-bit parallel), implemented using the hardware resources of I2S - 1 × TWAI® controller (compatible with ISO 11898-1) -- On­board PCB antenna or external antenna connector +- PCB antenna or external antenna connector Header Block ------------ @@ -38,6 +38,9 @@ Header Block J2 ^^^ + +.. vale off + === ==== ===== =================================== No. Name Type Function === ==== ===== =================================== @@ -64,6 +67,8 @@ No. Name Type Function 21 GND G Ground === ==== ===== =================================== +.. vale on + J3 ^^^ === ==== ===== ==================================== @@ -114,7 +119,7 @@ Some of the GPIO's have important features during the booting process. Here is t ==== ========= ===================================================================== ============ ============== GPIO Default Function Pull-up Pull-down ==== ========= ===================================================================== ============ ============== -IO45 Pull-down Voltage of Internal LDO (VDD_SDIO) 1V8 3V3 +IO45 Pull-down Voltage of Internal LDO (VDD_SDIO) 1.8 V 3.3 V IO0 Pull-up Booting Mode SPI Boot Download Boot IO46 Pull-down Booting Mode Don't Care Download Boot IO46 Pull-up Enabling/Disabling Log Print During Booting and Timing of SDIO Slave U0TXD Active U0TXD Silent diff --git a/docs/en/boards/generic.rst b/docs/en/boards/generic.rst index 8ca4a79ea..d40db616f 100644 --- a/docs/en/boards/generic.rst +++ b/docs/en/boards/generic.rst @@ -12,6 +12,9 @@ Header Block Header1 ^^^^^^^ + +.. vale off + === ==== ===== =================================== No. Name Type Function === ==== ===== =================================== @@ -21,6 +24,8 @@ No. Name Type Function 4 GND G Ground === ==== ===== =================================== +.. vale on + Pin Layout ---------- diff --git a/docs/en/esp-idf_component.rst b/docs/en/esp-idf_component.rst index 350284e06..f38dc44ec 100644 --- a/docs/en/esp-idf_component.rst +++ b/docs/en/esp-idf_component.rst @@ -178,12 +178,14 @@ If you are writing code that does not require Arduino to compile and you want yo FreeRTOS Tick Rate (Hz) ----------------------- -The Arduino component requires the FreeRTOS tick rate `CONFIG_FREERTOS_HZ` set to 1000Hz in `make menuconfig` -> `Component config` -> `FreeRTOS` -> `Tick rate`. +The Arduino component requires the FreeRTOS tick rate `CONFIG_FREERTOS_HZ` set to 1000 Hz in `make menuconfig` -> `Component config` -> `FreeRTOS` -> `Tick rate`. Compilation Errors ------------------ -As commits are made to esp-idf and submodules, the codebases can develop incompatibilities that cause compilation errors. If you have problems compiling, follow the instructions in `Issue #1142 `_ to roll esp-idf back to a different version. +As commits are made to ESP-IDF and submodules, the codebases can develop incompatibilities that cause compilation errors. +If you have problems compiling, follow the instructions in `Issue #1142 `_ +to roll ESP-IDF back to a different version. Adding arduino library ---------------------- diff --git a/docs/en/getting_started.rst b/docs/en/getting_started.rst index 13fe99300..c4bd54b24 100644 --- a/docs/en/getting_started.rst +++ b/docs/en/getting_started.rst @@ -64,14 +64,14 @@ Supported Operating Systems --------------------------- +-------------------+-------------------+-------------------+ -| |windows-logo| | |linux-logo| | |macos-logo| | +| |windows-logo| | |linux-logo| | |macOS-logo| | +-------------------+-------------------+-------------------+ | Windows | Linux | macOS | +-------------------+-------------------+-------------------+ .. |windows-logo| image:: ../_static/logo_windows.png .. |linux-logo| image:: ../_static/logo_linux.png -.. |macos-logo| image:: ../_static/logo_macos.png +.. |macOS-logo| image:: ../_static/logo_macos.png Supported IDEs --------------------------- diff --git a/docs/en/guides/docs_contributing.rst b/docs/en/guides/docs_contributing.rst index c167c6176..9ac087ab8 100644 --- a/docs/en/guides/docs_contributing.rst +++ b/docs/en/guides/docs_contributing.rst @@ -316,7 +316,7 @@ After that, you can use the following structure to include the image in the docs You can adjust the ``width`` according to the image size. -Be sure the file size does not exceed 600kB. +Be sure the file size does not exceed 600 kB. Support ******* diff --git a/docs/en/guides/tools_menu.rst b/docs/en/guides/tools_menu.rst index e43e2693f..f4ea49299 100644 --- a/docs/en/guides/tools_menu.rst +++ b/docs/en/guides/tools_menu.rst @@ -66,12 +66,12 @@ Flash Frequency Use this function to select the flash memory frequency. The frequency will be dependent on the memory model. -* **40MHz** -* **80MHz** +* **40 MHz** +* **80 MHz** -If you don't know if your memory supports **80Mhz**, you can try to upload the sketch using the **80MHz** option and watch the log output via the serial monitor. +If you don't know if your memory supports **80 MHz**, you can try to upload the sketch using the **80 MHz** option and watch the log output via the serial monitor. -.. note:: In some boards/SoC, the flash frequency is automatically selected according to the flash mode. In some cases (i.e ESP32-S3), the flash frequency is up to 120MHz. +.. note:: In some boards/SoC, the flash frequency is automatically selected according to the flash mode. In some cases (i.e ESP32-S3), the flash frequency is up to 120 MHz. Flash Mode ********** @@ -95,17 +95,17 @@ Depending on the application, this mode can be changed in order to increase the * **OPI** - Octal I/O * Eight SPI pins are used to write and to read from the flash. -If you don't know how the board flash is physically connected or the flash memory model, try the **QIO** at **80MHz** first. +If you don't know how the board flash is physically connected or the flash memory model, try the **QIO** at **80 MHz** first. Flash Size ********** This option is used to select the flash size. The flash size should be selected according to the flash model used on your board. -* **2MB** (16Mb) -* **4MB** (32Mb) -* **8MB** (64Mb) -* **16MB** (128Mb) +* **2 MB** (16 Mb) +* **4 MB** (32 Mb) +* **8 MB** (64 Mb) +* **16 MB** (128 Mb) If you choose the wrong size, you may have issues when selecting the partition scheme. @@ -118,13 +118,13 @@ Some SoC has embedded flash. The ESP32-S3 is a good example. Example: **ESP32-S3FH4R2** -This particular ESP32-S3 variant comes with 4MB Flash and 2MB PSRAM. +This particular ESP32-S3 variant comes with 4 MB Flash and 2 MB PSRAM. **Options for Embedded Flash** -* **Fx4** 4MB Flash (*QIO*) -* **Fx8** 8MB Flash (*QIO*) -* **V** 1.8V SPI +* **Fx4** 4 MB Flash (*QIO*) +* **Fx8** 8 MB Flash (*QIO*) +* **V** 1.8 V SPI The **x** stands for the temperature range specification. @@ -169,13 +169,13 @@ Some SoC has embedded PSRAM. The ESP32-S3 is a good example. Example: **ESP32-S3FH4R2** -This particular ESP32-S3 comes with 4MB Flash and 2MB PSRAM. +This particular ESP32-S3 comes with 4 MB Flash and 2 MB PSRAM. **Options for Embedded Flash and PSRAM** -* **R2** 2MB PSRAM (*QSPI*) -* **R8** 8MB PSRAM (*OPI*) -* **V** 1.8V SPI +* **R2** 2 MB PSRAM (*QSPI*) +* **R8** 8 MB PSRAM (*OPI*) +* **V** 1.8 V SPI The **x** stands for the temperature range specification. diff --git a/docs/en/installing.rst b/docs/en/installing.rst index 491e8f6d8..ec405b355 100644 --- a/docs/en/installing.rst +++ b/docs/en/installing.rst @@ -355,7 +355,7 @@ Where ``~/Documents/Arduino`` represents your sketch book location as per "Ardui - Try ``python3`` instead of ``python`` if you get the error: ``IOError: [Errno socket error] [SSL: TLSV1_ALERT_PROTOCOL_VERSION] tlsv1 alert protocol version (_ssl.c:590)`` when running ``python get.py`` -- If you get the following error when running ``python get.py`` urllib.error.URLError: Applications > Python3.6 folder (or any other python version), and run the following scripts: Install Certificates.command and Update Shell Profile.command +- If you get the following error when running ``python get.py``: ``urllib.error.URLError: Applications > Python3.6 folder (or any other python version)``, and run the following scripts: Install Certificates.command and Update Shell Profile.command - Restart Arduino IDE. diff --git a/docs/en/lib_builder.rst b/docs/en/lib_builder.rst index 84a67d4be..3d28761ab 100644 --- a/docs/en/lib_builder.rst +++ b/docs/en/lib_builder.rst @@ -172,7 +172,7 @@ Set the build type. ex. 'build' to build the project and prepare for uploading t Additional Configuration ^^^^^^^^^^^^^^^^^^^^^^^^ -Specify additional configs to be applied. ex. 'qio 80m' to compile for QIO Flash@80MHz. +Specify additional configs to be applied. ex. ``qio 80m`` to compile for QIO Flash at 80 MHz. .. note:: This command requires the ``-b`` to work properly. diff --git a/docs/en/migration_guides/2.x_to_3.0.rst b/docs/en/migration_guides/2.x_to_3.0.rst index bb6cab294..a7730ceb1 100644 --- a/docs/en/migration_guides/2.x_to_3.0.rst +++ b/docs/en/migration_guides/2.x_to_3.0.rst @@ -217,8 +217,8 @@ Functional changes * ``begin(baud)`` will not change any pins that have been set before this call, through a previous ``begin(baud, rx, tx)`` or ``setPin()``. * If the application only uses RX or TX, ``begin(baud, -1, tx)`` or ``begin(baud, rx)`` will change only the assigned pin and keep the other unchanged. -WiFi -**** +Wi-Fi +***** Functional changes ^^^^^^^^^^^^^^^^^^ diff --git a/docs/en/troubleshooting.rst b/docs/en/troubleshooting.rst index b80b50203..f6a241729 100644 --- a/docs/en/troubleshooting.rst +++ b/docs/en/troubleshooting.rst @@ -62,8 +62,8 @@ Here are some steps that you can try: * Make sure that nothing is connected to pins labeled **TX** and **RX**. Please refer to the pin layout table - some TX and RX pins may not be labeled on the dev board. * In some instances, you must keep **GPIO0** LOW during the uploading process via the serial interface. * Hold down the **“BOOT”** button on your ESP32 board while uploading/flashing. -* Solder a **10uF** capacitor in parallel with **RST** and **GND**. -* If you are using external power connected to pins, it is easy to confuse pins **CMD** (which is usually next to the 5V pin) and **GND**. +* Solder a **10 uF** capacitor in parallel with **RST** and **GND**. +* If you are using external power connected to pins, it is easy to confuse pins **CMD** (which is usually next to the ``5V`` pin) and **GND**. In some development boards, you can try adding the reset delay circuit, as described in the *Power-on Sequence* section on the `ESP32 Hardware Design Guidelines `_ to get into the download mode automatically. @@ -131,7 +131,7 @@ I have uploaded firmware to the ESP32 device, but I don't see any response from Solution ^^^^^^^^ -Newer ESP32 variants have two possible USB connectors- USB and UART. The UART connector will go through a USB->UART adapter, and will typically present itself with the name of that mfr (eg, Silicon Labs CP210x UART Bridge). The USB connector can be used as a USB-CDC bridge and will appear as an Espressif device (Espressif USB JTAG/serial debug unit). On Espressif devkits, both connections are available, and will be labeled. ESP32 can only use UART, so will only have one connector. Other variants with one connector will typically be using USB. Please check in the product [datasheet](https://products.espressif.com) or [hardware guide](https://www.espressif.com/en/products/devkits) to find Espressif products with the appropriate USB connections for your needs. +Newer ESP32 variants have two possible USB connectors - USB and UART. The UART connector will go through a USB->UART adapter, and will typically present itself with the name of that mfr (eg, Silicon Labs CP210x UART Bridge). The USB connector can be used as a USB-CDC bridge and will appear as an Espressif device (Espressif USB JTAG/serial debug unit). On Espressif devkits, both connections are available, and will be labeled. ESP32 can only use UART, so will only have one connector. Other variants with one connector will typically be using USB. Please check in the product [datasheet](https://products.espressif.com) or [hardware guide](https://www.espressif.com/en/products/devkits) to find Espressif products with the appropriate USB connections for your needs. If you use the UART connector, you should disable USB-CDC on boot under the Tools menu (-D ARDUINO_USB_CDC_ON_BOOT=0). If you use the USB connector, you should have that enabled (-D ARDUINO_USB_CDC_ON_BOOT=1) and set USB Mode to "Hardware CDC and JTAG" (-D ARDUINO_USB_MODE=0). USB-CDC may not be able to initialize in time to catch all the data if your device is in a tight reboot loop. This can make it difficult to troubleshoot initialization issues. diff --git a/docs/en/tutorials/partition_table.rst b/docs/en/tutorials/partition_table.rst index b267461bd..fdaee9f9b 100644 --- a/docs/en/tutorials/partition_table.rst +++ b/docs/en/tutorials/partition_table.rst @@ -39,25 +39,25 @@ Where: ``ota`` The ota subtype is used to store the OTA information. This partition is used only when the OTA is used to select the initialization partition, otherwise no need to add it to your custom partition table. - The size of this partition should be a fixed size of 8kB (0x2000 bytes). + The size of this partition should be a fixed size of 8 kB (0x2000 bytes). ``nvs`` - The nvs partition subtype is used to define the partition to store general data, like the WiFi data, device PHY calibration data and any other data to be stored on the non-volatile memory. + The nvs partition subtype is used to define the partition to store general data, like the Wi-Fi data, device PHY calibration data and any other data to be stored on the non-volatile memory. This kind of partition is suitable for small custom configuration data, cloud certificates, etc. Another usage for the NVS is to store sensitive data, since the NVS supports encryption. - It is highly recommended to add at least one nvs partition, labeled with the name nvs, in your custom partition tables with size of at least 12kB (0x3000 bytes). If needed, you can increase the size of the nvs partition. - The recommended size for this partition is from 12kb to 64kb. Although larger NVS partitions can be defined, we recommend using FAT or SPIFFS filesystem for storage of larger amounts of data. + It is highly recommended to add at least one nvs partition, labeled with the name nvs, in your custom partition tables with size of at least 12 kB (0x3000 bytes). If needed, you can increase the size of the nvs partition. + The recommended size for this partition is from 12 kB to 64 kB. Although larger NVS partitions can be defined, we recommend using FAT or SPIFFS filesystem for storage of larger amounts of data. ``coredump`` The coredump partition subtype is used to store the core dump on the flash. The core dump is used to analyze critical errors like crash and panic. This function must be enabled in the project configuration menu and set the data destination to flash. - The recommended size for this partition is 64kB (0x10000). + The recommended size for this partition is 64 kB (0x10000). ``nvs_keys`` The nvs_keys partition subtype is used to store the keys when the NVS encryption is used. - The size for this partition is 4kB (0x1000). + The size for this partition is 4 kB (0x1000). ``fat`` @@ -90,7 +90,7 @@ Where: The offset defines the partition start address. The offset is defined by the sum of the offset and the size of the earlier partition. .. note:: - Offset must be multiple of 4kB (0x1000) and for app partitions it must be aligned by 64kB (0x10000). + Offset must be multiple of 4 kB (0x1000) and for app partitions it must be aligned by 64 kB (0x10000). If left blank, the offset will be automatically calculated based on the end of the previous partition, including any necessary alignment, however, the offset for the first partition must be always set as **0x9000** and for the first application partition **0x10000**. 5. **Size** @@ -129,13 +129,13 @@ Here is an example you can use for a custom partition table: app1, app, ota_1, , 2M, spiffs, data, spiffs, , 8M, -This partition will use about 12MB of the 16MB flash. The offset will be automatically calculated after the first application partition and the units are in K and M. +This partition will use about 12 MB of the 16 MB flash. The offset will be automatically calculated after the first application partition and the units are in K and M. An alternative is to create the new partition table as a new file in the `tools/partitions `_ folder and edit the `boards.txt `_ file to add your custom partition table. Another alternative is to create the new partition table as a new file, and place it in the `variants `_ folder under your boards folder, and edit the `boards.txt `_ file to add your custom partition table, noting that in order for the compiler to find your custom partition table file you must use the '.build.custom_partitions=' option in the boards.txt file, rather than the standard '.build.partitions=' option. The '.build.variant=' option has the name of the folder holding your custom partition table in the variants folder. -An example of the PartitionScheme listing using the ESP32S3 Dev Module as a reference, would be to have the following: +An example of the PartitionScheme listing using the ESP32-S3 Dev Module as a reference, would be to have the following: **Custom Partition - CSV file in /variants/custom_esp32s3/ folder** @@ -150,7 +150,7 @@ An example of the PartitionScheme listing using the ESP32S3 Dev Module as a refe Examples -------- -**2MB no OTA** +**2 MB no OTA** .. code-block:: @@ -158,7 +158,7 @@ Examples nvs, data, nvs, 36K, 20K, factory, app, factory, 64K, 1900K, -**4MB no OTA** +**4 MB no OTA** .. code-block:: @@ -166,7 +166,7 @@ Examples nvs, data, nvs, 36K, 20K, factory, app, factory, 64K, 4000K, -**4MB with OTA** +**4 MB with OTA** .. code-block:: @@ -176,7 +176,7 @@ Examples app0, app, ota_0, 64K, 1900K, app1, app, ota_1, , 1900K, -**8MB no OTA with Storage** +**8 MB no OTA with Storage** .. code-block:: @@ -185,7 +185,7 @@ Examples factory, app, factory, 64K, 2M, spiffs, data, spiffs, , 5M, -**8MB with OTA and Storage** +**8 MB with OTA and Storage** .. code-block:: diff --git a/docs/en/tutorials/preferences.rst b/docs/en/tutorials/preferences.rst index 2239f4b84..9354fa83b 100644 --- a/docs/en/tutorials/preferences.rst +++ b/docs/en/tutorials/preferences.rst @@ -386,7 +386,7 @@ To send to the serial monitor the number of available entries the following coul The number of available entries in the key table changes depending on the number of keys in the namespace and also the dynamic size of certain types of data stored in the namespace. Details are in the `Preferences API Reference`_. -Do note that the number of entries in the key table does not guarantee that there is room in the opened NVS namespace for all the data to be stored in that namespace. Refer to the espressif `Non-volatile storage library`_ documentation for full details. +Do note that the number of entries in the key table does not guarantee that there is room in the opened NVS namespace for all the data to be stored in that namespace. Refer to the Espressif `Non-volatile storage library`_ documentation for full details. Determining the Type of a key-value Pair @@ -565,7 +565,7 @@ If you need to access a different namespace, close the one before opening the ot currentNamespace.end(); // closes 'myNamespace' - currentNamespace.begin("myOtherNamespace", false); // opens a different Preferences namesspace. + currentNamespace.begin("myOtherNamespace", false); // opens a different Preferences namespace. // do other stuff... currentNamespace.end(); // closes 'myOtherNamespace' @@ -644,7 +644,7 @@ Returning to the example above: .. -will assign to the variable ``dessert`` the String ``gravel`` if an error occurred, or the value stored against the key ``favourites`` if not. +will assign to the variable ``dessert`` the String ``gravel`` if an error occurred, or the value stored against the key ``favorites`` if not. If we predetermine a default value that is outside all legitimate values, we now have a way to test if an error actually occurred. diff --git a/libraries/ArduinoOTA/library.properties b/libraries/ArduinoOTA/library.properties index f4a674e7e..a8336230f 100644 --- a/libraries/ArduinoOTA/library.properties +++ b/libraries/ArduinoOTA/library.properties @@ -3,7 +3,7 @@ version=3.0.4 author=Ivan Grokhotkov and Hristo Gochkov maintainer=Hristo Gochkov sentence=Enables Over The Air upgrades, via wifi and espota.py UDP request/TCP download. -paragraph=With this library you can enable your sketch to be upgraded over network. Includes mdns anounces to get discovered by the arduino IDE. +paragraph=With this library you can enable your sketch to be upgraded over network. Includes mdns announces to get discovered by the arduino IDE. category=Communication url= architectures=esp32 diff --git a/libraries/BLE/README.md b/libraries/BLE/README.md index 04c6c0bd9..eb70ee9ff 100644 --- a/libraries/BLE/README.md +++ b/libraries/BLE/README.md @@ -1,5 +1,5 @@ # ESP32 BLE for Arduino -The Arduino IDE provides an excellent library package manager where versions of libraries can be downloaded and installed. This Github project provides the repository for the ESP32 BLE support for Arduino. +The Arduino IDE provides an excellent library package manager where versions of libraries can be downloaded and installed. This Github project provides the repository for the ESP32 BLE support for Arduino. The original source of the project, **which is not maintained anymore**, can be found here: https://github.com/nkolban/esp32-snippets diff --git a/libraries/BLE/examples/BLE5_extended_scan/BLE5_extended_scan.ino b/libraries/BLE/examples/BLE5_extended_scan/BLE5_extended_scan.ino index f49794b6b..42daff868 100644 --- a/libraries/BLE/examples/BLE5_extended_scan/BLE5_extended_scan.ino +++ b/libraries/BLE/examples/BLE5_extended_scan/BLE5_extended_scan.ino @@ -25,7 +25,7 @@ class MyBLEExtAdvertisingCallbacks : public BLEExtAdvertisingCallbacks { // here we can receive regular advertising data from BLE4.x devices Serial.println("BLE4.2"); } else { - // here we will get extended advertising data that are advertised over data channel by BLE5 divices + // here we will get extended advertising data that are advertised over data channel by BLE5 devices Serial.printf("Ext advertise: data_le: %d, data_status: %d \n", report.adv_data_len, report.data_status); } } diff --git a/libraries/BLE/src/BLERemoteCharacteristic.cpp b/libraries/BLE/src/BLERemoteCharacteristic.cpp index cd1078796..60d5108c1 100644 --- a/libraries/BLE/src/BLERemoteCharacteristic.cpp +++ b/libraries/BLE/src/BLERemoteCharacteristic.cpp @@ -177,7 +177,7 @@ void BLERemoteCharacteristic::gattClientEventHandler(esp_gattc_cb_event_t event, } // At this point, we have determined that the event is for us, so now we save the value - // and unlock the semaphore to ensure that the requestor of the data can continue. + // and unlock the semaphore to ensure that the requester of the data can continue. if (evtParam->read.status == ESP_GATT_OK) { m_value = String((char *)evtParam->read.value, evtParam->read.value_len); if (m_rawData != nullptr) { diff --git a/libraries/BLE/src/BLERemoteDescriptor.cpp b/libraries/BLE/src/BLERemoteDescriptor.cpp index d57f11eb8..b6d654cf9 100644 --- a/libraries/BLE/src/BLERemoteDescriptor.cpp +++ b/libraries/BLE/src/BLERemoteDescriptor.cpp @@ -69,7 +69,7 @@ void BLERemoteDescriptor::gattClientEventHandler(esp_gattc_cb_event_t event, esp } else { m_value = ""; } - // Unlock the semaphore to ensure that the requestor of the data can continue. + // Unlock the semaphore to ensure that the requester of the data can continue. m_semaphoreReadDescrEvt.give(); break; diff --git a/libraries/BluetoothSerial/examples/DiscoverConnect/DiscoverConnect.ino b/libraries/BluetoothSerial/examples/DiscoverConnect/DiscoverConnect.ino index e9ec101b9..bd50c6b1d 100644 --- a/libraries/BluetoothSerial/examples/DiscoverConnect/DiscoverConnect.ino +++ b/libraries/BluetoothSerial/examples/DiscoverConnect/DiscoverConnect.ino @@ -80,7 +80,7 @@ void setup() { Serial.println("Didn't find any devices"); } } else { - Serial.println("Error on discoverAsync f.e. not workin after a \"connect\""); + Serial.println("Error on discoverAsync f.e. not working after a \"connect\""); } } diff --git a/libraries/EEPROM/README.md b/libraries/EEPROM/README.md index 896ca5b30..577e2ea4e 100644 --- a/libraries/EEPROM/README.md +++ b/libraries/EEPROM/README.md @@ -1,4 +1,4 @@ ## EEPROM -EEPROM is deprecated. For new applications on ESP32, use Preferences. EEPROM is provided for backwards compatibility with existing Arduino applications. -EEPROM is implemented using a single blob within NVS, so it is a container within a container. As such, it is not going to be a high performance storage method. Preferences will directly use nvs, and store each entry as a single object therein. +EEPROM is deprecated. For new applications on ESP32, use Preferences. EEPROM is provided for backwards compatibility with existing Arduino applications. +EEPROM is implemented using a single blob within NVS, so it is a container within a container. As such, it is not going to be a high performance storage method. Preferences will directly use nvs, and store each entry as a single object therein. diff --git a/libraries/ESP32/examples/Camera/CameraWebServer/app_httpd.cpp b/libraries/ESP32/examples/Camera/CameraWebServer/app_httpd.cpp index 9f78de594..af3d38ad5 100644 --- a/libraries/ESP32/examples/Camera/CameraWebServer/app_httpd.cpp +++ b/libraries/ESP32/examples/Camera/CameraWebServer/app_httpd.cpp @@ -1101,7 +1101,7 @@ static esp_err_t win_handler(httpd_req_t *req) { int offsetX = parse_get_var(buf, "offx", 0); int offsetY = parse_get_var(buf, "offy", 0); int totalX = parse_get_var(buf, "tx", 0); - int totalY = parse_get_var(buf, "ty", 0); + int totalY = parse_get_var(buf, "ty", 0); // codespell:ignore totaly int outputX = parse_get_var(buf, "ox", 0); int outputY = parse_get_var(buf, "oy", 0); bool scale = parse_get_var(buf, "scale", 0) == 1; @@ -1110,10 +1110,10 @@ static esp_err_t win_handler(httpd_req_t *req) { log_i( "Set Window: Start: %d %d, End: %d %d, Offset: %d %d, Total: %d %d, Output: %d %d, Scale: %u, Binning: %u", startX, startY, endX, endY, offsetX, offsetY, - totalX, totalY, outputX, outputY, scale, binning + totalX, totalY, outputX, outputY, scale, binning // codespell:ignore totaly ); sensor_t *s = esp_camera_sensor_get(); - int res = s->set_res_raw(s, startX, startY, endX, endY, offsetX, offsetY, totalX, totalY, outputX, outputY, scale, binning); + int res = s->set_res_raw(s, startX, startY, endX, endY, offsetX, offsetY, totalX, totalY, outputX, outputY, scale, binning); // codespell:ignore totaly if (res) { return httpd_resp_send_500(req); } diff --git a/libraries/ESP32/examples/DeepSleep/ExternalWakeUp/ExternalWakeUp.ino b/libraries/ESP32/examples/DeepSleep/ExternalWakeUp/ExternalWakeUp.ino index dc247e387..aed57c490 100644 --- a/libraries/ESP32/examples/DeepSleep/ExternalWakeUp/ExternalWakeUp.ino +++ b/libraries/ESP32/examples/DeepSleep/ExternalWakeUp/ExternalWakeUp.ino @@ -81,7 +81,7 @@ void setup() { /* If there are no external pull-up/downs, tie wakeup pins to inactive level with internal pull-up/downs via RTC IO during deepsleep. However, RTC IO relies on the RTC_PERIPH power domain. Keeping this power domain on will - increase some power comsumption. However, if we turn off the RTC_PERIPH domain or if certain chips lack the RTC_PERIPH + increase some power consumption. However, if we turn off the RTC_PERIPH domain or if certain chips lack the RTC_PERIPH domain, we will use the HOLD feature to maintain the pull-up and pull-down on the pins during sleep. */ rtc_gpio_pulldown_en(WAKEUP_GPIO); // GPIO33 is tie to GND in order to wake up in HIGH diff --git a/libraries/ESP32/examples/FreeRTOS/BasicMultiThreading/README.md b/libraries/ESP32/examples/FreeRTOS/BasicMultiThreading/README.md index c7112e8b4..7bd44855a 100644 --- a/libraries/ESP32/examples/FreeRTOS/BasicMultiThreading/README.md +++ b/libraries/ESP32/examples/FreeRTOS/BasicMultiThreading/README.md @@ -32,7 +32,7 @@ It is also worth mentioning that two or more tasks running the same function wil ``` - **pxTaskCode** is the name of your function which will run as a task - **pcName** is a string of human-readable descriptions for your task - - **usStackDepth** is the number of words (word = 4B) available to the task. If you see an error similar to this "Debug exception reason: Stack canary watchpoint triggered (Task Blink)" you should increase it + - **usStackDepth** is the number of words (word = 4 B) available to the task. If you see an error similar to this "Debug exception reason: Stack canary watchpoint triggered (Task Blink)" you should increase it - **pvParameters** is a parameter that will be passed to the task function - it must be explicitly converted to (void*) and in your function explicitly converted back to the intended data type. - **uxPriority** is a number from 0 to configMAX_PRIORITIES which determines how the FreeRTOS will allow the tasks to run. 0 is the lowest priority. - **pxCreatedTask** task handle is a pointer to the task which allows you to manipulate the task - delete it, suspend and resume. diff --git a/libraries/ESP32/examples/Serial/OnReceiveError_BREAK_Demo/OnReceiveError_BREAK_Demo.ino b/libraries/ESP32/examples/Serial/OnReceiveError_BREAK_Demo/OnReceiveError_BREAK_Demo.ino index caf0cde50..fb7af04c5 100644 --- a/libraries/ESP32/examples/Serial/OnReceiveError_BREAK_Demo/OnReceiveError_BREAK_Demo.ino +++ b/libraries/ESP32/examples/Serial/OnReceiveError_BREAK_Demo/OnReceiveError_BREAK_Demo.ino @@ -35,7 +35,7 @@ before reading data, if necessary. In long UART transmissions, some data will be received based on FIFO Full parameter, and whenever - an error ocurs, it will raise the UART error interrupt. + an error occurs, it will raise the UART error interrupt. This sketch produces BREAK UART error in the beginning of a transmission and also at the end of a transmission. It will be possible to understand the order of the events in the logs. diff --git a/libraries/ESP32/examples/Serial/RxFIFOFull_Demo/RxFIFOFull_Demo.ino b/libraries/ESP32/examples/Serial/RxFIFOFull_Demo/RxFIFOFull_Demo.ino index e18dbbe5a..7722ef6f4 100644 --- a/libraries/ESP32/examples/Serial/RxFIFOFull_Demo/RxFIFOFull_Demo.ino +++ b/libraries/ESP32/examples/Serial/RxFIFOFull_Demo/RxFIFOFull_Demo.ino @@ -91,9 +91,9 @@ void testAndReport(uint8_t fifoFull) { } } - uint32_t pastTime = millis() - now; + uint32_t pastTime = millis() - now; // codespell:ignore pasttime Serial.printf("\nIt has sent %d bytes from Serial1 TX to Serial1 RX\n", sentBytes); - Serial.printf("It took %lu milliseconds to read %d bytes\n", pastTime, bytesReceived); + Serial.printf("It took %lu milliseconds to read %d bytes\n", pastTime, bytesReceived); // codespell:ignore pasttime Serial.printf("Per execution Serial.read() number of bytes data and time information:\n"); for (i = 0; i < DATA_SIZE; i++) { Serial.printf("#%03d - Received %03lu bytes after %lu ms.\n", i, bytesJustReceived[i], i > 0 ? timeStamp[i] - timeStamp[i - 1] : timeStamp[i] - now); diff --git a/libraries/ESP32/examples/Serial/RxTimeout_Demo/RxTimeout_Demo.ino b/libraries/ESP32/examples/Serial/RxTimeout_Demo/RxTimeout_Demo.ino index acddd73a4..64d15d3d9 100644 --- a/libraries/ESP32/examples/Serial/RxTimeout_Demo/RxTimeout_Demo.ino +++ b/libraries/ESP32/examples/Serial/RxTimeout_Demo/RxTimeout_Demo.ino @@ -85,9 +85,9 @@ void testAndReport(uint8_t rxTimeout) { } } - uint32_t pastTime = millis() - now; + uint32_t pastTime = millis() - now; // codespell:ignore pasttime Serial.printf("\nIt has sent %d bytes from Serial1 TX to Serial1 RX\n", sentBytes); - Serial.printf("It took %lu milliseconds to read %d bytes\n", pastTime, bytesReceived); + Serial.printf("It took %lu milliseconds to read %d bytes\n", pastTime, bytesReceived); // codespell:ignore pasttime Serial.print("Received data: ["); Serial.write(dataReceived, DATA_SIZE); Serial.println("]"); diff --git a/libraries/ESP32/examples/Touch/TouchButton/TouchButton.ino b/libraries/ESP32/examples/Touch/TouchButton/TouchButton.ino index 9acfdddb3..43f3bc365 100644 --- a/libraries/ESP32/examples/Touch/TouchButton/TouchButton.ino +++ b/libraries/ESP32/examples/Touch/TouchButton/TouchButton.ino @@ -1,7 +1,7 @@ /* This is an example how to use Touch Intrrerupts -The sketh will tell when it is touched and then relesased as like a push-button +The sketch will tell when it is touched and then released as like a push-button This method based on touchInterruptSetThresholdDirection() is only available for ESP32 */ diff --git a/libraries/ESP32/examples/Touch/TouchButtonV2/TouchButtonV2.ino b/libraries/ESP32/examples/Touch/TouchButtonV2/TouchButtonV2.ino index 5dc9bfeed..df9b3f411 100644 --- a/libraries/ESP32/examples/Touch/TouchButtonV2/TouchButtonV2.ino +++ b/libraries/ESP32/examples/Touch/TouchButtonV2/TouchButtonV2.ino @@ -1,7 +1,7 @@ /* This is an example how to use Touch Intrrerupts -The sketh will tell when it is touched and then relesased as like a push-button +The sketch will tell when it is touched and then released as like a push-button This method based on touchInterruptGetLastStatus() is only available for ESP32 S2 and S3 */ diff --git a/libraries/ESP32/examples/Zigbee/Zigbee_Light_Bulb/README.md b/libraries/ESP32/examples/Zigbee/Zigbee_Light_Bulb/README.md index d3441c352..807b8a42a 100644 --- a/libraries/ESP32/examples/Zigbee/Zigbee_Light_Bulb/README.md +++ b/libraries/ESP32/examples/Zigbee/Zigbee_Light_Bulb/README.md @@ -39,7 +39,7 @@ You can do the following: * In the Arduino IDE go to the Tools menu and set `Erase All Flash Before Sketch Upload` to `Enabled` * In the sketch uncomment function `esp_zb_nvram_erase_at_start(true);` located in `esp_zb_task` function. -By default, the coordinator network is open for 180s after rebooting or flashing new firmware. After that, the network is closed for adding new devices. +By default, the coordinator network is open for 180 s after rebooting or flashing new firmware. After that, the network is closed for adding new devices. You can change it by editing `esp_zb_bdb_open_network(180);` in `esp_zb_app_signal_handler` function. ***Important: Make sure you are using a good quality USB cable and that you have a reliable power source*** diff --git a/libraries/ESP32/examples/Zigbee/Zigbee_Light_Bulb/Zigbee_Light_Bulb.ino b/libraries/ESP32/examples/Zigbee/Zigbee_Light_Bulb/Zigbee_Light_Bulb.ino index b98b67cb4..c7e58125c 100644 --- a/libraries/ESP32/examples/Zigbee/Zigbee_Light_Bulb/Zigbee_Light_Bulb.ino +++ b/libraries/ESP32/examples/Zigbee/Zigbee_Light_Bulb/Zigbee_Light_Bulb.ino @@ -127,7 +127,7 @@ static void esp_zb_task(void *pvParameters) { esp_zb_set_primary_network_channel_set(ESP_ZB_PRIMARY_CHANNEL_MASK); //Erase NVRAM before creating connection to new Coordinator - esp_zb_nvram_erase_at_start(true); //Comment out this line to erase NVRAM data if you are conneting to new Coordinator + esp_zb_nvram_erase_at_start(true); //Comment out this line to erase NVRAM data if you are connecting to new Coordinator ESP_ERROR_CHECK(esp_zb_start(false)); esp_zb_main_loop_iteration(); diff --git a/libraries/ESP32/examples/Zigbee/Zigbee_Light_Switch/README.md b/libraries/ESP32/examples/Zigbee/Zigbee_Light_Switch/README.md index 81f9354a6..efa7d45cb 100644 --- a/libraries/ESP32/examples/Zigbee/Zigbee_Light_Switch/README.md +++ b/libraries/ESP32/examples/Zigbee/Zigbee_Light_Switch/README.md @@ -39,7 +39,7 @@ You can do the following: * In the Arduino IDE go to the Tools menu and set `Erase All Flash Before Sketch Upload` to `Enabled`. * In the `Zigbee_Light_Bulb` example sketch uncomment function `esp_zb_nvram_erase_at_start(true);` located in `esp_zb_task` function. -By default, the coordinator network is open for 180s after rebooting or flashing new firmware. After that, the network is closed for adding new devices. +By default, the coordinator network is open for 180 s after rebooting or flashing new firmware. After that, the network is closed for adding new devices. You can change it by editing `esp_zb_bdb_open_network(180);` in `esp_zb_app_signal_handler` function. ***Important: Make sure you are using a good quality USB cable and that you have a reliable power source*** diff --git a/libraries/ESP32/examples/Zigbee/Zigbee_Light_Switch/Zigbee_Light_Switch.ino b/libraries/ESP32/examples/Zigbee/Zigbee_Light_Switch/Zigbee_Light_Switch.ino index 6c19b145f..83ec1d7aa 100644 --- a/libraries/ESP32/examples/Zigbee/Zigbee_Light_Switch/Zigbee_Light_Switch.ino +++ b/libraries/ESP32/examples/Zigbee/Zigbee_Light_Switch/Zigbee_Light_Switch.ino @@ -159,7 +159,7 @@ void esp_zb_app_signal_handler(esp_zb_app_signal_t *signal_struct) { esp_zb_bdb_start_top_level_commissioning(ESP_ZB_BDB_MODE_NETWORK_FORMATION); } else { log_i("Device rebooted"); - log_i("Openning network for joining for %d seconds", 180); + log_i("Opening network for joining for %d seconds", 180); esp_zb_bdb_open_network(180); } } else { diff --git a/libraries/ESP32/examples/Zigbee/Zigbee_Temperature_Sensor/README.md b/libraries/ESP32/examples/Zigbee/Zigbee_Temperature_Sensor/README.md index c7c248997..f8177082a 100644 --- a/libraries/ESP32/examples/Zigbee/Zigbee_Temperature_Sensor/README.md +++ b/libraries/ESP32/examples/Zigbee/Zigbee_Temperature_Sensor/README.md @@ -49,7 +49,7 @@ You can do the following: * In the Arduino IDE go to the Tools menu and set `Erase All Flash Before Sketch Upload` to `Enabled` * In the sketch uncomment function `esp_zb_nvram_erase_at_start(true);` located in `esp_zb_task` function. -By default, the coordinator network is open for 180s after rebooting or flashing new firmware. After that, the network is closed for adding new devices. +By default, the coordinator network is open for 180 s after rebooting or flashing new firmware. After that, the network is closed for adding new devices. You can change it by editing `esp_zb_bdb_open_network(180);` in `esp_zb_app_signal_handler` function. ***Important: Make sure you are using a good quality USB cable and that you have a reliable power source*** diff --git a/libraries/ESP32/examples/Zigbee/Zigbee_Temperature_Sensor/Zigbee_Temperature_Sensor.ino b/libraries/ESP32/examples/Zigbee/Zigbee_Temperature_Sensor/Zigbee_Temperature_Sensor.ino index 6a7e00e50..a510c9680 100644 --- a/libraries/ESP32/examples/Zigbee/Zigbee_Temperature_Sensor/Zigbee_Temperature_Sensor.ino +++ b/libraries/ESP32/examples/Zigbee/Zigbee_Temperature_Sensor/Zigbee_Temperature_Sensor.ino @@ -255,7 +255,7 @@ static void esp_zb_task(void *pvParameters) { esp_zb_set_primary_network_channel_set(ESP_ZB_PRIMARY_CHANNEL_MASK); //Erase NVRAM before creating connection to new Coordinator - //esp_zb_nvram_erase_at_start(true); //Comment out this line to erase NVRAM data if you are conneting to new Coordinator + //esp_zb_nvram_erase_at_start(true); //Comment out this line to erase NVRAM data if you are connecting to new Coordinator ESP_ERROR_CHECK(esp_zb_start(false)); esp_zb_main_loop_iteration(); diff --git a/libraries/ESP32/examples/Zigbee/Zigbee_Thermostat/README.md b/libraries/ESP32/examples/Zigbee/Zigbee_Thermostat/README.md index dc2a70782..5c88feda3 100644 --- a/libraries/ESP32/examples/Zigbee/Zigbee_Thermostat/README.md +++ b/libraries/ESP32/examples/Zigbee/Zigbee_Thermostat/README.md @@ -48,7 +48,7 @@ You can do the following: * In the Arduino IDE go to the Tools menu and set `Erase All Flash Before Sketch Upload` to `Enabled`. * In the `Zigbee_Temperature_Sensor` example sketch uncomment function `esp_zb_nvram_erase_at_start(true);` located in `esp_zb_task` function. -By default, the coordinator network is open for 180s after rebooting or flashing new firmware. After that, the network is closed for adding new devices. +By default, the coordinator network is open for 180 s after rebooting or flashing new firmware. After that, the network is closed for adding new devices. You can change it by editing `esp_zb_bdb_open_network(180);` in `esp_zb_app_signal_handler` function. ***Important: Make sure you are using a good quality USB cable and that you have a reliable power source*** diff --git a/libraries/ESP32/examples/Zigbee/Zigbee_Thermostat/Zigbee_Thermostat.ino b/libraries/ESP32/examples/Zigbee/Zigbee_Thermostat/Zigbee_Thermostat.ino index 1ace7d866..f229b9f10 100644 --- a/libraries/ESP32/examples/Zigbee/Zigbee_Thermostat/Zigbee_Thermostat.ino +++ b/libraries/ESP32/examples/Zigbee/Zigbee_Thermostat/Zigbee_Thermostat.ino @@ -279,7 +279,7 @@ void esp_zb_app_signal_handler(esp_zb_app_signal_t *signal_struct) { esp_zb_bdb_start_top_level_commissioning(ESP_ZB_BDB_MODE_NETWORK_FORMATION); } else { log_i("Device rebooted"); - log_i("Openning network for joining for %d seconds", 180); + log_i("Opening network for joining for %d seconds", 180); esp_zb_bdb_open_network(180); } } else { diff --git a/libraries/Insights/examples/DiagnosticsSmokeTest/README.md b/libraries/Insights/examples/DiagnosticsSmokeTest/README.md index 3938a9d1f..268e0704b 100644 --- a/libraries/Insights/examples/DiagnosticsSmokeTest/README.md +++ b/libraries/Insights/examples/DiagnosticsSmokeTest/README.md @@ -23,8 +23,8 @@ Copy Auth Key to the example const char insights_auth_key[] = ""; ``` -### Enter WiFi Credentials -Inside the example sketch, enter your WiFi credentials in `WIFI_SSID` and `WIFI_PASSPHRASE` macros. +### Enter Wi-Fi Credentials +Inside the example sketch, enter your Wi-Fi credentials in `WIFI_SSID` and `WIFI_PASSPHRASE` macros. ### Setup * Build and flash the sketch and monitor the console diff --git a/libraries/Insights/examples/MinimalDiagnostics/README.md b/libraries/Insights/examples/MinimalDiagnostics/README.md index 35faa8d17..65a631d12 100644 --- a/libraries/Insights/examples/MinimalDiagnostics/README.md +++ b/libraries/Insights/examples/MinimalDiagnostics/README.md @@ -5,9 +5,9 @@ ## What to expect in this example? - This example demonstrates the use of ESP Insights framework in minimal way -- Device will try to connect with the configured WiFi network +- Device will try to connect with the configured Wi-Fi network - ESP Insights is enabled in this example, so any error/warning logs, crashes will be reported to cloud -- This example collects heap and wifi metrics every 10 minutes and network variables are collected when they change +- This example collects heap and Wi-Fi metrics every 10 minutes and network variables are collected when they change ## Try out the example @@ -19,8 +19,8 @@ Copy Auth Key to the example const char insights_auth_key[] = ""; ``` -### Enter WiFi Credentials -Inside the example sketch, enter your WiFi credentials in `WIFI_SSID` and `WIFI_PASSPHRASE` macros. +### Enter Wi-Fi Credentials +Inside the example sketch, enter your Wi-Fi credentials in `WIFI_SSID` and `WIFI_PASSPHRASE` macros. ### Get the Node ID - Start the Serial monitor diff --git a/libraries/LittleFS/examples/LITTLEFS_PlatformIO/README.md b/libraries/LittleFS/examples/LITTLEFS_PlatformIO/README.md index e3cecc6d2..beed34e92 100644 --- a/libraries/LittleFS/examples/LITTLEFS_PlatformIO/README.md +++ b/libraries/LittleFS/examples/LITTLEFS_PlatformIO/README.md @@ -65,4 +65,4 @@ Deleting file: /test.txt - file deleted Test complete ``` -- If you have a module with more than 4MB flash, you can uncomment **partitions_custom.csv** in **platformio.ini** and modify the csv file accordingly +- If you have a module with more than 4 MB flash, you can uncomment **partitions_custom.csv** in **platformio.ini** and modify the csv file accordingly diff --git a/libraries/NetBIOS/src/NetBIOS.cpp b/libraries/NetBIOS/src/NetBIOS.cpp index ca2c29a4c..647f09408 100644 --- a/libraries/NetBIOS/src/NetBIOS.cpp +++ b/libraries/NetBIOS/src/NetBIOS.cpp @@ -12,7 +12,7 @@ typedef struct { uint8_t flags1; uint8_t flags2; uint16_t qcount; - uint16_t acount; + uint16_t acount; // codespell:ignore acount uint16_t nscount; uint16_t adcount; uint8_t name_len; @@ -26,7 +26,7 @@ typedef struct { uint8_t flags1; uint8_t flags2; uint16_t qcount; - uint16_t acount; + uint16_t acount; // codespell:ignore acount uint16_t nscount; uint16_t adcount; uint8_t name_len; @@ -84,7 +84,7 @@ void NetBIOS::_onPacket(AsyncUDPPacket &packet) { nbnsa.flags1 = 0x85; nbnsa.flags2 = 0; append_16((void *)&nbnsa.qcount, 0); - append_16((void *)&nbnsa.acount, 1); + append_16((void *)&nbnsa.acount, 1); // codespell:ignore acount append_16((void *)&nbnsa.nscount, 0); append_16((void *)&nbnsa.adcount, 0); nbnsa.name_len = question->name_len; diff --git a/libraries/NetworkClientSecure/README.md b/libraries/NetworkClientSecure/README.md index 0710d3f5b..d02815873 100644 --- a/libraries/NetworkClientSecure/README.md +++ b/libraries/NetworkClientSecure/README.md @@ -113,14 +113,14 @@ Examples #### NetworkClientInsecure Demonstrates usage of insecure connection using `NetworkClientSecure::setInsecure()` #### NetworkClientPSK -Wifi secure connection example for ESP32 using a pre-shared key (PSK) +Wi-Fi secure connection example for ESP32 using a pre-shared key (PSK) This is useful with MQTT servers instead of using a self-signed cert, tested with mosquitto. Running on TLS 1.2 using mbedTLS #### NetworkClientSecure -Wifi secure connection example for ESP32 +Wi-Fi secure connection example for ESP32 Running on TLS 1.2 using mbedTLS #### NetworkClientSecureEnterprise -This example demonstrates a secure connection to a WiFi network using WPA/WPA2 Enterprise (for example eduroam), +This example demonstrates a secure connection to a Wi-Fi network using WPA/WPA2 Enterprise (for example eduroam), and establishing a secure HTTPS connection with an external server (for example arduino.php5.sk) using the defined anonymous identity, user identity, and password. .. note:: diff --git a/libraries/NetworkClientSecure/examples/WiFiClientTrustOnFirstUse/WiFiClientTrustOnFirstUse.ino b/libraries/NetworkClientSecure/examples/WiFiClientTrustOnFirstUse/WiFiClientTrustOnFirstUse.ino index 5b683814d..afc588af7 100644 --- a/libraries/NetworkClientSecure/examples/WiFiClientTrustOnFirstUse/WiFiClientTrustOnFirstUse.ino +++ b/libraries/NetworkClientSecure/examples/WiFiClientTrustOnFirstUse/WiFiClientTrustOnFirstUse.ino @@ -22,7 +22,7 @@ https://en.wikipedia.org/wiki/Trust_on_first_use). In this scheme; we start the very first time without any security checks - but once we have our first connection; we store the public crytpographic + but once we have our first connection; we store the public cryptographic details (or a proxy, such as a sha256 of this). And then we use this for any subsequent connections. diff --git a/libraries/OpenThread/examples/COAP/coap_lamp/coap_lamp.ino b/libraries/OpenThread/examples/COAP/coap_lamp/coap_lamp.ino index 0e6504757..9b53373f7 100644 --- a/libraries/OpenThread/examples/COAP/coap_lamp/coap_lamp.ino +++ b/libraries/OpenThread/examples/COAP/coap_lamp/coap_lamp.ino @@ -90,7 +90,7 @@ bool otDeviceSetup(const char **otSetupCmds, uint8_t nCmds1, const char **otCoap } void setupNode() { - // tries to set the Thread Network node and only returns when succeded + // tries to set the Thread Network node and only returns when succeeded bool startedCorrectly = false; while (!startedCorrectly) { startedCorrectly |= diff --git a/libraries/OpenThread/examples/COAP/coap_switch/coap_switch.ino b/libraries/OpenThread/examples/COAP/coap_switch/coap_switch.ino index 37e5baa67..1d4293038 100644 --- a/libraries/OpenThread/examples/COAP/coap_switch/coap_switch.ino +++ b/libraries/OpenThread/examples/COAP/coap_switch/coap_switch.ino @@ -79,12 +79,12 @@ bool otDeviceSetup( } Serial.println("OpenThread setup done. Node is ready."); // all fine! LED goes and stays Blue - rgbLedWrite(RGB_BUILTIN, 0, 0, 64); // BLUE ... Swtich is ready! + rgbLedWrite(RGB_BUILTIN, 0, 0, 64); // BLUE ... Switch is ready! return true; } void setupNode() { - // tries to set the Thread Network node and only returns when succeded + // tries to set the Thread Network node and only returns when succeeded bool startedCorrectly = false; while (!startedCorrectly) { startedCorrectly |= otDeviceSetup( @@ -138,11 +138,11 @@ bool otCoapPUT(bool lampState) { return false; } -// this fucntion is used by the Switch mode to check the BOOT Button and send the user action to the Lamp node +// this function is used by the Switch mode to check the BOOT Button and send the user action to the Lamp node void checkUserButton() { static long unsigned int lastPress = 0; const long unsigned int debounceTime = 500; - static bool lastLampState = true; // first button press will turn the Lamp OFF from inital Green + static bool lastLampState = true; // first button press will turn the Lamp OFF from initial Green pinMode(USER_BUTTON, INPUT_PULLUP); // C6/H2 User Button if (millis() > lastPress + debounceTime && digitalRead(USER_BUTTON) == LOW) { @@ -150,7 +150,7 @@ void checkUserButton() { if (!otCoapPUT(lastLampState)) { // failed: Lamp Node is not responding due to be off or unreachable // timeout from the CoAP PUT message... restart the node. rgbLedWrite(RGB_BUILTIN, 255, 0, 0); // RED ... something failed! - Serial.println("Reseting the Node as Switch... wait."); + Serial.println("Resetting the Node as Switch... wait."); // start over... setupNode(); } diff --git a/libraries/OpenThread/src/OThreadCLI_Util.cpp b/libraries/OpenThread/src/OThreadCLI_Util.cpp index f26b964cc..d1b7f27a3 100644 --- a/libraries/OpenThread/src/OThreadCLI_Util.cpp +++ b/libraries/OpenThread/src/OThreadCLI_Util.cpp @@ -117,7 +117,7 @@ bool otExecCommand(const char *cmd, const char *arg, ot_cmd_return_t *returnCode i--; // search for ' ' before ":' } if (*i == ' ') { - i++; // move it forward to the number begining + i++; // move it forward to the number beginning returnCode->errorCode = atoi(i); returnCode->errorMessage = m; } // otherwise, it will keep the "bad error message" information diff --git a/libraries/PPP/src/PPP.cpp b/libraries/PPP/src/PPP.cpp index bef283671..55363a71e 100644 --- a/libraries/PPP/src/PPP.cpp +++ b/libraries/PPP/src/PPP.cpp @@ -226,7 +226,7 @@ bool PPPClass::setPins(int8_t tx, int8_t rx, int8_t rts, int8_t cts, esp_modem_f bool PPPClass::begin(ppp_modem_model_t model, uint8_t uart_num, int baud_rate) { esp_err_t ret = ESP_OK; bool pin_ok = false; - int trys = 0; + int tries = 0; if (_esp_netif != NULL || _dce != NULL) { log_w("PPP Already Started"); @@ -313,11 +313,11 @@ bool PPPClass::begin(ppp_modem_model_t model, uint8_t uart_num, int baud_rate) { if (_pin_rst >= 0) { // wait to be able to talk to the modem log_v("Waiting for response from the modem"); - while (esp_modem_sync(_dce) != ESP_OK && trys < 100) { - trys++; + while (esp_modem_sync(_dce) != ESP_OK && tries < 100) { + tries++; delay(500); } - if (trys >= 100) { + if (tries >= 100) { log_e("Failed to wait for communication"); goto err; } diff --git a/libraries/README.md b/libraries/README.md index 7fe904b44..38765f99b 100644 --- a/libraries/README.md +++ b/libraries/README.md @@ -1,9 +1,9 @@ # ESP32 Libraries -arduino-esp32 includes libraries for Arduino compatibility along with some object wrappers around hardware specific devices. Examples are included in the examples folder under each library folder. The ESP32 includes additional examples which need no special drivers. +arduino-esp32 includes libraries for Arduino compatibility along with some object wrappers around hardware specific devices. Examples are included in the examples folder under each library folder. The ESP32 includes additional examples which need no special drivers. ### ArduinoOTA - Over The Air firmware update daemon. Use espota.py to upload to the device. + Over The Air firmware update daemon. Use espota.py to upload to the device. ### AsyncUDP Asynchronous task driven UDP datagram client/server @@ -100,11 +100,13 @@ arduino-esp32 includes libraries for Arduino compatibility along with some objec ### WebServer A simple HTTP daemon + ### WiFi - Arduino compatible WiFi driver (includes Ethernet driver) + + Arduino compatible Wi-Fi driver ### NetworkClientSecure - Arduino compatible WiFi client object using embedded encryption + Arduino compatible Wi-Fi client object using embedded encryption ### Wire Arduino compatible I2C driver diff --git a/libraries/RainMaker/README.md b/libraries/RainMaker/README.md index b9eb5e6cd..2bfe7dd1a 100644 --- a/libraries/RainMaker/README.md +++ b/libraries/RainMaker/README.md @@ -41,7 +41,7 @@ NOTE : ESP RainMaker library is currently supported for ESP32 board only. ## ESP RainMaker Agent API ### RMaker.initNode() -This initializes the ESP RainMaker agent, wifi and creates the node. +This initializes the ESP RainMaker agent, Wi-Fi and creates the node. ``` Node initNode(const char *name, const char *type); ``` @@ -67,7 +67,7 @@ esp_err_t start() > NOTE : > 1. ESP RainMaker agent should be initialized before this call. -> 2. Once ESP RainMaker agent starts, compulsorily call WiFi.beginProvision() API. +> 2. Once ESP RainMaker agent starts, compulsorily call `WiFi.beginProvision()` API. ### RMaker.stop() It stops the ESP RainMaker agent which was started using `RMaker.start()`. diff --git a/libraries/RainMaker/examples/README.md b/libraries/RainMaker/examples/README.md index 595e82f88..f838736da 100644 --- a/libraries/RainMaker/examples/README.md +++ b/libraries/RainMaker/examples/README.md @@ -2,7 +2,7 @@ While building any examples for ESP RainMaker, take care of the following: -1. Change the partition scheme that fits your flash size in Arduino IDE to "RainMaker 4MB", "RainMaker 4MB no OTA" or "RainMaker 8MB" (Tools -> Partition Scheme -> RainMaker). +1. Change the partition scheme that fits your flash size in Arduino IDE to `RainMaker 4MB`, `RainMaker 4MB no OTA` or `RainMaker 8MB` (Tools -> Partition Scheme -> RainMaker). 2. Once ESP RainMaker gets started, compulsorily call `WiFi.beginProvision()` which is responsible for user-node mapping. 3. Use the appropriate provisioning scheme as per the board. - ESP32 Board: BLE Provisioning diff --git a/libraries/RainMaker/src/RMakerDevice.cpp b/libraries/RainMaker/src/RMakerDevice.cpp index efeafac87..db431ba10 100644 --- a/libraries/RainMaker/src/RMakerDevice.cpp +++ b/libraries/RainMaker/src/RMakerDevice.cpp @@ -52,7 +52,7 @@ void Device::addCb(deviceWriteCb writeCb, deviceReadCb readCb) { esp_err_t Device::addDeviceAttr(const char *attr_name, const char *val) { err = esp_rmaker_device_add_attribute(getDeviceHandle(), attr_name, val); if (err != ESP_OK) { - log_e("Failed to add attriute to the device"); + log_e("Failed to add attribute to the device"); return err; } return ESP_OK; diff --git a/libraries/SD/README.md b/libraries/SD/README.md index 4e0a05ee0..eef61d817 100644 --- a/libraries/SD/README.md +++ b/libraries/SD/README.md @@ -37,7 +37,7 @@ Tip: If you are using a microSD card and have a spare adapter to full-sized SD, **What is the difference between SD and SD_MMC libraries?** SD runs on SPI, and SD_MMC uses the SDMMC hardware bus on the ESP32. -The SPI uses 4 communication pins + 2 power connections and operates on up to 80MHz. The SPI option offers flexibility on pin connection because the data connections can be routed through GPIO matrix to any data pin. +The SPI uses 4 communication pins + 2 power connections and operates on up to 80 MHz. The SPI option offers flexibility on pin connection because the data connections can be routed through GPIO matrix to any data pin. SD-SPI speed is approximately half of the SD-MMC even when used on 1-bit line. You can read more about SD SPI in the [documentation](https://docs.espressif.com/projects/esp-idf/en/latest/esp32/api-reference/peripherals/sdspi_host.html) diff --git a/libraries/SD_MMC/README.md b/libraries/SD_MMC/README.md index 6d6bc69a1..a41295c12 100644 --- a/libraries/SD_MMC/README.md +++ b/libraries/SD_MMC/README.md @@ -102,7 +102,7 @@ Tip: If you are using a microSD card and have a spare adapter to full-sized SD, #### What is the difference between SD and SD_MMC libraries? SD runs on SPI, and SD_MMC uses the SDMMC hardware bus on the ESP32. -The SPI uses 4 communication pins + 2 power connections and operates on up to 80MHz. The SPI option offers flexibility on pin connection because the data connections can be routed through GPIO matrix to any data pin. +The SPI uses 4 communication pins + 2 power connections and operates on up to 80 MHz. The SPI option offers flexibility on pin connection because the data connections can be routed through GPIO matrix to any data pin. SD-SPI speed is approximately half of the SD-MMC even when used on 1-bit line. You can read more about SD SPI in the [documentation](https://docs.espressif.com/projects/esp-idf/en/latest/esp32/api-reference/peripherals/sdspi_host.html) diff --git a/libraries/SPI/examples/SPI_Multiple_Buses/SPI_Multiple_Buses.ino b/libraries/SPI/examples/SPI_Multiple_Buses/SPI_Multiple_Buses.ino index 672d5fe2b..c73f6078c 100644 --- a/libraries/SPI/examples/SPI_Multiple_Buses/SPI_Multiple_Buses.ino +++ b/libraries/SPI/examples/SPI_Multiple_Buses/SPI_Multiple_Buses.ino @@ -45,7 +45,7 @@ static const int spiClk = 1000000; // 1 MHz -//uninitialised pointers to SPI objects +//uninitialized pointers to SPI objects SPIClass *vspi = NULL; SPIClass *hspi = NULL; diff --git a/libraries/Update/src/Updater.cpp b/libraries/Update/src/Updater.cpp index 4be13b9d1..78f93602c 100644 --- a/libraries/Update/src/Updater.cpp +++ b/libraries/Update/src/Updater.cpp @@ -393,7 +393,7 @@ bool UpdateClass::_writeBuffer() { } } - // try to skip empty blocks on unecrypted partitions + // try to skip empty blocks on unencrypted partitions if ((_partition->encrypted || _chkDataInBlock(_buffer + skip / sizeof(uint32_t), _bufferLen - skip)) && !ESP.partitionWrite(_partition, _progress + skip, (uint32_t *)_buffer + skip / sizeof(uint32_t), _bufferLen - skip)) { _abort(UPDATE_ERROR_WRITE); diff --git a/libraries/WebServer/examples/MultiHomedServers/README.md b/libraries/WebServer/examples/MultiHomedServers/README.md index bf5f7dfd1..83ec62238 100644 --- a/libraries/WebServer/examples/MultiHomedServers/README.md +++ b/libraries/WebServer/examples/MultiHomedServers/README.md @@ -2,7 +2,7 @@ This example tests support for multi-homed servers, i.e. a distinct web servers on distinct IP interface. -It only tests the case n=2 because on a basic ESP32 device, we only have two IP interfaces, namely the WiFi station interfaces and the WiFi soft AP interface. +It only tests the case n=2 because on a basic ESP32 device, we only have two IP interfaces, namely the Wi-Fi station interfaces and the Wi-Fi soft AP interface. For this to work, the WebServer and the NetworkServer classes must correctly handle the case where an IP address is passed to their relevant constructor. It also requires WebServer to work with multiple, simultaneous instances. @@ -55,7 +55,7 @@ Currently, this example supports the following targets. ## How to Use Example -Change the SSID and password in the example to your WiFi and flash the example. +Change the SSID and password in the example to your Wi-Fi and flash the example. Open a serial terminal and the example will write the exact addresses with used IP addresses you can use to test the servers. * How to install the Arduino IDE: [Install Arduino IDE](https://github.com/espressif/arduino-esp32/tree/master/docs/arduino-ide). diff --git a/libraries/WebServer/examples/WebServer/README.md b/libraries/WebServer/examples/WebServer/README.md index dada705b4..b31668284 100644 --- a/libraries/WebServer/examples/WebServer/README.md +++ b/libraries/WebServer/examples/WebServer/README.md @@ -6,8 +6,8 @@ It is a small project in it's own and has some files to use on the web server to This example requires some space for a filesystem and runs fine on supported SoCs with 4 MByte or more flash by selecting the proper partition table: -* For using SPIFFS(LittleFS): Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -* For using FATFS: Default 4MB with ffat (1.2MB APP/1.5MB FATFS) +* For using SPIFFS(LittleFS): `Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS)` +* For using FATFS: `Default 4MB with ffat (1.2MB APP/1.5MB FATFS)` It features @@ -36,7 +36,7 @@ Currently, this example supports the following targets. How to install the Arduino IDE: [Install Arduino IDE](https://github.com/espressif/arduino-esp32/tree/master/docs/arduino-ide). -* In the file `secrets.h` you can add the home WiFi network name ans password. +* In the file `secrets.h` you can add the home Wi-Fi network name ans password. * Compile and upload to the device. * Have a look into the monitoring output. * Open or using a browser. @@ -56,9 +56,9 @@ It offers plug-in capabilities by registering specific functionalities that will In the setup() function in the webserver.ino sketch file the following steps are implemented to make the webserver available on the local network. -* Create a webserver listening to port 80 for http requests. +* Create a webserver listening to port 80 for HTTP requests. * Initialize the access to the filesystem in the free flash memory. -* Connect to the local WiFi network. Here is only a straight-forward implementation hard-coding network name and passphrase. You may consider to use something like the WiFiManager library in real applications. +* Connect to the local Wi-Fi network. Here is only a straight-forward implementation hard-coding network name and passphrase. You may consider to use something like the WiFiManager library in real applications. * Register the device in DNS using a known hostname. * Registering several plug-ins (see below). * Starting the web server. diff --git a/libraries/WebServer/examples/WebServer/WebServer.ino b/libraries/WebServer/examples/WebServer/WebServer.ino index be1b0bbbe..9871826bb 100644 --- a/libraries/WebServer/examples/WebServer/WebServer.ino +++ b/libraries/WebServer/examples/WebServer/WebServer.ino @@ -243,7 +243,7 @@ void setup(void) { TRACE("Starting WebServer example...\n"); - // ----- check partitions for finding the fileystem type ----- + // ----- check partitions for finding the filesystem type ----- esp_partition_iterator_t i; i = esp_partition_find(ESP_PARTITION_TYPE_DATA, ESP_PARTITION_SUBTYPE_DATA_FAT, nullptr); diff --git a/libraries/WiFi/examples/WiFiClient/README.md b/libraries/WiFi/examples/WiFiClient/README.md index b85ec43e6..8b6a5d9ca 100644 --- a/libraries/WiFi/examples/WiFiClient/README.md +++ b/libraries/WiFi/examples/WiFiClient/README.md @@ -4,7 +4,7 @@ This example demonstrates reading and writing data from and to a web service whi # Supported Targets -Currently, this example supports all SoC with WiFi. +Currently, this example supports all SoC with Wi-Fi. | Supported Targets | ESP32 | ESP32-S2 | ESP32-C3 | ESP32-S3 | @@ -18,7 +18,7 @@ Please note that this public channel can be accessed by anyone and it is possibl ### Configure the Project -Change `SSID` and `password` to connect to your WiFi. +Change `SSID` and `password` to connect to your Wi-Fi. Default values will allow you to use this example without any changes. If you want to use your own channel and you don't have one already follow these steps: * Create an account on [thingspeak.com](https://www.thingspeak.com). @@ -79,7 +79,7 @@ load:0x403cc710,len:0x918 load:0x403ce710,len:0x24e4 entry 0x403cc710 ``` -Follows the setup output where connection to your WiFi happens: +Follows the setup output where connection to your Wi-Fi happens: ``` ****************************************************** Connecting to your-ssid @@ -139,7 +139,7 @@ After this the write+read log repeat every 10 seconds. ***Important: Make sure you are using a good quality USB cable and that you have a reliable power source*** -* **WiFi not connected:** Check the SSID and password and also that the signal has sufficient strength. +* **Wi-Fi not connected:** Check the SSID and password and also that the signal has sufficient strength. * **400 Bad Request:** Check the writeApiKey. * **404 Not Found:** Check the channel ID. * **No data on chart / reading NULL:** Data must be sent as an integer, without commas. diff --git a/libraries/WiFi/examples/WiFiClientConnect/README.md b/libraries/WiFi/examples/WiFiClientConnect/README.md index c18950f04..eab02b674 100644 --- a/libraries/WiFi/examples/WiFiClientConnect/README.md +++ b/libraries/WiFi/examples/WiFiClientConnect/README.md @@ -1,6 +1,6 @@ # NetworkClientConnect Example -This example demonstrates how to connect to the WiFi and manage the status and disconnection from STA. +This example demonstrates how to connect to the Wi-Fi and manage the status and disconnection from STA. # Supported Targets diff --git a/libraries/WiFi/examples/WiFiClientEnterprise/README.md b/libraries/WiFi/examples/WiFiClientEnterprise/README.md index fefc37f02..20d38b88d 100644 --- a/libraries/WiFi/examples/WiFiClientEnterprise/README.md +++ b/libraries/WiFi/examples/WiFiClientEnterprise/README.md @@ -1,5 +1,5 @@ # ESP32-Eduroam -* Eduroam wifi connection with university login identity +* Eduroam Wi-Fi connection with university login identity * Working under Eduroam networks worldwide * Methods: PEAP + MsCHAPv2 @@ -15,6 +15,7 @@ * Board will auto reconnect to Eduroam if it lost connection # Tested locations + |University|Board|Method|Result| |-------------|-------------| -----|------| |Technical University in Košice (Slovakia)|ESP32 Devkit v1|PEAP + MsCHAPv2|Working| @@ -29,13 +30,14 @@ |Universidade Federal de Santa Catarina (Brazil)|xxx|EAP-TTLS + MsCHAPv2|Working| |University of Central Florida (Orlando, Florida)|ESP32 Built-in OLED – Heltec WiFi Kit 32|PEAP + MsCHAPv2|Working| |Université de Montpellier (France)|NodeMCU-32S|PEAP + MsCHAPv2|Working| + # Common errors - Switch to Debug mode for Serial monitor prints |Error|Appearance|Solution| |-------------|-------------|-------------| -|wifi: Set status to INIT|Frequent|Hold EN button for few seconds| +|Wi-Fi: Set status to INIT|Frequent|Hold EN button for few seconds| |HANDSHAKE_TIMEOUT|Rare|Bug was found under Zeroshell RADIUS authentization - Unsuccessful connection| -|AUTH_EXPIRE|Common|In the case of weak wifi network signal, this error is quite common, bring your device closer to AP| +|AUTH_EXPIRE|Common|In the case of weak Wi-Fi network signal, this error is quite common, bring your device closer to AP| |ASSOC_EXPIRE|Rare|-| # Successful connection example ![alt text](https://i.nahraj.to/f/24Kc.png) diff --git a/libraries/WiFi/examples/WiFiScan/README.md b/libraries/WiFi/examples/WiFiScan/README.md index c1e528e43..ec39cc6c6 100644 --- a/libraries/WiFi/examples/WiFiScan/README.md +++ b/libraries/WiFi/examples/WiFiScan/README.md @@ -1,6 +1,6 @@ # WiFiScan Example -This example demonstrates how to use the WiFi library to scan available WiFi networks and print the results. +This example demonstrates how to use the Wi-Fi library to scan available Wi-Fi networks and print the results. ## Supported Targets diff --git a/libraries/WiFi/examples/WiFiScanAsync/README.md b/libraries/WiFi/examples/WiFiScanAsync/README.md index b0183e8ff..a557173c1 100644 --- a/libraries/WiFi/examples/WiFiScanAsync/README.md +++ b/libraries/WiFi/examples/WiFiScanAsync/README.md @@ -1,6 +1,6 @@ # WiFiScanAsync Example -This example demonstrates how to use the WiFi library to scan available WiFi networks in asynchronous mode and print the results. +This example demonstrates how to use the Wi-Fi library to scan available Wi-Fi networks in asynchronous mode and print the results. ## Supported Targets diff --git a/libraries/WiFi/examples/WiFiScanDualAntenna/README.md b/libraries/WiFi/examples/WiFiScanDualAntenna/README.md index f33a25b53..f7ec7cc3e 100644 --- a/libraries/WiFi/examples/WiFiScanDualAntenna/README.md +++ b/libraries/WiFi/examples/WiFiScanDualAntenna/README.md @@ -1,6 +1,6 @@ # WiFiScan Example -This example demonstrates how to use the WiFi library to scan available WiFi networks and print the results. +This example demonstrates how to use the Wi-Fi library to scan available Wi-Fi networks and print the results. This example shows the basic functionality of the dual antenna capability. diff --git a/libraries/WiFi/examples/WiFiScanTime/README.md b/libraries/WiFi/examples/WiFiScanTime/README.md index e9f8ef973..f56ba8939 100644 --- a/libraries/WiFi/examples/WiFiScanTime/README.md +++ b/libraries/WiFi/examples/WiFiScanTime/README.md @@ -1,6 +1,6 @@ # WiFiScanTime Example -This example demonstrates how to use the WiFi library to scan available WiFi networks with custom scan timing and print the results. +This example demonstrates how to use the Wi-Fi library to scan available Wi-Fi networks with custom scan timing and print the results. ## Supported Targets diff --git a/libraries/WiFiProv/examples/WiFiProv/README.md b/libraries/WiFiProv/examples/WiFiProv/README.md index b0eb9654a..690c27606 100644 --- a/libraries/WiFiProv/examples/WiFiProv/README.md +++ b/libraries/WiFiProv/examples/WiFiProv/README.md @@ -8,12 +8,16 @@ This example allows Arduino users to choose either BLE or SOFTAP as the mode of ## APIs introduced for provisioning + ### WiFi.onEvent() + This API can be used to register a function to be called from another -thread for WiFi Events and Provisioning Events. +thread for Wi-Fi Events and Provisioning Events. + ### WiFi.beginProvision() + ``` WiFi.beginProvision(void (*scheme_cb)(), wifi_prov_scheme_event_handler_t scheme_event_handler, wifi_prov_security_t security, char *pop, char *service_name, char *service_key, uint8_t *uuid); @@ -50,7 +54,7 @@ WiFi.beginProvision(void (*scheme_cb)(), wifi_prov_scheme_event_handler_t scheme { 0xb4, 0xdf, 0x5a, 0x1c, 0x3f, 0x6b, 0xf4, 0xbf, 0xea, 0x4a, 0x82, 0x03, 0x04, 0x90, 0x1a, 0x02 } ``` -- `reset_provisioned`: Resets previously provisioned data before initializing. Using this prevents problem when the device automatically connects to previously connected WiFi and therefore cannot be found. +- `reset_provisioned`: Resets previously provisioned data before initializing. Using this prevents problem when the device automatically connects to previously connected Wi-Fi and therefore cannot be found. **NOTE:** If none of the parameters are specified in `beginProvision`, default provisioning takes place using SoftAP with the following settings: - `scheme = WIFI_PROV_SCHEME_SOFTAP` @@ -65,7 +69,7 @@ WiFi.beginProvision(void (*scheme_cb)(), wifi_prov_scheme_event_handler_t scheme ## Flashing This sketch takes up a lot of space for the app and may not be able to flash with default setting on some chips. If you see Error like this: "Sketch too big" -In Arduino IDE go to: Tools > Partition scheme > chose anything that has more than 1.4MB APP for example `No OTA (2MB APP/2MB SPIFFS)` +In Arduino IDE go to: Tools > Partition scheme > chose anything that has more than 1.4 MB APP for example `No OTA (2MB APP/2MB SPIFFS)` ## Log Output - To enable debugging: Go to Tools -> Core Debug Level -> Info. diff --git a/tools/get.exe b/tools/get.exe index 13f81c367..161cb193c 100644 Binary files a/tools/get.exe and b/tools/get.exe differ diff --git a/tools/get.py b/tools/get.py index 19d48be5c..45f97d62f 100755 --- a/tools/get.py +++ b/tools/get.py @@ -171,7 +171,7 @@ def is_latest_version(destination, dirname, rename_to, cfile, checksum): except Exception as e: if verbose: - print(f"Falied to verify version for {rename_to}: {e}") + print(f"Failed to verify version for {rename_to}: {e}") return False diff --git a/variants/alfredo-nou3/pins_arduino.h b/variants/alfredo-nou3/pins_arduino.h index 9d7f57f03..88bdbea0b 100644 --- a/variants/alfredo-nou3/pins_arduino.h +++ b/variants/alfredo-nou3/pins_arduino.h @@ -5,7 +5,7 @@ #define USB_PID 0x0003 #define USB_MANUFACTURER "Alfredo" #define USB_PRODUCT "NoU3" -#define USB_SERIAL "" // Empty string for MAC adddress +#define USB_SERIAL "" // Empty string for MAC address // User LED #define LED_BUILTIN 45 diff --git a/variants/arduino_nano_nora/io_pin_remap.cpp b/variants/arduino_nano_nora/io_pin_remap.cpp index 5ed2b0efe..f615f5729 100644 --- a/variants/arduino_nano_nora/io_pin_remap.cpp +++ b/variants/arduino_nano_nora/io_pin_remap.cpp @@ -10,7 +10,7 @@ // This board uses pin mapping but the build system has disabled it #warning The build system forces the Arduino API to use GPIO numbers on a board that has custom pin mapping. #elif defined(BOARD_USES_HW_GPIO_NUMBERS) -// The user has chosen to disable pin mappin. +// The user has chosen to disable pin mapping. #warning The Arduino API will use GPIO numbers for this build. #endif diff --git a/variants/circuitart_zero_s3/pins_arduino.h b/variants/circuitart_zero_s3/pins_arduino.h index 930a081e0..adf38ca67 100644 --- a/variants/circuitart_zero_s3/pins_arduino.h +++ b/variants/circuitart_zero_s3/pins_arduino.h @@ -7,7 +7,7 @@ #define USB_PID 0x80DB #define USB_MANUFACTURER "CircuitART" #define USB_PRODUCT "ZeroS3" -#define USB_SERIAL "" // Empty string for MAC adddress +#define USB_SERIAL "" // Empty string for MAC address // User LED #define LED_BUILTIN 46