-
Notifications
You must be signed in to change notification settings - Fork 20
Marine Life and Photos
Record the creatures you encountered and the photos you took — all from the dive detail screen, side by side with your log data.
Note
Where to find it: Open any dive from the Dive Log and scroll to the Sightings and Photos sections. You can also access the species catalog at Settings → Species, and media-source settings at Settings → Data → Media Sources.
Submersion ships with a built-in catalog of more than 500 species organized into nine categories:
| Category | Examples |
|---|---|
| Fish | Grouper, angelfish, clownfish |
| Shark | Reef sharks, whale shark |
| Ray | Manta ray, eagle ray, stingray |
| Mammal | Dolphins, whales, sea lions |
| Turtle | Green, hawksbill, loggerhead |
| Invertebrate | Octopus, lobster, nudibranch |
| Coral | Hard coral, soft coral |
| Plant/Algae | Seagrass, kelp, algae |
| Other | Anything else |
Each entry carries a common name, optional scientific name, taxonomy class, description, and an optional reference photo. Built-in entries cannot be deleted, but you can add unlimited custom species alongside them.
- Open Settings → Species and tap + Add Species.
- Enter the common name (required) and the scientific name, taxonomy class, and description (all optional).
- Select a category from the list above.
- Optionally attach a reference photo.
- Save. Your new species is immediately available in the sighting picker.
If you later realize the identification was wrong, tap the species, then Edit to correct it.
- Open the dive and scroll to Sightings.
- Tap + Add Sighting.
- Use the search field in the picker to find the species by common name or scientific name.
- Confirm the selection, then set:
- Count — how many individuals you observed (default 1).
- Notes — optional free-text for behavior, size, depth, or anything else worth remembering.
- Save. The sighting is linked to this dive and appears in the sightings list immediately.
You can add as many sightings as you like to a single dive. To remove a sighting, swipe it left or use the delete action.
Tip
If you are not sure of the species, log it under Other and add a description in the notes field. You can come back later and update the species once you have confirmed the identification.
Each Dive Sites page shows two marine-life panels:
- Spotted here — every species logged across all dives at the site, with a total sighting count. This list builds automatically as you log dives.
- Expected species — a manually curated list of species known to inhabit the site (useful before a dive). Tap the edit icon to add or remove entries.
The Statistics screen shows a marine life summary that includes:
- Total unique species seen across your entire log
- Total individual sighting entries
- Most frequently encountered species
- Species seen only once
- A breakdown by category
For any individual species, open its detail page to see the total sighting count, the number of dives with that sighting, the date of first sighting, which sites you have seen it at, and the depth range across all encounters.
The Photos section on each dive detail page shows all media linked to that dive.
From your device photo library:
- Tap Add Photos (or the camera icon) in the Photos section.
- The picker opens on the Gallery tab, showing photos from your device library.
- Tap to select one photo, or long-press to enter multi-select mode and pick several at once.
- Confirm. The photos are linked to the dive, and enrichment data is calculated automatically (see below).
From local files (desktop, or file paths on mobile):
- In the picker, switch to the Files tab.
- Use Pick Files or Pick Folder to navigate to your photos.
- The app reads each file's EXIF timestamp and offers to match files to dives automatically within a ±30-minute pre-dive and ±60-minute post-dive window.
- Review the suggested matches, reassign any file to a different dive, and confirm.
Videos are supported alongside photos. Videos show a camera icon in the grid and display their duration.
After logging a dive, the app may suggest photos from your library that were taken during the dive window. A suggestion banner appears on the dive detail page — accept or dismiss it.
When you add a photo from your device gallery or a local file, Submersion tries to match its EXIF timestamp to the dive profile. If a profile is available, the photo is enriched with data interpolated from the profile at the moment it was taken:
| Enrichment field | Source |
|---|---|
| Depth | Interpolated from profile sample nearest to the photo's timestamp |
| Temperature | Interpolated from profile sample nearest to the photo's timestamp |
| Elapsed time | Seconds into the dive when the photo was taken |
Enrichment data appears as an overlay when you open a photo in full-screen view. The overlay shows depth, temperature, and elapsed time. A confidence indicator tells you whether the values are an exact match to a profile sample, interpolated between two samples, or only estimated.
If the photo's clock was offset from the dive computer's clock, there is no automatic correction, but enrichment only applies when a profile exists and the timestamps overlap.
In the full-screen photo viewer, tap the info panel (or swipe up on mobile) to:
- Add or edit a caption — free text stored with the photo.
- Toggle Favorite — favorite photos are flagged in the grid with a heart icon and can be filtered separately.
You can link a species sighting directly to a photo by tagging it in the image. Tags store a bounding box on the photo so the species region is marked. Tap the tag icon in the photo viewer and draw a box around the creature, then select the species from the picker. The tag is linked to the corresponding sighting if one exists for that dive.
Submersion can resolve photos from several sources. Which sources are available is configured in Settings → Data → Media Sources.
The default source. On iOS and macOS this is your Apple Photos library (including iCloud-synced albums). On Android it is your device photo library (Google Photos). You grant photo-library permission once; Submersion reads thumbnails and full-resolution images on demand.
On desktop (macOS, Windows, Linux) you can link photos directly from the filesystem — useful for photos already organized in folders on your computer. On iOS and Android, files linked this way use a platform security-scoped reference so they remain accessible even when the file is moved within the same app sandbox.
The Media Sources settings page shows a count of linked local-file photos, broken down by availability status. A Re-verify all local files action checks each linked path or reference and marks any that can no longer be resolved.
Note
On Android, the system caps the number of persistable URI permissions at 128 per app. The Media Sources page shows current usage against that limit. If you need to link more files, unlinking previously added files frees those slots.
You can add photos by pasting one or more HTTP/HTTPS URLs directly into the picker's URL tab. The app fetches the image, reads its EXIF metadata, and stores the URL as the source reference. Photos sourced from URLs are displayed via a caching layer and do not consume local storage beyond the disk cache.
Manifest subscriptions let you subscribe to a feed of photo URLs (in Atom/RSS, JSON, or CSV format). The app polls the feed on a schedule you control and automatically adds new entries as media items. Existing entries are deduplicated using the subscription ID and the entry's unique key, so re-polls never create duplicates.
Per-host credentials can be saved under Network Sources in Media Sources settings: enter a hostname and authentication details once, and the app attaches those credentials to every request to that host.
Tip
The Network Sources sub-page (Settings → Data → Media Sources → Network Sources) lists all saved hosts, active manifest subscriptions, a cache-size indicator with a clear-cache action, and a Scan all network media button that re-verifies every URL-sourced photo in your library.
The serviceConnector source type is reserved in the schema for future third-party service integrations. No service connectors are enabled in the current release; the infrastructure (connector accounts table, credentials registry) is in place and connectors will appear here in a future update.
In the Photos grid, long-press any photo to enter selection mode. In selection mode:
- Tap additional photos to add them to the selection.
- Drag across photos to select a range.
- Use Select All in the header to select every photo in the dive.
- Tap Unlink to remove all selected photos from the dive at once (this does not delete the originals from your library or filesystem).
Photos linked from your device gallery are stored as a platform asset ID, not a copy of the image. When your database is synced to a second device (see Multi-Device Sync), the second device must be able to locate the same photo in its own library.
Submersion resolves cross-device gallery photos using a tiered matching strategy: it first tries to match by filename and timestamp, then falls back to image dimensions. A local-device cache stores confirmed mappings so each photo only needs to be resolved once per device.
Photos from local files (linked by path or security-scoped bookmark) stay per-device — a photo linked on your Mac will not be visible on your phone because the file does not exist there. The thumbnail grid shows a placeholder for photos that cannot be resolved on the current device.
Photos from network URLs and manifest feeds are accessible on every device with a network connection, because the source is a URL rather than a device-local pointer.
- Dive Logging — recording the rest of your dive data
- Dive Sites — site-level species lists and site details
- Statistics — marine life summaries and sighting trends
- Multi-Device Sync — how media resolves when syncing across devices
Getting Started
Logging Your Dives
Your Dive World
Diver & Gear
Insights & Planning
Setup & Data
Reference