<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="https://devzone.nordicsemi.com/cfs-file/__key/system/syndication/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>SEGGER J-Link debugger/programmer for nRF52840</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/66456/segger-j-link-debugger-programmer-for-nrf52840</link><description>Hi, I have developed some projects on nRF52840 DK pca10056. I want to program/debug the nRF52840 chip ( this chip ) with SEGGER J-Link debugger/programmer ( this debugger ). So I have the following questions. 1- Is this the right debugger I have selected</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Thu, 06 Oct 2022 09:53:12 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/66456/segger-j-link-debugger-programmer-for-nrf52840" /><item><title>RE: SEGGER J-Link debugger/programmer for nRF52840</title><link>https://devzone.nordicsemi.com/thread/389565?ContentTypeID=1</link><pubDate>Thu, 06 Oct 2022 09:53:12 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:ffbf19da-bea4-45b4-9b0b-d24c0a68cda1</guid><dc:creator>Vidar Berg</dc:creator><description>&lt;p&gt;Hello,&lt;/p&gt;
&lt;p&gt;The problem is that &lt;span&gt;J-Flash Lite&lt;/span&gt; sometimes fail to reset the target after loading the FW binary. I reproduced it here, but not sure what the root cause is - maybe it&amp;#39;s trying to do a pinreset before it is enabled.. Anyway. for development I suggest you use nrfjprog/west, or the Programmer app in &lt;a href="https://www.nordicsemi.com/Products/Development-tools/nrf-connect-for-desktop"&gt;nRF connect for desktop&lt;/a&gt; if you want a GUI alternative.&lt;/p&gt;
[quote user="IoTMAN"]but I&amp;#39;ve discovered that .bin files do[/quote]
&lt;p&gt;zephyr.bin and zephyr.hex are linked to the same address. The difference with *.bin files is that they don&amp;#39;t contain any address information, so you have to tell the programmer where to load the data (0x0 in this case). For multi-image builds (e.g. application + bootloader), you can use the merged.hex file instead (see &lt;a href="https://developer.nordicsemi.com/nRF_Connect_SDK/doc/latest/nrf/ug_multi_image.html#what-are-image-files"&gt;https://developer.nordicsemi.com/nRF_Connect_SDK/doc/latest/nrf/ug_multi_image.html#what-are-image-files&lt;/a&gt; for a description of the different hex files that may be produced by the build process). &lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: SEGGER J-Link debugger/programmer for nRF52840</title><link>https://devzone.nordicsemi.com/thread/389468?ContentTypeID=1</link><pubDate>Wed, 05 Oct 2022 16:05:21 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:5d11b900-dcd5-4cad-b6bd-a898d12e0f0b</guid><dc:creator>IoTMAN</dc:creator><description>&lt;p&gt;Hello, I&amp;#39;d like to add to&amp;nbsp;&lt;a class="internal-link view-user-profile" href="https://devzone.nordicsemi.com/members/rmptxf"&gt;rmptxf&lt;/a&gt;&amp;#39;s answer. This is for when you use&amp;nbsp;&lt;strong&gt;P20&lt;/strong&gt;&lt;span&gt;&amp;nbsp;for programming and debugging an external device.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;1- Use&amp;nbsp;&lt;strong&gt;P20&lt;/strong&gt;&lt;span&gt;&amp;nbsp;on the board and make the connections he provided,&amp;nbsp; (I will use DK term for the device that has a J-link which will be connected to the external device that will be programmed such as a dongle)(you don&amp;#39;t need to power the device if it&amp;#39;s a dongle).&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;2- Build your application for proper device (nrf52840, 52840 dongle, 52833... etc.)&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;3- go to location &amp;lt;your_workspace_path\your_application_folder\build\zephyr&amp;gt;&amp;nbsp;where we&amp;#39;ll need the&amp;nbsp;zephyr.bin and zephyr.hex files.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;4- Open J-Flash Lite (I&amp;#39;m using V7.66a version). Choose device to be programmed &amp;gt; click OK &amp;gt; click three dots below the &amp;quot;Data File (bin / hex / ...).....&amp;quot; find the zephyr.bin path located in step 3.&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;5- Click Program Device&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;6- Repeat step 4 for zephyr.hex&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;7- Click Program Device&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;8- it should work.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;You might ask,&amp;quot; why do you program .bin and after that the .hex file, wouldn&amp;#39;t the .hex just overwrite anyway?&amp;quot; Nope. Although sometimes just flashing the .hex file works, most of the time it did&amp;#39;nt for me and I don&amp;#39;t know why. It was a coincidence that I&amp;#39;ve discovered this. But I&amp;#39;m guessing it&amp;#39;s something to do with bootloader. .hex files don&amp;#39;t start form address 0x0, but I&amp;#39;ve discovered that .bin files do. So overwriting them somehow makes it work. Hope it helps. Any technical explanation on why this works is appreciated.&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: SEGGER J-Link debugger/programmer for nRF52840</title><link>https://devzone.nordicsemi.com/thread/272014?ContentTypeID=1</link><pubDate>Tue, 29 Sep 2020 10:10:33 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:595510cf-958e-42df-a87f-833c58c7e8d5</guid><dc:creator>Vidar Berg</dc:creator><description>&lt;p&gt;The target board must have the same VDD voltage as the DK. Otherwise you will need a level shifter. The standalone J-links have one built-in.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: SEGGER J-Link debugger/programmer for nRF52840</title><link>https://devzone.nordicsemi.com/thread/271926?ContentTypeID=1</link><pubDate>Tue, 29 Sep 2020 06:01:49 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:0ef4e5db-b8ae-4cad-8f95-3c4a4819e000</guid><dc:creator>Muqarrab</dc:creator><description>&lt;p&gt;Thank &lt;a href="https://devzone.nordicsemi.com/members/rmptxf"&gt;rmptxf&lt;/a&gt;,&lt;br /&gt;&lt;br /&gt;Do I need a level converter? As I have seen&amp;nbsp;some chips have 3.3 operating voltage and some have 1.7-5.5v.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: SEGGER J-Link debugger/programmer for nRF52840</title><link>https://devzone.nordicsemi.com/thread/271878?ContentTypeID=1</link><pubDate>Mon, 28 Sep 2020 18:55:31 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:0294083a-554f-43af-80de-4b45e5d05eb1</guid><dc:creator>rmptxf</dc:creator><description>&lt;p&gt;Hi Muqarrab,&lt;/p&gt;
&lt;p&gt;1- It should work.&lt;/p&gt;
&lt;p&gt;You can also use the &lt;strong&gt;nRF52840-DK&lt;/strong&gt; instead. It has an on-board debugger that can also be used to flash and debug firmware on external SOCs.&lt;/p&gt;
&lt;p&gt;You just need to connect your external SOC through the &lt;strong&gt;debug out&lt;/strong&gt; port. Once your external SOC is detected, the debugger will switch the connection to it, and ignore the on-board SOC.&lt;/p&gt;
&lt;p&gt;If you managed to have an SWD connector on your custom board, that&amp;#39;ll be easier. You&amp;#39;ll just need a cable to connect them both.&lt;/p&gt;
&lt;p&gt;Like in here. The custom board is the &lt;strong&gt;Adafruit nRF52840 Feather express&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;&lt;img alt=" " src="https://devzone.nordicsemi.com/resized-image/__size/180x240/__key/communityserver-discussions-components-files/4/nRF52840_2D00_DK_5F00_custom_5F00_board_5F00_wiring_5F00_throught-debug_5F00_out.PNG" /&gt;&lt;/p&gt;
&lt;p&gt;Or, you can just connect the &lt;strong&gt;SWD&lt;/strong&gt; related pins on the &lt;strong&gt;P20&lt;/strong&gt; of the nRF52840-DK, to your custom board.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Note:&lt;/strong&gt; You do need to power your external board.&lt;strong&gt; &lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;img alt=" " src="https://devzone.nordicsemi.com/resized-image/__size/320x240/__key/communityserver-discussions-components-files/4/custom_5F00_board_5F00_programming_5F00_using_5F00_nrf52dk.png" /&gt;&lt;/p&gt;
&lt;p&gt;2- You can just look for the &lt;strong&gt;SWD &lt;/strong&gt;interface pins. That&amp;#39;s all you need !&lt;/p&gt;
&lt;p&gt;3- You can still use the &lt;strong&gt;DK&lt;/strong&gt; here too. But, if you have lot of devices, I think using an external debugger would be good, with some sort of &lt;strong&gt;pogo-pins&lt;/strong&gt;, and a &lt;strong&gt;Tag-Connect footprint&lt;/strong&gt; &lt;strong&gt;&lt;/strong&gt;on the custom PCB.&lt;/p&gt;
&lt;p&gt;Find some tips about that here : &lt;a href="https://partsbox.com/blog/choosing-a-debug-programming-connector-2019.html"&gt;https://partsbox.com/blog/choosing-a-debug-programming-connector-2019.html&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Hope that helps.&lt;/p&gt;
&lt;p&gt;Best regards,&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>