Sierra MC73xx working
-
After 3 weeks i finally have a module working!
Support was added to pfSense to support in version 2.2.3 and i bought an MC7354 from a large electronics firm. Module came in and it had a different Product ID than the module added to FreeBSD. Added was a device with VID/PID 1199:6820 and my module showed up as 1199:68C0. Would not work. Bummer. So buy another a week later. Same thing different supplier 1199:68C0. So i decided to go the hardware route and switch the module PID to 6820. Quite a learning experience.Anybody running one of these modules???
I finally got an EM7355 working and not the two MC7354's i bought for pfSense. Seems you can only switch to PID's which are hardcoded to the module/firmware. Some MC73xx will work some won't. My suspicion is they have removed the needed PID from the newer firmwares.
-
Thanks to J.Porter and Netgate we have a working -currently for sale and vendor supported- LTE Module.
Here are the extended AT commands I needed. I used Putty in both Ubuntu and Windows to access the Serial Port/TTYUSB.(AT port used found in Windows Device Manager)
AT!ENTERCND="A710"
This is to enter extended commands needed for extended outputAT!UDINFO?
This pulls up the info on VID/PIDAT!UDPID=?
Here is the command to check to see if your device supports 6820 pid.
If PID is not supported it will fail showing ERROR on switch attempt.AT!UDPID=6820
This is the command to switch to supported PID.YOU MAY NOT BE ABLE TO SWITCH BACK. USE AT OWN RISK. YOU CAN BRICK A MODULE.
Careful with this following information. Not needed. Purely Informational.
AT!UDUSBCOMP?
The default firmware setting for your module mode is found by this command.AT!UDUSBCOMP=?
pfSense seems to work with default #6. Notice #9 has no AT console..MBIM only. Beware.thread Linux contributor BMORK is the most knowledgeable person on this subject.
http://lists.freedesktop.org/archives/libqmi-devel/2014-May/000788.html-Edited for accuracy-
-
So I am using this EM7355 (An M.2 form factor module) In a converter board - M.2 to mini-Pcie for testing.
The newer style M.2 modules- Both wifi and cellular- use a newer Antenna connector, very similar to Ipex/u.fl but smaller yet.
Called Ipex/MHF4.I should also note i cannot use this module in Windows anymore as I have modified the PID and driver uses that for device ID.
-
So in case i was not clear, The whole MC73xx family now uses the same firmware. So except for differences in the radio frequency of different regions -they are the same. Some offer "Voice over LTE" but the carriers have minimally adopted the standard. PCM audio on the modem is the difference.
Mini PCIe Modules
MC7304-Europe
MC7305-Europe-VoLTE supported
MC7330-Australia
MC7354-North America
MC7355-North America-VoLTE supportedNGFF/M.2 Modules
EM7305-Europe
EM7355-North AmericaEven within same models there are different SKU's
EM7355
1101637-OEM
1101766-IBM 04W3801
1101797-Dell DW5808e 2NDHX
1102173-Dell DW5808e PN10C
1101825-HP
1102091-HP
1101889-FujistuMC7355
1101796-Dell DW5808 1N1FY
1101888-Panasonic
1101906-OEMMC7354
1102016-OEMSo that is what I have found. Anyone care to correct any inaccuracies.
If your thinking of buying one of these beware. The support is limited to only one PID while there are many PID's in the field.
-
I think I have found the problem. The one module i have that works has a firmware version that is different than the rest.
ATI command shows firmware SWI9X15C_01.03.03 r8561 -Dated 12-4-12
All the versions on the internet are SWI9X15C_05.05.16 and up.
The strange thing is that when you run AT!UDPID=? to show available PID's the 6820 PID is not shown.
PID's for the older firmware:
9041
9061
9051
9053
9054
9056
68A2Now the PID's for the newer firmware:
9041
9054
9056
68A2
68B1
68C0The 68A2 is the same as the MC7710 and is the PID that was assigned to the EM7355 that I switched to PID=6820 and have working.
-
Was really happy to find CU (terminal program) a pfSense default as well. I did not even have to set up PPP to talk to the cuaU0.1 port.
cu -l /dev/cuaU0.1
I had all kind of troubles with term, under PPP. Now i have something i can use.
-
Here are my screenshots for the MC7354 -with the newer firmware- and its various settings. Cannot run in pfSense as is.
-
Here are the some PID's found in SierraMC73xx firmware.
MC7355/MC7355 – VID=0x1199
User defined PID with AT!UDPID=xxxx
0x9041
0x9054
0x9056
0x68A2
0x68B1
0X68C0Dell DW5808 -VID=0x413C
Factory PID=0x81A8User defined PID with AT!UDPID=xxxx On the Dell DW5808 Module
0x9041
0x9051
0x9053
0x9054
0X9056
0x68A2
0x68B1
–--------------------------------------------------Linux qcserial PID assignment for cross reference.
0x9041-Sierra Wireless MC7305/MC7355
0x9051-Netgear AirCard 340U Modem
0x9053-Sierra Wireless Modem
0x9054-Sierra Wireless Modem
0X9056-Netgear AirCard 341U Modem
0x68A2-MC7710 QMI Mode
0x68B1-None
–---------------------------------------------------Current FreeBSD USBDEVS -PID Assignments-
0x9041-Not assigned
0x9051-Not Assigned
0x9053-Not Assigned
0x9054-Not Assigned
0X9056-Not Assigned
0x68A2-Not Assigned
0x68B1-Not Assigned
0x68C0-Not Assigned
–----------------------------------------------------Product ID's I would like to be added to USBDEVS/U3G
VID:1199 PID:68C0 DEVICE_DESC: Sierra Wireless MC7355
VID:1199 PID:68A2 DEVICE_DESC: Sierra Wireless EM7355
VID:1199 PID:9041 DEVICE_DESC: Sierra Wireless MC7355
VID:413C PID:818A DEVICE_DESC: Dell DW5808 Wireless Modem (MC7355) -
Here are some more informational screen shots showing firmware, PID's and USBCOMP mode. These are for the MC7355
-
Here are the user selectable PID's for the MC7355.
-
Here are the Dell DW5808 details. This is also a MC7355.
They have more PID's on their list than any other. Strange how the default PID 81A8 is not in the list. Modes are different too.
-
I was able to convert a Dell DW5808 to the native Sierra MC7355.
AT!UDVID=1199 and AT!UDPID=9041
Turns your rotten Dell locked module into a generic OEM module usable in any Windows machine with stock drivers.
I only tried it on one module so YMMV. It had an early firmware and i couldn't coax PID:6820 out of it…
-
While getting a couple of modules flashed to the latest ATT firmware for a trip to Texas and I decided to take them live. Most of my testing is done with no antennas, so last step is antennas before use. Used windows and flashed them -then fired up the Sierra Skylight Watcher. The speedometer/indicator was on LTE at first, then seem to drop to 3G HPSA+ and lots of back and forth and maybe even 2G/UMTS flashed up.. Seemed erratic. Used my new AT command skills and hit the extended commands pdf. AT!GSTATUS? gives you some info. Then found AT!BANDS, AT!GBAND and AT!DASBAND which i still don't understand the differences. I tried LTE only and it wouldn't find service. ATT uses B17 for most LTE. The fallback 3G seems to be 850GSM and 1900GSM for ATT.
I am pretty impressed with Ubuntu Modem-Manager GUI as it has a nice "Scan" feature and I see 5) T-mobile towers, and only 1ea.)VZW, Sprint and ATT tower. That makes me wonder about my service. I see 4 bars on my ATT tower. I think the module needs tuning. I even see a RF calibration recommended…Whatever that means. I know my MC7700 experience was much less painful and that module maintains LTE on the Watcher...I should probably dump my Windows platform as I have installed probably a dozen different driver packages...Super weird thing is that the module "Firmware version" seems tied to software as the same module with Windows and Ubuntu shows different firmware versions...Odd why would hardware firmware version change with OS disk change? Must be tied to different Gobi.API/blob in the different OS's- i really dunno...
-
I loaded a fresh Windows and Sierra drives and Watcher. Was still seeing my LTE drop to 3G and i noticed it seemed tied to usage. When I ran speed test the speed would jump to LTE.
I found this thread which explains why.Telstra cells drop you back to basic "UMTS" when there's no data in transmission between yourself and the tower. Once the data flows again, you'll typically go to "HSPA+" (single carrier) or "DC-HSPA+" (dual carrier) on Telstra, depending on the capabilities of the tower. That's got nothing to do with diversity.
http://forums.whirlpool.net.au/archive/2178921
This is exactly what I am seeing with ATT. Drops back to lower connection speed when not in use.
-
Phishfry, I'm from Argentina and need your help to convert a Dell DW5808 to the native Sierra MC7355.
Thanks
-
Finally I can convert the Dell DW5808 into a Generic Sierra Wireless MC7355 to work with Windows 7.
Thanks to Phishfry and other web sites with a perl script to change the UDUSBCOMP to work in Ubuntu.
-
Here is the skinny. The Dell DW5808 (MC7355) module was locked in USBCOMP #9 which is MBIM only -No AT command port at all. This is the new method by which Windows 8.1 and 10 work. They flash your modem to only use MBIM effectivly locking you out of the module.
So Juancho had to not only switch his module from Dell VID+PID to Sierra VID+PID but also regain the AT console to do it.
Luckily one of the developers of Linux modem-manager has a perl script which can bring back the AT console.Here is how without installing Linux on host.
Setup Ubuntu USB Flash/Pen drive with persistent storage like Unetbootin offers. Run you disk and install the followingsudo apt-get install perl
sudo apt-get install libuuid-tiny-perl
sudo apt-get install libipc-shareable-perl
sudo apt-get install modem-manager-gui
sudo apt-get install puttySo first off you need to run networkmanager and modemmanager in debug mode:
https://www.freedesktop.org/wiki/Software/ModemManager/DebuggingThen run this script:
http://git.mork.no/?p=wwan.git;a=blob_plain;f=scripts/swi_setusbcomp.plHere are some supporting docs.
https://www.freedesktop.org/software/ModemManager/man/1.0.0/mmcli.8.html
https://www.chromium.org/chromium-os/how-tos-and-troubleshooting/debugging-3g/modem-debugging-with-mmcliEven on other Sierra modems you get worked:
https://forum.sierrawireless.com/viewtopic.php?f=117&t=8863Different Modem same effects-different cure:
http://zukota.com/how-to-enable-at-command-and-diagnostic-ports-and-gps-for-sierra-wireless-em7345/This has exactly what is needed. Note EM7305 is the same firmware wise.
http://www.0xf8.org/2016/04/changing-dell-wireless-5809e-sierra-wireless-em7305-usb-composition-mbim-qmi-at-interface-nmea/Note: ModemManager and Networkmanager in debug mode might not be needed. We were trying to send the modem AT commands with mmcli and that required debug mode. Unfortunately it did not work as AT command console was not exposed. Ultimately it required the perl script. Here is sample command.
sudo perl swi_setusbcomp.pl –usbcomp=14Putty set to Serial and ttyUSB1. Putty requires sudo putty from terminal to work.
ModemManager GUI is useful in showing the mode the modem is in. For example MIBM was apparent without AT console.
From Juancho:
Maybe with Perl script and Putty is enough to do the conversión from Dell to Sierra Wireless.So the above post about bricking your module is now the new normal from Microsoft. MBIM only mode. Luckily Bjorn Mork and his magic perl script saves the day.
-
The reason I post this is the procedures are exactly the same for pfSense, FreeBSD and Windows. #14 USBCOMP works and as a bonus proves a dual configuration with DirectIP for FreeBSD/pfSense and QMI modes for Linux.
-
So I was in the middle of changing a DW5808 into a generic module when the laptop lost power. I got the VID successfully updated to 1199 but the PID is still 81A8… This means the drivers won't pick up the card as a valid combo to get me into a serial terminal to change the PID. Is there some way in Linux I can trick it into working so I can issue the PID change or is the card toast? Card is in USBcomp=6 right now if that changes anything, I see 4 interfaces exposed in windows but can't get drivers to load for them.
-
Ended up comparing the modules loaded with a 5808e in a USB carrier and manually installing the modules using modprobe. That exposed the /dev/ttyUSB0 through /dev/ttyUSB2, ttyUSB2 was the AT command interface so I was able to issue the AT!UDVID=9041 to fix. Runs like a champ now.
/sbin/modprobe cdc_wdm product=0x81a8 vendor=0x1199 /sbin/modprobe usbserial product=0x81a8 vendor=0x1199 /sbin/modprobe qmi_wwan product=0x81a8 vendor=0x1199 /sbin/modprobe qcserial product=0x81a8 vendor=0x1199