HEBI I/O Board (Rev C) - I2C and Digital IO Commands

Questions about our Python API
Post Reply
Posts: 5
Joined: Tue Apr 07, 2020 12:08 pm
Location: College Station, TX

HEBI I/O Board (Rev C) - I2C and Digital IO Commands

Post by Reach_TexasA&M » Tue Jul 21, 2020 8:56 pm


I have two questions.

1) Does the IO Board have I2C capabilities?

2) How do you command digital and analog IOs on the IO board? I only see feedback examples for Python...


- Reach Systems - Texas A&M University
User avatar
HEBI Official
Posts: 5
Joined: Mon Mar 30, 2020 10:27 am
Location: Pittsburgh

Re: HEBI I/O Board (Rev C) - I2C and Digital IO Commands

Post by daniel_wright » Wed Jul 22, 2020 9:19 am


1) Sadly, we do not support I2C. However, would you be able to provide your use case? We have had this question asked somewhat frequently, and we'd like to investigate what potential use cases we are ignoring.

2) You are correct - I don't see any examples showing how to set pins on the IO board. Sorry about that.

To view which banks correspond to the digital and analog outputs, please view our documentation here: https://docs.hebi.us/hardware.html#io-board-commands

As for setting pin values, digital output pins expect integer values, and analog expects float. You can set them like this:

Code: Select all

import hebi
cmd = hebi.GroupCommand(1)

# Set pin e3 to 1
cmd.io.e.set_int(3, 1)

# Set pin f2 to 0.7
cmd.io.f.set_float(2, 0.7)
Let me know if this sufficiently helps!
User avatar
HEBI Official
Posts: 14
Joined: Fri Mar 27, 2020 6:55 pm
Location: Pittsburgh, PA

Re: HEBI I/O Board (Rev C) - I2C and Digital IO Commands

Post by curtis_layton » Wed Jul 22, 2020 9:32 am


One other note - the "analog" outputs are actually PWM outputs that run at 20Khz. To get an analog output, use a R-C low pass filter to remove the carrier frequency.

Here is some general information about how this works:

https://www.allaboutcircuits.com/techni ... g-voltage/

Thank you,

- Curtis
Post Reply