]> sigrok.org Git - libsigrok.git/blobdiff - src/hardware/itech-it8500/protocol.c
scpi-pps: Support for the EEZ PSU series
[libsigrok.git] / src / hardware / itech-it8500 / protocol.c
index 825860a716455d76dcc5dbc8634ea2990b192498..6905273614ced22c1ce1a8f1366f928774f3a5aa 100644 (file)
@@ -137,7 +137,7 @@ SR_PRIV int itech_it8500_send_cmd(struct sr_serial_dev_inst *serial,
                resp->command);
 
        if (resp->command == CMD_RESPONSE) {
-               if (resp->data[0] != IT8500_COMMAND_SUCCESSFUL) {
+               if (resp->data[0] != STS_COMMAND_SUCCESSFUL) {
                        sr_dbg("%s: Command (%02x) failed: status=%02x",
                                __func__, cmd->command, resp->data[0]);
                        goto error;
@@ -192,40 +192,40 @@ SR_PRIV void itech_it8500_status_change(const struct sr_dev_inst *sdi,
                uint16_t old_ds, uint16_t new_ds,
                enum itech_it8500_modes old_m, enum itech_it8500_modes new_m)
 {
+       gboolean old_bit, new_bit;
        const char *mode;
-       gboolean old, new;
 
        /* Check it output status has changed. */
-       old = old_os & OS_OUT_FLAG;
-       new = new_os & OS_OUT_FLAG;
-       if (old != new)
+       old_bit = old_os & OS_OUT_FLAG;
+       new_bit = new_os & OS_OUT_FLAG;
+       if (old_bit != new_bit)
                sr_session_send_meta(sdi,
                        SR_CONF_ENABLED,
-                       g_variant_new_boolean(new));
+                       g_variant_new_boolean(new_bit));
 
        /* Check if OVP status has changed. */
-       old = old_ds & DS_OV_FLAG;
-       new = new_ds & DS_OV_FLAG;
-       if (old != new)
+       old_bit = old_ds & DS_OV_FLAG;
+       new_bit = new_ds & DS_OV_FLAG;
+       if (old_bit != new_bit)
                sr_session_send_meta(sdi,
                        SR_CONF_OVER_VOLTAGE_PROTECTION_ACTIVE,
-                       g_variant_new_boolean(new));
+                       g_variant_new_boolean(new_bit));
 
        /* Check if OCP status has changed. */
-       old = old_ds & DS_OC_FLAG;
-       new = new_ds & DS_OC_FLAG;
-       if (old != new)
+       old_bit = old_ds & DS_OC_FLAG;
+       new_bit = new_ds & DS_OC_FLAG;
+       if (old_bit != new_bit)
                sr_session_send_meta(sdi,
                        SR_CONF_OVER_CURRENT_PROTECTION_ACTIVE,
-                       g_variant_new_boolean(new));
+                       g_variant_new_boolean(new_bit));
 
        /* Check if OTP status has changed. */
-       old = old_ds & DS_OT_FLAG;
-       new = new_ds & DS_OT_FLAG;
-       if (old != new)
+       old_bit = old_ds & DS_OT_FLAG;
+       new_bit = new_ds & DS_OT_FLAG;
+       if (old_bit != new_bit)
                sr_session_send_meta(sdi,
                        SR_CONF_OVER_TEMPERATURE_PROTECTION_ACTIVE,
-                       g_variant_new_boolean(new));
+                       g_variant_new_boolean(new_bit));
 
        /* Check if operating mode has changed. */
        if (old_m != new_m) {
@@ -341,7 +341,7 @@ SR_PRIV int itech_it8500_get_int(const struct sr_dev_inst *sdi,
 
 SR_PRIV void itech_it8500_channel_send_value(const struct sr_dev_inst *sdi,
                struct sr_channel *ch, double value, enum sr_mq mq,
-               enum sr_unit unit, int digits)
+               enum sr_mqflag mqflags, enum sr_unit unit, int digits)
 {
        struct sr_datafeed_packet packet;
        struct sr_datafeed_analog analog;
@@ -359,7 +359,7 @@ SR_PRIV void itech_it8500_channel_send_value(const struct sr_dev_inst *sdi,
        analog.encoding->is_float = TRUE;
        analog.meaning->mq = mq;
        analog.meaning->unit = unit;
-       analog.meaning->mqflags = SR_MQFLAG_DC;
+       analog.meaning->mqflags = mqflags;
 
        packet.type = SR_DF_ANALOG;
        packet.payload = &analog;
@@ -389,15 +389,15 @@ SR_PRIV int itech_it8500_receive_data(int fd, int revents, void *cb_data)
 
        l = g_slist_nth(sdi->channels, 0);
        itech_it8500_channel_send_value(sdi, l->data, devc->voltage,
-                       SR_MQ_VOLTAGE, SR_UNIT_VOLT, 5);
+               SR_MQ_VOLTAGE, SR_MQFLAG_DC, SR_UNIT_VOLT, 5);
 
        l = g_slist_nth(sdi->channels, 1);
        itech_it8500_channel_send_value(sdi, l->data, devc->current,
-                       SR_MQ_CURRENT, SR_UNIT_AMPERE, 5);
+               SR_MQ_CURRENT, SR_MQFLAG_DC, SR_UNIT_AMPERE, 5);
 
        l = g_slist_nth(sdi->channels, 2);
        itech_it8500_channel_send_value(sdi, l->data, devc->power,
-                       SR_MQ_POWER, SR_UNIT_WATT, 5);
+               SR_MQ_POWER, 0, SR_UNIT_WATT, 5);
 
        std_session_send_df_frame_end(sdi);