# Why won't Freebsd make a device entry for my USB device?



## osx-addict (Mar 4, 2010)

I've got a USB device that when plugged into FreeBSD 7.1 gets the following :

```
Mar  3 22:22:52 srv1 root: Unknown USB device: vendor 0x101e product 0x0005 bus uhub0
Mar  3 22:22:52 srv1 kernel: ugen0: <Fronius Datalogger, class 0/0, rev 1.10/2.00, addr 3> on uhub0
```

Notice the <addr 3> portion.. I believe that indicates I need a /dev/ugen0.3 file but only have the following :


```
srv1# ls -la /dev/ugen*
crw-r--r--  1 root  operator    0,  98 Feb  7 15:37 /dev/ugen0
crw-r--r--  1 root  operator    0,  99 Feb  7 15:37 /dev/ugen0.1
crw-r--r--  1 root  operator    0, 100 Feb  7 15:37 /dev/ugen0.2
```

I ran some test code to talk w/ this device and it tried to open /dev/ugen0.3 after picking through the USB device structures returned by the libusb stack.. However, I can't get mknod to make me one either.. I gather that starting in the FreeBSD 4.x time frame we switched away from using mknod to using devfs and that make_dev() should be taking care of things automatically.. Any ideas on why this is not working??


----------



## graudeejs (Mar 4, 2010)

what the heck did you plug in?


----------



## osx-addict (Mar 4, 2010)

I plugged in one of these but mine is missing the serial port shown in the picture.. This is a data logger that captures data for Solar inverters to monitor how well the panels are behaving,etc..


----------



## graudeejs (Mar 4, 2010)

Is it supported by FreeBSD?
Sorry, I can't help you with this....


----------



## osx-addict (Mar 4, 2010)

Likely not.. The company that makes this device (Fronius) isn't even listed in /usr/src/sys/dev/usb/usbdevs which lists all registered companies.. I know there is no driver and don't mind genning one up but I can't get very far w/o a device entry first, hence my question.


----------



## SirDice (Mar 4, 2010)

osx-addict said:
			
		

> I know there is no driver and don't mind genning one up but I can't get very far w/o a device entry first, hence my question.



It's the driver that creates the dev entry. No driver, no dev entry. Cause -> effect.


----------



## trasz@ (Mar 4, 2010)

SirDice said:
			
		

> It's the driver that creates the dev entry. No driver, no dev entry. Cause -> effect.



But there _is_ a driver - "Generic USB Device", usually called ugen(4).

@osx-addict: You could try to contact USB maintainer, Hans Petter Selasky.


----------



## osx-addict (Mar 4, 2010)

Ok.. Thanks.. I'll look him up!


----------



## osx-addict (Mar 12, 2010)

*Solved!*

Just a quick followup.. I contacted the author of the ugen device driver (Hans) and he suggested trying out FreeBSD 8 if possible.. That of course led me down a completely different path with CISS driver issues,etc.. Anyway, I've got FreeBSD 8 (stable) running and it works great and my ugen0.3 device entry exists so this thread is solved.


----------

