astroberry@astroberry:~$ udevadm info -a /dev/EQMOUNT Udevadm info starts with the device specified by the devpath and then walks up the chain of parent devices. It prints for every device found, all possible attributes in the udev rules key format. A rule to match, can be composed by the attributes of the device and the attributes from one single parent device. looking at device '/devices/platform/soc/3f980000.usb/usb1/1-1/1-1.2/1-1.2:1.0/tty/ttyACM0': KERNEL=="ttyACM0" SUBSYSTEM=="tty" DRIVER=="" looking at parent device '/devices/platform/soc/3f980000.usb/usb1/1-1/1-1.2/1-1.2:1.0': KERNELS=="1-1.2:1.0" SUBSYSTEMS=="usb" DRIVERS=="cdc_acm" ATTRS{bInterfaceNumber}=="00" ATTRS{bAlternateSetting}==" 0" ATTRS{authorized}=="1" ATTRS{bInterfaceSubClass}=="02" ATTRS{bmCapabilities}=="2" ATTRS{supports_autosuspend}=="1" ATTRS{bNumEndpoints}=="01" ATTRS{bInterfaceProtocol}=="01" ATTRS{bInterfaceClass}=="02" looking at parent device '/devices/platform/soc/3f980000.usb/usb1/1-1/1-1.2': KERNELS=="1-1.2" SUBSYSTEMS=="usb" DRIVERS=="usb" ATTRS{idProduct}=="000a" ATTRS{version}==" 2.00" ATTRS{bcdDevice}=="0100" ATTRS{idVendor}=="04d8" ATTRS{bDeviceClass}=="02" ATTRS{removable}=="removable" ATTRS{speed}=="12" ATTRS{bNumConfigurations}=="1" ATTRS{configuration}=="" ATTRS{bMaxPower}=="100mA" ATTRS{manufacturer}=="Tom Carpenter - AstroEQ " ATTRS{urbnum}=="95" ATTRS{devnum}=="4" ATTRS{bNumInterfaces}==" 2" ATTRS{avoid_reset_quirk}=="0" ATTRS{bMaxPacketSize0}=="8" ATTRS{authorized}=="1" ATTRS{quirks}=="0x0" ATTRS{bDeviceProtocol}=="00" ATTRS{devpath}=="1.2" ATTRS{busnum}=="1" ATTRS{maxchild}=="0" ATTRS{product}=="AstroEQ Mount Controller " ATTRS{devspec}==" (null)" ATTRS{ltm_capable}=="no" ATTRS{bmAttributes}=="c0" ATTRS{bConfigurationValue}=="1" ATTRS{bDeviceSubClass}=="00" looking at parent device '/devices/platform/soc/3f980000.usb/usb1/1-1': KERNELS=="1-1" SUBSYSTEMS=="usb" DRIVERS=="usb" ATTRS{bNumConfigurations}=="1" ATTRS{version}==" 2.00" ATTRS{devnum}=="2" ATTRS{bMaxPower}=="2mA" ATTRS{devpath}=="1" ATTRS{avoid_reset_quirk}=="0" ATTRS{authorized}=="1" ATTRS{bDeviceSubClass}=="00" ATTRS{idVendor}=="0424" ATTRS{bcdDevice}=="0bb3" ATTRS{maxchild}=="4" ATTRS{ltm_capable}=="no" ATTRS{idProduct}=="2514" ATTRS{bDeviceProtocol}=="02" ATTRS{removable}=="unknown" ATTRS{bNumInterfaces}==" 1" ATTRS{bConfigurationValue}=="1" ATTRS{configuration}=="" ATTRS{bmAttributes}=="e0" ATTRS{busnum}=="1" ATTRS{bDeviceClass}=="09" ATTRS{urbnum}=="37" ATTRS{bMaxPacketSize0}=="64" ATTRS{speed}=="480" ATTRS{quirks}=="0x0" looking at parent device '/devices/platform/soc/3f980000.usb/usb1': KERNELS=="usb1" SUBSYSTEMS=="usb" DRIVERS=="usb" ATTRS{bDeviceProtocol}=="01" ATTRS{product}=="DWC OTG Controller" ATTRS{authorized_default}=="1" ATTRS{bMaxPower}=="0mA" ATTRS{bNumConfigurations}=="1" ATTRS{devnum}=="1" ATTRS{quirks}=="0x0" ATTRS{serial}=="3f980000.usb" ATTRS{idProduct}=="0002" ATTRS{urbnum}=="25" ATTRS{bNumInterfaces}==" 1" ATTRS{busnum}=="1" ATTRS{manufacturer}=="Linux 4.14.78-v7+ dwc_otg_hcd" ATTRS{avoid_reset_quirk}=="0" ATTRS{interface_authorized_default}=="1" ATTRS{speed}=="480" ATTRS{configuration}=="" ATTRS{authorized}=="1" ATTRS{ltm_capable}=="no" ATTRS{bDeviceSubClass}=="00" ATTRS{bmAttributes}=="e0" ATTRS{bDeviceClass}=="09" ATTRS{bMaxPacketSize0}=="64" ATTRS{idVendor}=="1d6b" ATTRS{maxchild}=="1" ATTRS{bcdDevice}=="0414" ATTRS{devpath}=="0" ATTRS{removable}=="unknown" ATTRS{bConfigurationValue}=="1" ATTRS{version}==" 2.00" looking at parent device '/devices/platform/soc/3f980000.usb': KERNELS=="3f980000.usb" SUBSYSTEMS=="platform" DRIVERS=="dwc_otg" ATTRS{buspower}=="Bus Power = 0x1" ATTRS{enumspeed}=="Device Enumeration Speed = 0x1" ATTRS{devspeed}=="Device Speed = 0x0" ATTRS{guid}=="GUID = 0x2708a000" ATTRS{fr_interval}=="Frame Interval = 0x1d4b" ATTRS{remote_wakeup}=="Remote Wakeup Sig = 0 Enabled = 0 LPM Remote Wakeup = 0" ATTRS{gotgctl}=="GOTGCTL = 0x001c0001" ATTRS{hprt0}=="HPRT0 = 0x00001405" ATTRS{gsnpsid}=="GSNPSID = 0x4f54280a" ATTRS{gusbcfg}=="GUSBCFG = 0x20001700" ATTRS{hsic_connect}=="HSIC Connect = 0x1" ATTRS{gnptxfsiz}=="GNPTXFSIZ = 0x01000306" ATTRS{rd_reg_test}=="Time to read GNPTXFSIZ reg 10000000 times: 880 msecs (88 jiffies)" ATTRS{srpcapable}=="SRPCapable = 0x1" ATTRS{driver_override}=="(null)" ATTRS{wr_reg_test}=="Time to write GNPTXFSIZ reg 10000000 times: 310 msecs (31 jiffies)" ATTRS{mode}=="Mode = 0x1" ATTRS{hnpcapable}=="HNPCapable = 0x1" ATTRS{regoffset}=="0xffffffff" ATTRS{busconnected}=="Bus Connected = 0x1" ATTRS{gpvndctl}=="GPVNDCTL = 0x00000000" ATTRS{rem_wakeup_pwrdn}=="" ATTRS{bussuspend}=="Bus Suspend = 0x0" ATTRS{hnp}=="HstNegScs = 0x0" ATTRS{hptxfsiz}=="HPTXFSIZ = 0x02000406" ATTRS{srp}=="SesReqScs = 0x1" ATTRS{grxfsiz}=="GRXFSIZ = 0x00000306" ATTRS{regvalue}=="invalid offset" ATTRS{mode_ch_tim_en}=="Mode Change Ready Timer Enable = 0x0" ATTRS{ggpio}=="GGPIO = 0x00000000" ATTRS{spramdump}=="SPRAM Dump" ATTRS{inv_sel_hsic}=="Invert Select HSIC = 0x0" ATTRS{hcd_frrem}=="HCD Dump Frame Remaining" ATTRS{regdump}=="Register Dump" ATTRS{hcddump}=="HCD Dump" looking at parent device '/devices/platform/soc': KERNELS=="soc" SUBSYSTEMS=="platform" DRIVERS=="" ATTRS{driver_override}=="(null)" looking at parent device '/devices/platform': KERNELS=="platform" SUBSYSTEMS=="" DRIVERS==""