Hi Keith,
thanks for answering, I really appreciate it.
> I run iwd on RPi, but I am using Arch Linux. I've never tried it with
> RaspiOS. Works pretty well, though I am having a re-connect issue that we
> are trying to debug.
Knowing that, it's likely, that it's a problem due to the Raspbian
configuration or the specific iwd / network environment combination.
> My guess is that you compiled the kernel to remove this message in the log:
>
> Aug 23 22:52:24 rune64 iwd[235]: No Diffie-Hellman support found, WPS will
> not be available
> Aug 23 22:52:24 rune64 iwd[235]: The following options are missing in the
> kernel:
> Aug 23 22:52:24 rune64 iwd[235]: CONFIG_KEY_DH_OPERATIONS
>
> This is harmless and I have no problems connecting with this notification.
> I think it means I cannot use WPS which I do not.
Yes exactly, I had this message, and although I do not use WPS I thought it
would be worth a try. But whether that option is included in the kernel or not
does not make a difference.
> Are you trying to connect using the iwctl commands?
>
> iwctl station wlan0 scan
> iwctl station wlan0 get-networks
> iwctl station wlan0 connect 'Network_Name"
>
> It should return with
>
> Type the network passphrase for "Network_Name" psk.
> Passphrase: ********
Yes, these were my first tests. However, few seconds after entering the
Passphrase I always get a red "Operation failed".
Therefore, I manually created correct psk files in /var/lib/iwd (I know they
are correct, as they work on another computer in the same network). However
that was not successful (but I used this configuration for creating the debug
output, as it's simpler not having to type the password).
> or are you using connman to manage iwd?
No I am testing iwd directly. Currently I let systemd-networkd manage the
network interface. But without being connected with iwd this obviously fails
(however it works when using wpa_supplicant).
> Do you have an /etc/iwd/main.conf? If so, what is in it?
No, I am not using a config file.
> I assume you have enabled and started iwd.
In general yes, but for testing I sometimes disable it in systemd and start it
manually. But neither mode works.
I created an strace, but it didn't enlighten me. The bad file descriptor does
not look good, but is probably due to the deauthentication event and not the
other way round.
> recvmsg(5, {msg_name=NULL, msg_namelen=0, msg_iov=[{iov_base=
> "D\0\0\0\20\0\0\0\0\0\0\0\0\0\0\0\0\0\1\0\3\0\0\0\3\20\0\0\0\0\0\0"...,
> iov_len=4096}], msg_iovlen=1, msg_control=[{cmsg_len=16,
> cmsg_level=SOL_NETLINK, cmsg_type=0x3}], msg_controllen=16, msg_flags=0},
> 0) = 68
> recvmsg(4, {msg_name=NULL, msg_namelen=0, msg_iov=[{iov_base=
> "0\0\0\0\27\0\0\0\0\0\0\0\0\0\0\0000\1\0\0\10\0\1\0\0\0\0\0\10\0\3\0"...,
> iov_len=8192}], msg_iovlen=1, msg_control=[{cmsg_len=16,
> cmsg_level=SOL_NETLINK, cmsg_type=0x3}], msg_controllen=16, msg_flags=0},
> 0) = 48
> write(2, "Received Deauthentication event,"..., 59) = 59
> close(12) = 0
> epoll_ctl(3, EPOLL_CTL_DEL, 12, NULL) = -1 EBADF (Bad file descriptor)
Any more ideas how to debug this, anyone? Is it possible to run an Arch
kernel on a Raspbian?
Kind regards
Patrick