Problems using nRF7002 with non-nRF MCU

Hello All,
I am trying nRF7002 shield on my non-nRF MCU and i am running the wifi sample app on zephyr (latest version as of today Aug 20)
I get this error most of the time when issuing "wifi" shell commands. however commands are successful 50% of the time.
Has anyone seen this before? should i enable or disable any kconfig for this?

Regards,

djgj

Parents Reply
  • Hi,

    The team has suggested some things you can do to debug the issue.

    1. Measure the SPI clock while running the SPI at 2MHz or 1MHz to validate the frequency.
    2. Measure the BUCKEN, IOVDD, and VBAT supplied to the nRF70.
    3. Probe IOVDD and BUCKEN with an oscilloscope during boot to check the power sequencing.

    The power-up sequencing requirements are as follows:

    • Supply VBAT/BUCKVBAT/BUCKVBATS/AFEVBAT
    • Wait ≥ 6 ms
    • Assert BUCKEN
    • Wait ≥ 1 ms
    • Supply IOVDD

    You can read more about this in supply sequencing requirements.

    Please share the results of these tests.

    It would also be helpful if you could share the hardware schematics of your host interface.

    Best regards,
    Marte

Children
  • Hello Marte, 
                  I have attached the salea logic analyser logs in this reply.
    I have compared the init sequence of nRF7002 with nRF53 and RT595 devkits.

    nRF7002 with RT595 EVK

    nRF7002 with nRF5340 DK

    * I do see some difference in the way init sequence is happening on RT500 compared to nRF53.
    Do you think this can cause issue within that power cycle with nRF7002?

    * Also once nRF7002 goes into error state what is the recommended to bring it back to proper state?
    I noticed that once i use nRF7002 with nRF53 devkit and then switch to RT500 normally i don't see invalid addresses for sometime. But once the nRF7002 starts giving invalid address errors (for some reason like improper connections or init sequences) it continues on. I think there can be a link somewhere here.

    I will verify the SPI frequency and voltage values on BUCKEN, IOVDD, and VBAT and confirm on it soon.

    Additional Info/Question:

    * I also added some log messages in the spi_if.c file to compare and see for any SPI errors between nRF53 and RT500.
    https://github.com/zephyrproject-rtos/zephyr/blob/main/drivers/wifi/nrfwifi/src/qspi/src/spi_if.c#L29-L77

    But however i don't see any of the bytes probed on nRF7002 SPI lines (via logic analyser) with those printed on spi_if driver logs

    The data compared here is from nRF7002 driver itself which does some checking/sending a message every 10 seconds after just initialization (no other wifi commands issued and I did not add anything code for this here except those log messages on spim_xfer_rx/tx functions)

    Technically it is just writing and reading to same nRF7002 registers every 10 seconds. But the bytes seen in SPI lines are different every time. This behavior is seen on both RT500 and nRF5340 setup too.  I would like know how to debug these message bytes so that i can know what kind of SPI error could be happening?

    Regarding Host setup:

    We are using NXP MIMXRT595-EVK as our Host MCU board and nRF7002 EK.
    We are using devkits to verify this Wi-Fi interfacing path with nRF7002EK.
    I was not able to use the full Arduino shield interface on RT595 EVK board since
    their "arduino_spi" interface was not available out of the box for using on RT500

    Instead, I connected nRF7002 EK pins partially to "Arduino" and "HS_SPI_1" pins on the RT595 EVK board.
    (reference chapter 9 https://www.farnell.com/datasheets/3209290.pdf)
    NRF7002 EK
    RT5959 EVK
    V5V
    J29 - pin 5
    GND
    J29 - pin 6
    VIO
    J29 - pin 4
    HOST_IRQ
    J27 - pin 8
    BUCK_EN
    J27 - pin 2
    IOVDD_EN
    J27 - pin 1
    SS
    HS_SPI_1 - JP26 - pin 1 
    MOSI
    HS_SPI_1 - JP26 - pin 2
    MISO
    HS_SPI_1 - JP26 - pin 3
    CLK
    HS_SPI_1 - JP26 - pin 4
    And on the software side we are using latest zephyr containing Nordic updates on nRF7002.
    App: https://github.com/zephyrproject-rtos/zephyr/tree/main/samples/net/wifi
    I made a small change on nrf7002ek.overlay to be able to use setup without too much custom changes.

    Thanks,

    djgj 

  • Hi,

    Thank you for providing additional debug information. I forwarded it internally and am waiting for a reply. If I have not heard anything by tomorrow, I will ask them for an update and get back to you.

    Best regards,
    Marte

  • Hi,

    I have not received a response yet but have asked for an update. I expect to hear something early next week.

    Best regards,
    Marte

  • Hi,

    djgj said:
    I will verify the SPI frequency and voltage values on BUCKEN, IOVDD, and VBAT and confirm on it soon.

    Do you have any updates on this?

    What is the clock frequency of the host (RT595) that you are using? It seems to be pretty high. Can you clock it to 128 MHz, the same as the nRF5340, and collect the same logs as previously?

    Best regards,
    Marte

  • Hi,

    Are you still experiencing the issues in this ticket? If so, do you have an update on the questions in my previous reply?

    Best regards,
    Marte

Related