Git Product home page Git Product logo

Comments (10)

Kevin-M-Smith avatar Kevin-M-Smith commented on August 30, 2024

Hi Joseph,

Happy to help if I can!

Sorry if you emailed me and didn't get a response. I'm currently working in Perú and I am admittedly not checking all of my email accounts.

I had no problems getting the YSI to work normally. It required 12v DC so I powered it off a separate power supply.

I don't know if it is the same for all YSI probes, but the one I was using had a MS8 connector where each of the electrical contacts were lettered.

I don't remember which letters correspond to which inputs, so take the following advise with caution, and refer to your user's manual if you have one.

This company published a list that suggests SDI-12 should be connected to F, power to A, and ground to B:
http://www.nexsens.com/knowledge-base/isic-data-loggers/2100-isic/data-logger-connections.htm

You will want to verify that with any official information you can get from YSI - but it's a start!

Hope it helps - and good luck with everything!

Kevin


From: JDelesantro [[email protected]]
Sent: Thursday, July 31, 2014 4:06 PM
To: StroudCenter/Arduino-SDI-12
Subject: [Arduino-SDI-12] YSI 600 communication (#10)

First off, thanks for your contribution with this library. I have recently started using Arduino based data loggers in my work for Duke University's River Center and it has been very helpful. While I have had no issues communicating with other sensors, I have not been able to successfully communicate with the YSI 600. I noticed that you mentioned testing the library with a YSI in a google group. Do you have any code you could share or general tips on communicating with the YSI 600 through Arduino?

I've also emailed you and I apologize for hassling you.

Thanks,
Joseph


Reply to this email directly or view it on GitHubhttps://github.com//issues/10.

from arduino-sdi-12.

JDelesantro avatar JDelesantro commented on August 30, 2024

Hi Kevin,

Thanks for your reply. Hope your having fun in Peru. We log our YSIs to other data loggers via SDI12 (Campbell Scientific). So I know that the pin out is correct, I know that my addresses and commands are correct, and that the YSI is communicating in SDI12. My guess is that there is some sort of timing issue that does not allow the Arduino to recognize the YSI? When sending a "aM!" command, where I supply the address rather than scanning, I can get the YSI to come out of sleep, initiate the wiper and turn on the optics. Presumably the measurement has been initiated. However, while(mySDI12.available()) is never true, so nothing is read back from the YSI either in terms of an acknowledgement or data from the "aD0!" command. All of my attempts to use scans to recognize the YSI, as per your examples, have been fruitless, but I intend to play around with the checkactive() command more this afternoon. Any suggestions would be greatly appreciated.

Thanks!
Joseph

from arduino-sdi-12.

Kevin-M-Smith avatar Kevin-M-Smith commented on August 30, 2024

Hi Joseph,

I'm afraid I don't have any other suggestions based on what you've told me so far.

So perhaps a little more info:
* what is the Arduino model you are using?
* what pin are you using?
* what version of the ArduinoIDE are you using?
* what is the full model number of the YSI device you are using?

Thanks!
Kevin


From: JDelesantro [[email protected]]
Sent: Friday, August 01, 2014 9:15 AM
To: StroudCenter/Arduino-SDI-12
Cc: Smith, Kevin M.
Subject: Re: [Arduino-SDI-12] YSI 600 communication (#10)

Hi Kevin,

Thanks for your reply. Hope your having fun in Peru. We log our YSIs to other data loggers via SDI12 (Campbell Scientific). So I know that the pin out is correct, I know that my addresses and commands are correct, and that the YSI is communicating in SDI12. My guess is that there is some sort of timing issue that does not allow the Arduino to recognize the YSI? When sending a "aM!" command, where I supply the address rather than scanning, I can get the YSI to come out of sleep, initiate the wiper and turn on the optics. Presumably the measurement has been initiated. However, while(mySDI12.available()) is never true, so nothing is read back from the YSI either in terms of an acknowledgement or data from the "aD0!" command. All of my attempts to use scans to recognize the YSI, as per your examples, have been fruitless, but I intend to play around with the checkactive() command more this afternoon. Any suggestions would be greatly appreciated.

Thanks!
Joseph


Reply to this email directly or view it on GitHubhttps://github.com//issues/10#issuecomment-50882280.

from arduino-sdi-12.

JDelesantro avatar JDelesantro commented on August 30, 2024

Arduino Uno R3
pin 12
Arduino IDE 1.0.5 r2
YSI 600 OMS (the older version, not the V2)

Thanks

from arduino-sdi-12.

Kevin-M-Smith avatar Kevin-M-Smith commented on August 30, 2024

Hmm. I'm stumped. It is interesting that the probe physically responds to the command, but does not reply.

It could certainly be a timing issue. Each vendor is responsible for implementing SDI-12 directly, and if the YSI 600 OMS is quite old, there's a chance
the SDI-12 software might not be as fined tuned as a more modern YSI device.

Do you have a newer YSI device at your disposal to test on?

Also, do you have access to the code you are running on your Campbell loggers that it works with? That might give some insight into a timing that works.

Regards,
Kevin


From: JDelesantro [[email protected]]
Sent: Friday, August 01, 2014 10:26 AM
To: StroudCenter/Arduino-SDI-12
Cc: Smith, Kevin M.
Subject: Re: [Arduino-SDI-12] YSI 600 communication (#10)

Arduino Uno R3
pin 12
Arduino IDE 1.0.5 r2
YSI 600 OMS (the older version, not the V2)

Thanks


Reply to this email directly or view it on GitHubhttps://github.com//issues/10#issuecomment-50890148.

from arduino-sdi-12.

JDelesantro avatar JDelesantro commented on August 30, 2024

Kevin,

I just tried a newer YSI device. I used your sample logger code and a
version with a user supplied address and neither worked. Do you have access
to any code that you have used with a YSI device?

Thanks,
Joseph

On Fri, Aug 1, 2014 at 11:48 AM, Kevin M. Smith [email protected]
wrote:

Hmm. I'm stumped. It is interesting that the probe physically responds to
the command, but does not reply.

It could certainly be a timing issue. Each vendor is responsible for
implementing SDI-12 directly, and if the YSI 600 OMS is quite old, there's
a chance
the SDI-12 software might not be as fined tuned as a more modern YSI
device.

Do you have a newer YSI device at your disposal to test on?

Also, do you have access to the code you are running on your Campbell
loggers that it works with? That might give some insight into a timing that
works.

Regards,
Kevin


From: JDelesantro [[email protected]]
Sent: Friday, August 01, 2014 10:26 AM
To: StroudCenter/Arduino-SDI-12
Cc: Smith, Kevin M.
Subject: Re: [Arduino-SDI-12] YSI 600 communication (#10)

Arduino Uno R3
pin 12
Arduino IDE 1.0.5 r2
YSI 600 OMS (the older version, not the V2)

Thanks


Reply to this email directly or view it on GitHub<
https://github.com/StroudCenter/Arduino-SDI-12/issues/10#issuecomment-50890148>.


Reply to this email directly or view it on GitHub
#10 (comment)
.

from arduino-sdi-12.

Kevin-M-Smith avatar Kevin-M-Smith commented on August 30, 2024

Hi Joseph,

The examples in the library (at least in the first commit) worked for the YSI sondes I was using.

Hopefully it wasn't just dumb luck that it worked with those models.

Unfortunately, I don't have access to any YSI devices at the moment.

I'm running out of ideas, but here's a few more questions:

  • What is the SDI-12 address of the device you are trying to connect to?
  • Are you able to connect to it with a YSI handheld device and change the address?
  • Do you have any other SDI-12 devices on the data line?
  • Are you able to send an image or two of your setup via this GitHub thread?

There is a drag-and-drop image feature associated with the text box on the website.

Regards,
Kevin

from arduino-sdi-12.

Kevin-M-Smith avatar Kevin-M-Smith commented on August 30, 2024

Also - if you get fed up with my code - you may want to see if this other SDI-12 library works for you:

https://github.com/joranbeasley/SDISerial

Regards,
Kevin

from arduino-sdi-12.

JDelesantro avatar JDelesantro commented on August 30, 2024

The address is 0
I can change the address, but haven't tried that yet
The data line only has the YSI on it

I'll be out of town for a week to sets up some new installations, but when
I get back I can take a picture. Its just power straight from the battery
that also powers the Arduino, ground to the Arduino and signal to the data
pin.

Unfortunately I can't spend much more time on this so I've ordered a
MAX3232 chip to allow me to communicate with the YSI through rs232.
Eventually I'll give it another shot, but right now I just need to get em
in the field.

Thanks for your help and I really appreciate the work you put into the
library. It works great with everything else!

On Fri, Aug 1, 2014 at 7:02 PM, Kevin M. Smith [email protected]
wrote:

Also - if you get fed up with my code - you may want to see if this other
SDI-12 library works for you:

https://github.com/joranbeasley/SDISerial

Regards,
Kevin


Reply to this email directly or view it on GitHub
#10 (comment)
.

from arduino-sdi-12.

Kevin-M-Smith avatar Kevin-M-Smith commented on August 30, 2024

Happy to help - sorry it didn't work out.

I asked about the address because many manufacturers usually default the devices to address 0.

It is a reasonable number to start with, but sometimes the sensors have alternate behavior when the address is 0.

For example many Decagon sensors have a different default communication protocol when on address 0.

Supposedly in these cases there is backwards compatibility of SDI-12, but I've had issues in the past.

The world of serial communications can get wonky pretty fast.

Regards,
Kevin

from arduino-sdi-12.

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.