2006 / Sony Ericsson K700i and Linux

Sony Ericsson K700i and Linux

[Tux holding a Sony Ericsson K700i]


Welcome to my little page about the Sony Ericsson K700i and how to make it work with Linux. Most of these instructions apply to Debian GNU/Linux, but you should be able to do similar things with other distributions - after all, most of the time, it's just about how to install the right packages - everything else should stay the same.

This is by no means a complete guide on what you can do with your mobile phone and Linux, just some hints which I want to share with you - most of these things I couldn't find anywhere else on the 'net.

Getting the software you need

Depending on how you connect your K700i to your Linux machine, you have to install different packages. As I'm using my K700i on a hp omnibook xe4500, I have access to an IrDA port. Additionally, I bought myself a Bluetooth USB dongle, so I don't have to place the K700i in front of the infrared port everytime I want to transfer something.

Infrared (IrDA)

Install the required packages with the command apt-get install irda-utils ircp. Also make sure you have the right kernel module loaded which acts as a driver for your infrared port.

Bluetooth (Bluez stack)

To enable Bluetooth support in Debian, make sure you've got a recent kernel (works for me with a 2.6 kernel) with Bluetooth support and a Bluetooth adapter that works with Linux. Then, install the required packages with apt-get install bluetooth.

Generic packages (for both IrDA and Bluetooth)

Apart from the interface-specific packages, there are a bunch of tools which you should install - these really get most of the work done. Here is a list of packages which might be useful for you. You install the package with the usual apt-get install packagename:

  • ussp-push: Bluetooth equivalent(?) of irxfer
  • obexftp: File transfer utility - you surely want this
  • obexserver: File server, browse files from your mobile phone
  • openobex-apps: Small OBEX utilities (irxfer is included here as well)
  • multisync: Synchronize contacts/address book/TODO lists
  • libmultisync-plugin-all: SyncML plug-ins for multisync (Evolution, IrMC, SyncML, ..)
  • seyon: Terminal for rfcomm (Bluetooth modem) connections
  • kmobiletools: KDE app for address book/SMS management
  • gsm-utils: GSM mobile phone access applications
  • gammu: command-line phone management utility

Bluetooth pairing

For your computer and your mobile phone to trust each other, you have to pair the devices. A nice tutorial on how to do this can be found here: http://www.teaparty.net/technotes/blue-gprs.html.

Send/receive files from/to K700i

This is done using obexftp, see here for more information: http://openobex.triq.net/obexftp/examples

Control your desktop with bluemote

See instructions on http://www.geocities.com/saravkrish/progs/bluemote/

Control xmms with bluexmms

Similiar to bluemote: http://linuxbrit.co.uk/bluexmms/


To get the /dev/rfcomm0 device working, you have to create a config file like this:

# RFCOMM configuration file.

rfcomm0 {
   # Automatically bind the device at startup
   bind yes;

   # Bluetooth address of the device
   device 00:11:22:33:44:55;

   # RFCOMM channel for the connection
   channel 1;

   # Description of the connection
   comment "My K700i";

Issue a /etc/init.d/bluetooth restart as root user and then display the connections using rfcomm show.

Use your K700i as keyboard/mouse (HID)

It is possible to use your K700i as a keyboard or mouse with the help of the bluetooth HID interface. Make sure you have /dev/input/mice as either your CorePointer or SendCoreEvents device in your xorg.conf file. Google for it if you need help with configuring X. Then, fire up your favorite text editor and write the following script:

sudo modprobe hidp
sudo hidd --connect 00:11:22:33:44:55

Of course, you have to replace 00:11:22:33:44:55 with the BT address of your mobile phone. Save this script as ~/bin/hid-remote and as soon as you run it (of course, given you've successfully paired your K700i with your Linux machine), the K700i should offer to remote-control your desktop.

An alternative approach to phonebook management

Opposed to popular belief, GUI software that pretends to be able to handle your contacts the right way (and sync it the way you want) often doesn't really do the right thing™. Your best bet (if you've got the time) is to manage your phone books on your computer, only syncing in one direction (that is, to your K700i).

Basically, you can create your phone book using the great abook application (abook.sourceforge.net). In Debian, you can install it using apt-get install abook. It works in a terminal, so fire up a terminal and type abook. A nice text-based application starts and you can create your address book. The generated address book will be saved in ~/.abook/addressbook. You can then convert this address book to different formats using a script like the following:

# convert abook adressbook to other formats
# thomas perl <thp at perli.net> 20060528



abook --convert --informat "$BOOKFORMAT" --infile "$BOOKFILE" --outformat "$FORMAT" >"$OUTFILE"

Using this script, you then get a addressbook.csv file in your home directory. Now, download the following script: csv2vcf.php.txt (right-click, save target as: csv2vcf.php) With it, you can now convert this csv file to a vcf file which is the format used by your mobile phone to store your contacts. Next, make a backup of your phone book with the help of obexftp: obexftp -b $BT -U synch -g telecom/pb.vcf (of course, $BT being the hardware address of your K700i - the bluetooth address). This should leave you with a pb.vcf file in the current directory that holds all your contact data. Store this file in a safe place in case something bad happens.

Now, rename the vcf file generated by csv2vcf.php to telecom/pb.vcf. Clear the address book of you K700i (can be found in the options menu, if the phone asks you about a security code and you haven't set one, it most likely is 0000 [quad-zero]). Now, upload your new, generated phone boook to your K700i with the command obexftp -b $BT -U synch -p telecom/pb.vcf.

If all went well, you now have a fine address book that is consistent with what you have on your PC (and is also backed up right on your PC). You can now experiment a little more with abook and convert your address book to other formats as you wish (for example, a printable HTML file). Enjoy.

The truth about themes

Themeing the K700i is cool - there exist tools with which you can create your own themes, but if you just want to GIMP up some theme of your own with everything under your control: untar your .thm files! That's right: A .thm file is nothing more than a tarball (non-gzipped) with the relevant files in it. There exists a XML file which describes generic colors and filenames and also a bunch of graphic files which can be edited with - for example - The GIMP. It's easy and fun - you just have to fiddle around for an afternoon or so.

If you want to have it easier: mTC (myTheme Creator) can assist you on creating a theme.


This section contains links to related websites. If you know about another website not listed here that fits the theme, make sure to contact me:


  • 2006-05-28: Initial upload
  • 2006-12-28: Revision, URL changed
  • 2007-04-26: Added link
  • 2007-07-19: Added link to TuxMobil

Thu Jul 19 14:16:52 2007 +0000