I appreciate the help Dirk. I wasn't sure where libdc stopped and subsurface began. This would be along the lines of your first scenario; Importing existing files and parsing the logs. If devices of this sort are already supported in subsurface, that seems to be the path of least resistance.
I'm afraid I can't mention the file format as that would expose some key details about the device. My desire at the moment is to develop what I can, test those integrations while testing the device, and ultimately submitting a pull request when I'm able. What I can say is that the files are simple, unencrypted binary files that have parsing libraries available in many common languages. I just finished testing the files were parsable via a short python script, and have subsequently confirmed the existence of an SDK that could assist me with some of the heavy lifting in C.
Now that I know the correct path to follow I'll start looking through the subsurface source. Is there a particular computer you could point me to as a good mass storage integration example?
Thanks again, Ryan
On Jun 20, 2017, at 11:31 AM, Dirk Hohndel dirk@hohndel.org wrote:
That depends. What format are these files in? We support a number of such dive computers simply by importing and paying their log files directly in Subsurface.
Or is the storage abused as a way to communicate with the dive computer by writing and reading magical files? There is one dive computer like this that is supported directly in Subsurface: the Uemis Zurich.
I don't think libdivecomputer has a good way to support for system based dive computers at this point.
/D
-- From my phone From: Ryan January Sent: Tue Jun 20 08:31:56 PDT 2017 To: devel@libdivecomputer.org Subject: New to libdivecomputer. Where do I begin?
Hello, I've been a libdivecomputer user (through subsurface) for a number of years. I'm in possession of a dive computer that is undergoing user testing now. I've been looking for an area I may be able to contribute to for a few years and feel this may be an interesting opportunity. My biggest issue is that I'm not sure where to begin the development process. The computer exposes itself as a USB mass storage device. Dive logs are located in a known folder, and are stored in a file format which is well documented. Considering I'm not seeing any currently supported computers exposed as storage devices, is this support something that would even be desired and/or possible? As I understand it there is an IO refactoring that's potentially in the works. If desired, is now a bad time to start this process?
Thank you, Ryan
devel mailing list devel@libdivecomputer.org http://libdivecomputer.org/cgi-bin/mailman/listinfo/devel http://libdivecomputer.org/cgi-bin/mailman/listinfo/devel