DGX Spark Founders Edition — WiFi fails to join any network during initial setup (Error 500 + "Unable to Join") - FIXED

I have a brand new DGX Spark Founders Edition (4TB, 128GB) that cannot complete initial setup due to WiFi connection failures. The WiFi adapter can scan for networks and create its own hotspot (spark-c36f), but cannot join any network as a client.

Timeline of what happened:

  1. First boot — setup stalled at “Connect to Wi-Fi”. Tried multiple WiFi networks, none connected.

  2. Hard restarted — WiFi stopped showing networks entirely, got “Error searching for nearby networks. Reason 500”

  3. Connected Ethernet cable — setup still searched for WiFi instead of skipping

  4. Entered UEFI and verified: Network Stack enabled, Wireless LAN & Bluetooth enabled under IO Port Access, system clock corrected to current date

  5. Attempted to enable IPv4 on the Ethernet NIC in UEFI — got “Invalid Subnet Mask” error

  6. Performed full system recovery via USB using official recovery image (1.120.36) from Mac using CreateUSBKeyMacOS.sh — recovery completed successfully

  7. After recovery, restored UEFI defaults, enabled Secure Boot, restored factory keys per official docs

  8. Post-recovery, WiFi networks now appear again but every connection attempt fails with “Failed to join the network”

  9. Tried headless setup (Mac connected to spark-c36f hotspot) — Spark attempts to join network, drops its hotspot, then fails and shows “Unable to Join”

Networks tested (all fail):

  • Home WiFi (WPA2)

  • Multiple other WiFi networks

  • iPhone hotspot with Maximize Compatibility enabled (forced 2.4GHz), simple SSID, simple password.

UEFI settings confirmed:

  • Network Stack: Enabled

  • IPv4 PXE Support: Enabled

  • Wireless LAN & Bluetooth: Enabled (IO Port Access)

  • System clock: Correct

  • UEFI version: 2.22.1295

  • SSD: Samsung MZALC4T0HBL1-00B07 (4TB)

Key observation: The WiFi module can broadcast a hotspot (spark-c36f works fine — my Mac connects to it) but cannot join any external network as a client.

Lots of people are running into this, including, apparently, Nvidia staff.

Some are reporting success by patching th rescue image and connecting via ethernet derailed in Setup Wizard loop - #8 by sjug

The DGC won’t install if it can’t make a successful Ubuntu connectivity check.

Try running “curl -v https://connectivity-check.ubuntu.com

Sharing a solution for the widespread DGX Spark initial setup issue where WiFi fails to join any network and Ethernet is not detected during the OOBE (Out-of-Box Experience).

The Problem

Many DGX Spark users (Founders Edition and OEM) are unable to complete initial setup because the OOBE fails at the network step. Symptoms include:

  • “Error searching for nearby networks. Reason 500”

  • “Failed to join the network” on every WiFi network attempted

  • Ethernet cable connected but OOBE still forces WiFi setup

  • iPhone/Android hotspots with Maximize Compatibility enabled also fail

  • WiFi adapter works fine for broadcasting the Spark’s own hotspot (spark-xxxx) but cannot join any network as a client

Root Cause

The OOBE setup wizard checks internet connectivity by making an HTTPS request to connectivity-check.ubuntu.com. If this request fails for any reason (SSL certificate issues, DNS resolution failure, connectivity timing, etc.), the OOBE assumes there is no network connection — even when WiFi or Ethernet is actually connected and working.

This means:

  • The Spark connects to your WiFi, but the connectivity check fails, so the OOBE reports “Unable to Join”

  • Ethernet is physically connected and has a valid IP, but the OOBE ignores it because the HTTPS check fails

The WiFi adapter and Ethernet hardware are not defective. The bug is entirely in the OOBE software’s connectivity verification logic.

The Fix

Credit to GitHub user sjug for identifying the bug and creating a patch: https://github.com/sjug/dgx-spark-ethernet-patch

The patch modifies the HasInternet() function in the OOBE service binary (/opt/nvidia/dgx-oobe/oobe-service) to always return true, bypassing the broken connectivity check. This causes the OOBE to skip the WiFi setup page and proceed directly to the system update step.

How to Apply (including Mac users)

The original patch script requires Linux. If you only have a Mac, you can use Docker:

  1. Download the recovery image (version 1.120.38): https://developer.nvidia.com/downloads/dgx-spark/dgx-spark-recovery-image-1.120.38.tar.gz

  2. Download the patch script: https://raw.githubusercontent.com/sjug/dgx-spark-ethernet-patch/master/patch-oobe-ethernet.sh

  3. Extract the recovery image: tar xzf dgx-spark-recovery-image-1.120.38.tar.gz

  4. Run Docker with privileged mode:

docker run --rm -it --privileged \
  -v ~/Downloads/usbimg.customer:/work/usbimg.customer \
  -v ~/Downloads/patch-oobe-ethernet.sh:/work/patch-oobe-ethernet.sh \
  ubuntu:24.04 bash
  1. Inside the container, install dependencies and apply the patch manually (fuse2fs does not work in Docker, and sudo is not available):
apt update && apt install -y xz-utils e2fsprogs xxd
cd /work
# Run the script — it will decompress the image but fail at mount step
# Instead, do it manually:
cat /work/usbimg.customer/usb/fastos.partaa /work/usbimg.customer/usb/fastos.partab | xz -d > /work/usbimg.customer/usb/fastos-patching.img
mkdir -p /work/mnt
mount -o loop,rw /work/usbimg.customer/usb/fastos-patching.img /work/mnt
BINARY=/work/mnt/opt/nvidia/dgx-oobe/oobe-service
xxd -s 9244552 -l 8 -p "$BINARY"   # Should show: ff3b00f9ffdf0039
printf '\x20\x00\x80\x52\x4d\x00\x00\x14' | dd of="$BINARY" bs=1 seek=9244552 conv=notrunc
xxd -s 9244552 -l 8 -p "$BINARY"   # Should show: 200080524d000014
umount /work/mnt
e2fsck -y -f /work/usbimg.customer/usb/fastos-patching.img
xz -9 -T0 /work/usbimg.customer/usb/fastos-patching.img   # Takes 30-60 minutes
split -b 4089446400 /work/usbimg.customer/usb/fastos-patching.img.xz /work/usbimg.customer/usb/fastos.part
rm /work/usbimg.customer/usb/fastos-patching.img.xz
  1. Exit Docker and flash USB on Mac:
exit
cd ~/Downloads/usbimg.customer
sudo ./CreateUSBKeyMacOS.sh
  1. Perform system recovery on the Spark via USB (Restore UEFI Defaults → Enable Secure Boot → Restore Factory Keys → Boot Override → USB → START RECOVERY)

  2. After recovery, the OOBE will proceed past the network step. WiFi or Ethernet can be configured normally through Ubuntu settings once setup is complete.

What I Tried Before Finding the Fix

  • Multiple WiFi networks including iPhone hotspot with Maximize Compatibility

  • UEFI: Network Stack enabled, Wireless LAN & Bluetooth enabled, system clock corrected

  • Full system recovery with image 1.120.36 (did not fix it)

  • Both local setup (monitor/keyboard) and headless setup (Mac via Spark hotspot)

  • All failed with the same “Unable to Join” error

Environment

  • DGX Spark Founders Edition, 4TB SSD, 128GB RAM

  • UEFI version 2.22.1295

  • Recovery image: 1.120.38 (patched)

NVIDIA should patch the OOBE to use a more robust connectivity check, or at minimum allow users to skip the network step during setup. @NVES

1 Like

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.