0

sudo service network-manager restart duplicates this problem, as well as trying to select another or the same network again.

Wi-Fi only works after rebooting. The wired connection works fine. I am using Ubuntu 18.04.2 LTS.

The output of sudo lshw -C network when Wi-Fi is working is:

  *-network
       description: Wireless interface
       product: Realtek Semiconductor Co., Ltd.
       vendor: Realtek Semiconductor Co., Ltd.
       physical id: 0
       bus info: pci@0000:02:00.0
       logical name: wlo1
       version: 00
       serial: 9c:30:5b:d2:fa:8b
       width: 64 bits
       clock: 33MHz
       capabilities: pm msi pciexpress bus_master cap_list ethernet physical wireless
       configuration: broadcast=yes driver=rtl8723de ip=192.168.0.87 latency=0 multicast=yes wireless=IEEE 802.11bgn
       resources: irq:129 ioport:3000(size=256) memory:b1000000-b100ffff

And when Wi-Fi is not working:

  *-network
       description: Wireless interface
       product: Realtek Semiconductor Co., Ltd.
       vendor: Realtek Semiconductor Co., Ltd.
       physical id: 0
       bus info: pci@0000:02:00.0
       logical name: wlo1
       version: 00
       serial: 9c:30:5b:d2:fa:8b
       width: 64 bits
       clock: 33MHz
       capabilities: pm msi pciexpress bus_master cap_list ethernet physical wireless
       configuration: broadcast=yes driver=rtl8723de latency=0 multicast=yes wireless=unassociated
       resources: irq:129 ioport:3000(size=256) memory:b1000000-b100ffff

I tried without success:

  • sudo systemctl restart network-manager.service

  • Reloading the rtl8723de driver by running:

    sudo modprobe -r rtl8723de && sudo modprobe rtl8723de
    
Eliah Kagan
  • 117,780
MaSpe
  • 1

2 Answers2

0

I found out that sudo modprobe -r rtl8723de did not really unload the driver. This can be checked by lsmod or lsmod | grep 8723de. If the driver is loaded, it is listed in the output, if not, the driver is unloaded.

To unload, I had to use the command rmmod and for some reason to unload the driver I had to call it by 8723de.

So I did:

sudo rmmod 8723de

And then reloaded the driver:

sudo modprobe rtl8723de

The Internet connection started working then.

I automated this adapting the accepted solution from this site:

Type sudo nano /lib/systemd/system-sleep/rtl8723de-refresh. Insert:

#!/bin/bash

PROGNAME=$(basename "$0") state=$1 action=$2

function log { logger -i -t "$PROGNAME" "$*" }

log "Running $action $state"

if [[ $state == post ]]; then rmmod 8723de
&& log "Removed rtl8723de"
&& modprobe rtl8723de
&& log "Inserted rtl8723de" fi

Save and exit with Strg+X and C.

Make executable with:

chmod +x /lib/systemd/system-sleep/rtl8723de-refresh

As a remark, I got the driver from this site: https://github.com/smlinux/rtl8723de.git

Eliah Kagan
  • 117,780
MaSpe
  • 1
0

It worked for me in Debian 10, but I had to eliminate the double [[ ]] symbols in favor of [ ]. I leave it here in case someone has the same issue. I also had to add " in certain places.

#!/bin/bash

PROGNAME=$(basename "$0") state=$1 action=$2

function log { logger -i -t "$PROGNAME" "$*" }

log "Running $action $state"

if [ "${1}" == "post" ]; then rmmod 8723de
&& log "Removed rtl8723de"
&& modprobe rtl8723de
&& log "Inserted rtl8723de" fi

Eliah Kagan
  • 117,780