Versionsverlauf

What’s new in Dive Kit

Every Dive Kit release, written for divers instead of developers. Newest first.

What is coming next is not on this page. The roadmap lives on the feedback board at divekit.featurebase.app/roadmap, where you can see what is planned, what is being built now, and what has shipped.

Found a bug, or want something built? Post it at divekit.featurebase.app. Every request is public, anyone can vote, and those votes decide a lot of what gets built next. Most of version 2.9.0 came straight off that board.

Thank you. A great deal of what follows started as a post on the feedback board, a ScubaBoard thread, or a Reddit comment from a diver who took the time to explain what was wrong. Where that contribution was made in public, it is named and linked below. Plenty of other reports arrived by email or through TestFlight and are not named here, but they shaped these releases just as much.

Dates are the day each version was finished. Store review usually adds a day or two before it reaches phones.



2.11.3 (30 September 2026)

Mostly fixes, plus a clearer warning and disclaimer, privacy fixes for crash reports and analytics, your no-stop time in Gas Specs and Best Mix, a TDI START team check in Checklists, and a warning when a contingency still breathes the gas you lost. A shared plan now reads the same numbers in the app and on the website.

New

  • No-stop time in Gas Specs and Best Mix. The Gas Specs panel now shows your no-decompression limit (NDL) for the mix at that depth, worked out by the Deco Planner’s engine with your Deco Defaults. Best Mix shows it at the MOD.
  • TDI START checklist preset. The team check TDI teaches before a tech dive (S-drill and bubble check, Team equipment, Air, Route, Tables) is now in the Checklists preset catalog, in every app language.
  • A contingency tells you when it still breathes the gas you lost. Lose your 21/35 after a 52 m level with only EANx50 and oxygen as the other gases, and the plan still climbs on the 21/35 to 21 m, because it stays on your gas until the next switch. A warning now names the cylinder and the depths, so you can plan what you would breathe there instead.

Changed

  • A clearer warning and disclaimer, and one line under every result. The warning now says plainly that it covers every Dive Kit tool, that Dive Kit is for reference, learning and experimenting, that the Deco Planner is for divers trained in decompression diving and blending for trained blenders, and that you use Dive Kit at your own risk. Because the text changed, you are asked to read and accept it once more when you open the app. Every tool result now ends with a short reminder: reference only, not a dive computer, check every result against a second source. Printed slates and shared plan messages end with one line: reference only, use at your own risk.

Fixed

  • Crash reports no longer carry your IP address, device name or dive plans. Crash reports are sent only while Analytics and crash reports is on in Settings. They no longer include your IP address or your device’s name, and a Blend Planner error report, which used to include your mixes and pressures, now carries only the kind of error and how many gases were set up.
  • The analytics switch in Settings now turns off crash reports too. It is now called Analytics and crash reports. Turn it off and Dive Kit sends nothing at all, straight away, with no restart. Before, crash reports were always sent.
  • Opening a shared plan no longer sends any of the plan to analytics. Usage analytics records which screen you opened, never the plan inside the link or which log entry or card you looked at.
  • Turning analytics off also unlinks your purchases from it. Your subscription still works exactly as before.
  • The Blend Planner explains when a target mix can’t be made from your gases, instead of reporting an error. Ask for 3/45 with oxygen, helium and air banks and it now says that at 45% helium your gases give 12% to 55% oxygen: air is your only nitrogen, and it brings oxygen with it. Before, it showed a bare “No solution found”.
  • Cancel and Resume subscription work on Android. They now open Google Play’s subscription page, where you can stop or restart your subscription. Before, the buttons did nothing.
  • Closing the subscription manager no longer shows an error. On Android, backing out of Manage subscription showed a purchase error even though nothing went wrong. It now just closes, and your subscription status updates straight away.
  • The drysuit flood figure fits on screen. With a drysuit, the Buoyancy Calculator’s “If drysuit floods” line could run off the edge of the phone and read “Would need to ditch 2k”. The figure now sits under its label and always shows in full, in kilograms or pounds and in every language.
  • The website shows exactly what the app shows. A shared plan opened at divekit.app now reads the same run time, time to surface, CNS, OTU, gas density and gas figures as the app, in bar and in psi. The difference pills on a contingency tab are the difference of the two numbers you see, so 71’ against 69’ reads +2’, and the density figure and its colour always agree.
  • The run time is never shown short. The stats bar could read a minute under the real run time, for example 36’ for a 36.5-minute dive, and the deco table’s last Run value could read 70’ against 71’ in the stats bar. Every run time and every Run value now rounds up, to the next minute or the next 30 seconds, on screen, on the printed slate and in shared links, so the table never tells you to leave a stop early. The Run column also counts real travel time instead of rounded minutes.
  • “Fails after” keeps the gas until it fails. A custom contingency that loses a cylinder after a level now lets the plan use that cylinder for every switch before the failure, including deco stops on the climb to a shallower level. It used to take the cylinder away for the whole dive, which overstated the time and gas the scenario needs.
  • A CCR plan that ends on an open-circuit level switches gases on the way up. If your last level is breathed off the loop, the ascent now moves onto your richer cylinders at their switch depths. With Stay on the loop on, it used to ride the bottom mix all the way up, with a very long last stop.
  • The PPO₂ column shows what the loop really breathes. Where your diluent alone gives a higher PPO₂ than the setpoint, such as a 50/0 dilout at 21 m under a 1.4 setpoint, the row now reads 1.56 instead of 1.40, and the CNS column counts it. It now agrees with the Equivalent Mix.
  • No oxygen break once a stop is finished. A break is only added while the stop is still owed. If a stop ends just as a break falls due, you ascend instead of hanging on for five more minutes.
  • The Gas Usage Summary warns you when a plan ends below your reserve. Only the step card said so before: a plan finishing with 66 bar against a 67 bar thirds reserve left the Summary silent. It now shows a “Below your reserve” warning with the numbers.
  • The Gas Usage Summary bar says how much gas is left. It labelled the gas remaining at the end of your plan as “Reserve”, which is a different number: your reserve is the floor your reserve rule sets, such as 67 bar under thirds on a 200 bar fill. The bar now reads, for example, “29% Left”.
  • Number fields on Android are back to their normal height. Version 2.11.2 made the number boxes in Best Mix, the Deco Planner settings and the other tools noticeably taller on Android phones. They are compact again, the same height as on iPhone.
  • Best Mix and Gas Specs keep the field you are typing in above the keyboard. In Trimix mode the keyboard used to cover the O₂, He and END fields.
  • No more wild depths while you type a mix. Typing 18 into Best Mix’s O₂ briefly showed a MOD of 1389 m, the depth for 1 % oxygen. Figures now show a dash until the oxygen is back in the tool’s range, in Best Mix and Gas Specs, and a screen reader says “No value” instead of the stale figure.
  • Switching units in the Unit Converter no longer nudges the number. Going from L/min to ft³/min and back used to turn 20 into 19.99; the converter now keeps the full value and only rounds what it shows.
  • The Unit Converter keeps your cylinder volume. In SRMV/SAC mode, switching a card between bar/min and ft³/min could turn 12.2 L into 0.4 L and throw off every rate after it. The volume now stays what you set.
  • Long units no longer cover the number in input fields. The Unit Converter’s breathing-rate mode drew “bar/min” and “ft³/min” over the value; the unit now sits beside it.
  • Create Checklist always opens. After adding a checklist from the preset catalog, the Create Checklist button could stop responding. The preset picker now waits for the first sheet to close before it opens.
  • Typing a checklist name fast keeps your letters in order. A quick “Stage prep” could come out “tage prepS” because the cursor jumped back to the start after the first letter. Every checklist text field and the custom contingency name now keep the cursor where you type.
  • Cylinders rated in psi show their real rating. In imperial units an AL80 now reads 77.4 cu ft at 3000 psi, the figures on Luxfer’s spec sheet, instead of 77.5 cu ft at 3002 psi. Every aluminium, HP and LP cylinder in the Cylinder Database reads its stamped psi the same way.
  • The rated-size note on a cylinder’s detail sheet is easier to read in sun. The line that explains the marketed “80 cu ft” name now uses the same bright text as the rest of the dark panel.
  • CNS colours follow your own warning threshold. The CNS column in the deco table and the CNS on each saved plan card now turn yellow at the CNS warning level you set in Deco Defaults, not at a fixed 75 %.
  • The CNS and OTU figures in the planner’s stats bar light up exactly when the warnings list does. A CNS that reads 100 % shows as critical, and an OTU that reads 300 against a 300 limit stays plain.
  • Gas density is judged the same way everywhere. Gas Specs, Best Mix, EAD/PPO₂ and the Deco Planner now flag density only once the value you see is past your limit. EANx32 at 32 m reads 5.2 g/L and no longer shows as elevated in one tool while the planner stays quiet.
  • The two decant tools agree. Mix Result and the Gas Blender could show settled pressures a bar apart for the same two cylinders. They now use the same unrounded figure.
  • The “backup too large” message gives advice you can follow. It asked you to remove certification card photos, which Dive Kit does not store. It now points to your profile photo, the one photo a backup carries.
  • The What’s New AI spotlight lists Claude and ChatGPT. Gemini support is not confirmed yet, so the card no longer names it.
  • Clearer help and tutorials. The delay before ascent help no longer promises longer stops: the hold adds its time to your runtime and TTS, and it can shorten a later stop. TTS is explained as the time from the end of your last level to the surface, and the On ascent bailout chip reads “21 m” with a space. Help texts quote the water densities the app really uses (fresh 1.000, EN 13319 1.020, salt 1.025 and Red Sea 1.028 kg/L; some quoted 1.030, 1.035 or 1.040). Mix Result’s help matches its Steps list. The Buoyancy End of Dive card says its check assumes a 50 bar reserve, in bar or psi. The CCR tutorial now tells you to open the CCR card in the plan and tap Enable CCR, instead of picking a CCR mode that does not exist.

2.11.2 (27 September 2026)

Every number in Dive Kit now comes from one physical model, shared with the website and the Dive Kit assistant tools. A new guide page explains each convention and how far it moves a number from the rule of thumb: Conventions.

New

  • Dive Kit Labs: the What’s New sheet now points to the AI assistant integration. A spotlight at the top of the sheet explains that Dive Kit works inside ChatGPT, Claude and Gemini, with a link to how it works, in your language where the site has it.
  • Best Mix suggests the helium that clears the density warning. When the gas density at your depth is over the warning limit, the Gas Specs panel says how much helium brings it under at the oxygen you have, so you can raise helium to that figure instead of guessing.
  • A page that explains Dive Kit’s numbers. “Conventions: why Dive Kit’s numbers differ from the formulas” lists the surface pressure, the water densities, the gas-switch tolerance, real-gas behaviour and the defaults, with worked examples next to the classroom rules. The Best Mix, EAD/PPO₂, Gas Usage, SAC/RMV and Deco Planner tutorials now teach the same formula the app uses.
  • The buoyancy calculator tells you when it leaves a cylinder out. If a cylinder in your setup cannot be found in the cylinder database, the results now say so and name it, instead of quietly leaving its weight out of the figures.

Changed

  • Real surface pressure and your water’s real density. Depth and pressure now start from 1.013 bar of air at sea level (less at altitude) and a water-density table instead of 10 m per bar and a 1 bar surface. MOD, EAD, END and best mix move by a few tenths of a metre; a nitrox for 30 m at 1.4 bar is now EANx34 rather than EANx35. Deco schedules in salt water gain a little time.
  • EN 13319 is the default water type. It is the dive-instrument standard many dive computers use by default, exactly 10.00 m per bar, so your plan and such a computer read the same depth. Existing installs keep their water type; new installs start on EN 13319.
  • One AL80 is the default cylinder. New installs, a new deco gas with nothing to copy and the SAC form start from a single aluminium 80 at 3000 psi (206.84 bar). The built-in air presets read 206.84 bar instead of 207. Your own default preset is kept.
  • END warning follows your Deco Defaults. New plans, the example plans and shared plans without their own END threshold use the one in Deco Defaults. With none set, the planner shows 30 m.
  • SAC/RMV are measured with the same real-gas model the planner uses. The litres you breathed now come from the cylinder’s true contents at each gauge reading, so a rate measured here plans the same dive back to the same end pressure. Values at high pressure drop a few percent; SAC in bar per minute is the gauge drop and does not change.
  • A new plan starts at 30 m for 15 minutes. The old 25 minutes ran the default single AL80 dry, so a brand-new plan opened with a gas warning before you had touched it.

Fixed

  • Oxygen at 6 m is no longer shown as over its limit. With the real surface pressure, oxygen at the 6 m stop reads 1.61 to 1.62 bar. The plan table, the Best Mix panel and the EAD/PPO₂ screen now use the same 0.03 bar allowance the planner switches gases with, so a gas the plan breathes is not painted red or called critical.
  • Text and number inputs sit centred; line spacing consistent across the app. Numbers in the planner and calculator fields used to sit a little high with their descenders clipped on iPhone; they now sit in the middle of the field, and paragraphs, tutorials and cards share one line-spacing scale.
  • The buoyancy weight note quotes the safety stop in your unit. It said “neutral at 3m” even on a device set to feet; it now says 3 m or 10 ft to match the rest of the screen.
  • The Best Mix tutorial matches the calculator. Its 55 m example now shows what the calculator returns (21/30.4 with a gas-density warning) and how to raise helium until the warning clears (21/42), and it explains that helium comes from your END target while density is a check on the result.

2.11.0 (26 September 2026)

A small release on the surface: a handful of decompression fixes, a smaller and faster Android app, and a fix for memory use that crept up over a long session. Underneath, the deco engine, the plan sharing format and the plan table now live in one shared package that the app, the website plan viewer and future Dive Kit tools all use, so a plan computes and reads the same way everywhere it appears.

Changed

  • Smaller and faster on Android. The Android app now ships with code shrinking and optimisation switched on, so it downloads smaller and starts faster. Nothing changes in how the tools work.

Fixed

  • Bailout gas switches wait for your ceiling. A bailout plan that switched gas on the way up could aim its ascent at the new gas’s maximum depth instead of at your ceiling, and arrive shallower than it should. The switch now waits until the ceiling allows it, so a few rebreather bailout schedules gain deeper first stops. Saved plans recalculate the first time you open them.
  • Memory use no longer climbs the longer the app stays open. An issue in the app’s JavaScript engine could make memory use grow over a long session. The engine update in this release fixes it on both platforms.
  • Imperial contingency tabs are planned at +10 ft and +20 ft. If you plan in feet, the +10 ft and +20 ft contingency tabs are now worked out at those depths. They used to be computed 3 m and 5 m deeper, a little short of what the tab said.
  • “Stay on the loop” off lets a deco gas take over. On a rebreather plan, turning off “Stay on the loop” now does what it says. An open-circuit deco gas takes over wherever it gives you a higher PPO₂ than the loop, so you can plan a hybrid ascent. Before, the setting had no effect and the plan stayed on the loop either way.
  • Contingency names in feet. If you plan in feet, the plan modifiers and the bottom time finder now name the deeper contingencies +10 ft and +20 ft instead of +3 m and +5 m.
  • Deeper tabs respect travel time. The deeper contingency tabs now respect “include travel in level time”, so the extra descent comes out of the bottom time the same way it does on your main plan.

2.10.0 (23 September 2026)

The Deco Planner stops treating your dive as a bottom half and a decompression half. There is one plan now, and everything you owe is woven through it, so a point you add anywhere in your profile is planned properly instead of flown past. A rebreather plan can now leave the loop at four different points instead of two. Automatic backup also reaches Android, through Google Drive.

New

  • Stops before your own level. Add a level anywhere in your profile and the planner puts the decompression you owe in front of it. Before this, a level you set shallower than your current ceiling was reached by going straight there, skipping the stops on the way, and the gas for that whole ascent was charged to the cylinder waiting at the top rather than the one on your back. On one shared plan that moved about 900 litres onto a stage bottle and pushed the oxygen exposure past 100%, and on a longer bottom time it made the plan read eight minutes shorter than the same dive without the level. The planner now runs that ascent properly: the stops you owe, the gas changes those stops call for, and then your level, where your level’s gas takes over. So you can put a point anywhere, including in the middle of your deco, to swap a stage, take a photo, or drop back down after a shallow leg, and everything you owe is still there around it. Weaving the deco around your levels was Jeff Suitor’s idea, and his plan is the one that showed why it matters.

  • Your gas changes where it is safe to change it. Going deeper you switch before you descend, at the depth you are already on, and go down on the new gas. Coming shallower you stay on what you are breathing and switch when you arrive, because the shallower gas is the richer one and is only safe once you are shallow. At the same depth you switch in place. It is what a diver actually does, and it is now what the gas figures are based on. Thanks to Jeff Suitor for reporting it.

  • Automatic backup now works on Android, through Google Drive. Turn on Back up automatically in Settings, Backup, sign in to your Google account, and Dive Kit keeps one current backup in your own Drive, in a folder named Dive Kit you can open like any other. Restoring it onto a new phone is one button. On iPhone and iPad you pick which cloud you want, iCloud or Google Drive. If the cloud already holds a backup this phone did not write, Dive Kit asks whether to restore it or replace it before it saves over anything. Dive Kit can only see the backups it saved there, and never receives a copy itself. (requested on the feedback board)

  • Back up now, and a line that tells you what is happening. Automatic backup used to show one thing, the date of the last backup, whether it was working, waiting, or had given up days ago. The Backup screen now says which it is: backing up, waiting to back up and for how long, last backup and the time of day, or the reason the last attempt failed, with a Retry beside it. There is also a Back up now button, so you can make a backup happen before you put the phone away instead of waiting for the app to get round to it.

  • Two devices no longer overwrite each other’s backup. There is one backup per cloud account, so an iPad you have not opened in a week used to save itself over your iPhone’s current data the moment you changed anything on it. Dive Kit now notices that the backup in the cloud is newer than the one this device wrote, stops backing up from this device, and asks: restore that backup here and carry on where you left off, or keep this device’s data and replace it. It asks once per backup, when you open the app, and never in the middle of a restore.

  • Three more places to leave the loop. A rebreather plan could show you the bailout from the end of your profile, or from a depth on the way up. It can now also bail you out at a run time, any minute on the dive clock, or at the end of any level, with the levels after it dropped. Tap the plus at the end of the view row, choose where you leave the loop, and a line under the field tells you where that lands before you add it (“At 45 min you are at 21 m, on level 2”). The stop table, the slate and the gas figures then describe the dive you would really have flown. Jeff Suitor pushed for bailouts this flexible, and kept pushing until they were.

  • The planner tells you when an oxygen break could not happen. An oxygen break only goes on a gas you can actually breathe at that stop. If everything you carry is too lean there, or past its own oxygen limit, the planner gives you no break rather than an unbreathable one. Until now it did that silently. You now get a warning naming the stop depth and the minimum oxygen pressure a break gas has to clear, so you can carry the right mix next time. Your schedule is unchanged and still safe, and your CNS and OTU figures keep counting the oxygen you are really breathing.

Improved

  • Turn pressure and reserve tell you where they come from. Tap either figure in Gas Usage and a sheet names the reserve rule you have set, walks through the numbers on screen (your fill, the reserve it keeps, the gas you can use, where you turn) and points you to Settings, Diving, where the rule is changed. The card now also reads top to bottom: cylinder total under the fields, the two figures, then the free gas line.

  • The free gas line under a cylinder now explains itself. A 14 L twin set filled to 220 bar shows about 5860 litres, not the 6160 that volume times pressure gives, and that gap looks like a bug until you know why it is there. Air does not compress perfectly: at 220 bar it packs about 5% tighter than the simple rule assumes, so the cylinder really does hold less. Tap the free gas line and Dive Kit works the numbers through for you. Dive Kit uses the real figure everywhere, because it is the gas you can actually breathe, and it never tells you that you have more than you do. Thanks to Jeff Suitor for reporting it.

  • Every schedule on the website is now checked against two other planners. The comparison pages at divekit.app run the same dives through Dive Kit, MultiDeco and the Baltic Deco Planner and print all three side by side, stop for stop, so you can see for yourself where they agree and where they do not. The row on where a bailout can start also now lists the four places Dive Kit offers.

  • The tab bar steps aside inside every tool. Open any tool, tutorial or settings screen and the floating tab bar fades away, giving the whole bottom of the screen back to what you are working on. It returns when you go back. In the Deco Planner the stats pill moves down into the space the bar leaves, so a plan gets a full extra row on every phone and tablet.

  • The bottom time finder starts on your deepest level. Ask how much longer you can stay and the planner now answers for the deepest level of your dive, the same level the +3 min and +5 min tabs lengthen. Before this it answered for the last level, which on a profile that finishes shallow is the leg where staying longer makes your ascent shorter, not longer. The two answers now describe the same overstay. On a dive with more than one level you can still point the finder at another level, and the help sheet explains what that choice means.

  • Your bailout’s gas requirement and density now describe the bottle you would really be breathing. The “Bailout Gas Required” figure on the slate, and the gas density shown at the bail depth, both describe the cylinder your bailout starts on. Now that the bailout starts on the richest mix you can breathe there, both numbers follow it. On a rebreather dive bailing out at 21 m with an EANx50 aboard, the required pressure reads 26 bar against the 3 bar it used to show for the back gas, and the density reads 3.95 g/L against 2.36. Nothing is calculated differently. The figures are simply about the right cylinder now, which matters if you size your bailout from them.

  • A bailout with nothing you can breathe at that depth now warns you. If everything you carry is hypoxic where you bail out, or past its own depth limit, the planner still shows you the schedule, and it now raises a critical warning saying so. The warning existed but never made it to the screen.

  • A bailout view you cannot fly now says so instead of quietly staying on the loop. Pick a bailout depth where nothing you carry is safe to breathe and you used to get the loop plan under a chip that said otherwise, with no error. It now tells you no gas covers that depth.

  • A lost cylinder stays lost on the bailout views. Set a failure point that takes a cylinder away and pick a bailout view, and the plan used to leave the loop onto the very bottle the scenario had removed. It now uses only what you still have, which is what the end-of-profile bailout already did.

  • Your bailout starts on the richest gas you can breathe where you leave the loop. Coming off the loop, the planner used to hand you the first cylinder on your list that reached the bail depth, which on a rebreather is often your diluent. It then charged you a switch pause for every bottle it walked up on the way to the mix you would really have grabbed. On a 60 m trimix dive with a 10/50 diluent, bailing out at 21 m billed three pauses instead of one, and the bailout schedule came out a minute longer than staying on the loop. It now goes straight to the richest mix you carry that is safe at that depth, which on that dive is the EANx50, and the bailout runs 42 minutes to the surface instead of 46. The order your cylinders are listed in no longer changes a bailout at all, and the help sheets on the Bailout Gases card and the bailout switch depth now say so.

  • An oxygen break now moves to the leanest gas you carry, not the richest. The point of a break is to come off a high oxygen pressure for a few minutes. When your back gas cannot serve the break, the planner used to reach for the richest mix that was safe at that stop, which is the wrong direction. It now takes the leanest one that is still above the minimum, which is what you would pick yourself. On a 47 m dive on 10/70 with a 18/45, a 35/25, an EANx50 and oxygen, the 6 m and 3 m breaks move off the EANx50 onto the 18/45, and the plan runs three minutes longer because the leaner break gas is the honest one.

  • “Stay on the loop” now explains itself. The rebreather setting that decides whether your deco plan stays on the loop has a help button like every other setting. It tells you what each position does, and what it costs. Left on, the loop runs your whole ascent and your open-circuit cylinders stay untouched; where a setpoint is higher than a shallow stop allows, the plan uses the oxygen pressure the loop can really reach instead of taking you off it. Turned off, an open-circuit deco gas takes over wherever it gives you more oxygen than the loop would, which shortens the schedule and spends gas you were keeping in reserve. Either way your bailout views still switch where you told them to, and your bailout gas is checked the same.

Changed

  • The FX CCR checklists now follow the Sub-Gravity functionality checklist. The earlier FX presets were taken from the user manual, and its order does not work on the unit: it has you calibrating the cells before the head is connected. Two new presets replace them, copied item for item from the Sub-Gravity FX-CCR Functionality Checklist v1.5 (calibration kit): the functionality check (items 1 to 13, when you build the unit) and the pre-dive checks (items 14 to 20, at the water, ending in the pre-jump drill). Every lettered sub-item and the cell mV expectations sit under their step, the pressure tests, leak test and pre-breathe carry their minimum holds as countdowns, and the cell readings and leak-test pressures get a Notes field. The FX CCR after-dive preset is unchanged. A copy you already added stays as it is: add the new ones from Create Checklist, From a preset, and delete the old copies when you are ready. The FX CCR checklists exist because Jeff Suitor asked for them.

  • The bailout views say where you leave the loop. “Full Bailout” is now End of profile, and “Bailout at 6 m” is now On ascent 6 m. With four views to choose from, the name has to say where the bail happens, and the depth one has to say ascent, because a run time can put you at the same depth on the way down.

Fixed

  • A bailout ascent no longer sends you back down. Coming off the loop onto open circuit raises the inert gas you breathe, so on a long first ascent your ceiling can get deeper while you are on the way up. The plan aimed the whole leg at the stop your ceiling asked for the moment you left the bottom, went past it, and then printed a second leg going back down to make up for it. One plan read as a rise from 59 m to 33 m followed by a descent to 36 m. The ascent now ends at the first stop your ceiling genuinely allows, which is where you would stop, and no leg in any plan goes downward.

  • An oxygen break is only ever offered on gas you can breathe. Breaks come off your back gas, and the plan only checked whether that cylinder still had gas in it, not whether the mix was usable where the break falls. A hypoxic bottom mix such as 10/70 was therefore breathed for three minutes at a 6 m or 3 m stop, in the same plan that warned you about that very cylinder. The break now moves to the richest gas you carry that is safe at that stop. If you carry nothing safe there you get no break, which is the honest answer, and your oxygen exposure figures keep counting.

  • A more conservative GF Low always gives you a longer dive now. On a multi-level plan whose last level was shallower than an earlier one, nudging GF Low down by a single point could print a schedule 20 minutes shorter and move the first stop up rather than down. The gradient-factor line was being hung from whichever ceiling happened to stand when the ascent began, and on a multi-level dive that depends on whether your shallower level sat above the ceiling or just below it. The line now hangs from the deepest ceiling of the whole dive, every time. One side effect worth knowing: multi-level plans that end on a shallower level show a little less decompression than before, usually 1 to 5 minutes, because the line no longer gets re-read after the shallow level has off-gassed you. Single-level plans are unchanged. Your End of profile view follows the same line as the loop plan it belongs to, so a bailout on a multi-level dive reads a little shorter as well.

  • Turning on backup to Google Drive works after you sign in. Signing in succeeded and Dive Kit then said Google was not signed in, leaving the switch off; going back to the Backup screen showed the account connected after all. Dive Kit was asking Google to refresh the sign-in a fraction of a second too early, and treating that as “not signed in”. It trusts the sign-in you just completed now, and if something really is wrong it tells you what Google said instead of a blank refusal.

  • Three small things from the last check before release. The contingency scenario tabs can now be reached with VoiceOver. The Deco Planner tutorial’s header shows the tool’s name in your language, like the rest of the app. And the free gas note opens above the keyboard, not behind it, when you tap it straight after typing a number.

  • On Android, the tabs and bailout buttons work again once they stick to the top. Scroll down a deco plan far enough and the scenario tabs, the rebreather view buttons and the modifiers line stay on screen above the stop table, so you can always see which plan you are reading. On Android those buttons stopped responding as soon as they stuck: you could not switch to End of profile, pick another scenario, or open the modifiers, even though the row still scrolled sideways under your thumb. Every button on that row now responds whether it is stuck to the top or scrolling with the page. iPhone and iPad were never affected. Thanks to Jeff Suitor for reporting it.

  • The row that sticks to the top now sits right under the header. It used to stop short of it, and the stop table scrolled through the empty strip left in between.

  • A gas switch at your last stop happens when you arrive, not a minute later. With rounded stop times and “switch at the next deco stop”, changing to oxygen at a 6 m last stop made you wait a full minute on the gas you were already breathing before the switch appeared, so the table split the stop into two rows. The switch now lands the moment you reach the stop, and the last stop is one row again. You never leave a stop earlier than the exact schedule allows, and with whole minutes the minute you used to wait simply moves into the stop after the switch. Thanks to Jeff Suitor for reporting it.

  • Rounded stop times no longer quietly loosen your gradient factors. That same parked minute had a bigger consequence. It left you sitting at a 6 m last stop on the gas you had not switched off yet, and on some plans that stop can never clear on that gas, so the planner raised your GF high to finish the schedule. Turning stop rounding on was therefore changing how conservative your plan was, and the rounded plans came back shorter than the exact one. On a 78 m dive on air and oxygen at GF 30/70 the exact plan ran 237 minutes while both rounded versions ran 230 and 233 with a GF high of 73 instead of 70. All three now agree at 237, 239 and 242, on the gradient factors you set.

  • A “+3 min” or “+5 min” tab could show less decompression than your actual plan. On a dive with more than one level, the extra minutes were added to your last level instead of your deepest one. If your plan finishes shallow, say 37 m for 39 minutes and then 3 minutes at 9 m, those extra minutes landed on the shallow leg, where they off-gas rather than cost you. The overstay you were hedging against came back looking easier than the dive itself. Every built-in scenario now lengthens or deepens your deepest level, which is where overstaying actually costs you. Build a custom scenario if you want the minutes somewhere else.

  • Your plan no longer goes below your own last stop to pick up a gas. With a 6 m last stop and a 1.4 bar oxygen limit, oxygen cannot be breathed at 6 m, but the planner still sent you down to 3 m, charged you a minute of switching there, and surfaced from that. Two minutes below the last stop you had set, buying no decompression at all. A gas change now never happens shallower than your last stop: it either happens at your last stop, when the gas is safe there, or that gas is not used.

  • The End of profile view shows the stops you owe before your last level. On a plan whose decompression starts before the deepest part is over, that view listed only the stops after the last level and left out the ones you had already flown on the loop. All of them are in the table now.

  • The Polish deco table names its run time column properly. The Run column read “Uruchom”, the word for starting a program. It now reads “Czas całk.”.

  • Gas Usage keeps “Remaining” on one line. In a narrow step row the word could break in the middle (“Remaini / ng”). The remaining pressure now moves whole onto its own line when the row is tight.

  • Gas names stay on one line in the gas consumption card. In Russian the “Used” label was wide enough to break a mix like 21/35 across two lines. The used and remaining figures now drop under the gas name when the row is tight, so the mix always reads as one number.


  • A short, deep dive no longer skips its last stop. On a quick bounce to depth, your tissues can be clear when you leave the bottom and only build an obligation on the way up. The planner was treating those dives as if they owed nothing, so after holding stops at 9 m and 6 m it took you straight to the surface and left out the last stop. It now holds that stop like any other deco dive, on a rebreather and on open circuit alike. On a 63 m bounce with no bottom time, on a rebreather at a 1.4 setpoint with an air diluent, the plan gains a minute at 3 m and its time to surface goes from 12.6 to 13.6 minutes. Saved plans are recalculated the first time you open them after updating.

  • The + Add button on the rebreather view row always opens. On a long session of adding and removing bailout views it could stop responding until you left the plan screen and came back.

2.9.0 (17 September 2026)

The largest Deco Planner release so far, and the first one built almost entirely from feedback board requests: plan modifiers, no-stop times, a bottom time finder, five gas reserve rules, backup and restore, and Korean as the eighth language.

New

  • Plan modifiers. A Modifiers row under the scenario tabs holds your Working SRMV, your Deco SRMV, a stress SRMV burst over a window you choose, and a delay before the ascent. Set them for the whole plan or for one contingency. The delay is real time at depth, so it loads tissue, accrues CNS and OTU, and moves your stops. The stress burst re-prices gas without touching the schedule. (stress burst, time to exit and problem solving delay on the feedback board)
  • Bottom time finder. A timer icon in the Gas Consumption header works the gas question backwards: instead of typing a bottom time and reading the gas, it finds the longest bottom time your plan still supports, limited either by your gas reserve or by a time to surface budget you name. It answers the tab you are on, so a contingency answers for that scenario. One tap applies it. (requested on the feedback board)
  • No-stop time on every level. A dive level can carry an NDL tag showing the minutes of no-stop time left there, computed at your plan’s GF high, so it reads shorter than an agency table. It turns yellow at five minutes and stays away where a number would mislead. (requested on the feedback board)
  • Five gas reserve rules. Thirds, Fourths, Fifths, Sixths and Fixed, instead of just thirds and sixths. Fourths and fifths are what cave divers use when flow or distance calls for a bigger margin. Fixed keeps a pressure you type, the open-water habit of being back on the boat with 50 bar. (requested on the feedback board)
  • Gas Usage prints your turn pressure. Turn pressure and your reserve target now sit side by side under the cylinder inputs, in your own pressure unit. Turn pressure is the point at which half your usable gas is gone. Before this the tool only spoke up once you were already below your reserve. (from the cave planner request on the feedback board)
  • One cylinder can carry its own reserve target. Under Advanced in the gas sheet, leave Reserve on Default to follow your reserve rule, or type a pressure for that cylinder alone. A stage you drop at 30 m and a deco bottle you breathe on the way up do not need the same margin. (requested on the feedback board)
  • The bailout check runs on every view. A CCR plan that cannot cover its worst case bailout now warns you on the loop view too, not only where you thought to look, and the Full Bailout chip turns red. (requested on the feedback board)
  • Two-up slate export. Tick “Compare two scenarios” and the slate prints two schedules side by side on A5, your selected plan on the left and any other scenario on the right, each repeating its own name, GF, TTS and runtime on every page. (requested on the feedback board)
  • Failure points for custom contingencies. A scenario that loses a gas can now say when it is lost. Pick a level and the levels up to that point still breathe the gas and are billed for it, while everything after moves to a surviving gas. That answers “if my back gas goes at 23 m, does the pony get me up?” without building a second plan by hand. (requested on the feedback board)
  • Names for custom contingencies. Up to 24 characters, replacing the derived label on the tab and in your exports.
  • Backup and restore. Settings > Backup writes everything on the device into one file and hands it to the share sheet, so it can go to Files, iCloud Drive, Dropbox, Drive, AirDrop or mail. Restore reads it back after a confirmation naming the backup’s date, and rolls back if any step fails. On iPhone and iPad, automatic iCloud backup keeps one copy current in your own iCloud Drive, off until you switch it on, and onboarding offers to restore a backup it finds there. Dive Kit never receives a copy. (requested on the feedback board)
  • Your CCR diluent can count as a bailout gas. Tick “Breathable open circuit” under the diluent and bailout planning may breathe it, which is what happens when your bailout valve is plumbed to the diluent cylinder. Until now the only way to get that gas counted was to invent a second cylinder of the same mix, and then neither number was right.
  • The planner can carry on when a cylinder runs dry. A new “When a cylinder runs out” setting stays on Show shortfall by default, which is what every earlier version did, except that the card now tells you how much more gas you needed instead of just clamping at zero. Switch it to Switch gas and the planner does what you would do at the stop: move to the richest gas you still have that is safe at that depth, mark the change in red, and run the rest of the deco on it. Jeff Suitor asked for the planner to carry on the way a diver would, rather than stop at zero.
  • Water temperature behind every gas density reading. Set it per plan, in your Deco Planner defaults, or globally. The default is 15 °C, the same reference the rest of the app uses. Density readings drop about 5% against 2.8.7, which had them pinned at a 0 °C basis, so a reader cross-checking a 20/35 mix at 60 m against another planner can finally compare like for like. No stop times move, because the Bühlmann model has no temperature term. (requested on the feedback board)
  • Professional certifications for PADI, IANTD and GUE. All seven PADI rungs from Assistant Instructor to Course Director, IANTD’s six leadership ratings and GUE’s four instructor ratings, each with prerequisites and a link to the agency’s own page. (requested on the feedback board)
  • Korean, the eighth language. Every screen, warning, tutorial, checklist preset and hand signal, plus the store listings and divekit.app. Korean needs glyphs the app’s usual typeface does not carry, so Dive Kit now bundles a font covering all 11,172 modern Hangul syllables. Picking Korean needs a store update, not an over-the-air one.
  • Four FX CCR checklist presets from the FX CCR User Manual 2025.1 (iQsub Technologies): prior the dive, just before the dive, entering the water, and after the dive. They follow the manual step for step, with countdowns on the pressure tests and the pre-breathe, and Notes fields on the gas analysis steps. Requested by Jeff Suitor.

Improved

  • The plan modifiers read in dive order. Delay before ascent now sits above Deco SRMV: breathing at depth, a stress burst, the hold while you sort a problem, then the deco rate.
  • SRMV/SAC measures one cylinder at a time. The cylinder is now the first field of each measurement, so a twinset plus a stage goes in as two measurements that both count toward one breathing rate. Expect a higher SRMV than before, and that is the correct number: leaving the stage out understated a typical twin-plus-stage dive by roughly a third, which sizes your next gas plan too small. (requested on the feedback board)
  • Bailout gas is charged in two phases, and most divers will need more of it. Swimming off a failed loop at depth is work, not deco, so the leg from the bail point to your first deco stop now runs at your Working SRMV and everything above that stop stays at your Deco SRMV. Dive Kit used to charge the whole bailout at the deco rate. Re-check any bailout you sized in an older version. (requested on the feedback board)
  • Cylinder pressures in warnings follow your unit setting. Low gas, critically low gas, ascent pressure and bailout warnings printed “120 bar” to every diver, imperial ones included. They now read “1740 psi” where that is what the rest of the app shows. PPO₂ values stay in bar, as they always do.
  • The Deco Planner sits second in the Tools grid and can be dragged anywhere. It used to be pinned to the bottom under eleven free tools and snapped back mid-drag, so there was no way to put the tool you open most at the top. (requested on the feedback board)
  • Submit Feedback opens Dive Kit’s feedback board instead of a one-way form, so you can see what other divers have asked for, add your own, and vote. (requested on the feedback board)
  • Red in the stop table now means something is wrong. The descent arrow was red in every earlier version, spending the table’s loudest colour on the one thing every dive does. It is orange now, and red is kept for a forced gas switch.
  • Short lines under the settings, long explanations behind the (i). Deco Planner row hints ran to four or five lines each. Each row now carries one plain line and its (i) carries the rest.
  • The Descent rate row shows what the rate means. Under the value it now reads how long that rate takes to reach 30 m (100 ft), so 2 m/min visibly becomes a 15 minute descent. The help sheet was also wrong about the setting’s scope: the rate applies to every descending leg of the dive, and the planner models the descent as a continuous ramp, so a slow descent on-gasses your tissues the way a real one does. (requested on the feedback board)
  • “Stop time display” is now “Stop time rounding”. The old name undersold it: the rounding happens in the deco engine, so it changes where a stop is released and therefore the schedule, not just how the table reads. The options now read as unit symbols, 1 s, 30 s and 1 min.
  • Simplified Chinese reads like Chinese. The deco planner, its settings, the help sheets and the tutorial were reread end to end and rewritten wherever they were a word-for-word rendering of the English. Open circuit is now 开放回路 throughout, water density is 水体密度, and Triox is no longer translated as a word that reads as ozone. 71 strings in all.
  • The settings screens stop stretching at very large system text sizes. Both Deco Planner settings screens and the gas reserve rule chips now cap how far those rows grow, so a large text setting no longer leaves a ragged block. Everywhere else in the app the system text size is still honoured in full.
  • Best Mix and Gas Specs fill a landscape tablet. Hold a tablet sideways and each tool splits into two columns, inputs on the left and results on the right, each scrolling on its own, so the numbers you are chasing never scroll away from the slider you are dragging.
  • The scenario tabs, view chips and modifiers line stay on screen as you scroll a long stop table, on phones and tablets alike.
  • Picking a checklist preset adds it to your list instead of dropping you into the builder. A preset is already a finished list.
  • The buoyancy calculator’s Comparison Tool banner can be put away for the session, so working through six cylinder swaps in one sitting no longer means scrolling past the same paragraph each time.

Fixed

  • Deleting your last cylinder no longer leaves the dive pointing at it. Those levels go back to Auto, so the next gas you add is picked up straight away.

  • An older share link no longer adds a new copy every time you open it. Links made before this release carry no plan name, so nothing recognised them as one you already had, and nine links left 24 plans behind. Opening one now asks whether to import as new, replace, or cancel, the same as any other repeat.

  • Deleting a plan from the list now names it. The menu on a plan card asked only “Are you sure you want to delete this?” and never mentioned that the plan’s contingency variants go with it, while deleting the same plan from inside it said both.

  • An imported plan could point a dive level at a cylinder it was not carrying. The planner fell back to the first cylinder without saying so, and the table, the export and the warnings did not always agree about which gas that level breathed. Imported plans are repaired when they arrive, and once for plans you already have. Where it is genuinely unclear which cylinder was meant, nothing is guessed and the warning still tells you the level has no gas. The same repair removes a slowdown: a library holding one plan with a broken level could make every other plan take up to a minute to open, and it now opens in seconds.

  • The plan status no longer says Valid before the plan has been worked out. It showed Valid beside a row of dashes and then changed to Invalid once the schedule arrived. It shows the loading clock until there is something to judge.

  • Exporting a slate tells you it is working. Making the PDF takes a few seconds on a long plan and nothing on screen said so, so it was easy to tap again and wonder what had happened.

  • A shared plan link now opens the plan every time. Opening the same link six times in a row reached the plan once and left you on the tools home or the plan list the other five, and each of those still imported the plan quietly under a new name, so you ended up with copies you never asked for. The app was reading the link before it had finished loading your saved plans. It waits now, and a plan whose name you already have always asks whether to import as new, replace, or cancel.

  • A level on pure oxygen no longer reports a negative narcotic depth. It read “END -10m”, which is what the arithmetic gives when nothing in the mix narcoses. The tag is simply not shown on that level now. If you have set oxygen as narcotic, you still see it.

  • Buttons that are only an icon now announce what they do. With VoiceOver there was no way to tell what the delete on a gas row was, or find it at all, and the same went for the reorder arrows in a checklist, the reset on a setting, the setup arrows and the scanner’s flash. Where a button acts on one row it says which, so the delete on a cylinder reads “Delete 50/0”.

  • A hint no longer points at a control that is not on screen. Building a custom contingency on a single-level dive, the note about lost gases ended “unless you set a failure point below”, and that setting only exists once a plan has more than one level.

  • A handover now says which of two identical cylinders it moved to. Carrying two EAN50s is supported, but the gas card read “Handed over at 6 m · then 50/0” when the cylinder it handed to was also called 50/0. With three bottles there was no way to tell which one to breathe, and the same line goes onto your printed slate. A mix you carry more than once is now numbered, so it reads “then 50/0 #2”.

  • A plan with no cylinders no longer reports zeros and calls itself Unsafe. It cannot be worked out at all, so the stats pill now shows dashes and says Invalid, and its card in the saved list is marked in red to match.

  • A sheet’s title no longer fills the sheet at the largest text sizes. Opening the OTU explanation showed its title and nothing else, with the rows hidden behind it.

  • VoiceOver can land on buttons. They announced a name but could not be selected, so the plus and minus on every stepper stayed out of reach.

  • Add depth explains every refusal. Typing 0, or a depth below your deepest stop, was silently changed to something else. It now says which limit you passed.

  • A contingency that costs you nothing says ±0 instead of showing a blank where the difference goes, which looked like it had not been worked out.

  • The last onboarding option is no longer clipped by the arrows below it.

  • A dilout cylinder’s gas card showed two different amounts of gas. On the rebreather loop view it read “Used: 106 bar / 48 L” next to “Remaining: 94 bar / 2259 L” on a cylinder holding 4629 L, so the pressures and the litres described different bottles. A twinset used as a dilout was being counted as one cylinder in one place and as a pair in the other. It now reads about 2 bar used and 198 bar remaining, and it matches the same cylinder’s Full Bailout card.

  • The Add depth stepper responds to every press. Roughly two presses in fifteen moved the depth. The sheet resized itself whenever the message under the field appeared or cleared, and a tap during that resize was lost.

  • A rebreather plan’s last ascent row showed the wrong setpoint. Going from 6 m to the surface it read “SP 1.0” directly under a stop reading 1.6, as though the loop had given up its setpoint on the way out. It had not. The row now names the setpoint being held, so it matches the stop above it, and it reads correctly on an altitude plan too. The CNS figure for that leg was low as well and now matches what the engine works out.

  • A longer bottom time can no longer delete your decompression stop. At 18 metres on air with the standard gradient factors, the table showed a one-minute stop at 6 m for 36, 37, 38, 40 and 41 minutes of bottom time, and no stop at all at 39. The plus-three-minutes contingency showed a green “-1min”, telling you that staying longer would get you out sooner. Every depth between 12 and 39 metres had one bottom time like that. The planner no longer skips that stop, and it will not ascend past a ceiling it is still holding. Saved plans recalculate the first time you open them.

  • A contingency that runs your bottom gas dry no longer plans the dive without it. With the gas policy set to switch to the next gas, a deeper or longer contingency that emptied your back gas before the ascent started would drop that cylinder from the plan and run the whole shallow decompression on your deco gas. The result looked tidy and was impossible, and it could even come out shorter than the contingency one step shallower. Those tabs now show the shortfall instead: you keep breathing the cylinder, the gas card says how many bar short you are, and a red warning says it ran out before you left the bottom. Cylinders that run out during the ascent still hand over as before.

  • Shallow-stop conservatism now follows your ceiling continuously. The gradient factor line is anchored at the exact depth your tissues reach rather than at the stop above it. The old rounding is what let one extra minute on the bottom shorten a dive, and the exact depth is the tighter of the two at every shallower stop. Expect one to three minutes more decompression on a typical plan and slightly deeper first stops. In the published MultiDeco comparison this moved us closer on both of the things it changes: total decompression time moved toward MultiDeco on all fourteen dives where it moved at all, and four first stops stepped one level deeper toward MultiDeco, with nothing going the other way on either. Total time to surface is a different story and we will not round it off. It narrowed on six dives and widened on eight, because on most of those Dive Kit’s total already ran longer than MultiDeco’s, so extra decompression time pushes it further out.

  • The MultiDeco comparison notes match their tables again. Each dive in the published comparison carries a short written note, and after the engine change several notes still quoted the old numbers. One said the times to surface matched exactly where the table showed a minute between them, and two named a first stop one level shallower than the table did. Every figure in every note was checked against the published result and corrected, and a test now fails if a note and its table ever drift apart again.

  • The Run times in the published comparison match the ones in the app. Open a comparison dive in Dive Kit and the Run column now reads the same as the table on the website. Some stops were a minute apart, because the published table built its running clock on a figure that had already been rounded once. Stop times and totals were always correct and have not changed.

  • The Chinese buoyancy tool no longer calls backup lift a backup gas supply. In the wing failure scenario it used the words for spare breathing gas to describe kilograms of lift from your redundant bladder, drysuit and SMB. Bailout also now gives its Chinese name once on every screen that uses the English word, so you can tell the two apart at a glance.

  • Better diving Chinese throughout the app. Seven terms were saying the wrong thing to a Chinese diver. The clearest was the high-oxygen warning, which used the word Chinese divers use for nitrox, so it read as a complaint about your gas rather than about your oxygen exposure. Breathing rate used a phrase that means breaths per minute instead of litres per minute, and gradient factor used the Taiwan wording rather than the mainland one. PPO₂ now gives its Chinese name the first time it appears on any screen, so you do not need English training material to read it.

  • The German app reads like one German diver wrote it. It used to switch between the polite Sie and the familiar du from one screen to the next, and it had several words for the same thing: Sollwert beside Setpoint for the same rebreather control, ZNS in a warning about the CNS on the stat beside it, Laufzeit in the deco table and Gesamtzeit in the pill above it, and two different German names for the same tool on the card and on its own screen. Everything is du now, each idea has one word, and the breathing rate is called AMV, which is what German courses teach. The tutorials also stopped writing English decimal points, so “1,6 bar” reads the same there as it does in the planner, and a stretch of the gas tutorials that had never been translated is now German.

  • The fourth setup screen has its own heading, and its hint is readable. It was titled “Welcome to Dive Kit”, which belongs to the first screen, and the line under the options ran across the back and next buttons. It now asks where you are coming from, and the hint sits with the question.

  • The Deco Planner keeps its words whole at large text sizes. The stop table was printing 18 m as “18n”, the stats pill was cutting “OTU” into other letters, and the scenario tabs had shrunk to a single character each, so +3 m and +3 min looked the same. Every one of those now picks one size from your text setting and holds it, so the whole column reads evenly and a depth never loses its unit. At the very largest accessibility sizes the planner had been going further than that and hiding things outright: the scenario tabs lost their names entirely and the stop table dropped its Mix column, which on a rebreather carries the setpoint and the diluent. Nothing is hidden now. Where all six columns genuinely cannot fit the screen, which takes a rebreather plan at a large text size with PPO2 and CNS turned on, the table scrolls sideways instead of squeezing a column away. Tool names on the Plan grid also stopped splitting in the middle of a word.

  • The safety terms are shown on every iPhone. On a 4.7-inch screen the last setup step showed no terms at all above the box asking you to confirm you had read them. They are always on screen now, and the page scrolls where the screen is too short for them.

  • Setup steps no longer hide a button behind the arrows. On a small screen the fourth answer on the planner question, and the “Not now” button on the iCloud step, sat under the back and forward buttons with no way to scroll to them.

  • Switching language now changes the screen title too. In Settings, Appearance, the page switched language straight away but the title above it stayed in the old one until you left the screen.

  • The Deco Planner reads properly at large text sizes too. Two notches up the slider the scenario tabs had shrunk to a single character each, so +3 m and +3 min looked the same; the Modifiers line went blank; and the stop table printed 18 m as “18n”. Anything that can grow now grows, and anything in a fixed grid keeps its text whole instead of cutting it. A depth never loses its unit.

  • The Backup screen’s buttons keep their names at any text size. At the largest accessibility sizes Save Backup File and Restore from a file were reduced to an up arrow and a down arrow, on the one screen where the two actions do opposite things to everything you have saved. Both now wrap onto as many lines as the words need, and the button grows to hold them. Section titles on the settings screens wrap the same way.

  • The stat detail sheets scroll to the end, and their limits keep their labels. Tapping a figure on the stats pill, OTU for example, opened a sheet whose explanation stopped mid-sentence at the bottom edge with no way to drag further. The reference limits under it were cut too: “Your single-dive limit” read “Your single-dive lim”. The sheet now scrolls whenever its content is taller than the screen allows, and those labels wrap rather than being cut, while the figures beside them stay whole.

  • VoiceOver can use the plus and minus fields. Every stepper in the app announced itself with only its unit, “s” or “m”, and its two buttons had no name at all, so there was no way to find or press them. Each field is now announced by its own name and value, answers the swipe up and down gestures, and its buttons are named.

  • The depth stepper for a bailout view works again. In the rebreather Add depth sheet neither the plus nor the minus button moved the depth, and tapping the number brought up no keyboard, so the only depth you could add was the one the sheet offered you.

  • Changing your text size no longer freezes the screen you are on. Change it in iOS Settings and come back, and the Deco Planner’s plan list would not scroll at all, with one oversized card filling it and Saved Plans, Import, Edit Defaults and Create New Plan all out of reach. Leaving and re-entering fixed it, and nothing said so. Screens now rebuild themselves at the new size.

  • The OTU sheet scrolls to its limits again. At the largest accessibility sizes its title took most of the sheet and the two reference limits under it could not be reached.

  • Korean text breaks at word spaces. Lines broke in the middle of words on the Plan grid and in the rebreather sheet. Chinese, where breaking between characters is correct, is unchanged.

  • A Korean hint said an emergency plan could breathe a cylinder. It meant the bailout gas.

  • Backup button labels stay on whole words at the largest text size. “Save Backup File” was wrapping as “Save / Backu / p File”.

  • Onboarding options are no longer sliced by the arrows at the bottom. On a large phone the fourth answer on the planner question was cut in half until you scrolled.

  • A level showing no-stop time above a table showing a stop now explains itself. A plan could read “NDL 8 min” on the level while the table below it listed a one minute stop at 6 m. Both were right. A dive that touches the GF Low line has to pause on the way up even when nothing is holding it there, and that pause is not decompression. The tag now reads “NDL 8 min · last stop required” in that case, and stays as it was when a ceiling really does hold you.

  • VoiceOver can reach the controls inside a bottom sheet. Every sheet in the app was announced as a single item called “Bottom Sheet”, with nothing inside it reachable. Every field, stepper, toggle and button in a sheet is now announced on its own.

  • A contingency tab no longer shows a shorter ascent in green when the plan cannot be flown. On a plan set to switch gas when a cylinder runs out, going 5 m deeper and 5 minutes longer reported three minutes less time to surface, in the colour that means better. That schedule was computed without the bottom gas, which had already run out, and with the deco gas allowed far past empty. Those tabs are now marked in red with a warning glyph, whichever way the number goes.

  • A saved plan and the plan screen agree on time to surface. The same dive could read 4’ on its card in the list and 5’ on the stats pill inside it. Both round up now.

  • A plan the app calls Invalid is marked in red in the plan list. It carried the same amber mark as a plan with a caution against it, on the screen where you pick a dive.

  • Create New Plan is no longer under the tab bar when you arrive. Tapping the middle of the button opened the Manage tab until you scrolled the list a little.

  • The bottom time finder says what it assumes. It works out your longest bottom time as though you stay on the cylinder, so on a plan set to switch gas it now says “Assumes no handover between cylinders” under the result.

  • “Free gas” in the gas sheet now counts both cylinders of a twinset. The line under the cylinder fields read the same figure whether you picked Single cylinder or Twinset, so a twinset looked like it held half what it holds, on the one screen where you size your gas. It now shows what you are carrying and says so. The Gas Usage tool and saved gas presets were the same.

  • Sheets no longer slide their title under the clock when the keyboard opens. Tapping a number field in the level or gas sheet pushed the title and the confirm tick behind the status bar.

  • The profile graph switches units with everything else. After changing depth to feet, the table read feet while the graph’s axis still read metres until you left the plan and came back.

  • Buttons grow for their labels again, including Unlock Dive Kit Pro. On a shared plan you can only read, that button showed “Unlock Dive Kit” and lost the last word, and it stayed exactly the same size however large you set your text. Buttons with a label now take the height their words need. This was also why the Save and Restore buttons on the Backup screen kept losing their names after two earlier attempts to fix them.

  • The Deco Planner’s input cards keep their titles at large text sizes. On a rebreather plan the card headings were cut to “Diluen”, “Botton” and “Decc”, the read-only notice read “Read-Only P”, and after scrolling some headings and the Unlock button label were gone. The numbers on those cards were always right; it was the words naming them that went. Every one of those titles now wraps onto a second line instead of being cut. Settings rows, bottom-sheet titles and the tool names in the reorder list do the same.

  • Larger text no longer wipes the names off the Plan grid. One notch above the default iOS text size the tool titles were clipped to a sliver, and two notches up they were gone, so the app’s main screen was a grid of unlabelled icons. Those are ordinary settings, not accessibility ones. The cards grow with their text now, and so does every button that carries a label: at the largest sizes the Backup screen’s Save and Restore buttons had been reduced to two arrows.

  • The safety disclaimer is readable now. On the last setup screen, the one that asks you to confirm you have read the terms, only one line of them was visible and nothing said the rest was there. The terms now take the space the screen has, and they fade out at the bottom edge while there is more to scroll.

  • Small gas volumes read properly in cubic feet. A cubic foot is 28.3 L, so a nearly-empty cylinder that showed 31 L in metric showed just “1 ft³” in imperial, and so did everything from about 14 L to 42 L. Volumes under 10 ft³ now carry one decimal, on the Deco Planner’s gas cards and on the Gas Usage tool’s steps and totals alike. A full cylinder still reads 77 ft³, and litres are unchanged.

  • Tool names on the Plan grid are shorter in five languages. German, Turkish, Swedish, Russian and Polish carried long titles that had to shrink to fit, so one grid showed three different title sizes and the two smallest were the tools a new diver looks for first. They now follow the same short form English uses. The Buoyancy card in Turkish and the Best Mix card in Polish were also still in English, and the Turkish cylinder card now uses the word Turkish divers use.

  • The bottom time finder explains itself in one line now. A nine-line paragraph used to sit between the Find button and your answer. The short version stays in front, and the whole explanation is one tap behind the question mark beside it. Nothing was cut.

  • Gas Specs was still called by its old name in five languages. Turkish, German, Swedish, Russian and Polish showed the tool as “EAD, PPO₂, …” on the Plan grid, on its own screen and on its tutorial, with the trailing dots printed as if the name had been cut off. All five now have a name in their own language, everywhere the tool is named, and Korean matches its own glossary.

  • The Turkish deco planner tutorial was mostly untranslated. Ten of its twenty steps carried one opening sentence in Turkish where the English ran to thousands of characters. Every step is now translated in full.

  • Three PPO₂ warnings printed a template placeholder where the pressure belonged, in all eight languages. A gas at 1.62 bar now reads as 1.62 bar.

  • Blend Planner asked for a bleed it did not need when you work in psi. Topping 800 psi of EANx28 up to 3000 psi started with “bleed to 798 psi”. Related psi plans could dump good gas or give up with “No solution found” on a plain 21% to 32% fill. Both are fixed, and plans now land on the pressure you asked for. (reported on the feedback board)

  • The Remaining Gas column disagreed with the gas total underneath it on CCR plans. The two were computed by different code following different rules, and the deep leg of a CCR bailout was the worst case, roughly a third over-consumed. The column now mirrors the engine stage for stage. (reported on the feedback board)

  • Gas presets could not be added again once the editor sheet closed itself, and the preset button vanished from the tools when you deleted every preset. (reported on the feedback board)

  • The Android back button now closes the open bottom sheet instead of leaving the screen behind it. Stacked sheets unwind one press at a time. (reported on the feedback board)

  • The ”+” for diluent switches on CCR Defaults did nothing. A diluent switch points at one of a plan’s own bailout cylinders, and your defaults have no cylinder list to point at, so the dead control is replaced by a line saying where switches really live. (reported on the feedback board)

  • SRMV/SAC prefilled the wrong start pressure in psi. A measurement that ended at 1740 psi opened the next one at 725 psi.

  • The +3 min and +5 min tabs showed a profile that did not match their own schedule on any multi-level plan whose deepest level was not the last one. Both sides now extend the last level, matching open circuit and the rule the engine has always used.

  • A contingency that lost a gas a level was breathing replanned the dive on an arbitrary cylinder, which could put a 50% deco mix on a 45 m bottom with no warning shown. Affected levels now move to the best surviving legal gas at their depth.

  • A gas switch between dive levels is now charged for the purge minute the tissue model already counted. The table and the Gas Consumption card used to disagree by around 10 bar on a 60 second switch at 45 m.

  • A dive level you breathe open circuit on a rebreather plan is now charged to its cylinder. The card was reading about 86 bar high on a 45 m loop dive with a 10 minute open-circuit level at 30 m.

  • The planner printed metres to imperial divers in four places, including the profile graph’s depth axis and the level sheet’s depth label.

  • Slate export could print a schedule the planner never computed, or label a loop ascent “Full Bailout”. The export sheet now shows the reason instead of the preview.

  • Share link fixes. A bailout view deeper than 25.5 m arrived at the wrong depth, a CCR plan with no open-circuit cylinders arrived carrying one it never had, an imported plan could be graded at the receiver’s water temperature rather than the sender’s, and a link could stop at ten dive levels and drop the rest without saying so. Links now carry every level.

  • An OTU over the daily limit showed only a caution, where the engine and the shared plan on the website both called it critical.

  • A cylinder could read green in the stop table and yellow on its own gas card, because the two judged it by different rules. Both follow your reserve rule now.

  • A gas’s depth range ignored your water type, so a plan in fresh water or the Red Sea showed a maximum depth the warnings disagreed with.

  • The deco planner tutorial taught a gas density formula the app does not use, and every worked figure in that step was recomputed against the code.

  • The Polish app speaks one language throughout. Tool names, the deco planner’s own name, and the words for setpoint, nitrox, trimix, EAD, END, CNS, gradient factors and partial pressure all changed depending on which screen you were on. They match everywhere now, and follow the terms Polish divers are actually taught. No number or limit changed.

  • Korean reads more consistently. A review against Korean diving material tidied the wording across the app. The bailout chips in the Deco Planner are in Korean instead of half English, the setpoint schedule uses one name rather than two, and the breathing rate figure is expanded the way Korean divers are taught it. Terms that had picked up a second spelling now read one way. The acronyms stay as they are, in Latin letters, because that is how Korean divers write them. On the rebreather setpoint screen, the two entry boxes now line up with each other when a label is long enough to run onto a second line.

  • Turkish now reads the way Turkish divers talk. A cylinder is a tüp, not a silindir, which is the kind of cylinder an engine has. Buoyancy is yüzerlik everywhere instead of four different words, one of which meant swimming. Time to surface and the CNS clock are TTS and CNS, the same letters you read on your dive computer, and rebreather copy keeps setpoint, diluent and loop. Two tutorials that were still in English are translated. Nitrox and Trimix are spelled one way, numbers use the Turkish decimal comma, and a lean gas is no longer described as a grease-free one.

  • Russian reads like a diver wrote it. The app was inventing Russian abbreviations for MOD, EAD and SAC that no Russian diver uses, calling a rebreather loop by a word borrowed straight from English, and naming the setpoint and the diluent four different ways between the field you set and the warning about it. Headings were capitalised the way English titles are, which Russian does not do. Two tutorials, Mix Result in full and a third of Gas Specs, were still in English. All of it now follows how Russian divers are actually taught and what their dive computers already say in Russian.

  • The Swedish app now uses the words Swedish divers actually use. A cylinder is a flaska, the two configuration chips read Singelflaska and Dubbelpaket, oxygen toxicity is syrgasförgiftning, and every tool’s help text now opens with the same Swedish name shown on its tile. Headings and dashes follow Swedish writing rather than English, and three tutorial sections that were still in English have been translated.

Thanks to ly.shen for a native speaker’s review of the Simplified Chinese, which produced the terminology fixes, the stop time rounding rename, the fluency rewrite and the large text size fix in this release.


2.8.7 (13 August 2026)

A tester feedback release: descending gas switches now render where the engine actually switches, and Auto gas stops putting deco gases on your descent.

New

  • DSMB buoyancy preset in the Buoyancy Calculator’s gear list, and the Reel/Spool preset lightened to match a typical finger spool. Every preset weight stays editable after adding.

Improved

  • Auto gas looks ahead on the initial descent. Until the dive first reaches its deepest level, an Auto level only picks a gas whose MOD also covers the bottom, so a 6 m bubble check before a 33 m bottom on air plus EANx50 resolves to the bottom gas rather than the deco gas. That keeps deco gases off the descent, keeps them in the lost-gas contingency list, and removes a spurious deep gas switch row.

Fixed

  • The plan table rendered descending gas switches at the wrong depth. With a rich gas on a shallow first level, a slate could read “descend 6 to 33 m on EANx50, switch at 33 m”, far below that gas’s MOD, even though the computed schedule had safely switched at 6 m. The table now matches the engine.
  • Gas Specs hazard alerts no longer read as app errors. The density, PPO₂ and hypoxic-mix alerts showed a generic bold “Error” heading. They now carry explicit hazard titles such as “Gas density too high”, matching the Deco Planner.
  • The deco planner tutorial claimed the default descent rate is 18 m/min. It is 20 m/min. Corrected in every affected language.
  • The CCR setpoints sheet could silently move your bottom setpoint on older rigs when you edited only the Deco field, and “Use simple setpoints” deleted a stepped deco schedule without asking. It now confirms first.
  • Ambient and fill temperature inputs misaligned in the Gas Blender and Mix Result environment cards when a label wrapped to two lines.
  • “Reset all” in the plan settings now actually resets everything. On a CCR plan with a “stay on loop” override it used to write a stale copy of the old settings back over itself, restoring every override it had just cleared.
  • Scenario tables could show a different auto gas than the engine used.

2.8.6 (16 July 2026)

Deco Planner settings split into two tiers, a simple setpoint view for straightforward rebreather rigs, and a guide page on why two planners disagree.

New

  • A guide page: “Why two planners give different runtimes”. A checklist of the inputs that must match before you compare Dive Kit against another planner, built around a real case: a 90 m CCR plan that read 52 minutes shorter in another app because it had been entered with a zero-helium EANx10 diluent instead of trimix 10/70. With genuinely matched inputs the two engines agreed stop for stop within about 2.5%.
  • A simple setpoint view for CCR rigs. When your rig runs one setpoint from the surface through the bottom, with a single deco setpoint and no diluent switches, the Setpoints sheet shows exactly two fields and puts everything else behind an Advanced disclosure. Rigs already using the advanced options open straight into the full view.

Improved

  • Deco Planner settings are organised in two tiers. Both the per-plan Settings sheet and the Edit Defaults screen now lead with the three sections divers change while planning, Gradient Factors, Stop Configuration and Environment, and collect everything else under one collapsed Advanced group. An override inside Advanced lights up the Advanced heading, so a collapsed group never hides a deviation from your defaults. Prompted by rebreather tester feedback that a quick plan drowned in equally weighted sections.
  • A new pinned CCR level takes its setpoint from your rig instead of a fixed 1.1 bar.

Fixed

  • Android themed icons showed a solid black square. Launchers that tint app icons were tinting every pixel of an opaque background, so the whole canvas came out as one block instead of the wave mark.

2.8.5 (11 June 2026)

Simplified Chinese as the seventh language, imperial cylinder capacities that match US spec sheets exactly, and a floating glass tab bar.

New

  • Simplified Chinese (中文). The entire app, roughly 3,800 strings across every tool, tutorial, checklist, dive signal, warning and settings screen, translated against a canonical diving terminology guide checked against mainland Chinese usage. Chinese renders in a bundled font, because the app’s usual typeface has no CJK glyphs. Requested by a diver on ScubaBoard.

Improved

  • Imperial cylinder capacities now match US spec sheets exactly. Prompted by sharp ScubaBoard feedback, every free-gas volume moved from a 1 bar to a 1 atm surface reference, and the imperial rating is now computed the way US manufacturer charts state true capacity: real gas at 70 °F. An AL80 now reads 77.4 ft³, exactly Luxfer’s published figure, where it used to read 79. Steel HP cylinders land on their names. Gas figures move by 1 to 2%. Deco stop times and runtimes do not move at all, because this is a cylinder contents convention, not tissue maths.
  • Imperial cylinder readouts show the rated capacity, not the at-fill content, so an AL80 at 1500 psi reads “77.4 ft³ @ 1500 psi”, which reads like “an 80 at 1500”. The old figure sat about 1% above the rating on a full fill and looked like a bug next to the capacity field.
  • A floating glass tab bar. The full-width bottom bar is now a compact centred pill that floats above the content, with the content scrolling beneath it through a frosted backdrop. The strip the old bar reserved is given back to every screen. Inside a tool the bar takes that tool’s colour, and the highlight cross-fades between tools rather than snapping.
  • The Deco Planner stats bar is now a floating pill stacked above the tab bar, with a real blur on more iPhones than before.
  • The metric cylinder size field is labelled “Volume” rather than “Water volume”, with the help sheet still explaining that the litres are the cylinder’s water volume.

Fixed

  • CCR diluent use on multi-level descents was under-counted. A staged descent, say 20 m then 40 m, charged only about two-thirds of the diluent that a direct drop to 40 m charges, even though the loop needs the same gas either way. Remaining-diluent figures read optimistic on staged CCR plans, which is the unsafe direction.
  • Gas consumption now respects altitude. Planning at altitude computed PPO₂ and density from the thinner surface pressure but consumed gas as if at sea level, overstating stop gas by roughly 19% at 2400 m.
  • Buoyancy gas weights were about 1.3% high. An AL80 of air at 200 bar now weighs in at 2.61 kg.
  • Shared plans carry exact cylinder sizes. A shared “80 ft³” could read back as 80.2 on the recipient’s screen.
  • SAC in bar/min reads as gauge arithmetic again: 10 bar breathed over 10 surface minutes shows exactly 1.0 bar/min.
  • Blend Planner “Total gas used” over-counted the first step, charging it for the cylinder’s whole target pressure instead of the gas added on top of what was already in there. The plan steps and the resulting mix were always correct; only the summary was wrong.

2.8.4 (10 June 2026)

Cylinder sizes entered the way you actually name them, redesigned gas cards, and all 93 dive signals released as open data.

New

  • Cylinder size entry in your own sizing language. One cylinder input now drives every place a cylinder is described, from the deco planner to the blender to the buoyancy tool. Metric divers enter the water volume in litres as before. Imperial divers now enter the cylinder the way US cylinders are named, capacity in ft³ plus the rated working pressure, so an AL80 is 80 ft³ at 3000 psi. A hint under the fields always shows the computed counterpart.
  • Dive signals open-sourced. All 93 signal illustrations, hand, light and buddy contact, are published under CC BY 4.0 with a machine-readable dataset, so anyone can print them for briefing cards, use them in training material, or build on them with credit.

Improved

  • Gas consumption cards redesigned. Each cylinder card puts the gas name and Used on one row, right-aligned over the consumed end of the bar, with a labelled Remaining row below it as the prominent warning-coloured figure. Each line reads pressure first, then the volume a size smaller, because volume-first divers asked for it to be readable while pressure stays the focal number.
  • Cylinder working pressures travel with shared plans, so a recipient sees “80 ft³ @ 3000 psi” exactly as you entered it.
  • CCR bailout uses your plan’s own settings. The separate Deep SAC and Deco SAC bailout settings are gone. Bailout gas now runs at your Deco SRMV and the bailout schedule always runs the plan’s gradient factors. Bailout figures change with this release: the old behaviour consumed at a flat 30 L/min, so plans with a Deco SRMV below 30 now show lower bailout consumption.
  • Deco table time formatting is now uniform per mode. A table never mixes 25’ and 25’06” row to row. The plain-text slate also auto-sizes its columns, so exports carrying seconds or long dilout labels stay aligned.

Fixed

  • Imperial cylinder entry stored absurd sizes. The old volume field asked for water volume in ft³, where an AL80 is 0.39, so typing the familiar “80” was silently clamped to 3.5 ft³, a 99 litre cylinder, and the plan then reported impossible figures like “668 ft³ remaining” on an AL80. Reported by doctormike on ScubaBoard, and the reason for the cylinder entry rework above.
  • The dive profile no longer appears to cross its own ceiling. On the graph the dive line could be drawn a metre or two shallower than the decompression ceiling during the ascent, which looked like the plan was breaching its own limit. The schedule and the ceiling were always correct; each row’s runtime was dropping the roughly 20 second ascent hops between deco stops, so the staircase was drawn a few minutes early. As a bonus the Run column now matches what MultiDeco shows at each stop, having been reading 1 to 3 minutes short.
  • Terms and privacy links inside the app now work on every purchase surface and the Legal settings screen.
  • Bailout warnings now honour your thresholds rather than falling back to the built-in defaults, so a stricter custom CNS limit fires on the Full Bailout view.

2.8.3 (9 June 2026)

Real gas everywhere, decanting from one cylinder to another, and a help sheet on every tool.

New

  • Mix Result and Blend Planner gain Decant mode. Join two cylinders with a transfill whip and let them equalize. Mix Result tells you the mix and pressure each one ends at. Blend Planner is the planning counterpart, for topping a cylinder off from another with no bank or compressor: it shows the reachable mix envelope up front and, when a target cannot be reached, names why and points at the closest mix you can get.
  • A help sheet on every tool card. Each tool on the Plan home screen now has a ? that explains what the tool does and when to use it, including how Mix Result and the Blender differ.
  • Three new checklist presets: a recreational predive safety check (BWRAF), an open-circuit tech predive with pressure test timers, and a tech dive plan review that walks mission, gas, deco, oxygen and thermal.
  • Water density values explained. The Diving > Water density setting gained a help sheet listing what each option means with its approximate density.
  • Rate Dive Kit in Settings, opening the store’s review page directly.

Improved

  • Cylinders now read real deliverable gas. Cylinder sizes and gas planning used the ideal gas law, which overstates a high-pressure cylinder. Dive Kit now models compressibility from NIST reference data for oxygen, nitrogen and helium, combined for any mix including trimix, and the stored cylinder data was made honest: each cylinder carries its true water volume instead of a number fudged to make the ideal-gas maths land on its marketed name. The change is conservative for planning. Deco schedules are unaffected.
  • Gas mixing and blending use real gas too. For nitrox the difference is tiny, well inside what an oxygen analyzer reads. For trimix it matters: helium is the least ideal of the three gases and an analyzer cannot catch a helium error, so the recipe needs to be right up front. Predicted fill pressures can differ by a bar or two from an old ideal-gas blending chart, and Dive Kit’s are closer to what you will actually analyze. Always analyze a blended cylinder before diving it.
  • Shared deco plans show real gas on the web too.
  • The review prompt was reworked. Instead of a bare system alert on app open, Dive Kit asks with a bottom sheet right after a genuine win, never in your first week, with a “something not right?” link always there so unhappy feedback reaches us rather than a one star review.
  • Mix Result and Blend Planner layouts were rebuilt so the pressure value no longer collides with its unit, the current and target cylinders read as two cards with an arrow between them, and every mix is named the same way across both tools.
  • Water density is one setting. The deco planner now follows the global Diving > Water density setting instead of keeping a separate copy.
  • New CCR plans seed 232 bar cylinders rather than 200 bar.
  • Clearer diluent labels on CCR dilout plans. Once a plan uses a dilout, every loop row names its diluent: the onboard one bare, a dilout in brackets, with a short legend under the table.

Fixed

  • The deco profile graph drew its ceiling band too deep near the end of a dive, making it look like the plan sent the diver above the ceiling. The stop schedule was always correct; the drawn ceiling came from a separate pass that used the wrong gradient factor.
  • The Gas Blender’s Edit Bank sheet now lifts above the keyboard.
  • A cylinder reading 0 bar is treated as truly empty in the continuous blender, so a stale leftover mix no longer makes a fresh fill look impossible.
  • Mix Result’s O₂ and He inputs couple, so the two can never exceed 100% together.
  • The cylinder picker’s search field no longer clips letter descenders or leaves a large gap above the keyboard.

2.8.2 (5 June 2026)

Rebreather divers get proper dilout support, and everyone gets a checklists tool.

New

  • Checklists. Build and run dive checklists with sections, per-step countdown or stopwatch timers that survive an app restart, and per-step Notes for recorded values such as cell mV or a gas analysis. Six presets back the create-from-preset flow. Checked steps lock against accidental edits, a countdown sends a notification when it finishes even if the app is closed, and completion is celebrated. Free tool, every language. Requested on ScubaBoard.
  • Diluent switches (dilout) for CCR plans. A dilout is a bailout cylinder breathed through the loop as diluent, which is how real rigs carry a second diluent. The help explains why divers do it: faster helium off-gassing on long trimix decos, safe flushes at shallow stops where a hypoxic bottom diluent cannot sustain you, and the bottle is already on your back. Empty by default. From CCR diver feedback on Reddit: “usually the 2nd diluent is one of the bailout tanks”.
  • Diluent switch flush consumption. Every diluent switch now costs two loop flushes at the switch depth, so a 6 L loop switched at 30 m draws about 48 L from the incoming cylinder. Previously a diluent only switched to during the ascent showed zero consumption.
  • A dilout versus bailout overdraw warning. Breathing a bailout cylinder as a dilout and bailing out both draw from the same bottle, so the planner now warns when the two together need more gas than that cylinder holds. Using a bailout bottle as a dilout is never flagged by itself, only the arithmetic failing.
  • A decimal separator setting in Appearance: Auto, 1.3 or 1,3, applied to every displayed number.
  • EU standard 232 bar CCR bottles and a light Faber 12 L 200 bar, both from the same Reddit feedback.

Improved

  • Auto levels on CCR plans always breathe the onboard diluent. The previous resolver scanned your whole diluent inventory per level and could quietly put a bottom segment on your deco mix. A diluent switch now only ever happens where you planned one.

Fixed

  • Comma decimal input. European keypads only offer ”,” as the decimal key, and typing 1,3 into a number field silently committed 1.0. Every numeric input now accepts both, and an ambiguous string is rejected rather than guessed at. Reported on Reddit.
  • Bailout views no longer double-count loop consumption. The Full Bailout view showed the full loop run’s oxygen and diluent figures beside the open-circuit bailout draw, overstating what a bailed dive takes from every CCR bottle. Conservatism is for safety margins, not bookkeeping errors.
  • Confirming an edit while a number field was still focused could duplicate a cylinder or a dive level. Guarded, with a one-time repair that removes any duplicates the old bug created.

2.8.1 (3 June 2026)

The release that stopped the planner freezing on aggressive gradient factors.

New

  • A plan that cannot surface now answers with the nearest plan that can. Some settings make decompression mathematically impossible. The classic case is air at a 6 m last stop with a low GF high, where the tissues at that stop keep loading toward a pressure above what the surfacing gradient ever tolerates, so the stop can never end. The engine now detects this exactly and recomputes at the smallest GF high that can complete the deco, with a critical banner above the graph saying so. Every export records the gradient factors the schedule was actually computed with, never the ones you asked for, so a printed slate can never claim a conservatism its table does not deliver.
  • Inverted gradient factors such as 90/70 are now accepted, meaning more permissive at depth and stricter near the surface.

Improved

  • The “Precise” stop time option is now called “1s”, matching its “30 sec” and “Minutes” siblings.

Fixed

  • The deco planner could freeze forever at a low GF high. With the default 6 m last stop on air at GF 50/50, one of the automatic contingency profiles sent the engine into an endless stop loop even when the base plan computed fine. The table greyed out and never updated, the hung calculation poisoned the next one, and an export taken in that state could pair a new GF label with a stale schedule. Fixed by the impossibility detection above, plus a hard runtime cap, and a failed calculation now shows a visible red error instead of a silent grey freeze.
  • An empty-looking card on the tools home. A styling regression meant the “update ready” card drew white text on a white fill. The same fix restored severity fills on alert boxes, deco warnings and buoyancy advisories, and the highlight on a selected row in several pickers.
  • Number inputs could get stuck rejecting all typing until an app restart. Any number field could enter a state where every character you typed instantly reverted. The input now heals itself the moment it receives a keystroke, and a recovered edit session falls back to auto-saving so a typed value can never silently fail to save.

2.8.0 (1 June 2026)

A very large release: the public user guide, a design overhaul, rebreather deco setpoint schedules, gas-banded PPO₂ limits, stop times to the second, and a rebuilt buoyancy model.

New

  • The public user guide at divekit.app/guide. A page per tool, plus deco engine internals, gradient factors, accuracy and validation, rebreathers, gas presets, subscription, offline use, sharing and troubleshooting. It is now maintained as part of every release.
  • Plain-language definitions where the jargon is. Tappable (i) definitions on the Gas Analyzer stats (EAD, END, MOD, PPO₂, gas density) and on the SRMV/SAC results, with a “New to this? See the guide” link on the jargon-heavy tools.
  • CCR deco setpoint schedules and diluent switching. The decompression phase can run a depth-keyed schedule rather than a single deco setpoint, for example 1.4 then 1.5 at 12 m then 1.6 at 6 m, which is how rebreather divers minimise deco. The table shows the actual per-stop setpoint and marks each depth where it steps.
  • Per-level CCR diluent. On a multi-diluent rig each diluent is its own option on a dive level, and Auto now picks the diluent too: the leanest one that keeps the loop gas comfortable, stepping up to a helium-rich diluent only when the lean one runs too dense or too narcotic.
  • Deco PPO₂ by gas, the way MultiDeco does it. One “max PPO₂ 1.6 for every gas” rule is replaced by three bands chosen by a gas’s oxygen fraction: lean below 28% at 1.4, mid to 45% at 1.5, and rich at 1.6. So a lean deep mix such as 21/35 is switched shallower, at about 57 m rather than 66 m, matching MultiDeco, while oxygen still runs to 1.6 at the shallow stop.
  • Stop times to the second, with an optional round-to-minutes mode. A 1 minute 5 second hold now reads 1’05” instead of a display-rounded 2’. The rounding happens inside the engine, not the display, and only ever over-holds, so a rounded table always matches the schedule you would dive.
  • Gas Blender continuous mode. Flow ratios for constant-flow mixing panels and the expected in-line analyzer readings for two-analyzer setups, with a gas injection order selector for trimix and a panel diagram showing which gas is injected first and where each analyzer reads.
  • CCR defaults are a full blueprint of the rig card, so whatever you set there is exactly what a fresh CCR plan starts with.
  • The MultiDeco cross-reference harness, answering community requests to see how the planner compares. A reproducible comparison across 22 scenarios covering air, nitrox and trimix, salt and fresh, sea level and altitude, 3 m and 6 m last stops, open and closed circuit, and a repetitive dive, published side by side on the website.
  • Every deco planner setting is now per-plan and travels in the share link, so a buddy opening your link sees the exact same warnings you do.

Improved

  • A design token refresh. Every surface now takes its colour from one semantic system, so dark mode is correct everywhere. The accent was firmed to a high-contrast ocean blue for sunlight, and the safety-critical readouts (the stop table, remaining gas, stop depths) were enlarged and switched to more readable text for sunlight legibility. High-frequency controls now meet a thumb-sized touch target with visible press feedback.
  • The buoyancy calculator was rebuilt around real foam behaviour. Informed by the community “Optimal Buoyancy Computer” spreadsheet by rsingler on ScubaBoard and cross-checked against published foam-compression data and the community calculator at buoyancy.cc, the tool gained a neoprene type selector, a suit-lift model that scales to your height and weight and the suit’s cut and accessories, an in-water float-test framing for personal buoyancy, and three safety advisories: marginal wing lift, wetsuit corking risk and overweighting. Wetsuit surface lift now accounts for the foam’s own weight, which lowers lift estimates by about 22% and trims recommended lead by 1 to 2.5 kg on thick suits. Formulas and references are published in the guide. Ideas were adapted; formulas were not reused, and the two tools knowingly diverge on foam mass.
  • Imperial gas presets and cylinders speak imperial properly, with a “Pick from common cylinders” button that fills the size and working pressure from a searchable list of known cylinders.
  • Unit conversions keep full precision internally and round only at the display, so 11.1 L and 0.392 ft³ now round-trip exactly instead of drifting.
  • Deco Planner settings and Gas Presets open in bottom sheets instead of expanding in place and pushing the rest of the screen down.
  • Every settings section carries a one-line description, so a newer diver knows what each one does.
  • Searchable cylinder and dive-signal lists, with helpful empty states, and a collapsible table of contents in every tutorial.

Fixed

  • Roughly a dozen surfaces broke in dark mode because they hardcoded their colours. All fixed, and a guardrail now keeps literal colours out of the code.
  • Screen-reader support across the custom navigation and controls, and the cylinder detail’s buoyancy indicator no longer relies on colour alone.
  • Content consistency: oxygen partial pressure is written PPO₂ everywhere (it had six spellings), “tank” became “cylinder”, and every em dash was removed from the English copy.
  • CCR deco stays on the loop instead of bailing out to oxygen at shallow stops, where the deco setpoint can no longer physically be reached. A 1.6 bar setpoint needs about 6 m of water.
  • A CCR deco setpoint schedule now switches at the scheduled depth, even when no stop lands exactly there.
  • The buoyancy results showed a raw placeholder instead of the depth unit, gear items opened a blank edit sheet, and the wetsuit cut had no effect when height and weight were left blank. All three were reported on Reddit and are fixed.
  • Onboarding could appear after you had already started using the app.
  • Lifetime owners were offered a “Resume” button that would have re-billed them for access they already own forever.

2.7.0 (29 May 2026)

Your rebreather’s loop volume and metabolic oxygen rate are now yours to set.

New

  • Configurable CCR loop volume and metabolic oxygen rate. Both were hard-coded engine constants that were never actually connected to the app, so they ignored your rig and could not be edited. Loop volume is now a rig property in Loop Config, and the metabolic rate is a global default you can override per plan, shown in L/min because it is your metabolism, not your breathing rate. The RMV settings section is renamed Gas Consumption to match.

Fixed

  • A CCR rig’s cylinder or loop volume can no longer corrupt a shared plan. A volume above 25.5 L wrapped and decoded to a wrong value on the recipient’s side.

2.6.2 (28 May 2026)

A subscription hub you can actually reach, and a Remaining Gas column on the printed slate.

New

  • A subscription screen under Settings, never pushed at you, showing your current plan with its renewal or expiry date and the single action that fits: switch to lifetime, renew a cancelled subscription, manage it, or unlock the deco planner. Because buying lifetime never automatically cancels a subscription (the stores do not let an app do that on your behalf), three separate safeguards prevent double billing, including a reminder that only appears if you own lifetime and still have a renewing subscription.
  • A Remaining Gas column in the slate export, in the preview, the PNG, the PDF and the copied text. On CCR plans it tracks the diluent cylinder. The on-screen slate preview now scrolls sideways so the full width fits on a narrow phone.
  • Edit Defaults is reachable from Settings, not only from inside a plan, and it opens with a short explanation of how defaults and per-plan overrides relate.
  • Help on how CCR loop gas is estimated. The Diluent and O₂ rows carry an (i) explaining that loop gas is not SRMV-driven like open circuit: oxygen is your metabolic rate times time on the loop, and diluent is loop-volume compression on descent plus a two-loop flush allowance.

Improved

  • Imperial divers get round contingency buffers. The built-in depth contingencies were fixed at +3 m and +5 m for everyone. Imperial divers now get +10 ft and +20 ft.
  • The Edit Defaults and Reset overrides buttons moved to the top of the Settings section, so a buddy’s shared plan can be reset to your defaults without scrolling.
  • The slate header stacks the plan name, contingency and bailout view on separate lines instead of cramming them into one.

Fixed

  • The slate export’s tab bars could not be scrolled on Android, so the contingency tabs and bailout chips looked fine but would not move. iOS was unaffected.
  • The Remaining Gas column overstated gas on multi-stop dives, shifting to an earlier, higher value at later stops.
  • The bailout view chip, slate title and “Add depth” sheet showed a raw placeholder and an unconverted metric depth to imperial divers.
  • Every bottom sheet now dismisses the keyboard the instant it starts closing on Android, which could otherwise leave the keyboard floating after the sheet was gone.
  • “Bailout at depth” now switches to open circuit exactly at the depth you chose, rather than carrying on to the next deco stop.
  • Full Bailout now shows the gas switch row at the bailout depth, so the moment you leave the loop appears on the slate.

2.6.1 (27 May 2026)

Imperial units become first class in the Deco Planner.

New

  • First-class imperial support across the Deco Planner. Every input and label now follows your unit settings instead of being hardcoded to metric: the gas editor, the level editor, the CCR loop config, the custom contingency builder, and every rate, depth and volume in the settings. Values round-trip cleanly, so 100 ft stays 100 ft, and the computed schedule is identical whichever unit you dive.

Improved

  • True imperial stop depth presets. With imperial selected, the last stop depth and deco step size toggles now offer standard imperial presets, 10/15/20 ft and 10/20/30 ft, rather than metric presets wearing foot labels.
  • A shared plan now shows the viewer’s units, because depths travel in the link in metres and are converted when they are displayed.

Fixed

  • Imperial units were messy in the Deco Planner, as a diver reported: cylinder capacity showed “0 cuft” instead of 0.43 ft³, the gases editor reverted to litres and bar, and dive settings such as ascent speeds reverted to m/min. The same rounding bug was fixed in the gas blender and the buoyancy cylinder input.
  • Small cylinders of 1 to 2.8 L could be entered in metric but not in imperial.

2.6.0 (23 May 2026)

Build the exact scenario you are worried about, and re-price your gas at a stressed breathing rate.

New

  • Custom contingency scenarios. A + at the start of the scenario row opens a builder where you pick any gases to lose, choose which dive level to adjust, and nudge that level’s depth or time. Each one becomes its own tab with an automatic short label, travels in the share link, and is recomputed by the recipient rather than trusted from the sender.
  • An ascent and deco SRMV lens. Recompute gas usage at a higher breathing rate without changing the deco schedule. A permanent “planned” chip sits alongside your own saved rates. The active rate applies to the ascent and deco stops only, because a breathing rate never affects the schedule, only the gas and the turn pressure.
  • Release notes in the update prompt. When an update is available the prompt can now show what changed instead of a generic message.

Improved

  • Bailout views read yellow. With a bailout view selected the profile line and the table’s header divider turn yellow, matching the bailout chips, and a custom SRMV chip highlights yellow too because a custom rate is a what-if lens.
  • Share links carry up to 16 cylinders, raised from 8, so a dense technical rig shares without silently dropping the tail.
  • The slate export targets A6 paper, a standard ISO size you can print, trim and laminate. Long plans paginate cleanly with the column header repeated on every page and no deco stop split across a page boundary.
  • The slate header was reorganised to read title, then stats, then turn signals, and it gained Turn Time, the runtime at which you reach ascent pressure.
  • A plan card shows the least rich gas across all the plan’s cylinders rather than whichever gas happened to be on the first level, because that is the gas that defines the dive’s depth.

Removed

  • The “Gas Sharing / Buddy OOA” scenario. It was the only scenario that did not change the deco schedule; it just doubled the breathing rate. The SRMV lens above does that interactively.
  • The “Lost All Deco Gas” scenario, because “all” was ambiguous about which gases it meant. Build the exact combination you care about with a custom contingency instead. The one-tap per-gas “lost” scenarios stay.
  • The Stress SRMV setting, which was fully wired up but never used by any calculation.

Fixed

  • Lost-gas contingencies removed the wrong gas. With 32/0, 50/0 and 100/0 on board, “Lost 50/0” dropped the 32/0 back gas, and the gas usage and stops were mislabelled accordingly.
  • The ICD warning now uses the correct rule of fifths. It previously had a second critical tier labelled a “1:2 rule”, and no such rule exists in the isobaric counter-diffusion literature. It is now a single advisory that fires when a switch violates Burton’s rule of fifths, staying quiet on the helium step-downs divers carry 18/45 for.

2.5.1 (21 May 2026)

Drag to reorder, a configurable hypoxia warning floor, and editable rebreather defaults.

New

  • Drag and drop for dive levels and gases. Long-press a row, drag it, release. Reordering levels recomputes the plan; reordering gases is purely cosmetic, because Auto ranks cylinders by how well they fit, not by list order.
  • A configurable minimum PPO₂. Hypoxia is now two tiers: a level warns when its breathed PPO₂ drops below the floor you set (default 0.18 bar) and goes critical below 0.16 bar, the consciousness limit, which is not adjustable. It judges the PPO₂ you actually breathe, so a hypoxic mix used only where its PPO₂ is fine does not warn.
  • Editable CCR defaults. Setpoints, switch depth and the oxygen and diluent cylinders now seed a plan’s rig from values you set, instead of hard-coded seeds. A plan also remembers its rig when you disable CCR, so your edits survive turning it off and on again.
  • An oxygen breaks toggle for the loop, so you can keep breaks on your bailout while keeping the loop schedule manual.
  • Adding a row now previews it live behind the still-open edit sheet, updating as you type, instead of appearing only after the sheet finishes closing.
  • An onboarding question about which planner you used before. MultiDeco and Baltic migrators get the travel-in-level-time convention turned on, so their first plan matches the semantics they are used to.

Removed

  • The gas mode setting. Multiple divers reported not realising they had to flip a hidden setting before they could plan trimix. Every tool now exposes the full range, with the MOD, PPO₂ and density warnings doing the guiding.

Improved

  • Warning thresholds now flag only when exceeded, not when met exactly. A 5.2 g/L density at a 5.2 g/L limit no longer warns; 5.3 does. CNS is the deliberate exception, because the convulsion ceiling is “at or above”.
  • CCR hypoxia is judged on your setpoint, not your diluent. On a rebreather you breathe the loop at its setpoint, so a low-oxygen diluent is not itself a hypoxia hazard. The spurious “diluent low PPO₂ at surface” warning is gone, replaced by a critical when the lowest setpoint in use is genuinely hypoxic and an informational note giving the diluent’s minimum depth for flushes and bailout.
  • A newer platform release underneath the app, which starts faster and uses less memory. It also raises the minimum iOS version to 16.4, so the iPhone 7 and older, the first-generation iPhone SE, the iPad mini 4 and the iPad Air 2 cannot run this version or any later one. That floor is Apple’s.
  • RMV is now written SRMV, short for surface RMV, everywhere in the app, because RMV alone is depth-ambiguous.
  • “Water Type” is relabelled “Water Density” on every screen that shows the setting, because the setting drives water-column density.
  • Max PPO₂ is capped at 1.6 bar, down from 1.8. No mainstream tec agency endorses higher for open circuit.

Fixed

  • A surface hypoxia false alarm on bottom and travel gases. The warning was raised for every working gas as if each were breathed at the surface, so a plan descending on EANx32 and switching to 16/55 at 30 m flagged the 16/55 as hypoxic “at surface”.
  • The hypoxic gas note said “do not breathe shallower than 0 m” for a mix that is breathable at the surface anyway.
  • Plan issues no longer contradict the number on screen. A 5.24 g/L density that renders as 5.2 no longer trips a 5.2 g/L limit and reports “5.2 exceeds 5.2”.
  • Fresh water plans were computed against salt water pressures in part of the engine’s ceiling maths, giving an anti-conservative bound. Fresh water now produces the slightly shorter deco the physics call for, matching MultiDeco’s fresh-water reference, and the Red Sea correctly produces slightly more deco than salt.
  • Repetitive dives with a zero surface interval dropped your tissue loading and planned a clean-tissue schedule, which is too aggressive for a back-to-back dive.
  • Tapping a certification card opened the carousel at the wrong card on iOS.
  • The “Add Gas” sheet was titled “Edit 21/0”.

2.5.0 (12 May 2026)

Rebreather planning gets a view selector, and the gas Auto-picker learns to think like a trimix diver.

New

  • A view selector for CCR plans. One chip row above the deco table replaces a confusing bailout checkbox and a per-gas toggle: CCR, Full Bailout, Bailout at 6 m, or a custom depth you add. Switch between the on-loop schedule, the full bailout, and “switch to open circuit at depth X” without touching the base plan. If no gas you carry covers the requested switch depth, the planner refuses with a clear message rather than producing a schedule on a gas above its MOD.
  • Stat detail sheets. Tap a stat in the bottom bar for a focused explanation of what it is, why it matters, and any related warnings with their limits inline.
  • Section help icons with a plain-language explanation of each section of the planner.
  • A gas switch point you can express properly. A dive level with a time of zero renders as a switch icon rather than “0 min”, so trimix divers can express the canonical “switch from travel gas at MOD” descent without inserting an artificial one-minute stop.
  • Variant tabs, delete, tutorial and chain-to-previous-dive all moved into the plan’s three-dot menu.

Improved

  • The Auto gas resolver was rebuilt for open-circuit trimix. It now vetoes gases above the critical density limit and the hypoxia floor, softly prefers lower density and lower narcosis, and breaks ties using Burton’s rule of fifths against the gas it just resolved, so a 60 m ascent picks 18/45 over 20/25 on isobaric counter-diffusion grounds rather than on oxygen fraction alone. It also fixes a long-standing mismatch where a row read “21/35” at a 21 m level while the engine was actually breathing EANx50.
  • Edit sheets auto-save on dismiss. Swipe down, tap away or close and the draft commits. An edit dismissal does nothing unless you touched the form; an add dismissal always commits, because opening “Add Gas” is itself the intent.
  • The printed slate went pure monochrome: true black on white, bold large type, bigger stage icons and full-black rules, aimed at a laminated slate under a dive light rather than a screen. The on-screen table keeps its safety colours.
  • The slate exports at a fixed 10 cm wide canvas on every device, so the same plan produces a layout-identical image on a phone, a tablet, or anything else. It matches the writable face of a standard wrist slate and prints onto A6 at 100%.
  • Critical is orange, not red. Red is now reserved for a plan that does not compute at all. Orange means urgent, but the plan still works.
  • The buoyancy recommendation is worded as a difference, not a prescription: “2 kg too positive” rather than “add 2 kg”, with the help pointing you at an in-water weight check.
  • Deco plans now open faster and edit more smoothly, because the planner keeps its own storage rather than re-writing every setting in the app on each slider drag.
  • A gradient factor switch now interpolates correctly on multi-level dives and a redundant ascent row no longer clutters the table.

Fixed

  • A pre-release safety audit corrected several places where the engine did the wrong arithmetic for fresh and Red Sea water, where the Auto gas picker and the engine could disagree about whether 100% oxygen is usable at a 6 m stop, and where the gas density stat reported the first level’s gas at the deepest level’s depth. That last one could show 11.2 g/L on the bar while the warnings called out 6.9.
  • A shared plan always encodes the loop ascent, so the plan in the link and the results in the link always describe the same schedule.
  • A bailout view falls back to the loop view when the last bailout cylinder is removed, instead of producing an error.
  • Older share links from 2.4.2 to 2.4.4 decoded the END threshold from the wrong position.
  • The calendar picker was dark text on a dark background on iOS.

2.4.4 (22 April 2026)

Level times can now include the travel to reach them, matching what MultiDeco divers expect.

New

  • An “include travel in level time” toggle. With it on, each segment’s entered time covers the ascent or descent needed to reach that depth, matching MultiDeco’s convention, instead of travel being added on top. Available as a default and a per-plan override, carried in shared plans, with a warning if a level’s time is shorter than the travel it needs.
  • An insurance expiry indicator on your Profile: an amber dot within 30 days of expiry, red once it has expired.

Improved

  • Deco stop depths are the set you configured, treating your last stop depth as a real stop rather than a clamp on the step-size grid. Two long-standing problems go away with it: a 9 m step size with a 3 m last stop now actually holds at 3 m instead of surfacing you straight from 9, and 100% oxygen with a 9 m step size now switches at the last stop instead of at the surface, where the switch was a no-op.
  • Deco stop sizes are now 3 m, 6 m and 9 m, all multiples of the natural Bühlmann grid.
  • Deco stops round up, not to nearest. You always wait at least as long as the engine planned, never less. Ascents still round to nearest, because they are informational.
  • The deco table preserves half-metre stop depths, so a 4.5 m last stop reads 4.5 m.

Fixed

  • The deco table did not visibly update when you toggled travel-in-level-time, and could show a fractional bottom time such as “23.5’”.
  • The active cylinder chip in the Gas Blender, and several toggle groups across the tools, went white on white after switching.
  • Tapping certification N still opened card 0 on iOS.
  • Your profile photo could disappear after saving on iOS, because the saved path stopped resolving across app launches.

2.4.2 (11 April 2026)

Two-tier warnings, a smaller share link, and a real fix for 100% oxygen in Red Sea water.

New

  • A minimum operating depth on hypoxic gas warnings, so you see the shallowest depth the mix is safe at.
  • Two-tier warnings everywhere. Every warning now has a bold heading saying what is wrong and a smaller line underneath with the numbers, so you can scan the list in a couple of seconds.

Improved

  • Share links are about 43% smaller for complex tec plans, and when a link would still be too long for a messaging app the planner drops the least important contingency scenarios rather than letting the link truncate.
  • Isobaric counter-diffusion now uses Burton’s rule of fifths instead of a flat nitrogen threshold, which is the industry-standard method validated on hundreds of deep trimix dives.
  • The default END warning threshold moved from 40 m to 30 m, the consensus across GUE, TDI, NAUI Tech, BSAC and CMAS.
  • Breathing rate settings accept 1 to 200 L/min, for unusually efficient or high-workload divers.
  • A fresh plan gets a bare name such as coral-cove, and only gains a number when it becomes the head of a repetitive chain.

Fixed

  • 100% oxygen was skipped in Red Sea water. In denser water the nominal MOD of oxygen at 1.6 bar is 5.92 m, which fractionally missed the 6 m last stop comparison, so the whole deco ran on the intermediate gas.
  • Per-plan warning thresholds were silently ignored by the engine, which used the viewer’s global defaults instead. A shared plan now shows the same warnings its author saw.
  • The END formula was wrong when oxygen is not treated as narcotic, underestimating narcosis.
  • Typing a gradient factor after picking a preset reverted to the old value.
  • CCR loop oxygen fraction displayed wrongly at altitude, though the schedule was always correct.

2.4.1 (28 March 2026)

Sliders that keep up with your thumb, and a gas analyzer that gets trimix right.

New

  • Equivalent air density depth (EADD) in the Gas Analyzer: the depth at which air has the same density as your mix.
  • A minimum breathable depth and hypoxic mix warning for mixes below 16% oxygen, and an alert when oxygen and helium add up past 100%.

Improved

  • Sliders were rewritten to animate on the device’s own UI thread, so the thumb and track keep up during a drag with no lag in either Best Mix mode.

Fixed

  • The gas analyzer treated helium as nitrogen in its EAD calculation for trimix.
  • EAD and END ignored your water type, always doing the sums for salt.
  • The gas analyzer’s inputs no longer auto-adjust each other.
  • Rebreather planning fixes, including the descent setpoint during the initial descent, lost-gas scenarios that silently returned the base plan, contingency time being added to the wrong level, and a bailout that started from the deepest level rather than the last profile depth.

2.4.0 (26 March 2026)

Rebreather deco planning arrives.

New

  • CCR (rebreather) deco planning, built as an add-on to the deco planner rather than a separate mode. Enable CCR, configure the rig, and each dive level can independently be a loop leg or an open-circuit gas, so hybrid profiles work. Includes a per-level setpoint, a separate deco setpoint, a dedicated low descent setpoint to prevent hyperoxia in the shallows, loop gas consumption tracking for both oxygen and diluent, oxygen breaks by dropping the setpoint, and bailout planning from the open-circuit gases you already carry. Cross-validated against MultiDeco on eight scenarios.
  • Air break settings can be overridden per plan.
  • A four-tier warning severity scale: info, warning, critical and invalid, so a cylinder under 50 bar reads orange rather than the red reserved for a plan that cannot be dived.
  • The Gas Blender remembers its state across app restarts.

Fixed

  • The END and EAD formulas were corrected from a gauge-pressure to an absolute-pressure form, matching the industry standard and MultiDeco. This affects the Best Mix trimix calculator and the Gas Analyzer.
  • Best Mix skipped its density check when the target END was deeper than the dive, so helium was not added for density when narcosis alone did not call for it.
  • Air break timers reset on every ascent and gas switch instead of accumulating.
  • The buoyancy calculator double-counted valve weight, an error of 0.7 to 2.6 kg, because the cylinder database figures already include a standard valve. End-of-dive buoyancy now assumes a 50 bar reserve rather than an empty cylinder, and several gear preset weights were corrected against manufacturer dry weights.

2.3.0 (23 March 2026)

Plan variants, a GPU-drawn dive profile, and the decompression engine moves to native code.

New

  • Plan variants. Snapshot the current plan, name it, and switch between alternatives inside one plan for side-by-side comparison, with ghosted overlays of the other variants on the graph.
  • A rebuilt dive profile graph, GPU-accelerated, with axis labels, gas switch annotations and grid lines in detailed mode.
  • Oxygen air breaks. Automatically insert breaks from a high-oxygen deco gas back to your back gas during long stops, to slow CNS accumulation. The breaks are real simulation steps, so tissue loading updates during them. Off by default.
  • Gas presets. Save a gas mix and cylinder as a named profile and pull it into any gas input with Quick Fill.
  • Trimix in the Best Mix calculator, working out the helium fraction from a target narcotic depth and an optional density limit, with four new tutorial steps covering trimix, END, gas density and worked examples.
  • Multiple saved cylinders in the Gas Blender, for planning consecutive fills at a fill station.
  • An update prompt when a new store build is available.

Improved

  • The decompression engine was rewritten to run natively on your phone, which is faster and is now the only implementation, so there is no second version of the maths to disagree with the first. CNS and OTU now cover the complete dive including the deco phase, where before they counted only the descent and the bottom time.
  • CNS is computed from ambient PPO₂ rather than inspired, matching how the NOAA tables were derived and what Shearwater, Garmin and Subsurface do. Slightly more conservative.
  • Gas switch MOD uses the deco PPO₂ limit for deco gases, matching MultiDeco and Shearwater.

Fixed

  • CNS and OTU previously ignored the deco phase entirely, which matters most on dives with high-oxygen deco gases.
  • A repetitive dive with a zero surface interval dropped the previous dive’s tissue loading.
  • The gradient factor slope was computed wrongly on multi-level dives where you go deeper after entering deco, and the slope was applied to only the leading tissue compartment rather than all of them.
  • Deco stops recorded the target ceiling depth rather than your actual depth.

2.2.2 (13 February 2026)

The app is now called Dive Kit, and the Gas Blender learns helium.

New

  • Trimix in the Gas Blender and Mix Calculator. Both tools now handle helium alongside oxygen for full trimix and heliox work, with helium-aware bank ordering and feasibility checks.
  • Deco plan results are cached, so reopening a plan restores it instantly instead of recalculating.
  • Duplicate a plan, share a QR code as an image, and see runtime, TTS and CNS on each plan card with colour-coded CNS.
  • A tutorial glossary defining TTS, RT, AP, CNS and OTU, and explaining runtime against turn time.
  • Gas weight at reserve in the cylinder edit screen, alongside the weight at fill pressure.

Improved

  • The app display name is now “Dive Kit” rather than “DiveKit”.
  • Turn pressure is renamed ascent pressure, and total time is renamed run time, matching dive planning convention.
  • Gear weight uses a sinks/floats toggle instead of asking for a negative number.
  • Larger, bolder number inputs.

Fixed

  • Removed the valve from the buoyancy calculation, which was double counting by 0.7 to 2.6 kg because the cylinder database already includes it.
  • Several buoyancy preset weights corrected, including a scooter that was listed at minus 3 kg when it is neutral in water.

2.2.1 (5 February 2026)

The rename from Skuba to Dive Kit, Polish, and shareable plan links.

New

  • Deep link plan sharing. Share a dive plan as a link that opens directly in the app.
  • Polish, the fourth language, across the whole app including every tutorial.
  • Drag-and-drop tool reordering on the Plan screen, with a reset button.
  • A sticky stats bar in the Deco Planner on small screens.

Improved

  • The full rebrand from Skuba to Dive Kit across every screen, translation and document.
  • A smaller plan export link, now carrying results so the website can render the plan.

Fixed

  • The plan delete dialog did nothing.
  • The buddy out-of-air contingency calculated wrongly.
  • Restore purchases incorrectly unlocked the deco planner.

2.2.0 (30 January 2026)

Repetitive dives, and a considerably more robust decompression model.

New

  • Dive plan chaining. Chain plans together to simulate repetitive dives with tissue saturation carried over from the previous dive, and a plan status card showing what was carried in.
  • Gas switching at a gas’s MOD during the ascent.

Improved

  • The Bühlmann model handles its edge cases properly: deep dives, long deco schedules, heliox mixes, extreme surface pressures and oxygen toxicity, with validation on the maximum supported depth of 200 m.

Fixed

  • Calculation failures and depth limits now produce a message instead of failing silently.

2.1.0 (27 January 2026)

The Decompression Planner arrives.

New

  • The Decompression Planner: Bühlmann ZH-L16C with gradient factors, gas planning, and exportable dive slates.
  • Travel gas support in dive planning.
  • A What’s New sheet after an update.
  • QR code sharing for dive plans.

Fixed

  • An Android crash, and a number of translation problems across the app.

2.0.0 (23 January 2026)

A complete redesign.

New

  • A redesigned app. Fresh interface with better visual hierarchy, higher contrast, and a layout built for reading in sunlight.
  • A unit converter, for the diving units the other tools use.
  • A double cylinders option in the SRMV/SAC and Gas Usage tools.

Improved

  • Every tool screen was redesigned: Best Mix, Gas Analyzer, Gas Usage, SRMV/SAC and Buoyancy.
  • Better tablet layouts, a thinner tab bar, and shadows that finally match between iOS and Android.

Fixed

  • Dark theme colours throughout the app, a slider bug, a toggle group glitch, and several onboarding problems.

1.2.1 (11 January 2026)

New

  • Rigging hardware in the Buoyancy Calculator, with a customisable weight per cylinder or group and an on/off toggle, plus descriptions for twinset, sidemount and stage configurations.
  • Gas density in the cylinder configuration screen, computed live from the mix.

Improved

  • “Tank” is now “cylinder shell” throughout the app, which is what divers call it.
  • Clearer labels on custom cylinder buoyancy for multi-cylinder setups.

1.2.0 (10 January 2026)

New

  • The Buoyancy Calculator, with a full tutorial explaining the concepts as well as the tool.
  • A cylinder configuration screen for managing your cylinders.
  • New hand signal artwork.

Improved

  • Unit conversion precision. Storage now keeps full precision and only the display rounds, so 1 lb converted to kg and back reads 1 lb rather than 1.1 lb.
  • Hand signals reordered, and buoyancy status messages translated.

Fixed

  • Missing translations across the app, hand signal descriptions, and carousel navigation.

1.1.8 (20 December 2025)

Improved

  • A new app icon.
  • END and gas density are always shown, in every gas mode, rather than being hidden in some.

1.1.7 (22 November 2025)

New

  • Custom icons for the Plan screen tools.
  • A copyable dive insurance number, so you can paste it where you need it.

Improved

  • Clearer tool names on the Plan screen, and updated cylinder, agency and certification data.
  • The carousel animation now follows your animations setting.

Fixed

  • The certification card carousel opened the wrong card on Android.

1.1.6 (7 November 2025)

Improved

  • Certification cards moved to a proper database, which makes them faster and more reliable.
  • EAN is written EANx throughout, for consistency.

Fixed

  • Divers on much older versions now migrate through every step, rather than skipping some.
  • Several padding and touch-target problems, including the dive centre field not auto-capitalising.

1.1.5 (3 November 2025)

New

  • Certifications. Store and manage all your dive certifications in Dive Kit: upload the cards, add the licence details, and get at them whenever you need them.
  • A Profile screen with your name, photo and key details.
  • An optional textured background in Appearance.
  • Toast confirmations when you save, update or delete something.
  • Two-column layouts on tablets for the certification and list screens.

Improved

  • A refined design system: updated brand colours, typography and spacing.
  • Smoother navigation and transitions, and faster storage.

Fixed

  • Haptics, focus and keyboard handling, and image caching on Android.

1.1.4 (31 October 2025)

New

  • A grain texture for visual depth, and new app icons and splash screens.

Fixed

  • Tutorial titles and translations.

1.1.3 (30 October 2025)

New

  • Icons in the tab bar.
  • An action sheet for cleaner choices.

Improved

  • A persistent header across screens, with consistent styling and no transition glitch.

Fixed

  • Markdown highlighting in dark mode, missing translations, and haptic feedback in the cylinder database.

1.1.2 (30 October 2025)

Improved

  • The dark theme was completely reworked. Shadows and borders now match the colour of the box they belong to, and lists have subtle alternating rows.

Fixed

  • Tutorial button colours, excessive modal padding on Android, and the disclaimer page opening scrolled to the bottom.

1.1.1 (26 October 2025)

New

  • Trimix mode in the Gas Analyzer.
  • The Blend Planner now shows several valid plans to choose from, rather than one.
  • Onboarding asks for your diving mode and units.

Improved

  • The Blend Planner algorithm and its handling of awkward cases.
  • “FO2” is now written “O2%” everywhere, because that is what most divers read.
  • Tool descriptions rewritten, and the resulting mix now appears before the gas usage section in the Gas Blender.

Fixed

  • Modal padding on both platforms, tablet landscape layout, and smaller device layouts.

1.1.0 (13 October 2025)

New

  • Over-the-air updates, with an install button once an update is ready.
  • A reset button in the Gas Mixer.

Fixed

  • A bug in the gas blender algorithm, and restored missing translations.

1.0.5 (9 October 2025)

New

  • Privacy settings with an analytics opt-out.
  • CNS tables in the tutorials.

Improved

  • Gas Usage allows a different breathing rate per step.
  • Clearer warning messages.

Fixed

  • The time slider in Gas Usage would not go to zero.

1.0.4 (1 October 2025)

New

  • EAD and PPO₂ warnings with proper warning and error text.
  • Updated tutorials for the Gas Usage tool.

Fixed

  • Gas Usage did not recalculate its steps, and the final summary rendered incorrectly.

Dive Kit holen

Elf Tools kostenlos. Deko-Planer: kostenlose Testphase, dann 4,99 $/Monat oder 24,99 $ Lifetime.

Im App Store ladenBei Google Play laden