<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>LPC MicrocontrollersのトピックRe: USB Host mode Host init error 3 LPC54605J256</title>
    <link>https://community.nxp.com/t5/LPC-Microcontrollers/USB-Host-mode-Host-init-error-3-LPC54605J256/m-p/2363619#M59555</link>
    <description>&lt;P&gt;Hi&amp;nbsp;&lt;a href="https://community.nxp.com/t5/user/viewprofilepage/user-id/262626"&gt;@SOOTY1&lt;/a&gt;,&lt;/P&gt;
&lt;P&gt;Thanks for your post!&lt;/P&gt;
&lt;P&gt;Could please share which SDK version you are using?&lt;/P&gt;
&lt;P&gt;Please review the return value of&amp;nbsp;CLOCK_EnableUsbhs0HostClock.&lt;/P&gt;
&lt;P&gt;You could refer to the USB Host examples at the SDK for the LPCXpresso54608 board but that examples use USB FS instead of HS.&amp;nbsp;&lt;/P&gt;
&lt;P&gt;To have high-speed USB operating, the CPU clock must be configured to a &lt;BR /&gt;minimum frequency of 60 MHz.&lt;/P&gt;
&lt;P&gt;BR.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
    <pubDate>Mon, 11 May 2026 22:50:15 GMT</pubDate>
    <dc:creator>carlos_o</dc:creator>
    <dc:date>2026-05-11T22:50:15Z</dc:date>
    <item>
      <title>USB Host mode Host init error 3 LPC54605J256</title>
      <link>https://community.nxp.com/t5/LPC-Microcontrollers/USB-Host-mode-Host-init-error-3-LPC54605J256/m-p/2363586#M59554</link>
      <description>&lt;P&gt;Hi friends,&lt;/P&gt;&lt;P&gt;I'm having a problem trying to init the usb host.&amp;nbsp; No matter what I try, it keeps giving error 3 - can't locate driver instance?&amp;nbsp; Any insight welcome.&amp;nbsp; thank you.&lt;/P&gt;&lt;P&gt;LPC54605J256.&amp;nbsp; Custom board.&lt;BR /&gt;&lt;BR /&gt;I have some parts of the usb seemingly operational -&lt;BR /&gt;here's the main, and prints of the usb system.&lt;BR /&gt;&lt;BR /&gt;I am a newcomer to embedded so I have probably overlooked something, perhaps in the usb numbering, or the extra usb init in main.&amp;nbsp; I have tried to only use the config tools.&amp;nbsp;&lt;BR /&gt;&lt;BR /&gt;Clocks, pins and peripherals are all looking good, relevant usb pins, host mode, nvic, enabled.&amp;nbsp; fsl-power.h is included.&amp;nbsp; USB is taking PLL at 48Mhz.&amp;nbsp; I have the correct resistor REXT value.&amp;nbsp; All config tools defined USB pins and USBHSH are defined as demanded by tool.&lt;BR /&gt;&lt;BR /&gt;USBID is, not tied in any direction, but that can be forced with portmode as I understood it?&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;Power is provided to the keypad.&amp;nbsp; VUSB - 4.5v.&amp;nbsp; LED lights on the keypad, but as init fails, nothing more happens : )&lt;BR /&gt;&lt;BR /&gt;I have checked the controller ID.&amp;nbsp; I'm using for High Speed Host.&lt;BR /&gt;#define CONTROLLER_ID kUSB_ControllerIp3516Hs0&lt;BR /&gt;it is declared in host config.h as 1U&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;/P&gt;&lt;P&gt;int main(void)&lt;BR /&gt;{&lt;BR /&gt;vPortDefineHeapRegions(xHeapRegions);&lt;/P&gt;&lt;P&gt;BOARD_InitBootPins();&lt;BR /&gt;BOARD_InitBootClocks();&lt;BR /&gt;BOARD_InitBootPeripherals();&lt;/P&gt;&lt;P&gt;SEGGER_RTT_Init();&lt;/P&gt;&lt;P&gt;PRINTF("System Booting...\r\n");&lt;/P&gt;&lt;P&gt;/* USB1 HS PHY POWER */&lt;BR /&gt;POWER_DisablePD(kPDRUNCFG_PD_USB1_PHY);&lt;/P&gt;&lt;P&gt;/* ENABLE USB1 HS HOST CLOCK */&lt;BR /&gt;CLOCK_EnableClock(kCLOCK_Usbh1);&lt;BR /&gt;CLOCK_EnableUsbhs0HostClock(kCLOCK_UsbSrcUsbPll, 48000000U);&lt;/P&gt;&lt;P&gt;/* FORCE USB1 INTO HOST MODE */&lt;BR /&gt;USBHSH-&amp;gt;PORTMODE &amp;amp;= ~(1UL &amp;lt;&amp;lt; 16);&lt;BR /&gt;USBHSH-&amp;gt;PORTMODE |= (1UL &amp;lt;&amp;lt; 16);&lt;/P&gt;&lt;P&gt;/* Small delay for PHY */&lt;BR /&gt;for (volatile uint32_t d = 0; d &amp;lt; 180000; d++) __NOP();&lt;/P&gt;&lt;P&gt;PRINTF("USB PORTMODE = 0x%08lX\r\n", USBHSH-&amp;gt;PORTMODE);&lt;BR /&gt;PRINTF("USBHSH-&amp;gt;PORTSC1 = 0x%08lX\r\n", USBHSH-&amp;gt;PORTSC1);&lt;BR /&gt;PRINTF("USBHSH-&amp;gt;USBSTS = 0x%08lX\r\n", USBHSH-&amp;gt;USBSTS);&lt;BR /&gt;PRINTF("USBHSH-&amp;gt;USBCMD = 0x%08lX\r\n", USBHSH-&amp;gt;USBCMD);&lt;/P&gt;&lt;P&gt;/* START USB HOST STACK */&lt;BR /&gt;usb_status_t usbStatus = USB_HostInit(CONTROLLER_ID, &amp;amp;g_HostHandle, USB_HostEvent);&lt;/P&gt;&lt;P&gt;if (usbStatus == kStatus_USB_Success)&lt;BR /&gt;{&lt;BR /&gt;PRINTF("USB HOST INIT OK\r\n");&lt;BR /&gt;}&lt;BR /&gt;else&lt;BR /&gt;{&lt;BR /&gt;PRINTF("USB HOST INIT FAILED: %d\r\n", (int)usbStatus);&lt;BR /&gt;}&lt;/P&gt;&lt;P&gt;Process: JLinkGDBServerCLExe&lt;BR /&gt;System Booting...&lt;BR /&gt;USB PORTMODE = 0x00050000&lt;BR /&gt;USBHSH-&amp;gt;PORTSC1 = 0x00001000&lt;BR /&gt;USBHSH-&amp;gt;USBSTS = 0x00000000&lt;BR /&gt;USBHSH-&amp;gt;USBCMD = 0x00000501&lt;BR /&gt;USB HOST INIT FAILED: 3&lt;BR /&gt;Starting scheduler...&lt;/P&gt;</description>
      <pubDate>Mon, 11 May 2026 20:40:34 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPC-Microcontrollers/USB-Host-mode-Host-init-error-3-LPC54605J256/m-p/2363586#M59554</guid>
      <dc:creator>SOOTY1</dc:creator>
      <dc:date>2026-05-11T20:40:34Z</dc:date>
    </item>
    <item>
      <title>Re: USB Host mode Host init error 3 LPC54605J256</title>
      <link>https://community.nxp.com/t5/LPC-Microcontrollers/USB-Host-mode-Host-init-error-3-LPC54605J256/m-p/2363619#M59555</link>
      <description>&lt;P&gt;Hi&amp;nbsp;&lt;a href="https://community.nxp.com/t5/user/viewprofilepage/user-id/262626"&gt;@SOOTY1&lt;/a&gt;,&lt;/P&gt;
&lt;P&gt;Thanks for your post!&lt;/P&gt;
&lt;P&gt;Could please share which SDK version you are using?&lt;/P&gt;
&lt;P&gt;Please review the return value of&amp;nbsp;CLOCK_EnableUsbhs0HostClock.&lt;/P&gt;
&lt;P&gt;You could refer to the USB Host examples at the SDK for the LPCXpresso54608 board but that examples use USB FS instead of HS.&amp;nbsp;&lt;/P&gt;
&lt;P&gt;To have high-speed USB operating, the CPU clock must be configured to a &lt;BR /&gt;minimum frequency of 60 MHz.&lt;/P&gt;
&lt;P&gt;BR.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 11 May 2026 22:50:15 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPC-Microcontrollers/USB-Host-mode-Host-init-error-3-LPC54605J256/m-p/2363619#M59555</guid>
      <dc:creator>carlos_o</dc:creator>
      <dc:date>2026-05-11T22:50:15Z</dc:date>
    </item>
    <item>
      <title>Re: USB Host mode Host init error 3 LPC54605J256</title>
      <link>https://community.nxp.com/t5/LPC-Microcontrollers/USB-Host-mode-Host-init-error-3-LPC54605J256/m-p/2363621#M59556</link>
      <description>&lt;P&gt;Hi Carlos, thanks for your quick reply.&amp;nbsp;&lt;BR /&gt;&lt;BR /&gt;I'm using SDK 2.14.0 (I tried to use more modern, but it failed on a, I believe also a USB driver actually - IDE stated mismatch between SDK (latest) and needed (older) driver) Sorry I don't remember the details of that now.&lt;BR /&gt;&lt;BR /&gt;I'm using a CPU system clock of 180Mhz.&amp;nbsp;&lt;BR /&gt;&lt;BR /&gt;with this -&amp;nbsp;&lt;/P&gt;&lt;P&gt;CLOCK_EnableUsbhs0HostClock(kCLOCK_UsbSrcUsbPll, 48000000U);&lt;BR /&gt;status_t status;&lt;/P&gt;&lt;P&gt;status = CLOCK_EnableUsbhs0HostClock(kCLOCK_UsbSrcUsbPll, 48000000U);&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;PRINTF("USB host clock init status = %d\r\n", status);&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;I return -&lt;BR /&gt;USB host clock init status = 1&lt;BR /&gt;&lt;BR /&gt;does that help?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 11 May 2026 23:19:36 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPC-Microcontrollers/USB-Host-mode-Host-init-error-3-LPC54605J256/m-p/2363621#M59556</guid>
      <dc:creator>SOOTY1</dc:creator>
      <dc:date>2026-05-11T23:19:36Z</dc:date>
    </item>
    <item>
      <title>Re: USB Host mode Host init error 3 LPC54605J256</title>
      <link>https://community.nxp.com/t5/LPC-Microcontrollers/USB-Host-mode-Host-init-error-3-LPC54605J256/m-p/2363851#M59558</link>
      <description>&lt;P&gt;I put in some more print statements to look at the clock.&amp;nbsp; It's set up right in clocks tool, but seems not to be running normally?&lt;BR /&gt;&lt;BR /&gt;&lt;/P&gt;&lt;P&gt;/* ====================== MAIN ====================== */&lt;BR /&gt;int main(void)&lt;BR /&gt;{&lt;BR /&gt;vPortDefineHeapRegions(xHeapRegions);&lt;/P&gt;&lt;P&gt;BOARD_InitBootPins();&lt;BR /&gt;BOARD_InitBootClocks();&lt;BR /&gt;BOARD_InitBootPeripherals();&lt;/P&gt;&lt;P&gt;SEGGER_RTT_Init();&lt;/P&gt;&lt;P&gt;PRINTF("System Booting...\r\n");&lt;/P&gt;&lt;P&gt;/* USB1 HS PHY POWER */&lt;BR /&gt;// POWER_DisablePD(kPDRUNCFG_PD_USB1_PHY);&lt;/P&gt;&lt;P&gt;/* ENABLE USB1 HS HOST CLOCK */&lt;BR /&gt;// CLOCK_EnableClock(kCLOCK_Usbh1);&lt;/P&gt;&lt;P&gt;// CLOCK_EnableUsbhs0HostClock(kCLOCK_UsbSrcUsbPll, 48000000U);&lt;BR /&gt;// status_t status;&lt;/P&gt;&lt;P&gt;// status = CLOCK_EnableUsbhs0HostClock(kCLOCK_UsbSrcUsbPll, 480000000U);&lt;/P&gt;&lt;P&gt;// PRINTF("USB host clock init status = %d\r\n", status);&lt;/P&gt;&lt;P&gt;/* FORCE USB1 INTO HOST MODE */&lt;BR /&gt;USBHSH-&amp;gt;PORTMODE &amp;amp;= ~(1UL &amp;lt;&amp;lt; 16);&lt;BR /&gt;USBHSH-&amp;gt;PORTMODE |= (1UL &amp;lt;&amp;lt; 16);&lt;/P&gt;&lt;P&gt;/* Small delay for PHY */&lt;BR /&gt;for (volatile uint32_t d = 0; d &amp;lt; 180000; d++) __NOP();&lt;/P&gt;&lt;P&gt;PRINTF("USB PORTMODE = 0x%08lX\r\n", USBHSH-&amp;gt;PORTMODE);&lt;BR /&gt;PRINTF("USBHSH-&amp;gt;PORTSC1 = 0x%08lX\r\n", USBHSH-&amp;gt;PORTSC1);&lt;BR /&gt;PRINTF("USBHSH-&amp;gt;USBSTS = 0x%08lX\r\n", USBHSH-&amp;gt;USBSTS);&lt;BR /&gt;PRINTF("USBHSH-&amp;gt;USBCMD = 0x%08lX\r\n", USBHSH-&amp;gt;USBCMD);&lt;BR /&gt;PRINTF("\r\n--- USB CLOCK DIAGNOSTICS ---\r\n");&lt;/P&gt;&lt;P&gt;/* USB PLL state */&lt;BR /&gt;PRINTF("USBPLLCTRL : 0x%08lX\r\n", SYSCON-&amp;gt;USBPLLCTRL);&lt;BR /&gt;PRINTF("USBPLLSTAT : 0x%08lX\r\n", SYSCON-&amp;gt;USBPLLSTAT);&lt;/P&gt;&lt;P&gt;/* USB1 clock mux + divider */&lt;BR /&gt;PRINTF("USB1CLKSEL : 0x%08lX\r\n", SYSCON-&amp;gt;USB1CLKSEL);&lt;BR /&gt;PRINTF("USB1CLKDIV : 0x%08lX\r\n", SYSCON-&amp;gt;USB1CLKDIV);&lt;/P&gt;&lt;P&gt;/* Power gating snapshot */&lt;BR /&gt;PRINTF("PDRUNCFG : 0x%08lX\r\n", SYSCON-&amp;gt;PDRUNCFG);&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;/* SDK-level view */&lt;BR /&gt;PRINTF("USB1CLK freq: %lu\r\n", CLOCK_GetFreq(kCLOCK_UsbClk));&lt;/P&gt;&lt;P&gt;PRINTF("--- END USB CLOCK DIAGNOSTICS ---\r\n\r\n");&lt;/P&gt;&lt;P&gt;/* START USB HOST STACK */&lt;BR /&gt;usb_status_t usbStatus = USB_HostInit(CONTROLLER_ID, &amp;amp;g_HostHandle, USB_HostEvent);&lt;/P&gt;&lt;P&gt;if (usbStatus == kStatus_USB_Success)&lt;BR /&gt;{&lt;BR /&gt;PRINTF("USB HOST INIT OK\r\n");&lt;BR /&gt;}&lt;BR /&gt;else&lt;BR /&gt;{&lt;BR /&gt;PRINTF("USB HOST INIT FAILED: %d\r\n", (int)usbStatus);&lt;BR /&gt;}&lt;/P&gt;&lt;P&gt;System Booting...&lt;BR /&gt;USB PORTMODE = 0x00050000&lt;BR /&gt;USBHSH-&amp;gt;PORTSC1 = 0x00001000&lt;BR /&gt;USBHSH-&amp;gt;USBSTS = 0x00000000&lt;BR /&gt;USBHSH-&amp;gt;USBCMD = 0x00000501&lt;/P&gt;&lt;P&gt;--- USB CLOCK DIAGNOSTICS ---&lt;BR /&gt;USBPLLCTRL : 0x00001017&lt;BR /&gt;USBPLLSTAT : 0x00000001&lt;BR /&gt;USB1CLKSEL : 0x00000002&lt;BR /&gt;USB1CLKDIV : 0x00000005&lt;BR /&gt;PDRUNCFG : 0x40000610&lt;BR /&gt;USB1CLK freq: 0&lt;BR /&gt;--- END USB CLOCK DIAGNOSTICS ---&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;/P&gt;</description>
      <pubDate>Tue, 12 May 2026 07:53:07 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPC-Microcontrollers/USB-Host-mode-Host-init-error-3-LPC54605J256/m-p/2363851#M59558</guid>
      <dc:creator>SOOTY1</dc:creator>
      <dc:date>2026-05-12T07:53:07Z</dc:date>
    </item>
    <item>
      <title>Re: USB Host mode Host init error 3 LPC54605J256</title>
      <link>https://community.nxp.com/t5/LPC-Microcontrollers/USB-Host-mode-Host-init-error-3-LPC54605J256/m-p/2364289#M59559</link>
      <description>&lt;P&gt;I tried some more and it seems USB clock is failing to attach properly and run.&amp;nbsp; It is selected correctly in clock config with 48Mhz input, from USBPLL.&lt;BR /&gt;&lt;BR /&gt;&lt;/P&gt;&lt;P&gt;int main(void)&lt;BR /&gt;{&lt;BR /&gt;vPortDefineHeapRegions(xHeapRegions);&lt;/P&gt;&lt;P&gt;BOARD_InitBootPins();&lt;BR /&gt;BOARD_InitBootClocks();&lt;BR /&gt;BOARD_InitBootPeripherals();&lt;/P&gt;&lt;P&gt;SEGGER_RTT_Init();&lt;/P&gt;&lt;P&gt;PRINTF("System Booting...\r\n");&lt;BR /&gt;PRINTF("Core clock = %lu Hz\r\n", CLOCK_GetFreq(kCLOCK_CoreSysClk));&lt;/P&gt;&lt;P&gt;/* Power and Clock */&lt;BR /&gt;POWER_DisablePD(kPDRUNCFG_PD_USB1_PHY);&lt;BR /&gt;POWER_DisablePD(kPDRUNCFG_PD_VD2_ANA); // External crystal analog domain&lt;BR /&gt;POWER_DisablePD(kPDRUNCFG_PD_VD3); // USB PLL domain&lt;BR /&gt;POWER_DisablePD(kPDRUNCFG_PD_VD5); // USB PHY domain&lt;BR /&gt;SDK_DelayAtLeastUs(1500, SystemCoreClock);&lt;BR /&gt;CLOCK_EnableClock(kCLOCK_Usbh1);&lt;BR /&gt;CLOCK_EnableUsbhs0HostClock(kCLOCK_UsbSrcUsbPll, 48000000U);&amp;nbsp; [I don't know should it be 48M or 480M here neither work anyway]&lt;/P&gt;&lt;P&gt;PRINTF("USB PLL freq = %lu Hz\r\n", CLOCK_GetFreq(kCLOCK_UsbPll));&lt;BR /&gt;PRINTF("USB1CLK freq = %lu Hz\r\n", CLOCK_GetFreq(kCLOCK_UsbClk));&lt;BR /&gt;/* Force Host mode - bit 16 */&lt;BR /&gt;USBHSH-&amp;gt;PORTMODE &amp;amp;= ~(1UL &amp;lt;&amp;lt; 16);&lt;BR /&gt;USBHSH-&amp;gt;PORTMODE |= (1UL &amp;lt;&amp;lt; 16);&lt;/P&gt;&lt;P&gt;PRINTF("USB PORTMODE = 0x%08lX\r\n", USBHSH-&amp;gt;PORTMODE);&lt;BR /&gt;PRINTF("USBHSH-&amp;gt;PORTSC1 = 0x%08lX\r\n", USBHSH-&amp;gt;PORTSC1);&lt;BR /&gt;PRINTF("USBHSH-&amp;gt;USBSTS = 0x%08lX\r\n", USBHSH-&amp;gt;USBSTS);&lt;BR /&gt;PRINTF("USBHSH-&amp;gt;USBCMD = 0x%08lX\r\n", USBHSH-&amp;gt;USBCMD);&lt;BR /&gt;PRINTF("\r\n--- USB CLOCK DIAGNOSTICS ---\r\n");&lt;/P&gt;&lt;P&gt;/* USB PLL state */&lt;BR /&gt;PRINTF("USBPLLCTRL : 0x%08lX\r\n", SYSCON-&amp;gt;USBPLLCTRL);&lt;BR /&gt;PRINTF("USBPLLSTAT : 0x%08lX\r\n", SYSCON-&amp;gt;USBPLLSTAT);&lt;/P&gt;&lt;P&gt;/* USB1 clock mux + divider */&lt;BR /&gt;PRINTF("USB1CLKSEL : 0x%08lX\r\n", SYSCON-&amp;gt;USB1CLKSEL);&lt;BR /&gt;PRINTF("USB1CLKDIV : 0x%08lX\r\n", SYSCON-&amp;gt;USB1CLKDIV);&lt;/P&gt;&lt;P&gt;/* Power gating snapshot */&lt;BR /&gt;PRINTF("PDRUNCFG : 0x%08lX\r\n", SYSCON-&amp;gt;PDRUNCFG);&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;/* Optional SDK-level view (if available) */&lt;BR /&gt;// PRINTF("USB1CLK freq: %lu\r\n", CLOCK_GetFreq(kCLOCK_UsbPll));&lt;/P&gt;&lt;P&gt;PRINTF("--- END USB CLOCK DIAGNOSTICS ---\r\n\r\n");&lt;/P&gt;&lt;P&gt;/* Init stack */&lt;BR /&gt;usb_status_t status = USB_HostInit(CONTROLLER_ID, &amp;amp;g_HostHandle, USB_HostEvent);&lt;BR /&gt;if (status != kStatus_USB_Success) {&lt;BR /&gt;PRINTF("USB_HostInit failed with status %d)\r\n", status);&lt;BR /&gt;}&lt;BR /&gt;&lt;BR /&gt;gives -&amp;nbsp;&lt;/P&gt;&lt;P&gt;Process: JLinkGDBServerCLExe&lt;BR /&gt;System Booting...&lt;BR /&gt;Core clock = 180000000 Hz&lt;BR /&gt;USB PLL freq = 0 Hz&lt;BR /&gt;USB1CLK freq = 0 Hz&lt;BR /&gt;USB PORTMODE = 0x00050000&lt;BR /&gt;USBHSH-&amp;gt;PORTSC1 = 0x00001000&lt;BR /&gt;USBHSH-&amp;gt;USBSTS = 0x00000000&lt;BR /&gt;USBHSH-&amp;gt;USBCMD = 0x00000501&lt;/P&gt;&lt;P&gt;--- USB CLOCK DIAGNOSTICS ---&lt;BR /&gt;USBPLLCTRL : 0x00000D3F&lt;BR /&gt;USBPLLSTAT : 0x00000001&lt;BR /&gt;USB1CLKSEL : 0x00000002&lt;BR /&gt;USB1CLKDIV : 0x00000000&lt;BR /&gt;PDRUNCFG : 0x40000610&lt;BR /&gt;--- END USB CLOCK DIAGNOSTICS ---&lt;/P&gt;&lt;P&gt;USB_HostInit failed with status 3)&lt;BR /&gt;&lt;BR /&gt;Is it something in the powerup sequence is incorrect?&amp;nbsp; I really don't know now.&lt;BR /&gt;I have tried so long on this.&amp;nbsp; I think the incorrect driver/not found is also a separate thing.&lt;BR /&gt;I have even less of an idea with that - I have it registered in the .map, enabled in the host_config, included in the build, present in the workspace . .&lt;/P&gt;</description>
      <pubDate>Tue, 12 May 2026 16:41:15 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPC-Microcontrollers/USB-Host-mode-Host-init-error-3-LPC54605J256/m-p/2364289#M59559</guid>
      <dc:creator>SOOTY1</dc:creator>
      <dc:date>2026-05-12T16:41:15Z</dc:date>
    </item>
    <item>
      <title>Re: USB Host mode Host init error 3 LPC54605J256</title>
      <link>https://community.nxp.com/t5/LPC-Microcontrollers/USB-Host-mode-Host-init-error-3-LPC54605J256/m-p/2365115#M59564</link>
      <description>&lt;P&gt;&lt;a href="https://community.nxp.com/t5/user/viewprofilepage/user-id/241501"&gt;@carlos_o&lt;/a&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I'm still having the problems with the SDK (see thread for more details)&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;I have today changed SDK to 25.06.00 and updated the Config Tools to 26.03 also&lt;BR /&gt;&lt;BR /&gt;I still get the USB Host init fail error code 3.&amp;nbsp; PLL is not starting, even though it seems configured by the book in the config tools clock tree.&amp;nbsp;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;Any insight is very welcome.&lt;BR /&gt;thanks,&lt;/P&gt;</description>
      <pubDate>Wed, 13 May 2026 22:27:44 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPC-Microcontrollers/USB-Host-mode-Host-init-error-3-LPC54605J256/m-p/2365115#M59564</guid>
      <dc:creator>SOOTY1</dc:creator>
      <dc:date>2026-05-13T22:27:44Z</dc:date>
    </item>
    <item>
      <title>Re: USB Host mode Host init error 3 LPC54605J256</title>
      <link>https://community.nxp.com/t5/LPC-Microcontrollers/USB-Host-mode-Host-init-error-3-LPC54605J256/m-p/2365117#M59565</link>
      <description>&lt;P&gt;Hi&amp;nbsp;&lt;a href="https://community.nxp.com/t5/user/viewprofilepage/user-id/262626"&gt;@SOOTY1&lt;/a&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Apologize the late reply and thank you for the detailed testing you have done.&lt;/P&gt;
&lt;P&gt;Could you please remove the call to&lt;/P&gt;
&lt;P&gt;CLOCK_EnableClock(kCLOCK_Usbh1);&lt;/P&gt;
&lt;DIV&gt;before calling&lt;/DIV&gt;
&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV&gt;&lt;SPAN&gt;CLOCK_EnableUsbhs0HostClock(kCLOCK_UsbSrcUsbPll, 48000000U);&lt;/SPAN&gt;&lt;/DIV&gt;
&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV&gt;&lt;SPAN&gt;The reason is that the clock enable is already handled inside CLOCK_EnableUsbhs0HostClock(). Additionally, some peripherals must be disabled before changing their configuration, and enabling the clock beforehand may prevent proper reconfiguration.&lt;BR /&gt;&lt;/SPAN&gt;&lt;/DIV&gt;
&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV&gt;Let me know your results.&amp;nbsp;&lt;/DIV&gt;</description>
      <pubDate>Wed, 13 May 2026 22:52:46 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPC-Microcontrollers/USB-Host-mode-Host-init-error-3-LPC54605J256/m-p/2365117#M59565</guid>
      <dc:creator>carlos_o</dc:creator>
      <dc:date>2026-05-13T22:52:46Z</dc:date>
    </item>
    <item>
      <title>Re: USB Host mode Host init error 3 LPC54605J256</title>
      <link>https://community.nxp.com/t5/LPC-Microcontrollers/USB-Host-mode-Host-init-error-3-LPC54605J256/m-p/2365124#M59566</link>
      <description>&lt;P&gt;&lt;a href="https://community.nxp.com/t5/user/viewprofilepage/user-id/241501"&gt;@carlos_o&lt;/a&gt;&amp;nbsp;hi, no worries, thanks for getting back to me!&lt;BR /&gt;&lt;BR /&gt;Ok I removed the clock call as suggested.&amp;nbsp; &amp;nbsp;It is still failing though.&lt;BR /&gt;What's strange is that it reports the USB1CLKDIV as 0x0 every time. (its div by 6 derived from 288Mhz USBPLL) but maybe that's because its not running PLL yet?&amp;nbsp; Even without any of this power up sequence it wasn't starting up PLL.&amp;nbsp; I do have a 12Mz xtal on the board.&amp;nbsp;&lt;BR /&gt;&lt;BR /&gt;I also tried to change the settings away from USBPLL, to MAINCLKSELA - with 96Mhz divided down to feed USB1CLK, but although I could see Core clock Freq. change to 96Mhz, USBCLKDIV remained 0x0 (selected was /2) and USBCLKSEL&amp;nbsp;0x00000002. (should have changed value to reflect MAINCLKSELA)&lt;BR /&gt;I don't know what to make of that.&lt;BR /&gt;&lt;BR /&gt;&lt;/P&gt;&lt;P&gt;System Booting...&lt;BR /&gt;Core clock = 180000000 Hz&lt;BR /&gt;After BOARD_InitBootClocks:&lt;BR /&gt;USB PLL freq = 0 Hz&lt;BR /&gt;Clock enable returned: 1&lt;BR /&gt;USB PLL freq = 0 Hz&lt;BR /&gt;USB1CLK freq = 0 Hz&lt;BR /&gt;USB PORTMODE = 0x00050000&lt;BR /&gt;USBHSH-&amp;gt;PORTSC1 = 0x00001000&lt;BR /&gt;USBHSH-&amp;gt;USBSTS = 0x00000000&lt;BR /&gt;USBHSH-&amp;gt;USBCMD = 0x00000501&lt;/P&gt;&lt;P&gt;--- USB CLOCK DIAGNOSTICS ---&lt;BR /&gt;USBPLLCTRL : 0x00000D3F&lt;BR /&gt;USBPLLSTAT : 0x00000001&lt;BR /&gt;USB1CLKSEL : 0x00000002&lt;BR /&gt;USB1CLKDIV : 0x00000000&lt;BR /&gt;PDRUNCFG : 0x40000610&lt;BR /&gt;--- END USB CLOCK DIAGNOSTICS ---&lt;/P&gt;&lt;P&gt;USB_HostInit failed with status 3&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;&lt;BR /&gt;current main is&amp;nbsp;&lt;/P&gt;&lt;P&gt;int main(void)&lt;BR /&gt;{&lt;BR /&gt;vPortDefineHeapRegions(xHeapRegions);&lt;/P&gt;&lt;P&gt;BOARD_InitBootPins();&lt;BR /&gt;BOARD_InitBootClocks();&lt;BR /&gt;BOARD_InitBootPeripherals();&lt;/P&gt;&lt;P&gt;SEGGER_RTT_Init();&lt;/P&gt;&lt;P&gt;PRINTF("System Booting...\r\n");&lt;BR /&gt;PRINTF("Core clock = %lu Hz\r\n", CLOCK_GetFreq(kCLOCK_CoreSysClk));&lt;BR /&gt;PRINTF("After BOARD_InitBootClocks:\n");&lt;BR /&gt;PRINTF("USB PLL freq = %lu Hz\r\n", CLOCK_GetFreq(kCLOCK_UsbPll));&lt;/P&gt;&lt;P&gt;/* === Recommended Power-up Order === */&lt;BR /&gt;POWER_DisablePD(kPDRUNCFG_PD_VD2_ANA); // Crystal analog domain - FIRST&lt;BR /&gt;POWER_DisablePD(kPDRUNCFG_PD_SYS_OSC);&lt;BR /&gt;POWER_DisablePD(kPDRUNCFG_PD_VD3); // PLL domain&lt;BR /&gt;POWER_DisablePD(kPDRUNCFG_PD_VD5); // PHY domain&lt;BR /&gt;POWER_DisablePD(kPDRUNCFG_PD_USB_PLL);&lt;BR /&gt;POWER_DisablePD(kPDRUNCFG_PD_USB1_PHY);&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;SDK_DelayAtLeastUs(15000, SystemCoreClock); // 15ms — give crystal time to stabilize&lt;/P&gt;&lt;P&gt;/* Force crystal oscillator */&lt;BR /&gt;SYSCON-&amp;gt;SYSOSCCTRL = 0x00000000;&lt;/P&gt;&lt;P&gt;// CLOCK_EnableClock(kCLOCK_Usbh1);&lt;/P&gt;&lt;P&gt;status_t clkStatus = CLOCK_EnableUsbhs0HostClock(kCLOCK_UsbSrcUsbPll, 48000000U);&lt;BR /&gt;PRINTF("Clock enable returned: %d\r\n", clkStatus);&lt;/P&gt;&lt;P&gt;PRINTF("USB PLL freq = %lu Hz\r\n", CLOCK_GetFreq(kCLOCK_UsbPll));&lt;BR /&gt;PRINTF("USB1CLK freq = %lu Hz\r\n", CLOCK_GetFreq(kCLOCK_UsbClk));&lt;/P&gt;&lt;P&gt;/* Force Host mode - bit 16 */&lt;BR /&gt;USBHSH-&amp;gt;PORTMODE &amp;amp;= ~(1UL &amp;lt;&amp;lt; 16);&lt;BR /&gt;USBHSH-&amp;gt;PORTMODE |= (1UL &amp;lt;&amp;lt; 16);&lt;/P&gt;&lt;P&gt;PRINTF("USB PORTMODE = 0x%08lX\r\n", USBHSH-&amp;gt;PORTMODE);&lt;BR /&gt;PRINTF("USBHSH-&amp;gt;PORTSC1 = 0x%08lX\r\n", USBHSH-&amp;gt;PORTSC1);&lt;BR /&gt;PRINTF("USBHSH-&amp;gt;USBSTS = 0x%08lX\r\n", USBHSH-&amp;gt;USBSTS);&lt;BR /&gt;PRINTF("USBHSH-&amp;gt;USBCMD = 0x%08lX\r\n", USBHSH-&amp;gt;USBCMD);&lt;BR /&gt;PRINTF("\r\n--- USB CLOCK DIAGNOSTICS ---\r\n");&lt;/P&gt;&lt;P&gt;/* USB PLL state */&lt;BR /&gt;PRINTF("USBPLLCTRL : 0x%08lX\r\n", SYSCON-&amp;gt;USBPLLCTRL);&lt;BR /&gt;PRINTF("USBPLLSTAT : 0x%08lX\r\n", SYSCON-&amp;gt;USBPLLSTAT);&lt;/P&gt;&lt;P&gt;/* USB1 clock mux + divider */&lt;BR /&gt;PRINTF("USB1CLKSEL : 0x%08lX\r\n", SYSCON-&amp;gt;USB1CLKSEL);&lt;BR /&gt;PRINTF("USB1CLKDIV : 0x%08lX\r\n", SYSCON-&amp;gt;USB1CLKDIV);&lt;/P&gt;&lt;P&gt;/* Power gating snapshot */&lt;BR /&gt;PRINTF("PDRUNCFG : 0x%08lX\r\n", SYSCON-&amp;gt;PDRUNCFG);&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;/* Optional SDK-level view (if available) */&lt;BR /&gt;// PRINTF("USB1CLK freq: %lu\r\n", CLOCK_GetFreq(kCLOCK_UsbPll));&lt;/P&gt;&lt;P&gt;PRINTF("--- END USB CLOCK DIAGNOSTICS ---\r\n\r\n");&lt;/P&gt;&lt;P&gt;/* Init stack */&lt;BR /&gt;usb_status_t status = USB_HostInit(CONTROLLER_ID, &amp;amp;g_HostHandle, USB_HostEvent);&lt;BR /&gt;if (status != kStatus_USB_Success) {&lt;BR /&gt;PRINTF("USB_HostInit failed with status %d\r\n", status);&lt;BR /&gt;}&lt;/P&gt;</description>
      <pubDate>Thu, 14 May 2026 00:16:59 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPC-Microcontrollers/USB-Host-mode-Host-init-error-3-LPC54605J256/m-p/2365124#M59566</guid>
      <dc:creator>SOOTY1</dc:creator>
      <dc:date>2026-05-14T00:16:59Z</dc:date>
    </item>
    <item>
      <title>Re: USB Host mode Host init error 3 LPC54605J256</title>
      <link>https://community.nxp.com/t5/LPC-Microcontrollers/USB-Host-mode-Host-init-error-3-LPC54605J256/m-p/2365501#M59567</link>
      <description>&lt;P&gt;&lt;a href="https://community.nxp.com/t5/user/viewprofilepage/user-id/241501"&gt;@carlos_o&lt;/a&gt;&amp;nbsp; hi, just to show the register value is not changing even after setting with config tools and visible in clockconfig.c generated file -&lt;BR /&gt;&lt;BR /&gt;System Booting...&lt;BR /&gt;Core clock = 96000000 Hz&lt;BR /&gt;After BOARD_InitBootClocks:&lt;BR /&gt;USB PLL freq = 0 Hz&lt;BR /&gt;Clock enable returned: 1&lt;BR /&gt;USB PLL freq = 0 Hz&lt;BR /&gt;USB1CLK freq = 0 Hz&lt;BR /&gt;USB PORTMODE = 0x00050000&lt;BR /&gt;USBHSH-&amp;gt;PORTSC1 = 0x00001000&lt;BR /&gt;USBHSH-&amp;gt;USBSTS = 0x00000000&lt;BR /&gt;USBHSH-&amp;gt;USBCMD = 0x00000501&lt;/P&gt;&lt;P&gt;--- USB CLOCK DIAGNOSTICS ---&lt;BR /&gt;USBPLLCTRL : 0x00000D3F&lt;BR /&gt;USBPLLSTAT : 0x00000001&lt;BR /&gt;USB1CLKSEL : 0x00000002&lt;BR /&gt;USB1CLKDIV : 0x00000000&lt;BR /&gt;PDRUNCFG : 0x40000610&lt;BR /&gt;--- END USB CLOCK DIAGNOSTICS ---&lt;/P&gt;&lt;P&gt;USB_HostInit failed with status 3&lt;BR /&gt;&lt;BR /&gt;look we can see that, even though the clockconfig.c states USB1CLK is set to MAINCLKSELA -&lt;/P&gt;&lt;P&gt;it is not actually changing the register value -&amp;nbsp;&lt;/P&gt;&lt;P&gt;void BOARD_BootClockRUN(void)&lt;BR /&gt;{&lt;BR /&gt;/*!&amp;lt; Set up the clock sources */&lt;BR /&gt;/*!&amp;lt; Set up FRO */&lt;BR /&gt;POWER_DisablePD(kPDRUNCFG_PD_FRO_EN); /*!&amp;lt; Ensure FRO is on */&lt;BR /&gt;CLOCK_AttachClk(kFRO12M_to_MAIN_CLK); /*!&amp;lt; Switch to FRO 12MHz first to ensure we can change voltage without accidentally&lt;BR /&gt;being below the voltage for current speed */&lt;BR /&gt;POWER_DisablePD(kPDRUNCFG_PD_SYS_OSC); /*!&amp;lt; Enable System Oscillator Power */&lt;BR /&gt;SYSCON-&amp;gt;SYSOSCCTRL = ((SYSCON-&amp;gt;SYSOSCCTRL &amp;amp; ~SYSCON_SYSOSCCTRL_FREQRANGE_MASK) | SYSCON_SYSOSCCTRL_FREQRANGE(1U)); /*!&amp;lt; Set system oscillator range */&lt;BR /&gt;/*!&amp;lt; Need to make sure ROM and OTP has power(PDRUNCFG0[17,29]= 0U)&lt;BR /&gt;before calling this API since this API is implemented in ROM code */&lt;BR /&gt;CLOCK_SetupFROClocking(12000000U); /*!&amp;lt; Set up FRO to the 12 MHz, just for sure */&lt;BR /&gt;POWER_SetVoltageForFreq(96000000U); /*!&amp;lt; Set voltage for the one of the fastest clock outputs: System clock output */&lt;BR /&gt;CLOCK_SetFLASHAccessCyclesForFreq(96000000U); /*!&amp;lt; Set FLASH wait states for core */&lt;/P&gt;&lt;P&gt;/*!&amp;lt; Set up SYS PLL */&lt;BR /&gt;const pll_setup_t pllSetup = {&lt;BR /&gt;.pllctrl = SYSCON_SYSPLLCTRL_SELI(16U) | SYSCON_SYSPLLCTRL_SELP(8U) | SYSCON_SYSPLLCTRL_SELR(0U),&lt;BR /&gt;.pllmdec = (SYSCON_SYSPLLMDEC_MDEC(8191U)),&lt;BR /&gt;.pllndec = (SYSCON_SYSPLLNDEC_NDEC(770U)),&lt;BR /&gt;.pllpdec = (SYSCON_SYSPLLPDEC_PDEC(98U)),&lt;BR /&gt;.pllRate = 180000000U,&lt;BR /&gt;.flags = PLL_SETUPFLAG_WAITLOCK | PLL_SETUPFLAG_POWERUP&lt;BR /&gt;};&lt;BR /&gt;CLOCK_AttachClk(kEXT_CLK_to_SYS_PLL); /*!&amp;lt; Set sys pll clock source*/&lt;BR /&gt;CLOCK_SetPLLFreq(&amp;amp;pllSetup); /*!&amp;lt; Configure PLL to the desired value */&lt;BR /&gt;/*!&amp;lt; Set up AUDIO PLL */&lt;BR /&gt;const pll_setup_t audio_pllSetup = {&lt;BR /&gt;.pllctrl = SYSCON_AUDPLLCTRL_SELI(59U) | SYSCON_AUDPLLCTRL_SELP(31U) | SYSCON_AUDPLLCTRL_SELR(0U),&lt;BR /&gt;.pllmdec = (SYSCON_AUDPLLMDEC_MDEC(30583U)),&lt;BR /&gt;.pllndec = (SYSCON_AUDPLLNDEC_NDEC(1U)),&lt;BR /&gt;.pllpdec = (SYSCON_AUDPLLPDEC_PDEC(5U)),&lt;BR /&gt;.pllRate = 48000000U,&lt;BR /&gt;.flags = PLL_SETUPFLAG_WAITLOCK | PLL_SETUPFLAG_POWERUP&lt;BR /&gt;};&lt;BR /&gt;CLOCK_AttachClk(kEXT_CLK_to_AUDIO_PLL); /*!&amp;lt; Set audio pll clock source*/&lt;BR /&gt;CLOCK_SetAudioPLLFreq(&amp;amp;audio_pllSetup); /*!&amp;lt; Configure PLL to the desired value */&lt;/P&gt;&lt;P&gt;/*!&amp;lt; Set up USB PLL */&lt;BR /&gt;const usb_pll_setup_t usb_pllSetup = {&lt;BR /&gt;.msel = 95U,&lt;BR /&gt;.nsel = 3U,&lt;BR /&gt;.psel = 0U,&lt;BR /&gt;.direct = true,&lt;BR /&gt;.bypass = false,&lt;BR /&gt;.fbsel = false,&lt;BR /&gt;.inputRate = 12000000U,&lt;BR /&gt;};&lt;BR /&gt;CLOCK_SetUsbPLLFreq(&amp;amp;usb_pllSetup); /*!&amp;lt; Configure PLL to the desired value */&lt;/P&gt;&lt;P&gt;/*!&amp;lt; Need to make sure ROM and OTP has power(PDRUNCFG0[17,29]= 0U)&lt;BR /&gt;before calling this API since this API is implemented in ROM code */&lt;BR /&gt;CLOCK_SetupFROClocking(96000000U); /*!&amp;lt; Set up high frequency FRO output to selected frequency */&lt;/P&gt;&lt;P&gt;/*!&amp;lt; Set up dividers */&lt;BR /&gt;CLOCK_SetClkDiv(kCLOCK_DivAhbClk, 1U, false); /*!&amp;lt; Reset divider counter and set divider to value 1 */&lt;BR /&gt;CLOCK_SetClkDiv(kCLOCK_DivUsb0Clk, 0U, true); /*!&amp;lt; Reset USB0CLKDIV divider counter and halt it */&lt;BR /&gt;CLOCK_SetClkDiv(kCLOCK_DivUsb0Clk, 6U, false); /*!&amp;lt; Set USB0CLKDIV divider to value 6 */&lt;BR /&gt;CLOCK_SetClkDiv(kCLOCK_DivUsb1Clk, 0U, true); /*!&amp;lt; Reset USB1CLKDIV divider counter and halt it */&lt;BR /&gt;CLOCK_SetClkDiv(kCLOCK_DivUsb1Clk, 2U, false); /*!&amp;lt; Set USB1CLKDIV divider to value 2 */&lt;BR /&gt;CLOCK_SetClkDiv(kCLOCK_DivSctClk, 0U, true); /*!&amp;lt; Reset SCTCLKDIV divider counter and halt it */&lt;BR /&gt;CLOCK_SetClkDiv(kCLOCK_DivSctClk, 48U, false); /*!&amp;lt; Set SCTCLKDIV divider to value 48 */&lt;/P&gt;&lt;P&gt;/*!&amp;lt; Set up clock selectors - Attach clocks to the peripheries */&lt;BR /&gt;CLOCK_AttachClk(kFRO_HF_to_MAIN_CLK); /*!&amp;lt; Switch MAIN_CLK to FRO_HF */&lt;BR /&gt;SYSCON-&amp;gt;ASYNCAPBCTRL = SYSCON_ASYNCAPBCTRL_ENABLE_MASK; /*!&amp;lt; Enable ASYNC APB subsystem */&lt;BR /&gt;CLOCK_AttachClk(kMAIN_CLK_to_ASYNC_APB); /*!&amp;lt; Switch ASYNC_APB to MAIN_CLK */&lt;BR /&gt;CLOCK_AttachClk(kUSB_PLL_to_USB0_CLK); /*!&amp;lt; Switch USB0_CLK to USB_PLL */&lt;BR /&gt;CLOCK_AttachClk(kFRO_HF_to_USB1_CLK); /*!&amp;lt; Switch USB1_CLK to MAIN_CLK */&lt;BR /&gt;CLOCK_AttachClk(kAUDIO_PLL_to_FLEXCOMM2); /*!&amp;lt; Switch FLEXCOMM2 to AUDIO_PLL */&lt;BR /&gt;CLOCK_AttachClk(kAUDIO_PLL_to_FLEXCOMM3); /*!&amp;lt; Switch FLEXCOMM3 to AUDIO_PLL */&lt;BR /&gt;CLOCK_AttachClk(kAUDIO_PLL_to_FLEXCOMM5); /*!&amp;lt; Switch FLEXCOMM5 to AUDIO_PLL */&lt;BR /&gt;CLOCK_AttachClk(kAUDIO_PLL_to_FLEXCOMM7); /*!&amp;lt; Switch FLEXCOMM7 to AUDIO_PLL */&lt;BR /&gt;CLOCK_AttachClk(kAUDIO_PLL_to_SCT_CLK); /*!&amp;lt; Switch SCT_CLK to AUDIO_PLL */&lt;BR /&gt;/*!&amp;lt; Set SystemCoreClock variable. */&lt;BR /&gt;SystemCoreClock = BOARD_BOOTCLOCKRUN_CORE_CLOCK;&lt;BR /&gt;}&lt;BR /&gt;&lt;BR /&gt;(from main shown here)&lt;BR /&gt;int main(void)&lt;BR /&gt;{&lt;BR /&gt;vPortDefineHeapRegions(xHeapRegions);&lt;BR /&gt;&lt;BR /&gt;BOARD_InitBootPins();&lt;BR /&gt;BOARD_InitBootClocks();&lt;BR /&gt;BOARD_InitBootPeripherals();&lt;BR /&gt;&lt;BR /&gt;SEGGER_RTT_Init();&lt;BR /&gt;&lt;BR /&gt;PRINTF("System Booting...\r\n");&lt;BR /&gt;PRINTF("Core clock = %lu Hz\r\n", CLOCK_GetFreq(kCLOCK_CoreSysClk));&lt;BR /&gt;PRINTF("After BOARD_InitBootClocks:\n");&lt;BR /&gt;PRINTF("USB PLL freq = %lu Hz\r\n", CLOCK_GetFreq(kCLOCK_UsbPll));&lt;BR /&gt;&lt;BR /&gt;/* === Recommended Power-up Order === */&lt;BR /&gt;POWER_DisablePD(kPDRUNCFG_PD_VD2_ANA); // Crystal analog domain - FIRST&lt;BR /&gt;POWER_DisablePD(kPDRUNCFG_PD_VD3); // PLL domain&lt;BR /&gt;POWER_DisablePD(kPDRUNCFG_PD_VD5); // PHY domain&lt;BR /&gt;POWER_DisablePD(kPDRUNCFG_PD_USB_PLL);&lt;BR /&gt;POWER_DisablePD(kPDRUNCFG_PD_USB1_PHY);&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;SDK_DelayAtLeastUs(15000, SystemCoreClock); // 15ms — give crystal time to stabilize&lt;BR /&gt;&lt;BR /&gt;/* Force crystal oscillator */&lt;BR /&gt;SYSCON-&amp;gt;SYSOSCCTRL = 0x00000000;&lt;BR /&gt;&lt;BR /&gt;// CLOCK_EnableClock(kCLOCK_Usbh1);&lt;BR /&gt;&lt;BR /&gt;status_t clkStatus = CLOCK_EnableUsbhs0HostClock(kCLOCK_UsbSrcUsbPll, 48000000U);&lt;BR /&gt;PRINTF("Clock enable returned: %d\r\n", clkStatus);&lt;BR /&gt;&lt;BR /&gt;PRINTF("USB PLL freq = %lu Hz\r\n", CLOCK_GetFreq(kCLOCK_UsbPll));&lt;BR /&gt;PRINTF("USB1CLK freq = %lu Hz\r\n", CLOCK_GetFreq(kCLOCK_UsbClk));&lt;BR /&gt;&lt;BR /&gt;/* Force Host mode - bit 16 */&lt;BR /&gt;USBHSH-&amp;gt;PORTMODE &amp;amp;= ~(1UL &amp;lt;&amp;lt; 16);&lt;BR /&gt;USBHSH-&amp;gt;PORTMODE |= (1UL &amp;lt;&amp;lt; 16);&lt;BR /&gt;&lt;BR /&gt;PRINTF("USB PORTMODE = 0x%08lX\r\n", USBHSH-&amp;gt;PORTMODE);&lt;BR /&gt;PRINTF("USBHSH-&amp;gt;PORTSC1 = 0x%08lX\r\n", USBHSH-&amp;gt;PORTSC1);&lt;BR /&gt;PRINTF("USBHSH-&amp;gt;USBSTS = 0x%08lX\r\n", USBHSH-&amp;gt;USBSTS);&lt;BR /&gt;PRINTF("USBHSH-&amp;gt;USBCMD = 0x%08lX\r\n", USBHSH-&amp;gt;USBCMD);&lt;BR /&gt;PRINTF("\r\n--- USB CLOCK DIAGNOSTICS ---\r\n");&lt;BR /&gt;&lt;BR /&gt;/* USB PLL state */&lt;BR /&gt;PRINTF("USBPLLCTRL : 0x%08lX\r\n", SYSCON-&amp;gt;USBPLLCTRL);&lt;BR /&gt;PRINTF("USBPLLSTAT : 0x%08lX\r\n", SYSCON-&amp;gt;USBPLLSTAT);&lt;BR /&gt;&lt;BR /&gt;/* USB1 clock mux + divider */&lt;BR /&gt;PRINTF("USB1CLKSEL : 0x%08lX\r\n", SYSCON-&amp;gt;USB1CLKSEL);&lt;BR /&gt;PRINTF("USB1CLKDIV : 0x%08lX\r\n", SYSCON-&amp;gt;USB1CLKDIV);&lt;BR /&gt;&lt;BR /&gt;/* Power gating snapshot */&lt;BR /&gt;PRINTF("PDRUNCFG : 0x%08lX\r\n", SYSCON-&amp;gt;PDRUNCFG);&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;/* Optional SDK-level view (if available) */&lt;BR /&gt;// PRINTF("USB1CLK freq: %lu\r\n", CLOCK_GetFreq(kCLOCK_UsbPll));&lt;BR /&gt;&lt;BR /&gt;PRINTF("--- END USB CLOCK DIAGNOSTICS ---\r\n\r\n");&lt;BR /&gt;&lt;BR /&gt;/* Init stack */&lt;BR /&gt;usb_status_t status = USB_HostInit(CONTROLLER_ID, &amp;amp;g_HostHandle, USB_HostEvent);&lt;BR /&gt;if (status != kStatus_USB_Success) {&lt;BR /&gt;PRINTF("USB_HostInit failed with status %d\r\n", status);&lt;BR /&gt;}&lt;BR /&gt;&lt;BR /&gt;&lt;/P&gt;</description>
      <pubDate>Thu, 14 May 2026 11:11:59 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPC-Microcontrollers/USB-Host-mode-Host-init-error-3-LPC54605J256/m-p/2365501#M59567</guid>
      <dc:creator>SOOTY1</dc:creator>
      <dc:date>2026-05-14T11:11:59Z</dc:date>
    </item>
  </channel>
</rss>

