aboutsummaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)Author
2017-07-09QML UI: Proper button colorGravatar Joakim Bygdell
Make the "map it" button follow the theme color. Signed-off-by: Joakim Bygdell <j.bygdell@gmail.com>
2017-07-08QML UI: better icon for download from dive computerGravatar Dirk Hohndel
Thanks to Davide for paying for professional icon design. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-07-08If we detect a different model than expected, use itGravatar Dirk Hohndel
This is useful if the underlying code in libdivecomputer can reliably detect specific hardware models. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-07-07Add support for tank sensor battery for Perdix AIGravatar Dirk Hohndel
This is a bit awkward with a VENDOR event - but at the time the strings are generated, we don't have the information, yet, that we need to determine these values (we need the last sample parsed, but the strings are created as part of the dive headers. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-07-06BLE: reduce the noise of debug outputGravatar Dirk Hohndel
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-07-06QML UI: start BT discovery a tiny bit laterGravatar Dirk Hohndel
This way the AppLog starts with the name and version of Subsurface-mobile. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-07-06QML UI: drop AppLog title and add margin insteadGravatar Dirk Hohndel
The title was hidden under the title bar, anyway. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-07-06BLE: minor code cleanupGravatar Dirk Hohndel
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-07-06Make compile with Qt developer buildsGravatar Alex Blasche
subsurface/core/divesitehelpers.cpp: In member function 'virtual void ReverseGeoLookupThread::run()': subsurface/core/divesitehelpers.cpp:128:12: error: invalid use of incomplete type 'class QDebug' qDebug() << "no reverse geo lookup; geonames returned\n" << fullReply; ^ Signed-off-by: Alex Blasche <alexander.blasche@qt.io>
2017-07-06Enable building with standard Qt install path layoutGravatar Alex Blasche
In general this patch enables building of subsurface without being forced to use the official Qt binary packages. This is particularly helpful when having to debug Qt internals or having to deal with custom patches on top of the official Qt releases. The architecture dependent file path layout is only employed by official Qt binary packages. They are the result of a reordering at package generation time. If Qt was build for a single architecture, the standard layout does not add the architecture specific top level patch for the resulting binaries. Signed-off-by: Alex Blasche <alexander.blasche@qt.io>
2017-07-06Remove obsolete QT5_ANDROID_BINGravatar Alex Blasche
Signed-off-by: Alex Blasche <alexander.blasche@qt.io>
2017-07-04BLE download: EON Steel doesn't want to loop over readsGravatar Dirk Hohndel
This seems a bit brutal, but it does the trick and makes EON Steel downloads work again. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-07-04BLE: write confirmation isn't HW onlyGravatar Dirk Hohndel
Happens on the Suunto EON Steel as well. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-07-04Documentation: Merge and update french translationsGravatar Guillaume GARDET
Signed-off-by: Guillaume GARDET <guillaume.gardet@free.fr> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-07-04Address code reviewGravatar Jan Mulder
Addresses code review by Dirk. No functional changes. Signed-off-by: Jan Mulder <jlmulder@xs4all.nl>
2017-07-04BLE: read until no more data in coming inGravatar Jan Mulder
The current BLE read reads just one 20 bype packet. That packet size is set in ble_serial_ops, so, without being able to test on anything other than a OSTC3, I assume that this holds for other BLE DCs too. So, I think is is weird that those interfaces work with the current read() of just one packet at the time. As we need a blocking read (at least for the OSTC parser), just read all data that is available on the input. And when we think we are done, give the QtEventloop control to see if there is more, and process that incoming data as well. All this basically implements a blocking read. CAVEAT 1: This might break the reading from the currently working BLE devices. CAVEAT 2: With this, I still cannot read the OSTC3 completely. For developers familiar with the HW transfer protocol: it just stops while reading the first full dive (header + profile) command 0x66, despite correctly reading about 5Kb of data before. For some reason, I do not believe that this is related to this commit. CAVEAT 3: All above tested on Linux Desktop with bluez stack, and confirmed NOT to work on Android 7.1.2, build with Qt 5.9.0, And yes, I know 5.9.1 recommended. Signed-off-by: Jan Mulder <jlmulder@xs4all.nl>
2017-07-04OSTC over BLE: filter and track OSTC credit trafficGravatar Jan Mulder
1) As the OSTC sends data to the BLE central role (the SSRF client) over 2 characteristics, we have to filter the administrative credit data from the actual dive data that it received. The characteristcStateChanged function is adapted for this. 2) We have to be sure that the Terminal Client I/O is fully defined during opening the connecton to the OSTC. From 6d505b24f0c15 we can see that the last step in setting up the terminal interface is the grant of credits. This is done by writing to the proper (the only one, with id = 0x2902) descriptor of the credits RX characteristic. The here added slot is triggered on the completion of write of credits marking the final stage of the setup. Signed-off-by: Jan Mulder <jlmulder@xs4all.nl>
2017-07-04Use waitFor instead of timerGravatar Jan Mulder
See e79bede0aa5b3bd. We rather use wait in combination with spinning the event loop. Signed-off-by: Jan Mulder <jlmulder@xs4all.nl>
2017-07-04OSTC over BLE: Select the right serviceGravatar Jan Mulder
The current "select the correct BLE service to talk to" is flawed. It assumes that the first found non-standard UUID is the right one and apparently it is for some DCs. But not for the HW devices. The HW devices use a "standard" ie. approved by the Bluetooth SIG, controller, that comes with a UUID that our code currently considers standard so not to be the right one. This (simple) commit selects the right service for HW. The UUID is hard coded, and this is ok, because it is tied to the hardware used by HW. Futher, it does not change anything for other BLE devices. Signed-off-by: Jan Mulder <jlmulder@xs4all.nl>
2017-07-04OSTC over BLE: initialize Terminal I/O clientGravatar Jan Mulder
This initalizes the Terminal I/O client as described in paragraph 3 of http://www.telit.com/fileadmin/user_upload/products/Downloads/sr-rf/BlueMod/TIO_Implementation_Guide_r04.pdf This is for all Heinrichs Weikamp computers, that use referenced BT/BLE hardware module from Telit Wireless Solutions (Formerly Stollmann E+V GmbH). The 16 bit UUID 0xFEFB (or a derived 128 bit UUID starting with 0x0000FEFB is a clear indication that the OSTC is equipped with this BT/BLE hardware. Furthermore, most devices equipped with this BT/BLE hardware have BT addresses starting with 00:80:25:... Signed-off-by: Jan Mulder <jlmulder@xs4all.nl>
2017-07-03Fix the failing bundle signature on MacGravatar Dirk Hohndel
So THAT was why we had moved the plugins... Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-07-03Increase the BLE timeout to 12 secondsGravatar Dirk Hohndel
This seems really long, but one user appeared to get a response after almost 10 seconds. So going with 12 for some margin of error. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-07-03Rewrite the matching code for BT devicesGravatar Dirk Hohndel
This should be much more robust in getting us the correct Bluetooth address and the correct vendor / product for our selection. When we pick a paired device, we extract the address right from its name. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-07-03Don't add all discovered BT devicesGravatar Dirk Hohndel
This really doesn't help us as we can't associate a vendor/product with devices we don't recognize, so we can't download from them, anyway. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-07-03Subsurface-mobile version jump to 2.0Gravatar Dirk Hohndel
The beginning of download (plus the UI overhaul) definitely deserve a major version bump. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-07-04TestPreferences: Fix update manager test dateGravatar Seamus Boyle
QDate::addDays() returns a copy with the changed date, calling it and ignoring the return value does nothing. Signed-off-by: Seamus Boyle <seamus@beantrader.com.au>
2017-07-04Don't try to dereference empty product/vendor listGravatar Robert C. Helling
Signed-off-by: Robert C. Helling <helling@atdotde.de>
2017-07-03Android: add Suunto EON Steel as deviceGravatar Dirk Hohndel
This way plugging in an EON Steel should pop up a question if the user wants to open Subsurface-mobile. Unfortunately, the download doesn't work, yet, and worse, if the phone goes to sleep while an EON Steel is plugged in, this appears to trigger a hard crash on the EON Steel. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-07-04Add new sources to ios .pro fileGravatar Robert C. Helling
Signed-off-by: Robert C. Helling <helling@atdotde.de>
2017-07-04BT discovery Android: Allow BT/LE devices connect both waysGravatar Jan Mulder
For DCs that support both BT and LE, allow the user to connect to both interface layers. Maybe not usefull in the end (as BT is faster than LE), but as long as BT on Android is WIP is it very useful to be able to connect to the interface layer we like. Just add it to the Paired Devices list twice. The normal way, and the LE: prepend way. Signed-off-by: Jan Mulder <jlmulder@xs4all.nl>
2017-07-03WhitespaceGravatar Dirk Hohndel
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-07-03Fix '-L-lcurl' linker warningGravatar Dirk Hohndel
This would happen if we don't have a specific directory in LIBSSH2_LIBRARY_DIRS. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-07-03Mac packaging - don't move Grantlee pluginsGravatar Dirk Hohndel
I don't know why we moved them from the 5.0 subdirectory, but that seems to break things now. Odd. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-07-03Don't warn about missing en-US translation for QtGravatar Dirk Hohndel
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-07-04Mac packaging: don't lose minimum versionGravatar Dirk Hohndel
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-07-04build.sh: add option to build all dependenciesGravatar Dirk Hohndel
Using the Homebrew dependencies is much easier and faster, but then we run into the problem that Homebrew always builds against your current OSX version. This instead allows us to build the dependencies ourselves and set the SDK / minimum OSX version. This is mainly important for binaries that we want to distribute. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-07-04build.sh: build against older SDK / minimum OSX versionGravatar Dirk Hohndel
On Mac we want to make sure that we don't only run on the OS that we were built on, but all the way back to 10.10 (that's the oldest that Qt supports). Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-07-04build.sh: don't override existing CMAKE_PREFIX_PATHGravatar Dirk Hohndel
If we already explicitly point at one Qt installation, don't override with another one. Also, support all the way up to Qt 5.9.1 Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-07-04Mac package build: adjust handling of libgit2Gravatar Dirk Hohndel
Apparently it now is a different dependency that causes problems. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-07-04Mac package build: remove obsolete hackGravatar Dirk Hohndel
And also add some additional comments. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-07-02QML UI: add more dive computersGravatar Dirk Hohndel
This really needs to be done differently - we need a structured way to associate a transport mechanism with each of the dive computers we support. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-07-02Update SupportedDivecomputersGravatar Dirk Hohndel
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-07-02MXE cross build: allow to specify mxe directoryGravatar Dirk Hohndel
This should make it easier to test different mxe versions. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-07-02BT discovery: detect Scubapro G2Gravatar Dirk Hohndel
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-06-30Android build: switch to Qt 5.9.1Gravatar Dirk Hohndel
It seems that the Qt team deviated from their previous practice to keep the Qt/x.y directory structure the same for all minor releases - so now it is indeed Qt/5.9.1 Oh well. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-06-30BLE: require Qt 5.6 and suggest Qt 5.9.1Gravatar Dirk Hohndel
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-06-30Android: mark BLE only paired devicesGravatar Dirk Hohndel
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-06-30QML UI: save BT address as stringGravatar Dirk Hohndel
And do the same LE: prefix marking as in the desktop version. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-06-30BLE handling: create helper function to add the LE: prefixGravatar Dirk Hohndel
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-06-29Better colors for BT pairing dialogGravatar Dirk Hohndel
Linus had complained about these colors for a while. I think this is a massive improvement. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>