Bluetooth device causes disk to unmount | PageFlip Firefly

In dmesg when I mount the microSD card, this messages show up:

[ 6736.205209] pcieport 0000:00:1c.4: Intel SPT PCH root port ACS workaround enabled
[ 6736.575571] mmc0: cannot verify signal voltage switch
[ 6738.717896] EXT4-fs (dm-2): mounted filesystem with ordered data mode. Quota mode: none.
[6744.283290] mmc0: cannot verify signal voltage switch

but it works fine.
(The mmc0: cannot verify signal voltage switch sometimes shows up multiple times.)

As soon as I connect my Bluetooth page-turner (a device that simply emulates a keyboard and mouse) the following messages showing up in dmesg:

[ 5732.626386] hid-generic 0005:0A5C:8502.0013: unknown main item tag 0x0
[ 5732.626548] input: Premium Pedal Keyboard as /devices/pci0000:00/0000:00:14.0/usb1/1-6/1-6:1.0/bluetooth/hci0/hci0:7/0005:0A5C:8502.0013/input/input56
[ 5732.626934] input: Premium Pedal Mouse as /devices/pci0000:00/0000:00:14.0/usb1/1-6/1-6:1.0/bluetooth/hci0/hci0:7/0005:0A5C:8502.0013/input/input57
[ 5732.627046] input: Premium Pedal as /devices/pci0000:00/0000:00:14.0/usb1/1-6/1-6:1.0/bluetooth/hci0/hci0:7/0005:0A5C:8502.0013/input/input58
[ 5732.627207] hid-generic 0005:0A5C:8502.0013: input,hidraw8: BLUETOOTH HID v1.1b Keyboard [Premium Pedal] on 9c:b6:d0:94:28:02

and immediately after that I get:

[ 6406.641955] EXT4-fs (dm-2): unmounting filesystem.
[ 6406.653274] pcieport 0000:00:1c.4: Intel SPT PCH root port ACS workaround enabled
[ 6407.023496] mmc0: cannot verify signal voltage switch
[ 6407.263056]  mmcblk0: p1

and sometimes I get this instead:

[ 5735.718297] pcieport 0000:00:1c.4: Intel SPT PCH root port ACS workaround enabled
[ 5736.085271] mmc0: cannot verify signal voltage switch
[ 5736.279076] sdb: detected capacity change from 488374272 to 0

In both cases my SD card got unmounted.

When I mount the card again, the Bluetooth device stays connected and everythings works as expected with dmesg showing:

[ 6329.169995] pcieport 0000:00:1c.4: Intel SPT PCH root port ACS workaround enabled
[ 6329.552993] mmc0: cannot verify signal voltage switch
[ 6331.651586] EXT4-fs (dm-2): mounted filesystem with ordered data mode. Quota mode: none.
[ 6342.873166] mmc0: cannot verify signal voltage switch

But once my Bluetooth device disconnects and connects again, the SD card unmounts again…

lspci of my interal SD card reader:

03:00.0 Unassigned class [ff00]: Realtek Semiconductor Co., Ltd. RTS525A PCI Express Card Reader (rev 01)
	Subsystem: Dell Device 080d
	Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+
	Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
	Latency: 0
	Interrupt: pin A routed to IRQ 145
	IOMMU group: 14
	Region 1: Memory at ec300000 (32-bit, non-prefetchable) [size=4K]
	Capabilities: <access denied>
	Kernel driver in use: rtsx_pci
	Kernel modules: rtsx_pci

lsblk of the SD card after getting unmounted:

sdb                                             8:16   1     0B  0 disk  
mmcblk0                                       179:0    0 477.5G  0 disk  
└─mmcblk0p1                                   179:1    0 477.5G  0 part 

lsblk of the SD card after getting mounted again:

mmcblk0                                       179:0    0 477.5G  0 disk  
└─mmcblk0p1                                   179:1    0 477.5G  0 part  
  └─luks-d81eacbd-4426-4966-aee7-1fe4e8a290aa 253:2    0 477.5G  0 crypt /run/media/fedora/MicroSD

btmon reports the following when the device connects:
https://pastebin.com/WjfwP5eB (log is too long to post here directly)

But he unmounting (or to be more accurate, the eject icon that Gnome displays as a screen overlay, when it unmounts the SD card) happens roughly when these messages show up in btmon:

> ACL Data RX: Handle 11 flags 0x02 dlen 10                                                                                                                                                                                                                                                                                                                                                                                                                             #63 [hci0] 10.389123
      Channel: 65 len 6 [PSM 19 mode Basic (0x00)] {chan 1}
        a1 02 00 00 04 00                                ......          
> ACL Data RX: Handle 11 flags 0x02 dlen 10                                                                                                                                                                                                                                                                                                                                                                                                                             #64 [hci0] 10.390374
      Channel: 65 len 6 [PSM 19 mode Basic (0x00)] {chan 1}
        a1 02 00 00 00 00                                ......

Any ideas what could be the cause and how I can fix this? This doesn’t happen when other Bluetooth devices connect btw. (Tested with a Bluetooth mouse and Bluetooth headphones.)

You might have to separate the Bluetooth dongle and the SD card reader from the same USB hub.
The error message says something about voltage. This could be that an interruption causes to un-mount your drive.

Please make a lsusb in therminal and post it here.

lsusb:

Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 002: ID 0489:e0a2 Foxconn / Hon Hai 
Bus 001 Device 003: ID 27c6:5395 Shenzhen Goodix Technology Co.,Ltd. Fingerprint Reader
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

(My bluetooth dongle is internal (PCI). It’s the Qualcomm Atheros QCA6174 which doubles as a Wifi/Bluetooth device.)

lspci:

00:00.0 Host bridge: Intel Corporation Xeon E3-1200 v6/7th Gen Core Processor Host Bridge/DRAM Registers (rev 05)
00:01.0 PCI bridge: Intel Corporation 6th-10th Gen Core Processor PCIe Controller (x16) (rev 05)
00:02.0 VGA compatible controller: Intel Corporation HD Graphics 630 (rev 04)
00:04.0 Signal processing controller: Intel Corporation Xeon E3-1200 v5/E3-1500 v5/6th Gen Core Processor Thermal Subsystem (rev 05)
00:13.0 Non-VGA unclassified device: Intel Corporation 100 Series/C230 Series Chipset Family Integrated Sensor Hub (rev 31)
00:14.0 USB controller: Intel Corporation 100 Series/C230 Series Chipset Family USB 3.0 xHCI Controller (rev 31)
00:14.2 Signal processing controller: Intel Corporation 100 Series/C230 Series Chipset Family Thermal Subsystem (rev 31)
00:15.0 Signal processing controller: Intel Corporation 100 Series/C230 Series Chipset Family Serial IO I2C Controller #0 (rev 31)
00:15.1 Signal processing controller: Intel Corporation 100 Series/C230 Series Chipset Family Serial IO I2C Controller #1 (rev 31)
00:16.0 Communication controller: Intel Corporation 100 Series/C230 Series Chipset Family MEI Controller #1 (rev 31)
00:1c.0 PCI bridge: Intel Corporation 100 Series/C230 Series Chipset Family PCI Express Root Port #1 (rev f1)
00:1c.4 PCI bridge: Intel Corporation 100 Series/C230 Series Chipset Family PCI Express Root Port #5 (rev f1)
00:1d.0 PCI bridge: Intel Corporation 100 Series/C230 Series Chipset Family PCI Express Root Port #9 (rev f1)
00:1d.4 PCI bridge: Intel Corporation 100 Series/C230 Series Chipset Family PCI Express Root Port #13 (rev f1)
00:1f.0 ISA bridge: Intel Corporation QM175 Chipset LPC/eSPI Controller (rev 31)
00:1f.2 Memory controller: Intel Corporation 100 Series/C230 Series Chipset Family Power Management Controller (rev 31)
00:1f.3 Audio device: Intel Corporation CM238 HD Audio Controller (rev 31)
00:1f.4 SMBus: Intel Corporation 100 Series/C230 Series Chipset Family SMBus (rev 31)
01:00.0 Display controller: Advanced Micro Devices, Inc. [AMD/ATI] Polaris 22 XL [Radeon RX Vega M GL] (rev c0)
02:00.0 Network controller: Qualcomm Atheros QCA6174 802.11ac Wireless Network Adapter (rev 32)
03:00.0 Unassigned class [ff00]: Realtek Semiconductor Co., Ltd. RTS525A PCI Express Card Reader (rev 01)
6f:00.0 Non-Volatile memory controller: Samsung Electronics Co Ltd NVMe SSD Controller SM981/PM981/PM983
lspci -s 02:00.0 -vvvv
02:00.0 Network controller: Qualcomm Atheros QCA6174 802.11ac Wireless Network Adapter (rev 32)
	Subsystem: Rivet Networks Killer 1435 Wireless-AC
	Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+
	Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
	Latency: 0
	Interrupt: pin A routed to IRQ 154
	IOMMU group: 13
	Region 0: Memory at ec000000 (64-bit, non-prefetchable) [size=2M]
	Capabilities: [40] Power Management version 3
		Flags: PMEClk- DSI- D1- D2- AuxCurrent=375mA PME(D0+,D1-,D2-,D3hot+,D3cold+)
		Status: D0 NoSoftRst- PME-Enable- DSel=0 DScale=0 PME-
	Capabilities: [50] MSI: Enable+ Count=1/8 Maskable+ 64bit-
		Address: fee00338  Data: 0000
		Masking: 000000fe  Pending: 00000000
	Capabilities: [70] Express (v2) Endpoint, MSI 00
		DevCap:	MaxPayload 256 bytes, PhantFunc 0, Latency L0s unlimited, L1 <64us
			ExtTag- AttnBtn- AttnInd- PwrInd- RBE+ FLReset- SlotPowerLimit 10.000W
		DevCtl:	CorrErr- NonFatalErr- FatalErr- UnsupReq-
			RlxdOrd+ ExtTag- PhantFunc- AuxPwr- NoSnoop-
			MaxPayload 256 bytes, MaxReadReq 512 bytes
		DevSta:	CorrErr+ NonFatalErr- FatalErr- UnsupReq+ AuxPwr+ TransPend-
		LnkCap:	Port #0, Speed 2.5GT/s, Width x1, ASPM L0s L1, Exit Latency L0s <4us, L1 <64us
			ClockPM+ Surprise- LLActRep- BwNot- ASPMOptComp+
		LnkCtl:	ASPM L1 Enabled; RCB 64 bytes, Disabled- CommClk+
			ExtSynch- ClockPM+ AutWidDis- BWInt- AutBWInt-
		LnkSta:	Speed 2.5GT/s (ok), Width x1 (ok)
			TrErr- Train- SlotClk+ DLActive- BWMgmt- ABWMgmt-
		DevCap2: Completion Timeout: Not Supported, TimeoutDis+ NROPrPrP- LTR+
			 10BitTagComp- 10BitTagReq- OBFF Via message, ExtFmt- EETLPPrefix-
			 EmergencyPowerReduction Not Supported, EmergencyPowerReductionInit-
			 FRS- TPHComp- ExtTPHComp-
			 AtomicOpsCap: 32bit- 64bit- 128bitCAS-
		DevCtl2: Completion Timeout: 50us to 50ms, TimeoutDis- LTR+ OBFF Disabled,
			 AtomicOpsCtl: ReqEn-
		LnkCap2: Supported Link Speeds: 2.5GT/s, Crosslink- Retimer- 2Retimers- DRS-
		LnkCtl2: Target Link Speed: 2.5GT/s, EnterCompliance- SpeedDis-
			 Transmit Margin: Normal Operating Range, EnterModifiedCompliance- ComplianceSOS-
			 Compliance De-emphasis: -6dB
		LnkSta2: Current De-emphasis Level: -6dB, EqualizationComplete- EqualizationPhase1-
			 EqualizationPhase2- EqualizationPhase3- LinkEqualizationRequest-
			 Retimer- 2Retimers- CrosslinkRes: unsupported
	Capabilities: [100 v2] Advanced Error Reporting
		UESta:	DLP- SDES- TLP- FCP- CmpltTO- CmpltAbrt- UnxCmplt- RxOF- MalfTLP- ECRC- UnsupReq- ACSViol-
		UEMsk:	DLP- SDES- TLP- FCP- CmpltTO- CmpltAbrt- UnxCmplt- RxOF- MalfTLP- ECRC- UnsupReq- ACSViol-
		UESvrt:	DLP+ SDES+ TLP- FCP+ CmpltTO- CmpltAbrt- UnxCmplt- RxOF+ MalfTLP+ ECRC- UnsupReq- ACSViol-
		CESta:	RxErr- BadTLP- BadDLLP- Rollover- Timeout- AdvNonFatalErr+
		CEMsk:	RxErr- BadTLP- BadDLLP- Rollover- Timeout- AdvNonFatalErr+
		AERCap:	First Error Pointer: 00, ECRCGenCap- ECRCGenEn- ECRCChkCap- ECRCChkEn-
			MultHdrRecCap- MultHdrRecEn- TLPPfxPres- HdrLogCap-
		HeaderLog: 00000000 00000000 00000000 00000000
	Capabilities: [148 v1] Virtual Channel
		Caps:	LPEVC=0 RefClk=100ns PATEntryBits=1
		Arb:	Fixed- WRR32- WRR64- WRR128-
		Ctrl:	ArbSelect=Fixed
		Status:	InProgress-
		VC0:	Caps:	PATOffset=00 MaxTimeSlots=1 RejSnoopTrans-
			Arb:	Fixed- WRR32- WRR64- WRR128- TWRR128- WRR256-
			Ctrl:	Enable+ ID=0 ArbSelect=Fixed TC/VC=ff
			Status:	NegoPending- InProgress-
	Capabilities: [168 v1] Device Serial Number 00-00-00-00-00-00-00-00
	Capabilities: [178 v1] Latency Tolerance Reporting
		Max snoop latency: 3145728ns
		Max no snoop latency: 3145728ns
	Capabilities: [180 v1] L1 PM Substates
		L1SubCap: PCI-PM_L1.2+ PCI-PM_L1.1+ ASPM_L1.2+ ASPM_L1.1+ L1_PM_Substates+
			  PortCommonModeRestoreTime=50us PortTPowerOnTime=10us
		L1SubCtl1: PCI-PM_L1.2+ PCI-PM_L1.1+ ASPM_L1.2+ ASPM_L1.1+
			   T_CommonMode=0us LTR1.2_Threshold=98304ns
		L1SubCtl2: T_PwrOn=60us
	Kernel driver in use: ath10k_pci
	Kernel modules: ath10k_pci

$ lspci -s 03:00.0 -vvvv
03:00.0 Unassigned class [ff00]: Realtek Semiconductor Co., Ltd. RTS525A PCI Express Card Reader (rev 01)
	Subsystem: Dell Device 080d
	Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+
	Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
	Latency: 0
	Interrupt: pin A routed to IRQ 132
	IOMMU group: 14
	Region 1: Memory at ec300000 (32-bit, non-prefetchable) [size=4K]
	Capabilities: [80] Power Management version 3
		Flags: PMEClk- DSI- D1+ D2+ AuxCurrent=375mA PME(D0-,D1+,D2+,D3hot+,D3cold+)
		Status: D3 NoSoftRst- PME-Enable+ DSel=0 DScale=0 PME-
	Capabilities: [90] MSI: Enable+ Count=1/1 Maskable- 64bit+
		Address: 00000000fee003d8  Data: 0000
	Capabilities: [b0] Express (v2) Endpoint, MSI 00
		DevCap:	MaxPayload 512 bytes, PhantFunc 0, Latency L0s unlimited, L1 unlimited
			ExtTag- AttnBtn- AttnInd- PwrInd- RBE+ FLReset- SlotPowerLimit 10.000W
		DevCtl:	CorrErr- NonFatalErr- FatalErr- UnsupReq-
			RlxdOrd+ ExtTag- PhantFunc- AuxPwr- NoSnoop-
			MaxPayload 256 bytes, MaxReadReq 512 bytes
		DevSta:	CorrErr+ NonFatalErr- FatalErr- UnsupReq+ AuxPwr+ TransPend-
		LnkCap:	Port #0, Speed 5GT/s, Width x1, ASPM L0s L1, Exit Latency L0s unlimited, L1 <64us
			ClockPM+ Surprise- LLActRep- BwNot- ASPMOptComp+
		LnkCtl:	ASPM L1 Enabled; RCB 64 bytes, Disabled- CommClk+
			ExtSynch- ClockPM+ AutWidDis- BWInt- AutBWInt-
		LnkSta:	Speed 5GT/s (ok), Width x1 (ok)
			TrErr- Train- SlotClk+ DLActive- BWMgmt- ABWMgmt-
		DevCap2: Completion Timeout: Not Supported, TimeoutDis+ NROPrPrP- LTR+
			 10BitTagComp- 10BitTagReq- OBFF Via message/WAKE#, ExtFmt- EETLPPrefix-
			 EmergencyPowerReduction Not Supported, EmergencyPowerReductionInit-
			 FRS- TPHComp- ExtTPHComp-
			 AtomicOpsCap: 32bit- 64bit- 128bitCAS-
		DevCtl2: Completion Timeout: 50us to 50ms, TimeoutDis- LTR+ OBFF Disabled,
			 AtomicOpsCtl: ReqEn-
		LnkCap2: Supported Link Speeds: 2.5-5GT/s, Crosslink- Retimer- 2Retimers- DRS-
		LnkCtl2: Target Link Speed: 5GT/s, EnterCompliance- SpeedDis-
			 Transmit Margin: Normal Operating Range, EnterModifiedCompliance- ComplianceSOS-
			 Compliance De-emphasis: -6dB
		LnkSta2: Current De-emphasis Level: -6dB, EqualizationComplete- EqualizationPhase1-
			 EqualizationPhase2- EqualizationPhase3- LinkEqualizationRequest-
			 Retimer- 2Retimers- CrosslinkRes: unsupported
	Capabilities: [100 v2] Advanced Error Reporting
		UESta:	DLP- SDES- TLP- FCP- CmpltTO- CmpltAbrt- UnxCmplt- RxOF- MalfTLP- ECRC- UnsupReq- ACSViol-
		UEMsk:	DLP- SDES- TLP- FCP- CmpltTO- CmpltAbrt- UnxCmplt- RxOF- MalfTLP- ECRC- UnsupReq- ACSViol-
		UESvrt:	DLP+ SDES+ TLP- FCP+ CmpltTO- CmpltAbrt- UnxCmplt- RxOF+ MalfTLP+ ECRC- UnsupReq- ACSViol-
		CESta:	RxErr- BadTLP- BadDLLP- Rollover- Timeout- AdvNonFatalErr+
		CEMsk:	RxErr- BadTLP- BadDLLP- Rollover- Timeout- AdvNonFatalErr+
		AERCap:	First Error Pointer: 00, ECRCGenCap+ ECRCGenEn- ECRCChkCap+ ECRCChkEn-
			MultHdrRecCap- MultHdrRecEn- TLPPfxPres- HdrLogCap-
		HeaderLog: 00000000 00000000 00000000 00000000
	Capabilities: [148 v1] Device Serial Number 00-00-00-01-00-4c-e0-00
	Capabilities: [158 v1] Latency Tolerance Reporting
		Max snoop latency: 3145728ns
		Max no snoop latency: 3145728ns
	Capabilities: [160 v1] L1 PM Substates
		L1SubCap: PCI-PM_L1.2+ PCI-PM_L1.1+ ASPM_L1.2+ ASPM_L1.1+ L1_PM_Substates+
			  PortCommonModeRestoreTime=60us PortTPowerOnTime=60us
		L1SubCtl1: PCI-PM_L1.2+ PCI-PM_L1.1+ ASPM_L1.2+ ASPM_L1.1+
			   T_CommonMode=0us LTR1.2_Threshold=98304ns
		L1SubCtl2: T_PwrOn=60us
	Kernel driver in use: rtsx_pci
	Kernel modules: rtsx_pci

bluetoothctl controller information:

Controller ... (public)
	Name: fedora
	Alias: fedora
	Class: 0x006c0000
	Powered: yes
	Discoverable: no
	DiscoverableTimeout: 0x000000b4
	Pairable: yes
	UUID: A/V Remote Control        (0000110e-0000-1000-8000-00805f9b34fb)
	UUID: Handsfree Audio Gateway   (0000111f-0000-1000-8000-00805f9b34fb)
	UUID: PnP Information           (00001200-0000-1000-8000-00805f9b34fb)
	UUID: Audio Sink                (0000110b-0000-1000-8000-00805f9b34fb)
	UUID: Headset                   (00001108-0000-1000-8000-00805f9b34fb)
	UUID: A/V Remote Control Target (0000110c-0000-1000-8000-00805f9b34fb)
	UUID: Generic Access Profile    (00001800-0000-1000-8000-00805f9b34fb)
	UUID: Audio Source              (0000110a-0000-1000-8000-00805f9b34fb)
	UUID: Generic Attribute Profile (00001801-0000-1000-8000-00805f9b34fb)
	UUID: Device Information        (0000180a-0000-1000-8000-00805f9b34fb)
	Modalias: usb:v1D6Bp0246d0541
	Discovering: no
	Roles: central
	Roles: peripheral
Advertising Features:
	ActiveInstances: 0x00 (0)
	SupportedInstances: 0x05 (5)
	SupportedIncludes: tx-power
	SupportedIncludes: appearance
	SupportedIncludes: local-name

My device is a notebook btw.

Searching in internet gave me this result:
https://github.com/baptiste-dauphin/documentation/issues/4

or this:

who endet up being a broken SD device

I just tried it with 3 different microSD cards. They all get unmounted every time my Bluetooth device connects.

Hardware also can have defects. As the googled links show also the reader could have a problem.

Would be nice to get a overview of your hardware. I still not really understand whats external and what is internal.

Bus 001 Device 002: ID 0489:e0a2 Foxconn / Hon Hai
I could not identify this?

I tried a different card reader now. A USB card reader. I tested it on every USB I have and I get the same result every time.

When I have 2 sd cards connected (one in the internal card reader and one in the USB card reader), only the internal SD card gets unmounted.

I always get this eject logo displayed as an overlay when the bluetooth device connects btw:

and I even get this when the SD card is unmounted already.

Is it maybe possible that the Bluetooth device is sending some sort of keyboard shortcut that causes this, every time it connects?

Other than the external USB card reader that i just used for the first time a minute ago, there are not other external devices.
Looking up the Foxconn / Hon Hai I think that this might actually be the internal Bluetooth dongle. My system detects only one Bluetooth controller though, so maybe the one in the PCI Wifi card has its Bluetooth disabled.

EDIT:

I just tried an external USB Bluetooth dongle and disabled the internal one and I get the exact same behavior.

I’m really srtarting to think that the Bluetooth page-turner is triggering some hidden Gnome shortcut that unmounts the first SD card.

I propose you check for all your hardware if there are firmware updates, update them and test older Kernel version. If Error of mmc0: cannot verify signal voltage switch happens again and again, you have to remove/replace this defective hardware to get peace again.

But I get this error all the time and everything works fine. It’s only when a specific Bluetooth device connects that the card gets unmounted. I doubt that this error is related to my particular issue.

Ok, no problem then. I just tried to show you that the error message indicates a hardware issue.
If you upgrade firmware and test the older kernel versions you can exclude driver issues.

On the hidden shortcuts I can not say nothing, because i do not own a page turner and would have to test it on my own. You might be tell us the exact model and brand name so we can add it to the title to attract users who use the same/similar hardware as you.

I managed to correlate these packages to a key press event. The key being emitted is the Media Eject key that is not present on most keyboards. The code of that key is a1 (hex) or 161 (dec).
I managed to capture that key press event using evtest:

Event: time 1676817608.554591, type 17 (EV_LED), code 0 (LED_NUML), value 0
Event: time 1676817608.554591, type 4 (EV_MSC), code 4 (MSC_SCAN), value c00b8
Event: time 1676817608.554591, type 1 (EV_KEY), code 161 (KEY_EJECTCD), value 1
Event: time 1676817608.554591, -------------- SYN_REPORT ------------
Event: time 1676817608.555828, type 4 (EV_MSC), code 4 (MSC_SCAN), value c00b8
Event: time 1676817608.555828, type 1 (EV_KEY), code 161 (KEY_EJECTCD), value 0
Event: time 1676817608.555828, -------------- SYN_REPORT ------------

Further I am now able to reproduce the issue without the Bluetooth device:

This python script will it:

import time
import uinput

with uinput.Device([uinput.KEY_EJECTCD]) as device:
    time.sleep(1)
    device.emit_click(uinput.KEY_EJECTCD)

sudo modprobe uinput might be required for it to work and sudo pip install python-uinput as well.

Anyway, I assume this is a firmware bug.

The page turner is a PageFlip Firefly btw:

What can I do to prevent my system from unmounting my SD card when it receives the eject key stroke?

EDIT:

I tried adding a new custom shortcut in Gnome for that key in order to override it, but that didn’t help unfortunately… I also couldn’t find any other existing Gnome shortcuts that correspond to the Eject key.

Ejecting a CD this explains the un-mount.

You might have to use their software to configure this behavior:

There is no option in the software to enable or disable that. It’S a firmware bug as far as I can tell.

Report it then with the Support email. They might have a answer ready.

I already have, but my experience with them is that they never reply…
So I’d really like to find a workaround on the linux side to disable that behavior of unmounting my SD card when that key is pressed.

1 Like