Clone wiki

ModemManager / AlcatelW800

Posted by: Nate Pleasant 2014-07-16

Alcatel OneTouch W800

  • Vid/Pid - 1bbb:0195

This information pertains to connecting an Alcatel OneTouch W800 to a linux-based device. My test enviroment was the following:

  • An embedded linux device running kernel version
  • An ASUS EEEPC running Arch Linux with kernel version 3.15.5

The Alcatel uses the RNDIS kernel driver to bring up a ethx port. This is the interface you use to connect to the device's web GUI. You need to establish a DHCP network connection to the ethx interface in order to interact with the modem's HTTP interface.

Once a local connection to the modem is established, we can start sending HTTP requests to it. Below are details on how to send a request and what information is contained in each response.

I obtained these HTTP requests by interacting with the HTTP GUI of the modem with a Wireshark trace running in the background.

Send a post message to the modem to interact with it:

  wget -T 30 -q $gateway_ip -O /tmp/post_response.txt

$gateway_ip is the gateway IP address assigned by the DHCP routers option from the modem. In the below examples, the IP address is used as the gateway IP.

The resulting /tmp/post_response.txt file will contain the response message (if any).

##Important Note

The W800 modem will logout the user after only a few minutes of inactivity, so make sure you are logged in before posting other commands to the modem.

Also, I have not found a way to obtain the following attributes from the W800. They are not listed anywhere in the device's web UI:

  • Signal Strength
  • phone number
  • IMSI


This includes information such as connection status, signal strength, IPv4 network information, IPv6 information, and activation status.


This displays the login status of the modem. If the user is logged out, the status will be 0. If the user is already logged in, then the status will be 5.


This displays details on the SIM card connected to the modem. sim_state=5 indicates that the SIM is registered. sim_state=0 indicates that the device has not registered yet.


This displays the connection profiles that are provisioned on the modem. These can be used to setup a specific APN or dialstring. Note that the profile name and dial number are required fields. Also, setting profile_default to 1 indicates that the specific profile is the default profile that will be used to connect to the network unless otherwise specified.

"data":[{"profile_type":0,"profile_id":16,"profile_name":"T-Mobile US","profile_username":"","profile_number":"*99#","profile_password":"","profile_apn":"","profile_protocol":0,"profile_defualt":1,"profile_ip":""}],"data_len":1,"error":0}

The W800 modem has the capability of serving a WiFi SSID that up to 10 devices can connect to.


Displays the network usage details.

{"last_duration":275,"last_upload":0,"last_download":0,   "last_usage":0,"total_duration":4354,"total_upload":585451,"total_download":10748331,"total_usage":11333782,"clear_time":"","upload_rate":0,"download_rate":0,"error":0}

Displays the network settings of the device. nw_mode specifies if the W800 should automatically connect on the highest network, or if it should connect to a certain newtork type. See below for details on forcing the W800 to a specific network mode.




{"a5_ip_addr":"","sub_net_mask":"","host_name":"w800.home", "enable_dhcp":1,"dhcp_start_addr":"","dhcp_end_addr":"","dhcp_release_time":"12h","error":0}


Note: make sure to URL encode the post, or the password will get cut off. Below, I am using the default username and password for the modem.





The following uses the default profile ID of the modem. The modem can store 15 additional connection profiles, which are useful if you want to set mutliple APN profiles.

You can then post to check the status of the connection. wan_state of 2 indicates that the device is connected to the network. 0 indicates that the modem is disconnected.



turn on Wifi SSID


turn off Wifi SSID

check network registration

The regist_state value in the output details whether the modem is registered on the network (1 for registered, 0 for not registered).

Restore Factory Default Settings

If this command is issued, the W800 will reboot to apply factory default settings, causing the web interface to go down for a few seconds.



If auto-connect is enabled, the W800 will automatically connect to the cellular network with whatever settings were previously configured into the device. This was the default behavior of my W800 device when I first tested it. The following example enables standard auto-connect and disables roaming auto-connect


The following example post disables standard auto-connect and enables roaming auto-connect







CNTI switching

Auto mode


4G mode


3G mode


2G mode


Configuring an Network Profile

The W800 has a form that can be filled out to create a new network profile, which in turn can be used to set a new default APN on the device.

Create new APN

The example below sets a profile named "new_default_apn" with an APN of "", a test username and password, and the standard dial string "*99#".


Set new APN as default profile


You can then post to verify that the correct profile ID is being used.

Delete a profile

This deletes profile ID 1



check SMS


load all SMS messages


load single SMS message


delete singal SMS message