I just wanted to share an interesting detail about those Huawei USB “internet sticks” you can buy to surf with your laptop on the go. They’re quite versatile!

You probably know the old school USB modems, that you plug in and your OS will ask for the SIM pin (if any) and initialize the mobile connection, show signal strength, receive and send SMS and all the things.

The modern Huawei USB sticks can do that too, but they don’t do that unless told to!

You see, to make things easier and user-friendly, by default the modern Huawei USB sticks set themselves into a router mode, where the SIM pin, connection, SMS and all the things is handled by the firmware on the stick and the stick itself connects as a USB Ethernet card. You plug it in, and go online seamlessly. The OS won’t even know a modem is connected. It’s as if you just plugged in an Ethernet cable. There’s even NAT and an easy-to-use web interface to configure the router/modem.

There’s also a mass storage device mode (or mass storage and Ethernet simultaneously), where, if supported, you can insert a microSD card next to the SIM slot, to use the USB stick both as “internet gateway” and “mass storage device”. It’s quite handy to be able to use just one USB port to go online and to store files locally.

There’s also a mass storage device mode, where it will mount a read-only partition that contains a driver installer for Windows. Once the drivers are installed, the OS will know how to use the device and it should not go into that mode the next time (the drivers will make sure of that).

Of course how this all works exactly depends on the exact device, but that’s the general experience I had with multiple Huawei USB “internet sticks”.

Now while this is all nice from the perspective of an end-user, if we want to use the modem as actual modem, to say, send and receive SMS, the default mode won’t be very useful as we don’t want Ethernet and don’t want to be forced to surf with said modem. We also don’t want to try to develop an interface for the web interface to send / receive SMS (as this will change from device to device). Instead, we’ll want the device to go into modem mode where it will act as USB serial device so that we can send standardized commands to it to send and receive SMS.

In the next part, I will show you how to put such a USB stick into modem mode on Linux…