Age | Commit message (Collapse) | Author |
|
If the user has not started Subsurface from a terminal
make sure that verbosity is enabled (verbose = 1), so that
the log files are populated with information useful for
debugging.
Signed-off-by: Lubomir I. Ivanov <neolit123@gmail.com>
|
|
Reset cns and heartbeat to 0
Reset ndl and bearing to -1
Signed-off-by: Stefan Fuchs <sfuchs@gmx.de>
|
|
This avoids printing useless info to the XML file.
Signed-off-by: Stefan Fuchs <sfuchs@gmx.de>
|
|
When filling samples with values during DC import fill sticky values
like CNS, NDL, stoptime,... immediately into current sample.
Otherwise we will not fill the sticky values into the last sample
created.
Add two new sticky values: heartbeat and bearing
Signed-off-by: Stefan Fuchs <sfuchs@gmx.de>
|
|
Fixup the NDL value to '-1' at the very beginning of a dive.
Some dive computer report a NDL of 0 at the very beginning of a dive
and then only some 10 seconds later they report the correct value
like 240 min for the first time.
Translate this 0 at the beginning of a dive into our internal '-1'
for no info available.
Signed-off-by: Stefan Fuchs <sfuchs@gmx.de>
|
|
Signed-off-by: Stefan Fuchs <sfuchs@gmx.de>
|
|
Type duration_t changed from uint to int.
Default value of '-1' introduced for some of the values in struct sample:
NDL used -1 as default.
Bearing uses -1 as default (no bearing set).
Display pXX, EAD, END, density, MOD only if values are larger than 0.
In profile don't display data from two first and two last plot_data
entries in info box.
Signed-off-by: Stefan Fuchs <sfuchs@gmx.de>
|
|
Currently, on Linux, after selecting a Bluetooth device the name of the
device is shown. On reopening the download dialog, on the other hand,
the address is shown. In the device selection dialog both are shown.
This patch changes the download dialog such that both, name and address,
are shown. The bulk of the patch introduces the name of the device in
the preferences and DCDeviceData. It has to be noted that DCDeviceData
is an encapsulation of the libdivecomputer device_data_t. Nevertheless,
the new Bluetooth-name field is, at the moment, not passed through to
libdivecomputer.
Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
|
|
On BLE connection timeout a weird error-message was shown, because
the controller was still in connecting state and no error string was
set. Therefore, handle the timeout case with a special case label.
Moreover, remove three unnecessary calls to disconnectFromDevice(),
which is called in the destructor of the controller anyway (verified
by looking at Qt source).
Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
|
|
Fixes two function names, where O2 was written as 02.
Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
|
|
Commit 97712559192ca82d introduces a compiler warning due to mismatched
pointer types. Fixed here.
Reported-by: Stefan Fuchs <sfuchs@gmx.de>
Signed-off-by: Jan Mulder <jlmulder@xs4all.nl>
|
|
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
|
|
Also fixed a spelling error and apparently some whitespace issue.
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
|
|
I'm sure this bug has heen here forever, but the CNS clock is
not very relevant for most divers, and even some technical divers
do not care about this value.
However, doing long decompression dives, the value can easily
grow over 100%, and a lot further. For example, the OSTC computers
use 2 bytes to store the CNS value in the profile data, and I
have multiple dives in my logbook going way over 255%.
This all said. Just store the CNS value in an unsigned 16 bit.
Signed-off-by: Jan Mulder <jlmulder@xs4all.nl>
|
|
Avoid adding the minimum gas switch time more than once even
if we skip some available deco gas.
Signed-off-by: Stefan Fuchs <sfuchs@gmx.de>
|
|
Commit d15779a calculates final stop based on stoplevels[2], but if final stop
is 6m/20ft, we should use stoplevels[3]. This fixes it.
Signed-off-by: Rick Walsh <rickmwalsh@gmail.com>
|
|
Some messed up logic was producing negative deco_time values for some no-deco dives. The CVA wouldn't converge and unrealistic VPMB ceilings were displayed in the profile. This fixes it.
See #762
Signed-off-by: Rick Walsh <rickmwalsh@gmail.com>
|
|
Otherwise the CVA won't iterate properly.
Signed-off-by: Rick Walsh <rickmwalsh@gmail.com>
|
|
We calculate tts every 30s, not every sample. Consider that when determining
the time that the ceiling would have cleared if it's after the surfacing time.
Signed-off-by: Rick Walsh <rickmwalsh@gmail.com>
|
|
This makes the calculations in profile.c a little simpler, especially now we
adopt consistent final ascent rate to determine deco_time since d15779a27
Signed-off-by: Rick Walsh <rickmwalsh@gmail.com>
|
|
This lets us calculate deco_time for real dives closer to the planner value.
Signed-off-by: Rick Walsh <rickmwalsh@gmail.com>
|
|
If we consider the actual time to ascend from the final stop when calculating
deco_time, then slowing the final ascent can lead to the final stop being
extended, which is completely nonsensical. For consistency with the original
VPMB implementation, we can't ignore the final ascent time completely, but if
we assume it is always the same (take default ascent rate of 9m/min) then
slower the final ascent won't lead to a longer final stop.
Signed-off-by: Rick Walsh <rickmwalsh@gmail.com>
|
|
Removing ext variable from profile.c should facilitate future performance
gains
Signed-off-by: Rick Walsh <rickmwalsh@gmail.com>
|
|
As it is not possible to delete dive sites from the logbook, we
need to make sure that we never save sites that are not tied to
any dive. With this change, unused site that are currently in
the logbook will also be removed, so it will also clear up
(wrong) historical data.
Supposed to fix #786
Signed-off-by: Jan Mulder <jlmulder@xs4all.nl>
|
|
A change of the font_size in preferences ended up in the wrong
preferences group (the GeneralSettings group), appearing to the
user as a non-saved preference. Fix is simple. Just set the
the correct group before saving a change in font_size.
Fixes: #780
Signed-off-by: Jan Mulder <jlmulder@xs4all.nl>
|
|
Recognize Aladin as the Bluetooth name of the Scubapro Aladin Sport
Matrix. Note that the Scubapro Aladin H Matrix most likely also
identifies itself using this BT name. But it probably uses the same
BT protocol (i.e. the G2 protocol) and therefore this should not pose
a problem. Ultimately a common name should be found.
Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
|
|
Signed-off-by: Stefan Fuchs <sfuchs@gmx.de>
|
|
Disable the possibility to plan o2 breaks of option
"last stop at 6m/20ft" is not set.
Signed-off-by: Stefan Fuchs <sfuchs@gmx.de>
|
|
Remove unused variables o2time and breaktime or convert into boolean.
Never consider minimum gas switch time when switching to o2.
Reflect this behavior also in the UI.
Signed-off-by: Stefan Fuchs <sfuchs@gmx.de>
|
|
QMap::operator[] creates a new default constructed entry in the map
if no entry with the given key exists. While not problematic (since
typically nullptrs are inserted) this is usually not what you want
for read access.
Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
|
|
Currently one has to explicitly use --win32console and/or
--win32log to enable a dedicated console (a console window
that opens next to the Subsurface window) or to enable file
logging on Win32.
This patch makes the following changes:
- removes the --win32* command line arguments
- removes the dedicated console window support
- if the app starts from a shortcut and not from a console, always
redirect stderr and stdout to _err & _out log files
- if the app starts from a console redirect stderr and stdout to that
console
Signed-off-by: Lubomir I. Ivanov <neolit123@gmail.com>
|
|
1) Destroy QLowEnergyService objects in destructor of BLEObject.
2) Let BLE object take ownership of the controller so that the
latter can be destroyed in the destructor of the former. This
introduces a certain ownership subtlety, which could be solved by
allocating the controller object in the BLE object. But let's
first do the less intrusive thing.
3) Destroy the BLE object for two error conditions.
Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
|
|
Signed-off-by: Robert C. Helling <helling@atdotde.de>
|
|
Signed-off-by: Robert C. Helling <helling@atdotde.de>
|
|
These got mangled with previous changes to stop length determination.
Fixes #662
Signed-off-by: Robert C. Helling <helling@atdotde.de>
|
|
When planning a VPM-B dive, the "deco time" ends at surfacing, which is after
ascending after a full-minute deco stop is complete, after ceiling clears. We
should take this into account when calculating the ceiling outside of the
planner.
Signed-off-by: Rick Walsh <rickmwalsh@gmail.com>
|
|
This means the iterations converge from an over-estimate, consistent with
planning VPM-B dives
Signed-off-by: Rick Walsh <rickmwalsh@gmail.com>
|
|
Signed-off-by: Rick Walsh <rickmwalsh@gmail.com>
|
|
This corrects the issue where the displayed ceiling in the profile was
"broken" by the planner, especially for shorter and shallower dives.
Also fixes issue outside of planner where the deepest VPM-B ceiling was shown
too early, messing up the deco_time calculation.
VPM-B plans respond to change in O2% in gas as expected (in my testing)
Fixes: #630
Signed-off-by: Rick Walsh <rickmwalsh@gmail.com>
|
|
If we consumed 0l/0bar in total from a cylinder there is no need to also
state that we consumed 0l/0bar during ascend.
Signed-off-by: Stefan Fuchs <sfuchs@gmx.de>
|
|
Because now we are trying to open a URL as if it was a local file.
Again, the goal is to accelerated debugging if things go wrong.
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
|
|
This is rather fragile code, and the capitalization of the error message
in libgit2 changed at some point. But commit 794739b4c0 ("strstr is a
case sensitive compare") didn't really fix the problem - as it broke
that same check for older libgit2 versions.
Instead use our new helper function to make it work with libgit2 old and
new.
Also, add some more error output so the next time we run into this it's
more obvious what broke and where.
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
|
|
That's not a standard functions, so let's just build it. This is not
the most efficient way to write it, but it will do.
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
|
|
Reported-by: Pedro Neves <nevesdiver@gmail.com>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
|
|
These options are not used any longer/were never used and can be
removed to not confuse the users.
Signed-off-by: Stefan Fuchs <sfuchs@gmx.de>
|
|
This string is substituted with the runtime increments derived of slight
variations in depth or bottom time in:
diveplannermodel.cpp:1058:
displayed_dive.notes = strdup(notes.replace("VARIATIONS", QString(buf)).toUtf8().data());
Translating it avoids substitution and we just get the translated
string.
Signed-off-by: Salvador Cuñat <salvador.cunat@gmail.com>
|
|
Fixes minor interface inconsistency: After a failed download, the
error message was also shown on subsequent successful downloads.
Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
|
|
When we create an empty repo we should simply state that in the commit message.
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
|
|
Otherwise the following call to do_git_save will potentially have incorrect information
about the cache validity of the dives in the divelist.
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
|
|
The user agent string already contains the (correctly capitalized) program name.
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
|