Fetch: Arduino Data Acquisition/Oscilloscope (Alpha2 Release)

I don't understand. Can you explain this tool to someone who has never heard of it before? I tried Googling.
Please start at the beginning...

sbright33:
I don't understand. Can you explain this tool to someone who has never heard of it before? I tried Googling.
Please start at the beginning...

sbright, i will certainly try. Fetch is a software for Windows OS intended to help with any Arduino based project. It was released for the first time recently in this forum thread, so there will not be much on Google about it.

Sometimes during development of an Arduino project it would be nice to be able to easily visualize what is going on inside the Arduino. Fetch provides a easy to use PC interface to plot any Arduino global variable in real time. In many cases this may be a sensor input reading, or a calculated output value.

For example, let's say you wanted to make the Arduino do something like sound an alarm in response to motion detected nearby. A motion detection sensor would be connected to an Arduino analog input pin, and the Arduino would periodically read the sensor value, store it to a global variable, and respond in various ways depending on that value. In order to more easily calibrate how the Arduino responds to any nearby motion, the Fetch software would allow you to quickly see a real time plot of the sensor reading value for different types of motion detected by the Arduino. This applies to any type of sensor such as temperature, acceleration, light level, sound, voltage, current etc. Fetch helps to tune and calibrate a response to something about the physical environment.

There is more detail about how to install and use Fetch in the "Getting Started Guide" included in the zip file attached to the first post. Maybe it would help to go through that guide and try the included example sketch.

Hopefully this helps, don't hesitate to ask if you have more questions.

Wow sounds very useful! I assume there is a tutorial, demo, or example code in the zip to try first?

My code that I posted reads two analog pins on my Uno, that I left unconnected. I just touched the pins to see the output change. It worked very nicely, and I have some ideas that I want to try when I get time.

sbright33, yes, there is a basic example included in the zip download. You could also try the modification of that example that cyclegadget posted.

Hello,

Today I tried my code that I posted above on the Due. The code compiled and loaded into the Due with no problem. However, the Fetch logger does not seem to get updated information.

It seems that it either the Due data stream is not the same as the Uno or the data types are being mismatched.

On the Uno my analog read-out was 0 - 1023. On the Due it is only showing something like "4.09 E9" similar to a calculation with powers of 10 in the answer. The analog read-out does not work on the Due, as if it is frozen or not transmitting.

cyclegadget,
i do not have a Due so i cannot test it. If you would like to help me debug, please try:

  1. modify the example's setup() function as in code sample below.
  2. compile/upload to the Uno.
  3. open Arduino serial monitor (make sure baud is 115200)
  4. there should be a number printed in at the top of the serial monitor (for me it is '417')
  • if no number appears, try pressing reset button on Arduino board
  1. repeat for Due
  2. tell me the numbers you got for each
void setup() 
{
  Serial.begin(SERIAL_BAUD); 
  Serial.println((long)&sbyte_test);  // new line to help debug
}
 Uno with 3 resets
407
407
407
Due with 3 resets
537330012
537330012
537330012
537330012

thanks, cyclegadget, that is what i was expecting. i'll look into a clean way to handle both the Uno and Due.

Looking forward to using this software with my Due. Good work Drl81!

Fetch Alpha2 released in first post. Let me know if Due works.

drl81:
Fetch Alpha2 released in first post. Let me know if Due works.

The frame rate seems to be working as it changes when variables are added or removed from the list. However, I get no data change "it shows 0" and it also does not graph or change data with Uno using 1.0.2 IDE

It is definitely finding the sketch I uploaded and the variables but data is not the changing.

cyclegadget:
The frame rate seems to be working as it changes when variables are added or removed from the list. However, I get no data change "it shows 0" and it also does not graph or change data with Uno using 1.0.2 IDE

cyclegadget, you may have to copy the new Alpha2 DataLogger library files into the arduino libraries folder, replacing the files from Alpha1.

Update! Problem solved! Fetch Alpha2 Release works with both Due and Uno!

I must of had some old files from Fetch Alpha1. I removed all Fetch files from my Arduino IDE to make a clean start and replaced them with the new Alpha2 files.

I tested Fetch with both the Uno and Due back to back and it works great!

Job well done drl81!

cyclegadget, thanks for the confirmation. i can't take all the credit, i've been working on it with a friend who has helped a ton and may show up on this forum at some point to help answer questions, etc.

anyone who is giving Fetch a try, let us know if there are any specific features or fixes to prioritize for next release.

Another update! I tested the my sketch with the Teensy 3.0 and it was success!

Teensy 3.0 works with Fetch!

One note: I had to use a delay(20) because my Fetch datalogger would freeze, possibly because a buffer problem (with the flood of data) with my computer. I believe the user needs to limit how quickly or how often the sketch reports data to the computer.

HY guys.

I am trying to put Fetch working with Leonardo, folowed all steps on the starting guide PDF with the example in the datalloger librarie, all i get is a white screen :frowning: and a kind of a progression green bar on the bottom right of the Fetch window at 25% and don t move.

Can you help me?

Thanks.

Don t know if this helps, the values in "Frame Rate" are changing.

I went to settings and selected the right COM, and the baud rate, everything else unchanged.

Thanks.

serbar, sorry to hear it isn't working with Leonardo. I don't have a Leonardo, so it's hard to say what is going on. After reading the Leonardo Getting Started Guide, it seems the Leonardo is a slightly different animal when it comes to the serial port.

It sounds like it re-creates a virtual serial port on the PC each time it resets. Are you sure you're selecting the correct serial port #? What baud rate are you setting in Fetch? (Baud rate setting in Fetch should match the SERIAL_BAUD definition in DataLogger.h, default is 115200).

The progress bar doesn't mean anything yet. We should probably remove that until it means something, to avoid confusion.

Are you sure you're selecting the correct serial port #?

Yes i am sure, i use always the same port, COM 9 in my computer.

What baud rate are you setting in Fetch?

Yes i sellect in Settings of Fetch 115200 baud.

There is a thread running on this kind of issue for Leonardo concerning similar programs like Fetch.

If you re interested:

http://arduino.cc/forum/index.php/topic,138885.15.html#lastPost

Thanks.