This widget allows the use of 3G modems and phones attached to USB host ports. These ports are
mainly found on Android tablets.
Many device/tablet combinations are working fine, but there is no guarantee that your's will. Don't blame me.
- PPPD and Usb_ModeSwitch binaries (natively linked to Bionic) are included
- Autodetection of usable modem ports
- Minimal configuration input required (in most cases just username, password and APN)
- Contrary to other solutions, it provides full network awareness for applications
- It's truly free. No ads. No data gathering. I don't want any money.
Requirements and limitations:
- Root access is mandatory. No way around that
- Your modem must provide standard serial ports and use the standard PPP protocol
- You need a powered USB hub - unless your Android device has plenty of USB power
- "Superuser" or "SuperSU" app needs to be installed (usually comes with rooting tools)
- At least Android 3.1 is needed for automatic mode, 2.2 for manual mode
- This app may require some technical knowledge if your modem/device combo does not work right away !
Attention: Android 4.3 has changed the kernel so that loading driver modules is disabled. Nexus 7 Old still has modem drivers enabled in the kernel, but Nexus 7 New (Wifi) and Nexus 10 don't. Since there is no more way to add drivers, USB modems cannot be used with these devices anymore. Blame Google for this.
Frequently Asked Questions
Q: I have installed PPP Widget, but I don't know how to start it. There is no icon on the workspace
and I can't find it in the app list.
A: To use a widget, you have to place it on the workspace. On Android 2.x that is done either by a long press on the workspace or from the top menu with the "Add" button.
On higher Android versions, there is a second tab in the app list display named "Widgets".
Q: I would like to see PPP Widget on all my workspaces.
A: No problem - as with every widget, you can place as many as you want. They will all act the same, no matter which one you use to setup and start your connection.
Q: I am not sure what to enter as username and password for my connection.
A: In most cases, there is no actual authorization done because the PPP connection is really set up with the modem itself which 'translates' the data stream to and from the cell phone connection.
It is generally safe to enter a random user and password, which is better than leaving these fields blank.
Q: What should I enter as 'dial string'?
A: Basically, there are only two different possibilities:
If you are using a GSM/UMTS/HSDPA cell phone system, just leave the default alone.
If you are using a CDMA/WCDMA-based cell phone system, change the dial string to '#777'.
A: Starting with version 3.1, Android includes a USB device management. Every new device is checked if an application offers to handle it. The management can remember the decision at your choice, so you won't be asked again.
If your modem needs to be switched to a different device mode (most modems do), you will see the pop-up a second time - the new device mode appears to Android just like a different device.
Q: On what versions of Android will it work? What happens when I update my firmware?
A: The minimum version is Android 2.2. However, USB device management was added to Android only with version 3.1 (Honeycomb), making automatic device detection possible (see answer to previous wuestion). Tablets and phones running earlier versions had to provide their own USB host management.
4.x versions of Android are reportedly working fine, up to the 4.2.2 update on Google's devices.
Regarding updates: note that if you had to add serial drivers to your previous firmware, you will probably have to renew the drivers after a firmware update, because the kernel version included with the update is likely to be different.
Attention: Android 4.3 is reported to stop PPP Widget from working! If you have to depend on PPP Widget, don't upgrade!
Q: I would like to use advanced features, like selecting a fixed band or limiting the provider selection
A: Unfortunately, I am not able to include these advanced features myself. Some modems are using vendor-specific commands for these settings and there is no way I can cater to every device. PPP Widget will stay as generic as possible to support the widest possible range of devices.
However, if you know the specific AT commands for your modem, you might be able to add them to the file "gprs-chat" which can be edited with any text editor. You will find it in the user-space folder "/sdcard/pppwidget", in the subfolder "ppp". Just add a line like "OK <your command>".
Q: PPP Widget gives me this message when I place it on the workspace: "No root access"
A: The widget checks if it can start commands with root rights upon start-up. Either your device is not properly rooted or the app that manages the access per application - like 'Superuser' or 'SuperSU' - did not grant the widget the necessary access right. In the latter case, review the settings in the respective application.
Q: After plugging my modem, PPP Widget goes to "Prepare device", then hangs or says "No modem found"
A: It's very likely that your USB host port is not able to provide sufficient power or that aggressive power saving kicked in. Please see 'Power Problems' below.
Q: After plugging my modem, PPP Widget goes to "Prepare device", then says "No driver found"
A: Two possibilities:
1. Your modem does not provide serial ports (like some newer 4g/LTE devices). In that case, it will not work with PPP Widget.
2. The maker of your device who customized the underlying Linux kernel decided not to include the drivers for serial USB devices.
If you can get the driver modules somewhere else, put them into the folder '[sdcard]/pppwidget/lib' on your device and PPP Widget will try to load and activate them. I provide some of these modules for very common devices that are missing them. See the PPP Widget forum.
Q: After plugging my Huawei HiLink modem, PPP Widget says "No driver found"
A: HiLink modems do not provide serial ports in their default mode. However, I recommend that you report your problem at the forum; there is still a chance that your modem has a fall-back mode which can make it work with PPP Widget.
Q: I have a Samsung Galaxy S3, and when successfully connecting my phone reboots!
A: Samsung has changed something in the Android system code for this device. This results in a crash when PPP Widget notifies the system about the network connection.
The only solution for this is to disable the system notification in the configuration. This will result in limitations for several applications, mostly the ones by Google which are relying on a network notification instead of just going ahead and using the network.
Unless Samsung publishes the changes in the source code (they are not required to), there is no other solution possible.
A: If you had to install additional USB drivers, chances are that you need new versions because the kernel version in the new firmware may be different. Also, you have to 'root' your device again which must be done once for every new firmware. Q: I updated my Android firmware, drivers and root access are O.K. but PPP Widget still does not work properly!
A: There is no guarantee that a new Android version will not break PPP Widget's functions. It relies on some system features that are not documented and can easily be changed or even removed by the Android maintainers.
Q: I can't get PPP Widget to work, but my problem is not listed here
A: There is no guarantee, but try reporting your problem at the forum.
Q: After plugging my modem, PPP Widget still shows "No modem found"
Q: PPP Widget and my modem seem to behave erratically
A: This demands an extended explanation.
On smaller tablets (typically up to 7" devices) there is often not enough power available for attached USB devices.
Wireless modems are among the devices with the highest power demand (500 mA straight). Usually,
only some larger tablets can provide that much power on their host ports (with Samsung, even the 10"
devices are reportedly power-limited).
Smaller ones often have their limit at 100 mA which rules out using a large array of devices. One
notable exception is the Nexus 7 which works fine with many 3G sticks attached directly - but even
with this tablet I had at least one of my test modems go into a reset cycle once it started the
The problem went away when I used a powered hub.
In short: if your modem works when connected directly, you are just lucky!
A powered hub is usually the solution for power problems.
Q: I'm using a powered hub and my modem is still not recognized, or the "Prepare device" process does not finish
A: I have seen this on my Samsung GT2 7" which seems to do some particularly aggressive USB power suspending. As a consequence, the hub or even the modem may go to sleep immediately - even with the power connected to the hub!
Try to enable the config option "Disable USB device sleep", it has helped in my case.