Sierra Wireless EM7455: How to enable COM ports
Various EM7455 devices coming from different brands and sale channels are often configured differently. They come with different firmware versions installed, different settings, and some ports can be switched on or off. Sometimes COM ports are off when you get the device, but it is useful to have a COM port enabled in order to do extended diagnostics and alter some settings that are normally not possible.
So what do you need to enable the COM ports for your EM7455?
The instructions below are for Windows users. If you can easily find your way in Linux, just skip it and note that you only basically need to run ./swi_setusbcomp.pl –usbcomp=8 to enable COM ports. Follow this link for more info: https://www.mork.no/~bjorn/MC7455-fix-orig.txt
Method 1. Recommended and safe.
Download and unpack the following image file: UbuntuLive.7z
Then, download and install UltraISO software. Trial mode is enough for our purposes. UltraISO download link.
Insert a spare empty USB Flash Drive into your laptop. Make sure it’s 8GB or more. Smaller drive won’t work because this image was prepared on a 8GB USB Flash drive.
Launch UltraISO and open the image file “UbuntuLive.ima” you downloaded previously. Use File -> Open menu to do that. Then, navigate to Bootable -> Write Disk Image. You will see the following window:
Make sure that the correct USB Flash drive is selected in Disk Drive field. Make sure it’s not your disk C: or any of your hard drives. Don’t change any other options. Then click “Write” to write the image to the USB Flash drive. After it’s done, close UltraISO.
Now you need to reboot your laptop and enter the BIOS. Make sure that the boot settings in your BIOS is set to “Legacy mode” and not to “UEFI mode”. Also make sure that booting from USB Flash drive is enabled in your BIOS. Then save your BIOS settings and exit from the BIOS. If all is correct, you will see Ubuntu Live boot menu. Select “Try Ubuntu without installing” in the menu and press ENTER. Ubuntu will boot and you should see the Ubuntu desktop:
Now, right-click on the desktop and select “Open Terminal”. Enter the following commands:
sudo -i
and then
./swi_usbcomp.pl
The sample output is shown below:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 |
ubuntu@ubuntu:~$ sudo -i root@ubuntu:~# ./swi_usbcomp.pl Running in MBIM mode (driver=cdc_mbim) MBIM OPEN succeeded QMI msg '0x0021' returned status = 1 MBIM QMI support verified supports 33 QMI subsystems: 0x00 (1.5) 'QMI_CTL' - Control service 0x01 (1.67) 'QMI_WDS' - Wireless data service 0x02 (1.14) 'QMI_DMS' - Device management service 0x03 (1.25) 'QMI_NAS' - Network access service 0x04 (1.6) 'QMI_QOS' - Quality of service, err, service 0x05 (1.10) 'QMI_WMS' - Wireless messaging service 0x07 (1.3) 'QMI_AUTH' - Authentication service 0x08 (1.2) 'QMI_AT' - AT command processor service 0x09 (2.1) 'QMI_VOICE' - Voice service 0x0a (2.24) 'QMI_CAT2' - Card application toolkit service (new) 0x0b (1.45) 'QMI_UIM' - UIM service 0x0c (1.4) 'QMI_PBM' - Phonebook service 0x0f (1.0) 'QMI_TEST' - Test service 0x10 (2.0) 'QMI_LOC' - Location service 0x11 (1.0) 'QMI_SAR' - Specific absorption rate service 0x17 (1.0) 'QMI_TS' - Thermal sensors service 0x18 (1.0) 'QMI_TMD' - Thermal mitigation device service 0x1a (1.16) 'QMI_WDA' - Wireless data administrative service 0x1d (1.1) 'QMI_CSVT' - Circuit switched videotelephony service 0x22 (1.0) 'QMI_COEX' - Coexistence service 0x24 (1.0) 'QMI_PDC' - Persistent device configuration service 0x29 (1.0) 'QMI_RFRPE' - RF radiated performance enhancement service 0x2a (1.0) 'QMI_DSD' - Data system determination service 0x2b (1.0) 'QMI_SSCTL' - Subsystem control service 0x2e (1.0) 'unknown' - 0x30 (1.0) 'unknown' - 0x31 (1.0) 'unknown' - 0x36 (1.0) 'unknown' - 0xe1 (1.0) 'QMI_RMS' - Remote management service 0xf0 (1.0) 'unknown' - 0xf3 (1.0) 'unknown' - 0xf5 (1.0) 'unknown' - 0xf6 (1.0) 'unknown' - QMI msg '0x0022' returned status = 1 Got QMI DMS client ID '3' QMI msg '0x555b' returned status = 1 Current USB composition: 9 USB compositions: 0 - HIP DM NMEA AT MDM1 MDM2 MDM3 MS NOT SUPPORTED 1 - HIP DM NMEA AT MDM1 MS NOT SUPPORTED 2 - HIP DM NMEA AT NIC1 MS NOT SUPPORTED 3 - HIP DM NMEA AT MDM1 NIC1 MS NOT SUPPORTED 4 - HIP DM NMEA AT NIC1 NIC2 NIC3 MS NOT SUPPORTED 5 - HIP DM NMEA AT ECM1 MS NOT SUPPORTED 6 - DM NMEA AT QMI SUPPORTED 7 - DM NMEA AT RMNET1 RMNET2 RMNET3 NOT SUPPORTED 8 - DM NMEA AT MBIM SUPPORTED * 9 - MBIM SUPPORTED 10 - NMEA MBIM NOT SUPPORTED 11 - DM MBIM NOT SUPPORTED 12 - DM NMEA MBIM NOT SUPPORTED 13 - Config1: comp6 Config2: comp8 NOT SUPPORTED 14 - Config1: comp6 Config2: comp9 NOT SUPPORTED 15 - Config1: comp6 Config2: comp10 NOT SUPPORTED 16 - Config1: comp6 Config2: comp11 NOT SUPPORTED 17 - Config1: comp6 Config2: comp12 NOT SUPPORTED 18 - Config1: comp7 Config2: comp8 NOT SUPPORTED 19 - Config1: comp7 Config2: comp9 NOT SUPPORTED 20 - Config1: comp7 Config2: comp10 NOT SUPPORTED 21 - Config1: comp7 Config2: comp11 NOT SUPPORTED 22 - Config1: comp7 Config2: comp12 NOT SUPPORTED QMI msg '0x0023' returned status = 1 root@ubuntu:~# |
We can see that the current USB composition for the EM7455 is set to 9, which is MBIM only. We need to have MBIM and also COM ports for the AT commands and NMEA GPS data. So we need the USB composition 8.
Just enter the following command to set the USB composition to 8:
./swi_usbcomp.pl –usbcomp=8
The output is shown below:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 |
root@ubuntu:~# ./swi_usbcomp.pl --usbcomp=8 Running in MBIM mode (driver=cdc_mbim) MBIM OPEN succeeded QMI msg '0x0021' returned status = 1 MBIM QMI support verified supports 33 QMI subsystems: 0x00 (1.5) 'QMI_CTL' - Control service 0x01 (1.67) 'QMI_WDS' - Wireless data service 0x02 (1.14) 'QMI_DMS' - Device management service 0x03 (1.25) 'QMI_NAS' - Network access service 0x04 (1.6) 'QMI_QOS' - Quality of service, err, service 0x05 (1.10) 'QMI_WMS' - Wireless messaging service 0x07 (1.3) 'QMI_AUTH' - Authentication service 0x08 (1.2) 'QMI_AT' - AT command processor service 0x09 (2.1) 'QMI_VOICE' - Voice service 0x0a (2.24) 'QMI_CAT2' - Card application toolkit service (new) 0x0b (1.45) 'QMI_UIM' - UIM service 0x0c (1.4) 'QMI_PBM' - Phonebook service 0x0f (1.0) 'QMI_TEST' - Test service 0x10 (2.0) 'QMI_LOC' - Location service 0x11 (1.0) 'QMI_SAR' - Specific absorption rate service 0x17 (1.0) 'QMI_TS' - Thermal sensors service 0x18 (1.0) 'QMI_TMD' - Thermal mitigation device service 0x1a (1.16) 'QMI_WDA' - Wireless data administrative service 0x1d (1.1) 'QMI_CSVT' - Circuit switched videotelephony service 0x22 (1.0) 'QMI_COEX' - Coexistence service 0x24 (1.0) 'QMI_PDC' - Persistent device configuration service 0x29 (1.0) 'QMI_RFRPE' - RF radiated performance enhancement service 0x2a (1.0) 'QMI_DSD' - Data system determination service 0x2b (1.0) 'QMI_SSCTL' - Subsystem control service 0x2e (1.0) 'unknown' - 0x30 (1.0) 'unknown' - 0x31 (1.0) 'unknown' - 0x36 (1.0) 'unknown' - 0xe1 (1.0) 'QMI_RMS' - Remote management service 0xf0 (1.0) 'unknown' - 0xf3 (1.0) 'unknown' - 0xf5 (1.0) 'unknown' - 0xf6 (1.0) 'unknown' - QMI msg '0x0022' returned status = 1 Got QMI DMS client ID '3' QMI msg '0x555b' returned status = 1 Current USB composition: 9 USB compositions: 0 - HIP DM NMEA AT MDM1 MDM2 MDM3 MS NOT SUPPORTED 1 - HIP DM NMEA AT MDM1 MS NOT SUPPORTED 2 - HIP DM NMEA AT NIC1 MS NOT SUPPORTED 3 - HIP DM NMEA AT MDM1 NIC1 MS NOT SUPPORTED 4 - HIP DM NMEA AT NIC1 NIC2 NIC3 MS NOT SUPPORTED 5 - HIP DM NMEA AT ECM1 MS NOT SUPPORTED 6 - DM NMEA AT QMI SUPPORTED 7 - DM NMEA AT RMNET1 RMNET2 RMNET3 NOT SUPPORTED 8 - DM NMEA AT MBIM SUPPORTED * 9 - MBIM SUPPORTED 10 - NMEA MBIM NOT SUPPORTED 11 - DM MBIM NOT SUPPORTED 12 - DM NMEA MBIM NOT SUPPORTED 13 - Config1: comp6 Config2: comp8 NOT SUPPORTED 14 - Config1: comp6 Config2: comp9 NOT SUPPORTED 15 - Config1: comp6 Config2: comp10 NOT SUPPORTED 16 - Config1: comp6 Config2: comp11 NOT SUPPORTED 17 - Config1: comp6 Config2: comp12 NOT SUPPORTED 18 - Config1: comp7 Config2: comp8 NOT SUPPORTED 19 - Config1: comp7 Config2: comp9 NOT SUPPORTED 20 - Config1: comp7 Config2: comp10 NOT SUPPORTED 21 - Config1: comp7 Config2: comp11 NOT SUPPORTED 22 - Config1: comp7 Config2: comp12 NOT SUPPORTED QMI msg '0x555c' returned status = 1 QMI msg '0x0023' returned status = 1 root@ubuntu:~# |
Check again if the USB composition switch was successful:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 |
root@ubuntu:~# ./swi_usbcomp.pl Running in MBIM mode (driver=cdc_mbim) MBIM OPEN succeeded QMI msg '0x0021' returned status = 1 MBIM QMI support verified supports 33 QMI subsystems: 0x00 (1.5) 'QMI_CTL' - Control service 0x01 (1.67) 'QMI_WDS' - Wireless data service 0x02 (1.14) 'QMI_DMS' - Device management service 0x03 (1.25) 'QMI_NAS' - Network access service 0x04 (1.6) 'QMI_QOS' - Quality of service, err, service 0x05 (1.10) 'QMI_WMS' - Wireless messaging service 0x07 (1.3) 'QMI_AUTH' - Authentication service 0x08 (1.2) 'QMI_AT' - AT command processor service 0x09 (2.1) 'QMI_VOICE' - Voice service 0x0a (2.24) 'QMI_CAT2' - Card application toolkit service (new) 0x0b (1.45) 'QMI_UIM' - UIM service 0x0c (1.4) 'QMI_PBM' - Phonebook service 0x0f (1.0) 'QMI_TEST' - Test service 0x10 (2.0) 'QMI_LOC' - Location service 0x11 (1.0) 'QMI_SAR' - Specific absorption rate service 0x17 (1.0) 'QMI_TS' - Thermal sensors service 0x18 (1.0) 'QMI_TMD' - Thermal mitigation device service 0x1a (1.16) 'QMI_WDA' - Wireless data administrative service 0x1d (1.1) 'QMI_CSVT' - Circuit switched videotelephony service 0x22 (1.0) 'QMI_COEX' - Coexistence service 0x24 (1.0) 'QMI_PDC' - Persistent device configuration service 0x29 (1.0) 'QMI_RFRPE' - RF radiated performance enhancement service 0x2a (1.0) 'QMI_DSD' - Data system determination service 0x2b (1.0) 'QMI_SSCTL' - Subsystem control service 0x2e (1.0) 'unknown' - 0x30 (1.0) 'unknown' - 0x31 (1.0) 'unknown' - 0x36 (1.0) 'unknown' - 0xe1 (1.0) 'QMI_RMS' - Remote management service 0xf0 (1.0) 'unknown' - 0xf3 (1.0) 'unknown' - 0xf5 (1.0) 'unknown' - 0xf6 (1.0) 'unknown' - QMI msg '0x0022' returned status = 1 Got QMI DMS client ID '3' QMI msg '0x555b' returned status = 1 Current USB composition: 8 USB compositions: 0 - HIP DM NMEA AT MDM1 MDM2 MDM3 MS NOT SUPPORTED 1 - HIP DM NMEA AT MDM1 MS NOT SUPPORTED 2 - HIP DM NMEA AT NIC1 MS NOT SUPPORTED 3 - HIP DM NMEA AT MDM1 NIC1 MS NOT SUPPORTED 4 - HIP DM NMEA AT NIC1 NIC2 NIC3 MS NOT SUPPORTED 5 - HIP DM NMEA AT ECM1 MS NOT SUPPORTED 6 - DM NMEA AT QMI SUPPORTED 7 - DM NMEA AT RMNET1 RMNET2 RMNET3 NOT SUPPORTED * 8 - DM NMEA AT MBIM SUPPORTED 9 - MBIM SUPPORTED 10 - NMEA MBIM NOT SUPPORTED 11 - DM MBIM NOT SUPPORTED 12 - DM NMEA MBIM NOT SUPPORTED 13 - Config1: comp6 Config2: comp8 NOT SUPPORTED 14 - Config1: comp6 Config2: comp9 NOT SUPPORTED 15 - Config1: comp6 Config2: comp10 NOT SUPPORTED 16 - Config1: comp6 Config2: comp11 NOT SUPPORTED 17 - Config1: comp6 Config2: comp12 NOT SUPPORTED 18 - Config1: comp7 Config2: comp8 NOT SUPPORTED 19 - Config1: comp7 Config2: comp9 NOT SUPPORTED 20 - Config1: comp7 Config2: comp10 NOT SUPPORTED 21 - Config1: comp7 Config2: comp11 NOT SUPPORTED 22 - Config1: comp7 Config2: comp12 NOT SUPPORTED QMI msg '0x0023' returned status = 1 |
Nice, it worked! All we need now is to reset the EM7455 in order for the new USB composition to take effect. Enter the following command:
./swi_usbcomp.pl –reset
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 |
root@ubuntu:~# ./swi_usbcomp.pl --reset Running in MBIM mode (driver=cdc_mbim) MBIM OPEN succeeded QMI msg '0x0021' returned status = 1 MBIM QMI support verified supports 33 QMI subsystems: 0x00 (1.5) 'QMI_CTL' - Control service 0x01 (1.67) 'QMI_WDS' - Wireless data service 0x02 (1.14) 'QMI_DMS' - Device management service 0x03 (1.25) 'QMI_NAS' - Network access service 0x04 (1.6) 'QMI_QOS' - Quality of service, err, service 0x05 (1.10) 'QMI_WMS' - Wireless messaging service 0x07 (1.3) 'QMI_AUTH' - Authentication service 0x08 (1.2) 'QMI_AT' - AT command processor service 0x09 (2.1) 'QMI_VOICE' - Voice service 0x0a (2.24) 'QMI_CAT2' - Card application toolkit service (new) 0x0b (1.45) 'QMI_UIM' - UIM service 0x0c (1.4) 'QMI_PBM' - Phonebook service 0x0f (1.0) 'QMI_TEST' - Test service 0x10 (2.0) 'QMI_LOC' - Location service 0x11 (1.0) 'QMI_SAR' - Specific absorption rate service 0x17 (1.0) 'QMI_TS' - Thermal sensors service 0x18 (1.0) 'QMI_TMD' - Thermal mitigation device service 0x1a (1.16) 'QMI_WDA' - Wireless data administrative service 0x1d (1.1) 'QMI_CSVT' - Circuit switched videotelephony service 0x22 (1.0) 'QMI_COEX' - Coexistence service 0x24 (1.0) 'QMI_PDC' - Persistent device configuration service 0x29 (1.0) 'QMI_RFRPE' - RF radiated performance enhancement service 0x2a (1.0) 'QMI_DSD' - Data system determination service 0x2b (1.0) 'QMI_SSCTL' - Subsystem control service 0x2e (1.0) 'unknown' - 0x30 (1.0) 'unknown' - 0x31 (1.0) 'unknown' - 0x36 (1.0) 'unknown' - 0xe1 (1.0) 'QMI_RMS' - Remote management service 0xf0 (1.0) 'unknown' - 0xf3 (1.0) 'unknown' - 0xf5 (1.0) 'unknown' - 0xf6 (1.0) 'unknown' - QMI msg '0x0022' returned status = 1 Got QMI DMS client ID '3' QMI msg '0x555b' returned status = 1 Current USB composition: 8 USB compositions: 0 - HIP DM NMEA AT MDM1 MDM2 MDM3 MS NOT SUPPORTED 1 - HIP DM NMEA AT MDM1 MS NOT SUPPORTED 2 - HIP DM NMEA AT NIC1 MS NOT SUPPORTED 3 - HIP DM NMEA AT MDM1 NIC1 MS NOT SUPPORTED 4 - HIP DM NMEA AT NIC1 NIC2 NIC3 MS NOT SUPPORTED 5 - HIP DM NMEA AT ECM1 MS NOT SUPPORTED 6 - DM NMEA AT QMI SUPPORTED 7 - DM NMEA AT RMNET1 RMNET2 RMNET3 NOT SUPPORTED * 8 - DM NMEA AT MBIM SUPPORTED 9 - MBIM SUPPORTED 10 - NMEA MBIM NOT SUPPORTED 11 - DM MBIM NOT SUPPORTED 12 - DM NMEA MBIM NOT SUPPORTED 13 - Config1: comp6 Config2: comp8 NOT SUPPORTED 14 - Config1: comp6 Config2: comp9 NOT SUPPORTED 15 - Config1: comp6 Config2: comp10 NOT SUPPORTED 16 - Config1: comp6 Config2: comp11 NOT SUPPORTED 17 - Config1: comp6 Config2: comp12 NOT SUPPORTED 18 - Config1: comp7 Config2: comp8 NOT SUPPORTED 19 - Config1: comp7 Config2: comp9 NOT SUPPORTED 20 - Config1: comp7 Config2: comp10 NOT SUPPORTED 21 - Config1: comp7 Config2: comp11 NOT SUPPORTED 22 - Config1: comp7 Config2: comp12 NOT SUPPORTED QMI msg '0x002e' returned status = 1 eof ...propagated at ./swi_usbcomp.pl line 251. root@ubuntu:~# |
Now you can close the terminal and reboot the Ubuntu. Remove the USB Flash drive from your laptop and restore the boot settings in your BIOS if you altered it. Now boot back to Windows and you’ll see 3 COM ports appear in the Device Manager: AT port for commands, NMEA port for GPS data and Quallcomm diagnostic port. All of these ports can be very useful and I will describe working with them in one of my next posts.
That was the preferred method of enabling COM ports and you should try it first. There is also another way, which is not recommended, because it requires to install some Windows drivers that potentially can flash your EM7455 automatically without asking any permission. If you still need to do that, proceed with caution!
Method 2. Not really recommended.
First, note what brand your device is (look at the sticker) and check the device ID in the Windows Device Manager. There can be the following ID for the EM7455 module:
1 2 3 4 5 |
VID : PID 413C : 81B6 - Dell DW5811e LTE version 413C : 81B8 - Dell DW5811e HSPA only version (do not get this) 1199 : 9071 - EM7455 Generic Sierra Wireless 1199 : 9079 - EM7455 Lenovo version |
Then you’ll need to download your device’s corresponding driver:
Download Lenovo drivers
Download Dell drivers
Sierra Wireless Generic drivers
After downloading, unpack the driver by using 7Zip so you get the following files:
Dell driver:
Sierra Wireless driver:
For the Lenovo driver, it’s a little more complicated as 7Zip won’t recognize the file format to unpack it. To unpack it, first run the downloaded file:
Follow all the steps, including the path where you want the driver to be extracted. After extracting the drivers you will see the following dialog, make sure to untick “Install Sierra Wireless EM7455 Software now”:
After that, you will find the extracted driver at the location you specified:
Now, you need to run the extracted driver EXE file with USBCOMP=8 command line. For example:
Complete the driver installation, then wait for 20 minutes. The driver will install all corresponding files and change the USB composition, and COM ports will appear in your Device Manager. The EM7455 will restart several times during that process, do not reboot Windows before it’s finished. Just wait for 20 minutes after the driver is installed. It’s possible that the drivers will flash your EM7455 automatically with some newer software version during installation. Just allow it to do its work and DO NOT INTERRUPT the process. After the COM ports are enabled, you can uninstall the drivers, because they include a lot of unneeded bloatware, like some Windows services to change the firmware, etc. Well, the latter is up to you, I personally prefer not to have any extra program or service running in my laptop besides vanilla device drivers.
If you prefer to have just vanilla drivers, just run the extracted driver EXE file with EXTRACTDRIVERS=1 command line:
It will extract the drivers to some folder next to the driver EXE file:
Inside that folder, namely “Lenovo Mobile Broadband Driver Package” you will find a driver package ready to be installed. Just open the “Unrecognized device” properties in Device Manager and click “Install Driver”, then point Windows to the this extracted folder. The driver will be installed.
Hi,
Followed the stepsm however after using “./swi_usbcomp.pl ” command, not getting the desired output.
Thanks
What is your device exactly? What is the device USB VID/PID? What exactly output you’re getting?
Hi,
I have Lenovo Sierra EM7455, with these H/W ID – 1199 : 9079
While using the command this what I am getting :
ubuntu@ubuntu:~$ sudo -i
root@ubuntu:~# ./swi_usbcomp.pl
Use of uninitialized value in subroutine entry at ./swi_usbcomp.pl line 481.
‘/dev/cdc-wdm0’ is not a character device
root@ubuntu:~#
Is your device visible in Windows Device Manager? Looks like Ubuntu cannot see your device at all. What is your current composition? Maybe you have MBIM disabled, in that case you cannot switch the USB composition as described in this post, because it requires a working MBIM interface.
Try to check if Linux can detect your device at all:
sudo ls -la /dev/cdc*
and
sudo dmesg | grep cdc
Most likely your device is showing up as “cdc-wdm#” and not as the default “cdc-wdm0”
You can find out what number your device is by typing on the following
ls /dev
Look for “cdc-wdm#”. Now you’ll need to type following (replace # with the number that shows up in your system)
./swi_usbcomp.pl –device=/dev/cdc-wdm#
./swi_usbcomp.pl –device=/dev/cdc-wdm2 –usbcomp=8
Btw, zukota, you have a typo in your guide. You’re missing a hyphen for –usbcomp=8.
I’m actually having the same issue, the cdc_mbim driver is failing to initialize the device, ex.
[ 462.502716] usb 1-2: new high-speed USB device number 4 using xhci_hcd
[ 462.827026] usb 1-2: config 1 interface 0 altsetting 0 bulk endpoint 0x1 has invalid maxpacket 64
[ 462.827027] usb 1-2: config 1 interface 0 altsetting 0 bulk endpoint 0x81 has invalid maxpacket 64
[ 462.827641] usb 1-2: New USB device found, idVendor=1199, idProduct=9078
[ 462.827642] usb 1-2: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[ 462.827643] usb 1-2: Product: Sierra Wireless EM7455 Qualcomm
[ 462.827644] usb 1-2: Manufacturer: Sierra Wireless, Incorporated
[ 462.827644] usb 1-2: SerialNumber: LF**************
[ 463.463520] usb 1-2: USB disconnect, device number 4
[ 474.169208] usb 1-2: new high-speed USB device number 5 using xhci_hcd
[ 474.493926] usb 1-2: config 1 has an invalid interface number: 12 but max is 1
[ 474.493927] usb 1-2: config 1 has an invalid interface number: 13 but max is 1
[ 474.493927] usb 1-2: config 1 has an invalid interface number: 13 but max is 1
[ 474.493928] usb 1-2: config 1 has no interface number 0
[ 474.493929] usb 1-2: config 1 has no interface number 1
[ 474.494614] usb 1-2: New USB device found, idVendor=1199, idProduct=9079
[ 474.494615] usb 1-2: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[ 474.494616] usb 1-2: Product: Sierra Wireless EM7455 Qualcomm Snapdragon X7 LTE-A
[ 474.494616] usb 1-2: Manufacturer: Sierra Wireless, Incorporated
[ 474.494617] usb 1-2: SerialNumber: LF***************
[ 474.495211] cdc_mbim 1-2:1.12: failed GET_NTB_PARAMETERS
[ 474.495213] cdc_mbim 1-2:1.12: bind() failure
This is happening with both a Dell dw5811e and the Lenovo EM7455 using a USB to WWAN M.2 adapter.
Hey, Zukota & Mike!
Thanx for the great tutorial – just a HEADS UP for others who got stuck with swi_usbcomp.pl “not doing anything”. It seems that this comment thread replaces normal hyphens (minuses) with a slightly more readible ndash HTML character.
Mike already commented that the hyphen is missing, but it’s actually replaced.
In other to fix this, just paste the -usbcomp=8 line and then replace the long minus with the proper one by typing it. Either that, or don’t copy paste but retype the command, it’s not that long 🙂
In windows, device manager the device is showing. How to enable/activate the MBIM interface?
Your solution is flawed for TP 8 users, as legacy boot is ‘disabled’.
https://forums.lenovo.com/t5/Linux-Discussion/Unable-to-select-Legacy-Boot-option-on-Lenovo-ThinkPad-8/td-p/1501584
Any reliable way to activate COM ports on a TP8 without inadvertently flashing the EM7345 rom.
Hi, thanks for this article! I see in your console output that the em7455 supports the QMI_VOICE MBIM service. Does this mean that this module finally supports ordinary incoming/outgoing cell phone calls in Win 10 pro? Maybe even with wake from standby on incoming calls? That would be great. Could you please share your experiences? In particular, is a special firmware or app required or is the Microsoft Phone app in Win 10 pro sufficient? Thanks!
As far as I know, Sierra Wireless promised to include voice call functionality in one of the future firmware updates. Up until now, it’s not yet implemented. There was a thread on Sierra Wireless forums about that as far as I remember.
Hi…Dear Zukota…
here was my comment at the Lenovo Forum side…
Sierra Wireless EM7455 COM ports are Locked… Lenovo Why do you do something like that? [ Edited ]
03-27-2017 01:20 AM – edited 03-27-2017 01:32 AM
Lenovo why you lock the com ports on the Sierra Wireless EM7455 ?????
USB composition for the EM7455 is set to 9, which is MBIM only. I need to have MBIM and also COM ports for the AT commands and NMEA GPS data. So I need the USB composition 8
My question how to enable the com ports again ???
thank you in Advance…
and here was the official answer…
x220forme
Posts: 7,522
Registered: 06-06-2011
Location: RU
Message 2 of 2 (41 Views)
Re: Sierra Wireless EM7455 COM ports are Locked… Lenovo Why do you do something like that? [ Edited ]
03-27-2017 01:52 AM – edited 03-27-2017 01:53 AM
Hello and welcome
That’s not a Lenovo deal to lock the ports, more clearly, to choose appropriate default USB composition. MS and Sierra do that.
To change default USB composition change Sierra wwan card drivers installation configuration and reinstall them. Edit the configuration.ini file within the drivers package:
– [Default Values] section
– USBCOMP=x parameter (choose 8 as you want).
x220 • Gobi 2000 3g | x220 • hdd, msata ssd, 3g, wifi, gps — unique hand-made config
x1c Gen3 (2015) • WQHD MT IPS, PCIe ssd
Miix 2 10″ | Yoga Tablet 2-1050F (Android 5.0), BKC800 BT Keyboard, FolioCase
ThinkPad Stack • 2.4/5 wireless router, hdd 1 TB, BT speaker, power bank
Do it well, worse becomes itself
English Community Deutsche Community Comunidad en Español Русскоязычное Сообщество
Share your input on the #Retro ThinkPad Time Machine
http://blog.lenovo.com/en/blog/retro-thinkpad-time-machine/
and here is the link…
https://forums.lenovo.com/t5/ThinkPad-X-Series-Laptops/Sierra-Wireless-EM7455-COM-ports-are-Locked-Lenovo-Why-do-you-do/m-p/3620040#M75683
Thanks. I know the Sierra thread you mean. The above console output “supports 33 QMI subsystems: … 9 (2.1) ‘QMI_VOICE’ – Voice service” just sounded so hopeful/implemented. But its more waiting, I guess.
This sounds related to an issue I have seen when using MultiSIM cards (multiple SIM cards tied to one phone number) in a phone and in a WWAN card on the laptop. When roaming the SIM card in the phone is capable of making outgoing calls but not receiving incoming calls. As per the carrier they can see in the logs that when a call comes in it is routed to a SIM in a Thinkpad but the call rather than the phone and the call ends up on voice mail (as the Thinkpad cannot take the call). I found that Lenovo provided new firmware for laptops with Huawei modems to support multi-sim carriers but nothing in the change log for Sierra EM7455. I tried the latest firmware from the 7.34.4643.0102 package without success. Cross checked the SIM cards and the functionality of the phone is restored when both SIM cards are in a phone and registered with the network, so it seems the WWAN card/Firmware is somehow involved. Netsh mbn sh cap int=* shows Voice class: No Voice.
Could that be related ?
So far, as far as I know, there’s no voice capability in EM7455 firmware.
Hi !
Wonderfull ! I was looking for such thing !
Just a question: is it possible to unlock a Lenovo ? Because i’m in Morocco for a while and it’s not working here. And I don’t know why my SIM carte is written “Lock SIM card : Locked”… And “Mobile Number” is blank, but I’ve got one ! Everything’s work with a phone but nothing with the Lenovo…
Maybe you could help me ?
zukota,
correct link to the Bjorn Mork’ page differs a bit: http://www.mork.no/~bjorn/MC7455-fix.txt
Need helps for lenovo em7455. big pain to switch em7455 to generic FW. after installed Sierrra or lenovo driver for lenovo em7455 in no-lenovo win10 pc, my device manager only showed ” Sierra Wireless EM7455 Qualcomm® Snapdragon™ X7 LTE-A QDLoader port (com3) ” have the ! On them with error code 10 (not start). When i try to update other drivers it says they are up to date. Its also listed with the same error 10.In skylight it says no connection so no way open AT command. Someone told only can flash it in linux. Found this link to enable com ports ( the first method). tried to connect em7455 in Ubuntu, nothing can see. don’t know if the em7455 works on mbim model.
./swi_usbcomp.pl showing /dev/cdc-wdm0′ is not a character device
I have a very similar problem. I have a Dell Latitude 7370 and I installed in a lenovo em7455 from a Lenovo P50. Mine says Sierra Wireless EM7455 iQualcomm® Snapdragon™ X7 LTE-A QDLoader port (com4) ” with the same error code 10. I am in ubuntu now and ./swi_usbcomp.pl does not work.
Zukota can you please help with this??
fix my issue through finding one lenovo T510 laptop. switched to generic FW and MIBM model. can be recognized in non-lenovo PC. But lenovo em7455 can not link to 4G LTE, no service. test sim card fine. no idea why no connection.
i got still problems here…please help…what is wrong here ..it is still the 9 and no way to chang it to 8…
ubuntu@ubuntu:~$ sudo -i
root@ubuntu:~# ./swi_usbcomp.pl
Running in MBIM mode (driver=cdc_mbim)
MBIM OPEN succeeded
QMI msg ‘0x0021’ returned status = 1
MBIM QMI support verified
supports 33 QMI subsystems:
0x00 (1.5) ‘QMI_CTL’ – Control service
0x01 (1.67) ‘QMI_WDS’ – Wireless data service
0x02 (1.14) ‘QMI_DMS’ – Device management service
0x03 (1.25) ‘QMI_NAS’ – Network access service
0x04 (1.6) ‘QMI_QOS’ – Quality of service, err, service
0x05 (1.10) ‘QMI_WMS’ – Wireless messaging service
0x07 (1.3) ‘QMI_AUTH’ – Authentication service
0x08 (1.2) ‘QMI_AT’ – AT command processor service
0x09 (2.1) ‘QMI_VOICE’ – Voice service
0x0a (2.24) ‘QMI_CAT2’ – Card application toolkit service (new)
0x0b (1.45) ‘QMI_UIM’ – UIM service
0x0c (1.4) ‘QMI_PBM’ – Phonebook service
0x0f (1.0) ‘QMI_TEST’ – Test service
0x10 (2.0) ‘QMI_LOC’ – Location service
0x11 (1.0) ‘QMI_SAR’ – Specific absorption rate service
0x17 (1.0) ‘QMI_TS’ – Thermal sensors service
0x18 (1.0) ‘QMI_TMD’ – Thermal mitigation device service
0x1a (1.16) ‘QMI_WDA’ – Wireless data administrative service
0x1d (1.1) ‘QMI_CSVT’ – Circuit switched videotelephony service
0x22 (1.0) ‘QMI_COEX’ – Coexistence service
0x24 (1.0) ‘QMI_PDC’ – Persistent device configuration service
0x29 (1.0) ‘QMI_RFRPE’ – RF radiated performance enhancement service
0x2a (1.0) ‘QMI_DSD’ – Data system determination service
0x2b (1.0) ‘QMI_SSCTL’ – Subsystem control service
0x2e (1.0) ‘unknown’ –
0x30 (1.0) ‘unknown’ –
0x31 (1.0) ‘unknown’ –
0x36 (1.0) ‘unknown’ –
0xe1 (1.0) ‘QMI_RMS’ – Remote management service
0xf0 (1.0) ‘unknown’ –
0xf3 (1.0) ‘unknown’ –
0xf5 (1.0) ‘unknown’ –
0xf6 (1.0) ‘unknown’ –
QMI msg ‘0x0022’ returned status = 1
Got QMI DMS client ID ‘3’
QMI msg ‘0x555b’ returned status = 1
Current USB composition: 9
USB compositions:
0 – HIP DM NMEA AT MDM1 MDM2 MDM3 MS NOT SUPPORTED
1 – HIP DM NMEA AT MDM1 MS NOT SUPPORTED
2 – HIP DM NMEA AT NIC1 MS NOT SUPPORTED
3 – HIP DM NMEA AT MDM1 NIC1 MS NOT SUPPORTED
4 – HIP DM NMEA AT NIC1 NIC2 NIC3 MS NOT SUPPORTED
5 – HIP DM NMEA AT ECM1 MS NOT SUPPORTED
6 – DM NMEA AT QMI SUPPORTED
7 – DM NMEA AT RMNET1 RMNET2 RMNET3 NOT SUPPORTED
8 – DM NMEA AT MBIM SUPPORTED
* 9 – MBIM SUPPORTED
10 – NMEA MBIM NOT SUPPORTED
11 – DM MBIM NOT SUPPORTED
12 – DM NMEA MBIM NOT SUPPORTED
13 – Config1: comp6 Config2: comp8 NOT SUPPORTED
14 – Config1: comp6 Config2: comp9 NOT SUPPORTED
15 – Config1: comp6 Config2: comp10 NOT SUPPORTED
16 – Config1: comp6 Config2: comp11 NOT SUPPORTED
17 – Config1: comp6 Config2: comp12 NOT SUPPORTED
18 – Config1: comp7 Config2: comp8 NOT SUPPORTED
19 – Config1: comp7 Config2: comp9 NOT SUPPORTED
20 – Config1: comp7 Config2: comp10 NOT SUPPORTED
21 – Config1: comp7 Config2: comp11 NOT SUPPORTED
22 – Config1: comp7 Config2: comp12 NOT SUPPORTED
QMI msg ‘0x0023’ returned status = 1
root@ubuntu:~# ./swi_usbcomp.pl –usbcomp=8
Running in MBIM mode (driver=cdc_mbim)
MBIM OPEN succeeded
QMI msg ‘0x0021’ returned status = 1
MBIM QMI support verified
supports 33 QMI subsystems:
0x00 (1.5) ‘QMI_CTL’ – Control service
0x01 (1.67) ‘QMI_WDS’ – Wireless data service
0x02 (1.14) ‘QMI_DMS’ – Device management service
0x03 (1.25) ‘QMI_NAS’ – Network access service
0x04 (1.6) ‘QMI_QOS’ – Quality of service, err, service
0x05 (1.10) ‘QMI_WMS’ – Wireless messaging service
0x07 (1.3) ‘QMI_AUTH’ – Authentication service
0x08 (1.2) ‘QMI_AT’ – AT command processor service
0x09 (2.1) ‘QMI_VOICE’ – Voice service
0x0a (2.24) ‘QMI_CAT2’ – Card application toolkit service (new)
0x0b (1.45) ‘QMI_UIM’ – UIM service
0x0c (1.4) ‘QMI_PBM’ – Phonebook service
0x0f (1.0) ‘QMI_TEST’ – Test service
0x10 (2.0) ‘QMI_LOC’ – Location service
0x11 (1.0) ‘QMI_SAR’ – Specific absorption rate service
0x17 (1.0) ‘QMI_TS’ – Thermal sensors service
0x18 (1.0) ‘QMI_TMD’ – Thermal mitigation device service
0x1a (1.16) ‘QMI_WDA’ – Wireless data administrative service
0x1d (1.1) ‘QMI_CSVT’ – Circuit switched videotelephony service
0x22 (1.0) ‘QMI_COEX’ – Coexistence service
0x24 (1.0) ‘QMI_PDC’ – Persistent device configuration service
0x29 (1.0) ‘QMI_RFRPE’ – RF radiated performance enhancement service
0x2a (1.0) ‘QMI_DSD’ – Data system determination service
0x2b (1.0) ‘QMI_SSCTL’ – Subsystem control service
0x2e (1.0) ‘unknown’ –
0x30 (1.0) ‘unknown’ –
0x31 (1.0) ‘unknown’ –
0x36 (1.0) ‘unknown’ –
0xe1 (1.0) ‘QMI_RMS’ – Remote management service
0xf0 (1.0) ‘unknown’ –
0xf3 (1.0) ‘unknown’ –
0xf5 (1.0) ‘unknown’ –
0xf6 (1.0) ‘unknown’ –
QMI msg ‘0x0022’ returned status = 1
Got QMI DMS client ID ‘3’
QMI msg ‘0x555b’ returned status = 1
Current USB composition: 9
USB compositions:
0 – HIP DM NMEA AT MDM1 MDM2 MDM3 MS NOT SUPPORTED
1 – HIP DM NMEA AT MDM1 MS NOT SUPPORTED
2 – HIP DM NMEA AT NIC1 MS NOT SUPPORTED
3 – HIP DM NMEA AT MDM1 NIC1 MS NOT SUPPORTED
4 – HIP DM NMEA AT NIC1 NIC2 NIC3 MS NOT SUPPORTED
5 – HIP DM NMEA AT ECM1 MS NOT SUPPORTED
6 – DM NMEA AT QMI SUPPORTED
7 – DM NMEA AT RMNET1 RMNET2 RMNET3 NOT SUPPORTED
8 – DM NMEA AT MBIM SUPPORTED
* 9 – MBIM SUPPORTED
10 – NMEA MBIM NOT SUPPORTED
11 – DM MBIM NOT SUPPORTED
12 – DM NMEA MBIM NOT SUPPORTED
13 – Config1: comp6 Config2: comp8 NOT SUPPORTED
14 – Config1: comp6 Config2: comp9 NOT SUPPORTED
15 – Config1: comp6 Config2: comp10 NOT SUPPORTED
16 – Config1: comp6 Config2: comp11 NOT SUPPORTED
17 – Config1: comp6 Config2: comp12 NOT SUPPORTED
18 – Config1: comp7 Config2: comp8 NOT SUPPORTED
19 – Config1: comp7 Config2: comp9 NOT SUPPORTED
20 – Config1: comp7 Config2: comp10 NOT SUPPORTED
21 – Config1: comp7 Config2: comp11 NOT SUPPORTED
22 – Config1: comp7 Config2: comp12 NOT SUPPORTED
QMI msg ‘0x0023’ returned status = 1
root@ubuntu:~# ./swi_usbcomp.pl –reset
Running in MBIM mode (driver=cdc_mbim)
MBIM OPEN succeeded
QMI msg ‘0x0021’ returned status = 1
MBIM QMI support verified
supports 33 QMI subsystems:
0x00 (1.5) ‘QMI_CTL’ – Control service
0x01 (1.67) ‘QMI_WDS’ – Wireless data service
0x02 (1.14) ‘QMI_DMS’ – Device management service
0x03 (1.25) ‘QMI_NAS’ – Network access service
0x04 (1.6) ‘QMI_QOS’ – Quality of service, err, service
0x05 (1.10) ‘QMI_WMS’ – Wireless messaging service
0x07 (1.3) ‘QMI_AUTH’ – Authentication service
0x08 (1.2) ‘QMI_AT’ – AT command processor service
0x09 (2.1) ‘QMI_VOICE’ – Voice service
0x0a (2.24) ‘QMI_CAT2’ – Card application toolkit service (new)
0x0b (1.45) ‘QMI_UIM’ – UIM service
0x0c (1.4) ‘QMI_PBM’ – Phonebook service
0x0f (1.0) ‘QMI_TEST’ – Test service
0x10 (2.0) ‘QMI_LOC’ – Location service
0x11 (1.0) ‘QMI_SAR’ – Specific absorption rate service
0x17 (1.0) ‘QMI_TS’ – Thermal sensors service
0x18 (1.0) ‘QMI_TMD’ – Thermal mitigation device service
0x1a (1.16) ‘QMI_WDA’ – Wireless data administrative service
0x1d (1.1) ‘QMI_CSVT’ – Circuit switched videotelephony service
0x22 (1.0) ‘QMI_COEX’ – Coexistence service
0x24 (1.0) ‘QMI_PDC’ – Persistent device configuration service
0x29 (1.0) ‘QMI_RFRPE’ – RF radiated performance enhancement service
0x2a (1.0) ‘QMI_DSD’ – Data system determination service
0x2b (1.0) ‘QMI_SSCTL’ – Subsystem control service
0x2e (1.0) ‘unknown’ –
0x30 (1.0) ‘unknown’ –
0x31 (1.0) ‘unknown’ –
0x36 (1.0) ‘unknown’ –
0xe1 (1.0) ‘QMI_RMS’ – Remote management service
0xf0 (1.0) ‘unknown’ –
0xf3 (1.0) ‘unknown’ –
0xf5 (1.0) ‘unknown’ –
0xf6 (1.0) ‘unknown’ –
QMI msg ‘0x0022’ returned status = 1
Got QMI DMS client ID ‘3’
QMI msg ‘0x555b’ returned status = 1
Current USB composition: 9
USB compositions:
0 – HIP DM NMEA AT MDM1 MDM2 MDM3 MS NOT SUPPORTED
1 – HIP DM NMEA AT MDM1 MS NOT SUPPORTED
2 – HIP DM NMEA AT NIC1 MS NOT SUPPORTED
3 – HIP DM NMEA AT MDM1 NIC1 MS NOT SUPPORTED
4 – HIP DM NMEA AT NIC1 NIC2 NIC3 MS NOT SUPPORTED
5 – HIP DM NMEA AT ECM1 MS NOT SUPPORTED
6 – DM NMEA AT QMI SUPPORTED
7 – DM NMEA AT RMNET1 RMNET2 RMNET3 NOT SUPPORTED
8 – DM NMEA AT MBIM SUPPORTED
* 9 – MBIM SUPPORTED
10 – NMEA MBIM NOT SUPPORTED
11 – DM MBIM NOT SUPPORTED
12 – DM NMEA MBIM NOT SUPPORTED
13 – Config1: comp6 Config2: comp8 NOT SUPPORTED
14 – Config1: comp6 Config2: comp9 NOT SUPPORTED
15 – Config1: comp6 Config2: comp10 NOT SUPPORTED
16 – Config1: comp6 Config2: comp11 NOT SUPPORTED
17 – Config1: comp6 Config2: comp12 NOT SUPPORTED
18 – Config1: comp7 Config2: comp8 NOT SUPPORTED
19 – Config1: comp7 Config2: comp9 NOT SUPPORTED
20 – Config1: comp7 Config2: comp10 NOT SUPPORTED
21 – Config1: comp7 Config2: comp11 NOT SUPPORTED
22 – Config1: comp7 Config2: comp12 NOT SUPPORTED
QMI msg ‘0x0023’ returned status = 1
root@ubuntu:~# sudo ls -la /dev/cdc*
crw——- 1 root root 180, 0 Sep 15 10:00 /dev/cdc-wdm0
root@ubuntu:~# sudo dmesg | grep cdc
[ 16.828322] usbcore: registered new interface driver cdc_ncm
[ 16.846467] usbcore: registered new interface driver cdc_wdm
[ 16.921110] cdc_mbim 1-2:1.12: cdc-wdm0: USB WDM device
[ 16.921270] cdc_mbim 1-2:1.12 wwan0: register ‘cdc_mbim’ at usb-0000:00:14.0-2, CDC MBIM, 72:ca:8a:44:2f:36
[ 16.921290] usbcore: registered new interface driver cdc_mbim
[ 16.983846] cdc_mbim 1-2:1.12 wwp0s20f0u2i12: renamed from wwan0
root@ubuntu:~#
I have the same problem with carbon x1
Thanks a lot for the article!
Small note: if you’re already on linux, you can grab the script swi_setusbcomp.pl from here https://git.mork.no/wwan.git/plain/scripts/swi_setusbcomp.pl
Then, in case of Ubuntu Xenial, install a couple of packages:
sudo apt install libuuid-tiny-perl libipc-shareable-perl
And just run that script.
Hi zukota,
First of all, thanks a lot for all your efforts, I appreciate it so much!
Right now I’m having troubles making my em7455 to work on Ubuntu 16.04 (tried on 18.04 beta as well), and firstly I successfully switched the mode to 8 (DM NMEA AT MBIM) using your script. The modem registers in the network fine, however I still was unable to connect (
journalctl -f
was saying that the reason is “unknown”), and I’ve read a few other suggestions to use QMI instead of MBIM, so I tried to switch to mode 6 (DM NMEA AT QMI). It switched fine, then I resetted it, and since that, the modem doesn’t even register in the network. Even more, when I run your script without arguments, it says “Failed to verify QMI”:$ sudo ./swi_setusbcomp.pl
Running in QMI mode (driver=qmi_wwan)
Failed to verify QMI
There are a few serial ports for the modem, and I can successfully communicate with it (e.g. I can type
AT!ENTERCND="A710"
and it responds withOK
), but as I said, it doesn’t register in the network and I’m not even able to switch back to MBIM due to the error above.If you could share any ideas on how it could be fixed, I’d be very happy.
Thanks!
I am attempting this proccess on getac tablets with Windows 10. The first 4 worked no problem. The last 2 change to usbcomp=8 in unbuntu but as soon as windows boots it changes back to usbcomp=9. I’ve tried doing a full wipe if the tablet, ran threw the process numerous times and still no luck. Any ideas?
You need to remove any EM7455 drivers in Windows you might have installed. Those drivers are actually a whole lot more trash than just drivers, it includes several programs running in background and changing composition on boot. You DO NOT neet to have any drivers installed, as EM7455 will work with Windows 10 by default.