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’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?
$ 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 HEADLESS SETUP - Jetson Nano - YouTube
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?
@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.
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
@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.
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:
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).
@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!!