<?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>GPIO high during DFU</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/19655/gpio-high-during-dfu</link><description>Hello, 
 Id like to understand if its possible to held GPIO high during a DFU update?
The usecase is as follows:
1)GSM module is usually controlled by NRF52832 and it also controls the power switch.
2)I will download a package and perform Serial DFU</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Thu, 11 Jan 2024 20:33:45 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/19655/gpio-high-during-dfu" /><item><title>RE: GPIO high during DFU</title><link>https://devzone.nordicsemi.com/thread/463864?ContentTypeID=1</link><pubDate>Thu, 11 Jan 2024 20:33:45 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:4964b6e2-6349-434d-8b77-780bf8513dd8</guid><dc:creator>jim-cat</dc:creator><description>&lt;p&gt;I&amp;nbsp;solved a similar problem&amp;nbsp;by making the following changes to my mcuboot image. This will keep the specified GPIO pin high while in bootloader/dfu mode.&amp;nbsp;&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;child_image/mcuboot.conf&lt;/strong&gt;&lt;strong&gt;&lt;/strong&gt;
&lt;div&gt;&lt;span&gt;&lt;/span&gt;&lt;span&gt;CONFIG_GPIO&lt;/span&gt;&lt;span&gt;=y&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;CONFIG_GPIO_HOGS&lt;/span&gt;&lt;span&gt;=y&lt;/span&gt;&lt;/div&gt;
&lt;span&gt;&lt;/span&gt;&lt;span&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;&lt;span&gt;&lt;/span&gt;&lt;strong&gt;child_image/mcuboot.overlay&lt;/strong&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;&amp;amp;&lt;/span&gt;&lt;span&gt;gpio0&lt;/span&gt;&lt;span&gt; {&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span&gt;hog1&lt;/span&gt;&lt;span&gt;&amp;nbsp;{&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; gpio-hog;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; gpios = &amp;lt;&lt;/span&gt;&lt;span&gt;24&lt;/span&gt;&lt;span&gt; GPIO_ACTIVE_HIGH&amp;gt;;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; output-high;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;&amp;nbsp; &amp;nbsp; };&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;};&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;div&gt;&lt;span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;div&gt;&lt;span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;div&gt;
&lt;div&gt;&lt;span&gt;Reference:&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;&lt;a href="https://github.com/zephyrproject-rtos/zephyr/discussions/36651#discussioncomment-955786"&gt;github.com/.../36651&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: GPIO high during DFU</title><link>https://devzone.nordicsemi.com/thread/76477?ContentTypeID=1</link><pubDate>Mon, 13 Feb 2017 12:10:04 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:a80ea5fa-317c-436f-afc5-23c8cb4883f4</guid><dc:creator>Vidar Berg</dc:creator><description>&lt;p&gt;the gpio register is cleared on system reset, but you could try the approach we used in our legacy bootlaoder which was to branch to the reset handler of the bootloader instead of doing a system reset, see bootloader_util_reset() implementation in bootloader_util.c (included in SDK 11).&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>