X-Git-Url: http://sigrok.org/gitweb/?a=blobdiff_plain;f=hardware%2Fatten-pps3xxx%2Fprotocol.c;h=ed4d5505e6a17d7ef8edf469cd8192e20b987e07;hb=102f12396660e0784134bccce5cc0679db325751;hp=d4ba6f9a5f48bcdd299dd8f6f887500a94732e82;hpb=33c40990fd099c3230fdac51f84a1be7ce2e88e7;p=libsigrok.git diff --git a/hardware/atten-pps3xxx/protocol.c b/hardware/atten-pps3xxx/protocol.c index d4ba6f9a..ed4d5505 100644 --- a/hardware/atten-pps3xxx/protocol.c +++ b/hardware/atten-pps3xxx/protocol.c @@ -45,7 +45,7 @@ static void handle_packet(const struct sr_dev_inst *sdi) dump_packet("received", devc->packet); packet.type = SR_DF_ANALOG; packet.payload = &analog; - analog.probes = sdi->probes; + analog.channels = sdi->channels; analog.num_samples = 1; analog.mq = SR_MQ_VOLTAGE; @@ -111,17 +111,18 @@ SR_PRIV void send_config(const struct sr_dev_inst *sdi) value = devc->config[i].output_current_max * 1000; packet[offset + 2] = (value >> 8) & 0xff; packet[offset + 3] = value & 0xff; - if (devc->config[i].output_enabled) + if (devc->config[i].output_enabled_set) packet[15] |= 1 << i; } - packet[18] = devc->over_current_protection ? 1 : 0; - packet[19] = devc->channel_mode; + packet[18] = devc->over_current_protection_set ? 1 : 0; + packet[19] = devc->channel_mode_set; /* Checksum. */ value = 0; for (i = 0; i < PACKET_SIZE - 1; i++) value += packet[i]; packet[i] = value & 0xff; send_packet(sdi, packet); + devc->config_dirty = FALSE; } @@ -152,7 +153,7 @@ SR_PRIV int atten_pps3xxx_receive_data(int fd, int revents, void *cb_data) if (devc->acquisition_running) send_config(sdi); else { - serial_source_remove(serial); + serial_source_remove(sdi->session, serial); packet.type = SR_DF_END; sr_session_send(sdi, &packet); }