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. iOS 提交应用过程出现的错误及#解决方案#images can't contain alpha channels or transparencies

        本文永久地址为http://www.cnblogs.com/ChenYilong/p/3977542.html ,转载请注明出处.    当你试图通过<预览>"导出&qu ...

  2. iOS 判断相册相机是否允许

    1 判断是否允许使用相机: NSString *mediaType = AVMediaTypeVideo; AVAuthorizationStatus authStatus = [AVCaptureD ...

  3. 第11月第3天 直播 rtmp yuv

    1. LiveVideoCoreSDK AudioUnitRender ==> MicSource::inputCallback ==> GenericAudioMixer::pushBu ...

  4. 第9月第16天 tolua++ cocos2dx cocos2d-lua

    1. http://www.jianshu.com/p/1cdfc60da04f 2.lua c++ Lua访问C++类 现在,我们在Lua里面操作这个Student类.注意,我们绑定的每一个函数都需 ...

  5. 奈奎斯特定理 and 香农定理

    -----------------------整理自<21ic电子网> 奈奎斯特定理(Nyquist's Theorem)和香农定理(Shannon's Theorem)是网络传输中的两个 ...

  6. 一个无锁消息队列引发的血案(三)——地:q3.h 与 RingBuffer

    目录 (一)起因 (二)混合自旋锁 (三)q3.h 与 RingBuffer (四)RingQueue(上) 自旋锁 (五)RingQueue(中) 休眠的艺术 (六)RingQueue(中) 休眠的 ...

  7. P1270 【“访问”美术馆】

    $\large{\text{一千个Oier程序中有一千种树形DP}}$ 思路都差不多的,但是每个人都有自己的状态定义与转移 不妨定义$dp[i][j]$表示,在$i$子树内,偷$j$张画,且不考虑根到 ...

  8. Java编程的逻辑 (61) - 内存映射文件及其应用 - 实现一个简单的消息队列

    本系列文章经补充和完善,已修订整理成书<Java编程的逻辑>,由机械工业出版社华章分社出版,于2018年1月上市热销,读者好评如潮!各大网店和书店有售,欢迎购买,京东自营链接:http:/ ...

  9. PHP并发操作下的加锁

    最近做后台统计的工具,统计肯定是一个需要运算好久的数据 容许一个用户在一个时间内进行操作,这个时候就需要用到锁了,将这个操作过程锁起来.在用了cache的时候,cache失效可能导致瞬间的多数并发请求 ...

  10. jQuery事件绑定—on()、bind()与delegate()

    啃了一段日子的js相关了,学的过程中发现在jQuery中绑定事件时,有人用bind(),有人用on(),有人用delegate(),还有人用live(),看代码的时候觉得都实现功能了也就掀过去了,只是 ...