EM7511 on Ubuntu 18.04 LTS

Is the EM7511 supported for Ubuntu 18.04 LTS? I think there is an issue with the qmi_wwan driver, but I’m not sure where to get the proper set of drivers.

First - I noticed that modem manager wasn’t starting:
Aug 28 12:17:01 matt-lts-VirtualBox ModemManager[10541]: [1567012621.445671] [plugin manager] loaded plugin ‘ZTE’
Aug 28 12:17:01 matt-lts-VirtualBox ModemManager[10541]: [1567012621.445839] [plugin manager] successfully loaded 33 plugins
Aug 28 12:17:01 matt-lts-VirtualBox ModemManager[10541]: [1567012621.446376] [sleep-monitor] taking systemd sleep inhibitor
Aug 28 12:17:01 matt-lts-VirtualBox ModemManager[10541]: [1567012621.448787] Could not acquire the ‘org.freedesktop.ModemManager1’ service name
Aug 28 12:17:01 matt-lts-VirtualBox ModemManager[10541]: [1567012621.448910] Stopping connection in object manager server
Aug 28 12:17:01 matt-lts-VirtualBox ModemManager[10541]: [1567012621.454266] ModemManager is shut down
Aug 28 12:17:01 matt-lts-VirtualBox ModemManager[10541]: [1567012621.454487] disposing MMSleepMonitor singleton (0x22ac060)

But the USB drivers seemed to be installed:
/: Bus 01.Port 1: Dev 1, Class=root_hub, Driver=ohci-pci/12p, 12M
|__ Port 1: Dev 2, If 0, Class=Human Interface Device, Driver=usbhid, 12M
|__ Port 2: Dev 8, If 2, Class=Vendor Specific Class, Driver=qcserial, 12M
|__ Port 2: Dev 8, If 0, Class=Vendor Specific Class, Driver=qcserial, 12M
|__ Port 2: Dev 8, If 3, Class=Vendor Specific Class, Driver=qcserial, 12M
|__ Port 2: Dev 8, If 8, Class=Vendor Specific Class, Driver=qmi_wwan, 12M

Then I checked dmesg which is completely filled with:
[19075.461975] qmi_wwan 1-2:1.8: nonzero urb status received: -84
[19075.481129] qmi_wwan 1-2:1.8: nonzero urb status received: -84
[19075.499713] qmi_wwan 1-2:1.8: nonzero urb status received: -84
[19075.517936] qmi_wwan 1-2:1.8: nonzero urb status received: -84
[19075.537038] qmi_wwan 1-2:1.8: nonzero urb status received: -84

Should be

12M? There is something seriously screwed up here. Does this USB port support USB2.0 High Speed? I don’t know if the modem will work all that good on a Full Speed bus.

Never seen that error before, but then I haven’t seen many such modems connected to OHCI controllers either. 84 is EILSEQ, which if I understand the ohci-driver correctly, will be returned for two transfer status codes: CRC Error or Data Toggle, ref:

/*
 * Hardware transfer status codes -- CC from td->hwINFO or td->hwPSW
 */
#define TD_CC_NOERROR      0x00
#define TD_CC_CRC          0x01
#define TD_CC_BITSTUFFING  0x02
#define TD_CC_DATATOGGLEM  0x03
#define TD_CC_STALL        0x04
#define TD_DEVNOTRESP      0x05
#define TD_PIDCHECKFAIL    0x06
#define TD_UNEXPECTEDPID   0x07
#define TD_DATAOVERRUN     0x08
#define TD_DATAUNDERRUN    0x09
    /* 0x0A, 0x0B reserved for hardware */
#define TD_BUFFEROVERRUN   0x0C
#define TD_BUFFERUNDERRUN  0x0D
    /* 0x0E, 0x0F reserved for HCD */
#define TD_NOTACCESSED     0x0F


/* map OHCI TD status codes (CC) to errno values */
static const int cc_to_error [16] = {
        /* No  Error  */               0,
        /* CRC Error  */               -EILSEQ,
        /* Bit Stuff  */               -EPROTO,
        /* Data Togg  */               -EILSEQ,
        /* Stall      */               -EPIPE,
        /* DevNotResp */               -ETIME,
        /* PIDCheck   */               -EPROTO,
        /* UnExpPID   */               -EPROTO,
        /* DataOver   */               -EOVERFLOW,
        /* DataUnder  */               -EREMOTEIO,
        /* (for hw)   */               -EIO,
        /* (for hw)   */               -EIO,
        /* BufferOver */               -ECOMM,
        /* BuffUnder  */               -ENOSR,
        /* (for HCD)  */               -EALREADY,
        /* (for HCD)  */               -EALREADY
};

But whatever this means, it looks like your USB bus is completely screwed up. Are other USB devices working on this port? Does the EM7511 work when connected to other USB ports and/or hosts?

1 Like

Thanks - yes, I believe you’re correct that my USB is screwed up. I hate to blame the hardware when I can’t get the software to work, but in this case I think it’s justified.

Thanks for the insight.
-Matt