background image

3.1.2.5 

Advanced Use

CDC Override Mode

In normal operation, the on-board debugger is a true UART bridge between the host and the device. However, in
certain use cases, the on-board debugger can override the basic operating mode and use the CDC TX and RX pins
for other purposes.

Dropping a text file into the on-board debugger’s mass storage drive can be used to send characters out of the
debugger’s CDC TX pin. The filename and extension are trivial, but the text file must start with the characters:

CMD:SEND_UART=

Debugger firmware version 1.20 or earlier has the following limitations:

• The maximum message length is 50 characters – all remaining data in the frame are ignored.
• The default baud rate used in this mode is 9600 bps, but if the CDC is already active or has been configured,

the previously used baud rate still applies.

Debugger firmware version 1.21 and later has the following limitations/features:

• The maximum message length may vary depending on MSC/SCSI layer timeouts on the host computer and/or

operating system. A single SCSI frame of 512b (498 characters of payload) is guaranteed, and files of up to 4k
will work on most systems. The transfer will complete on the first NULL character encountered in the file.

• The baud rate used is always 9600 bps for the default command

CMD:SEND_UART=

CDC Override Mode should not be used simultaneously with data transfer over CDC / terminal. If a CDC
terminal session is active at the time a file is received via CDC Override Mode, it will be suspended for the
duration of the operation and resumed once complete.

• Additional commands are supported with explicit baud rates:

CMD:SEND_9600=

CMD:SEND_115200=

CMD:SEND_460800=

USB-Level Framing Considerations

Sending data from the host to the CDC can be done byte-wise or in blocks, which will be chunked into 64-byte USB
frames. Each such frame will be queued up for sending to the debugger’s CDC TX pin. Transferring a small amount
of data per frame can be inefficient, particularly at low baud rates, because the on-board debugger buffers frames
and not bytes. A maximum of four 64-byte frames can be active at any time. The on-board debugger will throttle the
incoming frames accordingly. Sending full 64-byte frames containing data is the most efficient method.

When receiving data on the debugger’s CDC RX pin, the on-board debugger will queue up the incoming bytes into
64-byte frames, which are sent to the USB queue for transmission to the host when they are full. Incomplete frames
are also pushed to the USB queue at approximately 100 ms intervals, triggered by USB start-of-frame tokens. Up to
eight 64-byte frames can be active at any time.

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

 ATtiny1627

Curiosity Nano

©

 2020 Microchip Technology Inc.

 User Guide

DS40002199A-page 10

Summary of Contents for ATtiny1627 Curiosity Nano

Page 1: ...o explore how to integrate the device into a custom design The Curiosity Nano series of evaluation boards include an on board debugger No external tools are necessary to program and debug the ATtiny16...

Page 2: ...1 3 1 3 4 Special Commands 12 3 1 4 Data Gateway Interface DGI 12 3 1 4 1 Debug GPIO 12 3 1 4 2 Timestamping 13 3 2 Curiosity Nano Standard Pinout 13 3 3 Power Supply 14 3 3 1 Target Regulator 15 3 3...

Page 3: ...ision History 28 7 Appendix 29 7 1 Schematic 29 7 2 Assembly Drawing 31 7 3 Curiosity Nano Base for Click boards 32 7 4 Disconnecting the On board Debugger 33 7 5 Getting Started with IAR 34 The Micro...

Page 4: ...ulator controlled by the on board debugger 1 8 5 1V output voltage limited by USB input voltage 500 mA maximum output current limited by ambient temperature and output voltage 1 2 Kit Overview The Mic...

Page 5: ...Windows Mac OS Linux to develop applications for Microchip microcontrollers and digital signal controllers It is called an Integrated Development Environment IDE because it provides a single integrat...

Page 6: ...Solutions Microchip PIC and AVR Device Solutions contains complete applications for use with Microchip development boards ready to be adapted and extended ATtiny1627 Curiosity Nano website Kit inform...

Page 7: ...et application through terminal software A Data Gateway Interface DGI for code instrumentation with logic analyzer channels debug GPIO to visualize program flow The on board debugger controls a Power...

Page 8: ...et Send Terminal Receive Terminal Send Info As shown in Figure 3 1 the debugger s CDC TX pin is connected to a UART RX pin on the target for receiving characters from the host computer Similarly the d...

Page 9: ...r has the following behaviour Debugger UART receiver is disabled so no further data will be transferred to the host computer Debugger UART transmitter will continue to send data that is queued for sen...

Page 10: ...xplicit baud rates CMD SEND_9600 CMD SEND_115200 CMD SEND_460800 USB Level Framing Considerations Sending data from the host to the CDC can be done byte wise or in blocks which will be chunked into 64...

Page 11: ...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...

Page 12: ...his has no effect Debugger firmware v1 21 or newer CMD 3V3 Sets the target voltage to 3 3V If external power is provided this has no effect Debugger firmware v1 16 or newer CMD 5V0 Sets the target vol...

Page 13: ...amping DGI sources are timestamped as they are captured by the debugger The timestamp counter implemented in the Curiosity Nano debugger increments at 2 MHz frequency providing a timestamp resolution...

Page 14: ...regulator for the target microcontroller ATtiny1627 and its peripherals The voltage from the USB connector can vary between 4 4V to 5 25V according to the USB specification and will limit the maximum...

Page 15: ...ect dashboard tab or programming reading program memory Info There is a simple option to adjust the target voltage with a drag and drop command text file to the board This only supports settings of 0...

Page 16: ...the board Info If an external voltage is applied without pulling the VOFF pin low and an external supply pulls the voltage lower than the monitoring window lower limit target voltage setting 100 mV t...

Page 17: ...debugger will enable the on board voltage regulator when the new condition is detected Note that the PS LED will be blinking rapidly if the target voltage is below 100 mV of the setting but will be l...

Page 18: ...e firmware into the ATtiny1627 Figure 3 7 Target Power Strap Target Power strap top side Tip A 100 mil pin header can be soldered into the Target Power strap J101 footprint for easy connection of an a...

Page 19: ...ware configuration is required to program and debug the same device that is mounted on the board To program and debug a different microcontroller than what is mounted on the board Atmel Studio must be...

Page 20: ...ugging signals must be connected to program and debug external microcontrollers The on board debugger can supply power to the external hardware or use an external voltage as a reference for its level...

Page 21: ...3 6 Connecting External Debuggers Even though there is an on board debugger external debuggers can be connected directly to the ATtiny1627 Curiosity Nano to program debug the ATtiny1627 The on board d...

Page 22: ...Nano 2 3 4 5 6 7 8 1 VDD Ground DATA 2 VDD 3 Ground 4 PGD 5 Unused 6 Unused 7 Unused 8 Unused 1 Unused MPLAB PICkit 4 USB DEBUGGER PS LED NC ID CDC RX CDC TX DBG1 DBG2 VBUS VOFF DBG3 DBG0 GND VTG CURI...

Page 23: ...D CDC RX CDC TX DBG1 DBG2 VBUS VOFF DBG3 DBG0 GND VTG CURIOSITY NANO CAUTION To avoid contention between the external debugger and the on board debugger do not start any programming debug operation wi...

Page 24: ...IN9 TCA0 WO1 PA3 PA3 AIN3 TCA0 WO3 PA4 PA4 AIN4 TCA0 WO4 PA5 PA5 AIN5 PA6 PA6 AIN6 PA7 PA7 AIN7 GND GND PC5 PC5 PC4 PC4 SW0 DEBUGGER ATtiny1627 Analog Debug I2C SPI UART Peripheral Port PWM Power Grou...

Page 25: ...abled on pin PC4 Table 4 2 Mechanical Switch ATtiny1627 Pin Description Shared Functionality PC4 User switch SW0 Edge connector On board debugger 4 2 3 Crystal The ATtiny1627 Curiosity Nano Board has...

Page 26: ...MPLAB Data Visualizer can be used as a front end for the CDC and debug GPIO 4 2 4 1 On Board Debugger Connections The table below shows the connections between the target and the debugger section All...

Page 27: ...ier and revision Tip The Kit Window can be opened in MPLAB X IDE through the menu bar Window Kit Window The same information can be found on the sticker on the bottom side of the PCB Most boards will...

Page 28: ...6 Document Revision History Doc rev Date Comment A 04 2020 Initial document release ATtiny1627 Document Revision History 2020 Microchip Technology Inc User Guide DS40002199A page 28...

Page 29: ...TX 7 1 RX 8 2 SDA 9 3 SCL 10 4 MOSI 11 5 MISO 12 6 SCK 13 7 SS 14 GND 15 0 TX 16 1 RX 17 DBG3 32 DBG0 31 GND 30 VCC 29 PWM 3 24 ADC 2 23 ADC 1 22 ADC 0 21 GND 20 3 19 2 18 ADC 7 28 ADC 6 27 ADC 5 26 P...

Page 30: ...GGER TESTPOINTs DBG2_CTRL VOFF CDC_RX_CTRL 47k R109 DBG1 CDC_TX_CTRL CDC_RX_CTRL SWCLK REG_ADJUST DBG2_GPIO DBG3_CTRL DBG2_CTRL DBG3 1k R110 VBUS_ADC DMN65D8LFB 1 2 3 Q101 ID_SYS VOFF 1k R112 VCC_P3V3...

Page 31: ...0 5 P A J 1 0 2 0 4 P A J 1 0 2 0 3 P A J 1 0 2 0 2 P A J 1 0 2 0 1 C O J 1 0 2 P A J 1 0 5 0 1 1 P A J 1 0 5 0 1 0P A J 1 0 5 0 8 P A J 1 0 5 0 9 P A J 1 0 5 0 7 P A J 1 0 5 0 6 P A J 1 0 5 0 1 P A...

Page 32: ...0 WO4 PA5 PA5 AIN5 PA6 PA6 AIN6 PA7 PA7 AIN7 GND GND PC5 PC5 PC4 PC4 SW0 DEBUGGER ATtiny1627 Analog Debug I2C SPI UART Peripheral Port PWM Power Ground Shared pin ATtiny1627 Curiosity Nano 1 AN PWM RS...

Page 33: ...supply strap will disconnect the on board power supply Tip Any connection that is cut can be reconnected using solder Alternatively a 0 0402 resistor can be mounted Tip When the debugger is disconnec...

Page 34: ...g 1 Make sure you have opened the project you want to configure Open the OPTIONS dialog for the project 2 In the category General Options select the Target tab Select the device for the project or if...

Page 35: ...Figure 7 7 Select Target Device Figure 7 8 Select Debugger ATtiny1627 Appendix 2020 Microchip Technology Inc User Guide DS40002199A page 35...

Page 36: ...Figure 7 9 Configure Interface ATtiny1627 Appendix 2020 Microchip Technology Inc User Guide DS40002199A page 36...

Page 37: ...available through the website at www microchip com support Microchip Devices Code Protection Feature Note the following details of the code protection feature on Microchip devices Microchip products...

Page 38: ...Plus ProASIC Plus logo Quiet Wire SmartFusion SyncWorld Temux TimeCesium TimeHub TimePictra TimeProvider Vite WinPath and ZL are registered trademarks of Microchip Technology Incorporated in the U S...

Page 39: ...China Xiamen Tel 86 592 2388138 China Zhuhai Tel 86 756 3210040 India Bangalore Tel 91 80 3090 4444 India New Delhi Tel 91 11 4160 8631 India Pune Tel 91 20 4121 0141 Japan Osaka Tel 81 6 6152 7160 J...

Reviews: