- G N O K K I - (C) Hugh Blemings, hugh@vsb.com.au 1999 Last update 13 February 1999 - Introduction - This is the second release (0.2.0) of source code that will ultimately form gnokii, a comprehensive Linux/Unix tool suite and modem/fax driver for Nokia mobile phones, released under the GPL. The code supplied is very alpha though the initial release has now had a reasonable amount of testing and seems largely safe! Play around with it, hack at it and see what you discover but please do so in the knowlege that it comes with no warrany or guarantee - you use it at your own risk. The resulting executable allows you to read/write phonebook entries as well as enter a monitor mode to look at the protocol and any unknown messages that may occur. The latter are printed in hexadecimal form and are provided to help with our understanding of the protocol. The code for reading/writing phonebook entries has had limited testing but the read code is believed to be solid. It has been observed that the write code occassionally fails to write a location for reasons as yet no understood. The format of the input to the write option is relatively unforgiving and does only very basic parsing. - Installation - Review fbus.h, make sure that the FBUS_DEVICE define points to the right serial port. You'll need r/w permissions on this port. Type make, all should build from there, it's very simple code at present though in contrast to version 0.1.0 this code now requires pthread library support. - Known Bugs - Occassionally, writes to phonebook fails for as yet undertermined reason. Seems more prevalent when lots of entries are updated in a row. Not really a bug but the command that asks the handset what the maximum permissible length of phone book names and numbers is not yet known so the value is limited to 10 characters for names and 30 for numbers. This works OK with the Optus SIM but may be limiting for other localities. - How to help - You can assist the development process and by making note of any messages that occur and seeing if you can work out what they mean. Suggestions on changes to the code are welcome but don't spend too much time in this area as it is still a work in progress, the code I'm working on now is somewhat more complete than what has been released but isn't as tested. - Protocol Details - The protocol used between the handset and the PC has been worked out by a mixture of trial and error, monitoring the data that goes between the 3810 and it's Windows 95 software and a few snippets of information found on the 'net relating to older Nokia models. Feedback from people who have played with the first release of gnokii has been invaluable. More of the protocol has been investigated than is presently included in the software, including the messages used to send and receive SMS messages and do actual data/fax connections. However, they are not yet fully understood and hence have been left out of the included code for now. - To Do - A lot. Ultimately I envisage a kernel driver that is loaded as required that talks to the handset via the real serial port on one side in the phone's protocl. The other side appears as a fairly basic serial port that can understand AT commands and otherwise appear like a modem. The current gnokii command line tool will be expanded to allow the phone to be monitored, SMS messages to be sent and received etc. etc. Whether this operates directly to the serial port or via the driver is unknown, the latter approach would nessitate making up AT commands I expect. It is anticiapted that basic SMS functionality will be available in the next release (0.2.x) as most of this protocol is now understood. Clearly, the tools should be written to allow GUI based wrappers to be put together easily. Discussion (on the list is suggested) about the form the tools might take is useful and encouraged. - References - The web site for this project (basic though it is) is at; There is a similar project underway for the 6110/5110 range of handsets, discussions are underway to see about merging the two efforts. The serial programming howto was valuable in cobbling together serial code for both monitoring and the tools themselves. This is the Australian mirror, there will be one nearby to you too :) - Handsets/Networks tested - 3110/Sonera (Finland) 3810/Telstra (Australia) 3810/Optus [Actually Hutchison] (Australia) 8110/Proximus (Belgium) - Credits - Thanks to (in no particular order); * Francois Dessart and everyone else on the linux-nokia mailing list for their interest and input in the project. * Brendan O'dea and Tony Lindstrom for useful dumps from gnmon when incoming SMS messages arrive - Brendan also gave a useful breakdown of the 0x30 SMS message structure. * Lucy for making pizza and putting up with me dissapearing into the office... :) - Release Notes - 19990213 Version 0.2.0 First version that looks more like the finished product - supports command line options etc. 19990126 Version 0.1.0 Initial release of monitoring tool - first rough incarnation of gnokii - what will ultimately be the monitoring and programming tool.