feat(network): Update sta2eth example to esp_tinyusb v2.0.0

This commit is contained in:
Roman Leonov
2025-08-28 23:36:33 +02:00
parent e55b7fe2b5
commit 852ecc3338
3 changed files with 7 additions and 17 deletions

View File

@@ -1,7 +1,7 @@
## IDF Component Manager Manifest File ## IDF Component Manager Manifest File
dependencies: dependencies:
espressif/esp_tinyusb: espressif/esp_tinyusb:
version: "^1.3.0" version: "^2.0.0"
rules: rules:
- if: "idf_version >=4.4" - if: "idf_version >=4.4"
- if: "target in [esp32s2, esp32s3]" - if: "target in [esp32s2, esp32s3]"

View File

@@ -1,5 +1,5 @@
/* /*
* SPDX-FileCopyrightText: 2023 Espressif Systems (Shanghai) CO LTD * SPDX-FileCopyrightText: 2023-2025 Espressif Systems (Shanghai) CO LTD
* *
* SPDX-License-Identifier: Unlicense OR CC0-1.0 * SPDX-License-Identifier: Unlicense OR CC0-1.0
*/ */
@@ -12,6 +12,7 @@
#include "esp_netif.h" #include "esp_netif.h"
#include "esp_event.h" #include "esp_event.h"
#include "tinyusb.h" #include "tinyusb.h"
#include "tinyusb_default_config.h"
#include "tinyusb_net.h" #include "tinyusb_net.h"
#include "wired_iface.h" #include "wired_iface.h"
#include "dhcpserver/dhcpserver_options.h" #include "dhcpserver/dhcpserver_options.h"
@@ -44,9 +45,7 @@ void mac_spoof(mac_spoof_direction_t direction, uint8_t *buffer, uint16_t len, u
esp_err_t wired_bridge_init(wired_rx_cb_t rx_cb, wired_free_cb_t free_cb) esp_err_t wired_bridge_init(wired_rx_cb_t rx_cb, wired_free_cb_t free_cb)
{ {
const tinyusb_config_t tusb_cfg = { const tinyusb_config_t tusb_cfg = TINYUSB_DEFAULT_CONFIG();
.external_phy = false,
};
ESP_ERROR_CHECK(tinyusb_driver_install(&tusb_cfg)); ESP_ERROR_CHECK(tinyusb_driver_install(&tusb_cfg));
tinyusb_net_config_t net_config = { tinyusb_net_config_t net_config = {
@@ -56,7 +55,7 @@ esp_err_t wired_bridge_init(wired_rx_cb_t rx_cb, wired_free_cb_t free_cb)
esp_read_mac(net_config.mac_addr, ESP_MAC_WIFI_STA); esp_read_mac(net_config.mac_addr, ESP_MAC_WIFI_STA);
esp_err_t ret = tinyusb_net_init(TINYUSB_USBDEV_0, &net_config); esp_err_t ret = tinyusb_net_init(&net_config);
if (ret != ESP_OK) { if (ret != ESP_OK) {
ESP_LOGE(TAG, "USB net init but not connect wifi"); ESP_LOGE(TAG, "USB net init but not connect wifi");
return ret; return ret;
@@ -113,9 +112,7 @@ static esp_err_t netif_recv_callback(void *buffer, uint16_t len, void *ctx)
*/ */
esp_err_t wired_netif_init(void) esp_err_t wired_netif_init(void)
{ {
const tinyusb_config_t tusb_cfg = { const tinyusb_config_t tusb_cfg = TINYUSB_DEFAULT_CONFIG();
.external_phy = false,
};
ESP_ERROR_CHECK(tinyusb_driver_install(&tusb_cfg)); ESP_ERROR_CHECK(tinyusb_driver_install(&tusb_cfg));
const tinyusb_net_config_t net_config = { const tinyusb_net_config_t net_config = {
@@ -125,7 +122,7 @@ esp_err_t wired_netif_init(void)
.on_recv_callback = netif_recv_callback, .on_recv_callback = netif_recv_callback,
}; };
esp_err_t ret = tinyusb_net_init(TINYUSB_USBDEV_0, &net_config); esp_err_t ret = tinyusb_net_init(&net_config);
if (ret != ESP_OK) { if (ret != ESP_OK) {
ESP_LOGE(TAG, "Cannot initialize USB Net device"); ESP_LOGE(TAG, "Cannot initialize USB Net device");
return ret; return ret;

View File

@@ -1,11 +1,4 @@
# ESP32S3 has USB-OTG, let's prefer virtual Ethernet (USB-NCM device) # ESP32S3 has USB-OTG, let's prefer virtual Ethernet (USB-NCM device)
CONFIG_EXAMPLE_WIRED_INTERFACE_IS_USB=y CONFIG_EXAMPLE_WIRED_INTERFACE_IS_USB=y
CONFIG_EXAMPLE_WIRED_INTERFACE_IS_ETHERNET=n CONFIG_EXAMPLE_WIRED_INTERFACE_IS_ETHERNET=n
# TinyUSB needs to be initialized and run from one core
# that's why we pin the task to CPU0 and init tusb in the task
# on dual core devices (ESP32S3)
CONFIG_TINYUSB_TASK_AFFINITY_CPU0=y
CONFIG_TINYUSB_INIT_IN_DEFAULT_TASK=y
CONFIG_TINYUSB_NET_MODE_NCM=y CONFIG_TINYUSB_NET_MODE_NCM=y