When you connect a USB device to a Linux computer, the kernel will automatically detect it and create a device file in
Linux assigns device names sequentially to hotplug hardware. Usually, your device will get the same name each time you
connect it or boot your computer, but sometimes the name may change. For this reason, disks and partitions are
typically referenced by UUID and not by device path any more. For our purposes dealing with USB serial adapters, the
assigned device name is typically /dev/ttyUSB0. However, if you have more than adapter the device names may not
always be consistent. Therefore, it is a good idea to create a udev rule to provide an alias for your device.
The example below assumes Debian or Ubuntu as the distribution, but it should be similar for others.
First, we need to collect some identifiers for the device we want to alias. In a shell, run the usb-devices command.
$ usb-devices
This will enumerate all of the USB devices connected to your computer (including internal USB hubs). In our example,
we're looking for Actisense devices. Write down the Vendor, ProdId and SerialNumber values for each of your
devices.
Then, in your favorite text editor, create a file in /etc/udev/rules.d/ called 90-actisense.rules. The 90 ensures
that it processed after other udev rules.
The contents of the file should be:
SUBSYSTEMS=="usb", ATTRS{idVendor}=="0403", ATTRS{idProduct}=="d9aa", ATTRS{serial}=="1B091", SYMLINK+="actisense"
Replace 0403 with the value you wrote down for Vendor (if you are working with and Actisense device, it will likely
be the same). Replace d9aa with the value you wrote down for ProdId and replace 1B091 with the value you wrote
down for SerialNumber. The last change is to give your symlink a name. In the example above it is actisense, but
you can call it whatever you want (without spaces or filesystems-reserved characters like /). Let's say you have two
USG-1 devices, one for the autopilot and one for your VHF radio. You might want to name these devices autopilot and
vhf. Then they would be available at /dev/autopilot and /dev/vhf respectively.
You can specify multiple rules in one file, one rule per line:
SUBSYSTEMS=="usb", ATTRS{idVendor}=="0403", ATTRS{idProduct}=="d9aa", ATTRS{serial}=="1B091", SYMLINK+="autopilot"
SUBSYSTEMS=="usb", ATTRS{idVendor}=="0403", ATTRS{idProduct}=="d9aa", ATTRS{serial}=="1B094", SYMLINK+="vhf"
After creating this file, disconnect your devices and plug them back in. You should see the new entries under /dev.
If not, reboot.