Forgot one thing
Forgot to upload my evaluation of Stig Erlands JoggerLogger project. It can be found here, and is written in Norwegian.
Forgot to upload my evaluation of Stig Erlands JoggerLogger project. It can be found here, and is written in Norwegian.
The Where R U? project is supposed to let people figure out where their friends are by sending an SMS using a special format. The mobile phone that receives this special SMS will need the Where R U client installed and a bluetooth GPS connected. The phone will recognize the SMS, then fetch the phones location from the GPS, and send this information to a server using the XML-RPC protocol. The server will then fetch a map based on the GPS information, and send this back to the user who wanted the information in the first place. The server is supposed to be able to send information back to the user in several different formats. This might be as an MMS, to an email address, og maybe post the information as an RSS feed. Click on the figure below to see the information flow in the Where R U project.

The Where R U client will be primarily tested on a Nokia 6680 phone connected to a Holux GPSlim GPS receiver.
The mobile client is an application that can be installed on a series 60 mobile phone. The application will be written in the Python programming language using Python for Series 60. The mobile phone is required to install Python for Series 60 before the Where R U application. When started, the application will listen on the inbox of the phone for incoming messages. Once a message is received, the application will scan the message to see if it has the correct format for Where R U messages. If so, the application will connect to the GPS and fetch information from it, and send this information to a server. The message will be sent as an XML-RPC message using HTTP as transfer mechanism.
The server application will receive XML-RPC messages from Where R U clients, and do whatever these messages tells the server to do. The server will fetch a map from an online WMS based on the GPS coordinates it receives, and it will send the image to the user who asked for the information. The different formats that the server will support is not yet decided, but some ideas are MMS, mail and RSS. The server application will most likely be implemented using the PHP programming language.
This report will contain information about how I went about to do the Where R U project. The report will be a typical scientific paper containing information such as: Introduction, Methods, Results and Discussion (IMRaD) along with some other information.
So far most of the work has just been to test out the different parts of Python for Series 60.
I have tested out the Inbox module that lets an application listen on the inbox for incoming messages. The application intercepts the message before the mobile phone tells the user that it has received a message. Because of that the application can do this part without the interaction of the user (if the application is configured in such a manner).
I have also made some attempts to connect to the bluetooth GPS but this requires interaction from the user, so more work will be done on this part so that the application can work without any interaction. I have however managed to fetch information from the GPS.
Regarding posting information to an external server from the phone, a python xmlrpc library will be used. To send the message the user must connect the mobile phone to the net, and this part requires interaction from the user. Some tests have been made and I have sucessfully sent XML-RPC messages from the mobile phone to a simple XML-RPC server implemented using PHP.
In other words, most of the parts of the client has been tested, so now I just have to put them together.
No work has been done on the server application yet. I have however made a small implementation of an XML-RPC server using PHP for testing purposes.
Some parts of the project report has been started. The portfolio 2 assignment in the Forskning, skriving og publisering course will work as a starting point for the final report, although it has to be reorganized. The portfolio 2 assignment can be found here. The living report for this project will be found on this blog as soon as it is started.
As stated above, the parts of the application will have to be put together in one piece of software. More work will be put in trying to make the application as silent as possible (i.e. no interaction from the user is required). There are some parts of the application that this might not be possible with, such as connecting the phone to the net, but there are some parts that I have made by now that can be made more silent).
The application should also include some options that users can set. The most important option might be to enable the user of the phone to decide on who will be allowed to request information using the Where R U application. This might be as simple as just defiing a list of phonenumbers that can request information.
The format of the SMS must be set as well. The format should be as easy as possible. Some examples:
Those are just examples. As stated, the format has not yet been decided.
As stated, no work has been done on the server application yet. The application will be an XML-RPC server that will receive messages from Where R U clients, and send information to the user that wanted the information.
A living version of the document must be uploaded to this blog, and continuous work will be made to it.
A powerpoint presentation has been made to present the Where R U application. It can be downloaded here.
I have now uploaded an image that shows the information flow in the Where R U project. Check out the status report page. I will now finish the presentation of the project, and then the status report will be finished.
I have made a new page on this blog that contains a status report on the project. The report is not 100% finished. A figure is missing, and I have to finish the powerpoint presentation and upload that as well. The status report page will be finished early tomorrow.
I came back home late on wednesday the 22nd, so I did not manage to do much work related to the Where R U project last week. I have lots to do this week, so I will post more information later.
Tonight I am going to vist El Chorro in Spain to go climbing for a couple of weeks. For those of you who are interested can see a picture of me climbing a route on a wall called El Polvorin taken last year. I will be going back to that wall amongst others this year as well.
I just checked out the prices of uploading stuff via my phone from Spain, and it looks like I won't be doing a lot of that because of the prices. It would cost me about NOK 70,- pr. MB. Thats about 8.7 Euro… :(
The last week I have been busy writing a more thorough project description for the Where R U? project in the Location Aware Systems course. The paper that I have written can be downloaded here.
Jut figured out that one can set some properties of the pdf file using the hyperref package.
\usepackage{hyperref}
\hypersetup{
pdfborder = 0 0 0,
pdftitle = {Project description: Where R U?},
pdfsubject = {Assignment at \O{}stfold University College},
pdfkeywords = {location aware systems digital maps python series 60 nokia},
pdfauthor = {Christer Edvartsen},
pdfcreator = {\LaTeX\ with package hyperref},
}
The code above sets properties that can be seen when using for instance Adobe Reader, and click on File -> Document Properties…
If you for instance want to be able to click on the sections in the table of contents to go to that section, simply include the hyperref package using the following command:
\usepackage{hyperref}
At first it generates ugly red borders around links to chapters and sections and magellan borders around links to the bibliography, but with the pdfborder option, these will magically disappear!
\usepackage[pdfborder=0 0 0]{hyperref}
And thats about it. :)
Since we are to write our reports using Latex, and the tutors want us to follow the IEEE standards, we need to use a special kind of referencing. Here is a short explanation on how to do that. I am running Linux, and KDE as desktop environment. KDE has a user friendly latex editor called Kile that I use when writing latex documents. To get the IEEE bibliography to work follow these simple steps:
Download the IEEEtran.bst and / or IEEEtranS.bst files from the IEEE pages. These two files need to be put in the texmf/bibtex/bst/ folder on your system. On my computer that folder was located at /usr/share/texmf/bibtex/bst/. I had to make the two last directories since they did not exist.
After the .bst files are in place you need to tell latex that you want to use the IEEEtran or IEEEtranS style for your bibliography. The difference of those two styles is explained in the .pdf document included in the file linked to above. I put the following line below the \documentclass line in my main.tex file:
\bibliographystyle{IEEEtran}
Next you need to tell latex where you want the bibliograpy section to appear in the document. Put the following line at the location you want the bibliograph to appear:
\bibliography{references}
where references is the name of the .bib file containing the bibliography entries.
The references.bib file will then contain the stuff you want to refer to in your text. If you want to refer to a couple of books, you may write:
@book{1,
author={M. Lutz and D. Ascher},
year={2003},
title={Learning Python, Second Edition},
publisher={O’Reilly Media, Inc.},
address={Sebastopol, CA},
pages={620},
isbn={0596002815}
}
@book{2,
author={M. Lutz},
year={2001},
title={Programming Python, Second Edition},
publisher={O’Reilly Media, Inc.},
address={Sebastopol, CA},
pages={1026},
isbn={0596000855}
}
Now, to refer to these books in your text, you simply put \cite{1} where 1 is the “id” of the first book in the references.bib file.
Hopefully this was of help to some of you out there.
Thanks to Øyvind and Stig-Erland for helping me out with this. Also thanks to Morgan who provided me with the links to the IEEE files. :)