Commit Graph

493 Commits

Author SHA1 Message Date
morris
869bed1bb5 soc: don't expose unstable soc header files in public api 2022-01-06 23:10:22 +08:00
Darian
d95b15c557 Merge branch 'feature/usb_host_cleanup' into 'master'
USB: Host stack cleanup and QOL update

Closes IDFGH-6120, IDF-2747, IDFGH-4592, and IDFGH-6402

See merge request espressif/esp-idf!16349
2022-01-06 12:18:47 +00:00
Darian Leung
630a6b54c2 usb: Add USB Host Library Example
The commit adds a basic example for the USB Host Library
2022-01-06 15:15:15 +08:00
Darian Leung
b6dfadb168 usb: Update USB Host Library
This commit updates the USB Host Library as follows:

- usb_helpers.h
    - Removed dependency on USB Host Library API
    - Added function to print string descriptors
- usbh
    - Fixed bug where an interface/endpoint could be claimed/allocated multiple times
    - Removed redundant device ref_count change
- Added unit test for USB Host Library API usage
2022-01-06 15:14:10 +08:00
Darian Leung
1aad12468a usb: Hub Driver Update and Refactor
Hub Driver is refactored as follows:

This commit update and refactors the Hub Driver as follows:

- Refactored enumeration state machine and stage functions
    - Enumeration stage is now incremented
    - Combined transfer stages of enumeration into common functions
- Comments updated
- Fixed usbh_hal_disable_debounce_lock() that would cause root_port_handle_events()
    to fail the HCD_PORT_CMD_RESET call because the previous port connection interrupt
    was not cleared.

The following features were added to the Hub Driver

- Enumeration config descriptor is now fetched in two separate stages
    - Header is fetched first to determine the wTotalLength of the descriptor
    - Fetching the full descriptor will request exactly wTotalLength bytes
    - This works around some non-compliant devices that will babble/return zero
        when requesting a length > wTotalLength
    - Closes https://github.com/espressif/esp-idf/issues/7799
- Enumeration now stores string descriptors
    - The Manufacturer, Product, and Serial Number string descriptors are
        now read and stored during enumeration
    - String descriptors are now part of usb_device_info_t
- Added unit test to test enumeration
2022-01-06 15:11:13 +08:00
Darian Leung
854127a57c usb: USB Host stack uses USB PHY driver
This commit updates the USB Host stack to use the USB PHY driver. The
USB PHY and the OTG Controller should now both be setup/deleted using
usb_new_phy() and usb_del_phy() respectively.

- The hcd_install() now expects the USB PHY and OTG Contorller to be
    already setup before it is called
- usb_host_install() now has an option to skip calling usb_del_phy() if
    the user wants to setup their own USB PHY (e.g., in the case of using
    and external PHY).
- CDC-ACM and MSC examples/test updated to use internal PHY

Closes https://github.com/espressif/esp-idf/issues/8061
2022-01-06 15:09:39 +08:00
Tomas Rezucha
6330d5d312 usb: Extend CDC device with second CDC channel
Closes https://github.com/espressif/esp-idf/issues/7020
Closes https://github.com/espressif/esp-idf/pull/8011
2022-01-05 08:18:03 +01:00
songruojing
e0bc3a923c esp8684: support GPIO peripheral, IO_MUX, GPIO matrix.
Generic GPIO example and GPIO unit test on esp8684 are both supported as well.
2021-12-29 22:01:45 +08:00
morris
f2d3a18f43 timer: example migrate to pytest 2021-12-23 11:39:32 +08:00
Martin Válik
4f7c36d859 Merge branch 'feature/usb-msc' into 'master'
USB MSC class

Closes IDFGH-4584

See merge request espressif/esp-idf!14573
2021-12-21 10:22:54 +00:00
Martin Valik
73dce765d5 USB: added MSC Host Driver with VFS support
Closes https://github.com/espressif/esp-idf/issues/6401
2021-12-20 12:39:45 +01:00
Armando
4dc0d6b2fe adc: support adc dma driver on all chips 2021-12-16 00:19:15 +00:00
Simon
1c82e6eac7 Merge branch 'ci/8684_build_ci' into 'master'
CI: Enable ESP8684 build (2nd stage) CI on master (except example build)

Closes IDF-4388

See merge request espressif/esp-idf!16197
2021-12-14 11:12:10 +00:00
morris
d87b6ec7e2 Merge branch 'feature/gc9a01_driver_pr' into 'master'
lcd: added gc9a01 driver (PR + Example)

Closes IDFGH-6232

See merge request espressif/esp-idf!15985
2021-12-14 05:26:05 +00:00
Cao Sen Miao
e81841318f CI: Enable ESP8684 build stage CI on master 2021-12-13 19:18:47 +08:00
Armando
9896b65972 spi_slave_hd: fix stack variable bug in seg_slave example
Closes https://github.com/espressif/esp-idf/issues/7163
2021-12-10 17:54:29 +08:00
Tomas Rezucha
dd1b698075 usb: Add USB host CDC-ACM class driver 2021-12-09 10:28:46 +01:00
Michael (XIAO Xufeng)
ae13597f39 Merge branch 'bugfix/ir_protocol_channel_number' into 'master'
rmt: update ir example to work with esp32s3 out of box

See merge request espressif/esp-idf!16198
2021-12-08 06:46:04 +00:00
Kevin (Lao Kaiyao)
9bc274b47b Merge branch 'refactor/i2s_deprecate_confusing_names' into 'master'
i2s: deprecate confusing names

Closes IDF-4368

See merge request espressif/esp-idf!16088
2021-12-07 11:52:44 +00:00
morris
ed1fe1d5ba rmt: update ir example to work with esp32s3 out of box 2021-12-02 13:55:03 +08:00
morris
c043c43247 lcd: gc9a01 meter example
We take the GC9A01 as an example to illustrate how to implement user's
own panel driver in their project folder, without making the esp-idf
dirty.
2021-12-01 22:22:19 +08:00
Aditya Patwardhan
6a44accdbb atecc608a_example: Update esp-cryptoauthlib submodule pointer
*Provide configuratble option to I2C address of the secure element.
2021-11-26 12:38:32 +08:00
Min Seok Kim
020f20e45e gpio: Fixed typo in generic_gpio example
Closes https://github.com/espressif/esp-idf/pull/7823

[darian@espressif.com: Updated commit message]
Signed-off-by: Darian Leung <darian@espressif.com>
2021-11-25 00:05:23 +08:00
laokaiyao
fa4e77eb44 i2s: deprecate confusing names 2021-11-24 13:21:13 +08:00
Jakob Hasse
de6bc33f3c refactor (cxx): C++ I2C example now uses MPU9250 instead of MCP9808
Also fixes the documentation of I2CTransfer::sync_transfer().
2021-11-18 19:07:44 +08:00
Roland Dobai
766aa57084 Build & config: Remove leftover files from the unsupported "make" build system 2021-11-11 15:32:36 +01:00
Alex Lisitsyn
0586be45d2 modbus: update to support other targets 2021-11-08 16:28:55 +00:00
Kevin (Lao Kaiyao)
3399255c34 Merge branch 'feature/github-7661' into 'master'
mck pin not defined in i2s examples

Closes IDFGH-5973 and IDFGH-5974

See merge request espressif/esp-idf!15452
2021-11-08 09:32:14 +00:00
Anton Maklakov
a047b15314 Merge branch 'version/v5.0.0' into 'master'
version: starting v5.0.0 development

See merge request espressif/esp-idf!15580
2021-10-21 03:37:51 +00:00
Ivan Grokhotkov
e89dce8fd1 examples/i2s: bump IDF version in component manifest 2021-10-21 00:24:50 +02:00
morris
e2275b1f63 gptimer: clean up hal and ll for driver-ng 2021-10-20 18:40:08 +08:00
Kevin (Lao Kaiyao)
dc20768913 Merge branch 'feature/add_i2s_es8311_example_and_loop_unit_test' into 'master'
example/i2s: add es8311 example and i2s unit-test

Closes IDF-3412

See merge request espressif/esp-idf!14459
2021-10-14 09:28:35 +00:00
Kevin (Lao Kaiyao)
a9faafee3c Merge branch 'feature/touch_sensor_driver_support_for_esp32s3' into 'master'
driver(touch): support touch sensor for esp32s3 platform

Closes IDF-1784 and IDF-3302

See merge request espressif/esp-idf!14102
2021-10-12 05:50:58 +00:00
laokaiyao
3eb09287f9 example/i2s: add es8311 example and i2s loop unit-test 2021-10-11 18:32:34 +08:00
Mahavir Jain
4307ea9a58 Merge branch 'feature/update_esp_cryptoauthlib_submodule' into 'master'
examples/secure_element: update esp-cryptoauthlib submodule pointer

See merge request espressif/esp-idf!15436
2021-10-11 07:10:13 +00:00
Jakob Hasse
f86e154a56 Merge branch 'feature/removed_hyphens_from_examples' into 'master'
[examples]: Project names consistent with their directories

Closes IDFGH-3673

See merge request espressif/esp-idf!13570
2021-10-11 03:43:37 +00:00
Arnaud-Oechslin
18653586ab i2s: add mck pin definition in the example
If the mck pin is not set to GPIO 0,1,3 or -1 the whole pin configuration fails. This fix corrects that.

Merges https://github.com/espressif/esp-idf/pull/7661
2021-10-10 20:51:00 +08:00
morris
7283e349b9 Merge branch 'refactor/rgb_lcd_callback_add_event_data' into 'master'
lcd: modify callback prototype && build API docs

See merge request espressif/esp-idf!15354
2021-10-09 06:26:44 +00:00
Jakob Hasse
81e9266204 [examples]: removed hyphens
Replaced hyphens with underscores in examples
project definition for all examples which had
hyphens in their project name. dpp-enrollee is
an exceptions because the name matches the
project directory name while the project
directory also contains hyphens.
2021-10-09 13:58:24 +08:00
laokaiyao
f4705f8eb4 touch sensor: update copyright notice 2021-10-08 11:45:57 +08:00
laokaiyao
a1cadba191 touch_sensor: apply general check 2021-10-08 11:32:12 +08:00
fuzhibo
589646a31e update touch with review advice 2021-10-08 10:39:46 +08:00
fuzhibo
3ca9da0386 update touch sensor examples 2021-10-08 10:39:46 +08:00
fuzhibo
057b9d61b5 driver(touch): support touch sensor for esp32s3 platform 2021-10-08 10:39:46 +08:00
Mahavir Jain
5879a92eec examples/secure_element: update esp-cryptoauthlib submodule pointer 2021-10-07 13:30:39 +05:30
pedro.minatel
5144458905 Fix on the readme file for the supported devices 2021-10-04 10:44:49 +01:00
morris
e09e39c94f lcd: unify callback prototype 2021-10-02 14:23:31 +08:00
laokaiyao
7264c0e59a i2s_rec_example: add support for esp32s3 2021-10-01 16:05:04 +01:00
laokaiyao
1327a56369 i2s: fix the param check on PDM mode
Closes https://github.com/espressif/esp-idf/issues/7604
2021-10-01 16:05:04 +01:00
pedro.minatel
a21225d86d Rebase and removed the sample rate division by 2 2021-10-01 16:05:04 +01:00
pedro.minatel
389db51f25 Changes on the recording function 2021-10-01 16:05:04 +01:00
pedro.minatel
4bd057013d Added driver unistall function for I2S 2021-10-01 16:05:04 +01:00
pedro.minatel
e736c20cc9 Removed unused define and added mck pin definition to i2s_pin_config
Changes on the pin configuration

Fixed the pin setup and minor improvements
2021-10-01 16:05:04 +01:00
SalimTerryLi
075b091696
RMT: new example step motor, targeting at esp32s3
also working on c3 and s2 but may not reliable under loads
2021-09-24 15:41:40 +08:00
morris
ce969ad7fe Merge branch 'feature/lcd_lvgl_example' into 'master'
lcd: lvgl porting example

See merge request espressif/esp-idf!15042
2021-09-18 09:52:28 +00:00
Fu Hanxi
04b36c1c2c Merge branch 'ci/enable_s3_example_build' into 'master'
ci: enable esp32s3 example build

See merge request espressif/esp-idf!15213
2021-09-17 02:30:31 +00:00
Armando
ddd0235783 adc: support adc self-calibration on esp32s3 2021-09-16 15:17:29 +08:00
Fu Hanxi
923e862ed2 ci: temporarily disable s3 build for a few examples 2021-09-16 12:20:11 +08:00
Armando
5d54a34a9b adc: add an example of using ADC Single Read driver and ADC Calibration driver 2021-09-14 11:42:50 +08:00
Yu Zhe
64045ea9f4 lcd: add lvgl demo ui 2021-09-13 15:08:48 +08:00
morris
9240fb03d8 lcd: lvgl porting example 2021-09-13 15:08:48 +08:00
morris
691780ffa6 Merge branch 'feature/mcpwm_timer_sync' into 'master'
mcpwm: add driver option to sync with internal signals

Closes IDFGH-3469

See merge request espressif/esp-idf!9259
2021-09-09 19:05:10 +00:00
SalimTerryLi
932d4d13f0
MCPWM/sync: expose API for configuring timer sync
removed example: mcpwm_basic_config

Closes https://github.com/espressif/esp-idf/issues/5429

Co-authored-by: wubowen <wubowen@espressif.com>
2021-09-09 17:33:37 +08:00
SalimTerryLi
e3ac4d806e
example/spi_master: bring back lcd example and clean up
partially revert ac069bfca1
2021-09-09 10:51:12 +08:00
Michael (XIAO Xufeng)
db33e957b8 Merge branch 'bugfix/gpio_example_config_struct_zero_init' into 'master'
example: fixed the issue that config struct is not properly initialized

See merge request espressif/esp-idf!15007
2021-09-02 12:59:55 +00:00
SalimTerryLi
23e23b697c
rom/tjpgd: unify library & add rom patch
remove external tjpgd library inside example

enable tjpgd decoding on all chips
2021-09-01 14:42:17 +08:00
Michael (XIAO Xufeng)
b910724ea9 example: fixed the issue that config struct is not properly initialized 2021-08-30 22:59:36 +08:00
Michael (XIAO Xufeng)
375145ecdb Merge branch 'feature/mcpwm_bldc_hall_example' into 'master'
mcpwm: bldc hall example

Closes IDF-3648

See merge request espressif/esp-idf!14578
2021-08-26 08:28:27 +00:00
SalimTerryLi
6c272d6515
bugfix: hc-sr04 example: init queue before setup ISR
Closes https://github.com/espressif/esp-idf/issues/7419
2021-08-25 16:35:08 +08:00
morris
0dbe872542 mcpwm: bldc hall example 2021-08-24 15:38:46 +08:00
morris
71d475149d lcd: update doc unit test and example to support 8-line spi 2021-08-19 16:40:22 +08:00
bizhuangyang
8143832041 spi_master:support octal mode for esp32s2 and esp32s3
Add support for 8-line spi for lcd on esp32s2 and esp32s3

Closes https://github.com/espressif/esp-idf/issues/6371
2021-08-19 16:40:22 +08:00
morris
f0fab687ad pid_ctrl: abstract into example common component 2021-08-10 15:32:06 +08:00
laokaiyao
b6c5a6ee8b mcpwm: DC motor PID control example 2021-08-10 15:31:45 +08:00
morris
768af636a6 mcpwm: updated brushed dc example 2021-08-10 10:42:12 +08:00
SalimTerryLi
e5ddc12a08
MCPWM/capture: API workflow optimization
deprecate isr_register to introduce new callback based API, with framework managed interrupt routine
new HC-SR04 example
2021-08-05 19:12:58 +08:00
Michael (XIAO Xufeng)
947980ecac Merge branch 'bugfix/uart_set_pin_use_iomux' into 'master'
uart: uart_set_pin function will now use IOMUX whenever possible

Closes IDF-3183

See merge request espressif/esp-idf!14318
2021-08-05 04:17:29 +00:00
Omar Chebib
779e7400b0 uart: uart_set_pin function will now use IOMUX whenever possible
By using IOMUX instead of GPIO Matrix for UART, it is now possible
on ESP32 boards to use the UART as a wake up source even if it is
not used as a console.
For other boards where this issue was not present, using IOMUX has
the advantage to be faster than using GPIO matrix, so a highest
baudrate can be used
2021-08-04 12:48:30 +08:00
laokaiyao
f7f8c9c11f driver/i2s: support i2s on c3 and s3
1. Support i2s on esp32c3 and esp32s3
    2. Refactor i2s_config_t to avoid breaking change
    2. Fix a bug that receiving unavailable values from message queue when dma queue has been re-allocted
    4. Support i2s unit test on esp32c3 and esp32s3
2021-08-04 10:20:03 +08:00
houwenxiang
2f1247e1c4 driver: support I2S on ESP32-S3 & ESP32-C3
1. refactor I2S driver.
  2. support TDM mode for esp2s3 & esp32c3.
2021-08-04 10:20:03 +08:00
Michael (XIAO Xufeng)
f26006a3bc Merge branch 'feature/ledc_fade_callback' into 'master'
ledc: Add a callback for LEDC fade end

Closes IDF-2475 and IDF-3222

See merge request espressif/esp-idf!14302
2021-07-31 08:52:00 +00:00
Armando (Dou Yiwen)
f5266c1066 Merge branch 'feature/support_spi_example_on_s3' into 'master'
spi: support spi example on s3

See merge request espressif/esp-idf!14517
2021-07-30 03:51:26 +00:00
Armando
6aef940cde spi: support spi example on s3 2021-07-30 10:14:16 +08:00
Marius Vikhammer
172ce2881e docs: update readme link to not use parentheses
CI script for checking links failed to parse link to due to parentheses.
Bypass issue by encoding the symbol instead.
2021-07-30 09:19:04 +08:00
morris
f907009056 Merge branch 'refactor/cleanup_mcpwm_examples' into 'master'
mcpwm: more clean up (example + LL + doc)

Closes IDF-3295

See merge request espressif/esp-idf!12798
2021-07-29 10:41:07 +00:00
songruojing
9d098cc9bd ledc: Add a callback for LEDC fade end
This commit adds a feature where users can register a callback that is
called when an LEDC fade completes.
2021-07-29 17:56:22 +08:00
Armando (Dou Yiwen)
3c3e802048 Merge branch 'feature/essp_spi_driver' into 'master'
spi: essl spi driver and spi_slv_hd append mode example

Closes IDF-1698, IDF-2279, and IDF-2932

See merge request espressif/esp-idf!12104
2021-07-29 09:53:10 +00:00
Michael (XIAO Xufeng)
5569dedd7f Merge branch 'bugfix/i2c_example_esp32s3' into 'master'
i2c: bringup on ESP32-S3

Closes IDF-3232 and IDF-3292

See merge request espressif/esp-idf!13985
2021-07-29 07:01:38 +00:00
Armando
b320945908 spi_slave_hd: add append mode example 2021-07-28 18:36:13 +08:00
Marius Vikhammer
49eb42928a docs: fix broken link in usb example readme 2021-07-28 12:44:40 +08:00
Michael (XIAO Xufeng)
18bee2380a Merge branch 'refactor/usb_device_driver' into 'master'
tiny_usb: support on esp32-s3

Closes IDF-3234

See merge request espressif/esp-idf!14293
2021-07-26 16:21:55 +00:00
suda-morris
039cb93787 mcpwm: update bldc example 2021-07-26 22:32:45 +08:00
morris
251afb4a79 mcpwm: update servo control example 2021-07-26 22:32:45 +08:00
Marius Vikhammer
a29a6ceef0 uart: update register headers and examples for S3 2021-07-22 12:05:49 +08:00
morris
81448dcae8 tiny_usb: rename Kconfig name
1. Renamed Kconfig file of tinyusb (distinguish tinyusb stack from usb
   peripheral)
2. bugfix/typofix/doc update of tinyusb
2021-07-22 10:43:10 +08:00
Omar Chebib
b8c6c5334f i2c: modify examples to work out of the box on ESP32S3
On ESP32S3, the default I2C pins of the examples are already used by USB.
This commit changes the default pins.
2021-07-21 11:04:16 +08:00
SalimTerryLi
9302b28b73 bugfix by disabling IRAM attr on ISR 2021-07-20 19:39:27 +08:00
Marius Vikhammer
201d6da0b0 Merge branch 'feature/simple_i2c_ex' into 'master'
i2c: add simple example

See merge request espressif/esp-idf!8487
2021-07-19 03:48:10 +00:00
Omar Chebib
0fd74a43c8 console: re-use the available REPL console API and improve linenoise
Console example doesn't duplicate code in `console` component.
Linenoise has been improved: it now has a parametrized command line
length. It is now possible to paste data efficiently to the console.
Note: this can only be done if the cursor is at the end of the line.

Closes https://github.com/espressif/esp-idf/issues/7057
2021-07-15 11:37:11 +08:00
Marius Vikhammer
eee4cd18f8 i2c: add a simple i2c sensor communication example 2021-07-13 16:31:38 +08:00