Coder Social home page Coder Social logo

Comments (4)

greiman avatar greiman commented on July 22, 2024

I have no idea what you mean by logging a working serial connection. What is your hardware setup?

I test by logging a sine wave and analyzing it. See this DATA.png in the AnalogBinLoggerExtras folder.

The 2000 Hz sine wave is reproduced correctly.

from sdfat.

cmteuffel avatar cmteuffel commented on July 22, 2024

Thanks for your fast response. I'm aware that you've comprehensively tested the library and I read from your AdcErrorStudy.txt that you went quite some trouble to test the ADC. I simply used the library using the default settings in a real world hardware setup (e.g. USB powered UNO).

Towards my hardware setup:
I have a serial loop back connection, simply receiving the sent data (ASCII) at the same PC. Therefore I know the connection is working and what's been sent when. I've put a resistor in the connection line and measure DC above this resistor while sending using the UNO contacts A0 and A1.

Occasionally, the logger reads no voltage (series of zero values). At times, this drop out happens when there should be a voltage spike. So, while for example a character "1" (00110001) was sent and received using picocom, the same character is "!" (00100001) in the log file. This is, because one complete voltage spike was cancelled. These ADC drop outs seem to be randomly distributed. I could reproduce the behaviour with a Mega 2560.

If this is because of my hardware setup, should'nt the drop outs also be visible at the terminal output? Maybe the default settings are the issue.

from sdfat.

cmteuffel avatar cmteuffel commented on July 22, 2024

I just tried a different cabling and made another log attempt just to be sure. The results are similar.

from sdfat.

greiman avatar greiman commented on July 22, 2024

I setup a second Arduino with several programs that send serial. I have no problems.

Here is a typical program that sends a serial signal.

void setup() {
  Serial.begin(1200);
}
void loop() {
  Serial.write(0);
  Serial.write(1);
  Serial.write(2);
  Serial.flush();
  delay(10);
}

I connect digital pin 1 of the sending Arduino to analog pin 0 of the logging Arduino and log at 5,000 samples per second for a long time.

Here is a plot of a small part of one of the log files.

serial

Note the 0, 1, 2 pattern. This is Arduino 8-bit no parity serial. I assume you understand serial data format.

I can't help you more since I can't reproduce your problem.

Edit: I hope you are not truly trying to log RS-232 levels.
https://www.sparkfun.com/tutorials/215

from sdfat.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.