Compatible Dive Computers

Help
2009-02-25
2012-12-06
  • Roger Spencer

    Roger Spencer - 2009-02-25

    Hi,
    I couldn't find out whether or not jdivelog supported the D6 dive computer by suunto. So I tried installing anyway. It appears as though the D6 is not supported because its not in the list of computers under settings. I am correct? Are there any plans to include the D6? (Please).
    Great program by the way - I just wish my D6 would connect.
    Many Thanks
    Roger

     
    • André Schenk

      André Schenk - 2009-02-26

      Hi Roger,

      I would like to help you but unfortunately I don't own a Suunto. Maybe I could send you a slightly modified version of JDiveLog which is able to dump the content of your D6 somewhere into the file system. With this dump I could try to add support for the D6. In this way I managed it to add support for the Uwatec Smart computers to the program.

      Would this be ok for you?

      Best regards,

      André

       
    • Roger Spencer

      Roger Spencer - 2009-02-26

      Hi Andre,
      Thanks for your reply.
      I would love to try and help- I appreciate your offer. I'm using Ubuntu and I'm not an expert but I will help in any way I'm able.
      Cheers
      Roger

       
    • Kristian

      Kristian - 2009-02-27

      Hi Andre,

      As I read in de.rec.sport.tauchen, the d9 and the cobra2 use the same protocol. I assume, D6 and D9 do so too?

      Maybe you could send me the modfied version too, so I can send you more Data. I would really like to use my new "toy" with JDiveLog as I did with its older brother (Gekko)

      Thanks in Advance

      Kristian

       
  • Russell Dwiggins

    I had been using jdivelog with a Suunto Mosquito.  Unfortunately this computer reached its end of life.  A buddy sold me his D9 for an amazing price, so I'm interested in using this protocol as well. 

    I'm happy on the cli and can get some output for you if you wish.  Just let me know what needs to be done.

    Also, in case you haven't seen it yet, there is another project for open source diving related resources:

    The libdivecomputer page states: "Libdivecomputer is a cross-platform and open source library for communication with dive computers from various manufacturers."

    They include the D 4/6/9 as a part of the (large) list of computers they support.  Software is currently only available via svn.

      : http://divesoftware.org/

     
  • André Schenk

    André Schenk - 2009-10-17

    To continue the work to intregrate the Suunto D9 into JDiveLog I either need a real hardware device or at least someone who can tell me the signal order on the serial port to establish a connection. Maybe a USB sniffer could help for that.

    Best regards,

    André

     
  • Russell Dwiggins

    I think I can actually get that using the tools mentioned above.  Can you give me a hint what you might expect, or maybe what the signal order of one of the other DC's looks like so I can be sure?

    Thanks!

    Russell Dwiggins

     
  • martin quensel

    martin quensel - 2011-02-11

    I sniffed the serialport when using the Suunto Divemanager 3.10 with my Suunto Vyper 2 (same as vyper air)

    9:51 - Activity log…
    14:30:28 - --------------------------
    14:30:28 - Serial Port Opened
    14:30:28 - --------------------------
    14:30:28 - Application - C:\Program Files (x86)\Suunto\Suunto Dive Manager 3\DM.exe
    14:30:28 - Timeouts changed to RIT:0xA, RTTM:0x0, RTTC:0x0, WTTM:0x0, WTTC:0x0
    14:30:28 - BaudRate changed to 9600
    14:30:28 - RTS changed to "OFF"
    14:30:28 - DTR changed to "ON"
    14:30:28 - Line control changed to StpBts:0x0, Prty:0x0, WrdLen:0x8
    14:30:28 - Flow control changed to CHSh:0x80000001, FR:0x0, XOnL:0x800, XOffL:0x200
    14:30:28 - BaudRate changed to 9600
    14:30:28 - RTS changed to "OFF"
    14:30:28 - DTR changed to "ON"
    14:30:28 - Line control changed to StpBts:0x0, Prty:0x0, WrdLen:0x8
    14:30:28 - Flow control changed to CHSh:0x80000001, FR:0x0, XOnL:0x800, XOffL:0x200
    14:30:29 - RTS changed to "ON"
    14:30:29 - 4 byte(s) written: 
    14:30:29 - RTS changed to "OFF"
    14:30:29 - 6 byte(s) read: 
    14:30:29 - 2 byte(s) read: 
    14:30:29 - RTS changed to "ON"
    14:30:29 - 4 byte(s) written: 
    14:30:29 - RTS changed to "OFF"
    14:30:29 - 6 byte(s) read: 
    14:30:29 - 2 byte(s) read: 
    14:30:30 - RTS changed to "ON"
    14:30:30 - 7 byte(s) written: 
    14:30:30 - RTS changed to "OFF"
    14:30:30 - 4 byte(s) read: 
    14:30:30 - 19 byte(s) read:
    14:30:30 - 14 byte(s) read:
    14:30:30 - 26 byte(s) read: ÿÿÿÿP HÿÿÿÿÿÿŸžÿÿÿ
    14:30:30 - 42 byte(s) read: tò üÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
    14:30:30 - 14 byte(s) read:
    14:30:30 - 8 byte(s) read: ™ÿ¸dÙS
    14:30:30 - RTS changed to "ON"
    14:30:30 - 7 byte(s) written: 
    14:30:30 - RTS changed to "OFF"
    14:30:31 - 9 byte(s) read: 
    14:30:31 - 15 byte(s) read: ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
    14:30:31 - 36 byte(s) read: ÿÿÿÿÿÿÿÿÿÿÿÿ—™„
    14:30:31 - 15 byte(s) read: ©pÔó#
    14:30:31 - 15 byte(s) read: ¡–µ…X
    14:30:31 - 16 byte(s) read: v¾Ð®¡ÒŠî
    14:30:34 - 15 byte(s) read: É߶~‡z
    14:30:34 - 6 byte(s) read: ŒÞŠ
    14:30:34 - RTS changed to "ON"
    14:30:34 - 7 byte(s) written: 
    14:30:34 - RTS changed to "OFF"
    14:30:34 - 4 byte(s) read: 
    14:30:34 - 14 byte(s) read: ðxÿÿÿÿÿÿÿÿÿÿÿÿ
    14:30:34 - 16 byte(s) read: ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
    14:30:34 - 15 byte(s) read: ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
    14:30:34 - 16 byte(s) read: ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
    14:30:34 - 15 byte(s) read: ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
    14:30:34 - 16 byte(s) read: ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
    14:30:34 - 13 byte(s) read: ÿÿÿÿÿÿÿÿÿÿ
    14:30:34 - 14 byte(s) read: >ÿÿÿÿÿÿSuunto
    14:30:34 - 4 byte(s) read: Div¨
    14:30:34 - RTS changed to "ON"
    14:30:34 - 7 byte(s) written: 
    14:30:34 - RTS changed to "OFF"
    14:30:34 - 2 byte(s) read: 
    14:30:34 - 14 byte(s) read: {H¨xŸ cÏ
    14:30:34 - 15 byte(s) read: þUÚ¾õºq
    14:30:34 - 62 byte(s) read: ·Œ•â
    14:30:34 - 14 byte(s) read:
    14:30:34 - 17 byte(s) read:
    14:30:34 - 3 byte(s) read: Ú#
    14:30:35 - RTS changed to "ON"
    14:30:35 - 7 byte(s) written: 
    14:30:35 - RTS changed to "OFF"
    14:30:35 - 2 byte(s) read: 
    14:30:35 - 14 byte(s) read: {I˜x£ì‡s¶
    14:30:35 - 16 byte(s) read: Ï^Kû·Ž
    14:30:35 - 15 byte(s) read: !G1Ií¯
    14:30:35 - 33 byte(s) read:  w³\
    14:30:35 - 15 byte(s) read: ]MQM
    14:30:35 - 15 byte(s) read: N/2.NU
    14:30:35 - 13 byte(s) read: 0ÑH‚K
    14:30:35 - 4 byte(s) read: abš
    14:30:35 - RTS changed to "ON"
    14:30:35 - 7 byte(s) written: 
    14:30:35 - RTS changed to "OFF"

    Hope this gives you some info.
    If you want i can sniff some more when reading the logs. Now i just stopped after one or two.

     
  • André Schenk

    André Schenk - 2011-02-15

    Hey, this is really cool!

    I have updated http://bonus.dyndns.org/download/suuntoD6.zip accordingly. Could you please try it and send me a similar sniffer log?

    Thanks in advance!

    André

     
  • Anonymous - 2011-02-16

    i tried it, but i only get:

    Stable Library

    Native lib Version = RXTX-2.1-7
    Java lib Version   = RXTX-2.1-7
    found port COM3 (1)
    found port COM4 (1)
    found port COM5 (1)
    gnu.io.UnsupportedCommOperationException: Invalid Parameter
            at gnu.io.RXTXPort.setSerialPortParams(RXTXPort.java:171)
            at SuuntoDownload.<init>(SuuntoDownload.java:28)
            at SuuntoDownload.main(SuuntoDownload.java:113)

     
  • André Schenk

    André Schenk - 2011-02-16

    Ok, please try again.

    Best regards,

    André

     
  • Anonymous - 2011-02-16

    A little further this time!!

    C:\Users\maqu01\Desktop\suuntoD6(2)\suuntoD6>download.bat
    Stable Library
    =========================================
    Native lib Version = RXTX-2.1-7
    Java lib Version   = RXTX-2.1-7
    found port COM3 (1)
    found port COM4 (1)
    found port COM5 (1)
    send:
    got echo:
    java.io.IOException: Unexpected echo: 00000000 0f 00 04 10 01 00 04 1e ……..
            at SuuntoDownload.send(SuuntoDownload.java:82)
            at SuuntoDownload.transfer(SuuntoDownload.java:88)
            at SuuntoDownload.main(SuuntoDownload.java:117)

     
  • André Schenk

    André Schenk - 2011-02-16

    Looks promising! Could you please try again?

    And even more important: Could you please create a sniffer log with Suunto DiveManager where I can see the bytes transferred? I hope you have an idea how to do that!

    Best regards,

    André

     
  • Anonymous - 2011-02-17

    I Will try this, and i Will figure out a way to sniff the traffic again. Last time it worked but somhow managed to corrupt the drivers. The other project has some test code that outputs à log with all bytes reas and recived. Maybee that can do as à last resort. Meanwhile i Will try to read up on jdivelog code and see if i can help.

     
  • Anonymous - 2011-02-17

    Ok..
    I ran the new code. Very promising indeed.


    Stable Library

    Native lib Version = RXTX-2.1-7
    Java lib Version   = RXTX-2.1-7
    found port COM3 (1)
    found port COM4 (1)
    found port COM5 (1)
    send:
    got response:
    version: Version@12ac982
    send:
    got response: [5, 0, 123, 0, 0, 120, 1, 48, 51, 95, 49, 57, 48, 54, 48, 55, 49,
    50, 52, 49, 51, 48, 0, 0, 5, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
    -1, -1, -1, 80, 20, 9, 72, -1, -1, -1, -1, -1, -1, -97, -98, -1, -1, -1, 1, 0,
    0, 1, -1, -120, 0, 116, -14, 12, -4, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
    -1, -1, -1, -1, 21, 8, 7, 0, -123, 4, 4, 0, -124, 3, 0, 0, -17, 7, 39, 0, 55, 4
    , 8, 0, -124, 3, 0, 0, 115, -1, 103, 7, 40, -1, 74, 94, -36, -9, -24, 3, -11, 3,
    -103, -1, -72, 100, -39, 21, 83]
    readMemory($0,$78): [0, 0, 120, 1, 48, 51, 95, 49, 57, 48, 54, 48, 55, 49, 50, 5
    2, 49, 51, 48, 0, 0, 5, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
    -1, -1, 80, 20, 9, 72, -1, -1, -1, -1, -1, -1, -97, -98, -1, -1, -1, 1, 0, 0, 1,
    -1, -120, 0, 116, -14, 12, -4, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
    -1, -1, -1, 21, 8, 7, 0, -123, 4, 4, 0, -124, 3, 0, 0, -17, 7, 39, 0, 55, 4, 8,
    0, -124, 3, 0, 0, 115, -1, 103, 7, 40, -1, 74, 94, -36, -9, -24, 3, -11, 3, -103
    , -1, -72, 100, -39, 21]


    I also ran the libdivecomputer test applikation (found below)
    http://divesoftware.org/libdc/download.html

    (vyper2.exe since i am on Windows… )

    The result from that is rather lengthy, since i have some 83, or 84 dives in the computer. But i am showing it here a bit truncated:

    DATETIME 2011-02-17T15:42:58Z (1297957378)
    REVISION 95835659dd00d4c0620871d3cfae96deebb0604d
    DEVICE=COM5
    suunto_vyper2_device_open
    Timeout: value=3000
    DTR: value=1
    Sleep: value=100
    Flush: queue=3, input=0, output=0
    device_version
    Sleep: value=600
    RTS: value=1
    Write: timer=0, size=4, data=0F00000F, remaining=0
    Sleep: value=9
    RTS: value=0
    Read: timer=63, size=8, data=0F0004100100041E, remaining=0
    device_dump
    Sleep: value=600
    RTS: value=1
    Write: timer=0, size=7, data=0500030000787E, remaining=0
    Sleep: value=9
    RTS: value=0
    Read: timer=156, size=127, data=05007B0000780130335F313930363037313234313330000005FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF50140948FFFFFFFFFFFF9F9EFFFFFF01000001FF880074F20CFCFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF150807008504040084030000EF072700370408008403000073FF670728FF4A5EDCF7E803F50399FFB864D91553, remaining=0
    Sleep: value=600
    RTS: value=1
    Write: timer=0, size=7, data=05000300787806, remaining=0
    Sleep: value=9
    RTS: value=0
    Read: timer=156, size=127, data=05007B0078782300E803C4091FFFFFFFFFFFD49C2A9C89FEF609C201BFFFFFFFFFFF010407FFFFFFFFFFFFFFFFFF0B121B0902020402030204020202FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF99, remaining=0
    Sleep: value=600
    RTS: value=1
    Write: timer=0, size=7, data=05000300F0788E, remaining=0
    Sleep: value=9
    RTS: value=0
    Read: timer=156, size=127, data=05007B00F078FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF003D003EFFFFFFFFFFFF5375756E746F20446976A8, remaining=0
    Sleep: value=600
    RTS: value=1
    Write: timer=0, size=7, data=05000301687817, remaining=0
    Sleep: value=9
    RTS: value=0

    Read: timer=156, size=127, data=05007B4BF6780B6A0B1F0B16100B9F0B1B0C0D0C2A0C15040C390C690C690C030813011E0003004C0C14A20C5F0C0388130121003D004E0C3C0C120C14FC0BF30B270CF10BD20B14D20BB40BB80B5C0B6F0B14DB0B250C3C0C530C950B14920BC30B720B760BD80A147C0A860AC00ABE0A500A154B0A350A2D0A210AEE0924, remaining=0
    Sleep: value=600
    RTS: value=1
    Write: timer=0, size=7, data=0500034B8274BB, remaining=0
    Sleep: value=9
    RTS: value=0
    Read: timer=140, size=123, data=0500774B8274824BEB4C00619062167C009F09B00C2400FFFF0E000B181CD90708121401041313640000031E15000B00000000000000000000000000000000F00900000F02056401197405800100001E0093001DFA014D037B056A0786091B240AA30AAA0A910A730A19BA0AC60ACD0AC70AE80A17EA0A230B57FA, remaining=0
    device_close

    SUMMARY

    test_dump_memory: Success
    test_dump_sdm:    Success

     
  • Anonymous - 2011-02-17

    If you need all of it send me your email address and i will mail the file to you!

     
  • André Schenk

    André Schenk - 2011-02-17

    Great, thanks!

    Would you please try the new version?

    2 files (*.bin) should be created. Could you please send them to my SourceForge account?

    If you could make some screen shots which show the dive data read from your Vyper2 (with Suunto Divemanager?) that would be helpful.

    I only have a protocol description for D6/D9 so I hope it will not differ too much from the Vyper2!

    Best regards,

    André

     
  • André Schenk

    André Schenk - 2011-07-20

    Hi,

    I could finish my work to support Suunto D6, D9, Vyper Air in JDiveLog. This feature will be integrated ind the next release (2.16).

    If you have a computer model which is not working then please contact me.

    Best regards,

    André

     
  • Anonymous - 2011-10-08

    André, were the changes incorporated into 2.16? I have a Vyper Air that gets a comm error on 64-bit linux (works fine with a Zoop so It's not the serial interface itself). Anything I can test for you?

    Jim

     
  • André Schenk

    André Schenk - 2011-10-08

    Hi Jim,

    I'm not sure if 2.16 contains all code for the "Suunto NG" support so could you please recheck it with http://bonus.dyndns.org/download/jdivelog.jar?

    Could you please post the error message if the error still occurs?

    Best regards,

    André

     

Log in to post a comment.

Get latest updates about Open Source Projects, Conferences and News.

Sign up for the SourceForge newsletter:

JavaScript is required for this form.





No, thanks