Download protocol

3rd party extensions (phpDivingLog, dive computer downloader,...)
Post Reply
Tiadon
Posts: 5
Joined: Thu Jun 21, 2007 15:32
Location: Missouri, USA

Download protocol

Post by Tiadon »

I understand that not having the download protocol for some dive computers limits what you can support. If the protocol could be determined without the aid of the manufacturer, would we be able to impliment that into future releases or is there a legal restriction?
I have done some programming in the past to download dives and upload the gasses to my VR3 so I have a good part of their protocol figured out.

Thanks,

Chuck
divinglog
Site Admin
Posts: 5768
Joined: Sat Feb 08, 2003 21:02
Location: Coburg
Contact:

Post by divinglog »

Hi Chuck

For me there are 2 problems when adding new download functions: First I need the protocol and second a test dive computer with interface. The problem is even with a known protocol I must get somewhere a dive computer for some time to develop the download function. I don't see any other legal restrictions.

The easiest way is like it's done with the Suunto downloader in Diving Log. The downloader itself is developed by James Connell. It's a standalone executable which downloads the data into a xml file which is imported by Diving Log. This way James can improve the downloader over time and I can update it, although I don't have a Suunto computer.

If you did some programming in the past you can create a similar small programm or dll file for the VR3 which will be started by Diving Log.

Sven
Tiadon
Posts: 5
Joined: Thu Jun 21, 2007 15:32
Location: Missouri, USA

Post by Tiadon »

How do I get the XML format you need for the data and the variables you will send when calling the dll?

I would assume I could replace the Suunto downloader dll with my own to begin testing my portion.
divinglog
Site Admin
Posts: 5768
Joined: Sat Feb 08, 2003 21:02
Location: Coburg
Contact:

Post by divinglog »

I'll send you an example xml file from the Suunto downloader to your email, but you can create also your own format. I'll make then all necessary conversions during the import. You can find the Suunto downloader in the Diving Log program folder (SuuntoXML.exe).
Tiadon
Posts: 5
Joined: Thu Jun 21, 2007 15:32
Location: Missouri, USA

Post by Tiadon »

Thanks for the file and parameters. I can use the XML format to get a start but if I get this working properly we would need a create a seperate format as you said.
James Connell
Posts: 103
Joined: Fri Dec 08, 2006 05:33
Location: Alaska, USA
Contact:

Post by James Connell »

[quote="Tiadon"]but if I get this working properly we would need a create a seperate format as you said.[/quote]

That would be both a good thing and a mistake. I'm not saying my format is a good one - it simply follows the Suunto computers internal layout.

What's needed is a XML "standard" that is compatible with any computer download.
JConn Inv.
Software Tools for Suunto Dive Computers
http://LiquidImagePhoto.com
divinglog
Site Admin
Posts: 5768
Joined: Sat Feb 08, 2003 21:02
Location: Coburg
Contact:

Post by divinglog »

There is already a standard XML format for dive computer data: UDCF and the successor UDDF. Maybe it is not a bad idea to use one of these formats.
Tiadon
Posts: 5
Joined: Thu Jun 21, 2007 15:32
Location: Missouri, USA

Post by Tiadon »

I will try to use the UDDF standard for my output file.
James Connell
Posts: 103
Joined: Fri Dec 08, 2006 05:33
Location: Alaska, USA
Contact:

Post by James Connell »

Looks interesting!, a bit overgrown perhaps, but that does no harm to the downloader builders, it only makes your job more complex Sven ;-) You have to implement the complete standard.

OK, I agree, Lets use the UDDF protocol for all XML based downloaders.

The next full version ( version 3.0 ) of my suunto downloader will have the UDDF protocol implemented.

< EDIT >
I took a much closer look at the UDDF protocol, It is not complete! The section for Dive Computer downloads is Very weak!!!
I see no good way of using it as a standard as is. In it's existing form it is for the transfer of dive logs NOT raw Dive data.
</EDIT >
Last edited by James Connell on Fri Jun 22, 2007 18:50, edited 1 time in total.
JConn Inv.
Software Tools for Suunto Dive Computers
http://LiquidImagePhoto.com
James Connell
Posts: 103
Joined: Fri Dec 08, 2006 05:33
Location: Alaska, USA
Contact:

How about a "developers" forum??

Post by James Connell »

Sven,

What do you think about a separate forum for this type of discussion.

The details of this could get complex, and I'm sure, would be of little interest to Most users. It would also be cleaner then Emails with CCs and be easier to find and reference.
JConn Inv.
Software Tools for Suunto Dive Computers
http://LiquidImagePhoto.com
Tiadon
Posts: 5
Joined: Thu Jun 21, 2007 15:32
Location: Missouri, USA

Post by Tiadon »

Looking at the information the Suunto loader provides compared to the UDDF, I agree that the computer download simply is not complete in UDDF. Oddly enough, the VR3 is much more limited so far in what is transferred compared to the Suunto but there are still pieces of information that UDDF does not cover.
divinglog
Site Admin
Posts: 5768
Joined: Sat Feb 08, 2003 21:02
Location: Coburg
Contact:

Post by divinglog »

OK, I've created a new forum for extensions and moved this thread into the new forum.

I haven't looked yet at the UDDF format very close, so I can't say if it's suitable for this. If not it's better to create an own format for each downloader which contains only the data the dive computer provides.
James Connell
Posts: 103
Joined: Fri Dec 08, 2006 05:33
Location: Alaska, USA
Contact:

Post by James Connell »

I've taken a fairly good look at the UDCF protocols.
They are the protocols for transfers from the dive computer to a Logging program.

They seem quit complete, with a few exceptions:

1: A <datatrack> tag that holds 'compartment' loading data. This tag was designed and included for the Uwatec Aladin DCs and should be dropped in favor of a generic tag of the same function but more flexibility.

2: No provision for Air Integrated tank pressures in the profile. The reason I used the <datum> tag - to hold a complete sample ( depth, temp, pressure )

3: No provision for temp samples in the <sample> tag. See 2:

4: A need to expand the <Alarm> tag for extra events. ( I still prefer the <event> tag to alarm since not all events are "alarming" :-)

5: A "generator" tag like the UDDF protocol has to provide downloader vender info.
JConn Inv.
Software Tools for Suunto Dive Computers
http://LiquidImagePhoto.com
teemutin
Posts: 15
Joined: Sat Jun 23, 2007 11:49

Post by teemutin »

Hi!

I certainly agree with James about UDCF and UDDF formats. That are quite far away form generic xml dive format. They have many open issues and they are somewhat bound to Uwatek (?) format having no space for extensions needed to represent features available in oher computers.

Both formats, form my point of view, carry an ackward idea of over-using elements and neglecting attributes. Using elements for everything makes it easy in sense of extending but..

There could be some kind of "generic" xml format for all downloaders while using namespaces for extending that functionality. Iris namespace for Mares Iris download, vr3 namesapce for vr3 and suunto for suunto and so on

Im working with Mares Nemo import function to Divelog. I should be able make it ready during my holidays, let's see. At the monet I use my special xml format loosly, base on UDDF and James suunto format, but very loosly. :)

Theres also lots of dive computer settings that are different between computers; Like altitude programs; Mares altitude setting 1 != and Suunto altitude setting 1..

- Teemu
James Connell
Posts: 103
Joined: Fri Dec 08, 2006 05:33
Location: Alaska, USA
Contact:

Post by James Connell »

I rather agree.
i've done a generic format and I'll post it in a seperate thread.
JConn Inv.
Software Tools for Suunto Dive Computers
http://LiquidImagePhoto.com
Post Reply