From 69a74024902eecd3fc9ebd4f64fdef6ae460d0d7 Mon Sep 17 00:00:00 2001 From: Bert Vermeulen Date: Sat, 8 Sep 2012 02:28:41 +0200 Subject: [PATCH] genericdmm/victor-70c: fix resistance and frequency measurements --- hardware/genericdmm/victor-70c.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/hardware/genericdmm/victor-70c.c b/hardware/genericdmm/victor-70c.c index 435008ff..3b40c1bd 100644 --- a/hardware/genericdmm/victor-70c.c +++ b/hardware/genericdmm/victor-70c.c @@ -57,6 +57,7 @@ static void decode_buf(struct dev_context *devc, unsigned char *data) digits[1] = decode_digit(data[11]); digits[2] = decode_digit(data[10]); digits[3] = decode_digit(data[9]); + if (digits[0] == 0x0f && digits[1] == 0x00 && digits[2] == 0x0a && digits[3] == 0x0f) /* The "over limit" (OL) display comes through like this */ @@ -206,6 +207,8 @@ static void decode_buf(struct dev_context *devc, unsigned char *data) } else { analog.mq = SR_MQ_RESISTANCE; analog.unit = SR_UNIT_OHM; + if (ivalue < 0) + fvalue = INFINITY; } break; case 0x08: @@ -214,7 +217,7 @@ static void decode_buf(struct dev_context *devc, unsigned char *data) break; case 0x10: analog.mq = SR_MQ_FREQUENCY; - analog.mq = SR_UNIT_HERTZ; + analog.unit = SR_UNIT_HERTZ; break; case 0x20: analog.mq = SR_MQ_CAPACITANCE;