Home » Software » FAQ » How do I speed up LArVa data acquisition?
 
How do I speed up LArVa data acquisition?

LArVA Simple Graph shows the bandwidth of the data returned in samples per second.  This display is located  in the upper right, above the graph.  This field is not an input and can not be changed directly.  However, if you would like to change the speed of the data acquisition there are several ways to do so:

  1. Enable fewer channels
    1. Each channel communication takes time.  The fewer channels (Analog Input, PWM Output, Digital Out, Digital In) that are enabled, the faster the enabled channels will gather.
      1. 'Analog Inputs Enable' and 'PWM output enable' are located on the 'Analog I/O' tab.
      2. 'Digital Out Enable' and 'Digital In Enable' are located on the 'Digital I/O' tab.
  2. Speed up Arduino Communication
    1. 'Arduino Communication' controls the speed of data transfer between your computer and your Arduino.  To increase this speed, change from the 'Standard' setting to 'Very Fast.'
      1. The 'Arduino Communication' parameter is located on the 'Setup' tab.
    2. Increasing the Arduino Communication speed may cause communication errors, especially on slower computers.  If communication errors occur, simple reduce Arduion Communication speed until stable communication is restored.
  3. Clear saved data and empty the graph
    1. On slower computers data stored on the graph may limit speed. 
    2. To clear the data currently on the graph, press the 'clear data/ empty graph' button, located on the 'Graph' tab.
    3. To stop saving data on the graph entirely, deselect the 'Graph Active' button, located on the 'Graph' tab.
  4. Return values and integers
    1. Returning analog input data values as integers is faster than returning values as floating point numbers
      1. Set the 'ADC return' value, located on the 'Setup' tab, to 'Integers.'
    2. Some data truncation will occur when returning data as integers.
  5. Reduce the 'loop delay' parameter
    1. Loop delay is the delay, in milliseconds, between analog input data channels.
      1. The 'loop delay [ms]' parameter is located on the 'Setup' tab.
    2. Reducing this delay will speed up analog input data acquisition.
    3. However, some delay is required to allow the analog to digital converter to settle.  We do not recommend delays below 1ms if you are gathering more than 1 analog input channel.
      1. Reducing the loop delay may cause communication errors, especially on slower computers.  If communication errors occur, simple increase loop delay until stable communication is restored.
  6. Reduce the number of points to average
    1. Each sample returned is the average of 'points to average' data samples.  The averaging takes place on your Arduino and reduces the noise of gathered channels.
      1. The 'points to average' parameter is located on the 'Setup' tab.
    2. Reducing this parameter will speed up the data acquisition at the expense of increased noise. 
      1. Often the bandwidth is limited by communication rather than acquisition, in which case reducing 'points to average' may not improve speed.

 

While the above list may seem complex, the proper process is to start your data acquisition and play with these parameters until you have stable communication that meets your needs.  The bandwidth indicator will display the impact of your changes on data acquisition bandwidth.