diff --git a/src/omv/boards/ARDUINO_NANO_33_BLE_SENSE/omv_boardconfig.h b/src/omv/boards/ARDUINO_NANO_33_BLE_SENSE/omv_boardconfig.h index 46eef3e35..689d4ae56 100644 --- a/src/omv/boards/ARDUINO_NANO_33_BLE_SENSE/omv_boardconfig.h +++ b/src/omv/boards/ARDUINO_NANO_33_BLE_SENSE/omv_boardconfig.h @@ -38,6 +38,7 @@ // Debugging configuration. #define OMV_TUSBDBG_ENABLE (1) #define OMV_TUSBDBG_PACKET (64) +#define OMV_TUSBDBG_BUFFER (512) // UMM heap block size #define OMV_UMM_BLOCK_SIZE 16 diff --git a/src/omv/boards/ARDUINO_NANO_RP2040_CONNECT/omv_boardconfig.h b/src/omv/boards/ARDUINO_NANO_RP2040_CONNECT/omv_boardconfig.h index 87d42674d..7545ae82e 100644 --- a/src/omv/boards/ARDUINO_NANO_RP2040_CONNECT/omv_boardconfig.h +++ b/src/omv/boards/ARDUINO_NANO_RP2040_CONNECT/omv_boardconfig.h @@ -37,6 +37,7 @@ extern unsigned char *OMV_BOARD_UID_ADDR; // Unique address. // Debugging configuration. #define OMV_TUSBDBG_ENABLE (1) #define OMV_TUSBDBG_PACKET (64) +#define OMV_TUSBDBG_BUFFER (2048) // UMM heap block size #define OMV_UMM_BLOCK_SIZE 16 diff --git a/src/omv/boards/OPENMV_RT1060/omv_boardconfig.h b/src/omv/boards/OPENMV_RT1060/omv_boardconfig.h index dac5e4970..e8ae342fb 100644 --- a/src/omv/boards/OPENMV_RT1060/omv_boardconfig.h +++ b/src/omv/boards/OPENMV_RT1060/omv_boardconfig.h @@ -56,6 +56,7 @@ // Debugging configuration. #define OMV_TUSBDBG_ENABLE (1) #define OMV_TUSBDBG_PACKET (512) +#define OMV_TUSBDBG_BUFFER (2048) // UMM heap block size #define OMV_UMM_BLOCK_SIZE 256 @@ -89,7 +90,7 @@ #define OMV_GC_BLOCK0_MEMORY OCRM2 // Extra GC block 0. #define OMV_GC_BLOCK0_SIZE (26K) #define OMV_GC_BLOCK1_MEMORY DTCM // Main GC block -#define OMV_GC_BLOCK1_SIZE (293K) +#define OMV_GC_BLOCK1_SIZE (290K) #define OMV_GC_BLOCK2_MEMORY DRAM // Extra GC block 1. #define OMV_GC_BLOCK2_SIZE (8M) #define OMV_RAMFUNC_MEMORY ITCM2 // RAM code memory. diff --git a/src/omv/common/tinyusb_debug.c b/src/omv/common/tinyusb_debug.c index e8ed8fb16..63d2813b6 100644 --- a/src/omv/common/tinyusb_debug.c +++ b/src/omv/common/tinyusb_debug.c @@ -34,7 +34,7 @@ typedef struct __attribute__((packed)) { } usbdbg_cmd_t; -static uint8_t debug_ringbuf_array[512]; +static uint8_t debug_ringbuf_array[OMV_TUSBDBG_BUFFER]; static volatile bool tinyusb_debug_mode = false; ringbuf_t debug_ringbuf = { debug_ringbuf_array, sizeof(debug_ringbuf_array) }; diff --git a/src/omv/common/usbdbg.c b/src/omv/common/usbdbg.c index b5e68135a..8e15d741e 100644 --- a/src/omv/common/usbdbg.c +++ b/src/omv/common/usbdbg.c @@ -226,9 +226,10 @@ void usbdbg_data_in(void *buffer, int length) { // The rest of this packet is packed with text buffer. if (tx_buf_len) { - tx_buf_len = OMV_MIN(tx_buf_len, (40 - 1)); - usb_cdc_get_buf((uint8_t *) buffer + 24, tx_buf_len); - ((uint8_t *) buffer)[24 + tx_buf_len] = 0; // Null-terminate + const uint32_t hdr = 16; + tx_buf_len = OMV_MIN(tx_buf_len, (64 - hdr - 1)); + usb_cdc_get_buf((uint8_t *) buffer + hdr, tx_buf_len); + ((uint8_t *) buffer)[hdr + tx_buf_len] = 0; // Null-terminate } cmd = USBDBG_NONE; diff --git a/tools/pyopenmv.py b/tools/pyopenmv.py index 2de6d1035..3202298b3 100755 --- a/tools/pyopenmv.py +++ b/tools/pyopenmv.py @@ -77,7 +77,7 @@ def fb_size(): def read_state(): __serial.write(struct.pack("