- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
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!)
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
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?
Link Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
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?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
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?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
My pleasure When using mraa the script is not used and cannot affect you - mraa does all the pin muxing and does it properly

- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page