<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>SensorsのトピックFXOS8700CQ i2c functionality failure on Beaglebone</title>
    <link>https://community.nxp.com/t5/Sensors/FXOS8700CQ-i2c-functionality-failure-on-Beaglebone/m-p/425351#M1979</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;Forgive my lack of expert knowledge on this subject. I am working on interfacing the FRDM-STBC-AGM01 (FXOS8700CQ and FXAS21002). Due to this setup type with beaglebone I am unable to get any of the toolbars to work. I am trying to get started by reading the WHO_AM_I and writing to CTRL_REG1 on the board using i2c. The program only prints zero value for both cases. Can an expert suggest what I am doing wrong?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;CODE class="rainbow" style="font-family: Consolas, 'Liberation Mono', Courier, monospace; color: inherit; background: transparent;"&gt;&lt;SPAN class="keyword" style="font-weight: bold;"&gt;int&lt;/SPAN&gt; &lt;SPAN class="call function"&gt;main&lt;/SPAN&gt;(&lt;SPAN class="keyword" style="font-weight: bold;"&gt;void&lt;/SPAN&gt;)&lt;BR /&gt;{&lt;BR /&gt;&amp;nbsp; &lt;SPAN class="keyword" style="font-weight: bold;"&gt;char&lt;/SPAN&gt; rxBuffer[&lt;SPAN class="numeric constant" style="color: #009999;"&gt;32&lt;/SPAN&gt;];&amp;nbsp; &lt;SPAN class="comment" style="color: #999988;"&gt;// receive buffer&lt;/SPAN&gt;&lt;BR /&gt;&amp;nbsp; &lt;SPAN class="keyword" style="font-weight: bold;"&gt;char&lt;/SPAN&gt; txBuffer[&lt;SPAN class="numeric constant" style="color: #009999;"&gt;32&lt;/SPAN&gt;];&amp;nbsp; &lt;SPAN class="comment" style="color: #999988;"&gt;// transmit buffer&lt;/SPAN&gt;&lt;BR /&gt;&amp;nbsp; &lt;SPAN class="keyword" style="font-weight: bold;"&gt;int&lt;/SPAN&gt; gyroAddress &lt;SPAN class="keyword operator" style="font-weight: bold;"&gt;=&lt;/SPAN&gt; &lt;SPAN class="numeric constant" style="color: #009999;"&gt;0x20&lt;/SPAN&gt;; &lt;SPAN class="comment" style="color: #999988;"&gt;// gyro device address&lt;/SPAN&gt;&lt;BR /&gt;&amp;nbsp; &lt;SPAN class="keyword" style="font-weight: bold;"&gt;int&lt;/SPAN&gt; xlAddress &lt;SPAN class="keyword operator" style="font-weight: bold;"&gt;=&lt;/SPAN&gt; &lt;SPAN class="numeric constant" style="color: #009999;"&gt;0x1E&lt;/SPAN&gt;;&amp;nbsp; &lt;SPAN class="comment" style="color: #999988;"&gt;// accelerometer device address&lt;/SPAN&gt;&lt;BR /&gt;&amp;nbsp; &lt;SPAN class="keyword" style="font-weight: bold;"&gt;int&lt;/SPAN&gt; tenBitAddress &lt;SPAN class="keyword operator" style="font-weight: bold;"&gt;=&lt;/SPAN&gt; &lt;SPAN class="numeric constant" style="color: #009999;"&gt;0&lt;/SPAN&gt;;&amp;nbsp; &lt;SPAN class="comment" style="color: #999988;"&gt;// is the device's address 10-bit? Usually not.&lt;/SPAN&gt;&lt;BR /&gt;&amp;nbsp; &lt;SPAN class="keyword" style="font-weight: bold;"&gt;int&lt;/SPAN&gt; opResult &lt;SPAN class="keyword operator" style="font-weight: bold;"&gt;=&lt;/SPAN&gt; &lt;SPAN class="numeric constant" style="color: #009999;"&gt;0&lt;/SPAN&gt;;&amp;nbsp; &lt;SPAN class="comment" style="color: #999988;"&gt;// for error checking of operations&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp; &lt;SPAN class="comment" style="color: #999988;"&gt;// Create a file descriptor for the I2C bus&lt;/SPAN&gt;&lt;BR /&gt;&amp;nbsp; &lt;SPAN class="keyword" style="font-weight: bold;"&gt;int&lt;/SPAN&gt; i2cHandle &lt;SPAN class="keyword operator" style="font-weight: bold;"&gt;=&lt;/SPAN&gt; &lt;SPAN class="call function"&gt;open&lt;/SPAN&gt;(&lt;SPAN class="string" style="color: #dd1144;"&gt;"/dev/i2c-1"&lt;/SPAN&gt;, O_RDWR);&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp; &lt;SPAN class="comment" style="color: #999988;"&gt;// Tell the I2C peripheral that the device address is (or isn't) a 10-bit&lt;/SPAN&gt;&lt;BR /&gt;&amp;nbsp; opResult &lt;SPAN class="keyword operator" style="font-weight: bold;"&gt;=&lt;/SPAN&gt; &lt;SPAN class="call function"&gt;ioctl&lt;/SPAN&gt;(i2cHandle, I2C_TENBIT, tenBitAddress);&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp; &lt;SPAN class="comment" style="color: #999988;"&gt;// Tell the I2C peripheral what the address of the device is&lt;/SPAN&gt;&lt;BR /&gt;&amp;nbsp; opResult &lt;SPAN class="keyword operator" style="font-weight: bold;"&gt;=&lt;/SPAN&gt; &lt;SPAN class="call function"&gt;ioctl&lt;/SPAN&gt;(i2cHandle, I2C_SLAVE, gyroAddress);&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp; &lt;SPAN class="comment" style="color: #999988;"&gt;// Clear our buffers&lt;/SPAN&gt;&lt;BR /&gt;&amp;nbsp; &lt;SPAN class="call function"&gt;memset&lt;/SPAN&gt;(rxBuffer, &lt;SPAN class="numeric constant" style="color: #009999;"&gt;0&lt;/SPAN&gt;, &lt;SPAN class="call function"&gt;sizeof&lt;/SPAN&gt;(rxBuffer));&lt;BR /&gt;&amp;nbsp; &lt;SPAN class="call function"&gt;memset&lt;/SPAN&gt;(txBuffer, &lt;SPAN class="numeric constant" style="color: #009999;"&gt;0&lt;/SPAN&gt;, &lt;SPAN class="call function"&gt;sizeof&lt;/SPAN&gt;(txBuffer));&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp; //&lt;SPAN class="comment" style="color: #999988;"&gt;&lt;/SPAN&gt;&lt;SPAN class="comment" style="color: #999988;"&gt;We're going to ask the gyro to read back its "WHO_AM_I"&lt;/SPAN&gt;&lt;BR /&gt;&amp;nbsp; txBuffer[&lt;SPAN class="numeric constant" style="color: #009999;"&gt;0&lt;/SPAN&gt;] &lt;SPAN class="keyword operator" style="font-weight: bold;"&gt;=&lt;/SPAN&gt; &lt;SPAN class="numeric constant" style="color: #009999;"&gt;0x0C&lt;/SPAN&gt;; &lt;SPAN class="comment" style="color: #999988;"&gt;// This is the address we want to read from.&lt;/SPAN&gt;&lt;BR /&gt;&amp;nbsp; opResult &lt;SPAN class="keyword operator" style="font-weight: bold;"&gt;=&lt;/SPAN&gt; &lt;SPAN class="call function"&gt;write&lt;/SPAN&gt;(i2cHandle, txBuffer, &lt;SPAN class="numeric constant" style="color: #009999;"&gt;1&lt;/SPAN&gt;);&lt;BR /&gt;&amp;nbsp; &lt;SPAN class="keyword" style="font-weight: bold;"&gt;if&lt;/SPAN&gt; (opResult &lt;SPAN class="keyword operator" style="font-weight: bold;"&gt;!&lt;/SPAN&gt;&lt;SPAN class="keyword operator" style="font-weight: bold;"&gt;=&lt;/SPAN&gt; &lt;SPAN class="numeric constant" style="color: #009999;"&gt;1&lt;/SPAN&gt;) &lt;SPAN class="call function"&gt;printf&lt;/SPAN&gt;(&lt;SPAN class="string" style="color: #dd1144;"&gt;"No ACK bit!\n"&lt;/SPAN&gt;);&lt;BR /&gt;&amp;nbsp; opResult &lt;SPAN class="keyword operator" style="font-weight: bold;"&gt;=&lt;/SPAN&gt; &lt;SPAN class="call function"&gt;read&lt;/SPAN&gt;(i2cHandle, rxBuffer, &lt;SPAN class="numeric constant" style="color: #009999;"&gt;1&lt;/SPAN&gt;);&lt;BR /&gt;&amp;nbsp; &lt;SPAN class="call function"&gt;printf&lt;/SPAN&gt;(&lt;SPAN class="string" style="color: #dd1144;"&gt;"Part ID: %d\n"&lt;/SPAN&gt;, (&lt;SPAN class="keyword" style="font-weight: bold;"&gt;int&lt;/SPAN&gt;)rxBuffer[&lt;SPAN class="numeric constant" style="color: #009999;"&gt;0&lt;/SPAN&gt;]); &lt;SPAN class="comment" style="color: #999988;"&gt;&lt;/SPAN&gt;&lt;BR /&gt;&amp;nbsp; &lt;SPAN class="comment" style="color: #999988;"&gt;&lt;/SPAN&gt;&lt;BR /&gt;&amp;nbsp; &lt;SPAN class="comment" style="color: #999988;"&gt;// we need to change the slave address!&lt;/SPAN&gt;&lt;BR /&gt;&amp;nbsp; opResult &lt;SPAN class="keyword operator" style="font-weight: bold;"&gt;=&lt;/SPAN&gt; &lt;SPAN class="call function"&gt;ioctl&lt;/SPAN&gt;(i2cHandle, I2C_SLAVE, xlAddress);&lt;BR /&gt;&amp;nbsp; txBuffer[&lt;SPAN class="numeric constant" style="color: #009999;"&gt;0&lt;/SPAN&gt;] &lt;SPAN class="keyword operator" style="font-weight: bold;"&gt;=&lt;/SPAN&gt; &lt;SPAN class="numeric constant" style="color: #009999;"&gt;0x0D&lt;/SPAN&gt;;&amp;nbsp; &lt;SPAN class="comment" style="color: #999988;"&gt;// This is the address to read from.&lt;/SPAN&gt;&lt;BR /&gt;&amp;nbsp; opResult &lt;SPAN class="keyword operator" style="font-weight: bold;"&gt;=&lt;/SPAN&gt; &lt;SPAN class="call function"&gt;write&lt;/SPAN&gt;(i2cHandle, txBuffer, &lt;SPAN class="numeric constant" style="color: #009999;"&gt;1&lt;/SPAN&gt;);&lt;BR /&gt;&amp;nbsp; &lt;SPAN class="keyword" style="font-weight: bold;"&gt;if&lt;/SPAN&gt; (opResult &lt;SPAN class="keyword operator" style="font-weight: bold;"&gt;!&lt;/SPAN&gt;&lt;SPAN class="keyword operator" style="font-weight: bold;"&gt;=&lt;/SPAN&gt; &lt;SPAN class="numeric constant" style="color: #009999;"&gt;1&lt;/SPAN&gt;) &lt;SPAN class="call function"&gt;printf&lt;/SPAN&gt;(&lt;SPAN class="string" style="color: #dd1144;"&gt;"No ACK bit!\n"&lt;/SPAN&gt;);&lt;BR /&gt;&amp;nbsp; opResult &lt;SPAN class="keyword operator" style="font-weight: bold;"&gt;=&lt;/SPAN&gt; &lt;SPAN class="call function"&gt;read&lt;/SPAN&gt;(i2cHandle, rxBuffer, &lt;SPAN class="numeric constant" style="color: #009999;"&gt;1&lt;/SPAN&gt;);&lt;BR /&gt;&amp;nbsp; &lt;SPAN class="call function"&gt;printf&lt;/SPAN&gt;(&lt;SPAN class="string" style="color: #dd1144;"&gt;"Part ID: %d\n"&lt;/SPAN&gt;, (&lt;SPAN class="keyword" style="font-weight: bold;"&gt;int&lt;/SPAN&gt;)rxBuffer[&lt;SPAN class="numeric constant" style="color: #009999;"&gt;0&lt;/SPAN&gt;]);&lt;BR /&gt;}&lt;/CODE&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I can read values from the sensor using i2cget/dump commands. Program seems simple but still does not function. Any hints?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thank you.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Tue, 03 Feb 2026 22:50:52 GMT</pubDate>
    <dc:creator>priyanks</dc:creator>
    <dc:date>2026-02-03T22:50:52Z</dc:date>
    <item>
      <title>FXOS8700CQ i2c functionality failure on Beaglebone</title>
      <link>https://community.nxp.com/t5/Sensors/FXOS8700CQ-i2c-functionality-failure-on-Beaglebone/m-p/425351#M1979</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;Forgive my lack of expert knowledge on this subject. I am working on interfacing the FRDM-STBC-AGM01 (FXOS8700CQ and FXAS21002). Due to this setup type with beaglebone I am unable to get any of the toolbars to work. I am trying to get started by reading the WHO_AM_I and writing to CTRL_REG1 on the board using i2c. The program only prints zero value for both cases. Can an expert suggest what I am doing wrong?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;CODE class="rainbow" style="font-family: Consolas, 'Liberation Mono', Courier, monospace; color: inherit; background: transparent;"&gt;&lt;SPAN class="keyword" style="font-weight: bold;"&gt;int&lt;/SPAN&gt; &lt;SPAN class="call function"&gt;main&lt;/SPAN&gt;(&lt;SPAN class="keyword" style="font-weight: bold;"&gt;void&lt;/SPAN&gt;)&lt;BR /&gt;{&lt;BR /&gt;&amp;nbsp; &lt;SPAN class="keyword" style="font-weight: bold;"&gt;char&lt;/SPAN&gt; rxBuffer[&lt;SPAN class="numeric constant" style="color: #009999;"&gt;32&lt;/SPAN&gt;];&amp;nbsp; &lt;SPAN class="comment" style="color: #999988;"&gt;// receive buffer&lt;/SPAN&gt;&lt;BR /&gt;&amp;nbsp; &lt;SPAN class="keyword" style="font-weight: bold;"&gt;char&lt;/SPAN&gt; txBuffer[&lt;SPAN class="numeric constant" style="color: #009999;"&gt;32&lt;/SPAN&gt;];&amp;nbsp; &lt;SPAN class="comment" style="color: #999988;"&gt;// transmit buffer&lt;/SPAN&gt;&lt;BR /&gt;&amp;nbsp; &lt;SPAN class="keyword" style="font-weight: bold;"&gt;int&lt;/SPAN&gt; gyroAddress &lt;SPAN class="keyword operator" style="font-weight: bold;"&gt;=&lt;/SPAN&gt; &lt;SPAN class="numeric constant" style="color: #009999;"&gt;0x20&lt;/SPAN&gt;; &lt;SPAN class="comment" style="color: #999988;"&gt;// gyro device address&lt;/SPAN&gt;&lt;BR /&gt;&amp;nbsp; &lt;SPAN class="keyword" style="font-weight: bold;"&gt;int&lt;/SPAN&gt; xlAddress &lt;SPAN class="keyword operator" style="font-weight: bold;"&gt;=&lt;/SPAN&gt; &lt;SPAN class="numeric constant" style="color: #009999;"&gt;0x1E&lt;/SPAN&gt;;&amp;nbsp; &lt;SPAN class="comment" style="color: #999988;"&gt;// accelerometer device address&lt;/SPAN&gt;&lt;BR /&gt;&amp;nbsp; &lt;SPAN class="keyword" style="font-weight: bold;"&gt;int&lt;/SPAN&gt; tenBitAddress &lt;SPAN class="keyword operator" style="font-weight: bold;"&gt;=&lt;/SPAN&gt; &lt;SPAN class="numeric constant" style="color: #009999;"&gt;0&lt;/SPAN&gt;;&amp;nbsp; &lt;SPAN class="comment" style="color: #999988;"&gt;// is the device's address 10-bit? Usually not.&lt;/SPAN&gt;&lt;BR /&gt;&amp;nbsp; &lt;SPAN class="keyword" style="font-weight: bold;"&gt;int&lt;/SPAN&gt; opResult &lt;SPAN class="keyword operator" style="font-weight: bold;"&gt;=&lt;/SPAN&gt; &lt;SPAN class="numeric constant" style="color: #009999;"&gt;0&lt;/SPAN&gt;;&amp;nbsp; &lt;SPAN class="comment" style="color: #999988;"&gt;// for error checking of operations&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp; &lt;SPAN class="comment" style="color: #999988;"&gt;// Create a file descriptor for the I2C bus&lt;/SPAN&gt;&lt;BR /&gt;&amp;nbsp; &lt;SPAN class="keyword" style="font-weight: bold;"&gt;int&lt;/SPAN&gt; i2cHandle &lt;SPAN class="keyword operator" style="font-weight: bold;"&gt;=&lt;/SPAN&gt; &lt;SPAN class="call function"&gt;open&lt;/SPAN&gt;(&lt;SPAN class="string" style="color: #dd1144;"&gt;"/dev/i2c-1"&lt;/SPAN&gt;, O_RDWR);&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp; &lt;SPAN class="comment" style="color: #999988;"&gt;// Tell the I2C peripheral that the device address is (or isn't) a 10-bit&lt;/SPAN&gt;&lt;BR /&gt;&amp;nbsp; opResult &lt;SPAN class="keyword operator" style="font-weight: bold;"&gt;=&lt;/SPAN&gt; &lt;SPAN class="call function"&gt;ioctl&lt;/SPAN&gt;(i2cHandle, I2C_TENBIT, tenBitAddress);&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp; &lt;SPAN class="comment" style="color: #999988;"&gt;// Tell the I2C peripheral what the address of the device is&lt;/SPAN&gt;&lt;BR /&gt;&amp;nbsp; opResult &lt;SPAN class="keyword operator" style="font-weight: bold;"&gt;=&lt;/SPAN&gt; &lt;SPAN class="call function"&gt;ioctl&lt;/SPAN&gt;(i2cHandle, I2C_SLAVE, gyroAddress);&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp; &lt;SPAN class="comment" style="color: #999988;"&gt;// Clear our buffers&lt;/SPAN&gt;&lt;BR /&gt;&amp;nbsp; &lt;SPAN class="call function"&gt;memset&lt;/SPAN&gt;(rxBuffer, &lt;SPAN class="numeric constant" style="color: #009999;"&gt;0&lt;/SPAN&gt;, &lt;SPAN class="call function"&gt;sizeof&lt;/SPAN&gt;(rxBuffer));&lt;BR /&gt;&amp;nbsp; &lt;SPAN class="call function"&gt;memset&lt;/SPAN&gt;(txBuffer, &lt;SPAN class="numeric constant" style="color: #009999;"&gt;0&lt;/SPAN&gt;, &lt;SPAN class="call function"&gt;sizeof&lt;/SPAN&gt;(txBuffer));&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp; //&lt;SPAN class="comment" style="color: #999988;"&gt;&lt;/SPAN&gt;&lt;SPAN class="comment" style="color: #999988;"&gt;We're going to ask the gyro to read back its "WHO_AM_I"&lt;/SPAN&gt;&lt;BR /&gt;&amp;nbsp; txBuffer[&lt;SPAN class="numeric constant" style="color: #009999;"&gt;0&lt;/SPAN&gt;] &lt;SPAN class="keyword operator" style="font-weight: bold;"&gt;=&lt;/SPAN&gt; &lt;SPAN class="numeric constant" style="color: #009999;"&gt;0x0C&lt;/SPAN&gt;; &lt;SPAN class="comment" style="color: #999988;"&gt;// This is the address we want to read from.&lt;/SPAN&gt;&lt;BR /&gt;&amp;nbsp; opResult &lt;SPAN class="keyword operator" style="font-weight: bold;"&gt;=&lt;/SPAN&gt; &lt;SPAN class="call function"&gt;write&lt;/SPAN&gt;(i2cHandle, txBuffer, &lt;SPAN class="numeric constant" style="color: #009999;"&gt;1&lt;/SPAN&gt;);&lt;BR /&gt;&amp;nbsp; &lt;SPAN class="keyword" style="font-weight: bold;"&gt;if&lt;/SPAN&gt; (opResult &lt;SPAN class="keyword operator" style="font-weight: bold;"&gt;!&lt;/SPAN&gt;&lt;SPAN class="keyword operator" style="font-weight: bold;"&gt;=&lt;/SPAN&gt; &lt;SPAN class="numeric constant" style="color: #009999;"&gt;1&lt;/SPAN&gt;) &lt;SPAN class="call function"&gt;printf&lt;/SPAN&gt;(&lt;SPAN class="string" style="color: #dd1144;"&gt;"No ACK bit!\n"&lt;/SPAN&gt;);&lt;BR /&gt;&amp;nbsp; opResult &lt;SPAN class="keyword operator" style="font-weight: bold;"&gt;=&lt;/SPAN&gt; &lt;SPAN class="call function"&gt;read&lt;/SPAN&gt;(i2cHandle, rxBuffer, &lt;SPAN class="numeric constant" style="color: #009999;"&gt;1&lt;/SPAN&gt;);&lt;BR /&gt;&amp;nbsp; &lt;SPAN class="call function"&gt;printf&lt;/SPAN&gt;(&lt;SPAN class="string" style="color: #dd1144;"&gt;"Part ID: %d\n"&lt;/SPAN&gt;, (&lt;SPAN class="keyword" style="font-weight: bold;"&gt;int&lt;/SPAN&gt;)rxBuffer[&lt;SPAN class="numeric constant" style="color: #009999;"&gt;0&lt;/SPAN&gt;]); &lt;SPAN class="comment" style="color: #999988;"&gt;&lt;/SPAN&gt;&lt;BR /&gt;&amp;nbsp; &lt;SPAN class="comment" style="color: #999988;"&gt;&lt;/SPAN&gt;&lt;BR /&gt;&amp;nbsp; &lt;SPAN class="comment" style="color: #999988;"&gt;// we need to change the slave address!&lt;/SPAN&gt;&lt;BR /&gt;&amp;nbsp; opResult &lt;SPAN class="keyword operator" style="font-weight: bold;"&gt;=&lt;/SPAN&gt; &lt;SPAN class="call function"&gt;ioctl&lt;/SPAN&gt;(i2cHandle, I2C_SLAVE, xlAddress);&lt;BR /&gt;&amp;nbsp; txBuffer[&lt;SPAN class="numeric constant" style="color: #009999;"&gt;0&lt;/SPAN&gt;] &lt;SPAN class="keyword operator" style="font-weight: bold;"&gt;=&lt;/SPAN&gt; &lt;SPAN class="numeric constant" style="color: #009999;"&gt;0x0D&lt;/SPAN&gt;;&amp;nbsp; &lt;SPAN class="comment" style="color: #999988;"&gt;// This is the address to read from.&lt;/SPAN&gt;&lt;BR /&gt;&amp;nbsp; opResult &lt;SPAN class="keyword operator" style="font-weight: bold;"&gt;=&lt;/SPAN&gt; &lt;SPAN class="call function"&gt;write&lt;/SPAN&gt;(i2cHandle, txBuffer, &lt;SPAN class="numeric constant" style="color: #009999;"&gt;1&lt;/SPAN&gt;);&lt;BR /&gt;&amp;nbsp; &lt;SPAN class="keyword" style="font-weight: bold;"&gt;if&lt;/SPAN&gt; (opResult &lt;SPAN class="keyword operator" style="font-weight: bold;"&gt;!&lt;/SPAN&gt;&lt;SPAN class="keyword operator" style="font-weight: bold;"&gt;=&lt;/SPAN&gt; &lt;SPAN class="numeric constant" style="color: #009999;"&gt;1&lt;/SPAN&gt;) &lt;SPAN class="call function"&gt;printf&lt;/SPAN&gt;(&lt;SPAN class="string" style="color: #dd1144;"&gt;"No ACK bit!\n"&lt;/SPAN&gt;);&lt;BR /&gt;&amp;nbsp; opResult &lt;SPAN class="keyword operator" style="font-weight: bold;"&gt;=&lt;/SPAN&gt; &lt;SPAN class="call function"&gt;read&lt;/SPAN&gt;(i2cHandle, rxBuffer, &lt;SPAN class="numeric constant" style="color: #009999;"&gt;1&lt;/SPAN&gt;);&lt;BR /&gt;&amp;nbsp; &lt;SPAN class="call function"&gt;printf&lt;/SPAN&gt;(&lt;SPAN class="string" style="color: #dd1144;"&gt;"Part ID: %d\n"&lt;/SPAN&gt;, (&lt;SPAN class="keyword" style="font-weight: bold;"&gt;int&lt;/SPAN&gt;)rxBuffer[&lt;SPAN class="numeric constant" style="color: #009999;"&gt;0&lt;/SPAN&gt;]);&lt;BR /&gt;}&lt;/CODE&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I can read values from the sensor using i2cget/dump commands. Program seems simple but still does not function. Any hints?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thank you.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 03 Feb 2026 22:50:52 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Sensors/FXOS8700CQ-i2c-functionality-failure-on-Beaglebone/m-p/425351#M1979</guid>
      <dc:creator>priyanks</dc:creator>
      <dc:date>2026-02-03T22:50:52Z</dc:date>
    </item>
    <item>
      <title>Re: FXOS8700CQ i2c functionality failure on Beaglebone</title>
      <link>https://community.nxp.com/t5/Sensors/FXOS8700CQ-i2c-functionality-failure-on-Beaglebone/m-p/425352#M1980</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Priyank,&lt;/P&gt;&lt;P&gt;I've moved your question to the general Sensors community, as I think we're more likely to get you a good answer here.&amp;nbsp; The sensorfusion team has no experience with the BeagleBoard, so can't be much help.&lt;/P&gt;&lt;P&gt;Mike&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 12 Jun 2015 16:29:44 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Sensors/FXOS8700CQ-i2c-functionality-failure-on-Beaglebone/m-p/425352#M1980</guid>
      <dc:creator>michaelestanley</dc:creator>
      <dc:date>2015-06-12T16:29:44Z</dc:date>
    </item>
  </channel>
</rss>

