05 August 2006#BackgorundMy latest Linux Slate is a
Motorola A780 mobile phone. It is a very cool phone, but I noticed one
big deficiency when I first got it. I could not figure out how to enable the setting of the
phone's clock via the cellular network. I like my gadgets to tell
me what time it is, not to ask me. I did some research on
Motorolafans.com, and found that this feature is disabled on many
versions of this phone - particularly those for the Asian market, which
mine was.
A little more research informed me that I could turn the feature back
on by doing something called SEEM editing. I then learned of a
really great tool called moto4lin. When I tried to build moto4lin
on my main PC, which runs Fedora Core 3, I ran into some minor
problems. I was able to figure it out, but I noticed that no one
had made a How-To for compiling and using moto4lin on Fedora Core, and
no one had a How-To for using moto4lin with a Motorola A780.Please Read
Disclaimer Below.
Adapted from gorkhal's posting on ubuntuforums:http://www.ubuntuforums.org/showthread.php?t=56253&highlight=moto4lin

This page contains some
specifics for use with the Motorola A780, but many Motorola phones are
supported.Check
out the Supported Models section at the motor4lin
wiki.

HOWTO: Access Motorola phones
through USB using Moto4Lin

This HowTo is for installing and running
moto4lin on Fedora Core. I
actually did this on Fedora Core 3, but Core 4, and Core 5 should be
very
similar.

Most of the information reproduced here, for convenience's sake, can
be found at the moto4lin's wikipage HERE.

Moto4lin supports AT and P2K modes on
these phones. The AT mode is
basically for Modem functionality and GPRS. Its the P2K
mode that lets you access your
phone's file system, and other features such as SEEM editing.

#Phone Set-up (A780 Specific):

Telnet access, LinLoader etc. are NOT
required for the example on this page. All you need is the
phone and a USB cable.

Check/Set the USB port to modem mode.
On the Phone do: Set the USB
port to Modem Mode. This is under
Setup.... USB Mode.#Desktop PC Requirements

You need root access for almost all of the operations here.You need the following RPM's installed:qt, qt-devel, zlib, zlib-devel, libusb,
libusb-devel.

(Note: You probably will also need minicom installed for
later. You
may as well grab it while you are installing the other stuff, so I
include it in the commands below.)

Obviously, most systems should have some of these installed, such as
libusb. To check the other ones do:

~# rpm -qa | grep
<package name>

For example, I check to make sure I have qt-devel, I use:

~# rpm -qa | grep qt-devel

It returns:
qt-devel-3.3.4-0.fc3.0

Showing that I have qt-devel, and that it is at least version 3.3, so I
am OK.If you are missing anything, install it with:

~# yum install <package
name>

For example, If I did not have qt-devel, I would enter:

~# yum install qt-devel

Do the same for the other pre-requisites that you do not already have.

You can also get minicom now too:

~# yum install minicom

#Preparing to install moto4lin
We are going to get the moto4lin
source from a cvs repository. You might get an error from cvs at this
stage, ignore and proceed. Asked for password? Just press Enter.

Should you receive any compilation Errors,
you most likely do not have
the required libraries, try looking through the Error messages to
figure out what you are missing. Don't worry about Warnings. If Warnings bother you, then I would
like to see you write code that never produces Warnings when it is compiled. If
there are no Errors, you have
installed moto4lin successfully.

#Configure moto4linConnect your phone to your computer using a usb cable.
One nice thing about the A780, and other, newer Motorola phones is that
they use a standard USB to USB mini cable. A special
Motorola cable is NOT required.

Now run moto4lin...

~ # moto4lin

You need to run it under root to access the P2K mode on your phone, at
least until its fixed, or someone figures out how to run it as normal
user.

Click 'Update List' -> retrieves a list of the 'AT Vendor ID' and
'AT Product ID' of all your USB devices. Find your cell phone's AT IDs
from the list.
(Once you have found it write it down, because an ODD thing is when moto4lin is run under root, it does not save
any changes to settings)
Select 'Switch to P2K' -> if it is successful, it should say '[info]
Phone pluged as P2K' in the status bar of the main window.
Clicking 'Update List' again will now retrieve the 'P2K Vendor ID' and
'P2K Product ID' of all your USB devices. Write your cell phone's P2K
IDs down.

Alternatively you can search here for the AT and P2K IDs of your phone.
The A780's info is:

Appearently, most A780's with late firmware versions will fail to
switch to P2K
mode.
If this happens, do the following steps:

(Trivial Note: The MING phones - E680 E680i, A780, A1200 run
Linux, not P2K on the AP (Application Procsessor). Putting the
phone in the mode where Moto4Lin can work is still called "P2K Mode" -
Us Linux users just have to go along with the P2K terminology.)

#Using Minicom to force the A780
into P2K mode - Optional:

Close moto4lin.
Unplug your phone.

Start Minicom in setup mode:

~# minicom -s

Move to Serial Port Setup <Enter>
Press <A>, and change the Serial Device to /dev/ttyACM0
Press <Enter> and <Enter> again to get back to the
configuration menu.
Move to Save setup as dfl. Press <Enter>
Move to Exit. Press <Enter>

Connect your phone.

Restart Minicom

After Minicom starts, the phone should return "OK"

Type the following (in minicom):

at+mode=12

You will get a message telling you to disconnect. DO NOT unplug the phone, Just quit
Minicom WITHOUT reseting the
modem.
Do this by pressing <cntrl - a> <q>.

If you do:

~ $ cat /proc/bus/usb/devices

You shoul d see that your phone has changed it's identity. Its
product code should have changed from 3802 to 6009.

Start moto4lin, and it should see that the phone is already in P2K
mode. You should now be able to connect to it.

(Note: Since we have the source code for moto4lin, we could
change the AT commands it sends to the phone to put it into "P2K" mode
to the
appropriate ones for the A780. I have not bothered to do this
since I do not
plan on
messing with my SEEM files everyday. Suggestion to the Moto4Lin
developers: Make is so that we can change the AT command to
switch the
phone mode in the settings screen.)

#Using Moto4Lin

If its already in P2K mode, click 'Connect' to load up your Motorola
file system.

For the A780, you will not see the full Linux filesystem.

#Editing SEEM 0032_0001

The whole purpose of this, for me, was to enable Autoupdate of the
phone's clock. This is done by editing SEEM file 0032_0001.
We need to change 2 bits in this file. Moto4Lin makes this
very easy.

You can find a reference of SEEM 0032-0001 here.
Please not that this covers this seem file for other phones. Some
bits may be different or not used for the A780. I strongly
reccomend that you do not change any bits if you are not sure of thier
effect on your phone.

(Note: There is a bug in the phone that causes erroneos time
updates with some - North American, I believe - providers. See this
thread and
this
thread on motorolafans.com.)

Click on Seem Editor.
In the Seem entry boxes, enter 0032, 0001.
Click Read Seem. (Note. it is a good idea to save your
original seem to a file before editing it.)

Your screen should look something like:

To enable Network time autoupdate, we need to change the very first bit
of this seem. Click on the box at 000_,_0 and set the 0th
bit on.
(Note the differnce between bit order and bit number.). Do the
same for bit 2 of byte 55 (This is at 005_,_5 ).

One final warning is approprate
here about the possibility of rendering your phone
non-functional. If you do not want to continue, just click
Disconnect, and unplug your phone.

Click on 'Write Seem'.

If there is no other editing you wish to do, just click 'Disconnect',
and
unplug your phone. Reboot to see the changes.

Disclaimer:THIS DOCUMENT IS PROVIDED BY THE AUTHOR "AS IS". IN
NO EVENT
SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
ARISING IN ANY WAY OUT OF THE USE
OF THIS DOCUMENT, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.