Additionally, at the bottom of many _Subsurface-mobile_ screens is a round
_Action button_ that provides quick access to the most commonly needed
actions on that screen (see image on the left). On some screens there is only
the round center button enabled, on others there are one or two additional
actions available on either side of that center button.
unfloat::[]
On Android devices, use the Android Back
button for "cancel", "discard" or "back" actions. For example, when
editing dive information, tapping the action button saves the changes while the
Android back button can be used to cancel the edit without saving changes.
The image below indicates some of the important features of the menu system.
On the left is the main menu, activated as described above. On the right of the image
are the items of all the sub-menus available.
image::mobile-images/Subsurface-mobile-menu-system.jpg["FIGURE: Subsurface-mobile menu system",align="center"]
All screenshots in this user manual are currently from the Android
version. The iOS screens look similar.
== Using _Subsurface-mobile_ for the first time
When you start _Subsurface-mobile_ for the first time, a _Subsurface_
splash screen is shown while the program loads. On some devices this
may take several seconds. Afterwards the _Cloud Credentials screen_ appears
(see image below on left).
image::mobile-images/Credentials.jpg["FIGURE: Mobile credentials screen",align="center"]
=== Using _Subsurface-mobile_ without Cloud Storage
Tap the "No cloud mode" button. The app will only store dive log information locally
on your device. After the first start the dive log will therefore be empty.
=== Using Cloud Storage
The _Subsurface_ maintainer provides a dedicated and
free Internet cloud storage account for users of _Subsurface_ and _Subsurface-mobile_.
You can use this to store your dive log and to share your data between various computers
and devices. The _Subsurface_ team never accesses your dive data without explicit
permission to do so, the data are not used for any purpose other than providing them to the user who
created them. There are no ads and no harvesting / analysis of the data
stored in the _Subsurface Cloud_ storage. There is no monetization whatsoever.
_Subsurface-mobile_ is sufficient to fully maintain a dive log. In addition you can use the
more advanced features in _Subsurface_ when you have access to a computer while still
being able to work with your dive data when only a mobile device is available.
The dive data in the cloud are cached locally on any device or computer that is connected to
the _Subsurface Cloud_ account.
It is easy to create backups of the data (for example in XML format) on the desktop: both the mobile
device and the desktop keep a local copy of the data so that the dive log is always accessible, even
without Internet connection.
To create a _Subsurface Cloud_ account follow these steps:
1) Enter an e-mail address and a password in the fields indicated on the screen (see image above).
The e-mail address should be in lower case and the password should contain a combination of
upper and lower case letters and/or numbers.
2) Tap the "Sign-in or Register" button.
If you have already set
up an account on a different computer or device, simply enter the same credentials here.
_Subsurface-mobile_ will now download your existing dive log data. Once the dive
list has been downloaded from the cloud, _Subsurface-mobile_ usually works only with the the local
copy on the mobile device. This avoids long delays or even failure of operations if there is a bad
(or no) internet connection, a situation fairly common at many dive sites. Remember to manually sync
with the server after making local changes (either by pulling down on the dive list, or by using the
manual sync entry in the Dive management menu entry).
3) If this is a new cloud account, a PIN screen will open (see image on right, above). A PIN is e-mailed
to the email address entered in the previous step. Enter this PIN into the field indicated
and tap the _Register_ button. After the PIN has been entered it
is no longer needed - it just proves that this is indeed your email account.
At this point a new account has been created for you on the cloud server and access to the cloud is
enabled. In this case the dive list is initially empty. Start entering dives in the dive
log or download dive information from a supported dive computer.
Once registered, _Subsurface-mobile_ remembers the cloud credentials and it is not necessary to
provide these again when launching the program.
****
[icon="images/icons/important.png"]
[IMPORTANT]
*Cloud problems: FAQ*
[blue]#After filling in the correct information and submitting it, I did not receive a PIN by email#
1. Check *carefully* that you didn't make a spelling mistake in the email address you provided. You would be surprised how often this is the problem that people encouter, as autocorrect often mangles email addresses.
2. Check that the return email containing the PIN is not in the SPAM folder of your email client.
3. Wait for a few hours and check again for an email with a PIN.
4. If there is still no email containing a PIN, send mail to in-app-support@subsurface-divelog.org
[blue]#I want to access the _Subsurface Cloud_ storage but I have forgotten my password. How can I reset my password?#
There is a _Reset forgotten Subsurface Cloud password_ entry in the _Help_ menu in _Subsurface-mobile_, or you can go to the following web address: https://cloud.subsurface-divelog.org/passwordreset
Simply enter the same email address that you used during cloud registration and follow the indicated steps. A confirmation email will be sent to your account to prevent abuse of this system.
****
== The Dive List
Most of the actions of _Subsurface-mobile_ center around the dives in the
dive list. While the dive list is loading from the cloud,
a message appears at the bottom of the screen, indicating that the cloud is
being accessed, after which the dive list is shown. Once the list is loaded you can scroll up
and down through your dive history.
_Subsurface_ typically structures your dive list by dive trips, but using those is optional
(and for divers who are lucky enough to be able to dive all the time at local dive sites,
trips might only make sense for dive vacations).
Two xref:S_Dive_Management[_Dive Management_] actions are available by tapping on the
action buttons at the bottom of the _Dive List_ page:
To xref:S_Download[_Download dives from a dive computer_], tap the main action button. If you wish
to xref:S_Add_Dive[_Manually add a dive_], tap the + button in the action bar. Both of these
actions are described in detail below.
Tapping an existing dive on the list brings up a display of the xref:S_ViewDive[_Details View_]
for that dive including the dive profile, notes, and additional information.
image::mobile-images/DiveListAndDetails.jpg["FIGURE: Dive list screen",align="center"]
A tap and hold on a dive or a trip header opens the context menu for that entry.
For a dive this allows moving the dive into or out of trips or between trips, deleting
the dive or showing the dive on an integrated map viewer (assuming the dive has the
necessary GPS information). The context menu also allows access to the undo and redo
system that allows you to step backwards and forwards through recent actions.
For a trip header the context menu gives you an option to edit the trip title (typically
the trip location) and some quick notes for the trip.
Type C port and come with a simple A-to-C adapter plug, which allows to plug in
the dive computer cable into the phone or tablet.
For older Android devices with micro USB connector you will need to plug the USB
cable used with the dive computer into a USB OTG cable which,
in turn, plugs into the micro-USB port.
The OTG cable usually has a full-size ("Type A") female receptacle at one end which
accommodates the full-sized male plug
of the dive computer USB cable (see image below). This means that two cables are used to connect
the dive computer to the mobile device. *Not all Android devices support OTG cables*
but usually all modern Android devices with a USB C plug can be used with a USB A-to-C adapter.
|=======
_Subsurface-mobile_ remembers the settings for dive computers that
have been successfully used (image on right, below). These appear
as buttons under a heading "_Previously used dive computers_".
Select the appropriate button. Having connected the USB dive computer to the
_Subsurface_ computer and having selected the appropriate vendor and dive computer,
ensure that the Connection text box shows the corresponding connection. For a small number of dive
computers the connection name shows the dive computer vendor, for most only the cable chipset vendor
(and USB connection number) is shown. Most users of course only connect one USB dive computer to
their Android device and then things are fairly straightforward. A dialog will pop up and ask if
you want to use _Subsurface-mobile_ to connect to the device. If you confirm, then _Subsurface-mobile_ will
open to the dive computer download screen with the correct connection selected (and if it can deduce
the correct dive computer based on the cable used, even that information is already pre-filled).
==== Download from BT/BLW dive computers
The process for Bluetooth download is slightly different between Android and iOS.
In our testing we got the best results on iOS when the dive computer was
in Bluetooth mode before _Subsurface-mobile_ is started. On most dive
computers this is done through a menu entry, others (like the Suunto
models) always respond to Bluetooth LE requests. However, on Android devices,
you should first establish a link between the
Bluetooth or Bluetooth LE dive computer and the mobile device using
Android utilities. See below for more details.
For Bluetooth-equipped dive computers and Android devices, establish a Bluetooth connection between the dive computer and the
mobile device using Android system tools to achieve pairing.
For many Android devices,
the Settings -> Bluetooth tool of Android is probably appropriate.
_Subsurface-mobile_ performs communication using both Bluetooth and Bluetooth-low-energy (BLE).
The best choice of Bluetooth communication is often made by the software and the user need not be concerned with this.
For dive computers with both Bluetooth and BLE, a separate button is presented on the download
screen for each mode of communication, allowing a choice. Use the _Connection_ value to distinguish between the
two options. In the image on the below right, there are three buttons labeled "Shearwater Petrel 2". These represent two Shearwater Petrel dive computers, one of which can communicate in both Bluetooth as well as BLE. The _Connection_
information indicates that the Petrel with no BLE is selected.
==== Start the download
With communication between dive computer and _Subsurface-mobile_
having been set up, tap the _Download_ button. Be patient because the download can take a while - with many
long dives and a slow BLE connection we have seen download times of 45 minutes or longer. But usually downloading
a day's worth of diving happens reasonably quickly.
The downloaded dives appear in the bottom part of the screen,
the most recent dive at the top (see image on right, below).
Each dive has a check-box on the left hand side, used for selecting which dives you want to add to the
_Subsurface-mobile_ dive list: dives that are not checked are ignored. Once you picked the dives
you want to add to the dive list, tap the button at the bottom left labeled _Accept_. The selected dives will
now appear as part of
the _Subsurface-mobile_ dive list. The downloaded dive information can be edited as described in the section
above xref:S_Edit_Dive[Edit a dive].
image::mobile-images/DC-Download.jpg["FIGURE: DC download screen",align="center"]
=== Apply GPS fixes
This is described in the following main section below.
=== Manually sync the dive log with the _Subsurface Cloud_
As the name indicates, this ensures that the local changes on the mobile device and changes
made by other devices and computers to the data stored in the _Subsurface Cloud_ are synchronized.
It is highly recommended to sync with cloud storage after downloading new dives from a dive computer
or manually adding or editing dive information on the mobile device.
This can also be triggered by pulling down (and briefly holding) the _Dive List_.
=== Enable cloud auto sync
By default _Subsurface-mobile_ runs offline and only syncs the dive list
with cloud storage when explicitly told to do so (see the previous entry above).
You can choose to always sync with the cloud servers. This is not
recommended unless you are in
an area with a fast and reliable internet connection, as otherwise
_Subsurface-mobile_ might appear to hang between operations as it tries to
connect to the cloud server. Selecting _Enable cloud auto sync_ causes
the local dive log to be synchronized with the copy in the cloud after most changes as well
as (on Android) every time that _Subsurface-mobile_ is closed. iOS doesn't support the concept
of closing an app (you can just kill it, which doesn't allow for a final sync with the cloud).
In general it is safer to manually sync with the cloud once you are done making changes in
_Subsurface-mobile_.
=== Dive Summary
The _Dive Summary_ page provides a very simple overview of your diving activities - which can for example
be useful when documenting total dive experience and recent dive activity for a dive center at
the beginning of a dive trip.
The summary page lists the date of your first dive in the dive list as well as your most recent dive.
It also provides two columns of data for selectable time ranges (by default all dives in the dive list
and the dives during the last six months.
=== Export
The _Export_ feature is somewhat experimental. On Android it only allows the upload of your dive list
to two websites (divelogs.de and diveshare). On iOS it also allws local file based exports as _Subsurface_
specific XML files (both for dives and dive sites) as well as _UDDF_.
Tapping on _Next_ opens an additional page for login information (or a file selection dialog).
== Location
The fact that almost all smartphones have GPS facilities allows
_Subsurface-mobile_ to record
the locations of dives. *IMPORTANT: GPS-derived coordinates on a smartphone
are not always accurate and can have an error greater than 1 km. GPS accuracy
is determined by the hardware and software of the
smartphone as well as by the GPS settings selected within Android/iOS.
As of Android V6 select Android _Settings -> Communication -> Location -> High accuracy._*
If the smartphone is taken on the boat
during a dive, locations will be automatically be recorded at regular intervals.
These locations can then be applied to dives in the dive list. Here is how it's done:
[[S_ConfigureGPS]]
=== Configuring the GPS service
For most users, the defaults for tracking GPS locations will be
appropriate. If you would like to change them, go to
the _Main Menu_, select the xref:S_Settings[_Settings_] screen, and open
the _Advanced_ area on that page. Here you will find the section for
configuring the GPS service (see image below). GPS location data
are collected at regular intervals, e.g. every 5 minutes, or at regular
distances, e.g. after the boat has moved more than 200m, or a combination of
both of these approaches. Provide the appropriate information and
tap the _Back_ button. The program is now ready to collect GPS positions.