diff --git a/configuredivecomputerthreads.cpp b/configuredivecomputerthreads.cpp
index a96548e0f..7856a150f 100644
--- a/configuredivecomputerthreads.cpp
+++ b/configuredivecomputerthreads.cpp
@@ -690,12 +690,22 @@ void FirmwareUpdateThread::run()
dc_status_t rc;
rc = dc_device_open(&m_data->device, m_data->context, m_data->descriptor, m_data->devname);
if (rc == DC_STATUS_SUCCESS) {
+ switch (dc_device_get_type(m_data->device)) {
#if DC_VERSION_CHECK(0, 5, 0)
- if (dc_device_get_type(m_data->device) == DC_FAMILY_HW_OSTC3) {
- supported = true;
+ case DC_FAMILY_HW_OSTC3:
+ //Not Yet supported
+ //supported = true;
//hw_ostc3_device_fwupdate(m_data->device, m_fileName.toUtf8().data());
- }
+ break;
#endif // divecomputer 0.5.0
+ case DC_FAMILY_HW_OSTC:
+ supported = true;
+ hw_ostc_device_fwupdate(m_data->device, m_fileName.toUtf8().data());
+ break;
+ default:
+ supported = false;
+ break;
+ }
dc_device_close(m_data->device);
if (!supported) {
diff --git a/qt-ui/configuredivecomputerdialog.cpp b/qt-ui/configuredivecomputerdialog.cpp
index 781a0e633..fd1edfe31 100644
--- a/qt-ui/configuredivecomputerdialog.cpp
+++ b/qt-ui/configuredivecomputerdialog.cpp
@@ -622,6 +622,11 @@ void ConfigureDiveComputerDialog::on_DiveComputerList_currentRowChanged(int curr
selected_product = "Vyper";
ui.updateFirmwareButton->setEnabled(false);
break;
+ case 2:
+ selected_vendor = "Heinrichs Weikamp";
+ selected_product = "OSTC 2N";
+ ui.updateFirmwareButton->setEnabled(true);
+ break;
default:
/* Not Supported */
return;
diff --git a/qt-ui/configuredivecomputerdialog.ui b/qt-ui/configuredivecomputerdialog.ui
index 04b2aafeb..490205277 100644
--- a/qt-ui/configuredivecomputerdialog.ui
+++ b/qt-ui/configuredivecomputerdialog.ui
@@ -184,6 +184,11 @@
:/icons/suunto_vyper.png:/icons/suunto_vyper.png
+ -
+
+ OSTC, Mk.2/2N/2C
+
+
@@ -1594,6 +1599,22 @@
+
+
+ -
+
+
+ 0
+
+
+
+ Basic settings
+
+
+
+
+
+