fluke-45: drop serial port echo test, was disabled for years
authorGerhard Sittig <gerhard.sittig@gmx.net>
Sat, 22 May 2021 12:12:22 +0000 (14:12 +0200)
committerGerhard Sittig <gerhard.sittig@gmx.net>
Tue, 1 Jun 2021 06:20:59 +0000 (08:20 +0200)
The Fluke 45 driver's ECHO_TEST broke other people's SCPI device
identification and was disabled in 2018-11. Remove the dead code which
is impossible to resurrect. Its purpose was questionable to begin with.

Should users be affected, then the echo would break the identification
phase. The check cannot be done before identification without affecting
other connected devices, cannot be done after the identification either
when that very identification systematically fails. Should a user meet
this condition then applications' logs are available to see why *IDN?
fails, assuming that users are not aware of their serial port or device
configuration. The request's reflection in the place of a response gives
a strong hint.

src/hardware/fluke-45/api.c

index 2e80b6bfaae9b563a1d6ba4d78c7089b45f299ab..96c8a1b324081507b8a07d64d80fec4c3f358506 100644 (file)
 #include "scpi.h"
 #include "protocol.h"
 
-/*
- * This test violates the SCPI protocol, and confuses other devices.
- * Disable it for now, until a better location was found.
- */
-#define ECHO_TEST 0
-
 static const uint32_t scanopts[] = {
        SR_CONF_CONN,
        SR_CONF_SERIALCOMM,
@@ -68,21 +62,6 @@ static struct sr_dev_inst *probe_device(struct sr_scpi_dev_inst *scpi)
        unsigned int i;
        const struct fluke_scpi_dmm_model *model = NULL;
        gchar *channel_name;
-#if ECHO_TEST
-       char *response;
-#endif
-
-#if ECHO_TEST
-       /* Test for serial port ECHO enabled. */
-       response = NULL;
-       sr_scpi_get_string(scpi, "ECHO-TEST", &response);
-       if (response && strcmp(response, "ECHO-TEST") == 0) {
-               sr_err("Serial port ECHO is ON. Please turn it OFF!");
-               g_free(response);
-               return NULL;
-       }
-       g_free(response);
-#endif
 
        /* Get device IDN. */
        if (sr_scpi_get_hw_id(scpi, &hw_info) != SR_OK) {