RoadTest: ULINKPLUS-Universal Debug Trace Adapter
Evaluation Type: Development Boards & Tools
Did you receive all parts the manufacturer stated would be included in the package?: True
What other parts do you consider comparable to this product?: SEGGER J-Link Debug Probes, IAR I-jet Trace for Arm Cortex-A/R/M
What were the biggest problems encountered?: Get the system running together with the hardware. Some development boards and micro-controllers are not supported by KEIL ULINKPLUS-Universal Debug Trace Adapter.
Having previously with micro-controllers and debuggers from other providers such as Segger and IAR this roadtest was particularly interesting to me. Until now I had not laid my hands on Keil debugger as many ARM boards can be tested with USB-UART Hyperterminal and the normal printf or leds blinky. This device bugs off the rest of its competitors because of its special feature of debugging embedded systems from a power perspective combined with the usual JTAG based functionality. Hence my curiosity peaked and here we are.........
ULINKplus connects to Arm Cortex-based devices and combines the traditional debugging functionality with power and I/O measurement. The classic features such as breakpoints, SWV trace, and multi-core debugging are there. The new features using Event Recorder and Event Statistics to profile for timing and energy consumption is a step up. Also one can use the System Analyzer to analyze power consumption with events, threads, interrupts, and variable changes.
The ULINKplus kit which was delivered includes:
A quick look into what was delivered in the packet.
Fig. 1 Delivered in the box
Fig. 3 6x power measurement shunts (5 mA, 10 mA, 25 mA, 50 mA, 100 mA and 250 mA)
ULINKplus Debugger JTAG/SWD Interface Description
A look into the technical features of the ULINKplus JTAG/SWD interface.
The humble Schematic
Serial Wire Signals
ULINKplus JTAG/SWD interface connector
Further support for choosing the right connector is also available at their CoreSight Connectors webpage. ULINKplus debugger supports 10-Pin (0.05") connector. With their other ULINK family debuggers more traditional 20-pin connectors are available.
Fig. 9 ULINK family debuggers with more traditional 20-pin connectors
Although it would have been better if the 20 pin connector could be supported with the new ULINKplus debugger. As there are many old micro-controller boards out there which only have 20-pinout and not a10-pinout on-board. Clearly, with this debugger one has to develop its own intermediate10-pin to 20-pin connector converter.
Keil MDK Software Installation
In order to get started with the KEIL ULINKPLUS Debugger I installed the Keil MDK software. It is a software development studio for Arm based microcontrollers. There are 4 versions of it and MDK-Lite is the free version. There is also the a 7 day trial of MDK-Professional License which I will evaluate quickly in the end and what extra features they offer. Although I think the trial software should be available for atleast 2 - 3 weeks for extensive testing if I later want to buy the IDE.
Fig. 10 Comparison of the MDKs
MDK-Core which is based on µVision is the Windows only IDE. For Linux they offer Eclipse based DS-MDK. There are also some software packs for the IDEs available which can be later installed in the IDEs as required such as CMSIS drivers, RTOS, USB drivers and the list goes on.
Fig. 11 Keil MDK Microcontroller Development Kit
What I liked the most was they offer MDK5 Software Packs for a very large selection of micro-controller boards with working examples, sensor drivers, application notes, board support packages. It includes external vendors such as NXP, Hitex, Infineon, AnalogDevices and the list goes on.. Then for someone like me who has been using Keil since early 2000s. there is the MDK v4 Legacy Support to keep up the compatibility with my old code.
To get a headstart with my NXP development board I downloaded the software pack.
Attention: Prior to using the MDK5 IDE one must check beforehand if their micro-controller is currently supported or one needs the legacy MDK4 IDE. MDK v4 Legacy Software can be handy if there is an old micro-controller being used or there is some work to be done on an old code which was written with earlier versions.
Some important Links are shared below:
In conclusion, the ARM ULINKplus debugger is quite a new device in the market. Any many of the claims made about the supported families such as Cortex M0 and Cortex M0+ is not completely true (they are supported but not for the new fancy stuff). Unfortunately this is not mentioned in when you scan though the basic documentation but comes up quite later in the detailed documentation only. They are still in the process of making working examples for these devices; which I can totally understand as Cortex M0 is an old family of ARM micro-controllers. The other families such as Cortex M3 and Cortex M4 seem to be better supported (at-least thats what I realized after digging through their website and from the ARM tech support guy) with ULINKplus debugger if one wants to use all the nice features. A word of caution to the fellow road-testers, if they want to utilize the full features of this debugger then use Cortex M3 or Cortex M4 families of micro-controller development boards. I would be eager to see their results. By the way ARM tech support is very responsive to the issues so do make full use of that.
In the end it was a nice learning experience to work with this type of new generation debuggers. To understand the current and voltage consumption of each function in your code can be a valuable specially for IOT and connected devices as they need to sleep for quite long times then wake up, collect data and goto sleep again. During the sleep cycles; reducing the overall energy consumption of the system can be paramount.
For starters; the road test is not finished.
Keep Calm and be patient!! I am not able to upload the working videos on the website due to technical issues.
It seems you have indeed missed the main aim of…
Probably then you are commenting in the wrong way. I felt that you just commented without reading the full review and did not even bother to go over to the other pages or read the complete article. And…
Nice road test report.
This road-test has officially ended.
I am open to feedback now or any questions.
Probably then you are commenting in the wrong way. I felt that you just commented without reading the full review and did not even bother to go over to the other pages or read the complete article. And other members just followed on with commenting without even reading the whole article.
I am very much aware of the standards at element14 and I am sure keeping up with it.
Thanks for offering help though. When you start writing a road test review you have to do the rating thing as it come right on top, so I guess thats the format for writing reviews.
I normally pace myself between working and writing as it gives me more clarity in writing.
You are taking these comments the wrong way - first of all, as far as I can see you are the ONLY UlinkPlus road tester to post anything at all - so kudos for that !
Secondly, my point was that I thought it was a bit odd to score the road test before it was finished - I certainly didn't mean to imply that it should have been finished or not.
Thirdly, can I help you where you are stuck - I have a Ulink Plus (as well as all the other Ulinks) and have been using Keil tools for 20 years or more (which is why I didn't apply for the RoadTest) .
I had already informed rscasny about all the issues on this road test before the deadline and got a time extension of 3 weeks. I am also waiting for some technical support answers from the KEIL Technical Forum. Some issues are arising from the website itself which I have raised in the Feedback Forum already.
As I said again, you may want to read until the end of the review and all the written blogs. The table of contents has the links to all the blogs.