struct dev_context *devc)
{
double value;
- int count, ret;
+ int count, ret, i;
float *target;
char status_byte;
devc->reply[count] = 0;
if (target) {
+ /* Handle the strange 'M' */
+ if (devc->reply[0] == 'M') {
+ for (i = 1; i < count; ++i) {
+ devc->reply[i - 1] = devc->reply[i];
+ }
+ /* Get the last character */
+ if (( i = korad_kdxxxxp_read_chars(serial, 1,
+ &(devc->reply[count]))) < 0)
+ return i;
+ }
value = g_ascii_strtod(devc->reply, NULL);
*target = (float)value;
sr_dbg("value: %f",value);