December 18, 2007

Mobile phone management under Linux

Author: Razvan T. Coloja

Even people who don't live and die by their mobile phones sometimes need to send SMS messages. Did you know you can do that from your computer? Likewise, it's easier to clean your mobile phone of all the numbers you've not been dialing in the last few years using a mouse, rather than navigating repeatedly through the phone's menu system. Here are some Linux tools that can help you manage your cell phone.

Using a Windows Mobile-based smart phone or PDA in Linux is easy as pie. In most cases you just have to connect the device through USB and start up SynCE. For phones that don't use a Microsoft operating system, such as my Motorola SLVR L7, applications like Moto4Lin and KMobileTools come in handy.

If you just need to view, delete, or send SMS messages and manage your address book, then KMobileTools, a part of KDE 3.5.x, is a good solution. If you don't use KDE, you can download and install the program anyway. Configuration is straightforward: you pick a device brand from the list (Nokia, Motorola, Siemens, Sony Ericsson, and LG phones are supported) and choose a connection type. If you wish to use Bluetooth, pick /dev/rfcomm0. For USB connections choose /dev/ttyACM0 or /dev/ttyUSB0, and for serial ports use /dev/ttyS0. Leave the port speed at the default (115200). Configure the PhoneBook and specify whether you want the import settings to overwrite stored PhoneBook entries and whether the imported names should be in the Name, Nickname, or Name-Surname format. Then click on Refresh and choose the items you want to import: phone number list, missed calls list, quick dial numbers, SIM phonebook, own numbers, and others.

In the SMS window, click Refresh and choose whether you want to import text messages from phone memory or a SIM, and you're all set.

If you download the latest beta from the KMobileTools site and you have an AT-compatible device, chances are that it will be detected automatically. Basically, the program uses AT commands to get information from the mobile phone, just like PC modems. In the 0.5.0 beta version of the application, the user interface was radically changed from its predecessor. It's more intuitive and better integrated into the desktop environment.

As with the previous version, you can check the phone's battery level and the signal strength from the main window. The contact list is clearly laid out in tabbed categories, and clicking on one of the names reveals all the info on that particular person in the right side of the window. In the lower-right side you have a list of actions that can be applied to the currently selected contact item: edit, delete, add new, import, and export. Right-clicking on a name brings up a context menu from which you can choose to call that contact's number or send an SMS using one of the connected mobile phones. And speaking of SMS, in the new version of KMobileTools, these messages are beautifully structured into two main categories: Inbox (SIM and Phone) and Outgoing (SIM and Phone).
In addition to letting you compose new messages and manage existing ones, the application lets you export text messages directly into KMail. If you use a different mail application there's also the option to export to a CSV file.

You can minimize KMobileTools to the system tray and it will sit there quietly until someone calls you on the phone or you receive an SMS message -- then the application will pop up a message and play a sound informing you of the event.


There are other tools you can try. The Wammu GUI for Gammu, written in wxPython, offers the same functionality as KMobileTools. Since Gammu is basically a set of scripts, drivers, and CLI applications, Wammu greatly simplifies your work with them. The Phone Wizard function offers several connection options, such as USB, Bluetooth, and IrDA, and three configuration options: automatic, guided, and manual. Unlike KMobileTools, Wammu can display detailed information about your mobile phone, such as manufacturer, firmware number, and serial number. It can retrieve SMS and contact information from the device, along with to-do data, calendar, and call lists.

One of Wammu's advantages is the ability to create and restore backups of your mobile data. The application can import *.vcf, *.ldif, *vcs, *.ics, and Nokia *.lmb files. On the downside is the time it takes to import messages into Wammu and the occasional freezes of the GUI.


Sometimes you want to do more with your phone. What about those moments when you need to download an image from the phone or want to upload a music file as a ringtone? For Motorola phones, try Moto4Lin. While KMobileTools can be used to manage contacts and text messages, Moto4Lin is strictly for file management.

Before you start, check the compatibility list to be sure your Motorola phone model is supported. My SLVR L7 had no problem connecting, although I had to manually edit ~/.qt/moto4linrc to get the program to remember my settings. In the Preferences window I set /dev/ttyACM0 as an ACM device. You'll also need the vendor and product IDs from the previous link. If your mobile phone is not supported, you could still get lucky. Install usbview or use lsusb and write down the vendor and product ID it reports, then paste them accordingly in Moto4Lin. The P2K (Paragon Filesystem) vendor ID the utility reports should be the same as the AT vendor ID. As for the P2K product ID, it should be one unit smaller than the AT product ID above it. For example, in the case of my Motorola phone, the AT Vendor ID is 22b8, AT Product ID is 4902, P2K Vendor ID is 22b8 and the P2K Product ID is 4901.

Now click on Switch To P2K and click OK.

In the main window of the application, click on Connect/Disconnect, and when the mobile phone has successfully connected, press the Update List button. Moto4Lin will scan the device for all multimedia and Java files and present you with a directory structure. You can then download and upload files from and to your mobile phone, insert ringtones, copy 3GP and MMS files, and assign different types of attributes to them. A file can be marked as read-only, hidden, system, volume, directory, or archive.

Moto4Lin also has a nifty seem editor with upload and download functions, so you can edit your phone settings information from these storage containers. Since most mobile phones support Java applications, Moto4Lin also offers an interface for uploading and downloading Java midlets (Java applications for embedded devices) and a file manager that outputs information regarding the name, vendor, version, size, and startup status of the selected file.

Other functions include rebooting and suspending the phone.

Below is an example of my ~/.qt/moto4linrc:




In addition to the tools above, there are other applications you can try for establishing a connection with your mobile phone, including Phone Manager, KitchenSync, GMobileMedia, and ObexTool.


  • Handheld Devices
  • Tools & Utilities
  • Wireless & Mobile
Click Here!