Accessing Dive Info on the UEMIS SDA

Please register or login

Welcome to ScubaBoard, the world's largest scuba diving community. Registration is not required to read the forums, but we encourage you to join. Joining has its benefits and enables you to participate in the discussions.

Benefits of registering include

  • Ability to post and comment on topics and discussions.
  • A Free photo gallery to share your dive photos with the world.
  • You can make this box go away

Joining is quick and easy. Log in or Register now!

Your point is noted but please, this thread is dedicated on how to access the memory of the SDA, not discussing if divelogs are useful or not. See below the OP post, especially considering the SDA stores more than simply dive profiles: contacts, notes, gear configuration, divesites coordinates... Thanks :)

Can we try and keep this thread for just posts on the actual work being done on extracting the info we need - it'll help those doing the actual programming and reverse engineering work if they don't have to sift through the extra chatter. This job will possibly be hard enough anyway. We have the whole UEMIS sub-forum available for extra topics.
 
To those interested in this topic... TnT and I worked on this for a few hours today. Kudos to him for staying up till almost midnight to help me interpret what I see.

First, TnT has figured out a way to get dive data back from the UEMIS web server in what appears to be a reasonable XML format - so at least the dives logged so far should be 'extractable'.

But the actual sync process (needed for an offline sync) is weird, to put it mildly. And as bad as I feared. Basically the USB filesystem is used as a communication tunnel between the web server and the dive computer. The java applet writes requests to a special file ('/req.txt') in the USB filesystem and receives answers from the computer through files in the /ANS directory. It is unclear at this stage what the different requests mean, how exactly they are encoded, if there is some authentication that is needed to unlock the communication, etc.

Laura - any response from UEMIS on their willingness to share documentation of this protocol with the community?
 
To those interested in this topic... TnT and I worked on this for a few hours today. Kudos to him for staying up till almost midnight to help me interpret what I see.

First, TnT has figured out a way to get dive data back from the UEMIS web server in what appears to be a reasonable XML format - so at least the dives logged so far should be 'extractable'.

But the actual sync process (needed for an offline sync) is weird, to put it mildly. And as bad as I feared. Basically the USB filesystem is used as a communication tunnel between the web server and the dive computer. The java applet writes requests to a special file ('/req.txt') in the USB filesystem and receives answers from the computer through files in the /ANS directory. It is unclear at this stage what the different requests mean, how exactly they are encoded, if there is some authentication that is needed to unlock the communication, etc.

Laura - any response from UEMIS on their willingness to share documentation of this protocol with the community?

So far I drew the same conclusions browsing the code for USB transfer.

About getting the dive data from the web, the regular address of the log is http://www.uemis.com/en/sda_logbook/preview/xxxxx
You can get xml data from this dive at this address: http://www.uemis.com/en/sda_logbook/data_src/xxxxx/divelog , some conversion is needed to get depth, time, temp...
and you can get more info here http://www.uemis.com/en/sda_logbook/data_src/xxxxx/dive
 
Hi,

I just checked by logging into myuemis.

When I look at a dive profile in my list the address bar shows a 5 digit identification number for that dive.

Using those other urls and substituting that dive ID number for the xxxxx's gives a lot more info in xml format

The numbers are not sequential and trying an out of sequence number returns no information as it must belong to another diver and the usename and password I log in with do not match.

Great work by everyone helping to decode this - its is much appreciated by us all!!
 
Last edited:
Fairly easy:

Under myuemis, when you click on your device under the database tab, you go to

http://www.uemis.com/en/sda/view/overview/yyyy where yyyy is a four digit number (maybe less or more, mine is 1954, possibly the number of databases registered)

then you can list all the dive using

http://www.uemis.com/en/sda/list/dive/yyyy

you'll then have all your dive list, the links to your dive profile are all listed as

http://www.uemis.com/en/sda/view/dive/xxxxx

so if you read the html code of http://www.uemis.com/en/sda/list/dive/yyyy , you'll get a list of links with xxxxx for a given user (assuming you have the proper credential to do so, impossible to read someone else's dives)
 
https://www.shearwater.com/products/swift/

Back
Top Bottom