<?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>Sample WiFi scan, 7002DK to custom hardware</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/124751/sample-wifi-scan-7002dk-to-custom-hardware</link><description>Hello all ! I&amp;#39;m currently trying to make a scan with our custom board, I&amp;#39;ve made a custom board with our GPIO and the use of the SPI4 instead of QSPI for the 7002 -&amp;gt; 5340 communication, we also use the CDC ACM USB to use direct USB connection for debug</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Mon, 06 Oct 2025 12:53:03 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/124751/sample-wifi-scan-7002dk-to-custom-hardware" /><item><title>RE: Sample WiFi scan, 7002DK to custom hardware</title><link>https://devzone.nordicsemi.com/thread/550709?ContentTypeID=1</link><pubDate>Mon, 06 Oct 2025 12:53:03 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:8f60e565-67e7-476f-9053-a9edad908ce3</guid><dc:creator>ValentinKunti</dc:creator><description>&lt;p&gt;Hi thank you for your response, I&amp;#39;ve actually managed to make a scan with my custom board, I did change the SDK to include the supply / Vbat power on, and now the device is enabling and initialising correctly !&amp;nbsp;&lt;br /&gt;&lt;br /&gt;The change is on 2 files of the SDK wifi, on the&amp;nbsp;&amp;nbsp;C:\ncs\v3.1.1\zephyr\dts\bindings\wifi\nordic,nrf70.yaml file, I add the supply-gpios option to activate or not an external regulator for the supply as we have on our hardware adding this :&amp;nbsp;&lt;br /&gt;&lt;br /&gt;&lt;pre class="ui-code" data-mode="xml"&gt;supply-gpios:
  type: phandle-array
  description: |
    Optional GPIO of the SoC controlling an external power supply
    (e.g., 3.3V regulator) that must be enabled before BUCKEN.
    This is for custom boards with an additional power stage.
    If specified, this GPIO will be enabled first, before bucken-gpios.&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;Then I added the supply in the power sequence here &amp;quot;C:\ncs\v3.1.1\zephyr\modules\nrf_wifi\bus\rpu_hw_if.c&amp;quot;, with the following addition :&amp;nbsp;&lt;br /&gt;&lt;br /&gt;&lt;pre class="ui-code" data-mode="c_cpp"&gt;
//GPIO Specification (lines 38-41)
#if DT_NODE_HAS_PROP(NRF7002_NODE, supply_gpios)
static const struct gpio_dt_spec supply_spec =
    GPIO_DT_SPEC_GET(NRF7002_NODE, supply_gpios);
#endif


/* GPIO Configuration (lines 177-232)
- Added supply GPIO configuration in `rpu_gpio_config()`
- Ensures supply GPIO is configured first
- Proper error handling with cleanup*/

// Power-On Sequencing (lines 254-307)
static int rpu_pwron(void)
{
    // Step 1: Enable external supply (if configured)
    #if DT_NODE_HAS_PROP(NRF7002_NODE, supply_gpios)
        gpio_pin_set_dt(&amp;amp;supply_spec, 1);
        k_msleep(10);  // Wait for VBAT stabilization
    #endif

    // Step 2: Enable BUCKEN
    gpio_pin_set_dt(&amp;amp;bucken_spec, 1);
    k_msleep(1);

    // Step 3: Enable IOVDD_CTRL
    gpio_pin_set_dt(&amp;amp;iovdd_ctrl_spec, 1);
    k_msleep(iovdd_power_up_delay_ms);
}

// Power-Off Sequencing (lines 309-334)
- Reverse order: IOVDD → BUCKEN → SUPPLY

/* GPIO Cleanup (lines 234-260)
- Added supply GPIO disconnection in `rpu_gpio_remove() */&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;With this modification we enable first our 3V3 regulator before enabling the other power GPIO and the initialisation is fine.&amp;nbsp;&lt;br /&gt;&lt;br /&gt;best regards, and thank you for your help on this issue !&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Sample WiFi scan, 7002DK to custom hardware</title><link>https://devzone.nordicsemi.com/thread/550690?ContentTypeID=1</link><pubDate>Mon, 06 Oct 2025 11:55:18 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:71eb53a2-2386-4c05-9108-0c98752a307a</guid><dc:creator>Elfving</dc:creator><description>&lt;p&gt;Another thing is that if you are uncertain about the connections you could test this with the &amp;quot;bustest&amp;quot;, which you can find in&amp;nbsp;zephyr/tests/boards/nrf/nrf70/bustest.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;What NCS version are you using btw?&lt;/p&gt;
&lt;p&gt;Regards,&lt;/p&gt;
&lt;p&gt;Elfving&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Sample WiFi scan, 7002DK to custom hardware</title><link>https://devzone.nordicsemi.com/thread/550551?ContentTypeID=1</link><pubDate>Fri, 03 Oct 2025 07:38:45 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:561d81f5-e32e-4492-a51d-cc6fdf5107a5</guid><dc:creator>ValentinKunti</dc:creator><description>&lt;p&gt;I&amp;#39;ve know adding the power supply management in my main.c code, to enable the power supply know I get the OTP error but one other problem is that I get a lot of error cause the nRF7002 init is starting before my power supply start (even if it&amp;#39;s the first thing I do in my main.c). So the driver does not handle the GPIO of the nRF7002 even if we had those in the .DTS board file ? Is there a way to start the WiFI init later ?&lt;br /&gt;&lt;br /&gt;&lt;span style="color:#666666;"&gt;[09:27:06.939]&lt;/span&gt; uart:~$ &lt;span style="color:#666666;"&gt;[09:27:08.126]&lt;/span&gt; [00:00:00.437,164] wifi_nrf_bus: SPIM spi@a000: freq = 8 MHz&lt;br /&gt;&lt;span style="color:#666666;"&gt;[09:27:08.126]&lt;/span&gt; uart:~$ [00:00:00.437,164] wifi_nrf_bus: SPIM spi@a000: latency = 0&lt;br /&gt;&lt;span style="color:#666666;"&gt;[09:27:08.126]&lt;/span&gt; uart:~$ [00:00:00.448,852] wifi_nrf_bus: RPU wakeup write ACK failed even after 10ms&lt;br /&gt;&lt;span style="color:#666666;"&gt;[09:27:08.126]&lt;/span&gt; uart:~$ [00:00:00.448,852] wifi_nrf_bus: Error: RDSR2 failed&lt;br /&gt;&lt;span style="color:#666666;"&gt;[09:27:08.126]&lt;/span&gt; uart:~$ [00:00:00.448,883] wifi_nrf: zep_shim_bus_qspi_dev_add: RPU enable failed with error -1&lt;br /&gt;&lt;span style="color:#666666;"&gt;[09:27:08.126]&lt;/span&gt; uart:~$ [00:00:00.448,974] wifi_nrf: nrf_wifi_bus_qspi_dev_add: nrf_wifi_osal_bus_qspi_dev_add failed&lt;br /&gt;&lt;span style="color:#666666;"&gt;[09:27:08.126]&lt;/span&gt; uart:~$ [00:00:00.449,035] wifi_nrf: nrf_wifi_bal_dev_add: Bus dev_add failed&lt;br /&gt;&lt;span style="color:#666666;"&gt;[09:27:08.126]&lt;/span&gt; uart:~$ [00:00:00.449,127] wifi_nrf: nrf_wifi_sys_hal_dev_add: nrf_wifi_bal_dev_add failed&lt;br /&gt;&lt;span style="color:#666666;"&gt;[09:27:08.126]&lt;/span&gt; uart:~$ [00:00:00.449,249] wifi_nrf: nrf_wifi_sys_fmac_dev_add: nrf_wifi_sys_hal_dev_add failed&lt;br /&gt;&lt;span style="color:#666666;"&gt;[09:27:08.126]&lt;/span&gt; uart:~$ uart:~$ [00:00:00.449,279] wifi_nrf: nrf_wifi_fmac_dev_add_zep: nrf_wifi_fmac_dev_add failed&lt;br /&gt;&lt;span style="color:#666666;"&gt;[09:27:08.126]&lt;/span&gt; uart:~$ [00:00:00.449,310] wifi_nrf: nrf_wifi_if_start_zep: nrf_wifi_fmac_dev_add_zep failed&lt;br /&gt;&lt;span style="color:#666666;"&gt;[09:27:08.126]&lt;/span&gt; uart:~$ [00:00:00.449,401] scan: === Starting WiFi Power Sequencing ===&lt;br /&gt;&lt;span style="color:#666666;"&gt;[09:27:08.126]&lt;/span&gt; uart:~$ [00:00:00.449,432] scan: Step 1: 3V3_ENABLE (P1.12) ON - VBAT supplied&lt;br /&gt;&lt;span style="color:#666666;"&gt;[09:27:08.126]&lt;/span&gt; uart:~$ [00:00:00.459,533] scan: Step 2: BUCKEN (P0.12) ON - Buck converter enabled&lt;br /&gt;&lt;span style="color:#666666;"&gt;[09:27:08.126]&lt;/span&gt; uart:~$ [00:00:00.461,639] scan: Step 3: WIFI_IO_ENABLE (P1.00) ON via HAL - IOVDD supplied&lt;br /&gt;&lt;span style="color:#666666;"&gt;[09:27:08.126]&lt;/span&gt; uart:~$ [00:00:00.466,735] scan: === WiFi Power Sequencing Complete ===&lt;br /&gt;&lt;span style="color:#666666;"&gt;[09:27:08.126]&lt;/span&gt; uart:~$ [00:00:01.517,333] wifi_nrf: nrf_wifi_if_stop_zep: rpu_ctx_zep is NULL&lt;br /&gt;&lt;span style="color:#666666;"&gt;[09:27:08.126]&lt;/span&gt; uart:~$ [00:00:01.519,989] wifi_nrf_bus: SPIM spi@a000: freq = 8 MHz&lt;br /&gt;&lt;span style="color:#666666;"&gt;[09:27:08.126]&lt;/span&gt; uart:~$ [00:00:01.519,989] wifi_nrf_bus: SPIM spi@a000: latency = 0&lt;br /&gt;&lt;span style="color:#666666;"&gt;[09:27:08.126]&lt;/span&gt; uart:~$ [00:00:01.722,137] scan: OTP not programmed, proceeding with local MAC: F6:CE:36:00:00:01&lt;br /&gt;&lt;span style="color:#666666;"&gt;[09:27:08.126]&lt;/span&gt; uart:~$ uart:~$ &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Is this only the OTP error or I need to solve the previous issue I think there is some error from the QSPI but I use SPI4 in my board files ?&lt;br /&gt;&lt;br /&gt;Cause I&amp;#39;ve seen this forum question and asking without programming the OTP :&amp;nbsp;&lt;a href="https://devzone.nordicsemi.com/f/nordic-q-a/103719/samples-wifi-scan-broken-without-programmed-otp"&gt;samples/wifi/scan broken without programmed OTP&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Best regards, and thank you in advance for your response.&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Sample WiFi scan, 7002DK to custom hardware</title><link>https://devzone.nordicsemi.com/thread/550446?ContentTypeID=1</link><pubDate>Thu, 02 Oct 2025 09:40:42 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:0bbc7b31-3118-4c07-9834-03dd14f97336</guid><dc:creator>ValentinKunti</dc:creator><description>&lt;p&gt;Thank you for the response, I already try the example wifi scan with the DK and it works directly, then I created my custom board files to build with our current GPIO without changing the main.c files, the connection is similar as in the hardware spec. with different GPIOs&lt;br /&gt;&lt;br /&gt;The main.c does not have the control of the GPIO so I assume there is a driver that does the handling of the power supply IO VDD bucken pin in the WiFi driver and you send the different GPIO via the device three to be&amp;nbsp; handled by this driver. But maybe if not using the DK, we need to modify the main.c to activate the power supply&amp;nbsp; with the good sequence ?&amp;nbsp;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Nice to know for the OTP ! We have a Raytac module which already have a mac address programmed inside.&lt;br /&gt;&lt;br /&gt;For now the big issue is the understanding of how all the GPIOs and device three are handled for the power supply.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Sample WiFi scan, 7002DK to custom hardware</title><link>https://devzone.nordicsemi.com/thread/550445?ContentTypeID=1</link><pubDate>Thu, 02 Oct 2025 09:21:13 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:3c79037e-5e1b-4227-8f81-0d0156f59c60</guid><dc:creator>Elfving</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
[quote user=""]I&amp;#39;m currently trying to make a scan with our custom board, I&amp;#39;ve made a custom board with our GPIO and the use of the SPI4 instead of QSPI for the 7002 -&amp;gt; 5340 communication, we also use the CDC ACM USB to use direct USB connection for debug and terminal print / command.&amp;nbsp;&lt;br /&gt;[/quote]
&lt;p&gt;First of all, I would recommend using a DK first, but you are of course free to do what you want.&lt;/p&gt;
[quote user=""]In the scan project we have the main.c, in this main there is no indication of how the device is powered up (supply / IOVDD / BUCK EN), if I&amp;#39;m understanding correctly we are setting those up in the device three with the overlay / board configuration file :&lt;br /&gt;[/quote]
&lt;p&gt;Have a look &lt;a href="https://docs.nordicsemi.com/bundle/ps_nrf7002/page/chapters/hw_layout/doc/hw_layout.html#ariaid-title14"&gt;here for how it needs to be connected&lt;/a&gt;, and &lt;a href="https://docs.nordicsemi.com/bundle/ps_nrf7002/page/chapters/hw_layout/doc/hw_layout.html#ariaid-title13"&gt;here for the supply sequencing.&lt;/a&gt;&amp;nbsp;You do not do this through dts.&lt;/p&gt;
[quote user=""]For now I can build and program my board but I see that the power supply, io vdd and bucken is not enable, do we need to enable this on our side ? Or the device three with device 7002 on SPI4 with the given pin make this automatic, like in the pictures bellow :&amp;nbsp;&lt;br /&gt;[/quote]
&lt;p&gt;So there could be something wrong with both the dts files of the board and the code here. Are you using a default sample? Are you seeing the same thing with DK dts files?&lt;/p&gt;
&lt;p&gt;Note that&amp;nbsp;when everything is set up, &lt;a href="https://docs.nordicsemi.com/bundle/nan_043/page/APP/nan_043/otp_programming.html"&gt;you also need to write to the OTP of the device&lt;/a&gt;&amp;nbsp;for it to work. This is also something that is done already on the DKs.&lt;/p&gt;
&lt;p&gt;Regards,&lt;/p&gt;
&lt;p&gt;Elfving&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>