summaryrefslogtreecommitdiffstats
path: root/Documentation/user-manual_fr.txt
diff options
context:
space:
mode:
authorGravatar Guillaume GARDET <guillaume.gardet@free.fr>2015-01-14 16:25:59 +0100
committerGravatar Dirk Hohndel <dirk@hohndel.org>2015-01-15 09:02:29 +1300
commitdc7397b06e9a555aac707ede1aea699ca3dad230 (patch)
treeb49f3395f0ac9d03a5de5c6693e0f68fd31f3b0c /Documentation/user-manual_fr.txt
parentb4b08bdcc583efe9fcca4f8e5605606a8906ea12 (diff)
downloadsubsurface-dc7397b06e9a555aac707ede1aea699ca3dad230.tar.gz
Documentation: Add initial support for French translation
Add initial support to French (fr) translation of user-manual. Note that it is not perfect, since the po4a tool loose some list item indexes during PO to ASCIIDOC conversion (see asciidoc warning messages during user manual generation). Signed-off-by: Guillaume GARDET <guillaume.gardet@free.fr> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
Diffstat (limited to 'Documentation/user-manual_fr.txt')
-rw-r--r--Documentation/user-manual_fr.txt3553
1 files changed, 3553 insertions, 0 deletions
diff --git a/Documentation/user-manual_fr.txt b/Documentation/user-manual_fr.txt
new file mode 100644
index 000000000..6e458c0c9
--- /dev/null
+++ b/Documentation/user-manual_fr.txt
@@ -0,0 +1,3553 @@
+:icons:
+:toc:
+:toc-placement: manual
+:numbered:
+
+image::images/Subsurface4Banner.jpg["Banner", align="center"]
+
+[big]#MANUEL UTILISATEUR#
+
+*Auteurs du manuel* : Willem Ferguson, Jacco van Koll, Dirk Hohndel, Reinout Hoornweg,
+Linus Torvalds, Miika Turkia, Amit Chaudhuri, Jan Schubert, Salvador Cuñat, Pedro Neves
+
+[blue]#_Version 4.3, Décembre 2014_#
+
+
+Bienvenue en tant qu'utilisateur de _Subsurface_, un programme avancé
+d'enregistrement de plongées (carnet de plongées) avec une bonne
+infrastructure pour décrire, organiser, interpréter et imprimer des plongées
+en scaphandre et en apnée. _Subsurface_ offre de nombreux avantages par
+rapport à d'autres solutions logicielles similaires :
+
+ - Do you need a flexible way of logging dives using recreational equipment,
+ even not using a dive computer?
+ - Do you use two different dive computer brands, each with its own proprietary
+ software for downloading dive logs? Do you dive with rebreathers as well as
+ open circuit or recreational equipment? Do you use a Reefnet Sensus
+ time-depth recorder in conjunction with a dive computer? _Subsurface_ offers
+ a standard interface for downloading dive logs from all these different
+ pieces of equipment and to store and analyse the dive logs within a unified
+ system.
+ - Do you use more than one operating system? _Subsurface_ is fully compatible
+ with Mac, Linux and Windows, allowing you to access your dive log on each of
+ your operating systems using a single application.
+ - Do you use Linux or Mac and your dive computer has only Windows-based
+ software for downloading dive information (e.g. Mares)? _Subsurface_
+ provides a way of downloading and analysing your dive logs on other
+ operating systems.
+ - Do you need an intuitive graphical dive planner that integrates with and
+ takes into account the dives that have already been logged?
+
+_Subsurface_ binaries are available for Windows PCs (Win XP or later), Intel
+based Macs (OS/X) and many Linux distributions. _Subsurface_ can be built
+for many more hardware platforms and software environments where Qt and
+libdivecomputer are available.
+
+The scope of this document is the use of the _Subsurface_ program. To
+install the software, consult the _Downloads_ page on the
+http://subsurface-divelog.org/[_Subsurface_ web site]. Please discuss
+issues with this program by sending an email to
+mailto:subsurface@subsurface-divelog.org[our mailing list] and report bugs
+at http://trac.hohndel.org[our bugtracker]. For instructions on how to
+build the software and (if needed) its dependencies please consult the
+INSTALL file included with the source code.
+
+*Audience*: Recreational Scuba Divers, Free Divers, Tec Divers, Professional
+Divers
+
+toc::[]
+
+[[S_UserSurvey]]
+
+Le sondage utilisateur
+----------------------
+In order to develop _Subsurface_ in a way that serves its users in the best
+possible way, it is important to have some user information. Upon launching
+_Subsurface_ after using this software for a week or so, a one-box user
+survey pops up. It is entirely optional and the user controls what, if any,
+data are sent to the _Subsurface_ development team. Any data that the user
+chooses to send is extremely useful, and will only be used to steer future
+development and to customise the software to fit the needs of the
+_Subsurface_ users. If one completes the survey, or clicks the option not to
+be asked again, that should be the last communication of this nature one
+receives. However, if one's diving and/or subsurface habits change and one
+wishes to provide another survey, this can be done by launching _Subsurface_
+with the _--survey_ option on the command line.
+
+[[S_StartUsing]]
+Start Using the Program
+-----------------------
+
+The _Subsurface_ window is usually divided into four panels with a *Main
+Menu* (File Import Log View Filter Help) at the top of the window (for
+Windows and Linux) or the top of the screen (for Mac and Ubuntu Unity). The
+four panels are:
+
+The *Dive List* to the bottom left containing a list of all the dives in the
+user's dive log. A dive can be selected and highlighted on the dive list by
+clicking on it. In most situations the up/down keys can be used to switch
+between dives. The *Dive List* is an important tool for manipulating a dive
+log.
+
+The *Dive Map* to the bottom right, showing the user's dive sites on a world
+map and centred on the site of the last dive selected in the *Dive List*.
+
+The *Dive Info* to the top left, giving more detailed information on the
+dive selected in the *Dive List*, including some statistics for the selected
+dive or for all highlighted dive(s).
+
+The *Dive Profile* to the top right, showing a graphical dive profile of the
+selected dive in the *Dive List*.
+
+The dividers between panels can be dragged in order to change the size of
+any of the panels. _Subsurface_ remembers the position of the dividers, so
+the next time _Subsurface_ starts it uses the positions of the dividers from
+when the program was last used.
+
+If a dive is selected in the *Dive List*, the dive location, detailed
+information and profile of the _selected dive_ are shown in the respective
+panels. On the other hand, if one highlights more than one dive the last
+highlighted dive is the _selected dive_, but summary data of all
+_highlighted dives_ are shown in the *Stats* tab of the *Dive Info* panel
+(maximum, minimum and average depths, durations, water temperatures and SAC;
+total time and number of dives selected).
+
+[[S_ViewPanels]]
+
+image::images/main_window_f20.jpg["The Main Window", align="center"]
+
+The user can determine which of the four panels are displayed by selecting
+the *View* option on the main menu. This feature gives the user several
+choices of display:
+
+*All*: show all four of the panels as in the screenshot above.
+
+*Divelist*: Show only the Dive List.
+
+*Profile*: Show only the Dive Profile of the selected dive.
+
+*Info*: Show only the Dive Notes about the last selected dive and statistics for
+all highlighted dives.
+
+*Globe*: Show only the world map, centred on the last selected dive.
+
+Like many other functions that can be accessed via the Main Menu, these
+options can be triggered using keyboard shortcuts. The shortcuts for a
+particular system are shown with an underline in the main menu
+entries. Since different Operating Systems and the user chosen language may
+cause _Subsurface_ to use different shortcut keys they are not listed here
+in the user manual.
+
+When the program is started for the first time, it shows no information at
+all. This is because the program doesn't have any dive information
+available. In the following sections, the procedures to create a new logbook
+will be described.
+
+[[S_NewLogbook]]
+Creating a new logbook
+----------------------
+Select _File -> New Logbook_ from the main menu. All existing dive data are
+cleared so that new information can be added. If there are unsaved data in
+an open logbook, the user is asked whether the open logbook should be saved
+before a new logbook is created.
+
+[[S_GetInformation]]
+== Storing dive information in the logbook
+
+Now that a new logbook was created, it is simple to add dive data to it.
+_Subsurface_ allows several ways of adding dive data to a logbook, detailed
+in the following sections.
+
+If the user has a handwritten divelog, a spreadsheet or another form of
+manually maintained divelog, dive data can be added to the logbook using one
+of these approaches:
+
+Enter dive information by hand. This is useful if the diver did not use a
+dive computer and dives were recorded in a written logbook. See:
+xref:S_EnterData[Entering dive information by hand]
+
+Import dive log information that has been maintained either as a spreadsheet
+or as a CSV file. Refer to: xref:S_Appendix_D[APPENDIX D: Exporting a
+spreadsheet to CSV format] and the text about
+xref:S_ImportingManualCSV[Importing dives from manually created CSV files]
+and
+
+If one has dives recorded using a dive computer, the depth profile of the
+dive and a large amount of additional information can be accessed. These
+dives can be imported from:
+
+- The divecomputer itself. See: xref:S_ImportDiveComputer[Importing new dive
+ information from a Dive Computer] or
+
+Proprietary software distributed by manufacturers of dive computers. Refer
+to: xref:S_ImportingAlienDiveLogs[Importing dive information from other
+digital data sources or other data formats].
+
+Import from spreadsheet or CSV files containing dive profiles. See:
+xref:S_ImportingCSVDives[Importing dives in CSV format from dive computers
+or other dive log software]
+
+
+[[S_EnterData]]
+=== Entering dive information by hand
+
+This is usually the approach for dives without a dive computer. The basic
+record of information within _Subsurface_ is a dive. The most important
+information in a simple dive logbook usually includes dive type, date, time,
+duration, depth, the names of your dive buddy and of the dive master or dive
+guide, and some remarks about the dive. _Subsurface_ can store much more
+information than this for each dive. In order to add a dive to a dive log,
+select _Log -> Add Dive_ from the Main Menu. The program then shows three
+panels to enter information for a dive: two tabs in the *Dive Info* panel
+(*Dive Notes* and *Equipment*), as well as the *Dive Profile* panel that
+displays a graphical profile of each dive. These panels are respectively
+marked [red]#A#, [red]#B# and [red]#C# in the figure below. Each of these
+tabs will now be explained for data entry.
+
+image::images/AddDive1_f20.jpg["FIGURE: Add dive", align="center"]
+
+When one edits a field in Dive notes or Equipment panels, _Subsurface_
+enters *Editing Mode*, indicated by the message in the blue box at the top
+of the _Dive Notes_ panel (see the image below). This message is displayed
+in all the panels under Dive notes and Equipment when in *Editing Mode*.
+
+image::images/BlueEditBar_f20.jpg["Blue edit bar", align="center"]
+
+The _Save_ button should only be selected after all the parts of a dive have
+been entered. When entering dives by hand, the _Info_, _Equipment_ and
+_Profile_ tabs should be completed before saving the information. By
+selecting the _Save_ button, a local copy of the information for this
+specific dive is saved in memory. When one closes Subsurface, the program
+will ask again, this time whether the complete dive log should be saved on
+disk or not.
+
+==== Dive Notes
+
+This panel contains the date, time and place information for a particular
+dive, environmental conditions, co-divers and buddies, as well as some
+descriptive information. If one clicks on the *Dive Notes* tab, the
+following fields are visible:
+
+image::images/AddDive2_f20.jpg["FIGURE: The Dive Notes tab", align="center"]
+
+The *Time* field reflects the date and the time of the dive. By clicking the
+date, a calendar is displayed from which one can choose the correct
+date. Press ESC to escape from the calendar. The time values (hour and
+minutes) can also be edited directly by clicking on each of them in the text
+box and by overtyping the information displayed. The default date is the
+present date and the default time is an hour in advance of the present time.
+
+*Air and water temperatures*: the air and water temperatures during the
+dive can be typed directly on the fields to the right of the Start time.
+Temperature units are not needed, as they will be automatically supplied by
+_Subsurface_. Only the numerical value must be
+typed by the user (the units selected in the 'Preferences'
+will determine whether metric or imperial units are used).
+
+*Location*: Here the name of the dive site can be entered, e.g. "Tihany, Lake
+Balaton,
+Hungary". Auto completion of location names will make this easier if one
+frequently dives at the same sites.
+
+*Coordinates*: The geographic coordinates of the dive site should be entered
+here. These can come from three sources:
+
+One can find the coordinates on the world map in the bottom right hand part
+of the Subsurface window. The map displays a green bar indicating "No
+location data - Move the map and double-click to set the dive
+location". Upon a double-click at the appropriate place, the green bar
+disappears and the coordinates are stored.
+
+The coordinates can be obtained from the _Subsurface_ Companion app if the
+user has an Android device with GPS and if the coordinates of the dive site
+were stored using that device. xref:S_Companion[Click here for more
+information]
+
+The coordinates can be entered by hand if they are known, using one of four
+formats with latitude followed by longitude:
+
+ ISO 6709 Annex D format e.g. 30°13'28.9"N 30°49'1.5"E
+ Degrees and decimal minutes, e.g. N30° 13.49760' , E30° 49.30788'
+ Degrees minutes seconds, e.g. N30° 13' 29.8" , E30° 49' 1.5"
+ Decimal degrees, e.g. 30.22496 , 30.821798
+
+Southern hemisphere latitudes are given with a *S*, e.g. S30°, or with a
+negative value, e.g. -30.22496. Similarly western longitudes are given with
+a *W*, e.g. W07°, or with a negative value, e.g. -7.34323.
+
+Please note that GPS coordinates of a dive site are linked to the Location
+name - so adding coordinates to dives that do not have a location
+description will cause unexpected behaviour (Subsurface will think that all
+of these dives have the same location and try to keep their GPS coordinates
+the same).
+
+*Divemaster*: The name of the dive master or dive guide for this dive can be
+entered here.
+Again, this field offers auto completion based on the list of dive masters in
+the current logbook.
+
+*Buddy*: In this field one can enter the name(s) of the buddy / buddies
+(separated by commas) who accompanied the user on the dive. Auto completion
+is offered based on the list of buddies in the current logbook.
+
+*Suit*: The type of diving suit used for the dive can be entered here.
+As with the other items, auto completion of the suit description is available.
+Some dry-suit users may choose to use this field to record what combination of
+suit and thermal protection undersuit was used.
+
+*Rating*: One can provide a subjective overall rating of the dive on a
+5-point scale by clicking the appropriate star on the rating scale.
+
+*Visibility*: Similarly, one can provide a rating of visibility during the
+dive on a
+5-point scale by clicking the appropriate star.
+
+*Tags*: Tags that describe the type of dive performed may
+be entered here (separated by commas). Examples of common tags are boat, drift,
+training, cave etc. _Subsurface_ has many built-in tags. Auto completion is once again offered.
+For instance, if +cav+ was typed, then the tags *cave* and *cavern* are
+shown for the user to choose from.
+
+*Notes*: Any additional information can be typed here.
+
+The *Save* and *Cancel* buttons are used to save all the information for
+tabs in the info panel and in the dive profile panel, so there's no need to
+use them until ALL other information has been added. Here is an example of a
+completed Dive Notes panel:
+
+image::images/CompletedDiveInfo_f20.jpg["FIGURE: A completed Dive Notes tab", align="center"]
+
+==== Equipment
+
+The Equipment tab allows the user to enter information about the type of
+cylinder and gas used, as well as the weights used for a dive. This is a
+highly interactive part of _Subsurface_ and the information on cylinders and
+gases (entered here) affects the behaviour of the dive profile (top
+right-hand panel).
+
+[[S_CylinderData]]
+*Cylinders*: The cylinder information is entered through a dialogue that looks
+like this:
+
+image::images/Gas_dialogue1_f20.jpg["FIGURE:Initial cylinder dialogue", align="center"]
+
+The + button at the top right allows the user to add more cylinders for this
+dive. The dark dustbin icon on the left allows one to delete information
+for a particular cylinder. Note that it is not possible to delete a cylinder
+if it is used during the dive. One cylinder is implicitly used in the dive,
+even without a gas change event. Thus the first cylinder cannot be deleted
+until another cylinder is created.
+
+Start by selecting a cylinder type on the left-hand side of the table. To
+select a cylinder, click in the *Type* box. This brings up a button that
+can be used to display a dropdown list of cylinders:
+
+image::images/Gas_dialogue2_f20.jpg["FIGURE:The cylinder drop-down list button", align="center"]
+
+The drop-down list can be used to select the cylinder type used for the dive
+or the user may start typing in the box which shows the available options
+for the entered characters. The *Size* of the cylinder as well as its
+working pressure (*WorkPress*) will automatically be shown in the
+dialogue. If a cylinder is not shown in the dropdown list, type the name and
+description of that cylinder into the *Type* field.
+
+Next, indicate the starting pressure and the ending pressure of the gas used
+during the dive. The unit of pressure (metric/imperial) corresponds to the
+setting in the _Preferences_.
+
+Finally, type in the gas mixture used in the *O2%* field. If air was used, a
+value of 21% can be entered on this field, or it might be left blank. If
+nitrox or trimix were used, their percentages of oxygen and/or helium must
+be specified. Any inappropriate fields should be left empty. After typing
+the information for the cylinder, press _ENTER_ on the keyboard or click
+outside the cell that contains the cursor. Information for any additional
+cylinders can be added by using the + button at the top right
+hand. Following is an example of a complete description for a dive made
+using two cylinders (air and EAN50):
+
+image::images/CylinderDataEntry3_f20.jpg["FIGURE: a completed cylinder dive information table", align="center"]
+
+*Weights*: Information about the weight system used during a dive can be entered
+using a dialogue very similar to that for the cylinder information. If the user
+clicks the + button on the top right of the weights dialogue, the table looks
+like this:
+
+image::images/WeightsDataEntry1_f20.jpg["FIGURE: The Weights dialogue", align="center"]
+
+If one then clicks on the *Type* field, a drop-down list becomes accessible
+through a down-arrow:
+
+image::images/WeightsDataEntry2_f20.jpg["FIGURE: Weights type drop-down list button", align="center"]
+
+The drop-down list can then be used to select the type of weight system or
+the user may start typing in the box which shows the available options for
+the entered characters. In the *Weight* field, the weight used during the
+dive must be typed. After typing the information for the weight system the
+user must either press _ENTER_ on the keyboard or click outside the cell
+that contains the cursor. It is possible to enter information for more than
+one weight system by adding an additional system using the + button on the
+top right hand. Weight systems can be deleted using the dustbin icon on the
+left hand. Here is an example of information for a dive with two types of
+weights: integrated and a weight belt:
+
+image::images/WeightsDataEntry3_f20.jpg["FIGURE: A completed weights information table", align="center"]
+
+There's NO need to click the _Save_ button before the dive profile has been
+completed.
+
+[[S_CreateProfile]]
+==== Creating a Dive Profile
+
+The *Dive Profile* (a graphical representation of the depth of the dive as a
+function of time) is indicated in the panel on the top right hand of the
+_Subsurface_ window. When a dive is manually added to a logbook,
+_Subsurface_ presents a default dive profile that needs to be modified to
+best represent the dive being described:
+
+image::images/DiveProfile1_f20.jpg["FIGURE: Initial dive profile", align="center"]
+
+_Modifying the dive profile_: When the cursor is moved around the dive
+profile, its position is indicated by two coloured lines (red and green) as
+shown below. The depth and time that the cursor represents are indicated at
+the top of the black information box (@ and D). The units (metric/imperial)
+on the axes are determined by the *Preference* settings. The dive profile
+itself comprises several line segments demarcated by waypoints (white dots
+on the profile, as shown above). The default dive depth is 15 m. If the
+dive depth was 20 m then the user needs to drag the appropriate waypoints
+downwards to represent 20 m. To add a waypoint, double-click on any line
+segment. To move an additional waypoint, drag it. To remove this waypoint,
+right-click on it and choose "Remove this point" from the context menu. The
+user needs to drag the waypoints to represent an accurate time duration for
+the dive. Below is a dive profile that represents a dive to 20 m for 30 min,
+followed by a 5 minute safety stop at 5 m.
+
+image::images/DiveProfile2_f20.jpg["FIGURE: Edited dive profile", align="center"]
+
+_Specifying the gas composition:_ The gas composition used is clearly
+indicated along the line segments of the dive profile. This defaults to the
+first gas mixture specified in the *Equipment* tab, which was air in the
+case of the profile illustrated above. The gas mixtures of segments of the
+dive profile can be edited. This is done by right-clicking on the particular
+waypoint and selecting the appropriate gas from the context menu. Changing
+the gas for a waypoint affects the gas shown in the segment _to the left_ of
+that waypoint. Note that only the gases defined in the *Equipment* tab
+appear in the context menu.
+
+image::images/DiveProfile3_f20.jpg["FIGURE: Gas composition context menu", align="center"]
+
+Below is the profile of a dive to 25 m for 30 min and with a switch from air
+to EAN50 at the end of the duration at 20m. In this case the first cylinder
+in the *Equipment* tab contained air and the second cylinder contained
+EAN50.
+
+image::images/DiveProfile4_f20.jpg["FIGURE: Completed dive profile", align="center"]
+
+==== Saving the hand-entered dive information
+
+The information entered in the *Dive Notes* tab, the *Equipment* tab as well
+as the *Dive Profile* can now be saved in the user's logbook by using the
+two buttons on the top right hand of the Dive Notes tab. If the _Save_
+button is clicked, the dive data are saved in the current logbook. If the
+_Cancel_ button is clicked, the newly entered dive data are discarded. When
+exiting _Subsurface_, the user will be prompted once more to save the
+logbook with the new dive(s).
+
+[[S_ImportDiveComputer]]
+=== Importing new dive information from a Dive Computer
+
+==== Connecting and importing data from a dive computer.
+
+The use of dive computers allows the collection of a large amount of
+information about each dive, e.g. a detailed record of depth, duration,
+rates of ascent/descent and of gas partial pressures. _Subsurface_ can
+capture this information and present it as part of the dive information,
+using dive information from a wide range of dive computers. The latest list
+of supported dive computers can be found at:
+link:http://subsurface-divelog.org/documentation/supported-dive-computers/[
+Supported dive computers].
+
+[icon="images/icons/warning2.png"]
+[WARNING]
+Several dive computers consume more power when they are in their
+PC-Communication mode. **This could drain the dive computer's battery**. We
+therefore recommend that the user checks if the dive computer is charged
+when connected to the USB port of a PC. For example, several Suunto and
+Mares dive computers do not recharge through the USB connection. Users
+should refer to the dive computer's manual if they are unsure whether the
+dive computer recharges its batteries while connected to the USB port.
+
+To import dive information from a dive computer to a computer with
+_Subsurface_, it is necessary that the two pieces of equipment communicate
+with one another. This involves setting up the communications port (or
+mount point) of the computer with _Subsurface_ that communicates with the
+dive computer. In order to set up this communication, one needs to find the
+appropriate information to instruct _Subsurface_ where and how to import the
+dive information.
+xref:_appendix_a_operating_system_specific_information_for_importing_dive_information_from_a_dive_computer[Appendix
+A] provides the technical information to help the user achieving this for
+different operating systems and
+xref:_appendix_b_dive_computer_specific_information_for_importing_dive_information[Appendix
+B] has dive computer specific information.
+
+After this, the dive computer can be hooked up to the user's PC, which can
+be achieved by following these steps:
+
+1. The interface cable should be connected to a free USB port (or the Infra-red
+ or Bluetooth connection set up as described later in this manual)
+
+2. The dive computer should be placed into PC Communication mode.
+ (Users should refer to the manual of their specific dive computer)
+
+In _Subsurface_, from the Main Menu, the user must select _Import -> Import
+From Dive Computer_. Dialogue *A* in the figure below appears:
+
+
+image::images/ImportFromDC1_f20.jpg["FIGURE: Download dialogue 1", align="center"]
+
+Dive computers tend to keep a certain number of dives in their memory, even
+though these dives have already been imported to _Subsurface_. For that
+reason _Subsurface_ only imports dives that have not been uploaded
+before. This makes the download process faster on most dive computers and
+also saves battery power of the dive computer (at least for those not
+charging while connected via USB). If, for some reason, the user wishes to
+import ALL dives from the dive computer, even though some may already be in
+the logbook, then check the check box labelled _Force download of all
+dives_.
+
+The dialogue has two drop-down lists, *Vendor* and *Dive Computer*. On the
+*vendor* drop-down list select the make of the computer, e.g. Suunto,
+Oceanic, Uwatec, Mares. On the *Dive Computer* drop-down list, the model
+name of the dive computer must be selected, e.g. D4 (Suunto), Veo200
+(Oceanic), or Puck (Mares).
+
+The *Device or Mount Point* drop-down list contains the USB or Bluetooth
+port name that _Subsurface_ needs in order to communicate with the dive
+computer. The appropriate port name must be selected. Consult
+xref:_appendix_a_operating_system_specific_information_for_importing_dive_information_from_a_dive_computer[Appendix
+A] and
+xref:_appendix_b_dive_computer_specific_information_for_importing_dive_information[Appendix
+B] for technical details on how to find the appropriate port information for
+a particular dive computer and, in some cases, how to do the correct
+settings to the operating system of the computer on which _Subsurface_ is
+running.
+
+ - If all the dives on the dive computer need to be downloaded, check the
+ checkbox _Force download of all dives_. Normally, _Subsurface_ only
+ downloads dives after the date-time of the last dive in the *Dive List*
+ panel. If one or more of your dives in _Subsurface_ have been accidentally
+ deleted or if there are older dives that still need to be downloaded from
+ the dive computer, this checkbox needs to be activated. Some dive computers
+ (e.g. Mares Puck) do not provide a contents list to _Subsurface_ before the
+ download in order to select only new dives. Consequently, for these dive
+ computers, all dives are downloaded irrespective of the status of this check
+ box.
+
+ - If the checkbox _Always prefer downloaded dives_ has been checked and,
+ during download, dives with identical date-times exist on the dive computer
+ and on the _Subsurface_ *Dive List* panel, the record in the _Subsurface_
+ divelog will be overwritten by the record from the dive computer
+
+ - Do *not* check the checkboxes labelled _Save libdivecomputer logfile_ and
+ _Save libdivecomputer dumpfile_. These are only used as diagnostic tools
+ when problems with downloads are experienced (see below).
+
+The _OK_ button must then be clicked. Dialogue *B* in the figure above
+appears.
+
+With communication established, one can see how the data are retrieved from
+the dive computer. Depending on the make of the dive computer and/or number
+of recorded dives, this could take some time. The user should be
+patient. The _Download_ dialogue shows a progress bar at the bottom of the
+dialogue (for some dive computers the progress information could be
+inaccurate as we cannot determine how much downloadable data there is until
+all data have been downloaded). When the download of the dive information is
+complete, all the imported dives appear in the *Dive List*, sorted by date
+and time. Disconnect and switch off the dive computer to conserve its
+battery power. If a particular dive is selected, the *Dive Profile* panel
+shows an informative graph of dive depth against time for that particular
+dive.
+
+
+If there is a problem in communicating with the dive computer, an error
+message will be shown, similar to this text: "Unable to open /dev/ttyUSB0
+Mares (Puck Pro)". Refer to the text in the box below.
+
+
+****
+*PROBLEMS WITH DATA DOWNLOAD FROM A DIVE COMPUTER?*
+[icon="images/icons/important.png"]
+[IMPORTANT]
+Check the following:
+
+Is the dive computer still in PC-communication or Upload mode?
+
+Is the battery of the dive computer fully charged? If not then the battery
+must be charged or replaced.
+
+Is the connecting cable faulty? Does the cable work perfectly using other
+software? Has it worked before, or is this the first time the cable is being
+used? Are the contacts on the dive computer and the cable clean?
+
+Consult
+xref:_appendix_a_operating_system_specific_information_for_importing_dive_information_from_a_dive_computer[Appendix
+A] and make sure that the correct Mount Point was specified (see above).
+
+On Unix-like operating systems, does the user have write permission to the
+USB port? If not, consult
+xref:_appendix_a_operating_system_specific_information_for_importing_dive_information_from_a_dive_computer[Appendix
+A]
+
+If the _Subsurface_ computer does not recognise the USB adaptor by showing
+an appropriate device name next to the Mount Point, then there is a
+possibility that the cable or USB adaptor is faulty. A faulty cable is the
+most common cause of communication failure between dive computer and
+_Subsurface_ computer. It is also possible that the _Subsurface_ computer
+cannot interpret the data. Perform a download for diagnostic purposes with
+the following two check boxes checked in the download dialogue discussed
+above:
+
+ Save libdivecomputer logfile
+ Save libdivecomputer dumpfile
+
+*Important*: These check boxes are only used when problems are encountered
+during the download process: under normal circumstances they should not be checked.
+When checking these boxes, the user is prompted to select a folder to
+save the information to. The default folder is the one in which the _Subsurface_
+dive log is kept.
+
+*Important:* _After downloading with the above checkboxes
+checked, no dives are added to the
+*Dive List* but two files are created in the folder selected above_:
+
+ subsurface.log
+ subsurface.bin
+
+These files should be send to the _Subsurface_ mail list:
+_subsurface@subsurface-divelog.org_ with a request for the files to be
+analysed. Provide the dive computer make and model as well as contextual
+information about the dives recorded on the dive computer.
+****
+
+[[S_DeviceNames]]
+==== Changing the name of a dive computer
+
+It may be necessary to distinguish between different dive computers used to
+upload dive logs to _Subsurface_. For instance if one's partner's dive
+computer is the same make and model as one's own and dive logs are uploaded
+from both dive computers to the same _Subsurface_ computer, then one would
+perhaps like to call one dc "Alice's Suunto D4" and the other one "Bob's
+Suunto D4". Alternatively, perhaps a technical diver dives with two or more
+dive computers of the same model, the logs of both (or all) being uploaded.
+In this case it might be prudent to call one of them "Suunto D4 (1)" and
+another one "Suunto D4 (2)". This is easily done in _Subsurface_. On the
+*Main Menu*, select _Log -> Edit device names_. A dialog opens, indicating
+the current Model, ID and Nickname of the dive computers used for
+upload. Edit the Nickname field for the appropriate dive computer. After
+saving the Nickname, the dive logs show the nickname for that particular
+device instead of the model name, allowing easy identification of devices.
+
+[[S_EditDiveInfo]]
+==== Updating the dive information imported from the dive computer.
+
+The information from the dive computer is not complete and more details must
+be added in order to have a fuller record of the dives. To do this, the
+*Dive Notes* and the *Equipment* tabs on the top left hand of the
+_Subsurface_ window should be used.
+
+==== Dive Notes
+
+The date and time of the dive, gas mixture and (often) water temperature is
+shown as obtained from the dive computer, but the user needs to add
+additional information by hand in order to have a more complete dive
+record. If the contents of this tab is changed or edited in any way, the
+message in a blue box at the top of the panel indicates that the dive is
+being edited. If one clicks on the *Dive Notes* tab, the following fields
+are visible:
+
+image::images/AddDive3_f20.jpg["FIGURE: The Dive Notes tab", align="center"]
+
+The *Time* field reflects the date and time of the dive. By clicking the
+date, a calendar is displayed from which one can choose the correct
+date. Press ESC to close the calendar. The time values (hour and minutes)
+can also be edited directly by clicking on each of them in the text box and
+by overtyping the information displayed.
+
+*Air/water temperatures*: Air and water temperatures during the dive are shown
+in these fields to the right of the Start time. Many dive computers supply water
+temperature information and this field may therefore contain information obtained from the dive computer.
+If air temperature is not provided by the dive computer, the first temperature reading
+might be used for the air temperature. Generally this is close enough to the real air temperature as
+the change in the temperature sensor reading is quite slow to follow the changes in the environment.
+If editing is required, only a value is required, the units of temperature will be
+automatically supplied by
+_Subsurface_ (according to the _Preferences_, metric or imperial units will
+be used).
+
+*Location*: In this field one should type in text that describes the site
+where the dive was performed, e.g. "Tihany, Lake Balaton, Hungary".
+Auto completion of location names will
+make this easier if one frequently dives at the same sites.
+
+*Coordinates*: The geographic coordinates of the dive site should be entered
+here. These can come from three sources:
+
+The user can find the coordinates on the world map in the bottom right hand
+part of the Subsurface window. The map displays a green bar indicating "Move
+the map and double-click to set the dive location". Double-click at the
+appropriate place, the green bar disappears and the coordinates are stored.
+
+The user can obtain the coordinates from the _Subsurface_ Companion app if
+an Android device with GPS was used and if the coordinates of the dive site
+were stored using that device. xref:S_Companion[Click here for more
+information]
+
+The coordinates can be entered by hand if they are known, using one of four
+formats with latitude followed by longitude:
+
+ ISO 6709 Annex D format e.g. 30°13'28.9"N 30°49'1.5"E
+ Degrees and decimal minutes, e.g. N30° 13.49760' , E30° 49.30788'
+ Degrees minutes seconds, e.g. N30° 13' 29.8" , E30° 49' 1.5"
+ Decimal degrees, e.g. 30.22496 , 30.821798
+
+Southern hemisphere latitudes are given with a *S*, e.g. S30°, or with a
+negative value, e.g. -30.22496. Similarly, western longitudes are given with
+a *W*, e.g. W07°, or with a negative value, e.g. -7.34323.
+
+Please note that GPS coordinates of a dive site are linked to the Location
+name - so adding coordinates to dives that do not have a location
+description will cause unexpected behaviour (Subsurface will think that all
+of these dives have the same location and try to keep their GPS coordinates
+the same).
+
+*Divemaster*: The name of the dive master or dive guide for this dive should be
+entered in this field
+which offers auto completion based on the list of dive masters in
+the current logbook.
+
+*Buddy*: In this field, one enters the name(s) of the buddy / buddies
+(separated with commas) who accompanied him/her on the
+dive. Auto completion based on the list of buddies in the current logbook is
+offered.
+
+*Suit*: Here the type of diving suit used for the dive can be entered.
+Auto completion of the suit description is available.
+Some dry-suit users may choose to use this field to record what combination of
+suit and thermal protection undersuit was used.
+
+*Rating*: One can provide a subjective overall rating of the dive on a
+5-point scale by clicking the appropriate star on the rating scale.
+
+*Visibility*: Similarly, one can provide a rating of visibility during the
+dive on a
+5-point scale by clicking the appropriate star.
+
+*Tags*: Tags that describe the type of dive performed can be entered
+here (separated by commas). Examples of common tags are boat, drift, training,
+cave, etc.
+_Subsurface_ has many built-in tags. If the user starts typing a tag, the
+program
+will list the tags that correspond to the typing. For instance, if the user
+typed
++cav+, then the tags *cave* and *cavern* are shown for the user to choose from.
+
+*Notes*: Any additional information for the dive can be entered here.
+
+The *Save* and *Cancel* buttons are used to save all the information for
+tabs in the info panel and in the dive profile panel, so there's no need to
+use them until ALL other information has been added. Here is an example of a
+completed Dive Notes panel:
+
+image::images/CompletedDiveInfo_f20.jpg["FIGURE: A completed Dive Notes tab", align="center"]
+
+==== Equipment
+
+The Equipment tab allows one to enter information about the type of cylinder
+and gas used as well as the weights used for the dive. The message in a blue
+box at the top of the panel:
+
+image::images/BlueEditBar_f20.jpg["FIGURE: Blue edit bar", align="center"]
+
+indicates that the dive is being edited. This is a highly interactive part
+of _Subsurface_ and the information on cylinders and gases (entered here)
+determines the behaviour of the dive profile (top right-hand panel).
+
+*Cylinders*: The cylinder information is entered through a dialogue that looks
+like this:
+
+image::images/DC_gas-dialogue1_f20.jpg["FIGURE: Initial cylinder dialogue", align="center"]
+
+In most cases _Subsurface_ obtains the gas used from the dive computer and
+automatically inserts the gas composition(% oxygen) in the table. The +
+button at the top right allows the user to add more cylinders for this
+dive. The dark dustbin icon on the left allows the deletion of information
+for a cylinder. Note that it is not possible to delete a cylinder if it is
+used during the dive. A cylinder might be implicitly used in the dive, even
+without a gas change event.
+
+The user should start by selecting a cylinder type on the left-hand side of
+the table. To select a cylinder, the *cylinder type* box should be
+clicked. This brings up a list button that can be used to display a dropdown
+list of cylinders:
+
+image::images/DC_gas-dialogue2_f20.jpg["FIGURE: The cylinder drop-down list button", align="center"]
+
+The drop-down list can then be used to select the cylinder type that was
+used for this dive or the user may start typing in the box which shows the
+available options for the entered characters. The *Size* of the cylinder as
+well as its working pressure (*WorkPress*) will automatically be shown in
+the dialogue.
+
+Next one must indicate the starting pressure and the ending pressure of the
+specified gas during the dive. The unit of pressure (metric/imperial)
+corresponds to the settings chosen in the _Preferences_.
+
+Finally, provide the gas mixture used. If air was used, the value of 21% can
+be entered or this field can be left blank. If nitrox or trimix were used,
+their percentages of oxygen and/or helium should be entered. Any
+inappropriate fields should be left empty. After typing the information for
+the cylinder, either press _ENTER_ on the keyboard or click outside the cell
+that contains the cursor. Information for any additional cylinders can be
+added by using the + button at the top right hand. Following is an example
+of a complete description for a dive using two cylinders (air and EAN50):
+
+image::images/CylinderDataEntry3_f20.jpg["FIGURE: a completed cylinder dive information table", align="center"]
+
+*Weights*: Information about the weight system used can be entered
+using a dialogue very similar to that of the cylinder information. If one
+clicks
+the + button on the top right of the weights dialogue, the table looks like
+this:
+
+image::images/WeightsDataEntry1_f20.jpg["FIGURE:The Weights dialogue", align="center"]
+
+By clicking on the *Type* field, a drop-down list becomes accessible through
+a down-arrow:
+
+image::images/WeightsDataEntry2_f20.jpg["FIGURE:Weights type drop-down list button", align="center"]
+
+The drop-down list can then be used to select the type of weight system used
+during the dive or the user may start typing in the box which shows the
+available options for the entered characters. In the *Weight* field, type
+in the amount of weight used during the dive. After specifying the weight
+system, the user can either press _ENTER_ on the keyboard or click outside
+the cell with the cursor. It is possible to enter information for more than
+one weight system by adding an additional system using the + button on the
+top right hand. Weight systems can be deleted using the dustbin icon on the
+left hand. Here is an example of information for a dive with two types of
+weights: integrated as well as a weight belt:
+
+image::images/WeightsDataEntry3_f20.jpg["FIGURE: A completed weights information table", align="center"]
+
+==== Editing several selected dives simultaneously
+
+_METHOD 1_: After uploading dives from a dive computer, the dive profiles of
+the uploaded dives are shown in the *Dive profile* tab, as well as a few
+items of information in the *Dive Notes* tab (e.g. water temperature) and in
+the *Equipment* tab (e.g. gas pressures and gas composition). However the
+other fields remain empty. It may be useful to simultaneously edit some of
+the fields in the *Dive Notes* and *Equipment* tabs. For instance, it is
+possible that a diver performed several dives during a single day, using
+identical equipment while diving at the same dive site or with the same dive
+master and/or buddy or tags. Instead of completing the information for each
+of these dives separately, one can select all the dives for that day in the
+*Dive List* and insert the same information in the *Dive Notes* and
+*Equipment* fields that need identical information. This is achieved by
+editing the dive notes or the equipment for any one of the selected dives.
+
+The simultaneous editing only works with fields that do not already contain
+information. This means that, if some fields have been edited for a
+particular dive among the selected dives, these are not changed while
+editing the dives simultaneously. Technically, the rule for editing several
+dives simultaneously is: if the data field being edited contains _exactly
+the same information_ for all the dives that have been selected, the new,
+edited information is substituted for all the selected dives, otherwise only
+the edited dive is changed, even though several dives have been selected in
+the *Dive List*. This greatly speeds up the completion of the dive log after
+several similar dives.
+
+[[S_CopyComponents]]
+_METHOD 2_:There is a different way of achieving the same goal. Select a
+dive with all the appropriate information typed into the *Dive Notes* and
+*Equipment* tabs. Then, from the main menu, select _Log -> Copy dive
+components_. A box is presented with a selection of check boxes for most of
+the fields in the *Dive Notes* and *Equipment* tabs. Select the fields to
+be copied from the currently selected dive, then select _OK_. Now, in the
+*Dive List*, select the dives into which this information is to be
+pasted. Then, from the main menu, select _Log -> Paste dive components_.
+All the selected dives now contain the data initially selected in the
+original source dive log.
+
+==== Adding Bookmarks to a dive
+
+Many divers wish to annotate their dives with text that indicate particular
+events during the dive, e.g. "Saw dolphins", or "Released surface
+buoy". This is easily done:
+
+Right-click at the appropriate point on the dive profile. This brings up
+the dive profile context menu. Select _Add bookmark_. A red flag is placed
+on the dive profile at the point that was initially selected (see *A*
+below).
+
+ - Right-click on the red flag. This brings up the context menu (see *B*
+ below). Select _Edit name_.
+
+A text box is shown. Type the explanatory text for the bookmark (see *C*
+below). Select _OK_. This saves the text associated with the bookmark.
+
+If one hovers using the mouse over the red bookmark, the appropriate text is
+shown at the bottom of the information box (see *D* below).
+
+image::images/Bookmarks.jpg["FIGURE: Bookmark dialog", align="center"]
+
+
+==== Saving the updated dive information
+
+The information entered in the *Dive Notes* tab and the *Equipment* tab can
+be saved by using the two buttons on the top right hand of the *Dive Notes*
+tab. If the _Save_ button is clicked, the dive data are saved. If the
+_Cancel_ button is clicked, then the newly entered dive data are deleted,
+although the dive profile obtained from the dive computer will be
+retained. When the user exits _Subsurface_ there is a final prompt to
+confirm that the new data should be saved.
+
+=== Importing dive information from other digital data sources or other data formats
+
+[[S_ImportingAlienDiveLogs]]
+
+If a user has been diving for some time, it is possible that several dives
+were logged using other dive log software. This information does not need
+retyping because these dive logs can probably be imported into
+_Subsurface_. _Subsurface_ will import dive logs from a range of other dive
+log software. While some software is supported natively, for others the user
+has to export the logbook(s) to an intermediate format so that they can then
+be imported by _Subsurface_. Currently, _Subsurface_ supports importing CSV
+log files from several sources. APD LogViewer, XP5, Sensus and Seabear
+files are preconfigured, but because the import is flexible, users can
+configure their own imports. Manually kept log files (e.g. in spreadsheet)
+can also be imported by configuring the CSV import. _Subsurface_ can also
+import UDDF and UDCF files used by some divelog software and some dive
+computers, like the Heinrichs & Weikamp DR5. Finally, for some divelog
+software like Mares Dive Organiser it is currently suggested to import the
+logbooks first into a webservice like _divelogs.de_ and then import them
+from there with _Subsurface_, as divelogs.de supports a few additional
+logbook formats that _Subsurface_ currently cannot parse.
+
+If the format of other software is supported natively on Subsurface, it
+should be sufficient to select either _Import->Import log files_ or
+_File->Open log file_. _Subsurface_ supports the data formats of many dive
+computers, including Suunto and Shearwater. When importing dives,
+_Subsurface_ tries to detect multiple records for the same dive and merges
+the information as best as it can. If there are no time zone issues (or
+other reasons that would cause the beginning time of the dives to be
+significantly different) _Subsurface_ will not create duplicate entries.
+
+==== Using the universal import dialogue
+[[Unified_import]]
+
+Importing dives from other software is performed through a universal
+interface that is activated by selecting _Import_ from the Main Menu, then
+clicking on _Import Log Files_. This brings up the dialogue *A* below.
+
+image::images/Import1_f20.jpg["FIGURE: Import dialogue: step 1", align="center"]
+
+Towards the bottom right is a dropdown selector with a default label of
+_Dive Log Files_ which gives access to the different types of direct imports
+available, as in dialogue *B*, above. Currently these are:
+
+ - XML-formatted dive logs (DivingLog 5.0, MacDive and several other dive log
+ systems)
+ - UDDF-formatted dive logs (e.g. Kenozoooid)
+ - UDCF-formatted dive logs
+ - Poseidon MkVI CCR logs
+ - JDiveLog
+ - Suunto Dive Manager (DM3 and DM4)
+ - CSV (text-based and spreadsheet-based) dive logs, including APD CCR logs
+
+Selecting the appropriate file in the file list of the dialogue opens the
+imported dive log in the _Subsurface_ *Dive List*. Some other formats, not
+accessible through the Import dialogue are also supported, as explained
+below.
+
+==== Importing dive logs from closed circuit rebreather (CCR) systems
+
+[icon="images/APD.jpg"]
+[NOTE]
+Closed system rebreathers use advanced technology to recirculate gas that
+has been breathed while doing two things to maintain a breathable oxygen
+concentration:
+a) remove carbon dioxide from the gas that has been exhaled
+regulate the oxygen concentration to remain within safe diving limits.
+Currently, within _Subsurface_, the Poseidon MkVI Discovery is the best
+supported CCR dive computer. The CCR interface of _Subsurface_ is currently
+experimental and under active development. In contrast to a conventional
+open circuit dive computer, a CCR system computer does not allow the
+download of a log containing multiple dives. Rather, each dive is stored
+independently. This means that _Subsurface_ cannot download a dive log
+directly from a CCR dive computer, but that it imports CCR dive logs in the
+same way that it imports dive log data from other databases.
+
+===== Import a CCR dive
+
+See the section dealing with xref:S_ImportingAlienDiveLogs[Importing dive
+information from other digital sources]. From the main menu of _Subsurface_,
+select _Import->Import log files_ to bring up the
+xref:Unified_import[universal import dialogue]. As explained in the previous
+section, the bottom right hand of the import dialogue contains a dropdown
+list of appropriate devices that currently includes an option for MkVI
+files. Having selected the appropriate CCR format and the directory where
+the original dive logs have been stored from the CCR dive computer, one can
+select a particular dive log file (in the case of the MkVI it is a file with
+a .txt extension). After selecting the appropriate dive log, activate the
+_Open_ button at the bottom right hand of the universal import dialogue.
+
+===== Displayed information for a dive
+
+_Partial pressures of gases_: The graph of oxygen partial pressure shows the
+information from the oxygen sensors of the CCR equipment. In the case of the
+Poseidon MKVI, the mean value of the two oxygen sensors are shown. In the
+case of the APD equipment, the mean of the three oxygen sensors are
+shown. If one sensor shows a very different oxygen PO2 reading compared to
+the others, the divergent sensor is ignored. For CCR dives the graph for
+oxygen partial pressure should be fairly flat, reflecting the setpoint
+settings during the dive. Partial pressures for nitrogen (and helium, if
+applicable) are shown in the usual way as for other dives.
+
+_Cylinder pressures_: CCR dive computers like the Poseidon MkVI record the
+pressures of the oxygen and diluent cylinders. The pressure of the oxygen
+cylinder is shown on the dive profile. In addition, start and end pressures
+for both oxygen and diluent cylinders are shown in the _Equipment Tab_.
+
+_Equipment-specific information_: Equipment-specific information gathered by
+_Subsurface_ is shown in the _Extra data_ tab. This may include setup
+information or metadata about the dive.
+
+More equipment-specific information for downloading CCR dive logs can be
+found in xref:S_PoseidonMkVI[Appendix B].
+
+==== Importing from Mares Dive Organiser V2.1
+
+Since Mares utilise proprietary Windows software not compatible with
+multi-platform applications, these dive logs cannot be directly imported
+into _Subsurface_. Mares dive logs need to be imported using a three-step
+process, using _www.divelogs.de_ as a mechanism to extract the dive log
+information.
+
+The dive log data from Mares Dive Organiser need to be exported to the user's
+desktop, using
+ a _.sdf_ file name extension. Refer to xref:Mares_Export[Appendix C] for more
+information.
+Data should then be imported into _www.divelogs.de_. One needs to create a user
+account in
+_www.divelogs.de_, log into that web site, then
+select _Import Logbook -> Dive Organiser_ from the menu on the left hand side.
+The instructions must be carefully followed to transfer the dive information
+(in _.sdf_ format) from the Dive Organiser database to _www.divelogs.de_.
+Finally, import the dives
+from _divelogs.de_ to _Subsurface_, using the instructions below.
+
+
+[[S_ImportingDivelogsDe]]
+==== Importing dives from *divelogs.de*
+
+The import of dive information from _divelogs.de_ is simple, using a single
+dialogue box. The _Import->Import form Divelogs.de_ option should be
+selected from the Main Menu. This brings up a dialogue box (see figure on
+left [*A*] below). Enter a user-ID and password for _divelogs.de_ into the
+appropriate fields and then select the _Download_ button. Download from
+_divelogs.de_ starts immediately, displaying a progress bar in the dialogue
+box. At the end of the download, the success status is indicated (see figure
+on the right [*B*], below). The _Apply_ button should then be selected,
+after which the imported dives appear in the _Subsurface_ *Dive List* panel.
+
+image::images/Divelogs1.jpg["FIGURE:Download from Divelogs.de", align="center"]
+
+[[S_ImportingCSVData]]
+==== Importing data in CSV format
+
+A comma-separated file (.csv) can be used to import dive information either
+as dive profiles (as in the case of the APD Inspiration and Evolution closed
+circuit rebreathers) or as dive metadata (in case the user keeps dive data
+in a spreadsheet). For an introduction to CSV-formatted files see
+xref:S_CSV_Intro[A Diver's Introduction To CSV Files].
+
+[icon="images/icons/important.png"]
+[IMPORTANT]
+The CSV import has a couple of caveats. You should avoid some special
+characters like ampersand (&), less than (<), greater than (>) and double
+quotes ("), the latter if quoting text cells. The file should use UTF-8
+character set, if having non-ASCII characters. Also the size of the CSV file
+might cause problems. Importing 100 dives at a time (without dive profile)
+has worked previously, but larger files might exceed limits of the parser
+used. When having problems with CSV imports, try first with a smaller sample
+to make sure everything works.
+
+[[S_ImportingCSVDives]]
+===== Importing dives in CSV format from dive computers or other dive log software
+
+CSV files are normally organised into a single line that provides the
+headers (or _field names_) of the data columns, followed by the data, one
+record per line. CSV files can be opened with a normal text editor. For
+information of how to export a spreadsheet in CSV format see
+xref:S_Appendix_D[APPENDIX D: Exporting a spreadsheet to CSV format].
+
+Before being able to import the data to _Subsurface_ one needs to know:
+
+Which character separates the different columns within a single line of
+data? This field separator should be either a comma (,) or a TAB character.
+This can be determined by opening the file with a text editor. If it is
+comma-delimited, then the comma characters between the values are clearly
+visible. If no commas are evident and the numbers are aligned in columns,
+the file is probably TAB-delimited (i.e. it uses a TAB as a field separator,
+as in the above example).
+
+Which data columns need to be imported into _Subsurface_? The Dive Time and
+Depth columns are always required. Open the file using a text editor and
+note the titles of the columns to be imported and their column positions.
+
+c. Is the numeric information (e.g. dive depth) in metric or in imperial unis?
+
+Armed with this information, importing the data into _Subsurface_ is
+straightforward. Select _Import->Import Log Files_ from the main menu. In
+the resulting file selection menu, select _CSV files_, after which a common
+configuration dialog appears for all the files with a CSV extension:
+
+image::images/Import_CSV1.jpg["FIGURE: CSV download dialogue", align="center"]
+
+There are pre-configured definitions for some dive computers, e.g. the APD
+rebreathers. If the user's dive computer is on this list, it should be
+selected using the dropdown box labeled _Pre-configured imports_.
+
+If the dive computer is not on the pre-configured list, the user must select
+the _Field Separator_ (TAB or comma) for the particular CSV file, using the
+appropriate dropdown list. For each data column used for import, the user
+must check the appropriate check box and indicate in which column these data
+are found.
+
+Finally _OK_ should be clicked and the dive(s) are imported and listed in
+the *Dive List* tab of _Subsurface_.
+
+
+[[S_ImportingManualCSV]]
+==== Importing dives from a manually kept CSV file or a spreadsheet
+
+[[S_CSV_Intro]]
+****
+*A Diver's Introduction To CSV Files*
+[icon="images/icons/important.png"]
+[IMPORTANT]
+
+CSV is an abbreviation for a data file format: _Comma-Separated
+Variables_. It is a file format allowing someone to view or edit the
+information using a text editor such as Notebook (Windows), gedit (Linux) or
+TextWrangler (OS/X). The two main advantages of the CSV format is that the
+data are easily editable as text without any proprietary software and
+ensuring all information is human-readable, not being obscured by the any
+custom or proprietary attributes that proprietary software insert into
+files. Because of its simplicity the CSV format is used as an interchange
+format between many software packages, e.g. between spreadsheet,
+statistical, graphics, database and diving software. Within _Subsurface_,
+CSV files can also be used to import information from other sources such as
+spreadsheet-based dive logs and even from some dive computers.
+
+CSV files can be created or edited with a normal text editor. The most
+important attribute of a CSV file is the _field separator_, the character
+used to separate fields within a single line. The field separator is
+frequently a comma, a colon, a SPACE character or a TAB character. When
+exporting data from spreadsheet software, the field separator needs to be
+specified in order to create the CSV file. CSV files are normally organised
+into a single line that provides the headers (or _field names_) of the data
+columns, followed by the data, one record per line. Note that each field
+name may comprise more than one word separated by spaces; for instance _Dive
+site_, below. Here is an example of dive information for four dives using a
+comma as a field separator:
+
+ Dive site,Dive date,Time,Dive_duration, Dive_depth,Dive buddy
+ Illovo Beach,2012-11-23,10:45,46:15,18.4,John Smith
+ Key Largo,2012-11-24,09:12,34:15,20.4,Jason McDonald
+ Wismar Baltic,2012-12-01,10:13,35:27,15.4,Dieter Albrecht
+ Pulau Weh,2012-12-20,09:46,55:56,38.6,Karaeng Bontonompo
+
+In this format the data are not easily read by a human. Here is the same
+information in TAB-delimited format:
+
+ Dive site Dive date Time Dive_duration Dive_depth Dive buddy
+ Illovo Beach 2012-11-23 10:45 46:15 18.4 John Smith
+ Key Largo 2012-11-24 09:12 34:15 20.4 Jason McDonald
+ Wismar Baltic 2012-12-01 10:13 35:27 15.4 Dieter Albrecht
+ Pulau Weh 2012-12-20 09:46 55:56 38.6 Karaeng Bontonompo
+
+It is clear why many people prefer the TAB-delimited format to the
+comma-delimited format. The disadvantage is that one cannot see the TAB
+characters. For instance, the space between _Dive_ and _date_ in the top
+line may be a SPACE character or a TAB character (in this case it is a SPACE
+character: the tabs are before and after _Dive date_). If the field names in
+the first line are long, the alignment with data in the other lines cannot
+be maintained. Here is a highly simplified and shortened TAB-delimited
+example of a CSV dive log from an APD closed-circuit rebreather (CCR) dive
+computer:
+
+ Dive Time (s) Depth (m) pO₂ - Setpoint (Bar) pO₂ - C1 Cell 1 (Bar) Ambient temp. (Celsius)
+ 0 0.0 0.70 0.81 13.1
+ 0 1.2 0.70 0.71 13.1
+ 0 0.0 0.70 0.71 13.1
+ 0 1.2 0.70 0.71 13.2
+ 0 1.2 0.70 0.71 13.1
+ 10 1.6 0.70 0.72 12.7
+ 20 1.6 0.70 0.71 12.6
+ 30 1.7 0.70 0.71 12.6
+ 40 1.8 0.70 0.68 12.5
+
+CSV files can therefore be used in many contexts for importing data into a
+_Subsurface_ dive log.
+
+An important aspect of the CSV format required by _Subsurface_ is the
+_Column Mapping_. In the example from different dive sites above, each line
+of data is organised as follows:
+
+ Column 1: Dive site (location)
+ Column 2: Dive date
+ Column 3: Dive time
+ Column 4: Dive duration
+ Column 5: Maximum dive depth (m)
+ Column 6: Name of dive buddy
+
+_Subsurface_ requires the column number of each of these data items. For
+these data the column specification may look like this:
+
+image::images/CSV_column_definition.jpg["FIGURE: CSV column definition", align="center"]
+
+Knowledge of a few basic things about he content of the CSV file allows a
+smooth import of the dives into _Subsurface_.
+
+****
+
+If one keeps dive logs in a spreadsheet, there is an option to import those
+dives, exported as a CSV file. See xref:S_Appendix_D[APPENDIX D: Exporting a
+spreadsheet to CSV format] for information of how to export a spreadsheet in
+CSV format. When importing manually kept log files into _Subsurface_, the
+information needed is quite different from that accessible using a dive
+computer, as we are importing only summary data, not depth profile samples.
+
+When importing dives in CSV format (see above), one needs to know the
+internal format of the CSV data to import.
+
+Which character separates the different columns within a single line of
+data? A recommended field separator for the export is TAB, as commas might
+be part of the decimal data values themselves. Therefore the use of an
+appropriate field separator is very important. When exporting data from a
+spreadsheet it is likely to request the user to supply an appropriate field
+separator character.
+
+Which columns need to be imported into _Subsurface_? Currently there are not
+any mandatory input fields, but some, e.g. dive duration are crucial for the
+log file to make any sense. Possible options can be seen in the image below
+and one should include as many as possible of the fields available in the
+original log file.
+
+Units used for depth, weight and temperature. We consider depth to be either
+feet or meters, weight kilograms or pounds and temperature either Celsius or
+Fahrenheit. However, the users can select _Metric_ or _Imperial_ in the
+*Preferences* tab of _Subsurface_. No mixture of unit systems is allowed for
+the different fields.
+
+Importing manually kept CSV log files is quite straight forward, but there
+might be many fields and counting the field numbers is error
+prone. Therefore validation of the data to be imported is critical.
+
+To import the dives, select _Import->Import Log Files_ from the menu bar. If
+the CSV option in the dropdown list is selected and the file list includes
+file names ending with .CSV, one can select the _Manual dives_ tab that will
+bring up the following configuration dialog:
+
+image::images/Import_CSV2.jpg["FIGURE: Download dialog for Manual CSV logs", align="center"]
+
+Check the check boxes corresponding to the data in the original import
+file. For each of the checked data items, a corresponding column number
+needs to be entered. For instance in the image above, the name of the dive
+site (i.e. location) is located as the 11th item (or column) on each line
+of the CSV import file. The input fields can be configured as appropriate,
+and when everything is done the _OK_ button should be selected to perform
+the import. New dives should appear in the *Dive List* area of _Subsurface_.
+
+
+[[S_Companion]]
+=== Importing GPS coordinates with the _Subsurface Companion App_ for mobile phones
+
+Using the *Subsurface Companion App* on an Android device with a GPS, the
+coordinates for the diving location can be automatically passed to the
+_Subsurface_ dive log. The Companion App stores the dive locations on a
+dedicated Internet-based file server. _Subsurface_, in turn, can collect the
+localities from the file server.
+
+To do this:
+
+==== Create a Companion App account
+
+Register on the http://api.hohndel.org/login/[_Subsurface companion web
+page_]. A confirmation email with instructions and a personal *DIVERID*
+will be sent, a long number that gives access to the file server and
+Companion App capabilities.
+
+Download the app from
+https://play.google.com/store/apps/details?id=org.subsurface[Google Play
+Store] or from
+http://f-droid.org/repository/browse/?fdfilter=subsurface&fdid=org.subsurface[F-Droid].
+
+==== Using the Subsurface companion app on a smartphone
+
+On first use the app has three options:
+
+_Create a new account._ Equivalent to registering in _Subsurface_ companion
+page using an Internet browser. One can request a *DIVERID* using this
+option, but this is supplied via email and followed up by interaction with
+the http://api.hohndel.org/login/[_Subsurface companion web page_] in order
+to activate the account.
+
+_Retrieve an account._ If users forgot their *DIVERID* they will receive an
+email to recover the number.
+
+_Use an existing account._ Users are prompted for their *DIVERID*. The app
+saves this *DIVERID* and does not ask for it again unless one uses the
+_Disconnect_ menu option (see below).
+
+[icon="images/icons/important.png"]
+[IMPORTANT]
+In the _Subsurface_ main program, the *DIVERID* should also be entered on
+the Default Preferences panel, obtained by selecting
+_File->Preferences->Defaults_ from the main menu in _Subsurface_ itself.
+This facilitates synchronisation between _Subsurface_ and the Companion App.
+
+===== Creating new dive locations
+
+Now one is ready to get a dive position and send it to the server. The
+Android display will look like the left hand image (*A*) below, but without
+any dives.
+
+Touch the "+" icon on the top right to add a new dive site, a menu will be
+showed with 3 options:
+
+Current: A prompt for a place name (or a request to activate the GPS if it
+is turned off) will be displayed, after which the current location is saved.
+
+Use Map: This option allows the user to fix a position by searching a world
+map. A world map is shown (see *B* below) on which one should indicate the
+desired position with a _long press_ on the touch sensitive screen (if the
+marked location is erroneous, simply indicate a new location) and select
+the check symbol in the upper right. A dialog is shown allowing to enter the
+name of the dive location and the date-time of the dive (see *C* below). In
+order to import this dive location in _Subsurface_ it's advisable to set the
+time to agree with the time of that dive on the dive computer.
+
+image::images/Companion_5.jpg["FIGURE: Companion App, add location using map", align="center"]
+
+
+Import local GPX file: The android device searches for .gpx files and
+located archives will be shown. The selected .gpx file is opened and the
+stored locations shown. Now one needs to select the appropriate locations,
+then select the tab in the upper right, after which the locations will be
+sent to the web service and added to the list on the Android device.
+
+===== Dive lists of dive locations
+
+The main screen shows a list of dive locations, each with a name, date and
+time (see *A* below). Some locations may have an arrow-up icon over the
+selection box to the left indicating that they require upload to the
+server. One can select individual dive locations from the list. A selected
+location has a check mark in the selection box on the left. Group operations
+(such as _Delete_ or _Send_) are performed on several locations that are
+selected.
+
+Dive locations in this list can be viewed in two ways: a list of locations
+or a map indicating the dive locations. The display mode (List or Map) is
+changed by selecting _Dives_ at the top left of the screen (see *A* below)
+and then selecting the display mode. The display mode can be changed either
+from the list of locations or from the map (see *B* below). If one selects a
+location (on the list or on the map), an editing panel opens (see *C* below)
+where the dive description or other details may be changed.
+
+image::images/Companion_4.jpg["FIGURE: Companion App, add location using map", align="center"]
+
+
+When one clicks on a dive (*not* selecting the check box), the name given to
+it, date/time and GPS coordinates will be shown, with two options at the top
+of the screen:
+
+- Edit (pencil): Change the text name or other characteristics of the dive
+ location.
+
+- Maps: Display a map showing the dive location.
+
+After editing and saving a dive location (see *C* above), one needs to
+upload it to the web service, as explained below.
+
+===== Uploading dive locations
+
+There are several ways to send locations to the server. The easiest is by
+simply selecting the locations (See *A* below) and then touching the right
+arrow at the top right of the screen.
+
+[icon="images/icons/important.png"]
+[IMPORTANT]
+Users must be careful, as the trash icon on the right means exactly what it
+should; it deletes the selected dive location(s).
+
+image::images/Companion_1.jpg["FIGURE: Screen shots (A-B) of companion app", align="center"]
+
+
+After a dive trip using the Companion App, all dive locations are ready to
+be downloaded to a _Subsurface_ dive log (see below).
+
+
+===== Settings on the Companion app
+
+Selecting the _Settings_ menu option results in the right hand image above
+(*B*).
+
+===== Server and account
+
+- _Web-service URL._ This is predefined (http://api.hohndel.org/)
+
+_User ID._ The DIVERID obtained by registering as described above. The
+easiest way to obtain it is simply to copy and paste from the confirmation
+email but, of course, users can also type this information.
+
+===== Synchronisation
+
+_Synchronize on startup._ If selected, dive locations in the Android device
+and those on the web service synchronise each time the app is started.
+
+_Upload new dives._ If selected, each time the user adds a dive location it
+is automatically sent to the server.
+
+===== Background service
+Instead of entering a unique dive location, users can leave the service
+running in the background of their Android device, allowing the continuous
+collection of GPS locations.
+
+
+The settings below define the behaviour of the service:
+
+_Min duration._ In minutes. The app will try to get a location every X
+minutes until stopped by the user.
+
+- _Min distance._ In meters. Minimum distance between two locations.
+
+- _Name template._ The name the app will use when saving the locations.
+
+[icon="images/icons/info.jpg"]
+[TIP]
+_How does the background service work?_ Assuming the user sets 5 minutes and
+50 meters in the settings above, the app will start by recording a location
+at the current location, followed by another one at every 5 minutes *or*
+every time one moves 50m from previous location. If subsequent locations
+are within a radius of 50 meters from the previous one, a new location is
+not saved. If the user is not moving, only one location is saved, but if the
+user is moving, a trace of the route is obtained by saving a location every
+50 meters.
+
+===== Other
+
+_Mailing List._ The mail box for _Subsurface_. Users can send an email to
+the Subsurface mailing list.
+
+- _Subsurface website._ A link to the URL of Subsurface web
+
+- _Version._ Displays the current version of the Companion App.
+
+===== Search
+
+Search the saved dive locations by name or by date and time.
+
+===== Start service
+
+Initiates the _background service_ following the previously defined
+settings.
+
+===== Disconnect
+
+This is a badly named option that disconnects the app from the server by
+resetting the user ID in the app, showing the first screen where an account
+can be created, retrieve the ID for an existing account or use the users own
+ID. The disconnect option is useful if a user's Android device was used to
+download the dive locations of another registered diver.
+
+===== Send all locations
+
+This option sends all locations stored in the Android device to the server.
+
+
+==== Downloading dive locations to the _Subsurface_ divelog
+
+Download dive(s) from a dive computer or enter them manually into
+_Subsurface_ before obtaining the GPS coordinates from the server. The
+download dialog can be reached via _Ctrl+G_ or from the _Subsurface_ Main
+Menu _Import -> Import GPS data from Subsurface Service_, resulting in the
+image on the left (*A*), below. On first use the DIVERID text box is
+blank. Provide a DIVERID, then select the _Download_ button to initiate the
+download process, after which the screen on the right (*B*) below appears:
+
+image::images/DownloadGPS.jpg["FIGURE: Downloading Companion app GPS data", align="center"]
+
+Note that the _Apply_ button is now active. By clicking on it, users can
+update the locations of the newly entered or uploaded dives in _Subsurface_
+which applies the coordinates and names entered on the app for all the new
+dives that match the date-times of the uploaded GPS localities. If one has
+entered the name of the dive location in _Subsurface_ before downloading the
+GPS coordinates, this name will take precedence over downloaded one.
+
+Since _Subsurface_ matches GPS locations from the Android device and dive
+information from the dive computer based on date-time data, automatic
+assignment of GPS data to dives is dependent on agreement of the date-time
+information between these two devices. Although _Subsurface_ has a wide
+range tolerance, it may be unable to identify the appropriate dive if there
+is a large difference between the time in the dive computer and that of the
+Android device, resulting in no updates.
+
+Similar date-times may not always be possible and there may be many reasons
+for this (e.g. time zones), or _Subsurface_ may be unable to decide which is
+the correct position for a dive (e.g. on repetitive dives while running
+_background service_ there may be several locations that would be included
+in the time range that fit not only the first dive, but one or more
+subsequent dives as well). A workaround for this situation to manually edit
+the date-time of a dive in the _Subsurface_ Dive List *before* downloading
+the GPS data and then to change the date-time back again *after* downloading
+GPS data.
+
+[icon="images/icons/info.jpg"]
+[NOTE]
+TIPS:
+
+_Background service_, being a very powerful tool, may fill the location list
+with many unnecessary locations not corresponding to the exact dive point
+but reflecting the boat's route. Currently these locations are difficult to
+delete from the server. In some situations it is therefore prudent to clean
+up the list on the Android device before sending the dive points to the web
+server by simply deleting the inappropriate locations. This might be
+necessary, for instance, if one wants to keep the location list clear to see
+dives in the web service map display (see above).
+
+It may also make sense to give informative names to the locations sent to
+the web server, or at least to use an informative name in the _Name
+Template_ setting while running the _background service_, especially on a
+dive trip with many dives and dive locations.
+
+[[S_LoadImage]]
+=== Adding photographs to dives
+
+Many (if not most) divers take a camera with them and take photographs
+during a dive. One would like to associate each photograph with a specific
+dive. _Subsurface_ allows one to load photos into a dive. Photos are
+superimposed on the dive profile, from where they can be viewed.
+
+==== Loading photos and getting synchronisation between dive computer and camera
+
+Left-lick on a dive or on a group of dives on the dive list. Then
+right-click on this dive or group of dives and choose the option _Load
+Images_:
+
+image::images/LoadImage1_f20.jpg["FIGURE: Load images option", align="center"]
+
+The system file browser appears. Select the folder and photographs that need
+to be loaded into _Subsurface_ and click the _Open_ button.
+
+image::images/LoadImage2_f20.jpg["FIGURE: Load images option", align="center"]
+
+This brings one to the time synchronisation dialog, shown below. The
+critical problem is that the time synchronisation is not perfect between the
+dive computer used during a dive, and the camera used during that same
+dive. These two devices often differ by several minutes. If _Subsurface_ can
+achieve synchronisation, then the exact times of photographs can be used to
+position photographs on the dive profile.
+
+_Subsurface_ achieves this synchronisation in two ways:
+
+*Manually*: If the user wrote down the exact camera time at the start of a dive, the
+difference in time between the two devices can be determined. Actually, as long as the device
+settings for time has not been changed in either device, one could write down the times of
+both devices after the dive or even at the end of the day. One can then manually set the time
+difference in the _Time shift_ dialog. Towards the top of the dialog is a time setting tool
+immediately under the heading _Shift times of image(s) by_, evident in figure *A* below.
+If the camera time is 7 minutes later than that of the dive computer, set the time setting
+tool to a value of 00:07. Select either the _earlier_ or _later_ radio button.
+In the above example, the _earlier_ option is appropriate, since the photos need to be shifted
+7 minutes earlier (camera is 7 minutes ahead of dive computer). Ignore any "AM" or "PM" suffix
+in that tool. Click the _OK_ button and synchronisation is achieved.
+
+image::images/LoadImage3b_f20.jpg["FIGURE: Synchronisation dialog", align="center"]
+
+
+*By photograph*: There is a very slick way of achieving synchronisation. If one takes a
+photograph of the face of the dive computer showing the time, then _Subsurface_ can obtain
+the exact time the photograph was taken, using the metadata that the camera stores within
+each photo. In order to do this, use the bottom half of the Time shift_ dialog. If one uses
+the bottom part, the top part of the dialog is ignored. Click on
+the horizontal bar entitled "_Select image of divecomputer showing time_. This brings up
+a file browser with which one can select the photograph of the dive computer. Select the
+photograph using the file browser and click on _OK_. This photograph of the dive computer
+appears in the bottom panel of the _Shift times_ dialog. Now _Subsurface_ knows exactly
+when the photograph has been taken. Now set the date-time dialog to the left of the photo
+so that this tool reflects the date and time of the dive computer in the photo. When the
+date-time tool has been set, _Subsurface_ knows exactly what the time difference between
+camera and dive computer is, and synchronisation is achieved. There is a
+photograph with the face of the dive computer and with the date-time tool set to the
+date-time on image *B* above.
+
+If the timestamp of a photograph is long before or after the dive, it is not
+placed on the dive profile. If the timestamp of the photo is within 30
+minutes of the dive, it is shown.
+
+==== Viewing the photos
+
+In order to view the photos added to a dive, activate the _show-photos_
+button in the tool bar to the left of the dive profile:
+
+image::images/icons/ShowPhotos_f20.png["FIGURE:Show photos toolbar button", align="left"]
+
+After the images have been loaded, they appear in two places:
+
+ - the _Photos_ tab of the *Dive Notes* panel.
+ - as tiny icons (stubs) on the dive profile at the appropriate positions
+ reflecting the time each photograph was taken. See below:
+
+image::images/LoadImage4_f20.jpg["FIGURE: Photos on dive profile", align="center"]
+
+If one hovers with the mouse over any of the photo icons, then a thumbnail
+photo is shown of the appropriate photo. See the image below:
+
+image::images/LoadImage5_f20.jpg["FIGURE:Thumbnail photo on dive profile", align="center"]
+
+Clicking on the thumbnail brings up a full size photo overlaid on the
+_Subsurface_ window. This allows good viewing of the photographs that have
+been added (see the image below). Note that the thumbnail has a small
+dustbin icon in the bottom right hand corner (see image above). If one
+selects the dustbin, the image is removed from the dive. Therefore some care
+is required when clicking on a thumbnail. Images can also be deleted using
+the _Photos_ tab (see text below).
+
+image::images/LoadImage6_f20.jpg["FIGURE: Full-screen photo on dive profile", align="center"]
+
+==== The _Photos_ tab
+
+Photographs associated with a dive are shown as thumbnails in the _Photos_
+tab of the _Dive Notes_ panel. Photos taken in rapid succession during a
+dive (therefore sometimes with large overlap on the dive profile) can easily
+be accessed in the _Photos_ tab. This tab serves as a tool for individually
+accessing the photos of a dive, while the stubs on the dive profile give an
+indication of when during a dive a photo was taken. By single-clicking on a
+thumbnail in the _Photos_ panel, a photo is selected. By double-clicking a
+thumbnail, the full-sized image is shown, overlaying the _Subsurface_
+window. A photo can be deleted from the _Photos_ panel by selecting it
+(single-click) and then by pressing the _Del_ key on the keyboard. This
+removes the photo both from the _Photos_ tab as well as the dive profile.
+
+==== Photos on an external hard disk
+
+Most underwater photographers store their photos on an external drive. If
+such a drive can be mapped (almost always the case) the photos can be
+directly accessed by _Subsurface_. This facilitates the interaction between
+_Subsurface_ and an external repository of photos. When associating a dive
+profile with photos from an external drive, the normal procedure of
+selection and synchronisation (see text above) is used. However, after the
+external drive has been disconnected, _Subsurface_ cannot access these
+photos any more. If the display of photos is activated (using the toolbox
+to the left of the _Dive Profile_), the program only shows a small white dot
+where each photo should be on the dive profile. In addition the _Photos_
+tab only shows the file names of the photos. This is normal behaviour. If,
+later, the external drive with the photos is connected again, the photos can
+be seen in the normal way.
+
+
+=== Logging special types of dives
+
+==== Sidemount dives
+
+_Subsurface_ easily handles dives involving more than one
+cylinder. Sidemount dive logging involves three steps:
+
+*During the dive, recording cylinder switch events*. Since sidemount diving normally involves two
+cylinders with air or with the same gas mixture, _Subsurface_ distinguishes among these different
+cylinders. In contrast, most dive computers that allow gas switching only distinguish among different
+_gases_ used, not among different _cylinders_ used. This means that when sidemount dives are downloaded
+from these dive computers, the events of switching between cylinders with the same gas are not downloaded. This may mean
+that one may have to keep a written log of cylinder switch times using a slate, or (if the dive computer
+has this facility) marking each cylinder switch with a bookmark that can be retrieved later. Returning
+from a dive with the information about cylinder changes is the only tricky part of logging sidemount dives.
+*Within _Subsurface_ describe the cylinders used during the dive*. The diver needs to provide the
+specifications of the different cylinders, using the *Equipment* tab of the *Dive Info Panel* (see
+image below where two 12 litre cylinder were used).
+*Indicate cylinder change events on the _Subsurface_ dive profile*. Once the dive log has been imported
+from a dive computer into _Subsurface_, the cylinder switch events need to be indicated on the dive profile.
+Cylinder changes are recorded by right-clicking at the appropriate point on the dive profile and then
+selecting _Add gas change_. A list of the appropriate cylinders is shown with the
+currently used cylinder greyed out. In the image below Tank 1 is greyed out, leaving only Tank 2
+to be selected. Select the appropriate cylinder. The cylinder change is then indicated on the dive
+profile with a cylinder symbol. If the *Tank Bar* is activated using the toolbar to the left of the
+profile, then the cylinder change is also indicated on the Tank Bar (see image below). After all
+the cylinder change events have been recorded on the dive profile, the correct cylinder pressures
+for both cylinders are shown on the dive profile, as inthe image below.
+
+image::images/sidemount1.jpg["FIGURE: Sidemount profile", align="center"]
+
+== Obtaining more information about dives entered into the logbook
+
+=== The *Dive Info* tab (for individual dives)
+
+The Dive Info tab gives some summary information about a particular dive
+that has been selected in the *Dive List*. Useful information here includes
+the surface interval before the dive, the maximum and mean depths of the
+dive, the gas volume consumed, the surface air consumption (SAC) and the
+number of oxygen toxicity units (OTU) incurred.
+
+[icon="images/icons/info.jpg"]
+[NOTE]
+Gas consumption and SAC calculations: _Subsurface_ calculates SAC and Gas
+consumption taking in account gas incompressibility, particularly at tank
+pressures above 200 bar, making them more accurate. Users should refer to
+xref:SAC_CALCULATION[Appendix D] for more information.
+
+=== The *Extra Data* tab (usually for individual dives)
+
+When using a dive computer, it often reports several data items that cannot
+easily be presented in a standardised way because the nature of the
+information differs from one dive computer to another. These data often
+comprise setup information, metadata about a dive, battery levels, no fly
+times, or gradient factors used during the dive. When possible, this
+information is presented in the *Extra Data* tab. Below is an image showing
+extra data for a dive using a Poseidon rebreather.
+
+image::images/ExtraDataTab_f20.jpg["FIGURE: Extra Data tab", align="center"]
+
+=== The *Stats* tab (for groups of dives)
+
+The Stats tab gives summary statistics for more than one dive, assuming that
+more than one dive has been selected in the *Dive List* using the standard
+Ctrl-click or Shift-click of the mouse. If only one dive has been selected,
+figures pertaining to only that dive are given. This tab shows the number of
+dives selected, the total amount of dive time in these dives, as well as the
+minimum, maximum and mean for the dive duration, water temperature and
+surface air consumption (SAC). It also shows the depth of the shallowest and
+deepest dives of those selected.
+
+[[S_DiveProfile]]
+=== The *Dive Profile*
+
+image::images/Profile2.jpg["Typical dive profile", align="center"]
+
+Of all the panels in _Subsurface_, the Dive Profile contains the most
+detailed information about each dive. The Dive Profile has a *button bar* on
+the left hand side that allows control over several display options. The
+functions of these buttons are described below. The main item in the Dive
+Profile is the graph of dive depth as a function of time. In addition to the
+obvious information of the depth it also shows the ascent and descent rates
+compared to the recommended speed of going up or down in the water
+column. This information is given using different colours:
+|====================
+|*Colour*|*Descent speed (m/min)*|*Ascent speed (m/min)*
+|Red|> 30|> 18
+|Orange|18 - 30|9 - 18
+|Yellow|9 - 18|4 - 9
+|Light green|1.5 - 9|1.5 - 4
+|Dark green|< 1.5|< 1.5
+|=====================
+
+The profile also includes depth readings for the peaks and troughs in the
+graph. Thus, users should see the depth of the deepest point and other
+peaks. Mean depth is marked with a horizontal red line.
+
+[icon="images/icons/scale.jpg"]
+[NOTE]
+In some cases the dive profile does not fill the whole area of the *Dive
+Profile* panel. Clicking the *Scale* button in the toolbar on the left of
+the dive profile frequently increases the size of the dive profile to fill
+the area of the panel efficiently.
+
+*Water temperature* is displayed with its own blue line with temperature values
+placed adjacent to significant changes.
+
+The dive profile can include graphs of the *partial pressures* of O2, N2,
+and He during the dive (see figure above) as well as a calculated and dive
+computer reported deco ceilings (only visible for deep, long, or repetitive
+dives). Partial pressures of oxygen are indicated in green, those of
+nitrogen in black, and those of helium in dark red. These partial pressure
+graphs are shown below the profile data.
+
+[icon="images/icons/O2.jpg"]
+[NOTE]
+Clicking this button allows display of the partial pressure of *oxygen*
+during the dive. This is depicted below the dive depth and water temperature
+graphs.
+
+[icon="images/icons/N2.jpg"]
+[NOTE]
+Clicking this button allows display of the partial pressure of *nitrogen*
+during the dive.
+
+[icon="images/icons/He.jpg"]
+[NOTE]
+Clicking this button allows display of the partial pressure of *helium*
+during the dive. This is only of importance to divers using Trimix,
+Helitrox or similar breathing gasses.
+
+The *air consumption* graph displays the tank pressure and its change during
+the dive. The air consumption takes depth into account so that even when
+manually entering the start and end pressures the graph is not a straight
+line. Similarly to the depth graph the slope of the tank pressure gives the
+user information about the momentary SAC rate (Surface Air Consumption) when
+using an air integrated dive computer. Here the colour coding is not
+relative to some absolute values but relative to the average normalised air
+consumption during the dive. So areas that are red or orange indicate times
+of increased normalized air consumption while dark green reflects times when
+the diver was using less gas than average.
+
+[icon="images/icons/Heartbutton.png"]
+[NOTE]
+Clicking on the heart rate button will allow the display of heart rate
+information during the dive if the dive computer was attached to a heart
+rate sensor.
+
+It is possible to *zoom* into the profile graph. This is done either by using
+the scroll wheel / scroll gesture of your mouse or trackpad. By default
+_Subsurface_ always shows a profile area large enough for at least 30 minutes
+and 30m
+ (100ft) – this way short or shallow dives are intuitively recognizable;
+something
+that free divers clearly won’t care about.
+
+image::images/MeasuringBar.png["FIGURE: Measuring Bar", align="center"]
+
+[icon="images/icons/ruler.jpg"]
+[NOTE]
+Measurements of *depth or time differences* can be achieved by using the
+*ruler button* on the left of the dive profile panel. The measurement is
+done by dragging the red dots to the two points on the dive profile that the
+user wishes to measure. Information is then given in the horizontal white
+area underneath the two red dots.
+
+[icon="images/icons/ShowPhotos.png"]
+[NOTE]
+Photographs that have been added to a dive can be shown on the profile by
+selecting the *Show-photo* button. The position of a photo on the profile
+indicates the exact time when this photo was taken. If this button is not
+active, the photos are hidden.
+
+
+The profile can also include the dive computer reported *ceiling* (more
+precisely, the deepest deco stop that the dive computer calculated for each
+particular moment in time) as a red overlay on the dive profile. Ascent
+ceilings arise when a direct ascent to the surface increases the risk of a
+diver suffering from decompression sickness (DCS) and it is necessary to
+either ascend slower or to perform decompression stop(s) before ascending to
+the surface. Not all dive computers record this information and make it
+available for download; for example all of the Suunto dive computers fail to
+make this very useful data available to divelog software. _Subsurface_ also
+calculates ceilings independently, shown as a green overlay on the dive
+profile. Because of the differences in algorithms used and amount of data
+available (and other factors taken into consideration at the time of the
+calculation) it is unlikely that ceilings from dive computers and from
+_Subsurface_ are the same, even if the same algorithm and _gradient factors_
+(see below) are used. It is also quite common that _Subsurface_ calculates
+a ceiling for non-decompression dives when the dive computer stayed in
+non-deco mode during the whole dive (represented by the [green]#dark green#
+section in the profile at the beginning of this section). This is caused by
+the fact that _Subsurface’s_ calculations describe the deco obligation at
+each moment during a dive, while dive computers usually take the upcoming
+ascent into account. During the ascent some excess nitrogen (and possibly
+helium) are already breathed off so even though the diver technically
+encountered a ceiling at depth, the dive still does not require an explicit
+deco stop. This feature allows dive computers to offer longer non-stop
+bottom times.
+
+[icon="images/icons/cceiling.jpg"]
+[NOTE]
+If the dive computer itself calculates a ceiling and makes it available to
+_Subsurface_ during upload of dives, this can be shown as a red area by
+checking *Dive computer reported ceiling* button on the Profile Panel.
+
+[icon="images/icons/ceiling1.jpg"]
+[NOTE]
+If the *Calculated ceiling* button on the Profile Panel is clicked, then a
+ceiling, calculated by _Subsurface_, is shown in green if it exists for a
+particular dive (*A* in figure below). This setting can be modified in two
+ways:
+
+[icon="images/icons/ceiling2.jpg"]
+[NOTE]
+If, in addition, the *show all tissues* button on the Profile Panel is
+clicked, the ceiling is shown for the tissue compartments following the
+Bühlmann model (*B* in figure below).
+
+[icon="images/icons/ceiling3.jpg"]
+[NOTE]
+If, in addition, the *3m increments* button on the Profile Panel is clicked,
+then the ceiling is indicated in 3 m increments (*C* in figure below).
+
+image::images/Ceilings2.jpg["Figure: Ceiling with 3m resolution", align="center"]
+
+[icon="images/icons/ShowCylindersButton.jpg"]
+[NOTE]
+By selecting this icon, the different cylinders used during a dive can be
+represented as a coloured bar at the bottom of the *Dive Profile*. In
+general oxygen is represented by a green bar, nitrogen with a yellow bar and
+helium with a red bar. The image below shows a dive which first uses a
+trimix cylinder (red and green), followed by a switch to a nitrox cylinder
+(yellow and green) after 23 minutes. Cylinders with air are shown as a light
+blue bar.
+
+image::images/ShowCylinders_f20.jpg["Figure: Cylinder use graph", align="center"]
+
+
+[icon="images/tissues.jpg"]
+
+[NOTE]
+Display inert gas tissue pressures relative to ambient inert gas pressure
+(horizontal grey line). Tissue pressures are calculated using the Bühlmann
+ZH-L16 algorithm and are displayed as lines ranging from green (faster
+tissues) to blue (slower tissues). The black line, graphed above the
+ambient pressure, is the maximum allowable tissue supersaturation (pressure
+limit) derived from the gradient factors specified in the *Preferences*. For
+divers involved in planned decompression diving, efficient rates of
+offgasing are obtained with tissue pressures between the ambient inert gas
+pressure (grey line) and the pressure limit (black line). This display is a
+representation of the tissue pressures during the whole dive. In contast,
+the xref:S_gas_pressure_graph[Gas Pressure Graph] in the *Information Box*
+on the *Dive Profile* is an instantaneous reflection of tissue pressures at
+the moment in time reflected by the position of the cursor on the dive
+profile.
+
+image::images/tissuesGraph.jpg["Figure: Inert gas tissue pressure graph", align="center"]
+
+Gradient Factor settings strongly affect the calculated ceilings and their
+depths. For more information about Gradient factors, see the section on
+xref:S_GradientFactors[Gradient Factor Preference settings]. The currently
+used gradient factors (e.g. GF 35/75) are shown above the depth profile if
+the appropriate toolbar buttons are activated. *N.B.:* The indicated
+gradient factors are NOT the gradient factors in use by the dive computer,
+but those used by _Subsurface_ to calculate deco obligations during the
+dive. For more information external to this manual see:
+
+ ** http://www.tek-dive.com/portal/upload/M-Values.pdf[Understanding M-values by Erik Baker, _Immersed_ Vol. 3, No. 3.]
+
+ ** link:http://www.rebreatherworld.com/general-and-new-to-rebreather-articles/5037-gradient-factors-for-dummies.html[Gradient factors for dummies, by Kevin Watts]
+
+
+=== The Dive Profile context menu
+
+The context menu for the Dive Profile is accessed by right-clicking while
+the mouse cursor is over the Dive Profile panel. The menu allows the
+creation of Bookmarks or Gas Change Event markers or manual CCR set-point
+changes other than the ones that might have been imported from a Dive
+Computer. Markers are placed against the depth profile line and with the
+time of the event set by where the mouse cursor was when the right mouse
+button was initially clicked to bring up the menu. Gas Change events involve
+a selection of which gas is being switched to, the list of choices being
+based on the available gases defined in the Equipment Tab. Set-point change
+events open a dialog allowing to choose the next set-point value. As in the
+planner, a set-point value of zero indicates the diver is breathing from an
+open circuit system while any non-zero value indicates the use of a closed
+circuit rebreather (CCR). By right-clicking while over an existing marker a
+menu appears, adding options to allow deletion of the marker or to allow all
+markers of that type to be hidden. Hidden events can be restored to view by
+selecting Unhide all events from the context menu.
+
+=== The *Information Box*
+
+The Information box displays a large range of information pertaining to the
+dive profile. Normally the Information Box is located to the top left of the
+*Dive Profile* panel. If the mouse points outside of the *Dive Profile*
+panel, then only the top line of the Information Box is visible (see
+left-hand part of figure (*A*) below). The Information Box can be moved
+around in the *Dive Profile* panel by click-dragging it with the mouse so
+that it is not obstructing important detail. The position of the Information
+Box is saved and used again during subsequent dive analyses.
+
+image::images/InfoBox2.jpg["Figure: Information Box", align="center"]
+
+The moment the mouse points inside the *Dive Profile* panel, the information
+box expands and shows many data items. In this situation, the data reflect
+the time point along the dive profile indicated by the mouse cursor (see
+right-hand part of figure (*B*) above where the Information Box reflects the
+situation at the position of the cursor [arrow] in that image). Therefore,
+moving the cursor in the horizontal direction allows the Information Box to
+show information for any point along the dive profile. In this mode, the
+Information Box gives extensive statistics about depth, gas and ceiling
+characteristics of the particular dive. These include: Time period into the
+dive (indicated by a @), depth, cylinder pressure (P), temperature,
+ascent/descent rate, surface air consumption (SAC), oxygen partial pressure,
+maximum operating depth, equivalent air depth (EAD), equivalent narcotic
+depth (END), equivalent air density depth (EADD), decompression requirements
+at that instant in time (Deco), time to surface (TTS), the calculated
+ceiling, as well as the calculated ceiling for several Bühlmann tissue
+compartments.
+
+The user has control over the display of several statistics, represented as
+four buttons on the left of the profile panel. These are:
+
+[icon="images/icons/MOD.jpg"]
+[NOTE]
+Clicking this button causes the Information Box to display the *Maximum
+Operating Depth (MOD)* of the dive, given the gas mixture used. MOD is
+dependent on the oxygen concentration in the breathing gas. For air (21%
+oxygen) it is around 57 m. Below the MOD there is a markedly increased risk
+of exposure to the dangers associated with oxygen toxicity.
+
+[icon="images/icons/NDL.jpg"]
+[NOTE]
+Clicking this button causes the Information Box to display the *No-deco
+Limit (NDL)* or the *Total Time to Surface (TTS)*. NDL is the time duration
+that a diver can continue with a dive, given the present depth, that does
+not require decompression (that is, before an ascent ceiling appears). Once
+one has exceeded the NDL and decompression is required (that is, there is an
+ascent ceiling above the diver, then TTS gives the number of minutes
+required before the diver can surface. TTS includes ascent time as well as
+decompression time.
+
+[icon="images/icons/SAC.jpg"]
+[NOTE]
+Clicking this button causes the Information Box to display the *Surface Air
+Consumption (SAC)*. SAC is an indication of the surface-normalised
+respiration rate of a diver. The value of SAC is less than the real
+respiration rate because a diver at 10m uses breathing gas at a rate roughly
+double that of the equivalent rate at the surface. SAC gives an indication
+of breathing gas consumption rate independent of the depth of the dive so
+that the respiratory rates of different dives can be compared. The units for
+SAC is litres/min or cub ft/min.
+
+[icon="images/icons/EAD.jpg"]
+[NOTE]
+Clicking this button displays the *Equivalent Air Depth (EAD)* for nitrox
+dives as well as the *Equivalent Narcotic Depth (END)* for trimix
+dives. These are numbers of importance to divers who use breathing gases
+other than air. Their values are dependent on the composition of the
+breathing gas. The EAD is the depth of a hypothetical air dive that has the
+same partial pressure of nitrogen as the current depth of the nitrox dive at
+hand. A nitrox dive leads to the same decompression obligation as an air
+dive to the depth equalling the EAD. The END is the depth of a hypothetical
+air dive that has the same sum of partial pressures of the narcotic gases
+nitrogen and oxygen as the current trimix dive. A trimix diver can expect
+the same narcotic effect as a diver breathing air diving at a depth
+equalling the END.
+
+Figure (*B*) above shows an information box with a nearly complete set of
+data.
+
+[[S_gas_pressure_graph]]
+==== The Gas Pressure Bar Graph
+
+On the left of the *Information Box* is a vertical bar graph indicating the
+pressures of the nitrogen (and other inert gases, e.g. helium, if
+applicable) that the diver was inhaling _at a particular instant during the
+dive_, indicated by the position of the cursor on the *Dive Profile*. The
+drawing on the left below indicates the meaning of the different parts of
+the Gas Pressure Bar Graph.
+
+image::images/GasPressureBarGraph.jpg["FIGURE:Gas Pressure bar Graph", align="center"]
+
+The light green area indicates the total gas, with the top margin of the
+light green area indicating the total gas pressure inhaled by the diver and
+measured from the bottom of the graph to the top of the light green
+area. This pressure has a _relative_ value in the graph and does not
+indicate absolute pressure.
+
+The horizontal black line underneath the light green margin indicates the
+equilibrium pressure of the inert gases inhaled by the diver, usually
+nitrogen. In the case of trimix, it is the pressures of nitrogen and helium
+combined. In this example, the user is diving with EAN32, so the inert gas
+pressure is 68% of the distance from the bottom of the graph to the total
+gas pressure value.
+
+The dark green area at the bottom of the graph represents the pressures of
+inert gas in each of the 16 tissue compartments, following the Bühlmann
+algorithm, the fast tissues being on the left hand side.
+
+The top black horizontal line indicates the gradient factor that applies to
+the depth of the diver at the particular point on the *Dive Profile*. The
+appropriate gradient factor is an interpolation between the FGLow and GFHigh
+values specified in the Graph tab of the *Preferences Panel* of
+*Subsurface*.
+
+The bottom margin of the red area in the graph indicates the Bühlman-derived
+M-value, that is the pressure value of inert gases at which bubble formation
+is expected to be severe, resulting in decompression sickness.
+
+These five values are indicated on the left in the graph above. The way the
+Gas Pressure Bar Graph changes during a dive is indicated on the right hand
+side of the above figure for a diver using EAN32.
+
+Graph *A* indicates the situation at the start of a dive with diver at the
+surface. The pressures in all the tissue compartments are still at the
+equilibrium pressure because no diving has taken place.
+
+Graph *B* indicates the situation after a descent to 30 meters. Few of the
+tissue compartments have had time to respond to the descent, their gas
+pressures being far below the equilibrium gas pressure.
+
+Graph *C* represents the pressures after 30 minutes at 30 m. The fast
+compartments have attained equilibrium (i.e. they have reached the hight of
+the black line indicating the equilibrium pressure). The slower compartments
+(towards the right) have not reached equilibrium and are in the process of
+slowly increasing in pressure.
+
+Graph *D* shows the pressures after ascent to a depth of 4.5 meters. Since,
+during ascent, the total inhaled gas pressure has decreased strongly from 4
+bar to 1.45 bar, the pressures in the different tissue compartments now
+exceed that of the total gas pressure and approaches the gradient factor
+value (i.e. the top black horizontal line). Further ascent will result in
+exceeding the gradient factor value (GFHigh), endangering the diver.
+
+Graph *E* indicates the situation after remaining at 4.5 meters for 10
+minutes. The fast compartments have decreased in pressure. As expected, the
+pressures in the slow compartments have not changed much. The pressures in
+the fast compartments do not approach the GFHigh value any more and the
+diver is safer than in the situation indicated in graph *D*.
+
+
+
+== Organising the logbook (Manipulating groups of dives)
+
+=== The Dive List context menu
+
+Many actions within _Subsurface_ are dependent on a context menu used mostly
+to manipulate groups of dives. The context menu is found by selecting a dive
+or a group of dives and then right-clicking.
+
+image::images/ContextMenu.jpg["Figure: Context Menu", align="center"]
+
+The context menu is used in many manipulations described below.
+
+==== Customising the information showed in the *Dive List* panel
+
+image::images/DiveListOptions.jpg["Example: Dive list info options", align="center"]
+
+The default information in the *Dive List* includes, for each dive,
+Dive_number, Date, Rating, Dive_depth, Dive_duration and Dive_location. This
+information can be controlled and changed by right-clicking on the header
+bar of the *Dive List*. For instance, a right-click on the 'Date' header
+brings up a list of items that can be shown in the dive list (see
+above). Select an item to be shown in the *Dive List* or to be deleted from
+the dive list, and the list is immediately updated accordingly. Preferences
+for information shown in the *Dive List* is saved and used when _Subsurface_
+is re-opened.
+
+==== Selecting dives from a particular dive site
+
+Many divers have long dive lists and it may be difficult to locate all the
+dives at a particular site. By pressing _Ctl-F_ on the keyboard, a text box
+is opened at the top left hand of the *Dive List*. Type the name of a dive
+site in this text box and the *Dive List* is immediately filtered to show
+only the dives for that site.
+
+[[S_Renumber]]
+=== Renumbering the dives
+
+Dives are normally numbered incrementally from non-recent dives (low
+sequence numbers) to recent dives (having the highest sequence numbers). The
+numbering of the dives is not always consistent. For instance, when
+non-recent dives are added to the dive list the numbering does not
+automatically follow on because of the dives that are more recent in
+date/time than the newly-added dive with an older date/time. Therefore, one
+may sometimes need to renumber the dives. This is performed by selecting
+(from the Main Menu) _Log -> Renumber_. Users are given a choice with
+respect to the lowest sequence number to be used. Completing this operation
+results in new sequence numbers (based on date/time) for the dives in the
+*Dive List* panel.
+
+[[S_Group]]
+=== Grouping dives into trips and manipulating trips
+
+For regular divers, the dive list can rapidly become very long. _Subsurface_
+can group dives into _trips_. It performs this by grouping dives that have
+date/times that are not separated in time by more than two days, thus
+creating a single heading for each diving trip represented in the dive
+log. Below is an ungrouped dive list (*A*, on the left) as well as the
+corresponding grouped dive list comprising five dive trips (*B*, on the
+right):
+
+image::images/Group2.jpg["Figure: Grouping dives", align="center"]
+
+Grouping into trips allows a rapid way of accessing individual dives without
+having to scan a long lists of dives. In order to group the dives in a dive
+list, (from the Main Menu) users must select _Log -> Autogroup_. The *Dive
+List* panel now shows only the titles for the trips.
+
+==== Editing the title and associated information for a particular trip
+
+Normally, in the dive list, minimal information is included in the trip
+title. More information about a trip can be added by selecting its trip
+title from the *Dive List*. This shows a *Trip Notes* tab in the *Dive
+Notes* panel. Here users can add or edit information about the date/time,
+the trip location and any other general comments about the trip as a whole
+(e.g. the dive company that was dived with, the general weather and surface
+conditions during the trip, etc.). After entering this information, users
+should select *Save* from the buttons at the top right of the *Trip Notes*
+tab. The trip title in the *Dive List* panel should now reflect some of the
+edited information.
+
+==== Viewing the dives during a particular trip
+
+Once the dives have been grouped into trips, users can expand one or more
+trips by clicking the arrow-head on the left of each trip title. This
+expands the selected trip, revealing the individual dives performed during
+the trip.
+
+==== Collapsing or expanding dive information for different trips
+
+If a user right-clicks after selecting a particular trip in the dive list,
+the resulting context menu allows several possibilities to expand or
+collapse dives within trips. This includes expanding all trips, collapsing
+all trips and collapsing all trips except the selected one.
+
+==== Merging dives from more than one trip into a single trip
+
+By right-clicking on a selected trip title in the *Dive List* panel, a
+context menu shows up that allows the merging of trips by either merging of
+the selected trip with the trip below or with the trip above.
+
+==== Splitting a single trip into more than one trip
+
+If a trip includes five dives, the user can split this trip into two trips
+(trip 1: top 3 dives; trip 2: bottom 2 dives) by selecting and
+right-clicking the top three dives. The resulting context menu allows the
+user to create a new trip by choosing the option *Create new trip
+above*. The top three dives are then grouped into a separate trip. The
+figures below shows the selection and context menu on the left (A) and the
+completed action on the right (B):
+
+image::images/SplitDive3a.jpg["FIGURE: Split a trip into 2 trips", align="center"]
+
+=== Manipulating single dives
+
+==== Delete a dive from the dive log
+
+Dives can be permanently deleted from the dive log by selecting and
+right-clicking them to bring up the context menu, and then selecting *Delete
+dive(s)*. Typically this would apply to a case where a user wishes to delete
+workshop calibration dives of the dive computer or dives of extremely short
+duration.
+
+==== Unlink a dive from a trip
+
+Users can unlink dives from the trip to which they belong. In order to do
+this, select and right-click the relevant dives to bring up the context
+menu. Then select the option *Remove dive(s) from trip*. The dive(s) now
+appear immediately above the trip to which they belonged.
+
+==== Add a dive to the trip immediately above
+
+Selected dives can be moved from the trip to which they belong and placed
+within the trip immediately above the currently active trip. To do this,
+select and right-click the dive(s) to bring up the context menu, and then
+select *Add dive(s) to trip immediately above*.
+
+==== Shift the start time of dive(s)
+
+Sometimes it is necessary to adjust the start time of a dive. This may apply
+to situations where dives are performed in different time zones or when the
+dive computer has an erroneous time. In order to do this, user must select
+and right-click the dive(s) to be adjusted. This action brings up the
+context menu on which the *Shift times* option should be selected. User must
+then specify the time (in hours and minutes) by which the dives should be
+adjusted and click on the option indicating whether the time adjustment
+should be forwards or backwards.
+
+==== Merge dives into a single dive
+
+Sometimes a dive is briefly interrupted, e.g. if a diver returns to the
+surface for a few minutes, resulting in two or more dives being recorded by
+the dive computer and appearing as different dives in the *Dive List*
+panel. Users can merge these dives onto a single dive by selecting the
+appropriate dives, right-clicking them to bring up the context menu and then
+selecting *Merge selected dives*. It may be necessary to edit the dive
+information in the *Dive Notes* panel to reflect events or conditions that
+apply to the merged dive. The figure below shows the depth profile of two
+such dives that were merged:
+
+image::images/MergedDive.png["Example: Merged dive", align="center"]
+
+[[S_Filter]]
+=== Filtering the dive list
+
+The dives in the *Dive List* panel can be filtered, that is, one can select
+only some of the dives based on their attributes, e.g. dive tags, dive site,
+dive master, buddy or protective clothing. For instance, filtering allows
+one to list the deep dives at a particular dive site, or otherwise the cave
+dives with a particular buddy.
+
+To open the filter, select _Log -> Filter divelist_ from the main menu. This
+opens the _Filter Panel_ at the top of the _Subsurface_ window. Three icons
+are located at the top right hand of the filter panel. The _Filter Panel_
+can be reset (i.e. all current filters cleared) by selecting the *+*. The
+_Filter Panel_ may also be minimised by selecting the middle icon. When
+minimised, only these three icons are shown. The panel can be maximised by
+clicking the icon that minimised the panel. The filter may also be reset and
+closed by selecting the button with the flag. An example of the _Filter
+Panel_ is shown in the figure below.
+
+
+image::images/Filterpanel.jpg["Figure: Filter panel", align="center"]
+
+
+Four filter criteria may be used to filter the dive list: dive tags, person
+(buddy / dive master), dive site and dive suit, each of which is represented
+by a check list with check boxes. Above each check list is a second-level
+filter tool, allowing the listing of only some of the attributes within that
+check list. For instance, typing "_ca_" in the filter textbox above the tags
+check list results in the tags check list being reduced to "_cave_" and
+"_cavern_". Filtering of the check list enables the rapid finding of search
+terms for filtering the dive list.
+
+To activate filtering of the dive list, the check box of at least one item
+in one of the four check lists needs to be checked. The dive list is then
+shortened to include only the dives that pertain to the selection criteria
+specified in the check lists. The four check lists work as a filter with
+_AND_ operators, Subsurface filters therefore for _cave_ as a tag AND _Joe
+Smith_ as a buddy; but the filters within a category are inclusive -
+filtering for _cave_ and _boat_ shows those dives that have either one or
+both of these tags.
+
+[[S_ExportLog]]
+== Exporting the dive log or parts of the dive log
+
+The export function can be reached by selecting _File -> Export_, which
+brings up the Export dialog. This dialog always gives two options: save ALL
+dives, or save only the dives selected in *Dive List* panel of
+_Subsurface_. Click the appropriate radio button (see images below).
+
+image::images/Export.jpg["Figure: Export dialog", align="center"]
+
+A dive log or part of it can be saved in three formats:
+
+* _Subsurface XML_ format. This is the native format used by _Subsurface_.
+
+Universal Dive Data Format (_UDDF_). Refer to _http://uddf.org_ for more
+information. UDDF is a generic format that enables communication among many
+dive computers and computer programs.
+
+_Divelogs.de_, an Internet-based dive log repository. In order to upload to
+_Divelogs.de_, one needs a user-ID as well as a password for
+_Divelogs.de_. Log into _http://en.divelogs.de_ and subscribe to this
+service in order to upload dive log data from _Subsurface_.
+
+_CSV_ format, that includes the most critical information of the dive
+profile. Included information of a dive is: dive number, date, time,
+duration, depth, temperature and pressure.
+
+_Worldmap_ format, an HTML file with a world map upon which each dive and
+some information about it are indicated. This map is not editable.
+
+_HTML_ format, in which the dive(s) are stored in HTML files, readable with
+an Internet browser. Most modern web browsers are supported, but JavaScript
+must be enabled. This generated HTML file is not intended to be edited by
+the users. The HTML dive log contains most of the information and also
+contains a search option to search the dive log. HTML export is specified on
+the second tab of the Export dialog (image *B* above).
+
+* _General Settings_, under the HTML tab, provides the following options:
+
+** Subsurface Numbers: if this option is checked, the dive(s) are exported with the
+numbers associated with them in Subsurface, Otherwise the dive(s) will be numbered
+starting from 1.
+** Export Yearly Statistics: if this option is checked, a yearly statistics table will
+be attached with the HTML exports.
+** Export List only: a list of dives will only be exported and the detailed dive
+information will not be available.
+
+Under _Style Options_ some style-related options are available like font
+size and theme.
+
+Export to other formats can be achieved through third party facilities, for
+instance _www.divelogs.de_.
+
+[[S_Cloud_access]]
+== Keeping a _Subsurface_ dive log in the Cloud
+
+For each diver, dive log information is highly important. Not only is it a
+record of diving activities for one's own pleasure, but it is important
+information required for admission to further training courses or
+(sometimes) even diving sites. The security of the dive log is therefore
+critical. In order to have a dive log that is resistant to failure of a home
+computer hard drive, loss or theft of equipment, the Cloud is an obvious
+solution. This also has the added benefit that one can access one's dive log
+from anywhere in the world without having to carry it with oneself. For this
+reason, facilities such as _divelogs.de_ and _Diving Log_ offer facilities
+to store dive log information on the Internet. Although _Subsurface_ does
+not offer integrated Cloud storage of dive logs, it is simple to achieve
+this using several of the existing facilities on the Internet.
+
+For instance http://www.dropbox.com/[_Dropbox_] offers a free application
+that allows files on the Dropbox servers to be seen as a local folder on
+one's desktop computer.
+
+image::images/Cloud.jpg["FIGURE: Dropbox folder", align="center"]
+
+The _Dropbox_ program creates a copy of the _Dropbox_ Internet Cloud content
+on one's desktop computer. When the computer is connected to the Internet,
+the Internet content is automatically updated. Therefore both the _Open_ and
+_Save_ of dive logs are done using the local copy of the dive log in the
+local _Dropbox_ folder, so there's no need for a direct internet
+connection. If the local copy is modified, e.g. by adding a dive, the remote
+copy in the _Dropbox_ server in the Cloud will be automatically updated
+whenever Internet access is available.
+
+In this way a dive log in one's _Dropbox_ folder can be accessed seamlessly
+from the Internet and can be accessed from any place with Internet
+access. Currently there are no costs involved for this service. Dropbox
+(Windows, Mac and Linux) can be installed by accessing the
+http://www.dropbox.com/install[_Install Page on the Dropbox website_]
+Alternatively one can use _Dropbox_ as a mechanism to backup one's dive
+log. To Store a dive log in the Cloud, select _File->Save as_ from the
+_Subsurface_ main menu, navigate to the _Dropbox_ folder and select the
+_Save_ button. To access the dive log in the Cloud, select _File->Open
+Logbook_ from the _Subsurface_ main menu and navigate to the dive log file
+in the _Dropbox_ folder and select the _Open_ button.
+
+Several paid services exist on the Internet (e.g. Google, Amazon) where the
+same process could be used for the Cloud-based storage of dive logs.
+
+
+[[S_PrintDivelog]]
+== Printing a dive log
+
+_Subsurface_ provides a simple interface to print a whole dive log or only a
+few selected dives, including dive profiles and other contextual
+information.
+
+Before printing, two decisions are required:
+
+Should the whole dive log be printed or only part of it? If only part of the
+dive log is required, then the user must select the required dives from the
+*Dive List* panel.
+What gas partial pressure information is required on the dive profile? Users
+should select the appropriate toggle-buttons on the button bar to the left
+of the Dive Profile panel.
+
+Now the print options should be selected to match the user's needs. To do
+this, user should select _File->Print_ from the Main menu. The following
+dialogue appears (see the image on the left [A], below).
+
+image::images/PrintDiveLog.jpg["FIGURE: Print dialogue", align="center"]
+
+Under _Print type_ users need to select one of three options:
+
+- Print the complete Dive List: to do this, _Table Print_ should be selected.
+Print the selected dives (dive profiles and all other information) at 6
+dives per printed page: to do this, users should select _6 dives per page_.
+Print the selected dives (dive profiles and all other information) at 2
+dives per printed page: to do this, users should select _2 dives per page_.
+Print the selected dives (dive profiles and all other information) at 1 dive
+per printed page: to do this, users should select _1 dive per page_.
+
+Under _Print options_ users need to select:
+
+Printing only the dives that have been selected from the dive list prior to
+activating the print dialogue, achieved by checking the box _Print only
+selected dives_.
+- Printing in colour, achieved by checking the box with _Print in colour_.
+
+The _Ordering_ affects the layout of the page (or part of it) for each
+dive. The dive profile could be printed at the top of each dive, with the
+textual information underneath, or it could be printed with the textual
+information at the top with the dive profile underneath. Users should select
+the appropriate option in the print dialogue. See the image below which has
+a layout with text below the dive profile.
+
+Users can _Preview_ the printed page by selecting the _Preview_ button on
+the dialogue. After preview, changes to the options in the print dialogue
+can be made, resulting in a layout that fits personal taste.
+
+Next, select the _Print_ button in the dialogue. This activates the regular
+print dialogue used by the user operating system (image [*B*] in the middle,
+above), allowing them to choose a printer and to set its properties (image
+[*C*] on the right, above). It is important to set the print resolution of
+the printer to an appropriate value by changing the printer
+properties. Finally, one can print the dives. Below is a (rather small)
+example of the output for one particular page.
+
+image::images/Printpreview.jpg["FIGURE: Print preview page", align="center"]
+
+
+[[S_Preferences]]
+== Setting user _Preferences_ for _Subsurface_
+
+There are several settings within _Subsurface_ that the user can
+specify. These are found when selecting _File->Preferences_. The settings
+are performed in five groups: *Defaults*, *Units*, *Graph*, *Language* and
+*Network*. All five sections operate on the same principles: the user must
+specify the settings that are to be changed, then these changes are saved
+using the *Apply* button. After applying all the new settings users can then
+leave the settings panel by selecting *OK*.
+
+=== Defaults
+
+There are several settings in the *Defaults* panel:
+
+image::images/Pref1.jpg["FIGURE: Preferences defaults page", align="center"]
+
+ ** *Lists and tables*: Here one can specify the font type and font size of the
+*Dive Table* panel. By decreasing the font size of the *Dive Table*, users can see more dives on a screen.
+
+ ** *Dives*: For the _Default Dive File_ one need to specify the directory and
+file name of one's
+electronic dive log book. This is a file with filename extension .xml. When
+launched, _Subsurface_ will automatically load the specified dive log book.
+
+ ** *Display invalid*: Dives can be marked as invalid (when a user wishes to hide
+dives that he/she don't consider valid dives, e.g. pool dives, but still want to
+keep them in the dive log). This controls whether those dives are displayed in
+the dive list.
+
+ ** *Default cylinder*: Here users can specify the default cylinder listed in
+the *Equipment* tab of the *Dive Notes* panel.
+
+ ** *Animations*: Some actions in showing the dive profile are performed using
+animations. For instance, the axis values for depth and time change from dive to
+dive. When viewing a different dive, these changes in axis characteristics do not
+happen instantaneously, but are animated. The _Speed_ of animations can be controlled
+by setting this slider
+with faster animation speed to the left, with a 0 value representing no animation
+at all.
+
+ ** *Subsurface web service*: When one subscribes to the <<S_Companion,Subsurface web service>>, a very
+long and hard-to-remember userID is issued. This is the place to save that userID. By
+checking the option _Save User ID locally?_, one ensures that a local copy of that userID
+is saved.
+
+ ** *Clear all settings*: As indicated in the button below this heading, all settings are
+cleared and set to default values.
+
+=== Units
+image::images/Pref2.jpg["FIGURE: Preferences Units page", align="center"]
+
+Here user can choose between metric and imperial units of depth, pressure,
+volume, temperature and mass. By selecting the Metric or Imperial radio
+button at the top, users can specify that all units are in the chosen
+measurement system. Alternatively, if one selects the *Personalise* radio
+button, units can be selected independently, with some units in the metric
+system and others in imperial.
+
+=== Graph
+image::images/Pref3.jpg["FIGURE: Preferences Graph page", align="center"]
+
+[[S_GradientFactors]]
+This panel allows two type of selections:
+
+*Show*: Here users can specify the amount of information shown as part of
+the dive profile:
+** Thresholds: _Subsurface_ can display the nitrogen, oxygen and the helium partial pressures during
+the dive. These are enabled using the toolbar on the left hand side of the *Dive Profile*
+panel. For each of these graphs users can specify a threshold value on the right-hand side of the
+Preferences panel. If any of the graphs go above this threshold level, the graph is
+highlighted in red, indicating that the threshold has been exceeded.
+
+** _Draw dive computer reported ceiling red_: This checkbox allows exactly what it says.
+Not all dive computers report ceiling values. If the dive computer does report it, it may differ
+from the ceilings calculated by _Subsurface_. This is because of the different algorithms and gradient factors available for calculating ceilings, as well as the dynamic way that a
+dive computer can calculate ceilings during a dive.
+
+** _Show unused cylinders in Equipment Tab_: This checkbox allows display of information about unused cylinders when viewing the *Equipment Tab*. Conversely, if this box is not checked, and any cylinders entered using the *Equipment Tab* are not used (e.g. there was no gas switch to such a cylinder), then these cylinders are omitted from that list.
+
+** _Show average depth_: Activating this checkbox causes _Subsurface_ to draw a red line across
+the dive profile, indicating the mean depth of the dive.
+
+* *Misc*:
+
+** Gradient Factors:* Here users can set the _gradient factors_ used while diving. GF_Low is
+the gradient factor at depth and GF_High is used just below the surface.
+At intermediate depths gradient factors between GF_Low and GF_High are used.
+Gradient factors add conservatism to the nitrogen exposure during a dive, in a
+similar way that many dive computers have a conservatism setting. The lower
+the value of a gradient factor, the more conservative the calculations are with
+respect to nitrogen loading and the deeper the ascent ceilings are. Gradient
+factors of 20/60 are considered conservative and values of 60/90 are considered
+harsh. Checking *GFLow at max depth* box causes GF_Low to be used at the
+deepest depth of a dive. If this box is not checked, GF_Low is applied at
+all depths deeper than the first deco stop. For more information see:
+
+ ** http://www.tek-dive.com/portal/upload/M-Values.pdf[Understanding M-values by Erik Baker, _Immersed_ Vol. 3, No. 3.]
+
+ ** link:http://www.rebreatherworld.com/general-and-new-to-rebreather-articles/5037-gradient-factors-for-dummies.html[Gradient factors for dummies, by Kevin Watts]
+
+=== Language
+Choose a language that _Subsurface_ will use.
+
+image::images/Pref4.jpg["FIGURE: Preferences Language page", align="center"]
+
+A checkbox allows one to use the _System Default_ language which in most
+cases will be the correct setting; with this _Subsurface_ simply runs in the
+same language / country settings as the underlying OS. If this is for some
+reason undesirable users can uncheck this checkbox and pick a language /
+country combination from the list of included localizations. The _Filter_
+text box allows one to list similar languages. For instance there are
+several system variants of English or French. This particular preference
+requires a restart of _Subsurface_ to take effect.
+
+=== Network
+This panel facilitates communication between _Subsurface_ and data sources
+on the Internet.
+
+image::images/Pref5.jpg["FIGURE: Preferences Network page", align="center"]
+
+This is important, for instance, when _Subsurface_ needs to communicate with
+Internet services such as the <<S_Companion,_Subsurface Companion app_>> or
+data export/import from _Divelogs.de_. These Internet requirements are
+determined by one's type of connection to the Internet and by the Internet
+Service Provider (ISP) used. One's ISP should provide the appropriate
+information. If a proxy server is used for Internet access, the appropriate
+information needs to be provided here. The type of proxy needs to be
+selected from the dropdown list. after which the IP address of the host and
+the appropriate port number should be provided. If the proxy server uses
+authentication, the appropriate userID and password also needs to be
+provided so that _Subsurface_ can automatically pass through the proxy
+server to access the Internet.
+
+[[S_DivePlanner]]
+== The _Subsurface_ dive planner
+Dive planning is an advanced feature of _Subsurface_, accessible by
+selecting _Log -> Plan Dive_ from the main menu. It allows calculation of
+nitrogen load during a dive by using the Bühlmann ZH-L16 algorithm with the
+addition of gradient factors as implemented by Erik Baker.
+
+****
+[icon="images/icons/warning2.png"]
+[WARNING]
+
+The _Subsurface_ dive planner IS CURRENTLY EXPERIMENTAL and assumes the user
+is already familiar with the _Subsurface_ user interface. It is explicitly
+used under the following conditions:
+
+The user is conversant with dive planning and has the necessary training to
+perform dive planning.
+- The user plans dives within his/her certification limits.
+Dive planning makes large assumptions about the characteristics of the
+_average person_ and cannot compensate for individual physiology or health
+or personal history or life style characteristics.
+- The safety of a dive plan depends heavily on the way in which the planner is
+ used.
+- The user is familiar with the user interface of _Subsurface_.
+A user who is not absolutely sure about any of the above requirements should
+not use this feature.
+****
+
+=== The _Subsurface_ dive planner screen
+
+Like the _Subsurface_ dive log, the planner screen is divided into several
+sections (see image below). The *setup* parameters for a dive are entered
+into the several sections on the left hand side of the screen. The setup is
+divided into several sections: Available Gases, Rates, Planning, Gas Options
+and Dive Notes.
+
+At the top right hand is a green *design panel* upon which the profile of
+the dive can be manipulated directly by dragging and clicking as explained
+below. This feature makes the _Subsurface_ dive planner unique in ease of
+use.
+
+At the bottom right is a text panel with a heading of _Dive Plan
+Details_. This is where the details of the dive plan are provided in a way
+that can easily be copied to other software. This is also where any warning
+messages about the dive plan are printed.
+
+image::images/PlannerWindow1.jpg["FIGURE: Dive planner startup window", align="center"]
+
+
+=== Initiating dive planning
+
+The dive planner comprises two parts: *constructing a dive plan* and
+*evaluating* that dive plan. To perform dive planning, perform these steps:
+
+Clear the existing dive log by creating a new planning log. This is achieved
+by selecting _File -> New logbook_ from the main menu. This way, dive plans
+are kept separate from the existing dive log of completed dives.
+
+In the top left-hand area of the screen, ensure that the constant dive
+parameters are appropriate. These are: Start date and time of the dive,
+Atmospheric Pressure and Altitude above sea level of the dive site. The
+atmospheric pressure can also be entered as an altitude in metres, assuming
+an atmospheric pressure of 1.013 bar.
+
+In the table labelled _Available Gases_, add the information of the
+cylinders to be used as well as the gas composition within that
+cylinder. This is done in a similar way as for <<S_CylinderData,providing
+cylinder data for dive logs>>. Choose the cylinder type by double clicking
+the cylinder type and using the dropdown list, then specify the work
+pressure of this cylinder. By leaving the oxygen concentration (O2%) filed
+empty, the dive gas is assumed to be air. Otherwise enter the oxygen and/or
+helium concentration in the boxes provided in this dialogue. Add additional
+cylinders by using the "+" icon to the top righthand of the dialogue.
+
+The dialogue indicating _Dive Planner Points_ is usually not used at this
+stage of the dive planning.
+
+=== Managing nitrogen, oxygen and gas consumption
+
+The planning is performed in three stages:
+
+*a) Nitrogen management*: This is performed by specifying the rates for descent and ascent,
+as well as the gradient factors (GFLow and GFHigh) under the headings _Rates_ and _Planning_
+to the bottom left of the planning screen. Initially, the GFHigh and GFLow values in the _Preferences_
+panel of _Subsurface_ is used. If these are changed within the planner (see _Gas Options_ within
+the planner), the new values are
+used without changing the original specifications in the _Preferences_. Gradient Factor settings strongly affect the calculated ceilings and their depths.
+A very low GFLow value brings about decompression stops early on during the dive.
+ ** For more information about Gradient factors, see the section on xref:S_GradientFactors[Gradient Factor Preference settings].
+For more information external to this manual see:
+
+ *** link:http://www.tek-dive.com/portal/upload/M-Values.pdf[Understanding M-values by Erik Baker, _Immersed_ Vol. 3, No. 3.]
+ *** link:http://www.rebreatherworld.com/general-and-new-to-rebreather-articles/5037-gradient-factors-for-dummies.html[Gradient factors for dummies, by Kevin Watts]
+ *** link:http://www.amazon.com/Deco-Divers-Decompression-Theory-Physiology/dp/1905492073/ref=sr_1_1?s=books&ie=UTF8&qid=1403932320&sr=1-1&keywords=deco+for+divers[_Deco for Divers_, by Mark Powell (2008). Aquapress] Southend-on-Sea, UK. ISBN 10: 1-905492-07-3.
+An excellent non-technical review.
+
+ ** The ascent rate is critical for nitrogen off-gassing at the end of the dive and is specified
+for several depth ranges, utilising the average (or mean) depth as a yardstick. The mean depth
+of the dive plan is indicated on the dive profile in the green panel of the dive planner. Ascent rates
+at deeper levels are often in the range of 8-12 m/min, while ascent rates near the surface are
+often in the range of 4-9 m/min. The descent rate is also specified. If the option _Drop to first depth_
+is activated, then the descent phase of the planned dive will be at the maximal descent rate specified
+in the _Rates_ section of the dive setup.
+
+
+*b) Oxygen management*: In the *Gas Options* part of the dive specification, the maximum partial
+pressure for oxygen needs to be specified for the
+bottom part of the dive (_bottom po2_) as well as for the decompression part of the dive (_deco po2_).
+The most commonly
+used values are 1.4 bar for the bottom part of the dive and 1.6 bar for any decompression
+stages. Normally, a partial pressure of 1.6 bar is not exceeded. PO2 settings and the depth at which switching to a gas takes place can also be edited in the
+_Available Gases_ dialog. Normally the planner decides on switching to a new gas when, during
+ascent, the partial pressure of the new gas has decreased to 1.6 bar.
+
+
+*c) Gas management*: One needs keep within the limits of the amount of gas contained in the dive
+cylinder(s), allowing for an appropriate margin for safe return to the surface, possibly
+sharing with a buddy. Under the _Gas Options_ heading, specify the best (but conservative) estimate
+of your surface-equivalent air consumption (SAC, also termed RMV) in
+litres/min (for the time being, only SI units are supported). Specify the SAC during the
+bottom part of the dive (_bottom SAC_) as well as during the decompression or safety stops of the
+dive (_deco SAC_). Values of 20-30 l/min are common. For good gas management, a thumbsuck guess
+is not sufficient and one needs to
+monitor one's gas consumption on a regular basis, dependent on different dive conditions and/or equipment.
+The planner will calculate the total volume of gas used during the dive and will issue a warning
+if one exceeds the total amount of gas available. Good practice demands that one does not dive to
+the limit of the gas supply but that an appropriate reserve is kept for unforeseen circumstances.
+For technical diving, this reserve can be up to 66% of the total available gas.
+
+Now (at last) one can start the detailed time-depth planning of the
+dive. _Subsurface_ offers a unique graphical interface for performing this
+part of the planning. The mechanics of doing this is similar to
+hand-entering a dive profile in the dive log part of _Subsurface_. Upon
+activating the planner, a default dive of depth 15 m for 40 min is offered
+in the green design surface to the top right hand of the screen. The white
+dots (waypoints) on the profile can be dragged with a mouse. Create more
+waypoints by double-clicking on the profile line and ensuring that the
+profile reflects the intended dive. Drag the waypoints to represent the
+depth and duration of the dive. If any of the management limits (for
+nitrogen, oxygen or gas) is exceeded, the surface above the dive profile
+changes from BLUE to RED.
+
+Each waypoint on the dive profile creates a _Dive Planner Point_ in the
+table on the left of the dive planner panel. Ensure that the _Used Gas_
+value in each row of that table corresponds to one of the gas mixtures
+specified in the table with _Available Gases_ immediately above the Dive
+Planner Points. Add new waypoints until the main features of the dive have
+been completed, e.g. the bottom time segment and deep stops (if these are
+implemented). Leave the remaining waypoints on the ascent to
+_Subsurface_. In most cases _Subsurface_ computes additional way points in
+order to fulfil decompression requirements for that dive. A waypoint can be
+moved by selecting that waypoint and by using the arrow keys. The waypoints
+listed in the _Dive Planner Points_ dialogue can be edited by hand in order
+to obtain a precise presentation of the dive plan. In fact, one can create
+the whole dive profile by editing the _Dive Planner Points_ dialog.
+
+Indicate any changes in gas cylinder used by indicating gas changes as
+explained in the section <<S_CreateProfile,hand-creating a dive
+profile>>. These changes should reflect the cylinders and gas compositions
+defined in the table with _Available Gases_. If two or more gases are used,
+automatic gas switches will be suggested during the ascent to the
+surface. However, these changes can be deleted by right-clicking the gas
+change and by manually creating a gas change by right-clicking on the
+appropriate waypoint.
+
+A non-zero value in the "CC set point" column of the table of dive planner
+points indicates a valid setpoint for oxygen partial pressure and that the
+segment is dived using a closed circuit rebreather (CCR). If the last
+manually entered segment is a CCR segment, the decompression phase is
+computed assuming the diver uses a CCR with the specified set-point. If the
+last segment (however short) is on open circuit (OC, indicated by a zero
+set-point) the decompression is computed in OC mode. The planner only
+considers gas changes in OC mode.
+
+Below is an example of a dive plan to 45m using EAN26, followed by an ascent
+using EAN50 and using the settings as described above.
+
+image::images/DivePlanner2.jpg["FIGURE: Planning a dive: setup", align="center"]
+
+Once the above has been completed, one can save it by clicking the _Save_
+button towards the bottom left of the green design panel. The saved dive
+plan will appear in the *Dive List* panel of _Subsurface_.
+
+=== The dive plan details
+
+On the bottom right of the dive planner, under _Dive Plan Details_, the
+exact details of the dive plan are provided. These details may be modified
+by checking any of the options under the _Dive Notes_ section of the dive
+planner, immediately to the left of the _Dive Plan Details_. If a _Verbatim
+diveplan_ is requested, a detailed sentence-level explanation of the dive
+plan is given. If any of the management specifications have been exceeded
+during the planning, a warning message is printed underneath the dive plan
+information.
+
+If the option _Display segment duration_ is checked, then the duration of
+each depth level is indicated in the _Dive Plan Details_. This duration
+INCLUDES the transition time to get to that level. However, if the _Display
+transition in deco_ option is checked, the transitions are shown separately
+from the segment durations at a particular level.
+
+[[S_Replan]]
+=== Modifying an existing dive plan
+
+Normally, when a dive plan has been saved, it is accessible from the *Dive
+List*, like any other dive log. Within the *Dive List* there is not a way to
+change a saved dive plan. To perform changes to a dive plan, select it on
+the *Dive List*. Then, in the main menu, select _Log -> Re-plan dive_. This
+will open the selected dive plan within the dive planner, allowing changes
+to be made and saved as usual.
+
+In addition there is the option "Save new". This keeps the original planned
+dive and adds a (possibly modified) copy to the dive list. If that copy is
+saved with the same start time as the original, the two dives are considered
+two versions of the same dive and do not influence other each during
+decompression calculation (see next section).
+
+=== Planning for repetitive dives
+
+Repetitive dives can easily be planned if the dates and start times of the
+repetitive dive set is specified appropriately in the top left-hand _Start
+Time_ field. _Subsurface_ calculates the gas loading figures correctly and
+the effect of the first dive is evaluated on later dives.
+
+If one has just completed a long/deep dive and is planning another dive,
+then highlight, in the *Dive List*, the dive that has just been completed
+and then activate the planner. Depending on the start time of the planned
+dive, the planner takes into account the gas loading incurred during the
+completed dive and allows planning within these limitations.
+
+If only a few standard configurations are used (e.g. in GUE), then a
+template dive can be created conforming to one of the configurations. If one
+now wishes to plan a dive using this configuration, just highlight the
+template dive in the *Dive List* and activate the planner: the planner takes
+into account the configuration in the highlighted dive.
+
+=== Printing the dive plan
+
+Selecting the _Print_ button in the planner allows printing of the _Dive
+Plan Details_ for wet notes. Alternatively one can cut and paste the _Dive
+Plan Details_ for inclusion in a text file or word processing document.
+
+Dive plans have many characteristics in common with dive logs (dive profile,
+dive notes, etc). After a dive plan has been saved, the dive details and
+gas calculations are saved in the *Dive Notes* tab. While a dive plan is
+being designed, it can be printed using the _Print_ button in the dive
+planner. This prints the dive details and gas calculations in the _Dive Plan
+Details_ panel of the dive planner. However, after the plan has been saved,
+it is represented in a way very similar to a dive log and the gas
+calculations cannot be accessed in the same way as during the planning
+process. The only way to print the dive plan is to use the _File->Print_
+facility on the main menu in the same way as for dive logs or by copy and
+paste to a word processor.
+
+[[S_Configure]]
+== Configuring a dive computer
+
+_Subsurface_ enables one to configure a dive computer. Currently the
+Heinrichs-Weikamp (OSTC 2, OSTC 3) and Suunto Vyper (Stinger, Mosquito, D3,
+Vyper, Vytec, Cobra, Gekko and Zoop) family of dive computers are
+supported. A large number of settings of these dive computers can be read
+and changed to different values. As a first step, ensure that the
+appropriate hardware driver is installed for the dive computer and that the
+device name of the dive computer is known. See
+<<_appendix_a_operating_system_specific_information_for_importing_dive_information_from_a_dive_computer,APPENDIX
+A>> for information on how to do this.
+
+Once the dive computer is connected to the _Subsurface_ computer, select
+_File->Configure dive computer_ from the _Main Menu_. Provide the
+appropriate device name in the text box at the top of the configuration
+panel that opens and select the appropriate dive computer model from the
+panel on the lefthand (see image below).
+
+image::images/Configure_dc_f20.jpg["FIGURE: Configure dive computer", align="center"]
+
+Using the appropriate buttons on the configuration panel, the following
+actions can be performed:
+
+ - *Retrieve available details*. This loads the existing configuration from the dive computer
+ to _Subsurface_, showing this in the configuration panel.
+ - *Save changes to device*. This changes the configuration of the
+ dive computer to correspond to the information shown in the configuration panel.
+ - *Backup*. This saves the configuration data to a file. _Subsurface_ asks for
+ a file location and file name for the saved information.
+ - *Restore backup*. This loads the information from a backup file and displays it
+ in the configuration panel.
+ - *Update firmware*. If new firmware is available for the dive computer, this is
+ loaded into the dive computer.
+
+== Description of the Subsurface Main Menu items
+
+This section describes the functions and operation of the items in the Main
+Menu of Subsurface. Several of the items below are links to sections of this
+manual dealing with the appropriate operations.
+
+=== File
+<<S_NewLogbook,_New Logbook_>> - Close the currently open dive logbook and
+clear all dive information.
+_Open logbook_ - This opens the file manager in order to select a dive
+logbook to open.
+- _Save_ - Save the dive logbook that is currently open.
+- _Save as_ - Save the current logbook under a different file name.
+- _Close_ - Close the dive logbook that is currently open.
+<<S_ExportLog,_Export_>> - Export the currently open dive logbook (or the
+selected dives in the logbook) to one of several formats.
+- <<S_PrintDivelog,_Print_>> - Print the currently open logbook.
+- <<S_Preferences,_Preferences_>> - Set the _Subsurface_ preferences.
+- <<S_Configure,_Configure dive computer_>> - Edit the configuration of a dive
+ computer.
+- _Quit_ - Quit _Subsurface_.
+
+=== Import
+<<S_ImportDiveComputer,_Import from dive computer_>> - Import dive
+information from a dive computer.
+<<Unified_import,_Import Log Files_>> - Import dive information from a file
+in in a _Subsurface_-compatible format.
+<<S_Companion,_Import GPS data from Subsurface web service_>> - Load GPS
+coordinates from the _Subsurface_ mobile phone app.
+<<S_ImportingDivelogsDe,_Import from Divelogs.de_>> - Import dive
+information from _www.Divelogs.de_.
+
+=== Log
+- <<S_EnterData,_Add Dive_>> - Manually add a new dive to the *Dive List*
+ panel.
+- <<S_DivePlanner,_Plan Dive_>> - This feature allows the planning of dives.
+- <<S_Replan,_Re-plan dive_>> - Edit a dive plan that has been saved into the
+ *Dive List*.
+- <<S_CopyComponents,_Copy dive components_>> - By selecting this option, one
+ can copy information from several fields of a dive log onto the clipboard.
+- _Paste dive components_ - Paste, into the selected dives in the *Dive List*,
+ the information copied using the _Copy dive components_ option.
+<<S_Renumber,_Renumber_>> - Renumber the dives listed in the *Dive List*
+panel.
+<<S_Group,_Auto Group_>> - Group the dives in the *Dive List* panel into
+dive trips.
+- <<S_DeviceNames,_Edit Device Names_>> - Edit the names of dive computers to
+ facilitate your logs.
+- <<S_Filter,_Filter divelist_>> - Select only some dives, based on specific
+ tags or dive criteria.
+
+=== View
+<<S_ViewPanels,_All_>> - View the four main _Subsurface_ panels
+simmultaneously.
+- <<S_ViewPanels,_Dive List_>> - View only the *Dive List* panel.
+- <<S_ViewPanels,_Profile_>> - View only the *Dive Profile* panel.
+- <<S_ViewPanels,_Info_>> - View only the *Dive Notes* panel.
+- <<S_ViewPanels,_Globe_>> - View only the *World Map* panel.
+_Yearly Statistics_ - Display summary statistics about dives during this and
+past years.
+- _Prev DC_ - Switch to previous dive computer.
+- _Next DC_ - Switch to next dive computer.
+- _Full Screen_ - Toggles Full Screen mode.
+
+=== Help
+_About Subsurface_ - Show a panel with the version number of _Subsurface_ as
+well as licensing information.
+_Check for updates_ - Find out whether a newer version of Subsurface is
+available on the http://subsurface-divelog.org/[_Subsurface_ web site].
+- _User Manual_ - Open a window showing this user manual.
+
+
+== APPENDIX A: Operating system specific information for importing dive information from a dive computer.
+
+=== Make sure that the OS has the required drivers installed
+[icon="images/icons/drivers.jpg"]
+[NOTE]
+The operating system of the desktop computer needs the appropriate drivers
+in order to communicate with the dive computer in whichever way the dive
+computer prefers (e.g. bluetooth, USB, infra-red).
+
+ * On Linux users need to have the correct kernel module loaded. Most
+ distributions will do this automatically, so the user does not need to load
+ kernel modules. However, some communication protocols require an additional
+ driver, especially for rarely used technology such as infra-red.
+
+ * On Windows, the OS should offer to download the correct driver once the user
+ connects the dive computer to the USB port and operating system sees the
+ equipment for the first time.
+
+On a Mac users sometimes have to manually hunt for the correct driver. For
+example the correct driver for the Mares Puck devices or any other dive
+computer using a USB-to-serial interface based on the Silicon Labs CP2101 or
+similar chip can be found as _Mac_OSX_VCP_Driver.zip_ at the
+http://www.silabs.com/support/pages/document-library.aspx?p=Interface&f=USB%20Bridges&pn=CP2101[Silicon
+Labs document and software repository].
+
+[[S_HowFindDeviceName]]
+=== How to Find the Device Name for USB devices and set its write permission
+[icon="images/icons/usb.jpg"]
+[NOTE]
+When a user connects the dive computer by using a USB connector, usually
+_Subsurface_ will either propose a drop down list that contains the correct
+device name (or mount point for the Uemis Zurich), or it will disable the
+device select drop down if no device name is needed at all. In the rare
+cases where this doesn't work, here are some suggestions of ways to find out
+what the device name is:
+
+.On Windows:
+
+Simply try COM1, COM2, etc. The drop down list should contain all connected
+COM devices.
+
+.On MacOS:
+
+The drop down box should find all connected dive computers.
+
+.On Linux:
+
+There is a definitive way to find the port:
+
+ - Disconnect the USB cable from the dive computer
+ - Open a terminal
+ - Type the command: 'dmesg' and press enter
+ - Plug in the USB cable of the dive computer
+ - Type the command: 'dmesg' and press enter
+
+A message similar to this one should appear:
+
+ usb 2-1.1: new full speed USB device number 14 using ehci_hcd
+ usbcore: registered new interface driver usbserial
+ USB Serial support registered for generic
+ usbcore: registered new interface driver usbserial_generic
+ usbserial: USB Serial Driver core
+ USB Serial support registered for FTDI USB Serial Device
+ ftdi_sio 2-1.1:1.0: FTDI USB Serial Device converter detected
+ usb 2-1.1: Detected FT232BM
+ usb 2-1.1: Number of endpoints 2
+ usb 2-1.1: Endpoint 1 MaxPacketSize 64
+ usb 2-1.1: Endpoint 2 MaxPacketSize 64
+ usb 2-1.1: Setting MaxPacketSize 64
+ usb 2-1.1: FTDI USB Serial Device converter now attached to ttyUSB3
+ usbcore: registered new interface driver ftdi_sio
+ ftdi_sio: v1.6.0:USB FTDI Serial Converters Driver
+
+The third line from the bottom shows that the FTDI USB adapter is detected
+and connected to +ttyUSB3+. This information can now be used in the import
+settings as +/dev/ttyUSB3+ which directs Subsurface to the correct USB port.
+
+Ensuring that the user has write permission to the USB serial port:
+
+On Unix-like operating systems the USB ports can only be accessed by users
+who are members of the +dialout+ group. If one is not root, one may not be a
+member of that group and will not be able to use the USB port. Let us assume
+one's username is 'johnB'.
+
+As root, type: +usermod -a -G dialout johnB+ (Ubuntu users: +sudo usermod -a
+-G dialout johnB+) This makes johnB a member of the +dialout+ group.
+Type: +id johnB+ This lists all the groups that johnB belongs to and
+verifies that
+the appropriate group membership has been created. The +dialout+ group should
+be listed
+among the different IDs.
+Under some circumstances this change takes only effect (eg. on Ubuntu) after
+one logs out and then logs in again.
+
+With the appropriate device name (e.g. +dev/ttyUSB3+) and with write
+permission to the USB port, the dive computer interface can connect and one
+should be able to import dives.
+
+[[S_HowFindBluetoothDeviceName]]
+=== Setting up bluetooth enabled devices
+[icon="images/icons/bluetooth.jpg"]
+[NOTE]
+For dive computers communicating through bluetooth like the Heinrichs
+Weikamp Frog or the Shearwater Predator and Petrel there is a different
+procedure to get the devices name to communicate with _Subsurface_. Follow
+these steps:
+
+ * *For the dive computer, after enabling Bluetooth, ensure it is in Upload mode.*
+
+For Bluetooth pairing of the dive computer, refer to the manufacturer's user
+guide. When using a Shearwater Predator/Petrel, select _Dive Log -> Upload
+Log_ and wait for the _Wait PC_ message.
+
+ * *Pair the _Subsurface_ computer with the dive computer.*
+
+.On Windows:
+
+Bluetooth is most likely already enabled. For pairing with the dive computer
+choose _Control Panel->Bluetooth Devices->Add Wireless Device_. This should
+bring up a dialog showing your dive computer (in Bluetooth mode) and
+allowing pairing. Right click on it and choose _Properties->COM Ports_ to
+identify the port used for your dive computer. If there are several ports
+listed, use the one saying "Outgoing" instead of "Incoming".
+
+For downloading to _Subsurface_, the _Subsurface_ drop-down list should
+contain this COM port already. If not, enter it manually.
+
+Note: If there are issues afterwards when downloading from the dive computer
+using other software, remove the existing pairing with the dive computer.
+
+.On MacOS:
+
+Click on the Bluetooth symbol in the menu bar and select _Set up Bluetooth
+Device..._. The dive computer should then show up in the list of
+devices. Select it and go through the pairing process. This step should only
+be needed once for initial setup.
+
+Once the pairing is completed the correct device is shown in the 'Device or
+Mount Point' drop-down in the _Subsurface_ *Import* dialog.
+
+.On Linux
+Ensure Bluetooth is enabled on the _Subsurface_ computer. On most common
+distributions this should be true out of the box and pairing should be
+straight forward. For instance, Gnome3 shows a Bluetooth icon in the upper
+right corner of the desktop where one selects 'Set up New Device'. This
+should show a dialog where one can select the dive computer (which already
+should be in Bluetooth mode) and pair it. If a PIN is required, try
+manually setting '0000'.
+
+In the rare cases where the above is not true, then depending on your
+system, try +initd+ or +systemd+. This might be different and also involve
+loading modules specific to your hardware. In case your system is running
++systemd+, manually run +systemctl start bluetooth.service+ to enable it, in
+case of +initd+, run something like +rc.config start bluetoothd+ or
++/etc/init.d/bluetooth start+.
+
+One may also use a manual approach by using such commands:
+
++hciconfig+ shows the Bluetooth devices available on your computer (not dive
+computer), most likely one will see a hci0, if not try +hcitool -a+ to see
+inactive devices and run +sudo hciconfig hci0 up+ to bring them up.
+
++hcitool scanning+ gets a list of bluetooth enabled client devices, look for
+the dive computer and remember the MAC address are shown there
+
++bluez-simple-agent hci0 10:00:E8:C4:BE:C4+ pairs the dive computer with the
+bluetooth stack of the _Subsurface_ computer, copy/paste the MAC address
+from the output of 'hcitool scanning'
+
+Unfortunately on Linux binding to a communication device has to be done
+manually by running:
+
++rfcomm bind /dev/rfcomm0 10:00:E8:C4:BE:C4+ binds the dive computer to a
+communication device in the desktop computer, in case rfcomm is already
+taken use rfcomm1 or up. IMPORTANT: Copy/paste the MAC address from the
+output of +hcitool scanning+, the MAC address shown above will not work.
+
+For downloading dives in _Subsurface_ specify the device name connected to
+the MAC address in the last step above, e.g. _/dev/rfcomm0_.
+
+
+== APPENDIX B: Dive Computer specific information for importing dive information.
+
+[[S_ImportUemis]]
+=== Import from a Uemis Zurich
+
+[icon="images/icons/iumis.jpg"]
+[NOTE]
+_Subsurface_ downloads the information stored on the SDA (the built-in file
+system of the Uemis) including information about dive spots and
+equipment. Buddy information is not yet downloadable. Things are very
+similar to a normal USB-connected dive computer (the Uemis is one of those
+that recharge when connected to the USB port). The main difference is that
+one does not enter a device name, but instead the location where the
+UEMISSDA file system is mounted once connected to the dive computer. On
+Windows this is a drive letter ( often 'E:' or 'F:'), on a Mac this is
+'/Volumes/UEMISSDA' and on Linux systems this differs depending on the
+distribution. On Fedora it usually is
+'/var/run/media/<your_username>/UEMISSDA'. In all cases _Subsurface_ should
+suggest the correct location in the drop down list.
+
+After selecting the above device name, download the dives from the Uemis
+Zurich. One technical issue with the Uemis Zurich download implementation
+(this is a Uemis firmware limitation, not a _Subsurface_ issue) is that one
+cannot download more than about 40-50 dives without running out of memory on
+the SDA. This will usually only happen the very first time one downloads
+dives from the Uemis Zurich. Normally when downloading at the end of a day
+or even after a dive trip, the capacity is sufficient. If _Subsurface_
+displays an error that the dive computer ran out of space the solution is
+straight forward. Disconnect the SDA, turn it off and on again, and
+reconnect it. You can now retry (or start a new download session) and the
+download will continue where it stopped previously. One may have to do this
+more than once, depending on how many dives are stored on the dive computer.
+
+[[S_ImportingGalileo]]
+=== Importing dives from the Uwatec Galileo
+
+[icon="images/icons/Galileo.jpg"]
+[NOTE]
+The Uwatec Galileo dive computers use infra red (IrDA) communication between
+the dive computer and Subsurface. The Uwatec hardware uses a USB dongle
+based on the serial infra-red (SIR) protocol and the MSC7780 IrDA controller
+manufactured by MosChip and marketed by Scubapro and some electronics
+companies. Under Linux, the kernel already provides for communication using
+the IrDA protocol. However, the user additionally needs to load a driver for
+the IrDA interface with the dive computer. The easiest way is to load the
+*irda-tools* package from the
+http://irda.sourceforge.net/docs/startirda.html[Linux IrDA Project]. After
+the installation of the irda-tools, the *root user* can specify a device
+name from the console as follows: +irattach irda0+
+
+After executing this command, Subsurface will recognise the Galileo dive
+computer and download dive information.
+
+Under Windows, a similar situation exists. Drivers for the MCS7780 are
+available from some Internet web sites e.g.
+http://www.drivers-download.com/Drv/MosChip/MCS7780/[www.drivers-download.com].
+
+For the Apple Mac, IrDA communication via the MCS7780 link is not available
+for OSX 10.6 or higher.
+
+[[S_ImportingDR5]]
+=== Importing dives from Heinrichs Weikamp DR5
+
+[icon="images/icons/HW_DR5.jpg"]
+[NOTE]
+When mounted as a USB drive the Heinrichs Weikamp DR5 saves a single UDDF
+file for every dive. Mark all the dives you'd like to import or open.
+Note: The DR5 does not seem to store gradient factors nor deco information,
+so for _Subsurface_ it is not possible to display them. Adjust the gradient
+factors in the _Graph Settings_ in _Subsurface_ to generate a deco overlay
+in the _Subsurface_ *Dive Profile* panel but please note that the deco
+calculated by _Subsurface_ will most likely differ from the one displayed on
+the DR5.
+
+=== Import from Shearwater Predator using Bluetooth
+
+[icon="images/icons/predator.jpg"]
+[NOTE]
+Using a Shearwater Predator one may be able to pair Bluetooth but then
+encounter issues when downloading, showing errors like _Slip RX: unexp. SLIP
+END_ on the Predator. This might also arise when using other dive log
+software and operating systems other than Linux. We have no detailed idea
+about the source and how to fix this, but it is reported to be solved
+sometimes by one of these steps:
+
+ * use the Bluetooth dongle which came with the Shearwater Predator instead of
+ the built-in one of the _Subsurface_ computer
+ * switch to different Bluetooth drivers for the same hardware
+ * switch off WiFi while using Bluetooth
+
+[[S_PoseidonMkVI]]
+=== Importing dive logs from the Poseidon MkVI Discovery
+
+[icon="images/MkVI.jpeg"]
+[NOTE]
+Download of dive logs from the MkVI is performed using a custom
+communications adapter and the _Poseidon PC Configuration Software_,
+obtained when purchasing the MKVI equipment. The latter is a Windows
+application allowing configuration of equipment and storage of dive
+logs. Communication between dive computer and desktop computer utilises the
+IrDA infra-red protocol. Only data for one dive can be downloaded at a time,
+comprising three files:
+
+Setup configuration for the dive and key dive parameters (file with a .txt
+extension)
+- Dive log details (file with a .csv extension)
+Redbook format dive log (file with .cvsr extension). This is a compressed
+version of the dive log using a proprietary format.
+
+_Subsurface_ accesses the .txt and the .csv files to obtain dive log
+information.
+
+
+=== Importing dive logs from the APD Inspiration CCR
+
+[icon="images/APDComputer.jpg"]
+[NOTE]
+The dive logs of an APD Inspiration or similar CCR dive computer are
+downloaded using a communications adapter and _AP Communicator_, obtained
+when purchasing the equipment. The dive logs can be viewed using the _AP Log
+Viewer_, within Windows or Mac/OS. However, APD logs can be viewed and
+managed from within _Subsurface_ (together with dives using many other types
+of dive computer). The APD inspiration dive logs are imported into
+_Subsurface_ as follows:
+
+- Open a dive within the _AP Log Viewer_.
+- Select the tab at the top of the screen, entitled "_Data_".
+- If the raw dive log data show on the screen, click on "_Copy to Clipboard_".
+- Open a text editor, e.g. Notepad (Windows), TextWrangler (Mac).
+Copy the contents of the clipboard into the text editor and save the text
+file with a filename extension of .CSV
+- Within _Subsurface_, select _Import->Import log files_ to open the
+ xref:Unified_import[universal import dialogue].
+- In the dropdown list towards the bottom right of the dialogue, select "_CSV
+ files_".
+On the list of file names select the .CSV file that has been created
+above. An import dialogue opens.
+In the dropdown list on the middle right labeled '_Pre-configured imports_",
+select _APD Log Viewer_.
+- Ensure the other settings for the ADP dive log are appropriate, then select
+ _OK_.
+
+The APD dive log will appear within _Subsurface_.
+
+
+== APPENDIX C: Exporting Dive log information from external dive log software.
+
+The import of dive log data from external dive log software is mostly
+performed using the dialogue found by selecting _Import_ from the Main Menu,
+then clicking on _Import Log Files_. This is a single-step process, more
+information about which can be found xref:Unified_import[here.] However, in
+some cases, a two-step process may be required:
+
+Export the foreign dive log data to format that is accessible from
+_Subsurface_.
+2. Import the accessible dive log data into _Subsurface_.
+
+This appendix provides some information about approaches to export dive log
+data from foreign dive log software. The procedures below mostly apply to
+Linux and/or Windows.
+
+[[S_ImportingDivesSuunto]]
+=== Exporting dives from *Suunto Divemanager (DM3, DM4 or DM5)*
+[icon="images/icons/suuntologo.jpg"]
+[NOTE]
+DiveManager is a MS Windows application for Suunto dive computers.
+Divemanager 3 (DM3) is an older version of the Suunto software. More recent
+Suunto dive computers use Divemanager version 4 or 5 (DM4 or DM5). The
+different versions of Divemanager use different methods and different file
+naming conventions to export dive log data.
+
+*Divemanager 3 (DM3):*
+
+1. Start 'Suunto Divemanager 3' and log in with the name containing the logs
+2. Do not start the import wizard to import dives from the dive computer.
+In the navigation tree on the left side of the program-window, select the
+appropriate dives.
+4. Within the list of dives, select the dives you would like to import later:
+ * To select certain dives: hold 'ctrl' and click the dive
+To select all dives: Select the first dive, hold down shift and select the
+last dive
+5. With the dives marked, use the program menu _File -> Export_
+6. The export pop-up will show. Within this pop-up, there is one field called
+ 'Export Path'.
+ * Click the browse button next to the field Export Path
+** A file-manager like window pops up
+** Navigate to the directory for storing the
+Divelog.SDE file
+ ** Optionally change the name of the file for saving
+ ** Click 'Save'
+ * Back in the Export pop-up, press the button 'Export'
+7. The dives are now exported to the file Divelog.SDE.
+
+*Divemanager 4 (DM4) and Divemanager 5 (DM5):*
+
+DM4 and DM5 use identical mechanisms for exporting dive logs. To export a
+divelog from Divemanager one needs to locate the DM4/DM5 database where the
+dives are stored. the user can either look for the original database or make
+a backup of the dives. Both methods are described here.
+
+Locating the Suunto DM4 (or DM5) database:
+
+1. Start Suunto DM4/DM5
+2. Select 'Help -> About'
+3. Click 'Copy' after text 'Copy log folder path to clipboard'
+4. Now open Windows Explorer
+5. Paste the address to the path box at the top of the File Explorer
+6. The database is called DM4.db or DM5.db
+
+Making a backup copy of the Suunto DM4/DM5 database:
+
+1. Start Suunto DM4/DM5
+2. Select 'File - Create backup'
+3. From the file menu select the location and name for the backup, we'll use
+ DM4 (or DM5) in here with the default extension .bak
+4. Click 'Save'
+5. The dives are now exported to the file DM4.bak (or DM5.bak)
+
+
+=== Exporting from Mares Dive Organiser V2.1
+[[Mares_Export]]
+
+[icon="images/icons/mareslogo.jpg"]
+[NOTE]
+Mares Dive Organiser is a Windows application. The dive log is kept as a
+Microsoft SQL Compact Edition database with a '.sdf' filename extension. The
+database includes all Dive Organiser-registered divers on the particular
+computer and all Mares dive computers used. The safest way to obtain a copy
+of the dive database is to export the information to another compatible
+format which can be imported into _Subsurface_.
+
+Within Dive Organiser, select _Database -> Backup_ from the main menu and
+back up the database to the desk top. This creates a zipped file
+DiveOrganiserxxxxx.dbf.
+Rename the file to DiveOrganiserxxxxx.zip. Inside the zipped directory is a
+file _DiveOrganiser.sdf_.
+3. Extract the _.sdf_ file from the zipped folder to your Desktop.
+4. The password for accessing the .zip file is _mares_.
+
+[[S_ImportingDivingLog]]
+=== Exporting dives from *DivingLog 5.0*
+
+[icon="images/icons/divingloglogo.jpg"]
+[NOTE]
+Unfortunately DivingLog XML files give us no indication on the preferences
+set on one's system. So in order for _Subsurface_ to be able to successfully
+import XML files from DivingLog one first needs to ensure that DivingLog is
+configured to use the Metric system (one can easily change this within
+Diving Log by selecting 'File -> Preferences -> Units and Language' by
+clicking the 'Metric' button). Then do the following:
+
+1. In DivingLog open the 'File -> Export -> XML' menu
+2. Select the dives to export
+3. Click on the export button and select the filename
+
+[[S_Appendix_D]]
+== APPENDIX D: Exporting a spreadsheet to CSV format
+
+Many divers keep a diving log in some form of a digital file, commonly a
+spreadsheet with various fields of information. These logs can be easily
+imported into _Subsurface_ (xref:S_ImportingManualCSV[Importing dives
+from_manually kept CSV file]), after the spreadsheet is converted in a .CSV
+file. This section explains the procedure to convert a diving logbook
+stored in a spreadsheet to a .CSV file that will later be imported from
+_Subsurface_. Creating a .CSV is a straightforward task, although the
+procedure is somewhat different according to which spreadsheet program is
+used.
+
+The first step is to organize the diving data in the spreadsheet, so that
+the first row contains the names (or titles) of each column and the
+information for each dive is stored in a single row. _Subsurface_ supports
+many data items (Dive #, Date, Time, Duration, Location, GPS, Max Depth,
+Mean Depth, Buddy, Notes, Weight and Tags). The user can organize dive data
+following a few simple rules:
+
+1. Date: use one of the following formats: yyyy-mm-dd, dd.mm.yyyy, mm/dd/yyyy
+2. Duration: the format should be minutes:seconds.
+3. Unit system: only one unit system shold be used (i.e., no mixture between
+ imperial and metric units)
+4. Tags and buddies: values should be separated using a comma.
+5. GPS position: users must use decimal degrees, e.g. 30.22496 30.821798
+
+=== _LibreOffice Calc_ and _OpenOffice Calc_
+
+These are open source spreadsheet applications forming parts of larger open
+source office suite applications. The user interaction with _LibreOffice_
+and _OpenOffice_ is very similar. In Libreoffice Calc the time format
+should be set to minutes:seconds - [mm]:ss and dates should be set to one
+of: yyyy-mm-dd, dd.mm.yyyy, mm/dd/yyyy. A typical dive log may look like
+this:
+
+image::images/LOffice_spreadsheetdata.jpg["FIGURE: Spreadsheet data", align="center"]
+
+To export the data as a .CSV file from within LibreOffice click _File ->
+Save As_. On the dialogue that comes up, select the _Text CSV (.csv)_ as the
+file type and select the option _Edit filter settings_.
+
+image::images/LOffice_save_as_options.jpg["FIGURE: Save as options", align="center"]
+
+After selecting _Save_, select the appropriate field delimiter (choose _Tab_
+to prevent conflicts with the comma when using this as a decimal point),
+then select _OK_.
+
+image::images/LOffice_field_options.jpg["FIGURE: Field options", align="center"]
+
+One can double check the .CSV file by opening it with a text editor, and
+then import the dive data as explained on the section
+xref:S_ImportingManualCSV[Importing dives from manually kept CSV files].
+
+=== Microsoft _Excel_
+
+The field delimiter (called "_list separator_" in Microsoft manuals) is not
+accessible from within _Excel_ and needs to be set through the _Microsoft
+Control Panel_. After changing the separator character, all software on the
+Windows machine use the new character as a separator. One can change the
+character back to the default character by following the same procedure,
+outlined below.
+
+- In Microsoft Windows, click the *Start* button, and then select _Control
+ Panel_ from the list on the right-hand side.
+- Open the _Regional and Language Options_ dialog box.
+Do one of the following: ** In Windows 7, click the _Formats_ tab, and then
+click _Customize this format_. ** In Windows XP, click the _Regional
+Options_ tab, and then click _Customize_.
+- Type a new separator in the _List separator_ box. To use a TAB-delimited
+ file, type the word TAB in the box.
+- Click _OK_ twice.
+
+Below is an image of the _Control Panel_:
+
+image::images/Win_SaveCSV2.jpg["FIGURE: Win List separator", align="center"]
+
+To export the dive log in CSV format:
+
+With the dive log opened in _Excel_, select the round Windows button at the
+top left, then _Save As_.
+
+image::images/Win_SaveCSV1.jpg["FIGURE: Excel save as option", align="center"]
+
+Click on the left-hand part of the _Save as_ option, NOT on the arrow on the
+right-hand. This brings up a dialogue for saving the spreadsheet in an
+alternative format. From the dropdown list at the bottom of the dialogue,
+marked _Save as Type:_, select _CSV(Comma delimited) (*.CSV)_. Ensure that
+the appropriate folder has been selected to save the CSV file into.
+
+image::images/Win_SaveCSV3.jpg["FIGURE: Excel save CSV dialogue", align="center"]
+
+Select the _Save_ button. The CSV-formatted file is saved into the folder
+that was selected. One can double check the .CSV file by opening it with a
+text editor, and then import the dive data as explained on the section
+xref:S_ImportingManualCSV[Importing dives from manually kept CSV files].
+
+== APPENDIX E: FAQs.
+
+=== Subsurface appears to miscalculate gas consumption and SAC
+[[SAC_CALCULATION]]
+'Question': I dived with a 12.2 l tank, starting with 220 bar and ending
+with 100 bar, and I calculate a different SAC compared what _Subsurface_
+calculates. Is _Subsurface_ miscalculating?
+
+'Answer': Not really. What happens is that _Subsurface_ actually calculates
+gas consumption differently - and better - than you expect. In particular,
+it takes the incompressibility of the gas into account. Traditionally, Gas
+consumption and SAC should be: +consumption = tank size x (start pressure -
+end pressure)+
+
+and that's true for an ideal gas, and it's what you get taught in dive
+theory. But an "ideal gas" doesn't actually exist, and real gases actually
+don't compress linearly with pressure. Also, you are missing the fact that
+one atmosphere of pressure isn't actually one bar. So the *real*
+calculation is:
+
++consumption = (amount_of_air_at_beginning - amount_of_air_at_end)+
+
+where the amount of air is *not* just "tank size times pressure in bar".
+It's a combination of: "take compressibility into account" (which is a
+fairly small issue under 220 bar - you'll see more differences when you do
+high-pressure tanks with 300bar) and "convert bar to atm" (which is the
+majority of your discrepancy). Remember: one ATM is ~1.013 bar, so without
+the compressibility, your gas use is:
+
++12.2*((220-100)/1.013)+
+
+which is about 1445, not 1464. So there was 19 l too much in your simple
+calculation that ignored the difference between 1 bar and one ATM. The
+compressibility does show up above 200 bar, and takes that 1445 down about
+eight litres more, so you really did use only about 1437 l of air at surface
+pressure.
+
+So be happy: your SAC really is better than your calculations indicated. Or
+be sad: your cylinder contains less air than you thought it did. And as
+mentioned, the "contains less air than you thought it did" really starts
+becoming much more noticeable at high pressure. A 400 bar really does not
+contain twice as much air as a 200 bar one. At lower pressures, air acts
+pretty much like an ideal gas.
+
+=== Some dive profiles have time discrepancies with the recorded samples from my dive computer...
+
+_Subsurface_ ends up ignoring surface time for many things (average depth,
+divetime, SAC, etc). 'Question': Why do dive durations in my dive computer
+differ from that given by _Subsurface_?
+
+'Answer': For example, if you end up doing a weight check (deep enough to
+trigger the "dive started") but then come back up and wait five minutes for
+your buddies, your dive computer may say that your dive is 50 minutes long -
+because you have fifty minutes worth of samples - but subsurface will say
+it's 45 minutes - because you were actually diving for 45 minutes. It's
+even more noticeable if you do things like divemastering the initial OW
+dives, when you may stay in the water for a long time, but spend most of it
+at the surface. And then you don't want that to count as some kind of long
+dive”.