Ever wondered how to use your phone with GNU/Linux as you use it with Nokia Mobile Suite in Windows ? Ever wanted to backup contact books, appoinments, sms and all other personal things the easy way in a GNU/Linux environment ?
If you do wonder, friend, you are foreign to
gnokii.
gnokii provides tools and a user space driver for use with mobile phones under various operating systems operating systems. It allows you to communicate with the phone over a serial cable, usb, IR or even bluetooth. gnokii also provides the functionality to manipulate the phone over this connection.
Why did I chose Nokia 3110c ?
The primary reason is that it is the phone that I own. Another reason is that this particular phone uses a DKU-2 cable. DKU-2 is nothing other than a fancy name for the common USB to mini-USB cable ! I was interested in USB devices working with GNU/Linux, I guess.
Hoping that you are competant enough to install gnokii either from source or from your distro's custom repositories, let us proceed to the juicy part. As with all good things free, the first thing that you will need on a fresh installation of gnokii is a good configuration file, aptly named
.gnokiirc
Fire up your favorite text editor (mine is Vim) and type in the configuration details.
Here's how my config file looks like
[global]
port = /dev/ttyACM0
model = 3110c
initlength = default
connection = dku2libusb
use_locking = yes
serial_baudrate = 19200
smsc_timeout = 10
bindir = /usr/local/sbin/
The
port
determines which port the PC uses for connecting with the phone. On connecting the phone with the PC and selecting "Nokia Mode" a new node is created by the system in
/dev
. You can use the output of
dmesg
command to determine the port.
On issuing the
dmesg
command on a terminal, you will see an output similar to
.........
[ 1671.313624] cdc_acm 3-1:1.1: ttyACM0: USB ACM device
..........
Use the port value obtained thus. But normally, as I have seen in a number of systems, the default port will be
/dev/ttyACM0
.
Next up is the model name which is
3110c
in this case.
initlength
controls the number of characters sent to the phone during initialisation. Either "default" or a positive integer value is allowed. If it seems like the connection takes a long time, you can retry, entering a smaller positive value for
initlength
. But in most cases the value "default" will suffice.
connection
determines the type of connection. With DKU-2 cable and the libusb driver, use a value of
dku2libusb
. It will work fine.
Leave the other options as they are seen. The
serial_baudrate
determines the speed at which serial communication takes place. The
use_locking
allows a type of flagging facility, disabling other operations while one is taking place. The
smsc_timeout
option determines the time to wait before a SMS send via the PC is acknowledged by the phone. The
bindir
is the path to various gnokiid libraries. For a default installation, the libraries are found at
/usr/local/sbin
. Change the value if you chose to install the libraries elsewhere.
With gnokii installed and .gnokiirc setup, connect the phone to the PC. When asked to choose the mode in the phone, choose "Nokia Mode".
How do you verify whether your phone is properly detected ? Open up a terminal and issue the following command
gnokii --identify
You will see the list of messages being sent back and forth between the PC and the phone
......................
......................
Received model RM-237
IMEI : XXXXXXXXXXXXX
Manufacturer : Nokia
Found model "RM-237"
Model : 3110c
Product name : RM-237
Revision : V 07.21
Serial device: closing device
This communication gives you the phone model, your IMEI number and the firmaware version you are using. If they are showing up correctly, you have successfully connected your phone with gnokii.
There are a lot of manipulations possible with gnokii. You can send sms, make voice calls etc. With some clever scripts and imagination, you can turn your phone into a remote management center !
Labels: gnokii, GNU/Linux, Nokia 3110c