Condition: extraneous notifications and popups when phone connected to USB.
Differential conditions: power management failure with USB, network card management failure.
Support: notifications, popups and dmesg warnings occur mostly when the power state reaches maximum high, but become rather stable when power state percentage stays constant.
The file manager keeps opening when I have my phone connected to my laptop via USB (Figure 1 and 2). There are also popup icons in the left-hand-side bar (Figure 3). There are also frequent internet connection notifications on/off when tethering (Figure 4 and 5). The bad quality cable increases the frequency of those annoyances. All types of notifications can be many times per minute. Their rate increases when the battery reaches high power state, but stays stable when battery is fully charged.
- I do wjandrea's proposal
gsettings set org.gnome.desktop.media-handling automount-open false
which solvesautomount-open
issue, itsdmesg | tail
state here.
You see about 10-30 windows for the error (Figure 1 and 2) and the right-hand-side icon of the phone popping back-and-forth (Figure 3) when just keeping the device connected to the laptop
- I do wjandrea's second proposal
gsettings set org.gnome.desktop.media-handling automount false
. However, the icon of Samsung phone starts to popup in the left-hand-side bar again and again. It occurs mostly when my laptop is fully charged so it can be a problem in the power-management. Itsdmesg | tail
state is here (See Figure 3 also), which occurred first time and mostly when my laptop reaches about its maximum battery state.
Subset of the second dmesg here
[ 5.788819] wl: module license 'MIXED/Proprietary' taints kernel.
[ 5.788820] Disabling lock debugging due to kernel taint
[ 5.789154] input: HDA Intel PCH Headphone as /devices/pci0000:00/0000:00:1b.0/sound/card1/input8
[ 5.797453] wl: module verification failed: signature and/or required key missing - tainting kernel
[ 5.812002] input: HDA Intel HDMI HDMI/DP,pcm=3 as /devices/pci0000:00/0000:00:03.0/sound/card0/input9
[ 5.812092] input: HDA Intel HDMI HDMI/DP,pcm=7 as /devices/pci0000:00/0000:00:03.0/sound/card0/input10
[ 5.812165] input: HDA Intel HDMI HDMI/DP,pcm=8 as /devices/pci0000:00/0000:00:03.0/sound/card0/input11
[ 5.981764] intel_rapl: Found RAPL domain package
[ 5.981769] intel_rapl: Found RAPL domain core
[ 5.981771] intel_rapl: Found RAPL domain uncore
[ 5.981772] intel_rapl: Found RAPL domain dram
[ 6.024117] wlan0: Broadcom BCM43a0 802.11 Hybrid Wireless Controller 6.30.223.248 (r487574)
[ 6.030416] applesmc: key=561 fan=1 temp=33 index=33 acc=0 lux=2 kbd=1
[ 6.050130] wl 0000:03:00.0 wlp3s0: renamed from wlan0
[ 6.242168] Non-volatile memory driver v1.3
[ 6.428191] IPv6: ADDRCONF(NETDEV_UP): wlp3s0: link is not ready
[ 6.862799] input: bcm5974 as /devices/pci0000:00/0000:00:14.0/usb1/1-5/1-5:1.2/input/input12
[ 6.862926] usbcore: registered new interface driver bcm5974
[ 7.053663] fuse init (API version 7.24)
[ 7.329118] Bluetooth: Core ver 2.21
[ 7.329540] NET: Registered protocol family 31
[ 7.329543] Bluetooth: HCI device and connection manager initialized
[ 7.329548] Bluetooth: HCI socket layer initialized
[ 7.329551] Bluetooth: L2CAP socket layer initialized
[ 7.329558] Bluetooth: SCO socket layer initialized
[ 7.350445] usbcore: registered new interface driver btusb
[ 7.355183] Bluetooth: hci0: BCM: chip id 73 build 0932
[ 7.356184] Bluetooth: hci0: BCM: product 05ac:828f
[ 7.372192] Bluetooth: hci0: BCM20702B0 Generic USB Class 1 @ 20 MHz
[ 7.391321] usb 1-3.1: USB disconnect, device number 5
[ 7.634631] usb 1-3.2: USB disconnect, device number 6
[ 8.363517] Bluetooth: BNEP (Ethernet Emulation) ver 1.3
[ 8.363521] Bluetooth: BNEP filters: protocol multicast
[ 8.363525] Bluetooth: BNEP socket layer initialized
[ 8.377953] Bluetooth: RFCOMM TTY layer initialized
[ 8.377960] Bluetooth: RFCOMM socket layer initialized
[ 8.377965] Bluetooth: RFCOMM ver 1.11
[ 78.943062] usb 1-1: USB disconnect, device number 2
[ 79.308530] usb 1-1: new high-speed USB device number 8 using xhci_hcd
[ 79.437071] usb 1-1: New USB device found, idVendor=04e8, idProduct=6863
[ 79.437079] usb 1-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[ 79.437083] usb 1-1: Product: SAMSUNG_Android
[ 79.437086] usb 1-1: Manufacturer: SAMSUNG
[ 79.437089] usb 1-1: SerialNumber: d068730a
[ 79.978452] usbcore: registered new interface driver cdc_ether
[ 79.981649] rndis_host 1-1:1.0 usb0: register 'rndis_host' at usb-0000:00:14.0-1, RNDIS device, 02:57:00:57:38:37
[ 79.981726] usbcore: registered new interface driver rndis_host
[ 79.983854] rndis_host 1-1:1.0 enp0s20u1: renamed from usb0
[ 80.011403] IPv6: ADDRCONF(NETDEV_UP): enp0s20u1: link is not ready
[ 1290.235637] usb 1-1: USB disconnect, device number 8
[ 1290.235777] rndis_host 1-1:1.0 enp0s20u1: unregister 'rndis_host' usb-0000:00:14.0-1, RNDIS device
[ 1290.591107] usb 1-1: new high-speed USB device number 9 using xhci_hcd
[ 1290.719964] usb 1-1: New USB device found, idVendor=04e8, idProduct=6863
[ 1290.719973] usb 1-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[ 1290.719977] usb 1-1: Product: SAMSUNG_Android
[ 1290.719981] usb 1-1: Manufacturer: SAMSUNG
[ 1290.719984] usb 1-1: SerialNumber: d068730a
[ 1290.722251] rndis_host 1-1:1.0 usb0: register 'rndis_host' at usb-0000:00:14.0-1, RNDIS device, 02:57:00:57:38:37
[ 1291.255806] rndis_host 1-1:1.0 enp0s20u1: renamed from usb0
[ 1291.277892] IPv6: ADDRCONF(NETDEV_UP): enp0s20u1: link is not ready
[ 1870.316573] usb 1-1: USB disconnect, device number 9
[ 1870.316687] rndis_host 1-1:1.0 enp0s20u1: unregister 'rndis_host' usb-0000:00:14.0-1, RNDIS device
[ 1871.735777] usb 1-1: new high-speed USB device number 10 using xhci_hcd
[ 1871.865681] usb 1-1: New USB device found, idVendor=04e8, idProduct=6860
[ 1871.865687] usb 1-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[ 1871.865690] usb 1-1: Product: SAMSUNG_Android
[ 1871.865692] usb 1-1: Manufacturer: SAMSUNG
[ 1871.865694] usb 1-1: SerialNumber: d068730a
[ 2265.887618] usb 1-1: USB disconnect, device number 10
[ 2268.395967] usb 1-1: new high-speed USB device number 11 using xhci_hcd
[ 2268.524992] usb 1-1: New USB device found, idVendor=04e8, idProduct=6860
[ 2268.524998] usb 1-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[ 2268.525001] usb 1-1: Product: SAMSUNG_Android
[ 2268.525003] usb 1-1: Manufacturer: SAMSUNG
[ 2268.525005] usb 1-1: SerialNumber: d068730a
[ 2389.754208] usb 1-1: USB disconnect, device number 11
[ 2451.283233] usb 1-1: new high-speed USB device number 12 using xhci_hcd
[ 2451.412713] usb 1-1: New USB device found, idVendor=04e8, idProduct=6860
[ 2451.412719] usb 1-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[ 2451.412722] usb 1-1: Product: SAMSUNG_Android
[ 2451.412725] usb 1-1: Manufacturer: SAMSUNG
[ 2451.412727] usb 1-1: SerialNumber: d068730a
[ 4253.278282] usb 1-1: USB disconnect, device number 12
[ 4254.096939] usb 1-1: new high-speed USB device number 13 using xhci_hcd
[ 4259.392860] usb 1-1: new high-speed USB device number 14 using xhci_hcd
[ 4259.522162] usb 1-1: New USB device found, idVendor=04e8, idProduct=6860
[ 4259.522167] usb 1-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[ 4259.522170] usb 1-1: Product: SAMSUNG_Android
[ 4259.522173] usb 1-1: Manufacturer: SAMSUNG
[ 4259.522175] usb 1-1: SerialNumber: d068730a
[ 4259.731917] usb 1-1: USB disconnect, device number 14
[ 4260.068777] usb 1-1: new high-speed USB device number 15 using xhci_hcd
[ 4260.200384] usb 1-1: New USB device found, idVendor=04e8, idProduct=6860
[ 4260.200389] usb 1-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[ 4260.200392] usb 1-1: Product: SAMSUNG_Android
[ 4260.200395] usb 1-1: Manufacturer: SAMSUNG
[ 4260.200397] usb 1-1: SerialNumber: d068730a
[ 4487.825779] usb 1-1: USB disconnect, device number 15
[ 4488.457511] usb 1-1: new high-speed USB device number 16 using xhci_hcd
[ 4488.643676] usb 1-1: New USB device found, idVendor=04e8, idProduct=6860
[ 4488.643682] usb 1-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[ 4488.643685] usb 1-1: Product: SAMSUNG_Android
[ 4488.643687] usb 1-1: Manufacturer: SAMSUNG
[ 4488.643689] usb 1-1: SerialNumber: d068730a
[ 4507.592538] usb 1-1: USB disconnect, device number 16
[ 4507.929239] usb 1-1: new high-speed USB device number 17 using xhci_hcd
[ 4508.115547] usb 1-1: New USB device found, idVendor=04e8, idProduct=6860
[ 4508.115553] usb 1-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[ 4508.115556] usb 1-1: Product: SAMSUNG_Android
[ 4508.115558] usb 1-1: Manufacturer: SAMSUNG
[ 4508.115560] usb 1-1: SerialNumber: d068730a
Other proposals
Sneetsher. It works the first day. I will let you know how it works in the next week.
> sudo -i > sed 's/LABEL="libmtp_usb_rules"/LABEL="libmtp_usb_rules"\n\n#Masi, ignore my phone\nATTR{idVendor}=="04e8", ATTR{idProduct}=="6863", GOTO="libmtp_rules_end"/g' /lib/udev/rules.d/69-libmtp.rules | sudo tee /etc/udev/rules.d/69-libmtp.rules \ udevadm control --reload-rules # TODO for long time monitoring
Phone: Samsung Galaxy S4 gt-i9506 with Temasek's unofficial ROM of CyanogenMod 13 with sufficient patches
Ubuntu versions: 16.04
Linux kernel: 4.4 and 4.6
Linux kernel options: wl
Bash: 4.3.42(1)-release (x86_64-pc-linux-gnu)
Laptop: mid-2013 Macbook Air
USB: two USB3 ports (up to 5 Gbps) (here official specs)
Network card drivers: non-free broadcom-sta-dkms (see here)
VPN in phone: NordVPN US udp server
VPN in laptop when wifi connection with router-firewall: NordVPN EE udp server
- Support 1: negative change in the power state (-1%) is associated with notifications.
- Support 2: unstable internet connection uses significant amount of power (\Delta P = 1%).
- Support 3: VPN protected internet connection decreases significantly the amount of notifications.
dconf is the place to check in this situation.
For this you need to install dconf editor as follows:
To open dconf editor,
Press Alt + F2
or
go to Application > System Tools > dconf editor
Now in dconf editor, in sidebar
org > gnome > desktop > media-handling
Uncheck the automount-open option.
Following is the screen-shot of dconf-editor in 16.04:
CLI version of @Dhaval-Simaria's answer:
Note that Ubuntu comes with
gsettings
; it does not need to be installed.Edit for updated info: Since the error messages are reporting a failure to mount, try disabling automount:
You should look into udev rules. With them you can block one device without affecting any other USB devices. You can define your own udev rules by creating a file in
/etc/udev/rules.d/
, e.g./etc/udev/rules.d/51-block-phone-mount.rules
Now find the idVendor and idProduct of the device. Those are good to use since they are mostly unique to the product, so you can use them to identify the device in the udev rule.
List your USB devices using
lsusb
and get something like this:The relevant part is the Bus and the Device, e.g. Bus 004 and Device 003. With
sudo lsusb -vs 004:003 | grep -E 'idProduct|idVendor'
you will get the necessary information, e.g.:This means your
/etc/udev/rules.d/51-block-phone-mount.rules
would need the following inserted:You can try it instantly with just replugging the phone and checking if it works.
If you run Xubuntu this is really easy because it has a configuration panel to select automount behaviour. Just go to Settings > Hardware > Removable Drives and Media, then untick the relevant options:
Note: All command below need root power, so switch to root shell first using
sudo -i
orsudo su
. If you want to run directly withsudo <cmd>
, see When using sudo with redirection, I get 'permission denied'.Set udev rule for libmtpto ignore your phone model:
To roll back:
For all USB nodes
To roll back:
+Reboot
Here another method that do not require reboot.
Generate the unbind & bind scripts using this one:
As script
usb-ctrl-gen.sh
Or one line:
Example of output:
usb-unbind.sh
usb-bind.sh
Add usb-unbind.sh to
/etc/profile
to run on boot. Use usb-bind.sh to enable USB controller whenever needed.To role back:
Reference: How do you reset a USB device from the command line?
I have a similar issue with a one plus one that has a slightly iffy usb socket , this makes it fire up a nautilus window every 5 mins or so.
The most effective way i found to prevent this was to make udev ignore it completely by matching the usb vendor and model id then setting the device to unauthorized mode. This way you specifically prevent this device from triggering anything further upstream such as automounting without affecting anything else.
how to do the udev blacklist https://projectgus.com/2014/09/blacklisting-a-single-usb-device-from-linux/
a guide for samsung phones http://blog.vacs.fr/vacs/blogs/post.html?post=2010/12/24/How-to-repair-the-USB-not-detected-problem-on-Android-Samsung-phones