You are not logged in.
Greetings, I am new here and I recently did a fresh install today on my laptop.
The problem is I am unable to connect to internet using wifi because I can't install any drivers for my wifi card Broadcom - BCM43142.
I have looked over multiple post and read the wiki (https://wiki.archlinux.org/title/broadcom_wireless) about BCM43142 and I was told to install the package "broadcom-wl" and it should work fine after a reboot. and it worked.
I proceed to install nvidia drivers and rebooted but after the reboot I cannot connect to wifi again.
I tried reinstalling "broadcom-wl" after installing nvidia drivers again after the reboot and it did not work.
I have tried "modprobe wl" but it says there is no modules found and "rmmod wl" says it is not loaded.
I have also tried "broadcom-wl-dkms" and it didn't work either.
The blacklist is in the right place (I think pacman done it for me) and it shows that all the drivers that has to be blacklisted are blacklisted.
"lspci -k" shows me that the device is detected but it doesn't shows any kernel driver for it.
I have checked "rfkill list" and the device is not displayed there at all.
Am I missing something that I did not do to install the drivers? I think pacman does it for me right?
Also sorry if there is something important that I may have missed. It's my first time using linux and I am still learning.
Last edited by xenuric (2023-12-23 09:57:03)
Offline
Welcome to the forums. Before we get to Broadcom, just a general remark: with Arch, force yourself to unlearn the 'reinstall' mantra that's prevalent with other OS's/distros. A 'reinstall' of a package in Arch simply will re-copy the same files to the same locations and it WILL NOT re-set or re-initialize config files that you changed, so it's pointless.
Replacing broadcom-wl with broadcom-wl-dkms would only be needed if you ran a kernel for which broadcom-wl (the precompiled version) doesn't jive with. Other than that, it's the same driver, so if you're running the standard Arch kernel, I'd go back to broadcom-wl to simplify troubleshooting the issue.
If modprobe now can't find the 'wl' module, but it did work before, then the first places you should check is your journal and dmesg. These are documented on our Wiki, start here for a starting point. As root, check both 'dmesg' and 'journalctl -b 0' to see if there's anything logged related to broadcom that could explain the driver not loading. You can post the output here using [ code ] tags. If the output is too large to post, use
sudo journalctl -b | curl -F 'file=@-' 0x0.st
to post it online and post the link.
Offline
pacman -Qs 'broadcom|kernel'
uname -a
modprobe -v wl
Online
Welcome to the forums. Before we get to Broadcom, just a general remark: with Arch, force yourself to unlearn the 'reinstall' mantra that's prevalent with other OS's/distros. A 'reinstall' of a package in Arch simply will re-copy the same files to the same locations and it WILL NOT re-set or re-initialize config files that you changed, so it's pointless.
Replacing broadcom-wl with broadcom-wl-dkms would only be needed if you ran a kernel for which broadcom-wl (the precompiled version) doesn't jive with. Other than that, it's the same driver, so if you're running the standard Arch kernel, I'd go back to broadcom-wl to simplify troubleshooting the issue.
If modprobe now can't find the 'wl' module, but it did work before, then the first places you should check is your journal and dmesg. These are documented on our Wiki, start here for a starting point. As root, check both 'dmesg' and 'journalctl -b 0' to see if there's anything logged related to broadcom that could explain the driver not loading. You can post the output here using [ code ] tags. If the output is too large to post, use
sudo journalctl -b | curl -F 'file=@-' 0x0.st
to post it online and post the link.
Here is the output for
sudo journalctl -b | curl -F 'file=@-' 0x0.st
and the output for
sudo dmesg | curl -F 'file=@-' 0x0.st
(I tried grep to find probably related logs at the moment but I can't find anything useful)
Offline
pacman -Qs 'broadcom|kernel' uname -a modprobe -v wl
I assume you want the outputs for those command so here it is
pacman -Qs 'broadcom|kernel':
local/broadcom-wl 6.30.223.271-516
Broadcom 802.11 Linux STA wireless driver
local/dkms 3.0.11-1
Dynamic Kernel Modules System
local/iptables 1:1.8.10-1
Linux kernel packet control tool (using legacy interface)
local/kmod 31-1
Linux kernel module management tools and library
local/libdrm 2.4.118-1
Userspace interface to kernel DRM services
local/libnetfilter_conntrack 1.0.9-1
Library providing an API to the in-kernel connection tracking state table
local/libnfnetlink 1.0.2-1
Low-level library for netfilter related kernel/userspace communication
local/libsysprof-capture 45.1-1
Kernel based performance profiler - capture library
local/linux 6.6.7.arch1-1
The Linux kernel and modules
local/linux-api-headers 6.4-1
Kernel headers sanitized for use in userspace
local/linux-headers 6.6.7.arch1-1
Headers and scripts for building modules for the Linux kernel
local/linux-lts 6.1.69-1
The LTS Linux kernel and modules
local/mtdev 1.1.6-2
A stand-alone library which transforms all variants of kernel MT events to the slotted type B protocol
uname -a:
Linux <hostname> 6.1.69-1-lts #1 SMP PREEMPT_DYNAMIC Wed, 20 Dec 2023 17:23:40 +0000 x86_64 GNU/Linux
modprobe -v wl:
modprobe: FATAL: Module wl not found in directory /lib/modules/6.1.69-1-lts
Also I forgot to mention I am dual booting with Windows 10 and I have disabled fast booting and also tried powering off by holding the power button before I made it work for the first time, so I don't think the wifi card is used by others.
Offline
You're running the LTS kernel but lack any broadcom-wl package for that, you need https://archlinux.org/packages/extra/x8 … m-wl-dkms/
Online
You're running the LTS kernel but lack any broadcom-wl package for that, you need https://archlinux.org/packages/extra/x8 … m-wl-dkms/
I tried installing broadcom-wl-dkms through yay.
Rebooted and modprobe doesn't find wl.
Do I have to load it manually? How do I do that?
Offline
dkms status
Online
dkms status
broadcom-wl/6.30.223.271, 6.6.7-arch1-1, x86_64: installed
Offline
You lack the lts headers, you'll have to explicitly rebuild the dkms modules (at least for the lts kernel) after installing them.
Online
You lack the lts headers, you'll have to explicitly rebuild the dkms modules (at least for the lts kernel) after installing them.
I have installed linux-lts-headers and now I can connect to the internet now.
Thank you very much.
Just confirming, so it will stay installed in future boots right? Also how do I change the post name to solved?
Also do I still need linux-headers if I have linux-lts-headers?
ps. Figured it out on how to change post name.
Last edited by xenuric (2023-12-23 09:59:21)
Offline
You need all header packages for every kernel you intel to use with dkms modules and they'll automatically be rebuilt for those kernels on updates (either of the kernel or the module)
Online