Community
cancel
Showing results for 
Search instead for 
Did you mean: 
Highlighted
New Contributor I
1,665 Views

Error in current edison kit for arduino hardware guide? (GPIO214/TRI_STATE_ALL)

Jump to solution

In section 3 of the current hardware guide for the arduino breakout board, the following text is below Table 3 in section 2.2:

"Before setting up any muxing, set pin 214 (TRI_STATE_ALL) to HIGH, make all of your changes, then set pin 214 to LOW."

In section 11 though, it appears to completely contradict with all examples appearing to set 214 to low then high, such as the following:

# echo 254 > /sys/class/gpio/export

# echo 222 > /sys/class/gpio/export

# echo 214 > /sys/class/gpio/export

# echo low > /sys/class/gpio/gpio214/direction

# echo high > /sys/class/gpio/gpio254/direction

# echo in > /sys/class/gpio/gpio222/direction

# echo mode1 > /sys/kernel/debug/gpio_debug/gpio182/current_pinmux

# echo high > /sys/class/gpio/gpio214/direction

It seems fairly important to get this right, but I've searched the communities and I'm seeing examples all over that do it either way which is really not helpful. I'm leaning towards section 11 just being full of errors as the changelog states "Reversed high-low sequence of gpio214 in shield pin configuration section." in 2014, maybe section 11 just wasn't updated? Would appreciate clarification on whether I'm just confused on how linux represents the setting of high/low for signals or if there's clear errors in the manual (in which case, please update it intel!)

0 Kudos

Accepted Solutions
Highlighted
Honored Contributor II
7 Views

Re: Error in current edison kit for arduino hardware guide? (GPIO214/TRI_STATE_ALL)

Jump to solution

I've faced this same question today and correct sequence is LOW-configure-HIGH, as listed in examples, but not in that note under the table 3 in section 2.2.

In addition, this sequence is used incorrectly in the init_i2c8.sh script used to set muxing for MCU I2C access in MCU SDK (https://software.intel.com/en-us/node/557356 Sample scripts for the MCU SDK | Intel® Software). The script only has one line for pin 214 - and it sets it to HIGH before doing pin configurations, which is not recommended per the docs. It seems to work like that for whatever reason, but I think it would be better to align it with recommendations.

@Intel support folks, could you please take this to document and MCU SDK pin setup script maintainers?

View solution in original post

3 Replies
Highlighted
Honored Contributor II
8 Views

Re: Error in current edison kit for arduino hardware guide? (GPIO214/TRI_STATE_ALL)

Jump to solution

I've faced this same question today and correct sequence is LOW-configure-HIGH, as listed in examples, but not in that note under the table 3 in section 2.2.

In addition, this sequence is used incorrectly in the init_i2c8.sh script used to set muxing for MCU I2C access in MCU SDK (https://software.intel.com/en-us/node/557356 Sample scripts for the MCU SDK | Intel® Software). The script only has one line for pin 214 - and it sets it to HIGH before doing pin configurations, which is not recommended per the docs. It seems to work like that for whatever reason, but I think it would be better to align it with recommendations.

@Intel support folks, could you please take this to document and MCU SDK pin setup script maintainers?

View solution in original post

Highlighted
New Contributor I
7 Views

Re: Error in current edison kit for arduino hardware guide? (GPIO214/TRI_STATE_ALL)

Jump to solution

Thanks for the detailed answer Alex! I don't believe I'm using the MCU SDK, will the bad script affect me when using mraa?

0 Kudos
Highlighted
Honored Contributor II
7 Views

Re: Error in current edison kit for arduino hardware guide? (GPIO214/TRI_STATE_ALL)

Jump to solution

My pleasure When using mraa the script is not used and cannot affect you - mraa does all the pin muxing and does it properly

0 Kudos