Not able to connect to Home Wifi using headless mode.

Hi all,

I really hope someone can help with this issue. At home, I am configuring a Jetson Nano using headless mode but it keeps failing when it comes to connecting to the WiFi (please see error below.) No matter how often I do it, it keeps failing and giving me the same error.

┌──────────────────────┤ Network configuration ├──────────────────────┐
│                                                                     │
│ Failure of key exchange and association                             │
│                                                                     │
│ The exchange of keys and association with the access point failed.  │
│ Please check the WPA/WPA2 parameters you provided.                  │
│                                                                     │
│                               <Ok>                                  │
│                                                                     │
└─────────────────────────────────────────────────────────────────────┘

My home Wifi is set up for WPA-PSK/WPA2-PSK.

I have configured many Raspberry Pi 3b+ in headless mode and it connects without an issue, so I know it’s not a problem with my WiFi network. Just for a test, I used the Desktop/GUI of the Nano and it connects to my home WiFi without an issue. Is there some additional setup that I must do to get it working in headless mode?

I am using: Intel Dual Band Wireless-Ac 8265 w/ Bluetooth 8265.NGWMG ( https://www.amazon.com/gp/product/B01MZA1AB2/ref=ppx_yo_dt_b_asin_title_o03_s00?ie=UTF8&psc=1)

and the latest image: nv-jetson-nano-sd-card-image-r32.2.3

Thank you in advance.

1 Like

I’ve used wifi supplicant following the same config as I always use on Pi (and Ubuntu) and it works. What are your exact steps? It looks like an incorrect key was supplied. Maybe there is a typo in wpa_supplicant.conf?

You can use the wpa_passphrase utility to interactively generate the relavent portion of that configuration file.

@mdegans, thank you for your response. After writing the image on the SD card, I used “screen /dev/tty.xxx115200” command and followed the wizard screens. Is there another way of doing it? if so, can you please point me to the resource?

Thanks.

$ wpa_passphrase your-network-name | sudo tee /etc/wpa_supplicant.conf
type in your password here
# reading passphrase from stdin
network={
	ssid="your-network name"
	#psk="delete this line here"
	psk=4jioe21jio3;j12io;4j3o2;jh23io;h5io;231h5o;i21h5io;21
}

will provide you with a good configuration for a /etc/wpa_supplicant.conf. You should probably then edit out the #psk=“your plain text password” line and set the file to read only to normal users by running this command:

sudo chmod 600 /etc/wpa_supplicant.conf

Then restart the wpa_supplicant daemon with

sudo systemctl restart wpa_supplicant

You can check it’s status with:

sudo systemctl status wpa_supplicant

Let me know if that doesn’t work for you. I’m not able to use my nano to test this at the moment.

@mdegans, thank you, that would work if I had access to the Nano bash terminal. Because I am using the headless configuration I can’t access the bash terminal until the setup configuration is complete without errors. Here is a video on setting up headless mode https://youtu.be/Ch1NKfER0oM?t=341

Thx for the reference. Can you skip the network configuration and try to log in again by serial at around 10:40 in the video (after reboot). You should be able to do it there.

I haven’t used the Nvidia configurator to set up wifi yet. It should work as shown in the video. I will try to replicate on Monday if this doesn’t work for you since we have the same setup. Do you have the dev or production version?

I have dev. I will try to work on it later tonight. Thank you for your reply.

Yw. Then we have the exact same configuration. I will test on Monday if you don’t manage to sort it out by then.

@mdegans, I was able to bypass the network configuration and get to the bash terminal after a reboot using “screen /dev/tty.xxx115200”. I followed your instructions
but it failed to connect to the Wifi. Info below:

wpa_supplicant.service - WPA supplicant
Loaded: loaded (/lib/systemd/system/wpa_supplicant.service; enabled; vendor p
Active: active (running) since Sun 2018-01-28 08:22:12 PST; 2min 31s ago
Main PID: 14693 (wpa_supplicant)
Tasks: 1 (limit: 4183)
CGroup: /system.slice/wpa_supplicant.service
└─14693 /sbin/wpa_supplicant -u -s -O /run/wpa_supplicant

Jan 28 08:22:12 jetson-bot-01 systemd[1]: Starting WPA supplicant…
Jan 28 08:22:12 jetson-bot-01 systemd[1]: Started WPA supplicant.
Jan 28 08:22:12 jetson-bot-01 wpa_supplicant[14693]: Successfully initialized wp
Jan 28 08:22:12 jetson-bot-01 wpa_supplicant[14693]: dbus: fill_dict_with_proper
Jan 28 08:22:12 jetson-bot-01 wpa_supplicant[14693]: dbus: wpa_dbus_get_object_p
Jan 28 08:22:12 jetson-bot-01 wpa_supplicant[14693]: dbus: Failed to construct s
Jan 28 08:22:12 jetson-bot-01 wpa_supplicant[14693]: dbus: fill_dict_with_proper

I even tried this command:
nmcli d wifi connect my_wifi password

and got this error:
Error: Connection activation failed: (7) Secrets were required, but not provided.

As stated before, the Wifi works using the GUI; so this is a strange issue.

I believe the gui uses NetworkManager behind the scenes, so nmcli should work as well. Can you try this:

https://unix.stackexchange.com/questions/420640/unable-to-connect-to-any-wifi-with-networkmanager-due-to-error-secrets-were-req

If you’re still stuck after that, I’ll plug in a serial cable, reflash, and try to replicate.

I have same issue and same errors with same configuration. No way to configure wifi in headless mode. There is a workaround?

I finally was able to get it to work.

On the terminal configuration wizard, when you get to “Network Configuration” select “Dummy0: unknow interface”.

the next screen will provide a number of options, select the one where you can configure later (I don’t remember the exact verbiage). I believe it will provide a few more screens and it will configure and reboot.

Once you log back in using the screen command, run these commands.

$ wpa_passphrase your-network-name | sudo tee /etc/wpa_supplicant.conf
type in your password here

reading passphrase from stdin

network={
ssid=“your-network name”
#psk=“delete this line here”
psk=4jioe21jio3;j12io;4j3o2;jh23io;h5io;231h5o;i21h5io;21
}
sudo chmod 600 /etc/wpa_supplicant.conf sudo systemctl restart wpa_supplicant
$ sudo systemctl status wpa_supplicant

$ sudo nmcli dev wifi con “wifi name” password “wifi password”

$ nmcli d wifi list

you should see a list of all the SSID in your area

$ ping www.google.com

make sure you can connect to the internet

$ sudo vim /usr/lib/python3/dist-packages/UpdateManager/Core/MetaRelease.py

add this line of code and reboot.

import ssl

ssl._create_default_https_context = ssl._create_unverified_context

here is the reference fot it https://askubuntu.com/questions/1072819/failed-to-connect-to-https-changelogs-ubuntu-com-meta-release-development-che/1086496

Reboot, open a new terminal, and logon using ssh.

@mdegans, the reason your suggestion failed the first time, is because I already ran the “network configuration”
for the Wifi using the terminal Wizard. On the first time of the “Network Configuration” you must select “Dummy0: unknow interface”. Thank you for all your tips, it helped a lot.

It would be helpful if the Nvidia Team could fix this bug on the next release.

1 Like

Glad you got it working and thanks for sharing your solution. A shorter one may be possible. I will investigate after the holidays.

The ssl bit is probably not necessary. You’re patching the UpdateManager package to not verify certificates by doing this. More on that:

https://www.python.org/dev/peps/pep-0476/

If nmcli worked for you and you were able to ping Google right after, that’s probably all that’s needed (not even wpa-supplicant). NetworkManager has other text based interfaces that would probably work as well (nmtui for example).

Great solution: it worked for me too! Thanks

@beltramoe, I am glad it worked for you as well :)

@mdegans, the reason I added the SSL fix is that when I tried to do a “sudo apt update” I was getting errors “Failed to connect to…”. Once I added the fix, it worked as expected. Please let me know if you run into the SSL issues or not.

Thank you again for all your help; your posts are always helpful and it’s a BIG TIME SAVER!!

Cheers ;)

Thank you for the solution.

This is still an issue for the Jetson nano 2GB headless setup. I hope it gets fixed.