7#ifndef _PICO_STDIO_USB_H
8#define _PICO_STDIO_USB_H
27#ifndef PICO_STDIO_USB_DEFAULT_CRLF
28#define PICO_STDIO_USB_DEFAULT_CRLF PICO_STDIO_DEFAULT_CRLF
32#ifndef PICO_STDIO_USB_STDOUT_TIMEOUT_US
33#define PICO_STDIO_USB_STDOUT_TIMEOUT_US 500000
38#ifndef PICO_STDIO_USB_TASK_INTERVAL_US
39#define PICO_STDIO_USB_TASK_INTERVAL_US 1000
43#ifndef PICO_STDIO_USB_LOW_PRIORITY_IRQ
48#ifndef PICO_STDIO_USB_ENABLE_IRQ_BACKGROUND_TASK
49#if !LIB_TINYUSB_HOST && !LIB_TINYUSB_DEVICE
50#define PICO_STDIO_USB_ENABLE_IRQ_BACKGROUND_TASK 1
52#define PICO_STDIO_USB_ENABLE_IRQ_BACKGROUND_TASK 0
57#ifndef PICO_STDIO_USB_ENABLE_TINYUSB_INIT
58#if !LIB_TINYUSB_HOST && !LIB_TINYUSB_DEVICE
59#define PICO_STDIO_USB_ENABLE_TINYUSB_INIT 1
61#define PICO_STDIO_USB_ENABLE_TINYUSB_INIT 0
66#ifndef PICO_STDIO_USB_ENABLE_RESET_VIA_BAUD_RATE
67#if !LIB_TINYUSB_HOST && !LIB_TINYUSB_DEVICE
68#define PICO_STDIO_USB_ENABLE_RESET_VIA_BAUD_RATE 1
70#define PICO_STDIO_USB_ENABLE_RESET_VIA_BAUD_RATE 0
75#ifndef PICO_STDIO_USB_RESET_MAGIC_BAUD_RATE
76#define PICO_STDIO_USB_RESET_MAGIC_BAUD_RATE 1200
80#ifndef PICO_STDIO_USB_CONNECT_WAIT_TIMEOUT_MS
81#define PICO_STDIO_USB_CONNECT_WAIT_TIMEOUT_MS 0
85#ifndef PICO_STDIO_USB_POST_CONNECT_WAIT_DELAY_MS
86#define PICO_STDIO_USB_POST_CONNECT_WAIT_DELAY_MS 50
90#ifndef PICO_STDIO_USB_DEINIT_DELAY_MS
91#define PICO_STDIO_USB_DEINIT_DELAY_MS 110
97#ifndef PICO_STDIO_USB_RESET_BOOTSEL_ACTIVITY_LED_ACTIVE_LOW
98#define PICO_STDIO_USB_RESET_BOOTSEL_ACTIVITY_LED_ACTIVE_LOW 0
102#ifndef PICO_STDIO_USB_RESET_BOOTSEL_FIXED_ACTIVITY_LED
103#define PICO_STDIO_USB_RESET_BOOTSEL_FIXED_ACTIVITY_LED 0
108#ifndef PICO_STDIO_USB_RESET_BOOTSEL_INTERFACE_DISABLE_MASK
109#define PICO_STDIO_USB_RESET_BOOTSEL_INTERFACE_DISABLE_MASK 0u
113#ifndef PICO_STDIO_USB_ENABLE_RESET_VIA_VENDOR_INTERFACE
114#if !LIB_TINYUSB_HOST && !LIB_TINYUSB_DEVICE
115#define PICO_STDIO_USB_ENABLE_RESET_VIA_VENDOR_INTERFACE 1
117#define PICO_STDIO_USB_ENABLE_RESET_VIA_VENDOR_INTERFACE 0
122#ifndef PICO_STDIO_USB_RESET_INTERFACE_SUPPORT_RESET_TO_BOOTSEL
123#define PICO_STDIO_USB_RESET_INTERFACE_SUPPORT_RESET_TO_BOOTSEL 1
127#ifndef PICO_STDIO_USB_RESET_INTERFACE_SUPPORT_RESET_TO_FLASH_BOOT
128#define PICO_STDIO_USB_RESET_INTERFACE_SUPPORT_RESET_TO_FLASH_BOOT 1
132#ifndef PICO_STDIO_USB_RESET_INTERFACE_SUPPORT_MS_OS_20_DESCRIPTOR
133#define PICO_STDIO_USB_RESET_INTERFACE_SUPPORT_MS_OS_20_DESCRIPTOR 1
137#ifndef PICO_STDIO_USB_RESET_RESET_TO_FLASH_DELAY_MS
138#define PICO_STDIO_USB_RESET_RESET_TO_FLASH_DELAY_MS 100
142#ifndef PICO_STDIO_USB_USE_DEFAULT_DESCRIPTORS
143#if !LIB_TINYUSB_HOST && !LIB_TINYUSB_DEVICE
144#define PICO_STDIO_USB_USE_DEFAULT_DESCRIPTORS 1
146#define PICO_STDIO_USB_USE_DEFAULT_DESCRIPTORS 0
151#ifndef PICO_STDIO_USB_CONNECTION_WITHOUT_DTR
152#define PICO_STDIO_USB_CONNECTION_WITHOUT_DTR 0
156#ifndef PICO_STDIO_USB_DEVICE_SELF_POWERED
157#define PICO_STDIO_USB_DEVICE_SELF_POWERED 0
161#ifndef PICO_STDIO_USB_SUPPORT_CHARS_AVAILABLE_CALLBACK
162#define PICO_STDIO_USB_SUPPORT_CHARS_AVAILABLE_CALLBACK 1
169extern stdio_driver_t stdio_usb;
196#if PICO_STDIO_USB_SUPPORT_CHARS_AVAILABLE_CALLBACK
void stdio_usb_call_chars_available_callback(void)
Explicitly calls the registered USB stdio chars_available_callback.
bool stdio_usb_deinit(void)
Explicitly deinitialize USB stdio and remove it from the current set of stdin drivers.
bool stdio_usb_connected(void)
Check if there is an active stdio CDC connection to a host.
bool stdio_usb_init(void)
Explicitly initialize USB stdio and add it to the current set of stdin drivers.
Definition stdio_usb.c:300