1. Overview
Before reading this article, it is highly recommended to read STM32CubeMonitor:Introduction and main principles of STM32CubeMonitor, to better understand the STM32CubeMonitor concepts.
J-Link is a probe distributed by SEGGER. STM32CubeMonitor is compatible with the J-Link probe. This article describes how to use the J-Link probe with STM32CubeMonitor.
2. J-Link connection
The J-Link probe must be connected to the STM32 board through the SWD connector. Jumper wires can be used for this purpose.
For further information, visit the related SEGGER wiki page[1].
3. J-Link nodes
Two nodes are dedicated to J-Link:
to define and/or select a J-Link probe configuration (probe name), open and close the connection, and send commands to the selected probe.
to define and/or select a J-Link probe configuration (probe name), and receive data from the selected probe.
4. Import the basic J-Link flow
Import the following flow into the STM32CubeMonitor workspace:
[{"id":"2da90ba20341d53c","type":"tab","label":"Basic_Jlink_Flow","disabled":false,"info":"# Basic flow to start with STM32CubeMonitor."},{"id":"033af5d1d80fcdca","type":"ui_chartst","z":"2da90ba20341d53c","group":"f9c34dde.1e2f4","name":"myChart","order":4,"width":15,"height":9,"chartType":"line","curveType":"linear","duration":"10","ymin":"","ymax":"","x":580,"y":280,"wires":[]},{"id":"b0a4f04cddfd14ad","type":"ui_button","z":"2da90ba20341d53c","name":"","group":"f9c34dde.1e2f4","order":3,"width":5,"height":1,"passthru":false,"label":"Clear Graphs","tooltip":"","color":"","bgcolor":"","icon":"","payload":"","payloadType":"str","topic":"clear","x":430,"y":380,"wires":[["033af5d1d80fcdca"]]},{"id":"f97c9515f36990e4","type":"ui_button","z":"2da90ba20341d53c","name":"","group":"f9c34dde.1e2f4","order":1,"width":5,"height":1,"passthru":false,"label":"START Acquisition","tooltip":"","color":"","bgcolor":"","icon":"","payload":"","payloadType":"str","topic":"start","x":110,"y":80,"wires":[["802f93573b8b1085"]]},{"id":"6a883cd65e59cb83","type":"ui_button","z":"2da90ba20341d53c","name":"","group":"f9c34dde.1e2f4","order":2,"width":5,"height":1,"passthru":true,"label":"STOP Acquisition","tooltip":"","color":"","bgcolor":"","icon":"","payload":"","payloadType":"str","topic":"stop","x":110,"y":160,"wires":[["802f93573b8b1085"]]},{"id":"c2b3bd46e656df7d","type":"processing","z":"2da90ba20341d53c","groupname":"myVariables","groupid":"d59587ff.cd1748","expressions":[],"statistics":[],"logmode":"no","logformat":"stcm","x":390,"y":280,"wires":[["033af5d1d80fcdca"],[]]},{"id":"cb834759e76e66eb","type":"ui_toast","z":"2da90ba20341d53c","position":"top right","displayTime":"3","highlight":"","sendall":true,"outputs":0,"ok":"OK","cancel":"","raw":false,"topic":"","name":"","x":570,"y":220,"wires":[]},{"id":"802f93573b8b1085","type":"variables","z":"2da90ba20341d53c","groupname":"","accesspoint":0,"execonfig":"","variablelist":[],"triggerstartmode":"manual","triggername":"","triggerthreshold":"","frequencyType":"0","mode":"direct","lastImportedTime":-1,"openStatus":false,"x":320,"y":100,"wires":[["126044b96147c531"],[]]},{"id":"126044b96147c531","type":"acquisition jlink out","z":"2da90ba20341d53c","name":"","probeconfig":"","x":570,"y":80,"wires":[]},{"id":"64321dc13c3a5881","type":"acquisition jlink in","z":"2da90ba20341d53c","name":"","probeconfig":"","x":120,"y":300,"wires":[["c2b3bd46e656df7d"],[]]},{"id":"f9c34dde.1e2f4","type":"ui_group","name":"Chart","tab":"17d09b07.741a55","order":1,"disp":true,"width":15,"collapse":false},{"id":"17d09b07.741a55","type":"ui_tab","name":"Home","icon":"dashboard","disabled":false,"hidden":false}]
- Navigate to Menu > Import > Clipboard
- Copy the .json formatted flow and paste it in the area
- Click on Import
The flow is now imported into the STM32CubeMonitor workspace.
5. Basic J-Link flow
Below is an example of a basic flow to perform an acquisition with a J-Link probe. Instead of using STlink acquisition nodes for an ST-LINK, Jlink acquisition nodes are used for the J-Link probe.
The J-Link probe must be configured by selecting it from the picklist and indicating its node name in the "Name" field.
The version of the DLL used by the J-Link probe is indicated.
Unlike the ST-LINK, the J-link requires that the user specifies the type of board to monitor. The user makes this choice by selecting the product. Once these operations are completed, the user can click on deploy and perform an acquisition, just like with an ST-LINK.
6. Limitations
J-link support is limited to Windows® 10 and 11, 64 bits(x64).
Multiprobe is not supported with the J-link probe.
Snapshot mode is not supported by the J-link probe for the acquisition.
7. Troubleshoot
"File not found" appears in the MCU picklist when the "SupportedHW.txt" file is not present in the stm32cubemonitor-jlink-protocol directory. The file "SupportedHW.txt" is part of the installer Setupxxxxx.zip.