AnsweredAssumed Answered

Device Node Not Created

Question asked by kwhershey on Oct 5, 2017
Latest reply on Feb 1, 2018 by slinghui

I am trying to connect a new device (Keysight U2722A) and it does not appear in /dev. I have tried this in Ubuntu, Fedora, and openSuse, all with the same results. Currently working in Fedora. When I plug it in, I can see it appear in:

dmesg:

[58451.072367] usb 3-2.4.2: new high-speed USB device number 11 using xhci_hcd [58451.287716] usb 3-2.4.2: New USB device found, idVendor=0957, idProduct=4218 [58451.287720] usb 3-2.4.2: New USB device strings: Mfr=1, Product=2, SerialNumber=3 [58451.287722] usb 3-2.4.2: Product: Agilent U2722A/U2723A [58451.287724] usb 3-2.4.2: Manufacturer: Agilent Technologies [58451.287725] usb 3-2.4.2: SerialNumber: MY57070005

journalctl -fe

Oct 05 09:36:47 geronto kernel: usb 3-2.4.4: new high-speed USB device number 10 using xhci_hcd Oct 05 09:36:48 geronto kernel: usb 3-2.4.4: New USB device found, idVendor=0957, idProduct=4218 Oct 05 09:36:48 geronto kernel: usb 3-2.4.4: New USB device strings: Mfr=1, Product=2, SerialNumber=3 Oct 05 09:36:48 geronto kernel: usb 3-2.4.4: Product: Agilent U2722A/U2723A Oct 05 09:36:48 geronto kernel: usb 3-2.4.4: Manufacturer: Agilent Technologies Oct 05 09:36:48 geronto kernel: usb 3-2.4.4: SerialNumber: MY57230002 Oct 05 09:36:48 geronto mtp-probe[4578]: checking bus 3, device 10: "/sys/devices/pci0000:00/0000:00:07.1/0000:24:00.3/usb3/3-2/3-2.4/3-2.4.4" Oct 05 09:36:48 geronto mtp-probe[4578]: bus: 3, device: 10 was not an MTP device

However, there is no change in the /dev directory. My understanding is this should appear as a usbtmc device. In fact, Keysight has a page for usbtmc devices (here). However, this page is out of date and the link to the driver no longer works. I assume this is because the built in linux driver handles all of this now? I have also tried to find the device using the National Instruments VISA library, which does not work.

I think if there is a device node, I should be able to communicate with it. That led me to writing a udev rule. I wrote the following rules:

ATTR{idVendor}=="0957", ATTR{serial}=="MY57070005", SYMLINK+="keysight0" ATTR{idVendor}=="0957", ATTR{serial}=="MY57230002", SYMLINK+="keysight1" ATTR{idVendor}=="05e6", ATTR{serial}=="4022588", SYMLINK+="keithley"

The first 2 rules are for the devices of interest. The third is for a device that is properly recognized (my control to see if I made the rules correctly). These recognize the devices and populate the devices in /dev. However, these links do not seem to work to control the devices, even for the keithley, which has a proper usbtmc device that can be used and the same commands do work with the usbtmc device. I think there is something wrong with my rules. I can investigate the devices:

> udevadm info -n /dev/keysight0 P: /devices/pci0000:00/0000:00:07.1/0000:24:00.3/usb3/3-2/3-2.4/3-2.4.2 N: bus/usb/003/011 S: keysight0 E: BUSNUM=003 E: DEVLINKS=/dev/keysight0 E: DEVNAME=/dev/bus/usb/003/011 E: DEVNUM=011 E: DEVPATH=/devices/pci0000:00/0000:00:07.1/0000:24:00.3/usb3/3-2/3-2.4/3-2.4.2 E: DEVTYPE=usb_device E: DRIVER=usb E: ID_BUS=usb E: ID_MODEL=Agilent_U2722A_U2723A E: ID_MODEL_ENC=Agilent\x20U2722A\x2fU2723A E: ID_MODEL_ID=4218 E: ID_REVISION=1111 E: ID_SERIAL=Agilent_Technologies_Agilent_U2722A_U2723A_MY57070005 E: ID_SERIAL_SHORT=MY57070005 E: ID_USB_INTERFACES=:000000: E: ID_VENDOR=Agilent_Technologies E: ID_VENDOR_ENC=Agilent\x20Technologies E: ID_VENDOR_FROM_DATABASE=Agilent Technologies, Inc. E: ID_VENDOR_ID=0957 E: MAJOR=189 E: MINOR=266 E: PRODUCT=957/4218/1111 E: SUBSYSTEM=usb E: TYPE=0/0/0 E: USEC_INITIALIZED=58451223677

I believe that the issue may be in DEVNAME=/dev/bus/usb/003/011. Am I allowed to connect using a symlink? Is the root of the issue that I don't have it connected to a 'proper device node' like usbtmc0? The keithley has a usbtmc0 node, but the rule is not linking it to that, but to a bus address as well when I create the symlink. That makes me believe that there is something wrong with my rule?

Thank you!

Outcomes