1.. _ip_k66f: 2 3SEGGER IP Switch Board 4###################### 5 6Overview 7******** 8 9The Segger IP Switch Board is a Evaluation board based on NXP Kinetis K66 MCU. 10It comes with Micrel/Microchip KSZ8794CNX integrated 4-port 10/100 managed 11Ethernet switch with Gigabit RGMII/MII/RMII interface. 12 13- KSZ8794CNX enables evaluation for switch functions 14- On-board debug probe J-Link-OB for programming 15 16.. image:: ip_k66f.jpg 17 :align: center 18 :alt: IP-K66F 19 20Hardware 21******** 22 23- MK66FN2M0VMD18 MCU (180 MHz, 2 MB flash memory, 256 KB RAM, low-power, 24 crystal-less USB 25- Dual role USB interface with micro-B USB connector 26- 2 User LED 27- On-board debug probe J-Link-OB for programming 28- Micrel/Microchip Ethernet Switch KSZ8794CNX with 3 RJ45 connectors 29 30For more information about the K66F SoC and IP-K66F board: 31 32- `K66F Website`_ 33- `K66F Datasheet`_ 34- `K66F Reference Manual`_ 35- `IP-K66F Website`_ 36- `IP-K66F User Guide`_ 37- `IP-K66F Schematics`_ 38 39Supported Features 40================== 41 42The ip_k66f board configuration supports the following hardware features: 43 44+-----------+------------+-------------------------------------+ 45| Interface | Controller | Driver/Component | 46+===========+============+=====================================+ 47| NVIC | on-chip | nested vector interrupt controller | 48+-----------+------------+-------------------------------------+ 49| SYSTICK | on-chip | systick | 50+-----------+------------+-------------------------------------+ 51| PINMUX | on-chip | pinmux | 52+-----------+------------+-------------------------------------+ 53| GPIO | on-chip | gpio | 54+-----------+------------+-------------------------------------+ 55| WATCHDOG | on-chip | watchdog | 56+-----------+------------+-------------------------------------+ 57| FLASH | on-chip | soc flash | 58+-----------+------------+-------------------------------------+ 59| RTC | on-chip | rtc | 60+-----------+------------+-------------------------------------+ 61 62The default configuration can be found in the defconfig file: 63 64 ``boards/arm/ip_k66f/ip_k66f_defconfig`` 65 66Micrel/Microchip KSZ8794CNX Ethernet Switch is not currently 67supported. 68 69Connections and IOs 70=================== 71 72The K66F SoC has five pairs of pinmux/gpio controllers. 73 74+-------+-----------------+---------------------------+ 75| Name | Function | Usage | 76+=======+=================+===========================+ 77| PTA8 | GPIO | Red LED | 78+-------+-----------------+---------------------------+ 79| PTA10 | GPIO | RED LED | 80+-------+-----------------+---------------------------+ 81 82System Clock 83============ 84 85The K66F SoC is configured to use the 12 MHz low gain crystal oscillator on the 86board with the on-chip PLL to generate a 180 MHz system clock. 87 88Serial Port 89=========== 90 91The K66F SoC has six UARTs. None of them are used. 92 93Programming and Debugging 94************************* 95 96Build and flash applications as usual (see :ref:`build_an_application` and 97:ref:`application_run` for more details). 98 99Configuring a Debug Probe 100========================= 101 102A debug probe is used for both flashing and debugging the board. This board is 103configured by default to use the :ref:`opensda-jlink-onboard-debug-probe`. 104 105:ref:`opensda-jlink-onboard-debug-probe` 106-------------------------------------------------- 107 108Install the :ref:`jlink-debug-host-tools` and make sure they are in your search 109path. 110 111Follow the instructions in :ref:`opensda-jlink-onboard-debug-probe` to program 112the `OpenSDA J-Link Generic Firmware for V3.2 Bootloader`_. Note that Segger 113does provide an OpenSDA J-Link Board-Specific Firmware for this board, however 114it is not compatible with the DAPLink bootloader. 115 116The default flasher is ``jlink`` using the built-in SEGGER Jlink interface. 117 118Flashing 119======== 120 121Here is an example for the :zephyr:code-sample:`blinky` application. 122 123.. zephyr-app-commands:: 124 :zephyr-app: samples/basic/blinky 125 :board: ip_k66f 126 :goals: flash 127 128Red LED0 should blink at 1 second delay. 129 130Debugging 131========= 132 133Here is an example for the :zephyr:code-sample:`blinky` application. 134 135.. zephyr-app-commands:: 136 :zephyr-app: samples/basic/blinky 137 :board: ip_k66f 138 :goals: debug 139 140Step through the application in your debugger. 141 142.. _IP-K66F Website: 143 https://www.segger.com/evaluate-our-software/segger/embosip-switch-board/ 144 145.. _IP-K66F User Guide: 146 https://www.segger.com/downloads/emnet/UM06002 147 148.. _IP-K66F Schematics: 149 https://www.segger.com/downloads/emnet/embOSIP_SwitchBoard_V2.0_WEB_Schematic.pdf 150 151.. _K66F Website: 152 https://www.nxp.com/products/processors-and-microcontrollers/arm-microcontrollers/general-purpose-mcus/k-series-cortex-m4/k6x-ethernet/kinetis-k66-180-mhz-dual-high-speed-full-speed-usbs-2mb-flash-microcontrollers-mcus-based-on-arm-cortex-m4-core:K66_180 153 154.. _K66F Datasheet: 155 https://www.nxp.com/docs/en/data-sheet/K66P144M180SF5V2.pdf 156 157.. _K66F Reference Manual: 158 https://www.nxp.com/webapp/Download?colCode=K66P144M180SF5RMV2 159 160.. _OpenSDA J-Link Generic Firmware for V3.2 Bootloader: 161 https://www.segger.com/downloads/jlink/OpenSDA_V3_2 162 163Serial console 164============== 165 166The ``ip_k66f`` board only uses Segger's RTT console for providing serial 167console. There is no physical serial port available. 168 169- To communicate with this board one needs in one console: 170 171``/opt/SEGGER/JLink_V664/JLinkRTTLogger -Device MK66FN2M0XXX18 -RTTChannel 1 -if SWD -Speed 4000 ~/rtt.log`` 172 173- In another one: 174 175``nc localhost 19021`` 176