User Tools

Site Tools


howto:udev_rules_for_consistent_device_naming

Udev Rules for Consistent Device Naming

This entire page applies only to Linux systems.

Determine the manufacturer and product description strings reported by your devices using lsusb -v

Create a new file 10-fldigi.rules in the directory /etc/udev/rules.d and enter rules which use device identification strings to create a consistent device name:

#Silicon Labs West Mountain Radio (WMR) RIGblaster Plug & Play

SUBSYSTEM=="tty", SYSFS{manufacturer}=="Silicon Labs", SYSFS{product}=="WMR RIGblaster plug & play",   TEST!="/dev/rigblaster", SYMLINK+="rigblaster"

SUBSYSTEM=="tty", SYSFS{manufacturer}=="Silicon Labs", SYSFS{product}=="WMR RIGblaster plug & play",   TEST=="/dev/rigblaster", SYMLINK+="rigblaster%n"

# Prolific Technology Inc. USB-Serial Controller

SUBSYSTEM=="tty", SYSFS{manufacturer}=="Prolific Technology Inc.", SYSFS{product}=="USB-Serial Controller", TEST!="/dev/usbserial", SYMLINK+="usbserial"

SUBSYSTEM=="tty", SYSFS{manufacturer}=="Prolific Technology Inc.", SYSFS{product}=="USB-Serial Controller", TEST=="/dev/usbserial", SYMLINK+="usbserial%n"

N.B. the double udev rules support multiple devices being plugged in and only the first device instance having the unadorned device name.

If you have been using 10-fldigi.rules, udev versions 148 and later emit boot-time warnings which look like:

SYSFS{}= will be removed in a future udev version, please use ATTR{}= to match the event device
ATTRS{}= to match a parent device, in 10-fldigi.rules

For udev versions 148 or later (openSUSE 11.4 has version 166), remove 10-fldigi.rules from /etc/udev/rules.d, then use these rules in 91-fldigi.rules:

SUBSYSTEM!="tty",GOTO="fldigi_end"

# 10c4:814a Cygnal Integrated Products, Inc. - West Mountain Radio (WMR) RIGblaster Plug & Play
ATTRS{idVendor}=="10c4", ATTRS{product}=="WMR RIGblaster plug & play", TEST!="/dev/rigblaster", SYMLINK+="rigblaster"
ATTRS{idVendor}=="10c4", ATTRS{product}=="WMR RIGblaster plug & play", TEST=="/dev/rigblaster", SYMLINK+="rigblaster%n"

# 067b:2303 Prolific Technology Inc. USB-Serial Controller
ATTRS{idVendor}=="067b", ATTRS{product}=="USB-Serial Controller", TEST!="/dev/usbserial", SYMLINK+="usbserial"
ATTRS{idVendor}=="067b", ATTRS{product}=="USB-Serial Controller", TEST=="/dev/usbserial", SYMLINK+="usbserial%n"

LABEL="fldigi_end"

N.B. To determine attribute strings for your devices use:

udevadm info -q path -n ttyUSB[x] --attribute-walk

(where [x]==0,1,2,etc.)

howto/udev_rules_for_consistent_device_naming.txt ยท Last modified: 2017/07/11 03:06 by m0ift