-
Hi and thanks allot. Was on the phone with Verizon tech support but not much help there. They did try really hard but they simply don't have the information available to them. Kinda figured as much to be honest.
Here is the output at boot from the serial port output.
PC Engines apu4
coreboot build 20193012
BIOS version v4.11.0.2
4080 MB ECC DRAM
HeaBIOS (version rel-1.12.1.3-0-g300e8b7)ugen1.3: <Dell Inc. DW5821e Snapdragon X20 LTE> at usbus1
uhid0 on uhub2
uhid0: <Dell Inc. DW5821e Snapdragon X20 LTE, class 239/2, rev 2.10/3.18, addr 3> on usbus1I think that is the relevant parts you are looking for.
I have tried just about everything I could to get it to dial out and make a connection but to no avail. At this point I am kind of lost. I have an adapter on the way so I can throw it in a USB port on a Win10 pro machine and see if I can get it up and working there. Maybe it needs a firmware flash? It did come from a seller in Korea so... They are GSM there I believe.
Thanks again for the effort so far and any suggestions that might help.
Mike
-
The output from
usbconfig dump_all_desc
may be revealing.That should show us if there is more than one config index available, which one it's running now and what interfaces are in each.
Steve
-
So here is the output after running the command.
ugen1.3: <DELL DW5821e Snapdragon X20 LTE> at usbus1, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=ON (0mA)
The Dw5821e appears twice in the listing but they appear to be the same listing. I put them next to each other and checked. It is running at USB2.0 rather than 3.0 so even if there was a link to the cell tower capable of 1.0Gbps DS it would be capped by the USB bandwidth. I can live with that. I stripped out the other lines as I spam filter on the site is flagging it and won't let me upload it complete. If need be I will convert to GIF and upload it that way.
I ordered a couple different NGFF to USB adapters so I can plug it into my desktop machine and attempt to get it working under windows. The Dell drivers and firmware are available for it and I have the downloaded. There is a firmware update as well so I will try to get that into the modem. It states that it is an LTE update and since the modem comes from Korea this may well be the problem. It may have GSM firmware loaded. That is a WAG though. Will know more by Wednesday evening. If need be I will cut and run, don't want to but would like to get this working.
As always, thanks a whole bunch for your efforts so far.
Mike
Hope this helps a little.
-
I expect to see much, much more output than that. For example here's the output from just the modem in a test box here:
ugen0.2: <Sierra Wireless, Incorporated Sierra Wireless EM7455 Qualcomm Snapdragon X7 LTE-A> at, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=ON (500mA) bLength = 0x0012 bDescriptorType = 0x0001 bcdUSB = 0x0210 bDeviceClass = 0x0000 <Probed by interface class> bDeviceSubClass = 0x0000 bDeviceProtocol = 0x0000 bMaxPacketSize0 = 0x0040 idVendor = 0x1199 idProduct = 0x9071 bcdDevice = 0x0006 iManufacturer = 0x0001 <Sierra Wireless, Incorporated> iProduct = 0x0002 <Sierra Wireless EM7455 Qualcomm Snapdragon X7 LTE-A> iSerialNumber = 0x0003 <LF71922973041020> bNumConfigurations = 0x0001 Configuration index 0 bLength = 0x0009 bDescriptorType = 0x0002 wTotalLength = 0x00be bNumInterfaces = 0x0005 bConfigurationValue = 0x0001 iConfiguration = 0x0000 <no string> bmAttributes = 0x00a0 bMaxPower = 0x00fa Interface 0 bLength = 0x0009 bDescriptorType = 0x0004 bInterfaceNumber = 0x0000 bAlternateSetting = 0x0000 bNumEndpoints = 0x0002 bInterfaceClass = 0x00ff <Vendor specific> bInterfaceSubClass = 0x00ff bInterfaceProtocol = 0x00ff iInterface = 0x0000 <no string> Endpoint 0 bLength = 0x0007 bDescriptorType = 0x0005 bEndpointAddress = 0x0081 <IN> bmAttributes = 0x0002 <BULK> wMaxPacketSize = 0x0200 bInterval = 0x0000 bRefresh = 0x0000 bSynchAddress = 0x0000 Endpoint 1 bLength = 0x0007 bDescriptorType = 0x0005 bEndpointAddress = 0x0001 <OUT> bmAttributes = 0x0002 <BULK> wMaxPacketSize = 0x0200 bInterval = 0x0000 bRefresh = 0x0000 bSynchAddress = 0x0000 Interface 1 bLength = 0x0009 bDescriptorType = 0x0004 bInterfaceNumber = 0x0001 bAlternateSetting = 0x0000 bNumEndpoints = 0x0003 bInterfaceClass = 0x00ff <Vendor specific> bInterfaceSubClass = 0x0000 bInterfaceProtocol = 0x0000 iInterface = 0x0000 <no string> Additional Descriptor bLength = 0x05 bDescriptorType = 0x24 bDescriptorSubType = 0x00 RAW dump: 0x00 | 0x05, 0x24, 0x00, 0x10, 0x01 Additional Descriptor bLength = 0x05 bDescriptorType = 0x24 bDescriptorSubType = 0x01 RAW dump: 0x00 | 0x05, 0x24, 0x01, 0x00, 0x00 Additional Descriptor bLength = 0x04 bDescriptorType = 0x24 bDescriptorSubType = 0x02 RAW dump: 0x00 | 0x04, 0x24, 0x02, 0x02 Additional Descriptor bLength = 0x05 bDescriptorType = 0x24 bDescriptorSubType = 0x06 RAW dump: 0x00 | 0x05, 0x24, 0x06, 0x00, 0x00 Endpoint 0 bLength = 0x0007 bDescriptorType = 0x0005 bEndpointAddress = 0x0083 <IN> bmAttributes = 0x0003 <INTERRUPT> wMaxPacketSize = 0x000a bInterval = 0x0009 bRefresh = 0x0000 bSynchAddress = 0x0000 Endpoint 1 bLength = 0x0007 bDescriptorType = 0x0005 bEndpointAddress = 0x0082 <IN> bmAttributes = 0x0002 <BULK> wMaxPacketSize = 0x0200 bInterval = 0x0000 bRefresh = 0x0000 bSynchAddress = 0x0000 Endpoint 2 bLength = 0x0007 bDescriptorType = 0x0005 bEndpointAddress = 0x0002 <OUT> bmAttributes = 0x0002 <BULK> wMaxPacketSize = 0x0200 bInterval = 0x0000 bRefresh = 0x0000 bSynchAddress = 0x0000 Interface 2 bLength = 0x0009 bDescriptorType = 0x0004 bInterfaceNumber = 0x0002 bAlternateSetting = 0x0000 bNumEndpoints = 0x0003 bInterfaceClass = 0x00ff <Vendor specific> bInterfaceSubClass = 0x0000 bInterfaceProtocol = 0x0000 iInterface = 0x0000 <no string> Additional Descriptor bLength = 0x05 bDescriptorType = 0x24 bDescriptorSubType = 0x00 RAW dump: 0x00 | 0x05, 0x24, 0x00, 0x10, 0x01 Additional Descriptor bLength = 0x05 bDescriptorType = 0x24 bDescriptorSubType = 0x01 RAW dump: 0x00 | 0x05, 0x24, 0x01, 0x00, 0x00 Additional Descriptor bLength = 0x04 bDescriptorType = 0x24 bDescriptorSubType = 0x02 RAW dump: 0x00 | 0x04, 0x24, 0x02, 0x02 Additional Descriptor bLength = 0x05 bDescriptorType = 0x24 bDescriptorSubType = 0x06 RAW dump: 0x00 | 0x05, 0x24, 0x06, 0x00, 0x00 Endpoint 0 bLength = 0x0007 bDescriptorType = 0x0005 bEndpointAddress = 0x0085 <IN> bmAttributes = 0x0003 <INTERRUPT> wMaxPacketSize = 0x000a bInterval = 0x0009 bRefresh = 0x0000 bSynchAddress = 0x0000 Endpoint 1 bLength = 0x0007 bDescriptorType = 0x0005 bEndpointAddress = 0x0084 <IN> bmAttributes = 0x0002 <BULK> wMaxPacketSize = 0x0200 bInterval = 0x0000 bRefresh = 0x0000 bSynchAddress = 0x0000 Endpoint 2 bLength = 0x0007 bDescriptorType = 0x0005 bEndpointAddress = 0x0003 <OUT> bmAttributes = 0x0002 <BULK> wMaxPacketSize = 0x0200 bInterval = 0x0000 bRefresh = 0x0000 bSynchAddress = 0x0000 Interface 3 bLength = 0x0009 bDescriptorType = 0x0004 bInterfaceNumber = 0x0003 bAlternateSetting = 0x0000 bNumEndpoints = 0x0003 bInterfaceClass = 0x00ff <Vendor specific> bInterfaceSubClass = 0x00ff bInterfaceProtocol = 0x00ff iInterface = 0x0000 <no string> Endpoint 0 bLength = 0x0007 bDescriptorType = 0x0005 bEndpointAddress = 0x0087 <IN> bmAttributes = 0x0003 <INTERRUPT> wMaxPacketSize = 0x0008 bInterval = 0x0009 bRefresh = 0x0000 bSynchAddress = 0x0000 Endpoint 1 bLength = 0x0007 bDescriptorType = 0x0005 bEndpointAddress = 0x0086 <IN> bmAttributes = 0x0002 <BULK> wMaxPacketSize = 0x0200 bInterval = 0x0000 bRefresh = 0x0000 bSynchAddress = 0x0000 Endpoint 2 bLength = 0x0007 bDescriptorType = 0x0005 bEndpointAddress = 0x0004 <OUT> bmAttributes = 0x0002 <BULK> wMaxPacketSize = 0x0200 bInterval = 0x0000 bRefresh = 0x0000 bSynchAddress = 0x0000 Interface 4 bLength = 0x0009 bDescriptorType = 0x0004 bInterfaceNumber = 0x0004 bAlternateSetting = 0x0000 bNumEndpoints = 0x0003 bInterfaceClass = 0x00ff <Vendor specific> bInterfaceSubClass = 0x00ff bInterfaceProtocol = 0x00ff iInterface = 0x0000 <no string> Endpoint 0 bLength = 0x0007 bDescriptorType = 0x0005 bEndpointAddress = 0x0089 <IN> bmAttributes = 0x0003 <INTERRUPT> wMaxPacketSize = 0x0008 bInterval = 0x0009 bRefresh = 0x0000 bSynchAddress = 0x0000 Endpoint 1 bLength = 0x0007 bDescriptorType = 0x0005 bEndpointAddress = 0x0088 <IN> bmAttributes = 0x0002 <BULK> wMaxPacketSize = 0x0200 bInterval = 0x0000 bRefresh = 0x0000 bSynchAddress = 0x0000 Endpoint 2 bLength = 0x0007 bDescriptorType = 0x0005 bEndpointAddress = 0x0005 <OUT> bmAttributes = 0x0002 <BULK> wMaxPacketSize = 0x0200 bInterval = 0x0000 bRefresh = 0x0000 bSynchAddress = 0x0000
We need to see the USB IDs, the config indexes and interface types from that really.
I will also say that you will never see anything close to Gigabit in current pfSense using the AT connection if it's available. Something in the 50Mbps range is far more likely.
Steve
-
No mater what I try I can't seem to get it to not be flagged as spam! WTF!!!
Edit: After a bit of searching I noticed that I need a rep point of 5 or more to not get flagged. So I suspect that it will be some time since I am at a "0" right now and will likely stay there for some time to come. Guess I will have to find another way to post or get help elsewhere at this point. What a pain spammers are and cause.
50Mbps, I could live with that. But one thing at a time first. Gotta get this working! LOL
Mike
-
Sent them to you in pieces via the chat window. Only way they would go as there is a 1000 character limit to each message.
Thanks again,
Mike
-
ugen1.3: <DELL DW5821e Snapdragon X20 LTE> at usbus1, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=ON (0mA) bLength = 0x0012 bDescriptorType = 0x0001 bcdUSB = 0x0200 bDeviceClass = 0x0000 <Probed by interface class> bDeviceSubClass = 0x0000 bDeviceProtocol = 0x0000 bMaxPacketSize0 = 0x0040 idVendor = 0x413c idProduct = 0x81d6 bcdDevice = 0x0100 iManufacturer = 0x0001 <DELL> iProduct = 0x0002 <DW5821e Snapdragon X20 LTE> iSerialNumber = 0x0003 <f1bf4810> bNumConfigurations = 0x0001 Configuration index 0 bLength = 0x0009 bDescriptorType = 0x0002 wTotalLength = 0x0020 bNumInterfaces = 0x0001 bConfigurationValue = 0x0001 iConfiguration = 0x0000 <no string> bmAttributes = 0x00c0 bMaxPower = 0x0000 Interface 0 bLength = 0x0009 bDescriptorType = 0x0004 bInterfaceNumber = 0x0000 bAlternateSetting = 0x0000 bNumEndpoints = 0x0002 bInterfaceClass = 0x00ff <Vendor specific> bInterfaceSubClass = 0x0042 bInterfaceProtocol = 0x0003 iInterface = 0x0007 <fastboot> Endpoint 0 bLength = 0x0007 bDescriptorType = 0x0005 bEndpointAddress = 0x0081 <IN> bmAttributes = 0x0002 <BULK> wMaxPacketSize = 0x0200 bInterval = 0x0000 bRefresh = 0x0000 bSynchAddress = 0x0000 Endpoint 1 bLength = 0x0007 bDescriptorType = 0x0005 bEndpointAddress = 0x0001 <OUT> bmAttributes = 0x0002 <BULK> wMaxPacketSize = 0x0200 bInterval = 0x0000 bRefresh = 0x0000 bSynchAddress = 0x0000
Hmm, that's the full output from ugen1.3? That's disappointing if so. Only one config index and no useful interfaces really.....
-
So by your response I take it that I am screwed and likely it will not work?
-
Not without changing the card in some way. The presented default interfaces are not anything pfSense can use.
Via usb_mode_switch perhaps. Or a different firmware version.
The thread I linked above seems to imply it might be possible:
This module exposes two USB configurations: a QMI+AT capable setup on USB config #1 and a MBIM capable setup on USB config #2.
If it had presented 2 config indexes we could have changed it. That might have given us an AT port and that can be used.
Steve
-
@stephenw10 Well I have a usb adapter coming in tomorrow and I will pull the modem and see if I can get it flashed with new firmware i pulled from Dell. Then see if I can get it up in windows 10 pro with the drivers provided by Dell. If that works i might be able to find the indexes and note them. Fingers crossed and thanks again. I will post back when I have more.
Mike
-
Still unable to post the output of the dump without getting flagged!
So this is the output after loading in the firmware with the dell software. It appears that there is a SIM PIN2 lock. Verizon here seems to think that the modem PIN is PIN2 and thus the reason that I could not get it working under windows10 either. I have contacted the seller to get the pin number or to return the modem. Unless something has changed. I don't know enough to know what I am looking at. Guess the search for a modem that will work might begin again...
-
You can put the output in pastebin and link to it.
The Sierra EM7455 I showed above works fine as does the EM7355 if you need an internal modem. External Ethernet connected modems generally work much better bother because you can usually position them better and because they are not limited by FreeBSD.
There are some OEM branded versions of those Sierra devices that can take some messing about to make work but they generally can be made to.
Steve
-
So a little update. It appears that this may be related to the fact that the FCC certified this modem for use in specific Dell products and utilizing specific antenna configurations. IE: This is a packaged product that was certified to be compliant. Not having one of the Dell laptops to play with I am not able to update the firmware on the card and see if that fixes and unlocks the modem. Will work on that next. I do have an old Dell computer and will see if I can get the software to load and run with the modem in the USB adapter on that. Long shot I suspect at the least.
What about the EM7565? I kind of want to stick to the internal card on one of the M.2 risers as the case and the board are already in my possession and working well. In other words I have all the pieces and just need a good modem for this to be a compact and functional package.
Mike
-
I have never tried an em7565, they are still too expensive for me.
I believe there are some other threads here people have documented that in.
Steve
-
So it appears that it does work in Linux and that brings some hope to me. Gonna have to do a fair bit more digging to see if I can get this up and running. From the looks of it FreeBSD is rather deficient in comparison to Linux in this area. Bummer because I like PFsense so far and have our home router/ firewall running it right now with no issues so far.
Edit: Spoke with a friend of mine that is a Cray super computer admin and deep into linux. He thinks that since there is a driver for the modem for Linux that given the source we should be able to recompile it to run on the BSD kernel. Does this sound about right?
Mike
-
Well it's all open source so anything is possible, just a matter of coding!
But no it's not a simple compile issue. There is no MBIM or QMI support on FreeBSD (until someone ports umb from OpenBSD).
If the modem can present a usb com port, as that earlier thread seemed to show, then it may only be a matter of adding the USB IDs to the existing u3g driver in FreeBSD to have it create a usable AT port,Steve
-
@stephenw10 Well CRAP! I will refer my friend to this information and to another I found that you recently responded to about the same.
Thanks,
Mike