This is an automated email from the ASF dual-hosted git repository.

acassis pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/nuttx.git


The following commit(s) were added to refs/heads/master by this push:
     new b6972ffc997 docs/teensy-3.x: Migrate README.txt to RST
b6972ffc997 is described below

commit b6972ffc997ea49236406889212bf004e0bb24cc
Author: Swatantra Yadav <[email protected]>
AuthorDate: Mon Oct 12 20:11:26 2026 +0530

    docs/teensy-3.x: Migrate README.txt to RST
    
    Migrate the legacy monospaced README.txt for the Teensy 3.x development
    boards (NXP Kinetis MK20DX256VLH7 / MK20DX128VLH5 MCU) to standard
    Sphinx rST documentation format in index.rst, and delete the legacy
    README.txt.
    
    Includes:
    - Microcontroller and board features overview (Cortex-M4 @ 72 MHz, 256KB 
Flash, 64KB SRAM)
    - Teensy 3.0 vs. Teensy 3.1 / 3.2 hardware comparison table (features, 
clock, 5V tolerance, and linker scripts)
    - Operating voltage warnings (5V tolerance on digital pins vs 3.3V maximum 
on analog inputs)
    - Pin mapping tables for onboard bootloader signals, crystal, LEDs, and 
UARTs
    - Full LED state indicators table for CONFIG_ARCH_LEDS
    - Flashing instructions using teensy_loader_cli for both Teensy 3.1/3.2 
(--mcu=mk20dx256) and Teensy 3.0 (--mcu=mk20dx128)
    - Hardware debugging considerations and SWD trace modification notes
    - Descriptions and step-by-step build commands for nsh and usbnsh 
configurations
    
    Addresses #11077
    Part of #15737
    
    Signed-off-by: Swatantra Yadav <[email protected]>
    Assisted-by: Google Gemini
---
 .../arm/kinetis/boards/teensy-3.x/README.txt       | 305 ---------------------
 .../arm/kinetis/boards/teensy-3.x/index.rst        | 251 ++++++++++++++++-
 2 files changed, 249 insertions(+), 307 deletions(-)

diff --git a/Documentation/platforms/arm/kinetis/boards/teensy-3.x/README.txt 
b/Documentation/platforms/arm/kinetis/boards/teensy-3.x/README.txt
deleted file mode 100644
index bccd5da3a67..00000000000
--- a/Documentation/platforms/arm/kinetis/boards/teensy-3.x/README.txt
+++ /dev/null
@@ -1,305 +0,0 @@
-README
-======
-
-  This is a README file for the port of NuttX to the Teensy-3.1 from PJRC
-  (https://www.pjrc.com/).  The Teensy-3.1 features the Freescale
-  MK20DX256VLH7 chip (now NXP).  The MK20DX256VLH7 is a 64-pin Cortex-M4
-  running at 72MHz.  It has 256KiB of program FLASH memory and 64KiB of
-  SRAM.  For more information about the Teensy 3.1, see
-
-    https://www.pjrc.com/teensy/teensy31.html
-    https://www.pjrc.com/store/teensy31.html
-
-  This board configuration can also be used with the older Teensy-3.0.  The
-  Teensy-3.0 has the same schematic (although some pins are not used on the
-  Teensy-3.0).  The primary difference is that the Teensy 3.0 has a
-  MK20DX128VLH5 with slightly less capability.  There are many difference
-  between the MK20DX256VLH7 and the MK20DX128VLH5 but the basic differences
-  that effect how you configure NuttX are:
-
-    --------------- -------------- -------------- ---------------------------
-    Feature         Teensy 3.0     Teensy 3.1     Teensy 3.0 CONFIGURATION
-    --------------- -------------- -------------- ---------------------------
-    Processor
-      Core          MK20DX128VLH5  MK20DX256VLH7  
CONFIG_ARCH_CHIP_MK20DX128VLH5=y
-      Rated Speed    48 MHz         72 MHz        See Note 1
-      Overclockable  96 MHz         96 MHz        CONFIG_TEENSY_3X_OVERCLOCK=y
-    Flash Memory    128 KB         256 KB         See Note 1
-    SRAM             16 KB          64 KB         CONFIG_RAM_SIZE=16384 and
-                                                  see Note 2
-    --------------- -------------- -------------- ---------------------------
-
-  NOTES:
-  1. Settings in boards/arm/kinetis/teensy-3.x/include/board.h will 
automatically
-     select the correct clocking based on CONFIG_ARCH_CHIP_MK20DX128VLH5=y.
-  2. The linker script at 
boards/arm/kinetis/teensy-3.x/scripts/mk30dx128vlh5.ld will
-     automatically be selected when CONFIG_ARCH_CHIP_MK20DX128VLH5=y.  It
-     will use the correct FLASH and SRAM sizes.
-
-  The initial Teensy-3.1 port is largely the effort of Jakob Odersky.
-  https://github.com/jodersky/nuttx/tree/teensy31-7.6 and
-  https://github.com/jodersky/px4-nuttx
-
-Contents
-========
-
-  o STATUS
-  o Pin Configuration
-  o Serial Console
-  o LEDs
-  o Using the Halfkey Loader
-  o Debugging
-  o Teensy-3.1 Configuration settings
-  o Configurations
-
-STATUS
-======
-
-  2015-06-11:
-    After some extended tinkering with the PLL setup, the Teensy-3.1 is
-    fully functional using the basic NSH configuration.
-  2015-06-12:
-    Fix LED (need high drive strength).  Calibrate delay loop.
-
-Pin Configuration
-=================
-
-  Nearly all pins are available to the user.  The few port pins used on
-  board are listed below:
-
-    ----- --------------------------------------
-    P0RT  BOARD USAGE
-    ----- --------------------------------------
-    PTA0  MINI54TAN / Bootloader
-    PTA1  MINI54TAN / Bootloader
-    PTA2  MINI54TAN / Bootloader
-    PTA3  MINI54TAN / Bootloader
-    PTA18 16MHz XTAL  (XTAL32 is not populated).
-    PTA19 16MHz XTAL
-    PTB1  MINI54TAN / Bootloader
-    PTB2  MINI54TAN / Bootloader
-    PTC5  LED
-    ----- --------------------------------------
-
-Serial Console
-==============
-
-  The K20 has three UARTs with pin availability as follows:
-
-    --------- ------ ----------- -------------------------
-    UART      PORT   BOARD       PJRC PINOUT DESCRIPTION
-    FUNCTION         LABEL
-    --------- ------ ----------- -------------------------
-    UART0_RX  PTA1   (See above) MINI54TAN / Bootloader
-              PTB16  Pin 0       RX1 / Touch
-              PTD6   Pin 21 / A7 RX1 / CS / PWM
-    UART0_TX  PTA2   (See above) MINI54TAN / Bootloader
-              PTB17  Pin 1       TX1 / Touch
-              PTD7   Pin 5       TX1 / PWM
-    --------- ------ ----------- -------------------------
-    UART1_RX  PTC3   Pin 9       RX2 / CS / PWM
-              PTE1   Pad 26      (Pad on back of board)
-    UART1_TX  PTC4   Pin 10      TX2 / CS / PWM
-              PTE0   Pad 31      (Pad on back of board)
-    --------- ------ ----------- -------------------------
-    UART2_RX  PTD2   Pin 7       RX3 / DOUT
-    UART2_TX  PTD3   Pin 8       TX3 / DIN
-    --------- ------ ----------- -------------------------
-
-  The default serial console is UART0 on pins 0 (RX) and 1 (TX).
-
-LEDs
-====
-
-  A single LED is available driven by PTC5.  The LED is grounded
-  so bringing PTC5 high will illuminate the LED.
-
-  When CONFIG_ARCH_LEDS is defined in the NuttX configuration, NuttX will
-  control the LED as follows:
-
-    SYMBOL              Meaning                 LED
-    ------------------- ----------------------- ------
-    LED_STARTED         NuttX has been started  OFF
-    LED_HEAPALLOCATE    Heap has been allocated OFF
-    LED_IRQSENABLED     Interrupts enabled      OFF
-    LED_STACKCREATED    Idle stack created      ON
-    LED_INIRQ           In an interrupt         N/C
-    LED_SIGNAL          In a signal handler     N/C
-    LED_ASSERTION       An assertion failed     N/C
-    LED_PANIC           The system has crashed  FLASH
-
-  Thus is LED is statically on, NuttX has successfully  booted and is,
-  apparently, running normally.  If LED is flashing at approximately
-  2Hz, then a fatal error has been detected and the system has halted.
-
-Using the Halfkey Loader
-========================
-
-  See https://www.pjrc.com/teensy/first_use.html
-      https://www.pjrc.com/teensy/loader_cli.html
-
-Debugging
-=========
-
-  And, at this point, I don't know how to debug the board.  There is no
-  way to connect a JTAG SWD debugger, at least not without cutting leads
-  to the MINI54TAN device:
-
-    See: 
http://mcuoneclipse.com/2014/08/09/hacking-the-teensy-v3-1-for-swd-debugging/
-
-Teensy-3.1 Configuration settings
-=================================
-
-    CONFIG_ARCH - Identifies the arch/ subdirectory.  This should
-       be set to:
-
-       CONFIG_ARCH=arm
-
-    CONFIG_ARCH_family - For use in C code:
-
-       CONFIG_ARCH_ARM=y
-
-    CONFIG_ARCH_architecture - For use in C code:
-
-       CONFIG_ARCH_CORTEXM4=y
-
-    CONFIG_ARCH_CHIP - Identifies the arch/*/chip subdirectory
-
-       CONFIG_ARCH_CHIP="kinetis"
-
-    CONFIG_ARCH_CHIP_name - For use in C code to identify the exact
-       chip:
-
-       CONFIG_ARCH_CHIP_MK20DX256VLH7=y
-
-    CONFIG_ARCH_BOARD - Identifies the boards/ subdirectory and
-       hence, the board that supports the particular chip or SoC.
-
-       CONFIG_ARCH_BOARD="teensy-3.x"
-
-    CONFIG_ARCH_BOARD_name - For use in C code
-
-       CONFIG_ARCH_BOARD_TEENSY_3X=y
-
-    CONFIG_ARCH_LOOPSPERMSEC - Must be calibrated for correct operation
-       of delay loops
-
-    CONFIG_ENDIAN_BIG - define if big endian (default is little
-       endian)
-
-    CONFIG_RAM_SIZE - Describes the installed DRAM (SRAM in this case):
-
-       CONFIG_RAM_SIZE=0x00008000 (32Kb)
-
-    CONFIG_RAM_START - The start address of installed DRAM
-
-       CONFIG_RAM_START=0x20000000
-
-    CONFIG_ARCH_LEDS - Use LEDs to show state. Unique to boards that
-       have LEDs
-
-    CONFIG_ARCH_INTERRUPTSTACK - This architecture supports an interrupt
-       stack. If defined, this symbol is the size of the interrupt
-        stack in bytes.  If not defined, the user task stacks will be
-      used during interrupt handling.
-
-    CONFIG_ARCH_STACKDUMP - Do stack dumps after assertions
-
-  Individual subsystems can be enabled:
-
-    To be provided
-
-Configurations
-==============
-
-  Common Configuration Information
-  --------------------------------
-  Each Teensy-3.x configurations are maintained in sub-directories and
-  can be selected as follow:
-
-    tools/configure.sh teensy-3.x:<subdir>
-    make oldconfig
-
-  Before building, make sure that your PATH environment variable includes
-  the correct path to the directory than holds your toolchain binaries.
-
-  If this is a Windows native build, then configure.bat should be used
-  instead of configure.sh:
-
-    configure.bat teensy-3.x\<subdir>
-
-  And then build NuttX by simply typing the following.  At the conclusion of
-  the make, the nuttx binary will reside in an ELF file called, simply,
-  nuttx.
-
-    make oldconfig
-    make
-
-  The <subdir> that is provided above as an argument to the
-  tools/configure.sh must be is one of the directories listed below.
-
-NOTES:
-
-  1. These configurations use the mconf-based configuration tool.  To
-     change any of these configurations using that tool, you should:
-
-    a. Build and install the kconfig-mconf tool.  See nuttx/README.txt
-       see additional README.txt files in the NuttX tools repository.
-
-    b. Execute 'make menuconfig' in nuttx/ in order to start the
-       reconfiguration process.
-
-  2. Unless stated otherwise, all configurations generate console
-     output on [To be provided].
-
-  3. All of these configurations are set up to build under Windows using the
-     "GNU Tools for ARM Embedded Processors" that is maintained by ARM
-     (unless stated otherwise in the description of the configuration).
-
-       https://developer.arm.com/open-source/gnu-toolchain/gnu-rm
-
-     That toolchain selection can easily be reconfigured using
-     'make menuconfig'.  Here are the relevant current settings:
-
-     Build Setup:
-       CONFIG_HOST_WINDOWS=y               : Window environment
-       CONFIG_WINDOWS_CYGWIN=y             : Cywin under Windows
-
-     System Type -> Toolchain:
-       CONFIG_ARM_TOOLCHAIN_GNU_EABI=y  : GNU ARM EABI toolchain
-
-     NOTE: As of this writing, there are issues with using this tool at
-     the -Os level of optimization.  This has not been proven to be a
-     compiler issue (as least not one that might not be fixed with a
-     well placed volatile qualifier).  However, in any event, it is
-     recommend that you use not more that -O2 optimization.
-
-  Configuration sub-directories
-  -----------------------------
-
-  nsh:
-
-    Configures the NuttShell (nsh) located at apps/examples/nsh.
-
-    NOTES:
-
-    1. This configuration uses the mconf-based configuration tool.  To
-       change this configuration using that tool, you should:
-
-       a. Build and install the kconfig-mconf tool.  See nuttx/README.txt
-          see additional README.txt files in the NuttX tools repository.
-
-       b. Execute 'make menuconfig' in nuttx/ in order to start the
-          reconfiguration process.
-
-    2. By default, this configuration uses the ARM EABI toolchain
-       for Windows and builds under Cygwin (or probably MSYS).  That
-       can easily be reconfigured, of course.
-
-       CONFIG_HOST_WINDOWS=y                   : Builds under Windows
-       CONFIG_WINDOWS_CYGWIN=y                 : Using Cygwin
-       CONFIG_ARM_TOOLCHAIN_GNU_EABI=y      : GNU EABI toolchain for Windows
-
- Support
-    for  builtin applications is enabled, but in the base configuration
-    no builtin applications are selected (see NOTES below).
diff --git a/Documentation/platforms/arm/kinetis/boards/teensy-3.x/index.rst 
b/Documentation/platforms/arm/kinetis/boards/teensy-3.x/index.rst
index a2c4d8890c9..e1ae7fb2a6f 100644
--- a/Documentation/platforms/arm/kinetis/boards/teensy-3.x/index.rst
+++ b/Documentation/platforms/arm/kinetis/boards/teensy-3.x/index.rst
@@ -4,6 +4,253 @@ teensy-3.x
 
 .. tags:: arch:arm, chip:kinetis, vendor:nxp
 
-.. include:: README.txt
-   :literal:
+The Teensy 3.1 and 3.2 are compact, breadboard-friendly development boards
+designed by PJRC (Paul Stoffregen), powered by the NXP (formerly Freescale)
+Kinetis MK20DX256VLH7 ARM Cortex-M4 microcontroller.
 
+This board configuration also supports the earlier Teensy 3.0 board (which
+features the Kinetis MK20DX128VLH5 microcontroller).
+
+.. note::
+   The initial port of NuttX to the Teensy 3.1 was contributed by Jakob
+   Odersky (`jodersky <https://github.com/jodersky>`_).
+
+Hardware Overview
+=================
+
+Comparison: Teensy 3.0 vs. Teensy 3.1 / 3.2
+-------------------------------------------
+
+The Teensy 3.1 and 3.2 share identical pinouts and schematics with the Teensy
+3.0, but feature a significantly enhanced MCU:
+
+============= ===================== ===================== 
=====================================
+Feature       Teensy 3.0            Teensy 3.1 / 3.2      Teensy 3.0 
Configuration
+============= ===================== ===================== 
=====================================
+Processor     NXP MK20DX128VLH5     NXP MK20DX256VLH7     
``CONFIG_ARCH_CHIP_MK20DX128VLH5=y``
+Core          ARM Cortex-M4         ARM Cortex-M4         ARM Cortex-M4
+Rated Clock   48 MHz                72 MHz                Selected via board 
clock header
+Overclockable Up to 96 MHz          Up to 96 MHz          
``CONFIG_TEENSY_3X_OVERCLOCK=y``
+Flash Memory  128 KB                256 KB                Selected via linker 
script
+SRAM          16 KB                 64 KB                 
``CONFIG_RAM_SIZE=16384``
+5V Tolerance  No (3.3V only)        Yes (Digital pins)    No (3.3V only)
+Linker Script mk20dx128vlh5.ld      mk20dx256vlh7.ld      Automatic based on 
chip selection
+============= ===================== ===================== 
=====================================
+
+.. warning::
+   While digital I/O pins on the Teensy 3.1/3.2 are 5V tolerant, the analog
+   inputs (A10, A11, AREF, and the internal ADC reference) are strictly **3.3V
+   maximum**. On the Teensy 3.0, **all** pins are 3.3V only. Exceeding 3.3V on
+   non-tolerant pins will permanently damage the microcontroller.
+
+Key Features (Teensy 3.1 / 3.2)
+-------------------------------
+
+- **Microcontroller**: NXP Kinetis MK20DX256VLH7 (64-pin LQFP)
+  - 32-bit ARM Cortex-M4 running at 72 MHz (overclockable up to 96 MHz)
+  - 256 KB Flash memory, 64 KB SRAM
+  - Hardware CRC and Random Number Generator
+- **Clocking**:
+  - 16 MHz external crystal (XTAL on PTA18/PTA19)
+  - On-chip PLL generating 72 MHz system clock (or 96 MHz when overclocked)
+- **USB Interface**:
+  - Full-Speed (12 Mbps) USB 2.0 Device/Host/OTG port with Micro-B connector
+  - Dedicated USB regulator providing 3.3V (up to 100 mA) to external circuits
+- **Serial Communication**:
+  - 3 UARTs with FIFO and hardware CTS/RTS support
+  - 2 SPI modules with FIFO
+  - 2 I2C modules with SMBus support
+- **Analog & Timers**:
+  - 2 16-bit ADCs with differential mode support
+  - 1 12-bit DAC
+  - 3 FlexTimer modules (FTM) supporting up to 12 PWM channels
+  - Carrier Modulator Transmitter (CMT)
+  - Real-Time Clock (RTC) with external 32.768 kHz crystal footprint
+- **Form Factor & Bootloader**:
+  - 24-pin DIP footprint (0.1" pitch, breadboard friendly)
+  - Onboard Nuvoton Mini54TAN processor running PJRC HalfKay USB bootloader
+  - Pushbutton for entering bootloader mode
+
+Pin Configuration
+=================
+
+Nearly all MCU port pins are routed to the outer header pins or underside pads.
+The dedicated onboard hardware connections are:
+
+======== ==============================================
+Port Pin Board Usage
+======== ==============================================
+PTA0     Mini54TAN / Bootloader communication
+PTA1     Mini54TAN / Bootloader communication
+PTA2     Mini54TAN / Bootloader communication
+PTA3     Mini54TAN / Bootloader communication
+PTA18    16 MHz Crystal (XTAL)
+PTA19    16 MHz Crystal (XTAL)
+PTB1     Mini54TAN / Bootloader communication
+PTB2     Mini54TAN / Bootloader communication
+PTC5     User LED (Orange)
+======== ==============================================
+
+Serial Console
+==============
+
+The Kinetis K20 provides three UART modules with pins exposed on the board
+headers:
+
+============= ======== ============= =====================================
+UART Module   Port Pin Board Label   PJRC Pinout Description
+============= ======== ============= =====================================
+**UART0_RX**  PTB16    Pin 0         RX1 / Touch
+\             PTD6     Pin 21 / A7   RX1 / CS / PWM
+\             PTA1     (Internal)    Mini54TAN / Bootloader
+**UART0_TX**  PTB17    Pin 1         TX1 / Touch
+\             PTD7     Pin 5         TX1 / PWM
+\             PTA2     (Internal)    Mini54TAN / Bootloader
+**UART1_RX**  PTC3     Pin 9         RX2 / CS / PWM
+\             PTE1     Pad 26        Pad on underside of board
+**UART1_TX**  PTC4     Pin 10        TX2 / CS / PWM
+\             PTE0     Pad 31        Pad on underside of board
+**UART2_RX**  PTD2     Pin 7         RX3 / DOUT
+**UART2_TX**  PTD3     Pin 8         TX3 / DIN
+============= ======== ============= =====================================
+
+The default serial console in the ``nsh`` configuration is **UART0** on:
+
+- **RX**: Pin 0 (PTB16)
+- **TX**: Pin 1 (PTB17)
+- **Baud rate**: 115200 8N1
+
+Connect a 3.3V USB-to-UART serial adapter (TX to Pin 0, RX to Pin 1, GND to 
GND)
+to access the NuttShell prompt.
+
+LEDs
+====
+
+A single orange LED is connected to port pin **PTC5**. The cathode is connected
+to ground, so driving PTC5 high illuminates the LED.
+
+When ``CONFIG_ARCH_LEDS`` is enabled, NuttX indicates system status as
+follows:
+
+==================== ======================= ======
+Symbol               Meaning                 LED
+==================== ======================= ======
+``LED_STARTED``      NuttX has started       OFF
+``LED_HEAPALLOCATE`` Heap has been allocated OFF
+``LED_IRQSENABLED``  Interrupts enabled      OFF
+``LED_STACKCREATED`` Idle stack created      ON
+``LED_INIRQ``        Handling an interrupt   No Change
+``LED_SIGNAL``       Inside signal handler   No Change
+``LED_ASSERTION``    Assertion failed        No Change
+``LED_PANIC``        System has crashed      Flashing (2 Hz)
+==================== ======================= ======
+
+When NuttX boots successfully and enters normal idle operation, the LED
+remains solidly **ON**. If a kernel panic occurs, the LED flashes at
+approximately 2 Hz.
+
+Flashing and Debugging
+======================
+
+Using the Teensy Loader
+-----------------------
+
+The Teensy 3.x comes pre-programmed with PJRC's proprietary HalfKay
+bootloader managed by the onboard Mini54TAN chip. The bootloader communicates
+over USB via the `Teensy Loader <https://www.pjrc.com/teensy/loader.html>`_
+application or the command-line tool `teensy_loader_cli
+<https://www.pjrc.com/teensy/loader_cli.html>`_.
+
+NuttX configurations for the Teensy 3.x enable Intel HEX binary generation
+(``CONFIG_INTELHEX_BINARY=y``), which produces ``nuttx.hex`` in the root
+directory after compilation.
+
+Flashing with ``teensy_loader_cli``:
+
+1. Install ``teensy_loader_cli`` on your host system:
+
+   .. code-block:: bash
+
+      # Ubuntu / Debian
+      sudo apt-get install libusb-dev
+      git clone https://github.com/PaulStoffregen/teensy_loader_cli.git
+      cd teensy_loader_cli && make && sudo make install
+
+2. Build NuttX and upload the generated ``nuttx.hex``:
+
+   .. code-block:: bash
+
+      # For Teensy 3.1 / 3.2 (MK20DX256):
+      teensy_loader_cli --mcu=mk20dx256 -w -v nuttx.hex
+
+      # For Teensy 3.0 (MK20DX128):
+      teensy_loader_cli --mcu=mk20dx128 -w -v nuttx.hex
+
+3. Press the pushbutton on the Teensy 3.x board to initiate the programming
+   cycle. Once flashing completes, the board reboots into NuttX automatically.
+
+Hardware Debugging (SWD / JTAG)
+-------------------------------
+
+Standard hardware debugging via SWD is not directly available out of the box
+because the onboard Mini54TAN bootloader chip controls the Reset and SWD
+lines of the K20 microcontroller.
+
+To use an external SWD debugger (such as J-Link, ST-Link, or CMSIS-DAP), the
+hardware traces between the Mini54TAN and the MK20 chip must be severed or
+the Mini54TAN held in permanent reset. For detailed instructions on this
+modification, refer to the `Hacking the Teensy 3.1 for SWD Debugging
+<https://mcuoneclipse.com/2014/08/09/hacking-the-teensy-v3-1-for-swd-debugging/>`_
+guide on MCU on Eclipse.
+
+Supported Configurations
+========================
+
+The board configurations for the Teensy 3.x are located under
+``boards/arm/kinetis/teensy-3.x/configs/``.
+
+nsh
+---
+
+The default NuttShell (NSH) configuration provides an interactive command-line
+interface over the primary serial port.
+
+- **Console**: UART0 (Pin 0 RX, Pin 1 TX) at 115200 8N1
+- **Binary formats**: Raw binary (``nuttx.bin``) and Intel HEX (``nuttx.hex``)
+- **Builtin applications**: Enabled
+
+Building:
+
+.. code-block:: bash
+
+   ./tools/configure.sh teensy-3.x:nsh
+   make -j$(nproc)
+   teensy_loader_cli --mcu=mk20dx256 -w -v nuttx.hex  # Use --mcu=mk20dx128 
for Teensy 3.0
+
+usbnsh
+------
+
+Configures the NuttShell console to run over the native USB port using the
+USB CDC/ACM class driver (virtual COM port).
+
+- **Console**: USB CDC/ACM (``/dev/ttyACM0`` on Linux, ``COMx`` on Windows)
+- **Driver**: Kinetis Full-Speed USB Device controller 
(``CONFIG_KINETIS_USBOTG=y``)
+- **Hardware requirement**: Standard Micro-USB cable connected directly to the 
host PC
+
+Building:
+
+.. code-block:: bash
+
+   ./tools/configure.sh teensy-3.x:usbnsh
+   make -j$(nproc)
+   teensy_loader_cli --mcu=mk20dx256 -w -v nuttx.hex  # Use --mcu=mk20dx128 
for Teensy 3.0
+
+After flashing and rebooting, connect to the USB serial device:
+
+.. code-block:: bash
+
+   # Linux
+   minicom -D /dev/ttyACM0
+
+   # Or using picocom
+   picocom -b 115200 /dev/ttyACM0

Reply via email to