def request_samples(network_id, channel_id)
      @logger.info("Requesting samples")
      @serial.transmit(SamplesRequest.new(:network_id => network_id, :channel_id => channel_id))
      AckResponse.read(@serial.receive(6))
      buffer = @serial.receive(4)
      remaining_bytes = buffer.bytes.to_a[3] + 1
      buffer += @serial.receive(remaining_bytes)
      response = SamplesResponse.read(buffer)

      response.converted_samples.each do |time, wattage|
        @logger.info("#{wattage}w at #{time}")
      end
      @logger.info("#{response.sample_count} returned, #{response.stored_sample_count} remaining")

      response
    end
def request_samples(network_id, channel_id)
      @logger.info("Requesting samples")
      @serial.transmit(SamplesRequest.new(:network_id => network_id, :channel_id => channel_id))
      AckResponse.read(@serial.receive(6))
      buffer = @serial.receive(4)
      remaining_bytes = buffer.bytes.to_a[3] + 1
      buffer += @serial.receive(remaining_bytes)
      response = SamplesResponse.read(buffer)

      response.converted_samples.each do |time, wattage|
        @logger.info("#{wattage}w at #{time}")
      end
      @logger.info("#{response.sample_count} returned, #{response.stored_sample_count} remaining")

      response
    end
Public: Request stored samples.

 network_id - 2 byte identified for the network.
 channel_id - 2 byte identified for the channel.

 TODO: This needs to return a more usable set of data.
 Returns the SamplesResponse.