LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

I2C protocol communication through USB RS-485

Hi,

 

I am using Sensirion SDP810 differential pressure transducer (documentation attached). It has a 4-pin outlet (I2C protocol) which is connected to the PC through an RS485 USB. The sensor reads perfectly through the software provided by Sensirion but does not communicate through LabVIEW. I have tried using VISA communication to interact with the probe, the PC detects the probe but can't read output or write commands to the probe. I am not sure if the commands are incorrect (using the commands mentioned in the manual for I2C protocol and tested basic serial commands as well) or the overall communication technique is incorrect.

 

To eliminate the possible errors in the code, I used NI MAX but it gives a timeout error. It basically detects the sensor but again can't communicate with it. 

 

Any assistance would be great.

Thanks!

0 Kudos
Message 1 of 4
(1,339 Views)

@abisingh wrote:

I am using Sensirion SDP810 differential pressure transducer (documentation attached). It has a 4-pin outlet (I2C protocol) which is connected to the PC through an RS485 USB.


I2C and RS-485 are two completely different protocols bus protocols.  You will probably be lucky in the fact that both could be TTL levels (or even LVTTL).  But I am not immediately seeing how you could have two different lines be active on a RS-485 port.  I have no clue what the Sensirion software could be doing.

 

Personally, I would either get a USB-8451 or USB-8452 from NI or program something up really quick with a RaspberryPI or Arduino to do the I2C communications.


GCentral
There are only two ways to tell somebody thanks: Kudos and Marked Solutions
Unofficial Forum Rules and Guidelines
"Not that we are sufficient in ourselves to claim anything as coming from us, but our sufficiency is from God" - 2 Corinthians 3:5
Message 2 of 4
(1,321 Views)

@abisingh wrote:

I am using Sensirion SDP810 differential pressure transducer (documentation attached). It has a 4-pin outlet (I2C protocol) which is connected to the PC through an RS485 USB. The sensor reads perfectly through the software provided by Sensirion but does not communicate through LabVIEW.

I will have to say I am quite surprised to hear that it works at all as I2C and RS-485 are two completely different communication protocols even at the physical layer... (RS-485 is a differential signal)

 


I have tried using VISA communication to interact with the probe, the PC detects the probe but can't read output or write commands to the probe. I am not sure if the commands are incorrect (using the commands mentioned in the manual for I2C protocol and tested basic serial commands as well) or the overall communication technique is incorrect.

 


No, VISA and Ni- MAX are seeing the virtual serial port the USB to RS-485 adaptor installs, that's it.

 

What RS485 to USB adaptor is it?

 

I am guessing the Sensirion software is doing some crazy pet tricks to bit-bang I2C out of it.

 

========================
=== Engineer Ambiguously ===
========================
Message 3 of 4
(1,318 Views)

Thanks! I will move forward with RaspberryPi or Arduino. I wanted to use this with LabVIEW as I will be using other sensors (thermocouple, heat flux gauges) during the same experiment and wanted all the data to be synchronized and acquired in the same data file. 

0 Kudos
Message 4 of 4
(1,312 Views)