CLSH1001-Firmware/managed_components/espressif__tinyusb
2024-03-05 16:09:49 -06:00
..
.codespell first-commit 2024-03-05 16:09:49 -06:00
examples first-commit 2024-03-05 16:09:49 -06:00
hw first-commit 2024-03-05 16:09:49 -06:00
lib/networking first-commit 2024-03-05 16:09:49 -06:00
src first-commit 2024-03-05 16:09:49 -06:00
test first-commit 2024-03-05 16:09:49 -06:00
.codespellrc first-commit 2024-03-05 16:09:49 -06:00
.component_hash first-commit 2024-03-05 16:09:49 -06:00
.gitattributes first-commit 2024-03-05 16:09:49 -06:00
.gitignore first-commit 2024-03-05 16:09:49 -06:00
.pre-commit-config.yaml first-commit 2024-03-05 16:09:49 -06:00
.readthedocs.yaml first-commit 2024-03-05 16:09:49 -06:00
CMakeLists.txt first-commit 2024-03-05 16:09:49 -06:00
CODE_OF_CONDUCT.rst first-commit 2024-03-05 16:09:49 -06:00
CONTRIBUTORS.rst first-commit 2024-03-05 16:09:49 -06:00
idf_component.yml first-commit 2024-03-05 16:09:49 -06:00
LICENSE first-commit 2024-03-05 16:09:49 -06:00
pkg.yml first-commit 2024-03-05 16:09:49 -06:00
README.md first-commit 2024-03-05 16:09:49 -06:00
README.rst first-commit 2024-03-05 16:09:49 -06:00
repository.yml first-commit 2024-03-05 16:09:49 -06:00
sbom.yml first-commit 2024-03-05 16:09:49 -06:00
version.yml first-commit 2024-03-05 16:09:49 -06:00

Espressif TinyUSB fork

This is a fork of upstream TinyUSB with integration into ESP-IDF build system. It is used mostly for rapid bugfixing and for releases independent from the upstream project. We try to push all bugfixes and features to the upstream.

How to use

There are two options of using TinyUSB with Espressif's SoCs.

1. Use this component together with Espressif TinyUSB additions

This is identical approach as in ESP-IDF 4.x releases. You can configure TinyUSB using Kconfig, as usual. Just add idf_component.yml to your main component with the following content::

## IDF Component Manager Manifest File
dependencies:
  esp_tinyusb: "^1.0.0" # Automatically update minor releases

Or simply run:

idf.py add-dependency "esp_tinyusb^1.0.0"

2. Use TinyUSB only, without the additions

Use this option for custom TinyUSB applications. In this case you will have to provide configuration header file tusb_config.h. More information about TinyUSB configuration can be found in official TinyUSB documentation.

You will also have to tell TinyUSB where to find the configuration file. This can be achieved by adding following CMake snippet to you main component's CMakeLists.txt:

idf_component_get_property(tusb_lib espressif__tinyusb COMPONENT_LIB)
target_include_directories(${tusb_lib} PRIVATE path_to_your_tusb_config)

Again, you can add this component to your project by adding idf_component.yml file:

## IDF Component Manager Manifest File
dependencies:
  tinyusb: "~0.15.1" # Automatically update bugfix releases. TinyUSB does not guarantee backward compatibility

Or simply run:

idf.py add-dependency "tinyusb~0.15.1"

README from the upstream TinyUSB can be found in hathach/tinyusb/README.