Ultra96 Wifi cannot work with out-of-box imgage

I followed the steps in the Ultra96-V2 Getting Started Guide v2.0 to test my newly purchased Ultra96V2. I am using the Windows 10 operating system. After using Etcher v1.18.11 to flash the Ultra96v2_oob_2020_1_210303_8GB image onto the SD card, I set Ultra96V2 to boot from the SD card.

However, the terminal is always reporting ERROR:gcm_channel_status_request.cc(145)] GCM channel request failed, and i cannot see the network called Ultra96-V2_<MAC_ADDRESS> in windows10 of my pc.

I also tried using the wifi.sh, I get the problem as follow:

root@ultra96v2-2020-1:~# ./wifi.sh
Stopping Connection Manager
ifdown: interface wlan0 not configured
Successfully initialized wpa_supplicant
[  452.862578] power up request for already powered up source Wifi
[  452.868507] Device already up. request source is Wifi
[  452.873584] wilc_sdio mmc1:0001:1 wlan0: Failed to get mac address
[  452.879769] wilc_sdio mmc1:0001:1: wilc_sdio_disable_interrupt
Could not set interface wlan0 flags (UP): Invalid argument
nl80211: Could not set interface 'wlan0' UP
nl80211: deinit ifname=wlan0 disabled_11b_rates=0
wlan0: Failed to initialize driver inte[  452.901227] power up request for already powered up source Wifi
rface
[  452.910258] Device already up. request source is Wifi
[  452.918127] wilc_wlan_firmware_downloadDownloading firmware size = 136788
[  453.141540] wilc_wlan_firmware_download Offset = 119860
[  453.149016] wilc_wlan_firmware_download Offset = 136788
[  453.685160] wilc_sdio mmc1:0001:1: wilc_sdio_disable_interrupt
RTNETLINK answers: Input/output error
udhcpc: started, v1.31.0
[  454.724941] power up request for already powered up source Wifi
[  454.730897] Device already up. request source is Wifi
[  454.735992] wilc_sdio mmc1:0001:1 wlan0: Failed to get mac address
[  454.742177] wilc_sdio mmc1:0001:1: wilc_sdio_disable_interrupt
RTNETLINK answers: Invalid argument
udhcpc: sending discover
udhcpc: sendto: Network is down
udhcpc: read error: Network is down, reopening socket
udhcpc: sending discover
udhcpc: sendto: Network is down
udhcpc: read error: Network is down, reopening socket
udhcpc: sending discover
udhcpc: sendto: Network is down
udhcpc: read error: Network is down, reopening socket
udhcpc: read error: Network is down, reopening socket
udhcpc: read error: Network is down, reopening socket
udhcpc: read error: Network is down, reopening socket
udhcpc: read error: Network is down, reopening socket
udhcpc: read error: Network is down, reopening socket

So i tried ip link set wlan0 down and ip link set wlan0 up, then i got erros as follow:

root@ultra96v2-2020-1:~# ip link set wlan0 down
root@ultra96v2-2020-1:~# ip link set wlan0 up
[  792.877742] power up request for already powered up source Wifi
[  792.883680] Device already up. request source is Wifi
[  792.891445] wilc_wlan_firmware_downloadDownloading firmware size = 136788
[  793.113877] wilc_wlan_firmware_download Offset = 119860
[  793.121413] wilc_wlan_firmware_download Offset = 136788
[  793.653169] wilc_sdio mmc1:0001:1: wilc_sdio_disable_interrupt
RTNETLINK answers: Input/output error

Besides, I also get a img called ultra96v2_sbc-v2022.2-2023-05-10.img from Ultra96V2 GSC. After flashing this img, the GCM channel error is disappered. But the wifi is still not working, after excuting ./wifi.sh, errors are as follow:

root@u96v2-sbc-2022-2:~# ls
Vitis-AI                       bt.sh            usb_gadget_ethernet.sh
asl_classification_vitis_ai    dpu_sw_optimize  wifi.sh
avnet_dualcam_python_examples  pmic-prog        wpa_supplicant.conf
root@u96v2-sbc-2022-2:~# ./wifi.sh
Stopping Connection Manager
ifdown: interface wlan0 not configured
Successfully initialized wpa_supplicant
nl80211: kernel reports: Authentication algorithm number required[   79.334456]                       power up request for already powered up source Wifi

[   80.095288] wilc_sdio mmc1:0001:1 wlan0: WLAN initialization FAILED
Could not set interface wlan0 flags (UP): Timer expired
nl80211:[   80.102467] wilc_sdio mmc1:0001:1 wlan0: Failed to frame register
 Could not set interface 'wlan0' UP
nl80211: deinit ifname=wlan0 disabled_11b_rates=0
wlan0: Failed to initialize driver interface
[   80.176570] power up request for already powered up source Wifi
[   80.182567] wilc_sdio mmc1:0001:1 wlan0: Failed to set driver handler
[   80.189050] wilc_sdio mmc1:0001:1 wlan0: Failed to get mac address
RTNETLINK answers: Invalid argument

And errors of ip link set wlan0 up/down are as follow:

root@u96v2-sbc-2022-2:~# ip link set wlan0 down
root@u96v2-sbc-2022-2:~# ifconfig -a
lo        Link encap:Local Loopback
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:65536  Metric:1
          RX packets:1073 errors:0 dropped:0 overruns:0 frame:0
          TX packets:1073 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:82876 (80.9 KiB)  TX bytes:82876 (80.9 KiB)

p2p0      Link encap:Ethernet  HWaddr 00:00:00:00:00:00
          BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

sit0      Link encap:IPv6-in-IPv4
          NOARP  MTU:1480  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

wlan0     Link encap:Ethernet  HWaddr 00:00:00:00:00:00
          BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

root@u96v2-sbc-2022-2:~# ip link set wlan0 up
[  295.100081] power up request for already powered up source Wifi
[  295.839213] wilc_sdio mmc1:0001:1 wlan0: WLAN initialization FAILED
RTNETLINK answers: Timer expired
root@u96v2-sbc-2022-2:~#

I want to determine what’s causing this problem, whether my hardware is corrupted of if there is a problem with the image that I download from Avnet. Any suggestions would be great!

Hi Leon,

When did you purchase your Ultra96-V2 board? We have seen some Ultra96-V2 boards with failing WiFi and we believe this is due to a missing clock input to the WiFi module. Do you have a way to probe resistor R19 on your board? This resistor can be found below the 32.768 KHz oscillator (Y1) and next to the WiFi module. You can probe either side of the resistor or the input pin to the WiFi module and you should see a 32.768 KHz clock signal. If you don’t this may indicate the WiFi failure you are seeing. Please share your results here and we can discuss further steps.

Thanks!

Tom

Thank you very much for your reply, I purchased it in October 2023, I tested both ends of the R19 resistor on the board, and only observed a high voltage of 128mV, no square wave of 32KHz was observed.

I would like to ask, does this mean that there is something wrong with my wifi module, is there any way I can fix it?

Is there any help to fix it?

I ordered my Ultra96 12/13/2023, and have been more actively using it for the last couple weeks. I’ve tried at least 4 different build sources, thinking I had something wrong, concerning its Wifi (which has never worked). Thank you narrucmot! for your information. I probed my R19, and it gives 180 mV with no signal on it. My Y1-located ‘oscillator’ chip (presumably a DSC6083CI2A-032K768) has the metallic top like LeonLiang has in his photo, and its dot is oriented the same as mine, which seems correct per the PWB diagram I’ll try to attach here.
Y1-Osc-R19-Res-PWB

I’ve got a microscope photo of this board area now, and annotated it with the schematic circuit and a recommended land-pattern for the oscillator from https://ecsxtal.com/store/pdf/ECS-327MVATX.pdf, which might be the part that was populated on the board instead of the obsoleted Microchip DSC6083CI2A part. It is possible that it doesn’t like the long in-board route from C6’s GND to Y1-pin2’s GND (see landpattern).


I also would like to know the recommended way to fix this. – Eric