Manage files on your mobile phone memory and card.

Feb 7, 2007 09:44 GMT  ·  By

OBEX (abbreviation of OBject EXchange, also termed IrOBEX) is a communications protocol that facilitates the exchange of binary objects between devices. It is maintained by the Infrared Data Association, but has also been adopted by the Bluetooth Special Interest Group and the SyncML wing of the Open Mobile Alliance (OMA).

OpenOBEX is an open source implementation of the Object Exchange (OBEX) protocol. This protocol is optimized for ad-hoc wireless links and can be used to exchange all kinds of objects like files, pictures, calendar entries (vCal) and business cards (vCard). OpenOBEX supports the following links: ■ IrDA ■ Bluetooth ■ USB For a list of supported devices, click HERE and select your phone manufacturer from the left menu. If you found your phone model on the list, you may carry on with this guide.

Installing OpenOBEX

To manage files on your mobile phone, you'll need two applications: OpenOBEX and ObexFTP. You can either try to install it using your package manager (yum, apt-get etc) or, download the sources from Softpedia: OpenOBEX and ObexFTP.

If you decide to install them from sources, you will need to have the following packages installed on your system: gcc make automake1.4 autoconf libusb-dev libtool.

Finally, follow these steps: OpenOBEX:

code
$ mkdir ~/usbobex
$ tar xfz openobex-1.3.tar.gz
$ cd openobex-1.3
$ ./configure --prefix=$HOME/usbobex --enable-apps
$ make
$ make install
ObexFTP
code
$ bzip2 -cd obexftp-0.20.tar.bz2 | tar xf -
$ cd obexftp-0.20
$ ./configure
$ make
$ sudo make instal
Set UDEV permissions

- Open a terminal and type lsusb. - Look for a line similar to this: Bus 001 Device 005: ID 0421:0428 Nokia Mobile Phones - In this example, 0421 is the VendorID, while 0428 is the ProductID. - Add the following line to /etc/udev/rules.d/40-permissions.rules in Ubuntu: BUS=="usb", SYSFS{idVendor}=="VendorID", SYSFS{idProduct}=="ProductID", GROUP="plugdev", USER="yourUserName" - Replace VendorID, ProductID and yourUserName with the correct values.

Using ObexFTP

- Open a terminal and type:

code
$ ~/usbobex/bin/obex_test -u
Your should see something like:
code
Using USB transport, querying available interfaces
Interface 0: Nokia Nokia 6230i (null)
Interface 1: Nokia Nokia 6230i (null)
Interface 2: Nokia Nokia 6230i (null)
Listing directories: (Run command as normal user with Ubuntu and as root with everything else)

code
$ obexftp -u 1 -l
-u 1 connects to interface 1, while -l will list directories and files in the root directory.

Downloading files

Let's say we want to get 011.mp3 from the Music files directory:

code
$ obexftp -u 1 -c 'Music files' -g 011.mp3
Uploading files

To upload file.txt from Desktop to Documents directory on the phone:

code
$ obexftp -u 1 -c 'Documents' -p path/to/Desktop/file.txt