<?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>About VBUSVALID Config</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/128643/about-vbusvalid-config</link><description>HI , 
 I wan to disable the vBus &amp;quot;VBUS is not valid, and the pull-up resistor on D+ is disabled.&amp;quot; on nRF54LM20, 
 I try to write to disconnect usb from PC : 
 
 NRF_USBHS-&amp;gt;PHY.INPUTOVERRIDE |= USBHS_PHY_INPUTOVERRIDE_VBUSVALID_Msk; 
 NRF_USBHS-&amp;gt;PHY.OVERRIDEVALUES</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Mon, 10 Aug 2026 00:42:49 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/128643/about-vbusvalid-config" /><item><title>RE: About VBUSVALID Config</title><link>https://devzone.nordicsemi.com/thread/570031?ContentTypeID=1</link><pubDate>Mon, 10 Aug 2026 00:42:49 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:a2068e8e-8701-4834-99c4-b469df93fde8</guid><dc:creator>gandyhuang</dc:creator><description>&lt;p&gt;It&amp;#39;s OK, Thanks&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: About VBUSVALID Config</title><link>https://devzone.nordicsemi.com/thread/569392?ContentTypeID=1</link><pubDate>Thu, 23 Jul 2026 10:05:39 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:f497a30e-739e-42b8-932a-40baf801eb96</guid><dc:creator>Priyanka</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;Thanks for testing.&amp;nbsp;&lt;span&gt;Changing &lt;/span&gt;&lt;code dir="ltr"&gt;&lt;span&gt;VBUSVALID&lt;/span&gt;&lt;/code&gt;&lt;span&gt; does not directly tell the PC that the USB device has disconnected. &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;It only changes what the USB PHY thinks about the USB power signal.&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;To make the PC see the device as disconnected, use the USB controller’s software-disconnect bit.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;Look for&lt;a href="https://docs.nordicsemi.com/r/bundle/ps_nrf54lm20a/page/usbhs.html-register.dctl"&gt; &lt;strong&gt;SFTDISCON – Soft Disconnect&lt;/strong&gt;. &lt;/a&gt;The documentation states that while this bit is set, the host does &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;not see the device as connected, and enumeration restarts after the bit is cleared.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;Then reconnect again and wait a few seconds.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;In short,&amp;nbsp;use VBUSVALID to control the PHY’s view of USB power, but use SFTDISCON when you want the &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;PC to detect that the USB device has been unplugged.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;-Priyanka&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: About VBUSVALID Config</title><link>https://devzone.nordicsemi.com/thread/569029?ContentTypeID=1</link><pubDate>Mon, 13 Jul 2026 06:31:48 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:56b178fc-c366-432a-924a-376555c56445</guid><dc:creator>gandyhuang</dc:creator><description>&lt;p&gt;HI&amp;nbsp;&lt;span&gt;Priyanka,&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;I tested the fix, but the device remains connected and visible to the host. It seems the PHY override for VBUSVALID is not taking effect. Could there be another register or bit that needs to be configured? Thanks&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: About VBUSVALID Config</title><link>https://devzone.nordicsemi.com/thread/568912?ContentTypeID=1</link><pubDate>Wed, 08 Jul 2026 13:37:22 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:2208d392-c6b7-4bab-8806-d8d88335ce35</guid><dc:creator>Priyanka</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;Your second line uses the wrong mask register. You are applying USBHS_PHY_INPUTOVERRIDE_VBUSVALID_Msk to PHY.OVERRIDEVALUES, but these are two separate registers with different bit layouts. You need to clear the VBUSVALID bit in PHY.OVERRIDEVALUES using the correct mask for that register.&lt;/p&gt;
&lt;p&gt;According to the datasheet:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;div&gt;
&lt;p&gt;&lt;strong&gt;&lt;code dir="ltr"&gt;PHY.INPUTOVERRIDE&lt;/code&gt;&lt;/strong&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;— Enables the override for a specific signal (e.g.,&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;code dir="ltr"&gt;VBUSVALID&lt;/code&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;field, bit&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;strong&gt;F&lt;/strong&gt;). Set this bit to activate the override. [&lt;a href="https://docs.nordicsemi.com/r/bundle/ps_nrf54lm20a/page/usbhs.html-register.phy.inputoverride" rel="noopener noreferrer" target="_blank"&gt;PHY.INPUTOVERRIDE&lt;/a&gt;]&lt;/p&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;code dir="ltr"&gt;PHY.OVERRIDEVALUES&lt;/code&gt;&lt;/strong&gt;&amp;nbsp;— Sets the actual value driven to the PHY when the override is active. For&amp;nbsp;&lt;code dir="ltr"&gt;VBUSVALID&lt;/code&gt;&amp;nbsp;(bit&amp;nbsp;&lt;strong&gt;F&lt;/strong&gt;): [&lt;a href="https://docs.nordicsemi.com/r/bundle/ps_nrf54lm20a/page/usbhs.html-register.phy.overridevalues" rel="noopener noreferrer" target="_blank"&gt;PHY.OVERRIDEVALUES&lt;/a&gt;]&lt;/li&gt;
&lt;/ol&gt;
&lt;ul style="font-family:inherit;"&gt;
&lt;li&gt;
&lt;div&gt;&lt;span&gt;&lt;code dir="ltr"&gt;1&lt;/code&gt;&amp;nbsp;= VBUS is valid, pull-up on D+&amp;nbsp;&lt;strong&gt;enabled&lt;/strong&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;&lt;span&gt;&lt;code dir="ltr"&gt;0&lt;/code&gt;&amp;nbsp;= VBUS is not valid, pull-up on D+&amp;nbsp;&lt;strong&gt;disabled&lt;/strong&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p style="font-family:inherit;"&gt;&lt;span&gt;So, could you try the following:&lt;/span&gt;&lt;/p&gt;
&lt;p style="font-family:inherit;"&gt;&lt;br /&gt;NRF_USBHS-&amp;gt;PHY.OVERRIDEVALUES &amp;amp;= ~USBHS_PHY_OVERRIDEVALUES_VBUSVALID_Msk;&lt;br /&gt;NRF_USBHS-&amp;gt;PHY.INPUTOVERRIDE |= USBHS_PHY_INPUTOVERRIDE_VBUSVALID_Msk;&lt;/p&gt;
&lt;p style="font-family:inherit;"&gt;Set the value before enabling the override, to avoid a glitch where the PHY briefly sees the wrong value.&lt;/p&gt;
&lt;p style="font-family:inherit;"&gt;-Priyanka&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>