<?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>nRF5340 - UART boot mode selection</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/59193/nrf5340---uart-boot-mode-selection</link><description>Hello, 
 I want to program nRF5340 via UART. 
 What is the hardware related event that puts the application processor in program mode over the UART ? 
 All ARM microprocessors I&amp;#39;ve worked with have special pins with &amp;quot;boot-mode&amp;quot; function. When the device</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Tue, 07 Apr 2020 09:57:50 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/59193/nrf5340---uart-boot-mode-selection" /><item><title>RE: nRF5340 - UART boot mode selection</title><link>https://devzone.nordicsemi.com/thread/243850?ContentTypeID=1</link><pubDate>Tue, 07 Apr 2020 09:57:50 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:12b2c8bc-c980-4a49-a02c-0b80a29b1e55</guid><dc:creator>Gabriele</dc:creator><description>&lt;p&gt;Thanks.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF5340 - UART boot mode selection</title><link>https://devzone.nordicsemi.com/thread/243553?ContentTypeID=1</link><pubDate>Mon, 06 Apr 2020 07:41:39 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:15b25b1e-d560-48af-8c98-d706e2f4adfe</guid><dc:creator>haakonsh</dc:creator><description>&lt;p&gt;It&amp;#39;s anything from a few ms to 500ms, depending on a vast number of variables.&amp;nbsp;&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: nRF5340 - UART boot mode selection</title><link>https://devzone.nordicsemi.com/thread/243404?ContentTypeID=1</link><pubDate>Fri, 03 Apr 2020 12:40:38 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:e031b21c-8dfa-41d2-90ec-fdbdaaf7fad1</guid><dc:creator>Gabriele</dc:creator><description>&lt;p&gt;Yes, please. Even a rough value would be fine to know&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF5340 - UART boot mode selection</title><link>https://devzone.nordicsemi.com/thread/243363?ContentTypeID=1</link><pubDate>Fri, 03 Apr 2020 10:18:27 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:335544c6-9793-44e9-98c3-41b5f8f97ccd</guid><dc:creator>haakonsh</dc:creator><description>[quote user="gabrielef@cosmed.it"]Does a Soft Reset pull low the reset pin ?[/quote]
&lt;p&gt;&amp;nbsp;No.&amp;nbsp;&lt;/p&gt;
[quote user="gabrielef@cosmed.it"]Another question is how long it takes a system reboot ?[/quote]
&lt;p&gt;It depends on your specific build of zephyr. I can try to find some numbers that might be&amp;nbsp;relevant.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF5340 - UART boot mode selection</title><link>https://devzone.nordicsemi.com/thread/243348?ContentTypeID=1</link><pubDate>Fri, 03 Apr 2020 09:30:12 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:43e71d5b-701b-4d20-85c2-bec40046eac2</guid><dc:creator>Gabriele</dc:creator><description>&lt;p&gt;Hi haakonsh.&lt;/p&gt;
&lt;p&gt;I&amp;#39;ve made substantial progress on the hardware design. There is space for a little improvement.&lt;br /&gt;We agreed that for bootloader restart the Soft Reset is sufficient.&lt;br /&gt;Now I&amp;#39;ve realized I need to reset some external circuitry when rebooting programmatically.&lt;br /&gt;Does a Soft Reset pull low the reset pin ?&lt;/p&gt;
&lt;p&gt;Another question is how long it takes a system reboot ? I mean the time elapsed form a Soft Reset to a system ready condition under Zephyr.&lt;/p&gt;
&lt;p&gt;Thanks for your valuable support&lt;br /&gt;Gabriele&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF5340 - UART boot mode selection</title><link>https://devzone.nordicsemi.com/thread/241615?ContentTypeID=1</link><pubDate>Wed, 25 Mar 2020 13:44:36 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:79a733ae-7300-4c6d-8256-568d6b904822</guid><dc:creator>haakonsh</dc:creator><description>&lt;p&gt;Yeah, that makes sense.&lt;br /&gt; A power-cycle is just as effective as a pin reset, so you can ditch that circuit as well.&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF5340 - UART boot mode selection</title><link>https://devzone.nordicsemi.com/thread/241608?ContentTypeID=1</link><pubDate>Wed, 25 Mar 2020 13:30:02 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:2416a3fb-55ea-4844-98a4-b7705671c3b6</guid><dc:creator>Gabriele</dc:creator><description>&lt;p&gt;It is linked to a PC just through the serial port, not only for DFU but also for normal operation. DFU is only one command in the list the PC could send to the nRF.&lt;br /&gt;Make sense ?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF5340 - UART boot mode selection</title><link>https://devzone.nordicsemi.com/thread/241606?ContentTypeID=1</link><pubDate>Wed, 25 Mar 2020 13:21:31 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:d5942ecf-2d7f-45a9-b665-1d6e7f2d0c26</guid><dc:creator>haakonsh</dc:creator><description>&lt;p&gt;Aah, So I guess you only connect to another device over uart when you need the DFU.&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF5340 - UART boot mode selection</title><link>https://devzone.nordicsemi.com/thread/241598?ContentTypeID=1</link><pubDate>Wed, 25 Mar 2020 12:43:13 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:445068d3-009a-49ad-ab37-aaf228772969</guid><dc:creator>Gabriele</dc:creator><description>&lt;p&gt;That&amp;#39;s clear, for bootloader restart the Soft Reset is sufficient.&lt;br /&gt;But&amp;nbsp;if the nRF53 locks up for an unknown issue, it will not respond on the UART and then the user will be adviced to power cycle the system.&lt;br /&gt;This is because the system comprises only the nRF53. There&amp;nbsp;is no external MCU.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF5340 - UART boot mode selection</title><link>https://devzone.nordicsemi.com/thread/241589?ContentTypeID=1</link><pubDate>Wed, 25 Mar 2020 12:07:07 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:dda872bb-99c5-4a67-ba44-bd178adeb19e</guid><dc:creator>haakonsh</dc:creator><description>&lt;p&gt;Well, I&amp;#39;d still connect the ext MCU to nRESET, it&amp;#39;s a good last resort if the nRF53 locks up for a currently unknown issue, but you do not need R1 or Q1. nRESET has an internal 13k pull-up, so if you configure AL27/P0.24 as high impedance the nRF device will not reset, then you configure it as output low when you need to reset the nRF device.&amp;nbsp;&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: nRF5340 - UART boot mode selection</title><link>https://devzone.nordicsemi.com/thread/241561?ContentTypeID=1</link><pubDate>Wed, 25 Mar 2020 10:38:07 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:78693aab-bd4c-4ff5-b487-777698222b68</guid><dc:creator>Gabriele</dc:creator><description>&lt;p&gt;&lt;img alt=" " src="https://devzone.nordicsemi.com/resized-image/__size/320x240/__key/communityserver-discussions-components-files/4/sw2hw_5F00_reset.png" /&gt;Perfect,&lt;br /&gt;that means I can throw away also this circuit.&lt;br /&gt;Thanks&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF5340 - UART boot mode selection</title><link>https://devzone.nordicsemi.com/thread/241555?ContentTypeID=1</link><pubDate>Wed, 25 Mar 2020 10:23:11 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:4170052b-fd32-47ea-a96e-b2e23f3530fd</guid><dc:creator>haakonsh</dc:creator><description>[quote user="gabrielef@cosmed.it"]I guess P18 is the one I have to replicate on my board.&lt;br /&gt;Is it correct ?[/quote]
&lt;p&gt;&amp;nbsp;Yes, you&amp;#39;re correct.&lt;br /&gt;&amp;nbsp;&lt;/p&gt;
[quote user="gabrielef@cosmed.it"]For the BOOT_SERIAL_DETECT_PIN mechanism to work,&amp;nbsp;is a Soft Reset equivalent to a&amp;nbsp;Pin Reset ?[/quote]
&lt;p&gt;&amp;nbsp;For DFU purposes yes, as the bootloader is the first piece of code executed after a reset. A soft reset resets the CPU only, a pin reset resets the rest of the MCU as well.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF5340 - UART boot mode selection</title><link>https://devzone.nordicsemi.com/thread/241537?ContentTypeID=1</link><pubDate>Wed, 25 Mar 2020 09:36:33 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:a2bc0f0a-43ce-4898-baec-b1fe142227bd</guid><dc:creator>Gabriele</dc:creator><description>&lt;p&gt;&lt;img class="align-right" style="float:right;" alt=" " src="https://devzone.nordicsemi.com/resized-image/__size/320x240/__key/communityserver-discussions-components-files/4/swd_5F00_in_5F00_out.png" /&gt;For production programming the SWD method would be fine.&lt;br /&gt;On the PDK I see two different SWD interfaces&lt;/p&gt;
&lt;p&gt;P18 (Debug In)&lt;br /&gt;P19 (Debug Out)&lt;/p&gt;
&lt;p&gt;I guess P18 is the one I have to replicate on my board.&lt;br /&gt;Is it correct ?&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;A second question is about&amp;nbsp;nRF5340 reset in relation to DFU.&lt;br /&gt;I want to keep the BOOT_SERIAL_DETECT_PIN&amp;nbsp;as a backup DFU mechanism.&lt;br /&gt;For the BOOT_SERIAL_DETECT_PIN mechanism to work,&amp;nbsp;is a Soft Reset equivalent to a&amp;nbsp;Pin Reset ?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF5340 - UART boot mode selection</title><link>https://devzone.nordicsemi.com/thread/241319?ContentTypeID=1</link><pubDate>Tue, 24 Mar 2020 10:26:25 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:1de86438-1262-4748-b052-df6037593637</guid><dc:creator>haakonsh</dc:creator><description>&lt;p&gt;Are you asking about production programming? If so you need VDD, GND, SWDIO, and SWDCLK exposed to an SWD programmer interface.&amp;nbsp;&lt;br /&gt;&lt;br /&gt;You need to program at least the bootloader and a DFU with the UART interface during production.&amp;nbsp;&lt;br /&gt;&lt;br /&gt;An alternative is to create an SWD interface in the other MCU and use that to program the nRF device, this can serve as the future DFU process as well. Though I would not recommend it unless you&amp;#39;ve got large volume production as it is a fair bit of development involved.&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF5340 - UART boot mode selection</title><link>https://devzone.nordicsemi.com/thread/241312?ContentTypeID=1</link><pubDate>Tue, 24 Mar 2020 10:11:26 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:18e0fece-8904-41bc-9db6-4ba146567fbc</guid><dc:creator>Gabriele</dc:creator><description>&lt;p&gt;Sorry, one last question. So far we dealt with DFU handled by a custom FW.&lt;br /&gt;What about the very first DFU ?&lt;br /&gt;How do I do it ?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF5340 - UART boot mode selection</title><link>https://devzone.nordicsemi.com/thread/241193?ContentTypeID=1</link><pubDate>Mon, 23 Mar 2020 15:04:33 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:cfb6b785-7997-49d3-bde0-12f3fb362240</guid><dc:creator>Gabriele</dc:creator><description>&lt;p&gt;Good&amp;nbsp;idea! I&amp;#39;ll get rid of the circuit.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF5340 - UART boot mode selection</title><link>https://devzone.nordicsemi.com/thread/241190?ContentTypeID=1</link><pubDate>Mon, 23 Mar 2020 15:00:43 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:fc948221-f79a-4b73-a020-c0ff04b3ce47</guid><dc:creator>haakonsh</dc:creator><description>&lt;p&gt;If the ext MCU will send a UART command to the application then you can just store that state in persistent storage and issue a system reset, then check for that&amp;nbsp;state in the bootloader. In that case, you won&amp;#39;t need the&amp;nbsp;&lt;span&gt;BOOT_SERIAL_DETECT_PIN&amp;nbsp; signal at all.&amp;nbsp;&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF5340 - UART boot mode selection</title><link>https://devzone.nordicsemi.com/thread/241167?ContentTypeID=1</link><pubDate>Mon, 23 Mar 2020 14:11:07 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:4e94042f-e494-4480-85fe-bbb4d7592198</guid><dc:creator>Gabriele</dc:creator><description>&lt;p&gt;&lt;img class="align-right" style="float:right;" alt=" " src="https://devzone.nordicsemi.com/resized-image/__size/320x240/__key/communityserver-discussions-components-files/4/1541.dfu.png" /&gt;Great.&lt;/p&gt;
&lt;p&gt;In my application the user cannot put her hands on the board, to press buttons etc. Thus DFU must be entirely managed by SW.&lt;br /&gt;This is the idea (look at the circuit)&lt;/p&gt;
&lt;p&gt;a) the user sends a command like &amp;quot;please, DFU on next reboot&amp;quot;&lt;br /&gt;b) the nRF5340 sets DFUEN high long enough to charge the capacitor, then resets the board&lt;br /&gt;c) on reboot DFUBOOTn is found low, and the DFU process starts&lt;br /&gt;d) during the DFU process, the capacitor discharges through the large resistor&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF5340 - UART boot mode selection</title><link>https://devzone.nordicsemi.com/thread/241144?ContentTypeID=1</link><pubDate>Mon, 23 Mar 2020 13:18:52 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:3bd63316-70b6-4ed7-b72c-37dc5f0ed464</guid><dc:creator>haakonsh</dc:creator><description>&lt;p&gt;Yes, the bootloader checks the&amp;nbsp;&lt;span&gt;BOOT_SERIAL_DETECT_PIN during boot and starts the DFU process. The reset pin is used to start the bootloader.&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF5340 - UART boot mode selection</title><link>https://devzone.nordicsemi.com/thread/240883?ContentTypeID=1</link><pubDate>Fri, 20 Mar 2020 13:21:27 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:5f6b8c81-ce50-4055-9466-64401c958e0e</guid><dc:creator>Gabriele</dc:creator><description>&lt;p&gt;If I understand well,&lt;br /&gt;P0.18 is the reset pin&lt;br /&gt;P0.11 is the in to get monitored to start DFU&lt;br /&gt;Is it correct ?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF5340 - UART boot mode selection</title><link>https://devzone.nordicsemi.com/thread/240863?ContentTypeID=1</link><pubDate>Fri, 20 Mar 2020 12:37:45 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:ffb4f517-2fce-4a3a-8879-4f2eed7f8241</guid><dc:creator>haakonsh</dc:creator><description>&lt;p&gt;You&amp;#39;re mixing two concepts here. The reset pin called nRESET is used to reset the MCU, in case of the nRF52840 this pin can be configured as a GPIO instead.&lt;br /&gt;&lt;br /&gt; The&amp;nbsp;&lt;span&gt;BOOT_SERIAL_DETECT_PIN&amp;nbsp;is used to signal the bootloader that you wish to start the DFU procedure.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF5340 - UART boot mode selection</title><link>https://devzone.nordicsemi.com/thread/240859?ContentTypeID=1</link><pubDate>Fri, 20 Mar 2020 12:28:55 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:9a0c2ee8-6ae4-45f4-9a1b-7c5a64fa8d74</guid><dc:creator>Gabriele</dc:creator><description>&lt;p&gt;&lt;img class="align-right" style="float:right;" alt=" " src="https://devzone.nordicsemi.com/resized-image/__size/320x240/__key/communityserver-discussions-components-files/4/p018.png" /&gt;Thanks haakonsh,&lt;/p&gt;
&lt;p&gt;Kconfig&amp;nbsp;tells&amp;nbsp;that BOOT_SERIAL_DETECT_PIN is &amp;quot;11&amp;quot; for&amp;nbsp;BOARD_NRF52840_PCA10056.&lt;br /&gt;In the HW schematics of&amp;nbsp;PCA10056 the RESET pin is P0.18.&lt;br /&gt;How does P0.18 relates to 11 ?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF5340 - UART boot mode selection</title><link>https://devzone.nordicsemi.com/thread/240402?ContentTypeID=1</link><pubDate>Wed, 18 Mar 2020 10:51:41 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:450ef4b9-9f55-4d96-b6e0-9f4df333552a</guid><dc:creator>haakonsh</dc:creator><description>&lt;p&gt;Any available GPIO can be used.&amp;nbsp;&lt;br /&gt;&lt;br /&gt;See&amp;nbsp;&lt;a href="https://github.com/NordicPlayground/fw-nrfconnect-mcuboot/blob/master/boot/zephyr/Kconfig#L296"&gt;https://github.com/NordicPlayground/fw-nrfconnect-mcuboot/blob/master/boot/zephyr/Kconfig#L296&lt;/a&gt;.&amp;nbsp;&lt;br /&gt;and&amp;nbsp;&lt;a href="https://github.com/NordicPlayground/fw-nrfconnect-mcuboot/blob/master/boot/zephyr/main.c#L223"&gt;https://github.com/NordicPlayground/fw-nrfconnect-mcuboot/blob/master/boot/zephyr/main.c#L223&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>