The pfSense Store

Author Topic: SG-1000: Cannot assign ugenx.y  (Read 284 times)

0 Members and 1 Guest are viewing this topic.

Offline biggsy

  • Hero Member
  • *****
  • Posts: 641
  • Karma: +16/-0
    • View Profile
SG-1000: Cannot assign ugenx.y
« on: November 23, 2017, 06:43:55 pm »
Using 2.4.0 beta I had my Sony mobile connected successfully as a USB-tethered LTE gateway on the SG-1000.

Updated to 2.4.2 today and that went smoothly but I can no longer tether to the Sony.

When I plug the phone in and enable USB tethering pfSense sees the device on ugen0.2 but doesn't offer that as a valid WAN interface name - only cpsw0 and cpsw1.

Could this be related to the change of interface naming from, in the case of the SG-1000, from "ue0" to ugenx.y?

 
 

Offline stephenw10

  • Administrator
  • Hero Member
  • *****
  • Posts: 11909
  • Karma: +467/-15
    • View Profile
Re: SG-1000: Cannot assign ugenx.y
« Reply #1 on: November 24, 2017, 08:30:13 pm »
ugenX implies a generic USB device it doesn't have a driver for or for which the driver failed to attach.

ue is a USB Ethernet device that is created when the driver did attach.

Hard to see what might have changed there between 2.4beta and 2.4.2. The base FreeBSD version moved from 11 to 11.1 but that would not normally remove the driver.

You never had to add a kernel module in 2.4b? Like urndis for example?

Steve

Offline biggsy

  • Hero Member
  • *****
  • Posts: 641
  • Karma: +16/-0
    • View Profile
Re: SG-1000: Cannot assign ugenx.y
« Reply #2 on: November 25, 2017, 12:40:17 am »
Thanks for the reply, Steve.

No, didn't have to add anything to bring up ue0 as a WAN interface under 2.4 beta.  I was a bit surprised by that, TBH.

I'm starting wonder whether something might have changed with Android 7.x.  That update happened not long ago.




Offline stephenw10

  • Administrator
  • Hero Member
  • *****
  • Posts: 11909
  • Karma: +467/-15
    • View Profile
Re: SG-1000: Cannot assign ugenx.y
« Reply #3 on: November 26, 2017, 10:48:39 am »
That could certainly be it if it's presenting a different USB device ID or default config.

Are you able to re-test it against a 2.4.0 snap?

Steve

Offline biggsy

  • Hero Member
  • *****
  • Posts: 641
  • Karma: +16/-0
    • View Profile
Re: SG-1000: Cannot assign ugenx.y
« Reply #4 on: November 26, 2017, 01:22:25 pm »

Are you able to re-test it against a 2.4.0 snap?


I was thinking about that but I'm unsure about the process for obtaining a 2.4.0 snap and installing it over the top of 2.4.2 on the SG-1000.

Also thought about whether "USB debugging mode" in Android actually provides any easy to use tools that might shed some light on the problem.

Offline biggsy

  • Hero Member
  • *****
  • Posts: 641
  • Karma: +16/-0
    • View Profile
Re: SG-1000: Cannot assign ugenx.y
« Reply #5 on: November 26, 2017, 05:52:09 pm »
No luck. 

Reinstalled 2.4.0 RELEASE
Still not talking but at least recognizing the Sony.

Downloaded the ADB tools and ran "settings put global tether_dun_required 0" from a shell, a recommended by someone.
Now not talking and not recognizing the Sony:

Code: [Select]
FreeBSD/arm (pfSense.localdomain) (ttyu0)

Netgate SG-1000 - Serial: [redacted]

*** Welcome to pfSense 2.4.0-RELEASE (arm) on pfSense ***

 WAN (wan)       -> cpsw0      ->
 LAN (lan)       -> cpsw1      -> v4: 192.168.1.1/24

 0) Logout (SSH only)                  9) pfTop
 1) Assign Interfaces                 10) Filter Logs
 2) Set interface(s) IP address       11) Restart webConfigurator
 3) Reset webConfigurator password    12) PHP shell + pfSense tools
 4) Reset to factory defaults         13) Update from console
 5) Reboot system                     14) Enable Secure Shell (sshd)
 6) Halt system                       15) Restore recent configuration
 7) Ping host                         16) Restart PHP-FPM
 8) Shell

Enter an option: ugen0.2: <Unknown > at usbus0 (disconnected)
ugen0.2: <Unknown > at usbus0 (disconnected)
1


Valid interfaces are:

cpsw0   68:9e:19:9c:88:30 (down) Ethernet Switch Port
cpsw1   68:9e:19:9c:88:32 (down) Ethernet Switch Port


So it does look like Android 7.1.1 has done this but I can't find anything out there that specifically mentions USB tethering as broken.



Offline biggsy

  • Hero Member
  • *****
  • Posts: 641
  • Karma: +16/-0
    • View Profile
Re: SG-1000: Cannot assign ugenx.y
« Reply #6 on: November 27, 2017, 08:05:42 pm »
Any clever ways to troubleshoot this from the pfSense side?

Offline stephenw10

  • Administrator
  • Hero Member
  • *****
  • Posts: 11909
  • Karma: +467/-15
    • View Profile
Re: SG-1000: Cannot assign ugenx.y
« Reply #7 on: November 28, 2017, 07:21:09 am »
The first thing I would do is see how the phone appears in pfSense. Try running:

Code: [Select]
usbconfig dump_device_desc
That will give you the vendor and product IDs for the phone. You can chekc that in the different modes.

Then try running:
Code: [Select]
usbconfig -d ugenX.Y dump_all_config_desc
For whichever device is the phone.

If it has more than one config available you can switch it by using a USB device quirk loader line. There might be a different config that is recognised.

Steve

Offline biggsy

  • Hero Member
  • *****
  • Posts: 641
  • Karma: +16/-0
    • View Profile
Re: SG-1000: Cannot assign ugenx.y
« Reply #8 on: December 03, 2017, 08:29:58 pm »
Thanks, Steve.

It's taken me a while to get back to this but now I'm getting the following whenever I connect the phone to the SG-1000.   

Code: [Select]
[2.4.2-RELEASE][root@pfSense.localdomain]/root: ugen0.2: <Unknown > at usbus0 (disconnected)

So the output from those commands doesn't provide a lot of info.

Code: [Select]
[2.4.2-RELEASE][root@pfSense.localdomain]/root: usbconfig dump_device_desc
ugen1.1: <Mentor Graphics OTG Root HUB> at usbus1, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=SAVE (0mA)

  bLength = 0x0012
  bDescriptorType = 0x0001
  bcdUSB = 0x0200
  bDeviceClass = 0x0009  <HUB>
  bDeviceSubClass = 0x0000
  bDeviceProtocol = 0x0001
  bMaxPacketSize0 = 0x0040
  idVendor = 0x0000
  idProduct = 0x0000
  bcdDevice = 0x0100
  iManufacturer = 0x0001  <Mentor Graphics>
  iProduct = 0x0002  <OTG Root HUB>
  iSerialNumber = 0x0000  <no string>
  bNumConfigurations = 0x0001

ugen0.1: <Mentor Graphics OTG Root HUB> at usbus0, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=SAVE (0mA)

  bLength = 0x0012
  bDescriptorType = 0x0001
  bcdUSB = 0x0200
  bDeviceClass = 0x0009  <HUB>
  bDeviceSubClass = 0x0000
  bDeviceProtocol = 0x0001
  bMaxPacketSize0 = 0x0040
  idVendor = 0x0000
  idProduct = 0x0000
  bcdDevice = 0x0100
  iManufacturer = 0x0001  <Mentor Graphics>
  iProduct = 0x0002  <OTG Root HUB>
  iSerialNumber = 0x0000  <no string>
  bNumConfigurations = 0x0001

[2.4.2-RELEASE][root@pfSense.localdomain]/root: usbconfig -d ugen0.2 dump_all_config_desc
No device match or lack of permissions.

The phone refuses to even recognize the SG-1000 and won't allow USB tethering to be enabled. 
If I connect the phone to a Win 10 laptop via USB, the connection is recognized and I can enable USB tethering.



Offline stephenw10

  • Administrator
  • Hero Member
  • *****
  • Posts: 11909
  • Karma: +467/-15
    • View Profile
Re: SG-1000: Cannot assign ugenx.y
« Reply #9 on: December 04, 2017, 05:52:59 am »
Hmm, not much we can do if the phone just disconnects itself.  :-\

It's not even appearing there.

Steve

Offline Grimson

  • Full Member
  • ***
  • Posts: 176
  • Karma: +26/-2
    • View Profile
Re: SG-1000: Cannot assign ugenx.y
« Reply #10 on: December 04, 2017, 06:09:24 am »
If you connect the phone it should show a notification about how the USB connection should be used, on newer Android versions (at least on Sony phones) this defaults to charging only. Make sure it is set to a mode that allows communication. If the notification does not appear enable developer mode on the phone and activate USB debugging, then connect it again. This usually brings the notification back.

Offline biggsy

  • Hero Member
  • *****
  • Posts: 641
  • Karma: +16/-0
    • View Profile
Re: SG-1000: Cannot assign ugenx.y
« Reply #11 on: December 04, 2017, 05:43:26 pm »
Thanks for the suggestion Grimson.  I was using the "Transfer files" mode. 

I did briefly get a connection after rebooting the phone and captured this information:

Code: [Select]
ugen0.2: <Sony E5823> at usbus0, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=ON (500mA)

  bLength = 0x0012
  bDescriptorType = 0x0001
  bcdUSB = 0x0200
  bDeviceClass = 0x0000  <Probed by interface class>
  bDeviceSubClass = 0x0000
  bDeviceProtocol = 0x0000
  bMaxPacketSize0 = 0x0040
  idVendor = 0x0fce
  idProduct = 0x71da
  bcdDevice = 0x0310
  iManufacturer = 0x0001  <Sony>
  iProduct = 0x0002  <E5823>
  iSerialNumber = 0x0003  <CB5A28VZKV>
  bNumConfigurations = 0x0001
 

Unfortunately, it disconnected again before I could run usbconfig -d ugen0.2 dump_all_config_desc

Offline stephenw10

  • Administrator
  • Hero Member
  • *****
  • Posts: 11909
  • Karma: +467/-15
    • View Profile
Re: SG-1000: Cannot assign ugenx.y
« Reply #12 on: December 05, 2017, 08:53:30 am »
Hmm, 71da does not appear to be listed as a USB PID anywhere I can see.

Some drivers can seemingly attach based on the config type though such as urndi but without seeing the out full config dump there's no way to tell. And even if it does attach if the phone just shuts it down that won't help.

We really need the phone to present a stable device to pfSense.

Steve