If the host (or the software running on it) fails to receive data fast enough, an overrun will occur. When this happens,
the last-filled buffer frame will be recycled instead of being sent to the USB queue, and a full frame of data will be
lost. To prevent this occurrence, the user must ensure that the CDC data pipe is being read continuously, or the
incoming data rate must be reduced.
3.1.3
Mass Storage Device
The on-board debugger includes a simple Mass Storage Device implementation, which is accessible for read/write
operations via the host operating system to which it is connected.
It provides:
• Read access to basic text and HTML files for detailed kit information and support
• Write access for programming Intel
®
HEX formatted files into the target device’s memory
• Write access for simple text files for utility purposes
3.1.3.1
Mass Storage Device Implementation
The on-board debugger implements a highly optimized variant of the FAT12 file system that has several limitations,
partly due to the nature of FAT12 itself and optimizations made to fulfill its purpose for its embedded application.
The Curiosity Nano USB Device is USB Chapter 9-compliant as a mass storage device but does not, in any way,
fulfill the expectations of a general purpose mass storage device. This behavior is intentional.
When using the Windows operating system, the on-board debugger enumerates as a Curiosity Nano USB Device
that can be found in the disk drives section of the device manager. The CURIOSITY drive appears in the file manager
and claims the next available drive letter in the system.
The CURIOSITY drive contains approximately one MB of free space. This does not reflect the size of the target
device’s Flash in any way. When programming an Intel
®
HEX file, the binary data are encoded in ASCII with
metadata providing a large overhead, so one MB is a trivially chosen value for disk size.
It is not possible to format the CURIOSITY drive. When programming a file to the target, the filename may appear in
the disk directory listing. This is merely the operating system’s view of the directory, which, in reality, has not been
updated. It is not possible to read out the file contents. Removing and replugging the board will return the file system
to its original state, but the target will still contain the application that has been previously programmed.
To erase the target device, copy a text file starting with “
CMD:ERASE
” onto the disk.
By default, the CURIOSITY drive contains several read-only files for generating icons as well as reporting status and
linking to further information:
•
AUTORUN.ICO
– icon file for the Microchip logo
•
AUTORUN.INF
– system file required for Windows Explorer to show the icon file
•
CLICK-ME.HTM
– redirect to the AVR-BLE web demo application
•
KIT-INFO.HTM
– redirect to the development board website
•
KIT-INFO.TXT
– a text file containing details about the board’s debugger firmware version, board name, USB
serial number, device, and drag-and-drop support
•
STATUS.TXT
– a text file containing the programming status of the board
Info:
STATUS.TXT
is dynamically updated by the on-board debugger. The contents may be cached by
the OS and, therefore, do not reflect the correct status.
3.1.3.2
Fuse Bytes
Fuse Bytes (AVR
®
MCU Targets)
When doing drag-and-drop programming, the debugger masks out fuse bits that attempt to disable Unified Program
and Debug Interface (UPDI). This means that the UPDI pin cannot be used in its reset or GPIO modes; selecting one
of the alternative functions on the UPDI pin would render the device inaccessible without using an external debugger
capable of high-voltage UPDI activation.
Hardware User Guide
©
2020 Microchip Technology Inc.
User Guide
DS50002956A-page 11