From 18f427f6bf50f64ba3b4b2c1c1dd168f0c8fdb76 Mon Sep 17 00:00:00 2001 From: Szczepan Zalega Date: Fri, 14 Oct 2016 12:17:50 +0200 Subject: Fixed bug with not releasing device on disconnect Signed-off-by: Szczepan Zalega --- device.cc | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'device.cc') diff --git a/device.cc b/device.cc index 6660276..a420a64 100644 --- a/device.cc +++ b/device.cc @@ -21,8 +21,10 @@ Device::Device() bool Device::disconnect() { Log::instance()(__PRETTY_FUNCTION__, Loglevel::DEBUG_L2); - hid_exit(); + if(mp_devhandle== nullptr) return false; + hid_close(mp_devhandle); mp_devhandle = NULL; + hid_exit(); return true; } bool Device::connect() { -- cgit v1.2.1 From e0cef796093ff273c3bb5a51b2871c58328e033a Mon Sep 17 00:00:00 2001 From: Szczepan Zalega Date: Fri, 14 Oct 2016 13:52:42 +0200 Subject: Increase retry timeout for NK Storage for now Signed-off-by: Szczepan Zalega --- device.cc | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'device.cc') diff --git a/device.cc b/device.cc index a420a64..04569a9 100644 --- a/device.cc +++ b/device.cc @@ -30,7 +30,7 @@ bool Device::disconnect() { bool Device::connect() { Log::instance()(__PRETTY_FUNCTION__, Loglevel::DEBUG_L2); - // hid_init(); +// hid_init(); mp_devhandle = hid_open(m_vid, m_pid, NULL); // hid_init(); return mp_devhandle != NULL; @@ -94,7 +94,8 @@ Stick10::Stick10() { Stick20::Stick20() { m_vid = 0x20a0; m_pid = 0x4109; - m_retry_timeout = std::chrono::milliseconds(500); + m_retry_timeout = 1000ms; m_model = DeviceModel::STORAGE; m_send_receive_delay = 1000ms; + m_retry_count = 50; } -- cgit v1.2.1 From 7d5ead2f4af50f1894a38d0eae97f1696c85131a Mon Sep 17 00:00:00 2001 From: Szczepan Zalega Date: Mon, 17 Oct 2016 22:10:48 +0200 Subject: Set shorter delays in sending/receiving packets Signed-off-by: Szczepan Zalega --- device.cc | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'device.cc') diff --git a/device.cc b/device.cc index 04569a9..33c0340 100644 --- a/device.cc +++ b/device.cc @@ -94,8 +94,8 @@ Stick10::Stick10() { Stick20::Stick20() { m_vid = 0x20a0; m_pid = 0x4109; - m_retry_timeout = 1000ms; + m_retry_timeout = 100ms; m_model = DeviceModel::STORAGE; - m_send_receive_delay = 1000ms; - m_retry_count = 50; + m_send_receive_delay = 100ms; + m_retry_count = 30; } -- cgit v1.2.1 From e46c0781c9c851453e284e0010a387ebba6ef66b Mon Sep 17 00:00:00 2001 From: Szczepan Zalega Date: Mon, 17 Oct 2016 22:17:20 +0200 Subject: Set shorter delays in sending/receiving packets (2) Signed-off-by: Szczepan Zalega --- device.cc | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'device.cc') diff --git a/device.cc b/device.cc index 33c0340..d5b15d6 100644 --- a/device.cc +++ b/device.cc @@ -94,8 +94,8 @@ Stick10::Stick10() { Stick20::Stick20() { m_vid = 0x20a0; m_pid = 0x4109; - m_retry_timeout = 100ms; + m_retry_timeout = 20ms; m_model = DeviceModel::STORAGE; - m_send_receive_delay = 100ms; - m_retry_count = 30; + m_send_receive_delay = 20ms; + m_retry_count = 40; } -- cgit v1.2.1 From b33580e849bbdc8162135e74c9bd0405da454883 Mon Sep 17 00:00:00 2001 From: Szczepan Zalega Date: Tue, 18 Oct 2016 15:19:55 +0200 Subject: Code refactoring: removing disambiguity from device constants Signed-off-by: Szczepan Zalega --- device.cc | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) (limited to 'device.cc') diff --git a/device.cc b/device.cc index d5b15d6..8b40984 100644 --- a/device.cc +++ b/device.cc @@ -13,7 +13,8 @@ using namespace nitrokey::log; Device::Device() : m_vid(0), m_pid(0), - m_retry_count(40), + m_retry_sending_count(3), + m_retry_receiving_count(40), m_retry_timeout(100), mp_devhandle(NULL), last_command_status(0){} @@ -69,7 +70,7 @@ int Device::recv(void *packet) { Loglevel::DEBUG_L2); if (status > 0) break; // success - if (retry_count++ >= m_retry_count) { + if (retry_count++ >= m_retry_receiving_count) { Log::instance()( "Maximum retry count reached" + std::to_string(retry_count), Loglevel::WARNING); @@ -88,7 +89,7 @@ Stick10::Stick10() { m_pid = 0x4108; m_model = DeviceModel::PRO; m_send_receive_delay = 100ms; - m_retry_count = 100; + m_retry_receiving_count = 100; } Stick20::Stick20() { @@ -97,5 +98,5 @@ Stick20::Stick20() { m_retry_timeout = 20ms; m_model = DeviceModel::STORAGE; m_send_receive_delay = 20ms; - m_retry_count = 40; + m_retry_receiving_count = 40; } -- cgit v1.2.1