From dc705312a3fc04e15d11257661271c491ce01bbe Mon Sep 17 00:00:00 2001 From: Tomas Rezucha Date: Thu, 6 Oct 2022 09:04:53 +0200 Subject: [PATCH 1/2] 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. --- components/soc/esp32s2/CMakeLists.txt | 2 +- components/soc/esp32s2/usb_otg_periph.c | 34 ++++++++++ components/soc/esp32s2/usb_phy_periph.c | 23 ------- components/soc/esp32s3/CMakeLists.txt | 2 +- components/soc/esp32s3/usb_otg_periph.c | 34 ++++++++++ components/soc/esp32s3/usb_phy_periph.c | 23 ------- .../{usb_phy_periph.h => usb_otg_periph.h} | 13 +++- components/tinyusb/additions/src/tinyusb.c | 4 +- components/usb/include/esp_private/usb_phy.h | 50 ++++++++++++-- components/usb/test/common/test_usb_common.c | 3 +- components/usb/usb_host.c | 3 +- components/usb/usb_phy.c | 66 +++++++++++++------ 12 files changed, 177 insertions(+), 80 deletions(-) create mode 100644 components/soc/esp32s2/usb_otg_periph.c delete mode 100644 components/soc/esp32s2/usb_phy_periph.c create mode 100644 components/soc/esp32s3/usb_otg_periph.c delete mode 100644 components/soc/esp32s3/usb_phy_periph.c rename components/soc/include/soc/{usb_phy_periph.h => usb_otg_periph.h} (60%) diff --git a/components/soc/esp32s2/CMakeLists.txt b/components/soc/esp32s2/CMakeLists.txt index 591ab340d1..5f51433981 100644 --- a/components/soc/esp32s2/CMakeLists.txt +++ b/components/soc/esp32s2/CMakeLists.txt @@ -18,7 +18,7 @@ set(srcs "uart_periph.c" "usb_periph.c" "temperature_sensor_periph.c" - "usb_phy_periph.c") + "usb_otg_periph.c") add_prefix(srcs "${CMAKE_CURRENT_LIST_DIR}/" "${srcs}") diff --git a/components/soc/esp32s2/usb_otg_periph.c b/components/soc/esp32s2/usb_otg_periph.c new file mode 100644 index 0000000000..e2f96e23b6 --- /dev/null +++ b/components/soc/esp32s2/usb_otg_periph.c @@ -0,0 +1,34 @@ +/* + * SPDX-FileCopyrightText: 2015-2021 Espressif Systems (Shanghai) CO LTD + * + * SPDX-License-Identifier: Apache-2.0 + */ + +#include "soc/usb_otg_periph.h" +#include "soc/gpio_sig_map.h" + +/* + Bunch of constants for USB peripheral: GPIO signals +*/ +const usb_phy_signal_conn_t usb_otg_periph_signal = { + .extphy_vp_in = USB_EXTPHY_VP_IDX, + .extphy_vm_in = USB_EXTPHY_VM_IDX, + .extphy_rcv_in = USB_EXTPHY_RCV_IDX, + .extphy_oen_out = USB_EXTPHY_OEN_IDX, + .extphy_vpo_out = USB_EXTPHY_VPO_IDX, + .extphy_vmo_out = USB_EXTPHY_VMO_IDX, + .extphy_suspend_in = USB_EXTPHY_SUSPND_IDX, + .extphy_speed_in = USB_EXTPHY_SPEED_IDX, + .srp_bvalid_in = USB_SRP_BVALID_IN_IDX, + .srp_sessend_in = USB_SRP_SESSEND_IN_IDX, + .srp_chrgvbus_out = USB_SRP_CHRGVBUS_IDX, + .srp_dischrgvbus_out = USB_SRP_DISCHRGVBUS_IDX, + .otg_iddig_in = USB_OTG_IDDIG_IN_IDX, + .otg_avalid_in = USB_OTG_AVALID_IN_IDX, + .otg_vbusvalid_in = USB_OTG_VBUSVALID_IN_IDX, + .otg_idpullup_out = USB_OTG_IDPULLUP_IDX, + .otg_dppulldown_out = USB_OTG_DPPULLDOWN_IDX, + .otg_dmpulldown_out = USB_OTG_DMPULLDOWN_IDX, + .otg_drvvbus_out = USB_OTG_DRVVBUS_IDX, + .module = PERIPH_USB_MODULE +}; diff --git a/components/soc/esp32s2/usb_phy_periph.c b/components/soc/esp32s2/usb_phy_periph.c deleted file mode 100644 index 596db0417c..0000000000 --- a/components/soc/esp32s2/usb_phy_periph.c +++ /dev/null @@ -1,23 +0,0 @@ -/* - * SPDX-FileCopyrightText: 2015-2021 Espressif Systems (Shanghai) CO LTD - * - * SPDX-License-Identifier: Apache-2.0 - */ - -#include "soc/usb_phy_periph.h" -#include "soc/gpio_sig_map.h" - -/* - Bunch of constants for USB peripheral: GPIO signals -*/ -const usb_phy_signal_conn_t usb_phy_periph_signal = { - .extphy_vp_in = USB_EXTPHY_VP_IDX, - .extphy_vm_in = USB_EXTPHY_VM_IDX, - .extphy_rcv_in = USB_EXTPHY_RCV_IDX, - .extphy_oen_out = USB_EXTPHY_OEN_IDX, - .extphy_vpo_out = USB_EXTPHY_VPO_IDX, - .extphy_vmo_out = USB_EXTPHY_VMO_IDX, - .extphy_suspend_in = USB_EXTPHY_SUSPND_IDX, - .extphy_speed_in = USB_EXTPHY_SPEED_IDX, - .module = PERIPH_USB_MODULE -}; diff --git a/components/soc/esp32s3/CMakeLists.txt b/components/soc/esp32s3/CMakeLists.txt index ada8caba2e..e2d20fb00b 100644 --- a/components/soc/esp32s3/CMakeLists.txt +++ b/components/soc/esp32s3/CMakeLists.txt @@ -21,7 +21,7 @@ set(srcs "temperature_sensor_periph.c" "uart_periph.c" "usb_periph.c" - "usb_phy_periph.c") + "usb_otg_periph.c") add_prefix(srcs "${CMAKE_CURRENT_LIST_DIR}/" "${srcs}") diff --git a/components/soc/esp32s3/usb_otg_periph.c b/components/soc/esp32s3/usb_otg_periph.c new file mode 100644 index 0000000000..e2f96e23b6 --- /dev/null +++ b/components/soc/esp32s3/usb_otg_periph.c @@ -0,0 +1,34 @@ +/* + * SPDX-FileCopyrightText: 2015-2021 Espressif Systems (Shanghai) CO LTD + * + * SPDX-License-Identifier: Apache-2.0 + */ + +#include "soc/usb_otg_periph.h" +#include "soc/gpio_sig_map.h" + +/* + Bunch of constants for USB peripheral: GPIO signals +*/ +const usb_phy_signal_conn_t usb_otg_periph_signal = { + .extphy_vp_in = USB_EXTPHY_VP_IDX, + .extphy_vm_in = USB_EXTPHY_VM_IDX, + .extphy_rcv_in = USB_EXTPHY_RCV_IDX, + .extphy_oen_out = USB_EXTPHY_OEN_IDX, + .extphy_vpo_out = USB_EXTPHY_VPO_IDX, + .extphy_vmo_out = USB_EXTPHY_VMO_IDX, + .extphy_suspend_in = USB_EXTPHY_SUSPND_IDX, + .extphy_speed_in = USB_EXTPHY_SPEED_IDX, + .srp_bvalid_in = USB_SRP_BVALID_IN_IDX, + .srp_sessend_in = USB_SRP_SESSEND_IN_IDX, + .srp_chrgvbus_out = USB_SRP_CHRGVBUS_IDX, + .srp_dischrgvbus_out = USB_SRP_DISCHRGVBUS_IDX, + .otg_iddig_in = USB_OTG_IDDIG_IN_IDX, + .otg_avalid_in = USB_OTG_AVALID_IN_IDX, + .otg_vbusvalid_in = USB_OTG_VBUSVALID_IN_IDX, + .otg_idpullup_out = USB_OTG_IDPULLUP_IDX, + .otg_dppulldown_out = USB_OTG_DPPULLDOWN_IDX, + .otg_dmpulldown_out = USB_OTG_DMPULLDOWN_IDX, + .otg_drvvbus_out = USB_OTG_DRVVBUS_IDX, + .module = PERIPH_USB_MODULE +}; diff --git a/components/soc/esp32s3/usb_phy_periph.c b/components/soc/esp32s3/usb_phy_periph.c deleted file mode 100644 index 596db0417c..0000000000 --- a/components/soc/esp32s3/usb_phy_periph.c +++ /dev/null @@ -1,23 +0,0 @@ -/* - * SPDX-FileCopyrightText: 2015-2021 Espressif Systems (Shanghai) CO LTD - * - * SPDX-License-Identifier: Apache-2.0 - */ - -#include "soc/usb_phy_periph.h" -#include "soc/gpio_sig_map.h" - -/* - Bunch of constants for USB peripheral: GPIO signals -*/ -const usb_phy_signal_conn_t usb_phy_periph_signal = { - .extphy_vp_in = USB_EXTPHY_VP_IDX, - .extphy_vm_in = USB_EXTPHY_VM_IDX, - .extphy_rcv_in = USB_EXTPHY_RCV_IDX, - .extphy_oen_out = USB_EXTPHY_OEN_IDX, - .extphy_vpo_out = USB_EXTPHY_VPO_IDX, - .extphy_vmo_out = USB_EXTPHY_VMO_IDX, - .extphy_suspend_in = USB_EXTPHY_SUSPND_IDX, - .extphy_speed_in = USB_EXTPHY_SPEED_IDX, - .module = PERIPH_USB_MODULE -}; diff --git a/components/soc/include/soc/usb_phy_periph.h b/components/soc/include/soc/usb_otg_periph.h similarity index 60% rename from components/soc/include/soc/usb_phy_periph.h rename to components/soc/include/soc/usb_otg_periph.h index 802d1720ce..d13286aa1d 100644 --- a/components/soc/include/soc/usb_phy_periph.h +++ b/components/soc/include/soc/usb_otg_periph.h @@ -25,10 +25,21 @@ typedef struct { const uint8_t extphy_vmo_out; const uint8_t extphy_suspend_in; const uint8_t extphy_speed_in; + const uint8_t srp_bvalid_in; + const uint8_t srp_sessend_in; + const uint8_t srp_chrgvbus_out; + const uint8_t srp_dischrgvbus_out; + const uint8_t otg_iddig_in; + const uint8_t otg_avalid_in; + const uint8_t otg_vbusvalid_in; + const uint8_t otg_idpullup_out; + const uint8_t otg_dppulldown_out; + const uint8_t otg_dmpulldown_out; + const uint8_t otg_drvvbus_out; const periph_module_t module; } usb_phy_signal_conn_t; -extern const usb_phy_signal_conn_t usb_phy_periph_signal; +extern const usb_phy_signal_conn_t usb_otg_periph_signal; #ifdef __cplusplus } diff --git a/components/tinyusb/additions/src/tinyusb.c b/components/tinyusb/additions/src/tinyusb.c index 3045ec0aef..8e6473554d 100644 --- a/components/tinyusb/additions/src/tinyusb.c +++ b/components/tinyusb/additions/src/tinyusb.c @@ -32,7 +32,7 @@ esp_err_t tinyusb_driver_install(const tinyusb_config_t *config) .controller = USB_PHY_CTRL_OTG, .otg_mode = USB_OTG_MODE_DEVICE, }; - usb_phy_gpio_conf_t gpio_conf = { + usb_phy_ext_io_conf_t ext_io_conf = { .vp_io_num = USBPHY_VP_NUM, .vm_io_num = USBPHY_VM_NUM, .rcv_io_num = USBPHY_RCV_NUM, @@ -42,7 +42,7 @@ esp_err_t tinyusb_driver_install(const tinyusb_config_t *config) }; if (config->external_phy) { phy_conf.target = USB_PHY_TARGET_EXT; - phy_conf.gpio_conf = &gpio_conf; + phy_conf.ext_io_conf = &ext_io_conf; } else { phy_conf.target = USB_PHY_TARGET_INT; } diff --git a/components/usb/include/esp_private/usb_phy.h b/components/usb/include/esp_private/usb_phy.h index 5260e0589e..7848e7cdba 100644 --- a/components/usb/include/esp_private/usb_phy.h +++ b/components/usb/include/esp_private/usb_phy.h @@ -15,6 +15,24 @@ extern "C" { #endif +/** + * @brief Initialization for usb_phy_otg_io_conf_t: Self-powered device + */ +#define USB_PHY_SELF_POWERED_DEVICE(vbus_monitor_io) \ + { \ + .iddig_io_num = -1, \ + .avalid_io_num = -1, \ + .vbusvalid_io_num = -1, \ + .idpullup_io_num = -1, \ + .dppulldown_io_num = -1, \ + .dmpulldown_io_num = -1, \ + .drvvbus_io_num = -1, \ + .bvalid_io_num = vbus_monitor_io, \ + .sessend_io_num = -1, \ + .chrgvbus_io_num = -1, \ + .dischrgvbus_io_num = -1, \ + }; + /** * @brief USB PHY status */ @@ -33,7 +51,7 @@ typedef enum { } usb_phy_action_t; /** - * @brief USB external PHY iopins configure struct + * @brief USB external PHY IO pins configuration structure */ typedef struct { int vp_io_num; /**< GPIO pin to USB_EXTPHY_VP_IDX */ @@ -42,7 +60,24 @@ typedef struct { int oen_io_num; /**< GPIO pin to USB_EXTPHY_OEN_IDX */ int vpo_io_num; /**< GPIO pin to USB_EXTPHY_VPO_IDX */ int vmo_io_num; /**< GPIO pin to USB_EXTPHY_VMO_IDX */ -} usb_phy_gpio_conf_t; +} usb_phy_ext_io_conf_t; + +/** + * @brief USB OTG IO pins configuration structure + */ +typedef struct { + int iddig_io_num; /**< GPIO pin to USB_OTG_IDDIG_IN_IDX */ + int avalid_io_num; /**< GPIO pin to USB_OTG_AVALID_IN_IDX */ + int vbusvalid_io_num; /**< GPIO pin to USB_OTG_VBUSVALID_IN_IDX */ + int idpullup_io_num; /**< GPIO pin to USB_OTG_IDPULLUP_IDX */ + int dppulldown_io_num; /**< GPIO pin to USB_OTG_DPPULLDOWN_IDX */ + int dmpulldown_io_num; /**< GPIO pin to USB_OTG_DMPULLDOWN_IDX */ + int drvvbus_io_num; /**< GPIO pin to USB_OTG_DRVVBUS_IDX */ + int bvalid_io_num; /**< GPIO pin to USB_SRP_BVALID_IN_IDX */ + int sessend_io_num; /**< GPIO pin to USB_SRP_SESSEND_IN_IDX */ + int chrgvbus_io_num; /**< GPIO pin to USB_SRP_CHRGVBUS_IDX */ + int dischrgvbus_io_num; /**< GPIO pin to USB_SRP_DISCHRGVBUS_IDX */ +} usb_phy_otg_io_conf_t; /** * @brief USB PHY configure struct @@ -50,11 +85,12 @@ typedef struct { * At minimum the PHY controller and PHY target must be initialized. */ typedef struct { - usb_phy_controller_t controller; /**< USB PHY controller */ - usb_phy_target_t target; /**< USB PHY target INT/EXT */ - usb_otg_mode_t otg_mode; /**< USB OTG mode */ - usb_phy_speed_t otg_speed; /**< USB OTG speed */ - usb_phy_gpio_conf_t *gpio_conf; /**< USB external PHY iopins configure */ + usb_phy_controller_t controller; /**< USB PHY controller */ + usb_phy_target_t target; /**< USB PHY target INT/EXT */ + usb_otg_mode_t otg_mode; /**< USB OTG mode */ + usb_phy_speed_t otg_speed; /**< USB OTG speed */ + const usb_phy_ext_io_conf_t *ext_io_conf; /**< USB external PHY IO pins configuration */ + const usb_phy_otg_io_conf_t *otg_io_conf; /**< USB OTG IO pins configuration */ } usb_phy_config_t; typedef struct phy_context_t *usb_phy_handle_t; /**< USB PHY context handle */ diff --git a/components/usb/test/common/test_usb_common.c b/components/usb/test/common/test_usb_common.c index c9855ace11..bc9e32d3c9 100644 --- a/components/usb/test/common/test_usb_common.c +++ b/components/usb/test/common/test_usb_common.c @@ -22,7 +22,8 @@ void test_usb_init_phy(void) .target = USB_PHY_TARGET_INT, .otg_mode = USB_OTG_MODE_HOST, .otg_speed = USB_PHY_SPEED_UNDEFINED, //In Host mode, the speed is determined by the connected device - .gpio_conf = NULL, + .ext_io_conf = NULL, + .otg_io_conf = NULL, }; ESP_ERROR_CHECK(usb_new_phy(&phy_config, &phy_hdl)); } diff --git a/components/usb/usb_host.c b/components/usb/usb_host.c index b4ced72a54..2c8531e7c2 100644 --- a/components/usb/usb_host.c +++ b/components/usb/usb_host.c @@ -384,7 +384,8 @@ esp_err_t usb_host_install(const usb_host_config_t *config) .target = USB_PHY_TARGET_INT, .otg_mode = USB_OTG_MODE_HOST, .otg_speed = USB_PHY_SPEED_UNDEFINED, //In Host mode, the speed is determined by the connected device - .gpio_conf = NULL, + .ext_io_conf = NULL, + .otg_io_conf = NULL, }; ret = usb_new_phy(&phy_config, &host_lib_obj->constant.phy_handle); if (ret != ESP_OK) { diff --git a/components/usb/usb_phy.c b/components/usb/usb_phy.c index 0df895e977..a16a7dde9c 100644 --- a/components/usb/usb_phy.c +++ b/components/usb/usb_phy.c @@ -11,7 +11,7 @@ #include "esp_check.h" #include "esp_private/periph_ctrl.h" #include "esp_private/usb_phy.h" -#include "soc/usb_phy_periph.h" +#include "soc/usb_otg_periph.h" #include "hal/usb_phy_hal.h" #include "hal/usb_phy_ll.h" #include "esp_rom_gpio.h" @@ -31,7 +31,7 @@ struct phy_context_t { usb_phy_status_t status; /**< PHY status */ usb_otg_mode_t otg_mode; /**< USB OTG mode */ usb_phy_speed_t otg_speed; /**< USB speed */ - usb_phy_gpio_conf_t *iopins; /**< external PHY I/O pins */ + usb_phy_ext_io_conf_t *iopins; /**< external PHY I/O pins */ usb_phy_hal_context_t hal_context; /**< USB_PHY hal context */ }; @@ -53,20 +53,11 @@ typedef struct { static phy_ctrl_obj_t *p_phy_ctrl_obj = NULL; static portMUX_TYPE phy_spinlock = portMUX_INITIALIZER_UNLOCKED; -static esp_err_t phy_external_iopins_configure(usb_phy_gpio_conf_t *gpio_conf) +static esp_err_t phy_iopins_configure(const usb_iopin_dsc_t *usb_periph_iopins, int iopins_num) { - const usb_iopin_dsc_t usb_periph_iopins[] = { - {gpio_conf->vp_io_num, usb_phy_periph_signal.extphy_vp_in, 0}, - {gpio_conf->vm_io_num, usb_phy_periph_signal.extphy_vm_in, 0}, - {gpio_conf->rcv_io_num, usb_phy_periph_signal.extphy_rcv_in, 0}, - {gpio_conf->oen_io_num, usb_phy_periph_signal.extphy_oen_out, 1}, - {gpio_conf->vpo_io_num, usb_phy_periph_signal.extphy_vpo_out, 1}, - {gpio_conf->vmo_io_num, usb_phy_periph_signal.extphy_vmo_out, 1}, - }; - - for (int i = 0; i < sizeof(usb_periph_iopins)/sizeof(usb_iopin_dsc_t); i++) { + for (int i = 0; i < iopins_num; i++) { const usb_iopin_dsc_t iopin = usb_periph_iopins[i]; - if (iopin.pin != -1) { + if (iopin.pin != GPIO_NUM_NC) { ESP_RETURN_ON_FALSE((iopin.is_output && GPIO_IS_VALID_OUTPUT_GPIO(iopin.pin)) || (!iopin.is_output && GPIO_IS_VALID_GPIO(iopin.pin)), ESP_ERR_INVALID_ARG, USBPHY_TAG, "io_num argument is invalid"); @@ -83,6 +74,38 @@ static esp_err_t phy_external_iopins_configure(usb_phy_gpio_conf_t *gpio_conf) return ESP_OK; } +static esp_err_t phy_external_iopins_configure(const usb_phy_ext_io_conf_t *ext_io_conf) +{ + const usb_iopin_dsc_t usb_periph_iopins[] = { + {ext_io_conf->vp_io_num, usb_otg_periph_signal.extphy_vp_in, false}, + {ext_io_conf->vm_io_num, usb_otg_periph_signal.extphy_vm_in, false}, + {ext_io_conf->rcv_io_num, usb_otg_periph_signal.extphy_rcv_in, false}, + {ext_io_conf->oen_io_num, usb_otg_periph_signal.extphy_oen_out, true}, + {ext_io_conf->vpo_io_num, usb_otg_periph_signal.extphy_vpo_out, true}, + {ext_io_conf->vmo_io_num, usb_otg_periph_signal.extphy_vmo_out, true}, + }; + + return phy_iopins_configure(usb_periph_iopins, sizeof(usb_periph_iopins)/sizeof(usb_iopin_dsc_t)); +} + +static esp_err_t phy_otg_iopins_configure(const usb_phy_otg_io_conf_t *otg_io_conf) +{ + const usb_iopin_dsc_t usb_periph_iopins[] = { + {otg_io_conf->iddig_io_num, usb_otg_periph_signal.otg_iddig_in, false}, + {otg_io_conf->avalid_io_num, usb_otg_periph_signal.otg_avalid_in, false}, + {otg_io_conf->vbusvalid_io_num, usb_otg_periph_signal.otg_vbusvalid_in, false}, + {otg_io_conf->idpullup_io_num, usb_otg_periph_signal.otg_idpullup_out, true}, + {otg_io_conf->dppulldown_io_num, usb_otg_periph_signal.otg_dppulldown_out, true}, + {otg_io_conf->dmpulldown_io_num, usb_otg_periph_signal.otg_dmpulldown_out, true}, + {otg_io_conf->drvvbus_io_num, usb_otg_periph_signal.otg_drvvbus_out, true}, + {otg_io_conf->bvalid_io_num, usb_otg_periph_signal.srp_bvalid_in, false}, + {otg_io_conf->sessend_io_num, usb_otg_periph_signal.srp_sessend_in, false}, + {otg_io_conf->chrgvbus_io_num, usb_otg_periph_signal.srp_chrgvbus_out, true}, + {otg_io_conf->dischrgvbus_io_num, usb_otg_periph_signal.srp_dischrgvbus_out, true}, + }; + return phy_iopins_configure(usb_periph_iopins, sizeof(usb_periph_iopins)/sizeof(usb_iopin_dsc_t)); +} + esp_err_t usb_phy_otg_set_mode(usb_phy_handle_t handle, usb_otg_mode_t mode) { ESP_RETURN_ON_FALSE(handle, ESP_ERR_INVALID_ARG, USBPHY_TAG, "handle argument is invalid"); @@ -197,8 +220,8 @@ static esp_err_t usb_phy_install(void) goto cleanup; } portEXIT_CRITICAL(&phy_spinlock); - periph_module_enable(usb_phy_periph_signal.module); - periph_module_reset(usb_phy_periph_signal.module); + periph_module_enable(usb_otg_periph_signal.module); + periph_module_reset(usb_otg_periph_signal.module); return ESP_OK; cleanup: @@ -254,10 +277,10 @@ esp_err_t usb_new_phy(const usb_phy_config_t *config, usb_phy_handle_t *handle_r } *handle_ret = (usb_phy_handle_t) phy_context; - if (config->gpio_conf && config->target == USB_PHY_TARGET_EXT) { - phy_context->iopins = (usb_phy_gpio_conf_t *) calloc(1, sizeof(usb_phy_gpio_conf_t)); + if (config->ext_io_conf && config->target == USB_PHY_TARGET_EXT) { + phy_context->iopins = (usb_phy_ext_io_conf_t *) calloc(1, sizeof(usb_phy_ext_io_conf_t)); ESP_GOTO_ON_FALSE(phy_context->iopins, ESP_ERR_NO_MEM, cleanup, USBPHY_TAG, "no mem for storing I/O pins"); - memcpy(phy_context->iopins, config->gpio_conf, sizeof(usb_phy_gpio_conf_t)); + memcpy(phy_context->iopins, config->ext_io_conf, sizeof(usb_phy_ext_io_conf_t)); ESP_ERROR_CHECK(phy_external_iopins_configure(phy_context->iopins)); } if (config->otg_mode != USB_PHY_MODE_DEFAULT) { @@ -266,6 +289,9 @@ esp_err_t usb_new_phy(const usb_phy_config_t *config, usb_phy_handle_t *handle_r if (config->otg_speed != USB_PHY_SPEED_UNDEFINED) { ESP_ERROR_CHECK(usb_phy_otg_dev_set_speed(*handle_ret, config->otg_speed)); } + if (config->otg_io_conf && (phy_context->controller == USB_PHY_CTRL_OTG)) { + ESP_ERROR_CHECK(phy_otg_iopins_configure(config->otg_io_conf)); + } return ESP_OK; cleanup: @@ -286,7 +312,7 @@ static void phy_uninstall(void) p_phy_ctrl_obj_free = p_phy_ctrl_obj; p_phy_ctrl_obj = NULL; // Disable USB peripheral - periph_module_disable(usb_phy_periph_signal.module); + periph_module_disable(usb_otg_periph_signal.module); } portEXIT_CRITICAL(&phy_spinlock); free(p_phy_ctrl_obj_free); From 1410f5a79828dfef8c1c516a7f9efb19f29578cb Mon Sep 17 00:00:00 2001 From: Tomas Rezucha Date: Thu, 22 Sep 2022 12:33:33 +0200 Subject: [PATCH 2/2] 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 --- .../tinyusb/additions/include/tinyusb.h | 9 ++++- components/tinyusb/additions/src/tinyusb.c | 8 +++++ .../diagrams/usb/usb_vbus_voltage_monitor.png | Bin 0 -> 5528 bytes docs/_static/usb-board-connection.png | Bin 95347 -> 94085 bytes .../api-reference/peripherals/usb_device.rst | 34 ++++++++++++------ 5 files changed, 40 insertions(+), 11 deletions(-) create mode 100644 docs/_static/diagrams/usb/usb_vbus_voltage_monitor.png diff --git a/components/tinyusb/additions/include/tinyusb.h b/components/tinyusb/additions/include/tinyusb.h index f0832c2996..255cf3bed7 100644 --- a/components/tinyusb/additions/include/tinyusb.h +++ b/components/tinyusb/additions/include/tinyusb.h @@ -19,7 +19,12 @@ extern "C" { #endif /** - * @brief Configuration structure of the tinyUSB core + * @brief Configuration structure of the TinyUSB core + * + * USB specification mandates self-powered devices to monitor USB VBUS to detect connection/disconnection events. + * If you want to use this feature, connected VBUS to any free GPIO through a voltage divider or voltage comparator. + * The voltage divider output should be (0.75 * Vdd) if VBUS is 4.4V (lowest valid voltage at device port). + * The comparator thresholds should be set with hysteresis: 4.35V (falling edge) and 4.75V (raising edge). */ typedef struct { union { @@ -29,6 +34,8 @@ typedef struct { const char **string_descriptor; /*!< Pointer to an array of string descriptors */ bool external_phy; /*!< Should USB use an external PHY */ const uint8_t *configuration_descriptor; /*!< Pointer to a configuration descriptor. If set to NULL, TinyUSB device will use a default configuration descriptor whose values are set in Kconfig */ + bool self_powered; /*!< This is a self-powered USB device. USB VBUS must be monitored. */ + int vbus_monitor_io; /*!< GPIO for VBUS monitoring. Ignored if not self_powered. */ } tinyusb_config_t; /** diff --git a/components/tinyusb/additions/src/tinyusb.c b/components/tinyusb/additions/src/tinyusb.c index 8e6473554d..d1f0dc1349 100644 --- a/components/tinyusb/additions/src/tinyusb.c +++ b/components/tinyusb/additions/src/tinyusb.c @@ -32,6 +32,8 @@ esp_err_t tinyusb_driver_install(const tinyusb_config_t *config) .controller = USB_PHY_CTRL_OTG, .otg_mode = USB_OTG_MODE_DEVICE, }; + + // External PHY IOs config usb_phy_ext_io_conf_t ext_io_conf = { .vp_io_num = USBPHY_VP_NUM, .vm_io_num = USBPHY_VM_NUM, @@ -46,6 +48,12 @@ esp_err_t tinyusb_driver_install(const tinyusb_config_t *config) } else { phy_conf.target = USB_PHY_TARGET_INT; } + + // OTG IOs config + const usb_phy_otg_io_conf_t otg_io_conf = USB_PHY_SELF_POWERED_DEVICE(config->vbus_monitor_io); + if (config->self_powered) { + phy_conf.otg_io_conf = &otg_io_conf; + } ESP_RETURN_ON_ERROR(usb_new_phy(&phy_conf, &phy_hdl), TAG, "Install USB PHY failed"); #if (CONFIG_TINYUSB_HID_COUNT > 0) diff --git a/docs/_static/diagrams/usb/usb_vbus_voltage_monitor.png b/docs/_static/diagrams/usb/usb_vbus_voltage_monitor.png new file mode 100644 index 0000000000000000000000000000000000000000..e6302c1cb2fd83af51931ff810e78634b2097c1e GIT binary patch literal 5528 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 Z$L$WN|D~AznSp_U!PC{xWt~$(696!IWAFd~ literal 0 HcmV?d00001 diff --git a/docs/_static/usb-board-connection.png b/docs/_static/usb-board-connection.png index 76bed54cf830900060ed1be3c394d5ae923b3201..d176487deb9632cce406b0ae02518e8980b1a3c1 100644 GIT binary patch literal 94085 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

v*Tds{7BAxta5N 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 literal 95347 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

i9WBh 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�b-mM%g|ALsy}$OerG1gn{p7uStp4A; zk1`l)Hfizd>X7oRudA=kjryBhdi2#-?H%*u!?w?sdA$94!8-p{agnhLt8QEEUso4w zyZ_eus>p8HT{e3cc0Em1zy4Bl^`8IhO+uXaL_1F?HLcmZu;|s^Rqxk-`ZzCO@1k8n zUuRuQ&v?I?S5(NnD?a@Ew;i#j=^^@S^)3tO*;P*c{(oy*R!4bOowo4##g|t-51YRF z-_on=J$@W*TUEb3i^DySW&PTH2Aj^et`?vB7iA73LAfg2+2dW^)#u?A@%!^u=oH_4 z)p%7u?4!i`kh>cfemehh^_KhdL(Z?%3$u(3I`X07@CEp6WO>D=j)4t|U{{6-8>hY+X0WbZfSB1o`se1C{{_C6Z;rs79 zoSzXMcK`E=*iiS-`pDQlRaMSQuTPEHeDA)%pZoQndQ#2oSHHV2@T~se6XVNXmTRm0 zomp>XhyLGq@Y%1PHm*I%_Wb`cov%JwwXG0zMj)uL0%7SZFR#v4Td!>rlC-G01G}HDU(dXXyjrSu{leMRtMeY#7S)t`IA1+e9(Mf9 z$&d3c3OuO|-&*cG>C8~9Y_YV;>Fa#C zt*hUiXgf89-HhejyMVikcHI(N7rB46ooVFedlv&TXFmNrx$VNIU@5Ju_cA|KKIO`d zG~BmX`p}~Hvufn5)0)qJo-VcOgI$ixd|%#B(e*)dcbwb`T|{x9>dOOm`yZOTp%T-s z9%Prlvwi>HTwxy2Qd}nS9S-F?PsfHOUH<=X*Y&;ch}H_9K1FA6-z23oVO~PO_Npoeq!qCTIp32V}ImaKgY-Gcy+O~)7;}`A^(48IcvOU z*A0`%4=$bgO6sbrw3gI6Ys+hQ&z0>tKL734%dcinu6`1o9&O%mb$hL|!m7H&B-mPj zk6P)`o4>6qn`86)+^+WinQOw2&pkb>v@J8Hbhl~9nZ1Xe%!ysI>%fyax#pJn>1%f$ z_nBwe9)5qun%(wht*5yaV5@h5qC}^e0fUSid zbqG@W15IKRu}nQT8JeXT8hW2CEZ-MU{^RiH*&U`|mRy&)xbVJhqO;6v-}O7I`}cph z^ZOf`fVxek54X}U-@|N%dFkoFY_Jh$bOpcJ~s(;6>5a(KY2uk0kOzhm4E9P z@`eHFE8DKJulDx2`A>cov#&Hm@U4x%j&*$VUv+O=U*G?ltH)Q}U6%8|=asLX^o)48 zcR-2W?d$cczRPlce|{CZjHf}+EcAD8#{Sz@*8di-z8R-xrMSt zLHfee)$08j|EFIyT*k}bR+;*@1fA0hzVJoWbd zkba}o4M}Bdeiv+ea>~I!D4Q+JCM^$tK7Z5O zhgY-H@0n`P~<9D>AvY_9tA!YsIaz5n!>`iZ%g}AruL~S#&_-AmK z`aGU|RWW+QdV90G8zRGVI5_p&ZCBr(5fmYzFLUwRw5$J?@jPorF4{NTi(OP0D#(AU zsWx`au6dg6XLtQK%70(COhoLMy0n&x-)lomEw;;UrJdS#f7QM1tiN}KUk*=b>CIaG z>R#}+zXztg&5NFU|H`356(3KezjpPJJae2GdGd9yRsGj=N#- zxcSo!k>6);y8C_g`cV0(XK$IZ-+y`aRr!|vf?LC4f>&i z*N^>Nr5*Y^YwfutJ^Sj3rPTX-SC6VC-`#nu%IKP~)S>eIQO}=eKYz6@ zcw6oLC(o^CuY2|I>uPV`XNAhQ7ydtfZ?1cE*|pMt_4ikuvT;=NaA-AfS}ad>Qbb{vD54&%A+nzu3 zg-%swsq5F7ue@KE$m*}2XZbtk+tVGd>aO1qZ{Srx=@*5XuYPB<@Sm#k>$>H)woRXJ zpZ4UVd)WC~?q}zlw6wj8vduYU`zQHpSLnRs(Wbgre)3<<{`Tqf`;~P`PbA{k%`<-f z_xAZ`zZYKB{bqP=`>OJ=bhDOQ>!OaE?%4aQ@n-40mAhg~U)c5ST=VPptJuxwKNUy6 z*;!NJtdY}We(vATWm)OY4|3-%y%|+|Ol?;G@(^>$$lt%OwqE~u?;-Epg!)ChlCR%& zeAo19{VMypYd6{oumAq;YW)hikh=wbclU>^Uo|hhws7vVPi(x7*R8|1&wFe6JIdI4 zb@8h2A^9`Uo(9_ap?;g*{537&=d-hH7pC3}Ox2Lb#zwVv&rhgkb zl@GO{jN5Npb=<7Q;Mk9xukR*q-GAd$o%rt$uU7tEQF-~ztaJ0{=HEWCasLegnVWmN zKL2QWW$(M9{z~beKW)nIe&61A>E7Xv?Q83{FSNcE(H_P>Z?9e8-Fd+O-e+)J-&@{oGktmQn%xT&U80;FKF_`S*S+umY+wGHxl`Kv_pFz4 z+E>l3Y`08tMa7{LTYuiT`TFkF$x=XZlR@=o}Ie+S!mMpDx zDm{O!^v3RG%+k9&?k)Q@v#qbMKIZTGSC4%Et&z2yJ$?SlJgbj44zH4*wYP5XFNd$U z|L$-2kX3cErS$9J&F?Sd|Ip^k>B&WIC*D|8SK{<`{`MIUm!3B%c_sDw*wxsukAJ** zANFt5d$sGZR{U&(b04odUfNo{L?L4>_NEU-t5}#|PRDJYBvjKD$cb zdUL% z(&8?AwpEA7XWe()z#g7%YG+X9%WmExbU!e*e(Ljg?>5^$Ouf2ymYmC-*^gH(4}WfE zXR$kDTd4n>x6bGDsssx2--Ya5xN!C}&($@1*RR!+kF3tPyo;4Nd&5Cc=?%p>ruPHq z8ZG>%%Uz?t+<%RIsp$FI+pl)3UD?0pR;BEFUruGcum78BZm+V>d~s@P6yu@!>*DV2 z=d)RN#q;X@u=80j?rgnPx8&FISLi=K%t33P5PMP4n72E#H zZRosq`Qz2-^y{^6qhdGdo%jk=H)vwg;{k5BQ-*oe^ z=l(0|Lsoy^{fK{l#Q#N>?`v}(MYNy&_jAoF&uoMB{A=SjcqQLmxv==o+v^p&GVy!& zE)2e#X0q+_oyxzr3ocEUJ~S`+Pe%6TpGCSpFMBG^nEv~FJ!*w2H z_19jN$gEkI{kk~J;+P|^;+f^9Ekf6C2}@h~=iO(?ekpdab6XqteUE11k@{737SI1`tIhj8q3vDt z{ta!#zh}Hk54SibyLx-*_4wsq3p~D_YD>7DRy6z7HRbI1yZ3f0>`Qv`@puUTEtStj zPg`y&uiN;nu5{}9$7)ygV;`SqH)9dukAC{uX5&KdM@2fJ^-+IsSk=2N4?7?6p|oW4 z&GMV&>n{J?W?r(U_J>xlxoS_v;#bvwOxexaP-@VtI;LxjFWojjXluKFZ~NwTrx%Am zoTF}PXA@TX%bD^?lv9Gi?gjitg;FiYVajF3fy$ z!}m+fJhO%0b~&}LU$;)q^4MdulY4wPo#f-*u9$cI))U9NRsY2+{w#g<`&vf*zq6@w zzvWjS&%5ya%jv6g#Y=c)Blj+}Dx7(|e(S=|FWz+?&&}spb1zBs-NQFG>nx_d>)7Ck zyjZMZ?XzcBdDXA%&lbLOIenJcteO<<|Fs`AW!IO5>fd!gdsX=S|1aO}JG*MaZ``zD}GMj`{&JSfElE6Bf zydyLEb2vo)er>X!{5`WK<8$a){*---3S%$w&05?3T=&PFH**52EB>3Q>`4FiXYa0G zU)DUUUVYr0<^8g%4{vrHUjOy8_UiDk{I&aT2*m6O{yN#0`-$0Yd-?Fc$6Au-g~-}2 z{O5i3@9O@yssC-aR~3KVzk0iANuuoIbG(W>zUy50Rq1efS6^M?w(a#9`tRT7aa8SJ z|LgIquf5#8_cs3OY-{-8RkP${Y;C^m2E`ILr1iAhW<~q1uw9-x_hc4FVaO9 z>aNH2?f>>#y4vy`FYnxk$EvJs`It0cF+G=oaf&> zHamF7=VrZJWbJ*^e>IM!=i3+_a!XsC-n;VG-pISf(+X|*SJ%CZvj6=eC;sopSE;;; z&&@;r@BQ_z?ZT~){y72F4qxNd`~J`Pmn%@1U;Q&#y>GWic2?%2&-ISZ6+fMov+T{H zqvuOoe#Zm$}kK(KBr6YeIZ95k)?rU>AS$fyY-j7dSu_@Z`EPx`>CHVUyb~|V&{&9%}*rCSNlbMc>ZfuXYtS6>1XY}e?KGn{rRft{(I&% z|GuuczBv8)&m*N*>enj%_;axH`OkUB+E2c_aN%v~n(rq2wBN*=t-buvSuEqNP0ge4 zck44_6n@>_XL5V@x1JSy1D)F+O#Shp<<{G)n*Vk&zeXHz!@$6BBWqcSn@#oPySG2D zzN?&_A91&K=JU!QEw`qdmgvbOpEp|fwD+pKpUtz)SI_&~Jo|Ok*6o^I;h`Ptb6=EM zT;-Owy43q|3Txcv{xy8kk-tw(%udNUkhk*eMcG2jc{fVgS=PTyUzM->S;l&``cQ zhpOMl1%jsk*DYLqJ3>F=;NSo6CzkSO*MuMcT6U}DR(Q{v>e|wyCvL5kaI4Axx@zK9 z@lgG^XO({QH@MHcx`nSfbh~6^`H7rA#jDPTPB+=V_({83+;MibYxUom)-(#My}PU* zb8zRech2RxQS7JpTBbX_J^AkxdhmMX-Pm$}^1n-JdyZdLzhbxPmR;c=_7L{|HGe(6 z_GeeD&tGe|=S*_B@0`_AhfIEddcgTOHt_FNu6O@=m0$O*c(=D9`|Gi*{Jm@bPUoEe z_4+FF{xy4DOP}j*JOB6Ekzdz!AIt1seLwc`XBqoV?=pE69|W(O9pWC&e&*ZC#j9tV zmK@m|?CkLVy?Wg7ox-oh7aBieR(tn0Kjz@hdlz@Sn{|7YeB8rY-=BVVh6#63`cKg( zuM`}roc%%Wen4$y%3I!5)jl%+9|~ukk9k~O`<1J|{_~Mvx3|3KYyLjl;9mRcx!ODa z>6?}umU+xBUa;0~+sB=);eIl|p9*LBXTRRDAoFfu_KPJuvL6|~U%k)b7I924N~QQ6@C3FIww2*@ox8ZCGtXUEv(xQ z!v;VOR4kuUbV}Uc=Hn6XGe@44o!ICuTYb*8J@1EpU+vrIaNW7}57(9c?)Q{0`|!=y z-0t6jyWJloYrd~tU;gi%a#`Fy`!(C&?>MUHKBxHN*S_eM?42dY``*5;+_xBXz2#Ed zYO_E4`uAP@IQ`D+IQ949)!%#jZWkV~6qo%j+g+f0|5ovrZ)N&xZ~x@GTlezn<+}Qc z+&5NF-0ttXzBljB({IA_cYI+pxBbwN>n&X?TdkKHZ9V^1xf7rf%J-vS4 ztGMsG?mbVwZ24kAGvCU*Jhf|QrW70!z3MvqgIsy2{+hbfl)sBtm-nr)UGQ=4|FTg1 z=+nCUs!nqqx7e-NQG9q~e}?n)t^M)Ge_OA*?Q8Mha&uEncf5u}kCMqL=j_|E7Jt*`_x!S$Fy5dzQSiqR0Q$%ew2GnDZ`^ z!$8h()4vItmxMkaejK;|ckKTEzxV5tjSps7 z?Amp*uIl~%BKG|?`vbG{>c7meF1e9hr&hiF>o&c2b?tn+f3K8HXWbBY{-*c4n`_S; zc~*R{@_Feo$@Cc=TZ<1(>0hkavPsf*e^u6FCwu##zdnzde7>((Xa7m+-kl3ebJzay zF8#-K{KjR0MLQq1BbCs4 zapdFvs~1$i7%FG=uat|}TgUyTuzvrU$97k@7(8O1Uf8ECeJCaQKeJ}L{)Ih$m3iB8 zKWvo?yj$Y*H>>5{@psPVSualfp8E8kX{OU!1Em}Wl&MMWod;WPoxOAR+vTgbSO4x^ zVY~0w!B?`%S@L!drOw4XuKx2pROtAQ}wW7lv!AvjQL)pzsEZMFhUCP10uwkl<(ZX-hv;V}M z&xn!O`0Cz*AUe?Oe~xG!pNX7Bs=cS5C}2MfRMpY!=1r||Jz_gl_qnBG}*ltcO5 zihqAweue9NwyBSdjf%~8dFw3YlrcT$)AN6qPut|3sw=N7{b)5O-Sqlj*;TjAOP<)| zZBtu!J*hN4MmN}+>0aTtsPpF^-+jHMj?Y&@@Y+?gU}*mcMCB;5`>(kBhOzCs`M%pX zm2Z_B&%SNGZ}Cm<)v?(%^{Yi!?aoO0D_DHbI`QE3Bc0quvfs07reCVh`FZfN_Uh|> zYiw6om2$r+jE{d-INg86-&b7g^7kIKRcnjy&bW@hZ>8}?HuYdi;_s^O4kq3(lueRLs4ln2pU;j}? zCirjK*CXHV`&$-C9OI8j`; zpndG#0@NfAR5~YUXpT&wZQQ>~nP5{q|*b`tLW&B-Fk&Kyj+k(%TQiUat7^>y`FZUbicD ztE!&I)z$5v_`E9k>($a->ko%#&RLmwWc}JpzgAhT{&mJ`UF&A^3f;Q!>#`NGBHP!z z3#mO&wo_9kW^cvJ-(T&+>tkz^w&l-_k1gv>|2Zr6hh2>9M%Mk$SJ}nY=1hL$9Blvm zw5`&HeP~SyFOSC)bc@dKUL_v3-)7M_!K>%Lt+)2bTm8=ZQ%w50$F;J%ydKM#ZLEuv z__(PvdGCs*p_XZCw4cJQ#nt}e}&(?iZk(H|CcKESX_JOYoZ?feW7{i{w<#G za$kM_Bq}Eu5q}$ga1dzhw)IW_T*1}z;@?UJmOGVR&;I+S?CM74zP$^oPFvl(+_~E1 zT(8=-^W4hw>5s)m6Jvzpv_((YeiwU&@A*SQX%v`B%BN`SL2)Wu2>j?j!U1+3$;+%V)h#oqD%6 z>2LR{xu-48`%3RJ$P=5N6J=0i{MI>m-}LW3f6lRo9pnp!BxNv}qZmIgp!$*6?(f&b z<5%Ww=-(B6{@vd_uTH$uQ$F@Dp!A#7{qx_$uCLaMJt)C$RuVq@k#O<7-#K4D`X6;JHN8j~7+mzo)`CRlgXTDWx%3n?1 z#M8F3AKdes5l~%tntMKzHtI;H>T~}UdlR>=y|vf%U2VGa_e0CyEzVn6X&t0(%A=r@o%6pse`|jJ?zsAucX_Fdmn;9JJ(4S!rCYpE)_mi?*{3azf4q8FU2Zc+ zMbdn-*&D!+3L?<*V2b< zwe$Md_1j~L2tK4kgh?5prq^K&@N?ydZF?$rd=%4h4YZ#nR^ zdbR$#i(B8Ui?dw#kA2nbTV~?d`Z~Y5>pzz9U(XkHOm5%Bdtq;91^iFujV+x1`uXbR zq5do6!tO4$TA4XFJ^Z)z&zgRYHTJ0G?a!>sOj73e8nSIxY~^*BYq#iG)z!tT-pd76 zKVz$#XDxNe>Ga3o&A;b7>Q&A3Jm*6Cmlv-daDL6cn_7J8hxgUTIkUN6FY5fdeP%@c`B$2!cdUD@f8b6`#NJY; zziU_3?>|#~cgwH6Z3$l_ufATrKbK>F{o;knPt#X_57*C4ja;gE|7859jsw5oC*Of0 zbK9i5S9c1(+Mhr5-0tF}zs%PQ_~PPgQ(f-n_pkWr^>rHWKOg_qbv2I+x390Oec5*= zhyi*>z$3%=`5Zrc3y-xFPG9xhY;W_8Z?9(lUSYXsVeyk#X{S!cplN+r>{f>PFF&u6 zpZQ_tzxm5bU;qAQdFLX=s zAI^x+cu{9{Z0hFP?45Z*vRmEme?6duGQqcPR{gAi>e-=I&yNbf&c7tUWm&2JUiN~3 zRAlFK^Oj9vugs=E|Z z@aH>g7Vds}-cRE9^|b3-?#W%>5^(MG^_RQi_VxTu__(K7^7x)Lzt&%My#DKF&{yWG z*{jUMkH2|(!@u9=c<(B9-2;E#tgK6YWVn5$U6k#rpEDOpo3yO^|DQAYfB&mLqIb?u z`EPOH+_Lu2#?TG$-VP{jM4y?G=V`v4Z|%OVhl=aAC`uTq&M4jfYEIjSC(oto_WyRf zT5jG_Ah)6E_0N>AeXs1aB_6N2S(`hhepOy+uf2Y#|H^rH1T6lzIDdHh;??d|)h2tT zA8of?ym0k(k@KtlR=+cPI3wDmg#Ay5bNJ@-A>twJ=ifcd+x&aRrHU7CufCN2@KeWB z_ego=*IlK%w)MYD{d?wfGB4w{*lp)qKTW*(*>Gv|!^W$dr4JoSH!XQ&Q?^a4Z)Wiw z>Gap1{oUt1cin9IdD*M3oA>rsZ~MM(xq0~doSN^4Rtc{P4}E_2-S0bX?^dy&fA`pL z^ZPz#^`4&_m$7eIpL?oa=D~d1^&1RP>*_QwiNb1UhDU$3ZJviqA1d5Fr{YeKv-yhX z^#^U{Ts(ECL;u!;^B=dbvd`iWimg8P?$Q>42R83l$8G3&To&G+$zdaF{PD)@(EpX9 z>;4{k#ktl`{LIRCcLdhSy!O3%{o2Q0arb^0Jlc4bdA0csJMmNRUh$_@9}H;^x3}2z zZPTmetA*8j>d(Y|J0Tu!zmf6tmnpBlZLUr25|%!6SG)A*n|5Z&a0<~oR41ou{_lN)`g2js`nyoxBPl$b?$8H)x%PUf~6lGxOu1d>(;h&9j{+r zzRIq4#eT`Id25Rw)~x;2zt;Erd0XDb=lSc;u8#hH;Z4@h4Cf91no4b+Prdp$?B&gU z&ZU1jzrO#Fao`xry1;FVG#y)ahqSLhWO;t|yln}e3*1g~f1I{O$JcG4G5O`I{#D98dn&*B_V$f)56Z=W1~^MMTgK-HH>I+hmsBKw+_UZ1*HF37 zuU=_h{lDwl`TFg@uBpvkzB#@6@bBvnW9F}W7q+)(>apGDTWAs?Eb=O|)i?BbxV%{FF^VgnB z?c$iXZ~FIr7X*UtZ1#Nqviqv-s`=S3w07QFx8`5Mw(GS8qQ~b7xm^(zG($NlbAxE@ z)?XJ|ezmW;RQWyR|H5DTybm`%jXHZSX1V{G`pnX+Of_xR>ps5Uz50IU3%ei7riqK} zTJ!7bD>LEi$F7`z8@@U^WPf<<7Ov#Fl~rM-L0_|TecBIZTkTqC{Af!0$G6fYYoD91 zZGOTZV!p9fZ_QYyZ^?Yu~?lB`>|pZtmW$&jzM@%APgV)ZPC6X>)xJM_=9hH^$W-Uu${q z>VAJV=~e7iY3W^0YK!Nt``djrSbCS`zl5&`+7zDVu0H&&@Qo{|be_C^^}YL#TIOVN z@Y&Wn{oR?Hv*T;{>g~QO?2G2Ee}DI?e*c=-lU5b4-&9IGZW5jI-1RDGz@SF*as3WO zp6b_ae$&3M$h%(pJb9l{bz5BU-hCexKVCoc>`md-z0yu+j)%F2++U%$-tP8=rC*w_ z{!aUSdF$I*AAW}Y{j0TZZTG7C>*ht?tu)IopLzCr;BSj>n_kUN`~3G<8{h8iuQK*k z=j8TnxBaX8uZme3arYdkd$lU=-i5h&zdLR%mUe1hAA9t3{G|&Q-$n8|9(kPp{N}|A zS6^Rxb?8-gwhh0%>B4XFtNL|MJl~#su3A3(h0u@etBkyNclG6QOnRHcAzQa?q47Pp zU8@#qKQOgsmW!WzLm=nYMFE4~zj9<_LTW1y&R^{xvVV8yx5oW*_ljM$KNFYzHg@y% zsOqm)XK&xUs(5)yDt+ntA5cy4TmSR>YOPe`;y5YuCq| zb9^)2ZjYb8S1*qvWc~EZYU|c(Gn@6m$A~~VDs=Ak3uj;MQ-1BAU3$3VdP(Zn)|=V3 zcWVy)z5b}gbxuDL>!1?pv_&VAlc|8_R7;!XbWaiaNCvKe&e{Yz&VIyjN@h0?Yt8zB~ znt7XA-~F{-rS8At|KnG$r|~enez4$Gr|_%!;cv}yF*HTF+FSzuC*v{|w*Yn9n z?%rIr?kUp&tDhfVwQ$~ldfqs7!$(w$-tD|9s+`@wUT!<z1kD8mll3@ei zworTXh5uNux-R1td;Aco`+MV*-ikPzh5w%4zOz63?}JyZS1+CTrM>F@1|NoqsWX9Zx3w`i=Vr9-73Eod0}_6Bp=5{*k1m` zkTCa;N9pv5TX(NoKGP^d24&9m-=px=_3^TXi@r_cJ$TeUYD2ZfO2vvDQU8idS1x5d zU}dqO>RQV$`;~Tyw-O3-P{t+d9yPtXDg3H_tyK~C`QzTJr$>r0teLz#WV=M<@2{`6 z`%3DFp|s)aKfQVNXX4i5q5F5ZK7S~D)jyh#Va;S^X)BTbuV-FqFXI(MU591=)9vdO z&ad|IcWb)O9(=y~ci8kukdFHq96$R%cD}M)#v|5`l0^4cdVak&acg@>eUNVM#A^HP zyZpaeo@Qt$Ejs=x-Tm6TmGeSk^KK=4M42i7y?D7viKootdspjkJo&zRxz*lXvChXe z86x=EL()TTyI-^4Uo}0m`6$ZagKzrn!vAjP{JKB>Zi4W==jYn|CTw3hFQ)dgJO2Tz zU#+jMDQEAGvAsIw;G@eE4Wa-kS-Dj8>7&gq`c>^?_k_}&!*`WLK)#~;C zW<)YDFnlwXH)UmDI1mNzOD1^ldb8=YT}W(}8UsVa-=p(vtM6rsF)%c2g)gx@Fzw5# z@V!~-U%8AK85rKE+Z7y>OrMi2g{Ek0?eA~*SC`G=WMD{GeS35I`TUunliGE`2eyOL zS59d9+|p~RC)y^kI%3%Fl^|o&Cbkx`CWhC zk4N|GuC9*TdKq+0*lT!I)$sRJ=JL5^Hx%1tK0U7f_NMa7rAwD&S395OVqn<7`6enV z%BmXVo4b3fzkiS0G z{dVvBzVC_RaTO0QUw>W0E>m#ezWtAb{QoqK_y4#06(|0uc5Ck5bLBtP`KoU`jkkDX zW4yl}bdlq~ZBg6bUkBY>>#n!w!=dxDfBwDfZ2xcOuq26y#L=@?=zr#r+!aHY4-!COS%?_2u@9MSjpU^8X>Sh zBBQBmQO(~juZ;)7_p^z5EMiiU4RLbsxa2J)IAIopVylRn@#o*k^9>d4i=MqHKCk=y z-t*5NZ}b}*m#^J=J+As~?Yqa0_iEsQ(6AD{`8Fy5yUqg~NTUISd;}Q-!)SPnh6gxf zKnUt2hi{u%Hl)6ZzPn~uVd>vjQdbvVRh;~Ih39VW)!wVthu>ebFJ^A!Ttmxqcbl@e zug&Mpe?Lzq_MNcUTdS+Nt6uy5tH~*y`f9`J+WPo_w=2%Avy1*)URw2a;mOb35J!T^ z4FZQca>DX+Io|0^W)GE*`!J(?#k=skyML`~yYSGfc3oBR*S3?-ExG4?HeP*v&BI;s zA+<|?IemTkO8F|g6jLm_35#HPsI~h1)silEt_eupHU73P)arbc<+@+(rZ)FmC;zU@ z``Y{J^VQ?4{6pmD-+A2oChF?n)$*&}MaXV$+PE*Wc7xT{U&mkFoou^@hi~1z`vQAp zUhlj*f8E0v{!EU#bz8kxf0lB3{5&i^o1?paP1XA+bGJp^3%Oe`^_X4yrtI z^W^5=fUlDKZ-G4oA=c<8x|pp_UM;P2bI$rr3kvzx%fZ}uS&0e z?r$glaFz6vdvingF11>!ShIQaRc@ucY!1`6w*`*ey!dRzo{9%-)qMMHb}s)PvUiu_ zjve>-R>;Ntttq{JGA`oEj`A5Y`;Bg%*U#j5Ra@2kel~lk`TWiAIoIY&6wc@U5xaT! zuNNu(^DhZ_-Q~Hz{&`6L>^=SW18PsLw}QA4OlD`xdo#>F_U~%2RFm8P-B&r4;x6vv z4ZU;kLO}1QX|pqI*T>l|stR>ZT^Iji(}5RC%uVg4E!BLlqF3v0s<^&FE^_XbfXcW0 zQmX{lUH|;6oA>IyxUgFPZf>Qxn|1%LzB=>jN!a>Lca?JD9q-=`*?#xY@0#e+)vq#n zL*woT+7<}MTo0W5`p4u~_R_0r=LN_nw4-*r_!Tz=KNy$=feb2${^tbX1RcH2`U>L&KSAmS1ld_ILiP2fStR>mu)_wgH6HOYgaE`ogZc$BwDyv zCdhXAujg&2I#>U#u~}agn;pEfWES(P_)HFg{3TvZ{P7PrZ(U(%wz%4)<(mBFlj~l8 zcqMst`KtNfck4o|1Ca+_eU#5RT(mp?>-Vb*rE}u;huYRnUiWj`tIVtS!+xK)JXUyh z;?<+Pjz_$IUo%+b@aWd=>e8&zwV_h~rLJ19il6glVeg}7yot}+b0_@NS+wfm)>YLv zFWtX(@M&~t4%U*Ho+r3wZuTB>; z*uUE6*^XS{`^|5!>i1^UN0hEUxhwuos^bycP{Hz>*IvK#ySiStU{7}V|4YZ#U)kpW zwdvLKYdCCEslR) zeLnpEj$_&T^1q&7?JGa=P4 z)vAB3I2pG;w{-Ed^$yjWUm0GFU-!uLzuV@}+qO#-ztrWFo<3P!`CoKi_54@srI_}t z|GFCK8lD5EIFt`PSkl&&eELDht9{D9ZT2o~y1z$n#k|11ixnkGKXmN7e_4R<_YRx34Hpq&hpuZ2d|D@l?=XhXU#&XNAn(E(&JW& zGweBGv0M6(+w+k4432kyU7Z=eoV>c;v}MwUZCHN87{O&sYAdUA;eVh0pKI_1@6f1`X8ye4EUf z@bb>$LdQq-E9>$dpVuXSom~8-`U6|^;k)4$dTZi>?rv1vvn~5c#MbYpI*yyQocR{w zx~E1VF!adLd$(;vAMLvraQ5@V;x(`5O0BwZ_VKH$pP#+?{qI%T)%9l80w24|!t}FO zoU(Xt^Uh%A;V6qOzb;DN-nZ`8^|ppD_ukwNP%Ya0JLKza-i7b4pTGEj8}C#O^I6@i z%|rUvud}_`|NM;Qwek@C@74MUCm%TVqkmK4&pTBqzs0xQXt?cpb+!Aqo!_O_o_%L| zE6$E%$L3#u+q@E!&;M@Fw71`MYyat{4r{5V4lSj1XaCwSwJLlP@jKjnPO;qij1>u1 z*Y1axueaN`;OmYRzm~q*IQg&HwP2~HsjJ`qXv^x^T#@VSk$dgJ-EX>E{-4j{DBYLZ zx9|JC2iMCSotIviZ4&Z)?(w;^^?i_UmufLk(wV=Jab@|sLo#*6$I70E%dfE8fACsC zekjNPEen}$uStHJ$8oae_|z>stDIGj*dFg|d+_+29=FP-8`ZzxzIz!FK6~+b-c`cS zUVMMm#?>dj_Ry?3Hv|qz?LN3Ju-lfqHwErRZ27;!&hY2w=~7Jn^|625zOHz+ z?yBjk!>ey^{kUrK*`VGJ=59TkcPoZeoYu}Pub9p%sQ)(FxnuY0-09N&NAKL%wpwdd z{=|a)eBrzK`72gg9CKgoZW90XP~_jzuX8Ma*{;*(zo~a<>+1LOH@>~^J8!m>mP%dm zvAWyaZ~XgT;ym@NVcwpU>p$ka>MZ_Zz3b`>Ezt3XR`5PY|IbQYed9!(O)r}PUHQUm|-pk*7{@~Td)fUU${q6;Cw)n~Q z{aJkao9`Wh&u{3&nQ!{Lb@~UX_yF7dzPkMvejG4BavP`eAtNd23A_Gkoqf!`*0&+6 z=PtM0>saG$x33Cl+5Gal6%!R36B`k0^7HdNt<%a=hTQE6c3Y+ zT>N_f7R3(Jvh{zjXr0TvwyJghx_i~F_0?B;>6-_DY`t#h-j^zynrMNhYXewW6-EA(yn z-TWtW{w=f0mc90f|M`pJ|DiLE&uDmX^8T~?`$FbgCI6RS%Xic1cWutn!|U}vZk-pk zw=!kE{5rl5QAk_GB-|wgr=7QU-*!K2?}}e{L*7ZhKC$=DpHEW-%gw4QKAt+3^!3k^ z6W{91H~lTV8mRnxPs!YCkFLBjR{nh_`(W{n^@a{YII_igrzb~RszjckLa8!QfWY^bq|m}~F8e|gya6>^twfr?+|;<-=jYAv)#m3d&h1^5o!e-;KmY55iM983KDl1=vZHnb%IOaWJPvhi zm=kwFpl>~fBeigpjtCJtPef7GX)6I78)(O~_y{T`_dgfKpVg4)b zT@A2&-y!(-e#qX6zR&kcQhtA5^Vw=|b)TJi{DqzT>*XwxZ}*4G-}0V4IbA0E{;P-4 z4TZ_Bjb}sM9*u8t9(`|8EFYTh&ul^Q)vt44fL(yT^|2fHf zcK_P=Y;{D%n-kyUW1nxe+ikUa*DtNO$5SgmJc&D-G;P7d)vLOtovu}H-dpuft*-4| z)Zd3E?BrMes}+vP$Cp*)DhQ$Ai;u<=bDS zf(}66S@Yw=*KJRNez`a=-Pdj&FHm^?bK!v#cG8LrU%yU#yMA9oab0?8zvS(@6~BJ; zJpLnKlJYA zg_|DhUi+}eJ%oR*%=1w7@cr>~cOJ>EboqMvYOwo0>GJUTYwo35>-83|+8&~A*5VN! zb@9^z%U?CM%xezcu+&ki_;VudzrB-1<&hohSL&_co4fF>vfBBd=Sm|!H_uvo>#<3D zn0wgu^?i{KBh*b;ZkspXy?T9B_S#RIxe*byAr({}S#RFu{B_SO_1S9|-B*&0`&;t$ z#;c{gSB1|%TZK^t~R=rO@s@;|s z*$r=!ITM0+Y)}-aIDSn%A=vrEGsCOLSKVLrEq?K5yY-3zX3uT}&JC?yQswz|$1{GV zee0{1>h3VWn?EdlD{-^#Kf(bFGiDkn<>zIwoBpyQH5d#w|J7m4@mg*g^1Irpbp9*%Rq}Z&xVDGA zyD3n$v;4942Hobnyi<>!+i=&cHTNp>>fhn#SJdSf^`{$}eW{+>cHzp=*EMI|dvf+q zdS3DWRig5|wZYFUj;r#9ddXWm-*#Tj9;$!Wsk$cp>zY^Pt72z=k>Za#3=Qq>FH_t8 z_m;1%xipD+gJkY%|2KKJZ~dJwoPYaUD5#}=AWXT3WA<%xsa1RTu2Re?J^kwUs%oFU z#o<5yl;^Ct@MD7H?fmFPTWf>9ZZfsGzwPwe^V{^ePsM(mJoV=Css8tYF<+5RblBXu^)Zb%WjoFvHlvfAL3N7dl}C7NeHst53Q||J-0hqc70{}*NZ1V zrcbW7-gUaEvwZctTRRGlPp$O(`rUWE(RQB3UH)b*tL|+-_dR#>t}RySj>&V&cG}B> zGTfF|)^0r?Z@gl@`uY2%yzs9-U;R=(_V3&);n#caU6;FAcQ32eJ%nH4;=eg<3m)vT zvq=75E8TSI{N0xGm*V}u{V~67m1nr=Z+-amA77E~7D^~P)L~$;{b=igX*X|PU9IkZ zHFULn7KhN?^;Rk83j5c}T@#oP=_Vd>e%-$fz2fg~=H7mHwUW1S^Zu1_!FLl~?%$vF z<@W904~u)bmG7;px@@)XlR!M}Vf@}l>qAN>4t@~hC|FSjG-hR=!DcQt6z`p3ND?jdXxY5^ptt;SNO@? ze7^ANU-OTfYuaDkQ~te24`d<~y9v9soK3#}%I#|Ns@H2STKdc0jFTuV&DqSdIM!&> z->c~vpJz=>mW%uQNGkq&;?>9Q-zxJblT**RQ&5v#;mAxBIn8%l>mSWB#|shE2_1zIJb3-d3*a z?|)t`?d4{c5Bj_R75nuEm3y7PdMp2~*=d#8SA2JU;lks_tBb=Q&dR^`MwDOPbZ7nP z2l}gyhn34+eBScv>DAljCyi@jzPcBG`Mnt77KRz!21+{ZpI5c_Wz-+es{T4Dbl&x| z?%V$V5!+KPZql+zFP^b*w(j0_eXHJW^Q!*tFSTlG?@F7R`LE2SnU1V}n#Jq5h1u=f z@6CGL=leds5X>z%3)%krl2*+3&#TpYcJNAnt8Z6z zPyZvi&-3fAR|_WowF};RNE(?n+|0mYk*(LApH;Gq0m>%*!d+NIHC)yrd<8}Y`JIZ-S(VE4p^;OV%2Sl(m{NzwR z^r_=L!J}7;ROfu3%Bnv7uI=jhS&!xR<-7b& z54k@lIj=s#cKgvV-F=B)*S*^P{KfApue6K5RKGa!{oLvBk9GT(|N7GL?e_E>d;875 z4xO;uA9lBlbN=1h)#|1!g6l2a|C@&_{}GDRqD-he)Um1WGd`*;89wmfgEcA?z!Ygg#Kdx9&d(&0=LOt*Z?s8LH>nwlW+pz0&$G7~96|;8D@{_t*cXO5Uyek4$@{jp? z*9+_l`!=`cx=j4u4ZrR@iQI8^&f~Z1>X!ZTM|I?xx@ionsqm)#TUgQ7qXK8XHl&STUsR zXTtq$daE6F1XVjV|27G+v(6}5e=h3ajNQMlDcpG%8n-+<)IZMg|7w$#_kAnY1>W7X z%Tb&AUj2rJvmQlE59?oXFF3aJ-0#XiPb_v@ZCz+|XXaJQt2=oQo@!qGI@EmSyQsT) zt@q#VUhN((KX3E@Z^v50{iB+nzi+;Jd{y+B8~+5a2G7>-*%?>2@7IMVk~6MumTG!B zKkDhuy_rY8zkWFRaRckT|K-w6Cy?W2f`JlG-(7{zH=;Y9ck?E$wVz%5=kRLz*)par zxpwif7X)VPUZQxWD8+ff>n!eF>(sY?PdL9#@_It#+)&xOw?d?1u0*~2XZCnan!-ox z)z5PlRBzk->*&enHs{vVZK*1L?35H-3(~WyI1>th2UHL75_4O-#tCO z`u@C)Z%bFbU;nSN^Pc{4bCz@S4Hun1c(q%4RsOnX#e3)7U$5R9BaGzSWjBrs9k}%K z^Q$MU`+onB>-^;O`%xDQ zZ;Mr3tJ__5o9lQ*we!-w-qRjb{ohgbjqBI_(ogSZTwN`#)wZs6qo~Ao{fBjb_Z|zk z+!Ov)c=nf{wTaFaWt;1kBROG>Wui-jU;o;ByI4NgRDX5Z{<^+q@80l^n3h~!vkw(7 zpZrdmf4X=7&AltCt~DL2a{a0tE9Q1Lqs%l!|8M+SogJoT2g)x=#XX*R^|#v=`+W@4p3BX~MR*JWE zzdj1S-5<8Muy=i_&ySBAUO9U2sE@xcP$&D?de!s%NzcE3dG%YGX&RF4Ix|2MN8GE} z!}ec3w))?fMX&6x{#5>*+v@OWU7Nwnr_7z*o8EH0|L)qiUwy)k=Qgu9T0N>a4>72D zruFtHf5`pVzgO9AzFxmJFY@nSrenV*zFHypHa@VnxOe^cC&xn7?(SRi`^R*t_}0(I zqt1PJDrddwf2{0vffnSJt0;%^p`zQ7wu^twdv)LJK+U-o@1kw@ZRMBJoqTul*T`On zTUjA)dmhcZz4z4fi0tQK`)>-IslKbV{xR#-$E$XSFJF84Yu&P{6z7Hy#oSWGIR)>Z zzAm^sfBikXMSu6MPM%g^|G)febn%z!#L^>^Vqcp}t+Kkeqsq(qf;1u+8bXzNIA$NN zUTqzIJp6r3`{(*KRXL^IuYB{4pZUh}J8NU(_T0(ee`oD|T>gEn=(A~t6L##bs{i`= zYPng<_H*-#Y`gazD-S83W3zerx{Id&tG{-P{vS2n^GsVxxarRN zsvnc~Mb8VbO-Y%bZ5|>X)0Y0dmiOV|*J1uS95;|k`VFT*GxwRGeY%!;p|)$P4m>%( zT2Rb-aaFDJikEw*)w_PrUAivfX#V^#^PU|icCMf5y~^K=Mc{tu-i`V3q6N37{;Bjg zJ>eSndEIH-&D&SXMcJ-Uys}$kdH8<|%P{Q~e=fXg5Pa*O$?<4id;N;IfVcL^zu#V! z*L_%>>i%`})!T0S{?{*4+)(+7ZP&E?F!_9r@O_)BN}Z=7O?xn0n_-|d`|9P@ho=|Z zd#;}`r$1!Bo#ncV0j3|HT|Fz+c=sKT-^i6b z?@=l8*o-Ns@}X;`nWg8RFqmzd%X?K8shP@f?Wi4cjs-10bwgi|>NP5W$juB4Ge*M$ zIXFgqcx3Ir{lEUr-Rdb*OZVD;IDfBN&)`6TV4{Qr>yuS{ohv#uf@VHC$>UYuwrt9h zz@olcnY&E3?g@zti<-CR>C=#~D}h^5m$K_CD9u`+sKLXv$Wr0K0^ zg$ol4is$N2^oaTOYQR*CJq?~wL_We^wwDZ%FDnqTp_KHqC_re@e;2c;7I$dBv zWXWrh!V?!#WOn2$x$$`%Y1rhVGI{s=uhyjB3`L4P91ISVZ)TtG@Ry&_qx{YP*oS|+&1-fn_UcmRlbqGz z+_vn|Yr%~h^+eC>oj&qL{IcQmqa``_vgRTgV%KM&#K5pS^!vHaAKRUU3g5g);dwXv z#O_~KAz&rK1ES~UC-mr=hGgoRDJ1@z6R;Khy(7R&1VVQEfO4z{@tJ0 zX|YO4vUTkf&CM$mlKz}X>5-S*_-$^A&4&`Je;-n;?%hnWMG9U!4+%krhFGJb1SP-U zK1RphP0zV{{o?9qrG0jaqRZ>7MEULJ_Ql&?lgPfmaUYVa1wpa$W=V6q%A+-pClwxO zNSVEBU7xGq|NIyuHQ9MRk@_i*&h0lj_WHGvm<&Q+#&yvCf)gj}s?{Gg2?ralsbAz9 zpPuM=q~&6##jgWRJL==C@@h3?x0X7AHX1@TI{XH0l|8_xsq1;leaQXA8DMZHXPO>S&@C)01UNd1} zc&~k5S+IOgumH%+CF)0IFYPT>%Cj&Qz5io-h)V7xq_Np8f%}s97#v(c8Rbas|A}3K z)!tX0{t1}d^W#vNhtad*EU73~?;ErN^-a=rI_pWM?C z;v(YWlIS9`_j~%o>iX$b`96zyWArU&lvEhimAE;Ih`u=b&SZhkqig>)diH)R@kTNy zx7k36VN0$&pK_hSgdc&9N9zATBBeSvINN?txu9ndJpuM|PA1%vYw#Z$) z7pW5#WuEB5kn!7YNAZJp=1zG&B`=??%Ex}KVxu=z&zd6zo{X5^NWj!!#(e7q7OBKpF$SZZImQeBOk5!Y8)gtm;O zpwO!Is5x@J9ke($H|G4Mj@ipZT{1hD=5ey~`yOLeUuJ?7EE!Wl8s2)>yx4Cq;j~3N zsk-uow_D7=sZB2;SBdMs{5;?1*nZhZg2-95wnkWr;Z}eDE!mIF$1@I}vrv;{=ihkd z=L2i?Wl0G$w<4Uw5G4-sy}Xe8XZ740D{6&5ZcPr7ny79i<{I<&YSW8=CE^Ih4zEF_ z=G*h_31v%J*UllO6lBe6$PZVyIbTAbue70>sY+iS$zJSo_R}u zP3ZTt(2;!1_rU^b?dBG~eSdiv-p+1Fk~VwSkRr2j|M9&w-`?skU6ef04q-LJ&-2?a zGcKt0Jo2AafK~AJhDV1wiq)2yD4qZMPR#J>X1S9{WyhcAv(GbJu;WzPRv2%sCi&F% z%R*C&)EX_eDV4|x?x(MWAj5)QP#tjcvF)?1Vy&!#;`3(owAdi6JeqL4##@$QL9gZe zZq~pMg`3xA$?V8C>RYuT4dFP4f1v9jGMwAKcpp)3=iIv0EnQ~vCTnC-l-M zi&w08q5S;Hl`BW4=|(4=on^YQ=;^77w_C3#9qkg`Sn~2x#qYP&$jy5fkx)p zPh+-j-6|*;7#k}qZI;vV>(?(e`{x%HIxo(?zRudF?&hY{kMDNBH;ev1`D6-@gn@!v zkA&dicK-glzrS1~BO|9wo$Bi8dD8vd&272SYhrhs-K%=Nw&L?y^TnGs8BNoP6q-79 zYSX$c+RUef3Xjy8?aMoR&O%MpUpMmtQVFQ=oeo#b)|kek)b_VqyC+ z(eRjyO15j(t?LVquQi>fA1}u(uGiDbE$-&)dp6JZ`1XBY*Gd?to#E^M|GobI_ZjB- zag*c90|NtlWUasb{jENILyC(_Vq)T#x3|rIeS0gt*sZtf|NGakUq9aYd|tQuyb7gx z6^}YstXucZZK?0?SLu@{PI1k-`t7#0;No_bM?1ZCBVWMq(^W$7hN`S}Sr4bM+7a>n zKaPTYHF=KmM2{mKg33upIs^-^MW!FkUcXn&IPFXayIh6Bw!FKymi@Z9*uDS7#l`M2 zH6IQdR(^T{N*_NzKR@owZ!6Mo_bX$`<(FoqduxAv>C~@%>0Nk;Q{82I-rcg_uf;`0 zkIpbmPC7Hgu<+l{=f~GXZhi#19dFN&tM~kPHxg*W1 zf9f_++7KMHGGtD{A}b?Y7&G8rkJCF3lB+ z{^GoAfx@vqS?T2CeZBkt|9xM0J9qn0(9Z9$`n^k+E;THDb;aW25#hxfHf)GI7a0;F za$L4NMyC8up<(s6H#&vD?DBxLqYFAyO%9%|?`rWS=vi z`AN=;3kyHazW+x}Z{LqcY5Yoc0qf)TKAPmM*LgdCzwNKDudhG*eQ$mI{vZFo@0Z_x zr^x%uySuxu#vM02E+cH5ey-=_WOegsfscoe^-7C_!aMWwGFPpspO!7Vs;$#8!yrm% zqpsz@$#R#G%alja=MM0Bs|XeTdb#}g-SYdg%nzy9ZG3G1?)-4X50 zd{!EDe_zKRUlF)CD)g?Zs_MtT@9XW??RvFJLsvKVV-*({*P|Zea~;<2b|{}ZeR}V~ z%&W&_C-lh0wg}#y^q9}nZK3TMBztX?dN|%p2+Ta7IYZkk!r1SOq z{dRr!|9+Hhl)JmDw0r))FUt+n&ddl4%jw?YkKXNm-}mrv zd-dYWS+d0w+;^FMx4f_UXu?7!_;z;&28Vwe?sI+E$i>b5_*VA%v%lxE2d@l?sd~9| zW9jQ_6;CF*-}npPij8Ui|D#rty4M z)uV#*W%RaO6RUl8AjM|ul0aodk=(FHp@$=7s)x#>>ifUr?y(F0SDfhsDij2>udV5H z?H1em^Q)$&W~cn$7w(0hPO2Zjwl@0nx_y@}UHb9Tzkb$r$0PjTKD9~bb*!)d`?^y0 z-JQGd-#0ZiX=rG4JbLu##g&zp-TSQH9B6e+pWjOC$r=9`me{N^N&nY^?vmAdVK%a*Vm6fJ3D*v z#*K!cnrrFOr5D%7?*~^nl13@h-_7-#Yjw2O{GP<}`E^xmVs~F-KTtjCWD2M*h>VPs zDZ7yf%K8zTQasPhFjSVS|MM}d(zp7}Mt7OwGlqtBe|}Vax#<45-TqHv&aEvgL*q_A z{C!h&PIiD2eHuN3QWMJZcead@E&|72-3~D0TUBb2GDJ$^Eus_5VK4PyYAk zXJCB%e&^3s-`+^N%a(@t%renzu_jTnAlgywV3B#o2=XO7zSAC4X?nCno zv)rg9mow#Ae4Q&n!eLrzScy| zZ;pg`Y)Rmmna1hu%^iY*udlD~xBv5yzwngi@*|bc=Zdf2|L>RI)eo)uHHvNg^7o$X zy|pbj`pT6nPrd}l#>(dJ`RKOi$D?k;;%8@eJe!sMXvgEe?r!~k7T4Ct&oAZ$Rbif! z)t;XHYh3i?#E)0u`*#HwXJ=_@}*eG-*tkq6a%4-PgzKBc|B2UKp5`STu7Ia0p=_uU;I4sn-T zaeU*S>7(}S%uM0sbBes~l;5x2S${xvGN_K-I%}S}iOCV=ej6e6xg|k+J{;n zC`9IzUHoG)+dRLoTW^=fs@1C>FPZFjDl;!IFwkeVnXcaMH=DwK$HncfDwV1K^D**x z$(tL7yUO3ofpYrx{QIEhznQ?{$GS|0JoZ`Ivz3k>~Cl3VuDCX_^`7CTJ z+t#gH3orYcA1%EeJN@#WiOTNVG9(OV`W%~?K5ypdJLqkJ#Vt0Ls@0&ht+OZ>@!jDfV_xA`YyMdaB z*RE^p>GkE;|Gs_k#tjL6n-31%vEj9~wK}o8Os46@O7+|St8j6dGIi?Fo9Xjq-Q{ab zmIU4AFO#i$v9R#TME7HJEQ>$Y{rz@3T4JLuXe8)bu5R9OS&ets&Zygb*o%~G9x(s$ zPCsC;siV^)>}R3)ywd*P$NuD#lT>}Yz4C#nY+bMZZ;N z`W)+2pLb)Oy>M1m)}wjV?>ddoStu{_nJKh6{d`|rTicrAuI}!~cZ$#VCLV5kdUflX z$jxecJD*GfrHSOz({v-R*M53(vU0!KU2FA4;pT})zAf-y6^OLrk|U$(NAUDC-R!Hc4eS5?nRD#96w95v`+gkNe`fQ1*XwoNUteE0ugs0!p4Y3rZimvP zmnD9m?Y{3k|8!4qMxW8zr*$#gaw2Pf-@f0+t-t3(a`Pro)W5I)|GTnM78HGd{yeuo zU#0(M|Nnm%Hzpt76W3pR`tP|c{VLT~q$2|wrh$F%@$vEJCU%og9^o~=b775XSXkJx z$NlzlpmO*3`~CLktl#hXab>xk=<~Vdad+zf|2->|ldY#6w&p};O=f0h_tmJVD5-YY zvIxK8xQd6Zpk~&rwa2E%*IEAiaoqly$?_#jR6s?`m8GdsmuoGnzrC?|yXEquqvG*r ztnwZlXe|78GyVBf(?7qi@9*3H_ig@d+j|S0+kgCdZa@F}>kaukkMH=lDB4K&XlD=d z8YZa`p>=Q_fGuW zlYFeFGeqmD^CRb1uU|j@^ZERFsabDtZO!(XYh|kcdcJjeUPyR&{`ZQ=$jG?w`~CU9 zCsbdu)r6mb#=yX^MJLhaL9Mb|&xy>M+}zymmXo(8$COXGy`wO>`)btzM)oHr{~or> z=WTR&8UOFo^f|}M-`%lfvvB5?y-aM zwjlBeeG8UyDl@&8wkpZ+dn~RKA#i(J?&Te7A#ri@F8`P{YnIr`&0DsZJdb*QcJ}q8 z+S*qumn+RZr+Z^^cEonunTE-3Az@*8U~kksGoF9)^sVgd?CsTScI>cN|NGwF?&|fn znx1JUpyCqRg3Jg!)N$Z9s7ko}qm^4cD@s_}wyMPMarl~ui%O+@(q=kBowE0r=ANFW zyD{bDB(c}ozP`So#);)wNxPbg;Hj6@gxrkN&z-5N`SasrWn_75?A@~dr9mtI)HZm# zmAp+!Kk{u!@D1c^I5HwZR-QU_sz_>o&Cep=Y^UnCTf;#E6w57dmMzcr+WD?)N7B(Q zvHPLLFE1^%?0tWI{ruTR-IB&>M{eiu-+TA*&t02SJUvgA^_!ZRJhI?= zYrNk+_~E#I->iV?>4TD-u^6iy|ozUvaRN> ziDwZ(*f34Chr`9?$h_)zlASJjw{!M>K4&d;-No+z&-0)j<>bqAKt1whzO$p2+>2?h zx_b4h?!Cu3yMNS9i7DsH?HALD*l;(wwY9bIN}&7G*t36sf6t#fzp#~cn`=&f&@|+6 zyTn5s4lXXB7U}YjrKP18FI-qqxI0p5Vu!H5jiKJI7mMaR|MyhCK6B$P>+*MVF8}D2 zHs4mUK07l=XMPpos!9EAD>M2PqVd4I?}OcRr#A68!zsy{{B`jesh}dy>GiV z9Qb?fUPKWzae#)*m;Q`177!FXdi1De@BO)nn_QFxpFVx+TU9&LM{U)rRiC!~?{rb( zv;A@bT<%P8<~v#W@BaUP-$4!c=(B$(XA5l5eB;A=^ytxzxwp67t*hQP_54IoPc17e zYtfc1UzGdb?|eS5GW7iv&EQRP@taaS|J9}a*n0Jy%B^$mpnVunw_NbzRAv&qxGC|- zqeqV_9yGGg`tl3ZxB2tqqwl9%si~iy?qfBl);cKO*Q>$jToDy@LJ1~fOoE$qgk^r*i4*=bjAw)>yXt_WP5 zbY(@LZrQ(9Zt-mu8Cp}lw(k19eBr`{C-19Uo^X-A`9|+{-{ja`B`3S3{4E}~fLi`4 zlTW_wi`-LDm~(53X8!LzYZWun|6D`zchoEcB>_RfuV24f_P)QfbMvyNjlQ$Zjy|0p zFZZ%!m+R{rn^L`3@2)Rf)>gx}{3)ozoc}!{F)?xG^+WEkwE*4MuB{GVKf|uJs^;6~ z`DdjT_%6Tvargbddh37hDV<%tcJIw;sCj1-IPcupRhsSh_;YIe=5K5E?X%nWdG33c z(9qD;yX&KpB@E~KJ(t;))4whEcAeKc%flV6uC5!u->Y`7tgH+P2|4oN;o-%L7AaYk zy!f!O`2Vl#`$5&-yz8}f<-ux~UUulrw!U;M$BP?z7);k&La?LbPWd)%P0h{}qnnSc zKWz>F`t@t!N!95`HlMefE&lb&)vHfU?Box1>}1Q@o^$h(-23lms_WksaIIRnFmdf<1blcVbI#PVz_PUDrp1QxkejMbloA8}`@;R5BJCiyu2{CT{mQ?I94`~El_w@Ez zjU64J(avJ2`5r2tlmf2Ft&QDncFyMWnTj_XkAGUW?Cb06&rSAaUtgyiSG+Fq$gEkj zmT9SeUTFW>HO>0}+)&4Z-~P{S&T%|i6A&CMJUzaya!ussWuY}Adc82vAO=wxa6?tg!OXU7({T7zrDFxc-Hi~$l3{*_XeZ%B~4$1wG2^H43s|Xo2niDOvG)?iWME~@-+q1&(HQ-{`hA4{IivD zMl*XZE_UC3^J~P`tWcY;SAq?TpPgC8bLg$u>FN6CGi$!TyPN!e@AtmY)nQvb_IA1` zeY;=(f6lWfzop)!S?_%sH(f7wTlJc4+syLyHtgDEC8iT0P=2p6{oMEbeG##5zlT+S z^1F4e1K}Wt(?V`6_qONU+$3S1cZaY4eyrnxU%!6+cxJwT=I1?=CQX`QobK2CJ@@mo zvl|l+x6Pe3`((h+tDaS>R)rP6UlX_23Q~rZv_F@r zda+Pf%uU81!Qsn`i^|I_*YEqaioa9#!q)8TZ{=36%e(g_COJ9T#Kgn})ML1I?bxlY z+4uQ>o||X8`|9^!SFgV85D3WTH%k@TsF^J8gK+nPR8VsudRIxN-{aq3UyD1p@pPU# zb*k*{cF-8}zVCbAZ+$J7Vl)%fwtqBv{+}m&=YM`#ZZB(`b|zzDRln7%6?2YVzjp1| zBvtPkkD4CGX13J3l7)A7mF|9OvpRfz-{XG!eRseAzIyfD&To&_mUy8w!PBi}AJppa z`QT(?X7hl8fI{vC;fg-j-cf!dpuvdo$RtnQ)=xcYg`Nig;gN-*brzJB8KVJUu&~3Hsap zOv&5dFzMtBo64fi*DFDT^`PW9>+_Xh|EPxrj}?8bVd@^^P6EQ_A-^}oNg)EhL+^=`*wzO&iS!`4QL zuHXAD>J4c4$0q&JkrC$(9v*Jb|9<1u z)z!uKDyQ~u&q!6{lbv>^^Eqq%bN2uLq^*4aVsU>TGrx_&a!b$%Q_hVI3pG!l`mS=5 z@2Yv_rzbD&?fqTW|9sbLE$e6b+D5Z3919I~*O?J|eO>j2vbVRk_V)Ik6?2REmb=F%25ussl>(osV2hxq>Aci$Jy3l0nv1Px572%X)2GJ0F=jSR{6`+n!y{CLo8 zdH(mg@_oXK-TU)4?eg;SdUPv$eeb&1-Oo(&4>qv|Mn+~P+8>*~|Ibqin~D!*{ri7D zn{AkWPNp}D=_{|``TbetN4DksJADmlqVfd)p^gLlL328P-sabzuDr*oK1V=2zNTniU)pB4U20z*(l~gyQbK^FRZ^C;jV$!2N+Z ztGRu%^LCwV`ZvGdM{4@?>BlA0=S(bpl-zH-tlIa*O4YJ+*{ipiy8PLC=@&TeA>RK9 z^1g@t@0;h#vhE$}6n^|{c7ETzz18NPvCZuKebRY56!Z3cJoe(^;`Y{4&Y%us{NGpM zmghmW#o11X1iHOcJ{UxNEv2=e2ZXX|Cc|X&mV8* zx7!h1?A|XY3!1S>J~c%%Feqr#>8+qK{&f4_H-FqbUnd3{0F|kHGEq$9{N2*)u^VfC zewy=KR73Cd+^Q`nBWDrqkeAkVT6Y&3WE0V`)_Pu{-|ABG>Lm3)|(o zmd~%VTD5A`rgJZ^tPJjvGS%v{`}IP?zOJU^&5gq4S^mo}7yf)Y-90yVZR?%BkB^TZ z-}!u=^wXzLBaerMg&kYF{obm?vk&UUmOU134wAaqmUCC^;}fC%yCDeyL^k|U?BU3{ zzRY*_qetEPebIS4RlB;o%U_v#d3z^cTHFuqppvnz2mU!jrRadLIeUBbJx{=&(yC{Bt-NpU&|2@>oYY*QCrN(Dx zXJ4PQ*6Yc`PpV2vpC3xK^Gb`Q&#O$6sr&Iz{LH4nMtJCyq@lt8o3t*x!{*6F9G>4JxhSFhi)=7rsZ(9=@2g!LzrU{Y`@f#1 zCfWKJP>cP~3wQf2`@b*!^ZuoMyI(Awd?=&8Ecf6k)0q{Cu5Kt3Rga`!AKhAJ693887pnFE@4SR5308 zzo6-~latktgGO3TYQ|3yw(x+X8LBS#TSK;N|eeK4%`hfxp#M&uG|0b*AGw`ba}adf8pa} zu1XU#zFEC`{W|&Dnn=UsV?7ajDmJ!es+#585SSiQ1fID%XZd{2iWMs|u6?%ue8%`= zcl;kEF};`>{<)r8mYLq!Q(3GNx5uLH`|kTk-`w1M_e$ln{c^s?w+8>M7G8VtR=JW~ z)wOjUkR%8q9qNSKSjuj#3SIr^&*$^~d%xea_Op7q3z{aZ zc+{!>=%TxPZ~48-<4#+Gy2W(6*4Mtx1`Vx)0w?*;kB@-?7fkj~`zILl_v-q()aPgB zPVifv49fPPg3Ux6-%{*e@|04Sv>XU*W}*7`wGZ|U{BN& zT@t3RjoPZUZtu5Sph?@u3!3@5K%=yvA%GY6_y5;>KjX%Q3j&}>eAKOfj9Y(?z~^UY zyM1SyWmZXV%DA`)R3w+Yyrc?R4gi{mlc{*ncyY0Ne{9v=SFc{purAND`T1lrXyA6m z>eZLu@SjXE0*#x$EU}W3l3KKGot|0#JsD~9yq;IDUaeTQstZ&i-q~5ac-1Pe!%=5< zx&3+a@7Rx<+ijk0Ra?LQ^pRSBP9>yh{;6Gf!IAyvHRB5^R^{(x4!7}kJ2ta{)~9@V zch?#;Hwc=;di3ZKXyEABv12#3WCmZkdi5x1iOkzuTLVKwMMFbFKYri;-xjoJBzk*Z z?zLUq+}w+kkM~*I)ZN~eyH@K(SWwWU%X}@MS(Uc7wzTz|_w2Fxb~}GRD13f@_rJa_ zcJYP{1|a)q`lx{hF&-c5-B|hgS;hCe<;hP^P5t<4_4;F{rfMgDeRXwhs^=xaiC;Po zzWX*gU*t&Q;kSJ^qUIEPJKOx-bo^8Qrn0xUSbKYW*-fwiG@5y4=IZeE`(mMM_sj0C z-F|PEs#4eN*EO9kNiSxm|EvG@&erGLrVal;l&6``&gq*|^hiK~Q&F)|silBJh>tap z=V8EsE(g}7O&p&VcWn`kc61SOUFs&{=%=+HVl}IaOF)M}&;$l20Tx{q#*$Wnq8o3{ z{Q1`q((_PNdehCDH-GP2w{z3YGuFTNod0|-<=>3+cItL%&p<`Vt~TA`2EEM{A0L6H z%8H+zc^UXPZex;b*qVro8(wcpIXOwr@Z8iutqo;*zv@)2^Dj@CmgbnWclXzSs|1iv z^IlP1mc-QXZmGy(Z=0_AN$^FWKY9BV(TPqo>3!RE^5 z_4h+g7VCGof!qShV+;%pztr7W7%~F1ttM?=|H`Afedh}I{Z)&mWxwB`jkGrFf^ml+ zan)+^tx=y& zW?OCg;2)I&u@gitcrKvK#PEgbd3^NA_w$7JUv1W|k23Hwe@CPI=0kThBGr~(VnCM1y;9kAbg6lG@mtwY;fqIaSx++F7k4s$ z-p3H6F^?)ULnQ_W{nCrywSQi;Z91}U(;8cl19$!}Eam|P3Iuz-R0-roQUPG?m}v;_B!@(FkI-qnssuidHCm_(poET9mt>ifA=l4?&H#}M zHiFdKX-r=exP5n}pXu`WOB3yN%PiORR?Dq@D!>2A#MXMFdXP#8c6cnP%;fMrNH;J% z?fmMecb}I(xpzEfR`#kW?|pT_s`C4mDC_UbL23mx98+;)X?Pdft*}vjZRq+7--3!> zge&}s=>D#2!C8c#g zJ+A6a0;z&vhxLjevs2TL%-b5a_ndA2wW2GPQ)8;#O+&-8CZ$}Q^yE*rw&mYRUjMe- zSOU=kCigmT)?{eN3q3o(`N*V~E3)@)vx?rbWZL=r0VjLEhZR2)^u3vP`d;PAu+=B~ z->-hkZC>)^=yY2}uwF3HaL=`egW>M#ZKtj`9r+c%Jnr?y|7)MNbXyfYIQO*X$Ax7) zk{7Da)!w_jwdUC_FS&nny^#|0i@9JQhP~_Y_`7QDr}X#x5>|ukHGX~l>YnWP%Va)Y zD`MMb_U`AuXEUSpb}yZD`}wt?wNXfsu;9B8C=ymZIq$eAR`B&~iI1jn6_!6=)rS{7 zT{~4~PqgLnclW3CvYVd!Y5T22_x>MG)9tnazGqJ%B`Q#~&tA(T_|)&~S*g8!s;4Kv zzY})@~#-~zLjM<^YiSeb$hnXs+Ql(i&P36$nFG{7kkUnU3M#9 zGdE0XT>AFp_PVgMh{(6`)M^E1Fr}H$wTq}Kg;nOc~gY6&J zylZ{(ZRgcHRrRL)cA?%^Um=+$0uGi}C$x7f-;&&Dw>D<_k#ik$w^d{oU7iz_H!Ill zzTMO}CfnxRRhzQu^NpZmIZyLD-zbiZOSMX-L{Bxf~PwLCBd^Wv*&!_MIYA1U}Pu=wP+0vf7Tc#K)drO+G+2U8` zpHr<_`RZnr-2C{{!rWPvKgze-81A38N)%~U@x2M?7Wy$$C|xvCM0Zncp!*v%f3(f%)eEa23^{x6nSrANysEueRX}E zb!DdLMCTOT%&=4tt z85kG>Jdj&O3=9mQ00!xW<5o}+3g{WSsM$xwW zR+3grw)n~K52<=;*v{u!cH`Ii{@Asu{%6)d4d1`^S$*B)GxNgF8mZiofvp8NeR>U2 zzsw;W>^7mLK}MOYgTCF~IAyz^R{CdOue(NlMVcU|Zo9cg(|wQW%M~W6?5ZPd^;Kss`F!xqch9>*_xO2D5^wNK@mHuGcp?NbiN7K4D_f%%P z3jd#Nv*gdNdwT8n>d0$(e?c0dILsZi&2n~_mTI-1&hr&}y=L01n-jD$y=Qlf-#w#k zbGG;R`q^*MG(WrYN%ZzmS;b%dwRb+c zmK9dALk=1&pu_yZ9V&;9(#MuPdH+r4xjcWC*Z+Nc%jKe?Cw;{0 zw|XPBQ7=@3{8kYg-S2Vkcl)y*xkw|)^-{YtHK)(HHRt`k$dl9mZJt%OTLsy94mU*@ z7&chFzp-@A>GLm?U1EBJG%X*k_5FG5Q%L6H0+1_f@#9Tg}!#mXE66USE3k zPSv45*FJffL{`t;x&G_6?z}H2g6#g@Tb5&bC$BzxRsH=Za~{vyblGfa&A;laTgtEa za3NfNq2LI};Z=v$HC3LK2c_8+-OWC=X?u_6)8hB}=MIGV@7r4V zLhfmf<(et|F}Efj^*)P~Z!ScfTE@UoAsoibfBL1RwQ}0jjq7FVgX4a-^6Gm2QkA?Q zEmpMtt@qDIo=!*1vzKpNTJv|yGoITA&LMZwlR+Z}f3?0YC|pEFj{C8} zEH__za`&OqtjoQVy#2Dz?KsPdG$!Vd{9$7;!-KOKQ(^_<-_HqS>*Reo(?s9BxSZv-sf+3Px*ZCrSG~&dS)pOpO#LZ zWt`;fh@9{?gVdX^zSw-Et$P2K=SPa{{^eOKt?a6pD^MgVYzhVEj|Uis3`r8aK77-K$jN2+GJ{M{TRr!>fU_HZz)S$l7jb&~TO|Ki|J?~j|L7W|*2ygdjtN_>#P@J2aL)5q_U}ZUW=8MRFjQ=HEYhyAa{h1?eANrZX(q z?6rDlU_0NOm~-cDN6f1#d)2dyCu=Lxidl!h!pckxCJPw$=EAo?E7#i3%zkRk;X5aGdmA21# zD=mM%xNo{N=On^a4OY*T&oeOaKKtT)TJv_sdiR+ItEOy!n{p9J$uCfJXDHmxk3AQC ztg8FE@ZZCXC_4*Zg>Tkm*cEkuU#)S?j}JMUPO3>7Cb|6j`g(fZ-(O4p=i7NsQuUse za&uE^+ZGOMmT>0ze^2--5CVr~g8MJarulYR-W%s@_A08eyuK4f(wBg|I zudm*dN=iynUS3)nxv!>DOebOjXhHdT+wU=9Ya$Xqz1Vv1yV>s7UqhmK^;6%=dhL80 zZaNt$%CE>8Ds4E|D{Zc~`|Y;qWBu~;KR!O5-mSaMW95~d7RwedRtC+HgO;c~y}tin z>AO9j&)NL@@%VM>pWFHSYeCx(?mb(*c(F2QG0m-8w~Xrl{Q)g{irkRkn6-6XXJDVz zs}((x#%aCp>)&p@{;X4dUW9(}#ap*#-7UXwYyECVvYO9~3Ax+vn*II#{r#2X5Ur^; zACCxEKAGtL=|MC9vvs@Qo%(#<{(YzC`-;DJ_e_aBemiQty7j+?Wq;l@_FegcJhwDg zP?_oVk!`p0W;^p)s$5>?dwN6S;d_6&gNuvZ`sL;Y& z$79mPH&drSy_r7$tID#4J#vAk;wHc8y1{X8cfDn~ZHyt(G=)R#$IjA(wQqJj?%Vn2 z)9K=atm12?3lxSvKHh)+x!w1jF=aPXC5_X3lJ^HpKMe{pqvB_0&djkij?Uj(+HW^M zXyue6*{tlMGls{Pgk=3G zNS+>Bb`rGXO}Wovk$YeLWM8wBN5$jkY(8&Sz1OW{^{eaa<3SfMKb@7m?qmz6u+7Go zAAf!Gyti$0#oCE7duD%SLFDmQ-4cQk$%otd&x?k~OkCV=XZ6(TR^95IJ1v*bEsL`I zy3&8?(xpouUSGI$sVZpkz&WeeYj#Don;TVrdIH*Wacg&*Sj-gJ60>Z;!0CS^Td{(~WX&Y}h6Hn2}v(f}(TV zlP{P3{j00153fJ@uw8!MvuDrd6rZy!wZHcF+im^lbBg_9k1eYG_2s0y{jZCl^}_K# zPlX4qzFKwUm;YQV)A&D+#IL`)5w&)j*V0K|ODFa9^?`Qncu&(g`RHi(KNc;8!#E*0wke0HoD%tmK>-y9W4-S^vUyCijYx;a%b)Ma~ zjr~iba{n|WAM25<{B%;i`0Lg1>u*83iVoC#nmm8a?^qd70$Eo7|KHCy>GrojT=!iW z;#FK+JZtvs%iHts^GFyZZ2i7EY<1%tta2BpJoyr)6Suk<(t zZ{NPXIq7Iu>AxMn-|fx^?LLm%?4~}yrpT>dE_QnIY@<{!yN{jzYd#BX3|a{)#b4L# z0nGvTS--RJ|1&jT=+x652}7mb@Ap;v*?zt9=f`pTb7y86Z$5AL`^wQD+iqp8_L*n1 z)4TrImdwkq>gFzc8{j3sKW>rYTg#Pm#Ili&Gr7VkpU)N-9vmEO_xtAgv>zWH=D#Yu zb?a8q^SR~E8rkJeJnpxj$I30XWbN9w|NrgvpKm8=k`ZvMM{@GUC&ca_MeXk`=5DpbF*=I-t~OVtqBL4Z2o*WJlAU3)~%+@Y&<6(9Bekuy0XH=eEr|k zh2GxY|6b1jrwQ_NY^?q4+-;G1J03KBd3iZ~t^DGswQ1+(Sk5#~_miu7vC!u4m&=hm z3LeJ4soHtbO*-}SS@ZKhK0e<3`J8q7t1ByCUSEGd>i?NwKTB0`-LiT9-!t6@w0?bm zKR>qYrs`yM|8pQuoYvoO1KPsAy?1$t*3%D%`OnX>EZ+6xqq^Um85@(2U;Df3jp4!f z(=tNV>Yj`~Hm&IVVw8%l#M)5l!!AFIhb=yHEDG25&$q2E1MMxmQ~UjHy^tfO6` znc3Oi(b3WG_I|$y&Y=yA%tp1pzQ|O+*(hn26S2I$Y-h~5$n?2Wzwdc&yD~&8*2*8W zJ?EU=?>AfR_AOni`uJGy>3_f9&oAHeSoUVYVP5OM62Z%SPV!m5*%0^WwCUXc#pf*5 znc4YbRzDWkkDHUdey`c}`1;y^AKL9j?v+2?YFz&APE7gT(wF!5*WdejuKd}K$9>VO zCu|GRdK&-#Yy9U6&iqe*KA->H>4R1Ama}HJpWG=vfA-7E%b!>J*J^Q#>%Ez_vE=Ew z4tKfACsy~b7RP35sqfBtJu4?=x4*{odG6Y3NZp_pW!o+>hGoCGvC;Bji}1BqH$au( zmdk#pPpZ$K6S+A}w5?#jl}lUXJ=;S zODL^7H%ZmI=x*utryCCQoxU0#zc=jqxe1ESpFZ~2-{C$ey|+_i`sUy7c0d1gTL1i( z%*(q{d8G4pB!XHGdX;Z9gO^?TE9G-%(-gH?RKoW=`p~$jXmL#jl^VxOMxsF{l!nWvUI@uWy`kVuGJ+{UJ{EC!p=u)8F^) zSf>-YNd>ema$e=LnV_A!bFIoiO@+$mbEo(9_2t>N^P1l=I4)mbv%G(G*y^1h4sjR1 z-Fki9`y<9ds?ekf4|KiWH_WDX#m1Kan&&5|G)bE`~CX=rDb>5m?R(T;gPi}={F-|I=AeWX7F;qw_gf3r=2|oTE;1=9k%APq3wqQ%$6^gO#TE~ zm?WLE;h>bfdC`*-pe?eXwP5{G&7gLKu$s>aMs}GE$By&JSQvondS`yyD{GVM|Np)} zpOKlZTrC@0Z`N zy;=Q!@9Q+#a*5o@uie76RNvcGwA*YdcpPWVel@G~_0!YS*KeP1Ui0I_cV20;ocwUe zcGCk^7mtg8>HrfyL!}Sl_r9(xFa0&+xO}}0=)i>CDlRcEHy)QeZU6tX{qslN`hGk2 zq%oe`Q~CMQrAwETuRpZ^_t<{Z{kq?!S?#AhC##ia_gJKym~du>;o{53Yrn3Je>+K_ zaOv-NyYFu`L&p<`= zm6gHV<=$^@Z_oF$|NG_4Z1eoBjgM!Ct_%UK{(iIT^}70xf2U2GCR6+6A}D2EKY9LU zLNo8Czu#{EzxsW;ZuB%zWnU_)?04tV|H!=u@AqV$>uOA{{w$KSWnTTgDdG7b|3dJA z>>GaUKe(OS`Oa?1ylhqKQ(aws&gSzOo#<_AP9F#5tD4u*_qAkBuZi6J>7{?Y6}xOn z0BFVNotn>QZHsh4`NyxlH9BXb>-N6NUteC%y;u8TUiG_^=KFu1)sw&NU;pcJO#R=l zbM4-BDEGbix}N*5YyAJI{WVXNZ|3j+TLjvYUVZ;} z+`QUvH|6%rf!6X|`Rm>zadGWq+bes0?poP_-&8lUuW}KX? zo_<<4*M7Q6`JF=dKHG0MY<@gwZv774b7=W=ik{@*{<<%VZNA?ruK)TsaPhzT>hE$X zsin`jf84$6YhE6}!?cK9MQK4NGb1s*6(|!$Jc=m*tk;p zL~6yGD=UNVeX}ZfaA1yewQ>5np4{8pw%(9iy=qm`rza;Z*Lp4uGAw%&AaOZyLot$s&`-2d12Flc5tt^Ri8vcG+7Kzd=B z{Q2bSi%XqDr-)tEMrxl=2tU+upc=G=fBv5*>cvr@GJnOYRaqbR+WmYox$ytr@1PxA z-KAGgw==WzJu%t8W{pmM^;y#svreWY-P)3=yYD=x&HH>;pPcP2_9MTqT)%!CR25b{ zpS!p``}M`e?sqC4_ns~K4=N2Vy)0S$kz0R{!Si$LE(5 zcXf4%-A~WW%>|uDVY$}w|DVr`tG~aKJMsPI*6eUlx{7?>BWb)W^4;FDx3_L=NOWHO zQO>sNNcg@_Q-!PEg7R4JF{7D2KJ)GNJ~;QFC+<+kThHx$Q@cPp1B#zaHBkC6ulT&J z`SPF9+j2U$->dR|I4kh{Jlo<~^*;*gtkRbTtpwFWe%YW7!1i6wq}+70w7L|X+bR_7 zLCt}Ud3Sd$j(dN3xqpwm{l3U|w&m~cs2$he`{mN(y0f4<1JurSdki{I>+0%o@tD8< z_D79x%tJXm_orG9#~$_T8?J&@FlU_Ax!&+%o^AD~P3Miz+ZgXEeLd~+tfk)5pRHZ@ z^yyQ}@`*BLIWyQdar)bS4Y~F@`FLOMwBLSntxQ*~S|!!XFKcD;>-+oqnDv!6Q>U9+ z+U4Kd)3l~`eV&!_Hg#F=EXzmnl zPi6kQx3@a^_qVr|t8=a9_I>*FY0fnsIhz~KH(Op_UVeOE?eD&-y*r)en3|e?yp_G) zROXH6~l$GyL|_wk<3=dw-WVq;~4m;34NiGR?gw5#;npRMYtM?vRMLgRtK zp$@bS3e<}&p0&U5v72kQ+v8)s-S_rZKi`t}_SV+Qo7wa2YKvygUw`3A=NrZA-*3zV z9XXJF*UQ^`_S1c!o$s?{@x9K$6K%CkE~o_ z)`5;X_5y82?2xmqa*2$L^vnKq^X9s>ukY+E29@EKYj5tYF2Cngx3f)cd*0ny-=*?z zZc<(T^H7KT_L`rc7RSB5u+SNj_^h+9t+}zYIDPTQe}8`;e{pefan;(u#crmS|NeYF zFP?JNy6nT9t>&t(yy)ppKu~aR)z?#*b!w9}Pvj-$Iu;fdf?7(32?rYHTmvn}Hk#=Z z_pRnu=JKZ|`!{VedS7Z+@gd>dd&8+(Gr~$v&fm{<=+Dp3o8#ooaw0b0{XI22F0<$l zcl?h-hWn45n5g`C&E|7i;605$?!K=JpDN> zfjcIzssI1)BdFPZ=c=yfq>5)V(?4x{?>E=#smcEj4-Z$aFJ0GoV$q^S8oIi=EytHU z*!K~%Xt$kD*6P*Q{@ORmXUpD$PNR{Mk}B_!HcWC65f_)goDDhvDXXaF4@KROXS#NTFzP%n{Y;xvey_53-}-&OuC6}@I^bu`>+bIE;_aiJcwDgl*hnLr*U9Z<=U;7>&8F@1&@d)T7 z4p1@se9yY-@9#h*xy9cvmzAe_$$tL}GV{X$=E~Z-B3@-Nr}QI_Z#u7gzj>yr;KW}Y zujQv@oqNA=@yly#qc@8^dOAHmPsFXK1GJyfy-iTvZ;pg*)t3yDeR+3x?P062_j0~< ze(g84xfd@WZ6QCQpXj2X^iL$?wClQuN4LG%a@nu@vY)kX{`dJdl|^f!x1akw`8EH6 z$1fZzpPZQJRQYC7@|?+5Z5t;q+O_M~itAP-FD|S(3Oa-W>?e^bP)(hDpn(yzdU^3W zS@XP@$&ZVlozZ-8ey%dFUG?qRJ|f!4^<{X}8U{hZ!1(z2m;bDb-K`bH2-;PdbZUxb z<$d?q*x1$8b$!dD@1K0baqG+^wSD*M-!3^Vb|vSXK~imP?V5;XrsC(V*WgJoZftzwrU?PqX^1MOL#Sbco^ zrAwDIbag{_*l6nO_t*buukUbf=Mz0rr=_i3JnO!cwQ^W^`1WnbpJdDxob4LCa9{aW zmxQu^e|~PP{r%1D@!wxxyS?@IZaHbH?B17C^ar%xns8vG@D}B*yt3%Uwt|w< zw>LM1JtsxSy_^#47r4U)blB3JlFPmu^Y8C#x_S9_{{Fd_|HSRBdRlvar``VQ@9%V% z99Nk7HAzeKA`|10@2@W`JRG=Q*0N}c>o-tqTkZJz9gn))l0oP98K1LQe6hmS)%DCg z+uflxVsF;_G<{pFr;EHK?#Xn}9%s<5^}+`S8s}V_Q~T{E*Yzf|+*=~|e;hM^1nL1S z+P81tf^XBZB?>PraIC!lxq*?nXk9&{hwSlLVxDVCUtW5;;(C-;&yV~6|K9h#_d0m~ zuaJ^gS6(tF3#<8Ld@>c&kGqp)Cw#BYU1Fo{N}EfeNW-rUdxYFr?rko9es0dQ`Niif zyRI>vI(_;vXs`f$6xCAi>0(dh%HQ0Wc==BwGrL=6W@g;?Ij=wOE_{5W+8N522ty=99D=!mS0IA>>Pn_n*$ zuYI<8VbcEd$GE0gVZ``0`Y2JN)l z^Je>+H9FwKJ7zJx?D?@SB;{qr43(3+i=%w{y0%7c+IlEV5H z!N%`vVt1RV`OGLd^Vz*eLU8HQrGfGB^-kZC+|9XO`tHt7g;(1OA0L}xUtf3b z^&}P0j^!0AS9adIb?e67>hheMn^eo*-ujw1W6f2InjZx@x3}qnGIMeqXdrD*tKj|G zvf_&&$M@QJ%Rc^krTy8wFB2XuaBSXG=5}Xux_`Im(~0hKouD0QRo~wHZ2Wkznfg?qPN!5XOFIc|1l*)zF$b_`(OtY^&G1>1uT@Q3@ z8|bXi+ogA}t&5cgO$Y3*uRC@6bTOB5pS-;tXyj`Ti@yHuH=E`>1J(4~^6%ff)u&QA z#om9Hx86>b*Iz;V)L%%)Z_A17k+=WHoP6}?QSc@vx#~9?C2T4R7Mr&7$#!L4Ubb}= z^SuDYo*Qv{f~&ibW-A#g!BpKmhxzoA^p!0I3&SmCcWxf7K3mYae) zKRi+<9v?eEd?_iZqA2hj!qM+PkLuSM?kamb>+-Ca=4q^t4mTc2GcI{?VR78;oyFv((c-K%>jt)19TA%^$n>F4JBIKBVR z>EwCyy_PJ2UgLQuUi_YopIG zo`~IDcJ$NJ)3*-^ntE##g7$Hr(sX}+Yg^XUReSc_Y~>a|*1*Ut)oU*5a(7#9^qKkg z`$Ofjem+xin>(HB);g8WAAc8htypvSZeDi5lM@qVw{G2Kw+4@b>`IhMtb9vo~2ZD4{VU(lw|GqX&+8E@~DG){X0s-b^; z+rD2`J8TW8%s2i0@83uH|AyHG>ohMf_s{=$u1?)kOKH;gzk4G=LmH9m&(E{9*3Ykd zb!Fwp?e)L62Zn`xn^-Ka8+9dX|MR%pD~yw(x98>`*>m*i+g)tC%irId>bE>vr)P%B z$@gXN?)+S^9BF36ZiNSD!}rze*Y`i4SFQKF6f`L}r}EiMt{dlcqqb;hX=xQjfhGlZ zJnpkzv|>eNy$WcCbKjSx`cJnkTeeJXUe&9W*J@N&W*k#^1WHAq&FF#a-{07%{Os)P z>C?^kmA}82{OVN2lM@qXnB_*TwtWyf+c+@x`R3)i(VNT`BiDqE0&Xl)m0vEpFW$G$ zZn$_-N&Qi@qbQOg3c#A$9T)BXo+Id zO{=?tw>KTlMroZLQt06@*;M@e+zi8Hw{x#S=1f-i?>pGcZvOfoXyE9_L;iY+?RU#& zAJ%d>Z}&SV=gtnp=cVDXrJ;Xr@BbTJ^5Vk7CGXO|ytw%B^89}$R%LHyT;5gt``giG ze!CYAvoEX+UJjc3Se$--p8MR-=d9n$gd2QKnPr&l_U86>{nwxogVeOQuQ^BXamEW%|FL`&z z^7&WLaPy)~n=Uohomjbio)o{$hXd|yee*#l6|Y)#>UUjy?boY|IT9kf%-p8HiYxVT@|M|4z#iDM%ssj_BfsT}_0BvDB9sjTBTy{I3 ztQ6=l1W;-PO$p!FQ(5fydUwf7A<&5Q6t;=#i$9RI) z2bA91Rr>nTbNm05j&FW`yPe+;n)CIYf7-fza>Pc(&htEel^(ZeMAlC+0_9$)N4VMz zlnO#Xlk%VvGgq* zc5dMmPWt-l>c)(Viz@zpy`KE~+S-lT*Vmm$`B(3-JbZoJ#r^gFK}}lFB$!*TlxS*d z>hZnrWv$DOeBbxomi>nv==cv%KLk``Y3S*lv-*Bvp>yGJ*>a62?&`uyH9O-S5sJ4a zyxOHAwoc3qspowW&T_U*H~^s)rh zI$QE?=c-j&YQD2X*!g5KzCXXdIsN>PN8Ks#kYXM9%pN{(4+RtyXhU@yw_#qWWt+7A=cIIupO)kYW!|{0HF3sR&F8BA<`rmq8 z_Ts|B8Haq;v+nJw{CM|$oq1MvwrrXlsHwKZbMm8f``?izZ*P5FvNta?^QGtg?AX}Y zJ7u?XLHp**3e7+#SZ+=~4>~;?R3=_r?myq+agXt$`v3pl|BVbPdb3~c%C&39>i<2j zKL%P`aq#@{^wL-%{k12Kh`Whtx=DZhk`yb5XjC*DQUaYh3L1g~9e4{G0OXOe*bw?= z=el)z?{+?)2ReUA#q*KC=Zvqft`>q0p4|KWUbT~~(Co{N%+1O4=GO^d zk16)exx4Es<5LCCNua~uAMd{ZHxIP*V`KUII9E-9$@TgTcW>q1ntEi;)N@E}Xbl@x zFNP;dlTRK29c|7nrqcmBPPSD%ZpL@p+&eoALG3KiFvOyT3lA!aZrHVJ7x-}R&1q-5 zKqqe+W?WdX=S?!`C;-r*y7K>jxVKMge)Z}V`1qlJKOP&Fzl&kjba*=3=;QJ2T}eL{ zOi9`jw13{z&K|buh;Vjb6mnzfJAG?w_Ty!<^SUlBc0Ud}Uqd{mz_I(@{(bxGK*vw- z|9Lh)>F1}Xd`qT+7Ag76u`mQ3-3#(MkA%Sj*LSyu18; zALv}KNvhtUQ@la@u?<-BPQAZe_}=_a*LA74H^e_aD)K~HFt)(p=k!+xIA@yY$DNsN zu7A$<`<)%1PH889d2ta`tETM?PfbnLiP>QQI=vBexc#eFS?m|OmR^1d>I;Ha9~EA7 z6+bE(9wP{9=#{*?^K;3)=LZ^@Hzpixs`z#@J^ALQR4#cz&q*#;bNhVMgn4;+1A~Kw zuU@@c_~XOF8~f|)K{;)i@9ZSdF)V?B3lr9!xnw>$Vy|lF=YQ?*I@X>&y!q0^X|Bkn zP{^x8-1c`}Wyw%fBxNI)&!b zr%w?(i&FP|y%w!|>1-b8ApEPL;j*9qfXZahX|ZP|?-m^9HLUpXAbFmB>ZvK9b1b^w ztlhH3#P07)|KlBk%HS>Zpi@X?{O;^7&j;1#*VaS|g9`Sk+Tm_$%6FZAf9h;pS@9uS zb>bxV9MgNNJRaSWH|0<^OZ@)s?&-@fzqIO>?pN{Lx3Bp5IrdOFL~^k6kPyr$166vU zGsj*opDzbG?R?UtNiS|~&0g|v&Lq$Qs=IdWTCr+Xmu>Yo7gtx;H+Of3KkVq}01dkQ z`tnk^_ScurcXxNYM@B|YnKo_T_ctM-p{}K+rEl)Je8!$jtKU0rm+cDIRg2T~hN#O7@g1H-KabAM0%arAR$t42ZlD&@LwK5oeS zJDb#dI2g9Lo&3GeqU-pxl%%s^s#+=E|C`Camnn0DxrBki;UVZIoG9s&Ym=vVD*gNV zuq5Q_Dp$p*J!+lH<1dOLW$X;u7D2{_Yc2wY?$O^>J~kh}%oUhWCg1VHK3G~wxf{uS zTZ9gEFgRpi3=uF~sw4k)sp!lKH}-u^6VJKa`B>mAvmyv-{l|i@pbMd*m}Le1FZ9<< z?)z#zWuw5KKRZkIe4Dlz;Y`T&CJki^_9;H zzS6$W!qH#n#1Z{?5s#d_tEGbXf2}Xcxw{y7=lE;Tl|?4gT{yXJpPzsJ$d>8GTo-+` zvM23$+Spc6ygMJM`Lp0FD3<(|J*kcVxNv`PM*CEkJD)?W>OQ4d85wn|U)^`AWA=OB zlN~u0@{X6wc{kRzA4ke0;QN0X zCO?yg&JJ#oF+0;f-n8LgxQeWN&|~_<~fGZgZ6oWUvU77j^mb zVZO);*44&^pKEzH7VlqdC8xjEOI=Z(y|!8@@5g@Lk2hi-A{}qHAQu#H3nr>`R^;TV?W^;54tW#aziiJ2 z9pUSLUwEv!zfc;fYk%R}R1HQ32KUd$rm5`v^jEp??NZmmyQ!{$QIoR1o8H{0|LC}} zRMNvNMdZ@`FDL;ktlp(8$iH_&r}%XBk8l4+iiq>(&Of_V`jVirSjwaQ^L*WX_dZ8T zry22}&W?o|C?~CDzf^egr{|x`)4LyknfLbjUj69lNBZY^9DlaG6nS*?mOAM8*&?I* zP_=1md>?(D?|YQDK2&D!?E;O$r^{62=1uMVx!Q;iIYuE@eMQzf3mJ>6etdJuC&p}# z#=8Hj7g@YcUTOCEUtH|;Bh2TQCSOgPD}abq1|_iL7~Q3m=GB`D?~k9?xqsINjdgOt zBF(?Ip9@H;brvcP`?pf~(Jxsiq!p_S??GkG0Z#Aqe|#4`0eg0lqU^>BU!m^nOBS!tcy#CAN(oC9 z(Zlv}BG36fT%T{6cH8^tK9#upGmd=X_0*|T7Ov*EgshVQC(VW!&}`m?H%2o%Ors}9 zY&PwzFcfxO+0j3LVwd9IV8a#hT6Xu$Mbp3e9X-CwT|`v&f9j-m&i;lFKZW>b$&{oN_|U$3m+7y@rAkXDYi)ZZteMIbx1VCKoHsR43xPY4q99i z*qG}tbo-l&%ZoImGB`k^YYIpm0-tb`Kq}1{7#L2V-*r1GFd9IJ^fH=0hEaZb^`CL3 Vhp+aA@+IKTsHdx+%Q~loCIG639n=5- diff --git a/docs/en/api-reference/peripherals/usb_device.rst b/docs/en/api-reference/peripherals/usb_device.rst index 79c4934552..ab02c6f136 100644 --- a/docs/en/api-reference/peripherals/usb_device.rst +++ b/docs/en/api-reference/peripherals/usb_device.rst @@ -13,7 +13,7 @@ Overview The driver allows you to use {IDF_TARGET_NAME} chips to develop USB devices on a top of TinyUSB stack. TinyUSB is integrated with ESP-IDF to provide USB features of the framework. Using this driver the chip works as simple or composite device supporting several USB devices simultaneously. -Our USB-OTG implementation is limited to {IDF_TARGET_USB_EP_NUM} number of USB endpoints ({IDF_TARGET_USB_EP_NUM_INOUT} IN/OUT endpoints and {IDF_TARGET_USB_EP_NUM_IN} IN endpoint) - find more information in `technical reference manual <{IDF_TARGET_TRM_EN_URL}>`_. +Our USB-OTG implementation is limited to {IDF_TARGET_USB_EP_NUM} USB endpoints ({IDF_TARGET_USB_EP_NUM_INOUT} IN/OUT endpoints and {IDF_TARGET_USB_EP_NUM_IN} IN endpoint) - find more information in `technical reference manual <{IDF_TARGET_TRM_EN_URL}>`_. Features -------- @@ -22,7 +22,7 @@ Features - USB Serial Device (CDC-ACM) - Input and output streams through USB Serial Device - Other USB classes (MIDI, MSC, HID...) support directly via TinyUSB - +- VBUS monitoring for self-powered devices Hardware USB Connection ----------------------- @@ -36,9 +36,11 @@ On {IDF_TARGET_NAME}, connect GPIO {IDF_TARGET_USB_DP_GPIO_NUM} and {IDF_TARGET_ .. figure:: ../../../_static/usb-board-connection.png :align: center - :alt: Connection of a board to a host ESP chip + :alt: Connection of an ESP board to a USB host :figclass: align-center +Self-powered devices must also connect VBUS through voltage divider or comparator, more details in :ref:`self-powered-device` subchapter. + Driver Structure ---------------- @@ -51,8 +53,6 @@ On top of it the driver implements: - Redirecting of standard streams through the Serial device - Encapsulated driver's task servicing the TinyUSB - - Configuration ------------- @@ -63,7 +63,6 @@ Via Menuconfig options you can specify: - The verbosity of the TinyUSB's log - Disable the TinyUSB main task (for the custom implementation) - Descriptors Configuration ^^^^^^^^^^^^^^^^^^^^^^^^^ @@ -81,9 +80,9 @@ However, the driver also provides default descriptors. You can install the drive If you want to use your own descriptors with extended modification, you can define them during the driver installation process. - Install Driver -------------- + To initialize the driver, users should call :cpp:func:`tinyusb_driver_install`. The driver's configuration is specified in a :cpp:type:`tinyusb_config_t` structure that is passed as an argument to :cpp:func:`tinyusb_driver_install`. Note that the :cpp:type:`tinyusb_config_t` structure can be zero initialized (e.g. ``const tinyusb_config_t tusb_cfg = { 0 };``) or partially (as shown below). For any member that is initialized to `0` or `NULL`, the driver will use its default configuration values for that member (see example below) @@ -97,6 +96,24 @@ To initialize the driver, users should call :cpp:func:`tinyusb_driver_install`. .configuration_descriptor = NULL, // Use default configuration descriptor according to settings in Menuconfig }; +.. _self-powered-device: + +Self-Powered Device +------------------- + +USB specification mandates self-powered devices to monitor voltage level on USB's VBUS signal. As opposed to bus-powered devices, a self-powered device can be fully functional even without USB connection. The self-powered device detects connection and disconnection events by monitoring the VBUS voltage level. VBUS is considered valid if it rises above 4.75V and invalid if it falls below 4.35V. + +No {IDF_TARGET_NAME} pin is 5V tolerant, so you must connect the VBUS to {IDF_TARGET_NAME} via a comparator with voltage thresholds as described above, or use a simple resistor voltage divider that will output (0.75 x Vdd) if VBUS is 4.4V (see figure below). In both cases, voltage on the sensing pin must be logic low within 3ms after the device is unplugged from USB host. + +.. figure:: ../../../_static/diagrams/usb/usb_vbus_voltage_monitor.png + :align: center + :alt: Simple voltage divider for VBUS monitoring + :figclass: align-center + + Simple voltage divider for VBUS monitoring + +To use this feature, in :cpp:type:`tinyusb_config_t` you must set :cpp:member:`self_powered` to ``true`` and :cpp:member:`vbus_monitor_io` to GPIO number that will be used for VBUS monitoring. + USB Serial Device (CDC-ACM) --------------------------- @@ -122,7 +139,6 @@ USB Serial Console The driver allows to redirect all standard application streams (stdinm stdout, stderr) to the USB Serial Device and return them to UART using :cpp:func:`esp_tusb_init_console`/:cpp:func:`esp_tusb_deinit_console` functions. - Application Examples -------------------- @@ -143,7 +159,6 @@ The table below describes the code examples available in the directory :example: * - :example:`peripherals/usb/device/tusb_hid` - How to set up {IDF_TARGET_NAME} chip to work as a USB Human Interface Device - API Reference ------------- @@ -153,4 +168,3 @@ API Reference .. include-build-file:: inc/tusb_console.inc .. include-build-file:: inc/tusb_tasks.inc .. include-build-file:: inc/vfs_tinyusb.inc -