From: Roger B. <ro...@ro...> - 2004-01-31 07:10:00
|
cal...@hr... wrote: [You managed to send this three times! SourceForge has been having some mail issues > I've checked on protocol analyzers (USB Snoopy is one) but > lack sync software to analyze. Those generate WAY too much info, and most of it isn't relevant. I would expect the phone to just use standard bulk transfers (which is what the bitpim code does). > I will buy a commercial phonebook sync package for the CDM-8600 when one becomes > available and will see what it's sending. Get one anyway that has free upgrades for new phone models, and tell them it is a different model of Audiovox. Chances are the sync protocol is very similar. Usually a few fields are different length and that is about it. > I have specs on USB protocol (http://www.usb.org/home) and have some resources in > that area; however, You really don't want to dive that deep if it can be avoided. By far the best tool to use is portmon from sysinternals.com on Windows. You will need to make sure you setr max output bytes to a large value and turn on show hex in the output. > I've checked the web extensively and so far cannot locate details on a sync protocol > for Audiovox phones with Qualcomm chipsets. The phone manufacturers have a nice cushy arrangement with the software companies and don't expect general usage of their sync protocols, which is why they are ugly. But once you have a starting point for the protocol, it becomes pretty easy to figure out. BitPim has a builtin protocol viewer and protocol description files which makes development really easy. > http://howardforums.com/showthread.php?s=&threadid=253375&perpage=15&pagenumber=7 The format is similar but slightly more complicated than the LG phones. The LG uses two bytes to say how many active entries there are, then each entry consists of two bytes for an index id, and then the name null padded. The VX4400 has one location for the index files and associated data. The VX6000 has three. > http://howardforums.com/showthread.php?s=&threadid=253375&perpage=15&pagenumber=8 The VX4400 also likes to store the numbers in the files as BCD. One thing I noticed is that there doesn't appear to be a unique id for an entry. ie if reading from the phonebook a second time, how can you tell if an entry is the same. (Imagine the user editted the name, or one or more of the numbers). The LG phones associate a 32 bit ever increasing serial number to each entry. Editing an entry keeps the serial number. Making a new entry allocates a new number. (The 4400 and VX600 also store the information in seperate files - numbers in one, names, emails, urls in another. The numbers are in fixed length fields with the last nibble being e to indicate the end). > My thoughts are that it would be better to work on revisions to Bitpim since > it's an open source effort It also works on Linux and Mac which most companies seem to ignore. If you want to get started, look on the BitPim developer page and get a working version based on CVS. You will probably want to start writing some descriptions. Look in the examples directory to see what the analyser works with. You can run analyser.py from the main directory on any of those files. Then write a description file (eg p_audiovox8600.p). There are other files as examples and a more detailed description in packetdescription.txt. Then format the data in the same way as the examples, and verify your description works in the analyser, tweaking as needed. In the web directory there is a file named phonespec.html which gives more details on how to add a phone. It is somewhat rough and incomplete. Please let me know if you have any comments, updates or sections that need more detail. Roger |