Booting LPC-Link2

The recommended way to use LPC-Link2 with the LPCXpresso IDE is to boot and soft load a debug firmware image at the start of a debug session.

Normally, LPC-Link 2 is booted automatically, however under certain circumstances - such as when using the command line flash utility, you may need to boot it manually.

Note: Both the LPCXpresso V2/V3 boards and RDB4078 incorporate a built in LPC-Link2 debug probe, so this FAQ equally applies to these boards.

Note: This FAQ only applies to LPC-Link2 hardware when configured to operate in DFU mode, it does not apply if the LPC-Link2 hardware is configured to boot from a debug firmware image held in flash such as CMSIS-DAP.

Background


When powered on, LPC-Link 2 hardware makes use of the DFU mechanism (Device Firmware Update)

to allow the LPCXpresso IDE to download debug firmware into the on-board RAM.

This scheme offers great flexibility and ensures that the latest compatible firmware will be used for a given version of the IDE.

Before boot, LPC-Link 2 appears as a USB device with details:

Device VendorID/ProductID:   0x1FC9/0x000C   (NXP Semiconductors)
and will appear in Windows -> Devices and Printers, as below:

For LPCXpresso IDE prior to v7.8:  After boot, LPC-Link2 will by default appear as a USB device with details:

Device VendorID/ProductID:   0x21BD/0x0006
and will appear in Windows -> Devices and Printers, as below:

From LPCXpresso IDE v7.8 onwards: After boot, LPC-Link2 will by default appear as a USB device with details:

Device VendorID/ProductID:   0x1FC9/0x0090
and will appear in Windows -> Devices and Printers, as below:
 

For information on setting the LPCXpresso IDE default debug firmware see: Configuring which LPC-Link2 firmware image to soft-load

Note: the standard utilities to explore USB devices on our supported host platforms are:

  • Windows - Device Manager

    • LPCXpressoIDE also provides a listusb utility in:

      • <install_dir>\lpcxpresso\bin\Scripts
  • Linux - terminal command: lsusb
  • Mac OSX - terminal command: system_profiler SPUSBDataType

The procedure to manually boot the probe is shown below.

Using the Command Line


From LPCXpresso IDE version 7.3x and later, we now supply a boot script for all supported platforms. To make use of this script:

  • cd <install_dir>\lpcxpresso\bin and run
  • boot_link2

For version of LPCXpresso IDE earlier than version 7.3 -  you will need to locate the dfu-util utility and pass the parameters for the device and code etc. as below:

  • cd <install_dir>\lpcxpresso\bin and run

  • dfu-util -d 1FC9:000C -c 0 -t 2048 -R -D LPC432x_Redlink_V4_30.bin.hdr
    • LPC432x_Redlink_V4_30.bin.hdr is the file name for the firmware supplied in LPCXpresso IDE V 7.2.0

      • Note: The exact name of the .hdr file may change between different tools releases, please ensure you use the name of the correct name!

Using the GUI


It is also possible to manually boot LPC-Link 2 from the GUI, on occasion this may be a more convenient solution than using the command line.

To do this, locate the red Boot icon on the Toolbar:

Troubleshooting


If you have been able to use LPC-Link 2 in a debug session but now see issues such as "No compatible emulator available"

or "Priority 0 connection to this core already taken"  when trying to perform a debug operation ...

  • ensure you have shut down any previous debug session

    • You must close a debug session (press the Red 'terminate' button) before starting another debug session
  • It is possible that the debug driver is still running in the background. Use the task manager or equivalent to kill any tasks called:
    • redlinkserv
    • arm-none-eabi_gdb*
    • crt_emu_*

If your host has never worked with LPC-Link 2, first perform some basic checks with reference to the background information at the beginning of this FAQ.

  • Try a different USB cable!
  • Try a different USB port. If your host has USB3 and USB2, then try a USB2 port
    • there are know issues with motherboard USB3 firmware, ensure your host is using the latest driver from the manufacturer

      • Note: this is not referencing the host OS driver but the motherboard firmware of the USB port
  • If using a USB hub, first try a direct connection to the host computer
  • Try completely removing and re-installing the host device driver. See also LPC-Link2 fails to enumerate with CMSIS-DAP
  • If using Windows 8.1, then sometimes the Windows USB power settings can cause problems.
    For more details use your favourite search engine to search for "windows 8 usb power settings" or similar. For example:

Updating LPCXpresso firmware

LPCXpresso range of development boards from NXP which include the LPC-Link 2 interface can be firmware updated to include mbed USB disk programming capabilities.

Below is a quick guide to how to carry out this update.

Requirements

Instructions

1. Fit jumper JP3

2. Connect the "link" micro-B connector to the PC

3. Run dfusec.exe

  • Browse to the correct Algorithm file (the correct one should be selected by default)
  • Download the binary for your board from the list below, and then :
    • Browse to the binary
    • Set the parameter : "Address"
    • Set the parameter : "Size"
  • Press the start button on the PC application... wait... done :-)

4. Remove the jumper JP3 and unplug/plug in the LPCXpresso

You should now have an mbed flash disk for drag and drop programming

Binary Downloads

Booting LPC-Link2, Updating LPCXpresso firmware的更多相关文章

  1. LabTool : LPC LINK2, LPC4370 cheap scope: 80Ms/s 12 bit

    80MHz 12 bit ADC processor LPC4370.LPCxpresso do a LPC LINK2 and LABTOOLS open source oscilloscope d ...

  2. LPC LINK2 IO CONNECTOR

  3. CyanogenMod wiki reading tips | Android tips

    To Enable the Developer and Performance settings on CyanogenMod 10.1 In the Settings app, choose the ...

  4. UEFI boot: how does that actually work, then?

    原文地址:https://www.happyassassin.net/2014/01/25/uefi-boot-how-does-that-actually-work-then/ 翻译:https:/ ...

  5. Booting the Linux/ppc kernel without Open Firmware

    The DT block format 这一章定义了传递给内核的FDT(flattened device tree)的格式.关于它包含的内容以及内核需要的属性将在后续章节描述. 注:DT block应 ...

  6. Booting dircetly into Redlink FW from flash

    Booting dircetly into Redlink FW from flash Hello, the usual way to use the Redlink FW is a two-step ...

  7. LPCScrypt, DFUSec : USB FLASH download, programming, and security tool, LPC-Link 2 Configuration tool, Firmware Programming

    What does this tool do? The LPC18xx/43xx DFUSec utility is a Windows PC tool that provides support f ...

  8. cmsis dap interface firmware

    cmsis dap interface firmware The source code of the mbed HDK (tools + libraries) is available in thi ...

  9. RPI学习--环境搭建_更新firmware

    (用以解决USB摄像头不识别的状况) rpi-update是老外开发的一个更新树莓派firmware的工具 $ sudo apt-get update  $ sudo apt-get install ...

随机推荐

  1. 20155226 2016-2017-2 《Java程序设计》第6周学习总结

    20155226 2016-2017-2 <Java程序设计>第6周学习总结 教材学习内容总结 第十章 输入/输出 10.1 InputStream与OutputStream 1 . 串流 ...

  2. 解决 phpmyadmin #2002 无法登录 MySQL 服务器

    将 “phpMyAdmin/libraries”文件夹下的config.default.php文件中的 $cfg['Servers'][$i]['host'] = 'localhost'; 修改为 $ ...

  3. lrc歌词文件格式

    一.lrc文件有什么作用 lrc文件就是一个文本文件,用来记录歌曲的歌词信息,使得播放歌曲时能够让歌词与声音同步显示,类似于电影字幕那种效果. 心情很丧时我们会听首歌陶冶一下情操,不知你是否注意过音乐 ...

  4. nested exception is com.svorx.core.dao.PersistenceException

    在quartz定时执行任务的时候,hibernate报错,在只读事务中进行了update语句: [ERROR] 2018/08/03 10:35:00,827 org.quartz.core.JobR ...

  5. javascript 模拟按键点击提交

    上代码 <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> & ...

  6. 五、vue状态管理模式vuex

    一.vuex介绍 Vuex 是一个专为 Vue.js 应用程序开发的状态管理模式.它采用集中式存储管理应用的所有组件的状态,并以相应的规则保证状态以一种可预测的方式发生变化. 即data中属性同时有一 ...

  7. html复习之标签整理

    <body>标签,网页上显示的内容放在这里开始学习<p>标签,添加段落<hx>标签,为网页添加标题加入强调语气,使用<strong>加粗和<em& ...

  8. Java流程控制练习--万年历

    Java流程控制练习--万年历 标签: Java入坑之旅 0x01. 打印倒三角和正三角 public static void main(String[] args) { // TODO Auto-g ...

  9. mongodb分页查询

    Limit与Skip方法 MongoDB Limit() 方法 如果你需要在MongoDB中读取指定数量的数据记录,可以使用MongoDB的Limit方法,limit()方法接受一个数字参数,该参数指 ...

  10. T-SQL语句2

    一.修改表 1.alter table 语句 alter table database_name,table_name,column_name,type_name//database_name指数据库 ...