diff --git a/src/descriptor.c b/src/descriptor.c index cc03549..66555e7 100644 --- a/src/descriptor.c +++ b/src/descriptor.c @@ -357,6 +357,7 @@ static const dc_descriptor_t g_descriptors[] = { {"Shearwater", "Peregrine", DC_FAMILY_SHEARWATER_PETREL, 9, DC_TRANSPORT_BLE, dc_filter_shearwater}, {"Shearwater", "Petrel 3", DC_FAMILY_SHEARWATER_PETREL, 10, DC_TRANSPORT_BLE, dc_filter_shearwater}, {"Shearwater", "Perdix 2", DC_FAMILY_SHEARWATER_PETREL, 11, DC_TRANSPORT_BLE, dc_filter_shearwater}, + {"Shearwater", "Tern", DC_FAMILY_SHEARWATER_PETREL, 12, DC_TRANSPORT_BLE, dc_filter_shearwater}, /* Dive Rite NiTek Q */ {"Dive Rite", "NiTek Q", DC_FAMILY_DIVERITE_NITEKQ, 0, DC_TRANSPORT_SERIAL, NULL}, /* Citizen Hyper Aqualand */ @@ -668,6 +669,7 @@ dc_filter_shearwater (dc_descriptor_t *descriptor, dc_transport_t transport, con "Perdix 2", "Teric", "Peregrine", + "Tern" }; if (transport == DC_TRANSPORT_BLUETOOTH || transport == DC_TRANSPORT_BLE) { diff --git a/src/shearwater_common.c b/src/shearwater_common.c index f27bc9a..43da455 100644 --- a/src/shearwater_common.c +++ b/src/shearwater_common.c @@ -738,6 +738,9 @@ shearwater_common_get_model (shearwater_common_device_t *device, unsigned int ha case 0x1512: model = PEREGRINE; break; + case 0xC0E0: + model = TERN; + break; default: WARNING (device->base.context, "Unknown hardware type 0x%04x.", hardware); } diff --git a/src/shearwater_common.h b/src/shearwater_common.h index 4c7f186..8078141 100644 --- a/src/shearwater_common.h +++ b/src/shearwater_common.h @@ -51,6 +51,7 @@ extern "C" { #define PEREGRINE 9 #define PETREL3 10 #define PERDIX2 11 +#define TERN 12 #define NSTEPS 10000 #define STEP(i,n) ((NSTEPS * (i) + (n) / 2) / (n))