Tomas Rezucha
1e2c271bd0
fix(usb/host): Correctly parse bInterval field in HighSpeed EP descriptors
...
For LS and FS interrupt endpoint: interval = bInterval
For isochronous and HS interrupt endpoint: interval = 2^(bInterval-1)
2024-02-19 15:44:59 +08:00
Tomas Rezucha
0ce4aa114e
fix(usb/host): Correctly parse MPS fields in HighSpeed EP descriptors
...
Bits [11,12] in HighSpeed periodic endpoints specify
the number of additional transaction opportunities per microframe
2024-02-19 15:44:59 +08:00
Tomas Rezucha
9b40d39120
refactor(usb/host): Move FIFO size configuration to HAL layer
...
The logic of calculating FIFO sizes is DWC OTG specific.
We move it to the HAL layer to provide better abstraction in the HDC layer.
2023-12-21 10:34:56 +01:00
Tomas Rezucha
71cd4df75a
refactor(usb/host): Make private hal types USB_DWC specific
2023-12-21 10:34:46 +01:00
Tomas Rezucha
42277ac868
feat(usb/host): Add High Speed enumeration types
2023-12-21 10:33:49 +01:00
Tomas Rezucha
4cf3acb594
fix(usb/host): Do not abort on string descriptor overflow
...
Some devices return full LANGID table, even if short LANGID table was requested.
No memory overflow occurs, because we have allocated enough memory for transfers to the
default pipe. So we can ignore the error and continue with string desc fetching.
2023-12-05 16:44:53 +01:00
Tomas Rezucha
717aa73886
Merge branch 'feature/usb_msc_updates' into 'master'
...
refactor(usb_host/msc_example): Increase transfer speeds
See merge request espressif/esp-idf!26319
2023-10-24 22:51:00 +08:00
Tomas Rezucha
e6fde2e13e
refactor(usb/host_msc_example): Increase transfer speeds
...
- Upgrade to MSC driver 1.1.1 for zero copy transfers
- Use setvbuf() to increase size of VFS file buffer
- Add example test
2023-10-24 15:19:58 +02:00
Tomas Rezucha
6e92fc0416
feature(examples/usb): Define maximum opend files in MSC device example
2023-10-24 15:19:58 +02:00
Tomas Rezucha
31f11848d2
Merge branch 'feature/usb_examples_trim_build' into 'master'
...
change(usb/examples): Trim the builds of USB examples
See merge request espressif/esp-idf!26320
2023-10-10 23:33:11 +08:00
Tomas Rezucha
b4c387f9f3
change(usb/examples): Trim the USB example builds
...
Include minimal set of components: main and everything it depends on
2023-10-10 10:28:47 +02:00
Tomas Rezucha
f4dfc8ffb8
Merge branch 'feature/usbd_msc_mount_callback' into 'master'
...
USBD: update example of usb device msc by adding usage of new API.
Closes IDF-7369
See merge request espressif/esp-idf!23761
2023-05-23 22:59:41 +08:00
Tomas Rezucha
197c888611
Merge branch 'fix/usb/host/pytests' into 'master'
...
usb_host: Use up-to-date syntax in pytest
See merge request espressif/esp-idf!23280
2023-04-20 16:45:09 +08:00
Tomas Rezucha
f2f6278ba6
usb_host: Use up-to-date syntax in pytest
2023-04-19 11:06:25 +02:00
Tomas Rezucha
9f2012156c
Merge branch 'feature/usb/update_cdc_examples' into 'master'
...
usb: Update host CDC examples
See merge request espressif/esp-idf!22825
2023-04-04 21:24:44 +08:00
Tomas Rezucha
2c6d0bae90
usb: Update host CDC examples
2023-04-04 07:47:55 +00:00
Tomas Rezucha
f3de7e574d
Merge branch 'bugfix/usb_reg_header_definition_upd' into 'master'
...
USB: usb_reg.h update missing register bitfield description
See merge request espressif/esp-idf!22766
2023-03-22 17:43:43 +08:00
Tomas Rezucha
2b5caf34b7
tinyusb: Do not access string descriptor array out of boundaries
...
The previous version of esp_tinyusb (v1.0.0) always assumed 8 string descriptors.
In case the user passed a smaller array of descriptors,
esp_tinyusb accessed memory outside of the array.
This is fixed esp_tinyusb v1.1.0 by https://github.com/espressif/idf-extra-components/commit/046cc4b02f524d5c7e3e56480a473cfe844dc3d6
2023-02-23 11:16:37 +01:00
Tomas Rezucha
bc314e1f8b
Merge branch 'bugfix/usb_host/interface_parsing' into 'master'
...
usb_host: Fix interface descriptor parsing
See merge request espressif/esp-idf!22323
2023-02-13 15:17:54 +08:00
Tomas Rezucha
31ff3bc0c2
usb_host: Fix interface descriptor parsing
...
Previously the USB host driver did not accept interface number greater or equal bNumInterfaces, even though these are valid interface numbers
2023-02-10 15:49:11 +01:00
Tomas Rezucha
23fd449450
Merge branch 'feature/usb/update_tusb' into 'master'
...
usb: Update TinyUSB version
See merge request espressif/esp-idf!21591
2023-01-08 19:42:48 +08:00
Tomas Rezucha
f3a63014f8
usb: Update TinyUSB version
2022-12-19 18:55:00 +01:00
Tomas Rezucha
fb4b18db2f
Merge branch 'feature/usb_host/cdc_ch340' into 'master'
...
USB Host: Expand VCP example
Closes IDFGH-7370 and IDFGH-8156
See merge request espressif/esp-idf!18940
2022-12-08 15:14:51 +08:00
Tomas Rezucha
abdf7430e0
usb_host: Extend VCP example with more devices
...
Closes https://github.com/espressif/esp-idf/issues/9652
Closes https://github.com/espressif/esp-idf/issues/8951
2022-12-07 11:33:48 +00:00
Tomas Rezucha
c64c6f3711
Merge branch 'feature/bsp_in_example' into 'master'
...
i2s: Add BSP support for es8311 example
Closes BSP-165
See merge request espressif/esp-idf!21279
2022-12-05 18:49:14 +08:00
Tomas Rezucha
9d79efc3b7
i2s: Add BSP support for es8311 example
...
Users can now pick a BSP for development boards that have ES8311 codec populated.
2022-12-05 08:42:16 +01:00
Tomas Rezucha
7ae5705977
Merge branch 'feature/usb_v5_update' into 'master'
...
usb: Run usb_host tests in CI
See merge request espressif/esp-idf!19468
2022-12-01 15:29:01 +08:00
Tomas Rezucha
a0ab65675a
Merge branch 'fix/usb/error_handling' into 'master'
...
USB Host: Invalid pointer hotfix
See merge request espressif/esp-idf!21325
2022-12-01 03:40:49 +08:00
Tomas Rezucha
0a7686d7d6
codeowners: Add USB codeowners to docs/usb
2022-11-30 18:48:31 +00:00
Tomas Rezucha
a0dacf826f
usb: Don't access uninit pointer if usbh_install fails
2022-11-30 18:48:31 +00:00
Tomas Rezucha
645592e157
usb: Refactor USB Host tests
...
* USB tests migrated to pytest
* Error messages improved
* Configurable for different mock devices
2022-11-30 18:12:54 +01:00
Tomas Rezucha
d861fdc947
Merge branch 'feature/move_tinyusb_to_pacman' into 'master'
...
tinyusb: Use TinyUSB from component registry
See merge request espressif/esp-idf!20677
2022-11-02 17:42:53 +08:00
Tomas Rezucha
94a00bda0f
tinyusb: Use TinyUSB from component registry
2022-11-02 08:24:43 +01:00
Tomas Rezucha
27078ac34c
usb_host: Fixed incorrect opening devices from multiple clients
...
1. During USBH device open both queues (idle and pending) must be checked.
2. Don't overwrite already allocated endpoints
2022-10-31 13:56:44 +08:00
Tomas Rezucha
446daa9865
Merge branch 'feature/usb/voltage_monitoring' into 'master'
...
tinyusb: Add voltage monitoring feature
Closes IDFGH-6065 and IDF-5229
See merge request espressif/esp-idf!20296
2022-10-18 22:41:24 +08:00
Tomas Rezucha
1410f5a798
tinyusb: Add VBUS voltage monitoring feature
...
VBUS voltage monitoring is mandated by USB specification for self-powered devices.
This implementation maps selected GPIO to bvalid signal of USB-OTG peripheral.
Closes https://github.com/espressif/esp-idf/issues/7747
2022-10-18 09:18:29 +02:00
Tomas Rezucha
dc705312a3
usb: Allow settings of all signals in usb_phy
...
Until now, only usb_phy signals for external PHY were defined.
This is now extended with all OTG signals.
2022-10-18 09:18:29 +02:00
Tomas Rezucha
cf59a8a2bd
Merge branch 'feature/usb_v5_qol' into 'master'
...
usb: USB IDF v5 update
Closes IDF-4690 and IDF-5767
See merge request espressif/esp-idf!19875
2022-09-08 19:50:22 +08:00
Tomas Rezucha
fac9579d95
usb_host: Use MSC driver from component registry
2022-09-05 20:14:57 +02:00
Tomas Rezucha
d95ba21328
usb_host: Use CDC driver from component registry
2022-09-05 20:14:56 +02:00
Tomas Rezucha
c6fbefcd84
usb_host: Remove custom test_app
2022-09-05 20:14:56 +02:00
Tomas Rezucha
dfdb814644
usb: Remove -Wno-format compile option
2022-09-05 20:14:56 +02:00
Tomas Rezucha
ba8ab09d55
usb: Bring USB Host API out of beta
2022-09-05 20:14:56 +02:00
Tomas Rezucha
71566c4d7e
Merge branch 'feature/usb_device/pytests' into 'master'
...
tinyusb: Add TinyUSB example tests
See merge request espressif/esp-idf!19194
2022-08-11 17:17:34 +08:00
Tomas Rezucha
d777b790d0
tinyusb: Add TinyUSB example tests
2022-08-10 14:51:18 +02:00
Tomas Rezucha
5bd6696557
Merge branch 'feature/usb_device/hid' into 'master'
...
usb: Add HID device example
Closes IDFGH-7637, IDFGH-5054, IDF-581, and IDFGH-6013
See merge request espressif/esp-idf!19177
2022-07-27 21:18:50 +08:00
Tomas Rezucha
45e8115dc6
usb: Add HID device example
...
Closes https://github.com/espressif/esp-idf/issues/6839
Closes https://github.com/espressif/esp-idf/issues/7700
2022-07-27 05:31:09 +00:00
Tomas Rezucha
e8d172eb87
Merge branch 'docs/esp_bsp' into 'master'
...
docs: Add information about BSPs
See merge request espressif/esp-idf!18096
2022-06-14 21:57:07 +08:00
Tomas Rezucha
11fd801ed9
docs: Add information about BSPs
2022-06-14 12:09:21 +02:00
Tomas Rezucha
6ba7b10302
Merge branch 'fix/usb/buffer_sizes' into 'master'
...
usb: TinyUSB buffer sizes
Closes IDFGH-7469
See merge request espressif/esp-idf!18359
2022-06-14 17:23:52 +08:00
Tomas Rezucha
5d202aa401
usb: Clean-up TinyUSB unnecessary code
2022-06-09 10:56:39 +02:00
Tomas Rezucha
d1d9b8f8f6
usb: Fixed RX buffer min size
...
Closes https://github.com/espressif/esp-idf/issues/9040
2022-06-09 10:56:39 +02:00
Tomas Rezucha
3b7018923e
Merge branch 'docs/i2c_thread_safety' into 'master'
...
docs: Fix I2C thread-safety
Closes IDF-5034
See merge request espressif/esp-idf!18172
2022-05-27 08:24:13 +08:00
Tomas Rezucha
b6771b7f83
docs: Fix I2C thread-safety
2022-05-25 07:22:02 +00:00
Tomas Rezucha
0a511e576e
Merge branch 'feature/remove_extra_components' into 'master'
...
examples: Use components from idf-extra-components repository
See merge request espressif/esp-idf!17992
2022-05-16 19:56:11 +08:00
Tomas Rezucha
4dde197cca
examples: Use components from idf-extra-components repository
2022-05-12 08:37:44 +00:00
Tomas Rezucha
9663a282b3
Merge branch 'feature/usb_host/cdc_custom_commands' into 'master'
...
usb_host: Add Virtual COM Port example
Closes IDF-4816, IDFGH-7027, and IDFGH-7159
See merge request espressif/esp-idf!17560
2022-04-24 20:41:51 +08:00
Tomas Rezucha
7fc0c14f4d
usb_host: Add Virtual COM Port CDC example
...
This example implements usual UART/USB convertor driver.
Closes https://github.com/espressif/esp-idf/issues/8645
2022-04-22 09:50:46 +02:00
Tomas Rezucha
880b5a4bef
usb_host: Unify CDC event callbacks
...
And return error code from C++ close method.
2022-04-22 09:50:46 +02:00
Tomas Rezucha
0428efa4ad
usb_host: Propagate new device connection to user
...
Closes https://github.com/espressif/esp-idf/issues/8762
2022-04-22 09:50:39 +02:00
Tomas Rezucha
0ab17ec695
usb_host: Enable custom CDC commands
...
This new API allows further extension for vendor specific commands
2022-04-22 09:50:38 +02:00
Tomas Rezucha
7db3d28187
Merge branch 'feature/usb_host/ci-tests' into 'master'
...
Run USB Host tests in pipeline
Closes IDF-4425
See merge request espressif/esp-idf!16376
2022-03-22 14:12:12 +08:00
Tomas Rezucha
7c2cf30109
usb_host: Update MSC test for fatfs 0.14b
2022-03-21 18:34:25 +01:00
Tomas Rezucha
3abeee00d0
usb_host: Pin test task to core 0
...
When we try to uninstall usb_host library on multi-core SoC (ESP32S3)
the USB interrupt can be triggered even after it was disabled on one CPU
2022-03-21 18:34:25 +01:00
Tomas Rezucha
9049230e4a
usb_host: Rename symbols that conflict with TinyUSB
2022-03-21 18:34:25 +01:00
Tomas Rezucha
e3ba980d11
usb_host: Use USB_Host library calls for desc printing
2022-03-21 18:34:25 +01:00
Tomas Rezucha
3074981dcb
usb_host: Update MSC tests for running in CI
2022-03-21 18:34:25 +01:00
Tomas Rezucha
0377fc8d92
tinyusb: Allow dynamic configuration descriptor
...
and remove ringbuf.h include from public headers
and unused HID descriptor code
2022-03-21 18:34:25 +01:00
Tomas Rezucha
6206302787
ci: Add USB Host CDC and MSC pytests to pipeline
2022-03-21 18:34:24 +01:00
Tomas Rezucha
7d950a63cc
usb_host: Add Mock device to CDC tests
2022-03-21 18:34:24 +01:00
Tomas Rezucha
913d53384f
usb_host: Update CDC tests for latest USB Host
2022-03-21 18:34:24 +01:00
Tomas Rezucha
f5f865df07
Merge branch 'fix/usb_host/cdc_build' into 'master'
...
usb_host: Don't build CDC host driver for unsupported targets
See merge request espressif/esp-idf!17517
2022-03-18 16:37:38 +08:00
Tomas Rezucha
68395c3617
usb: Codeowners for /examples/peripherals/usb/
2022-03-17 15:26:57 +01:00
Tomas Rezucha
c8fc4d226a
usb_host: Don't build CDC host driver for unsupported targets
2022-03-17 13:10:29 +01:00
Tomas Rezucha
af28416116
Merge branch 'feature/usb_device/multi_cdc' into 'master'
...
USB: Extend USB CDC device with second channel
See merge request espressif/esp-idf!16458
2022-01-05 09:53:04 +00: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
Tomas Rezucha
6e9229945a
Merge branch 'feature/usb_host/cdc_driver' into 'master'
...
USB: Add CDC-ACM subclass host driver
See merge request espressif/esp-idf!14515
2021-12-09 15:21:24 +00:00
Tomas Rezucha
dd1b698075
usb: Add USB host CDC-ACM class driver
2021-12-09 10:28:46 +01:00
Tomas Rezucha
ebaca79557
other: Move cbor, jsmn and libsodium to idf-component-manager
...
Marginal components are being carved out from esp-idf and moved to
https://github.com/espressif/idf-extra-components .
They are distributed via idf-component-manager, see
https://components.espressif.com .
2021-11-30 21:44:48 +01:00
Tomas Rezucha
75f3d76e26
Always use half-duplex for SPI
2021-09-22 15:03:35 +02:00
Tomas Rezucha
5fa9f30c8b
Set MADCTL register during initialization
2021-09-22 08:55:01 +02:00
Tomas Rezucha
57b243a699
Update Ubuntu to v20.04
2021-08-11 20:34:02 +08:00
Tomas Rezucha
1814a1d9f6
Add note about unit testing on Windows
2021-02-15 13:36:59 +01:00