Lately, I’ve found attempting to do web development on a local environment without Internet access while travelling just doesn’t cut it anymore. This is especially true for long roadtrips. Rather than dealing with tethering or a mobile hotspot, I decided to spring for a Netgear AirCard 340u. For GSM networks in the US, it happens to be the best USB wireless broadband modem currently available. It supports everything from GPRS through LTE on what appears to be most of the bands AT&T and T-Mobile currently use (a true rarity, though I can not confirm support of LTE on band 2 (1900MHz PCS), I do get T-Mobile LTE in the Twin Cities).
Unfortunately, to get the AirCard 340u to work in Linux you must update the firmware on the device. Currently, Netgear does not have a firmware programming tool for any OS other than Windows 7. Thus, you will need a Windows 7 install to get the AirCard 340u to work in linux.
The AirCard 340u ships with a Windows 8 compatible firmware that is not compatible with Linux. Netgear provides a Linux compatible firmware patch that can be flashed to the device. Download and run the AC340 linux patch v4 utility to disable the Identity Morphing capability that fouls up Linux support. There is a catch, you must use Windows 7 to perform this update. You can update to the latest firmware using the AT&T/Netgear tools included in the device (just let it do all the updates). One rumored feature in the firmware update is access to more LTE bands (radio supports them, but supposedly, the earlier firmware versions had some bands disabled).
The AirCard 340u ships locked to AT&T SIM cards. I’m more of T-Mobile fan than AT&T fan, to use this device on T-Mobile’s network, you have to unlock it. There are two ways to go about this. Both require a computer with Windows 7.
The Cheaper Way
If you purchase the 340u off-contract from AT&T (at the time of writing the 340u was too new to be paid off via a contract), you can request a unlock code and use software provided by Netgear. For the ~160USD cost, this is the safest way to get an unlocked AirCard 340U, others are asking ~60USD for locked units on ebay and unlocked units are going for ~300USD on some 3rd party sites.
The Other Way
While the DMCA doesn’t exactly allow one to do this at the moment (for those in the US), DC-Unlocker fully supports the 340u, it will cost 10 Euros to purchase credits to unlock it. Note that you must be in Windows 7 for this to work, this is not documented anywhere.
In addition to the normal assortment of USB and networking drivers, you will need the qmi_wwan (USB_NET_QMI_WWAN, requires USB_USBNET) and qcserial (USB_SERIAL_QUALCOMM) drivers to use the AirCard 340u. These drivers exist in kernel version 3.14. I can confirm these drivers support the AirCard 340u on 3.14.8. Users of older kernels, be aware that the AirCard 340u wasn’t supported by very early versions of the qcserial driver.
Like many wireless devices, you will also need firmware for the device to start. Most Linux distros have this in the all-encompassing linux-firmware package. Additionally, since the AirCard 340u has a built in micro SD reader, you may want to install usb_modeswitch if while watching your logs the AirCard 340u doesn’t show up properly. I didn’t need this, but others have needed it.
In your userland you will likely want to use NetworkManager with ModemManager support. If you are compiling ModemManager, make sure you have qmi support enabled. Note, on Funtoo Linux I had issues allowing both qmi and qmi-newest with ModemManager 1.2.0-r1. If qmi-newest support was compiled into ModemManager, the device would be found but would refuse to connect.
For KDE users, you probably want to use the plasma-nm frontend for NetworkManager rather than the deprecated NetworkManagement frontend. NetworkManagement does not pick up on signal strength, network type/technology, or carrier name. Before you can connect, a ‘connection’ must be setup within NetworkManagment (or plasma-nm, though I’m not using that yet) by clicking “Add” in the “Mobile Broadband” tab in the Configure dialog and go through the Mobile Broadband Configuration wizard (for T-Mobile, select “default” for the your “plan”).
[end of transmission, stay tuned]
18 thoughts on “Netgear AirCard 340u (aka AT&T Beam) on Linux”
John, Sounds like we are both from the Mpls/St. Paul area. I read your notes here about experience with the ac340u. I’ve been working on getting this card to work on a Raspberry Pi B / B+. I reverted my OS to 3.10.25+ and followed instructions from http://wes.skeweredrook.com/raspberry-pi-att-beam/ and succeeded to get the card working, when using the out-of-the-box firmware. I updated (to MR1) one of my ac340u’s and now I cannot seem to get back to a connected state. The instructions from skerweredrook expose the dongle as an ethernet device.
I wonder if you have instructions / notes that address the new (as of June 2014) MR1 firmware update, or if you found pre-MR1 firmware for back-flashing.
I’d be very interested in any follow on discovery / observations you have made.
It is my understanding that the AirCard 340u is not supposed to show up as an emulated Ethernet device (unless that is part of the Identity Morphing framework for out of the box Windows 8 support). I don’t remember the Netgear documentation ever mentioned Ethernet emulation (The AirCard 341u does have Ethernet emulation). Also, if I recall correctly, Qualcomm stopped using the faux Ethernet interface in their newer chipsets when they moved to using QMI. This, in my opinion, is a good thing as it allows the adaptor to provide more information to the OS.
I am not sure what the MR1 firmware is. At the time of writing this article, I had flashed the latest non-Windows 8 firmware onto my AirCard 340u (01.13.12.13). I performed the setup the AirCard 340u back in July of 2014, and I haven’t updated the firmware on the device since then. There are only 2 known issues that I haven’t tracked down/fixed yet.
I am experiencing the same exact issue on the Precision M3800. The ATT 340U AirCard, when plugged into any of the USB ports, boots and reboots constantly. The ATT logo displays on screen, then after approximately 15 seconds, disappears. It’s blindingly frustrating!
This card works perfectly on Windows 7/8/8.1 on my Latitide 6420, 6430, and 6430u. My Precision M6700 and 6800 work though.
I am going to plug a USB hub into the laptop to determine if the issue may lay with the chipset.
Plugging the ATT 340U into a USB3 hub that’s connected to one of the ports on my M3800 works perfectly.
Thanks for the additional information. I had a feeling it was part of a rumored ‘bug’ in the the USB3.0 HUB shipped on the M3800 and XPS15 9530. And, it appears this is the case. I wonder if the 4K refresh of the M3800 and XPS15 9530 exhibit this behavior.
This M3800 is actually fresh off the press, so I assume the bug still exists. Was delivered on 2015-01-26. Too bad it didn’t have thunderbolt support. I guess I was about three or four months too early.
Going to open a ProSupport case on it and have the motherboard replaced on Tuesday. If that doesn’t fix it then I am at a loss as to what combination of hardware and software is causing it.
I just processed a RMA for that M3800 (late 2012 model) I purchased direct from dell and picked up the 4K refresh one instead. Same behavior, HOWEVER, it does appear that it’s not just these few USB WWAN cards. I purchased and made a custom enclosure for a Sierra AirPrime MC7355 and it does the same thing with that until I plug it into a USB hub.
I may have to build a small inline single port usb hub to get this to work properly. If I can get it small enough, it may be easy to integrate it into the cable head or as a standalone adapter.
Have xps 9530 and same issue with ac340u. This is a workaround:
a very small inexpensive 2-port hub.
I can also confirm the ac340u GPS works in principle. But streets & trips 2013 won’t recognize the NMEA stream because it does not use the desired line endings. Had to cobble something together with nc to translate it on the fly, projecting to another virtual com port. Now the GPS works on my xps 9530 using Microsoft Streets & Trips 2013.
I’m trying to get this modem to work with CentOS. Other modems I have attach to ttyUSB points when I plug them in, but no beans with this modem. I updated to the newest firmware (184.108.40.206), which unfortunately didn’t help. There’s this other patch, detailed here:
However, it apparently only works with the OLD version of the firmware (d’oh). Any idea how I can revert the firmware to the old version? I have a second 340U with the old firmware: is there any way to perhaps copy it over? Thanks for your time.
What version of the Linux kernel are you using? You need something along the lines of 3.12 or newer (I can only confirm as far back as 3.14.8. CentOS typically uses older kernel versions so that is likely biting you here.
Looks like it’s 3.4.13, but it’s also a heavily-customized OS so I can’t be sure if anything is conflicting. I’m going to go with a different modem for the sake of ease (and for the sake of not changing a bunch of things). Thanks for your help!
Note that in the URL you linked to there is also a link to a firmware downgrade to 01.05.11.52. In all my Googling it is the only link to an old firmware I have found.
I got my 340U off Ebay. Government surplus they say. AT&T AllAccess tells me that my older firmware is 01.05.11.23. I am unable to update to 01.13.12.13 using All Access, no updates it says. The .exe from the Netgear site appears to download the 01.13.12.13 update to the unit properly but when I check the version it doesn’t change from 01.05.11.23. I read that the latest update gives extra LTE bands 2 & 5 from my version. Any thoughts on what is blocking me from upgrading my firmware?
I am using Ubuntu 14.10 and my 340U works out of the box with my firmware after configuration. Even the signal bars work. Use network manager and create a “New Mobile Broadband Connection”. When you set it up choose the obvious but under “Choose Your Billing Plan” pick “LaptopConnect (Data Cards)” and note that now the APN defaults to “Broadband”.
Any resolution on this, having the same issue.
I now have two of these AirCard 340u cards, one has the modern firmware, and works just fine in Linux. The other one has the older 01.05.11.52 firmware, and I’m unable to upgrade it to the newer firmware versions. However, it also works in Linux, after running the AC340 linux patch v4 utility (requires Windows 7).
Hey hey John;
I also have two AC340Us, one with the 01.05.11.52 firmware (works ok with the qmi_wwan driver) and the other with the newer 01.13.12.14 firmware (works ok with the cdc_mbim driver).
I do see, though, that if my system has the cdc_mbim driver available, both modems will try to bind to it and use MBIM (that is the expected thing), but only the one with the newer firmware works correctly, the other one just gives me “Failure” errors to the MBIM Open commands (e.g. when running mbimcli commands with –verbose).
My question is, what happens exactly when you flash the “patch v4 utility” into the AC340u with the older firmware; does it fully disable the non-functioning MBIM interfaces so that QMI is forced to be used instead? Any chance you can get me a “lsusb -v” output of that AC340u once the patch v4 has been run?
Since that’s a bit much (output wise), I created a new post with the results of
dmesgfor both of my AirCards. See AirCard 340u Linux Debugging.
Crazy thing happened today! I plugged a DW5804 (and a DW5802) into my custom WWAN USB card and it worked directly on-board the M3800! I am willing to bet it would work natively on the XPS as well.
Novatel Expedite E371 1YH12 for Dell DW5804 (GSM)
Novatel Expedite E362 0HF4JH for Dell DW5802 (CDMA)
Im building a driver package that contains everything, so far I can only find the base driver online. Ill have to extract everything from my laptop and post a link to dropbox.
BTW, you don’t want the “qmi-newest” support in ModemManager; it’s already disabled in newer releases by default. That was just to test newer commands instead of the legacy ones, but the legacy ones are always preferred.
Comments are closed.