diff --git a/src/descriptor.c b/src/descriptor.c index c953128..d518246 100644 --- a/src/descriptor.c +++ b/src/descriptor.c @@ -153,6 +153,7 @@ static const dc_descriptor_t g_descriptors[] = { {"Mares", "Matrix", DC_FAMILY_MARES_ICONHD , 0x0F}, {"Mares", "Icon HD", DC_FAMILY_MARES_ICONHD , 0x14}, {"Mares", "Icon HD Net Ready", DC_FAMILY_MARES_ICONHD , 0x15}, + {"Mares", "Puck Pro", DC_FAMILY_MARES_ICONHD , 0x18}, {"Mares", "Nemo Wide 2", DC_FAMILY_MARES_ICONHD , 0x19}, /* Heinrichs Weikamp */ {"Heinrichs Weikamp", "OSTC", DC_FAMILY_HW_OSTC, 0}, diff --git a/src/mares_iconhd.c b/src/mares_iconhd.c index 268cbd4..e047cd3 100644 --- a/src/mares_iconhd.c +++ b/src/mares_iconhd.c @@ -44,6 +44,7 @@ #define MATRIX 0x0F #define ICONHD 0x14 #define ICONHDNET 0x15 +#define PUCKPRO 0x18 #define NEMOWIDE2 0x19 #define ACK 0xAA @@ -255,7 +256,7 @@ mares_iconhd_device_open (dc_device_t **out, dc_context_t *context, const char * device->port = NULL; memset (device->fingerprint, 0, sizeof (device->fingerprint)); memset (device->version, 0, sizeof (device->version)); - if (model == NEMOWIDE2 || model == MATRIX) { + if (model == NEMOWIDE2 || model == MATRIX || model == PUCKPRO) { device->packetsize = SZ_PACKET; } else { device->packetsize = 0; @@ -270,7 +271,7 @@ mares_iconhd_device_open (dc_device_t **out, dc_context_t *context, const char * } // Set the serial communication protocol (256000 8N1). - if (model == NEMOWIDE2 || model == MATRIX) { + if (model == NEMOWIDE2 || model == MATRIX || model == PUCKPRO) { rc = serial_configure (device->port, 115200, 8, SERIAL_PARITY_EVEN, 1, SERIAL_FLOWCONTROL_NONE); } else { rc = serial_configure (device->port, BAUDRATE, 8, SERIAL_PARITY_NONE, 1, SERIAL_FLOWCONTROL_NONE);