Serial Protocols (App Note) | LabJack
« Close

Datasheets and User Guides

App Notes

Software & Driver

Wednesday April 1st, 2020
Support: LabJack engineers available through email and chat.
Shipping: We are processing and shipping all orders.
Stock: 55/56 products in stock. More details.
Supply Chain: Some disruptions. More details.

Serial Protocols (App Note)

Serial Protocols Overview

Many of our devices are capable of communicating with sensors that only allow for serial communication.  Most of our devices support SPI, I2C, 1-Wire, and other Asynchronous Serial Protocols.  Configuring our devices to send and receive data is fairly device independent and easy once you understand the protocol being used, however a few things must be kept in mind before purchasing sensors that use a serial protocol for transferring information.

  • Our devices supply 5V on their VS line and not 3.3V.
  • Our devices output 3.3V logic levels on their FIO/EIO/MIO/CIO lines but are capable of receiving 5V as an input.  Note that the high voltage for I2C is generally controlled with a pull-up resistor anyway, so this is not a problem.
  • Some sensors don't follow standard I2C/SPI protocols.
That being said, with some effort, most digital sensors can be successfully connected to a LabJack.


Support - Further I2C Resources

Further reading and Examples for I2C

Some posts and more resources about using LabJack devices with I2C sensors can be found on the forums section of our website as well as in some external locations:

  • A website dedicated to the I2C Bus.
  • There are some I2C examples for LabVIEW, Matlab, and Lua for the UD devices as well as devices that support LJM on GitHub in the I2C-AppNotes repository. In particular, look at the LJM_I2C_Utils.m file for LJM compatible devices and the UD_I2C_Utils.m file for UD compatible devices.
  • There are some detailed descriptions of I2C on UD devices on DAQFactory's forum regarding the MCP23017 I2C chip on a forum topic titled I2C Problem (MCP23017)
  • The I2C Simulator is a quick visualization tool aimed to help users understand how the LJM I2C registers affect the resulting I/O data pattern that you would see on a logic analyzer.
  • The generic I2C AppNote describes some general properties about I2C and has some logic analyzer screen shots describing some of the I/O patterns.