<?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>topic Accelerometer and Magnetometer FIFO usage (FXOS8700CQ) in Sensors</title>
    <link>https://community.nxp.com/t5/Sensors/Accelerometer-and-Magnetometer-FIFO-usage-FXOS8700CQ/m-p/441428#M2249</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I am integrating FXOS8700CQ , 6-Axis Sensor with Integrated Linear Accelerometer and Magnetometer and I am interested in acc. and mag. data, buffered with 100Hz sample rate and read each 50 ms, 14-bit data mode.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;As far I can see FIFO functionallity sadly does not include buffering of mag. data, so for 50 ms I can get 5 samples for acc. and 1 for compass.My questions are:&lt;/P&gt;&lt;P&gt; - if I rely on autoincrement, starting from status (0x00), will the autoincrement point me to magnetic data (0x33)? Speaking in register addresses, (0x) 0, 1,2,3,4,5,6, 1,2,3,4,5,6, 1,2,3,4,5,6, 1,2,3,4,5,6, 1,2,3,4,5,6, 33,34,35,36,37,38.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;And what will happen if a new sample is done while I am reading the other 5 - will the pointer direct me to 1 again, instead of 0x33 after 5 FIFO packets are read or maybe again towards 1 or 0? &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks in advance for your support!&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Tue, 03 Feb 2026 22:17:56 GMT</pubDate>
    <dc:creator>alexandertorofi</dc:creator>
    <dc:date>2026-02-03T22:17:56Z</dc:date>
    <item>
      <title>Accelerometer and Magnetometer FIFO usage (FXOS8700CQ)</title>
      <link>https://community.nxp.com/t5/Sensors/Accelerometer-and-Magnetometer-FIFO-usage-FXOS8700CQ/m-p/441428#M2249</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I am integrating FXOS8700CQ , 6-Axis Sensor with Integrated Linear Accelerometer and Magnetometer and I am interested in acc. and mag. data, buffered with 100Hz sample rate and read each 50 ms, 14-bit data mode.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;As far I can see FIFO functionallity sadly does not include buffering of mag. data, so for 50 ms I can get 5 samples for acc. and 1 for compass.My questions are:&lt;/P&gt;&lt;P&gt; - if I rely on autoincrement, starting from status (0x00), will the autoincrement point me to magnetic data (0x33)? Speaking in register addresses, (0x) 0, 1,2,3,4,5,6, 1,2,3,4,5,6, 1,2,3,4,5,6, 1,2,3,4,5,6, 1,2,3,4,5,6, 33,34,35,36,37,38.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;And what will happen if a new sample is done while I am reading the other 5 - will the pointer direct me to 1 again, instead of 0x33 after 5 FIFO packets are read or maybe again towards 1 or 0? &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks in advance for your support!&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 03 Feb 2026 22:17:56 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Sensors/Accelerometer-and-Magnetometer-FIFO-usage-FXOS8700CQ/m-p/441428#M2249</guid>
      <dc:creator>alexandertorofi</dc:creator>
      <dc:date>2026-02-03T22:17:56Z</dc:date>
    </item>
    <item>
      <title>Re: Accelerometer and Magnetometer FIFO usage (FXOS8700CQ)</title>
      <link>https://community.nxp.com/t5/Sensors/Accelerometer-and-Magnetometer-FIFO-usage-FXOS8700CQ/m-p/441429#M2250</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello Alexander, &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;As you mentioned, the &lt;STRONG&gt;FXOS87OOCQ&lt;/STRONG&gt; counts with 32-sample &lt;SPAN class="highlight"&gt;FIFO&lt;/SPAN&gt; for &lt;SPAN style="text-decoration: underline;"&gt;acceleration data only&lt;/SPAN&gt;.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;If the FIFO data output register driver is enabled &lt;EM style="color: #1f4e79; font-size: 10.0pt;"&gt;STATUS[f_mode] &amp;gt; 00&lt;/EM&gt;, &lt;STRONG&gt;register 0x01 points to the head of the FIFO buffer&lt;/STRONG&gt;, while registers 0x02, 0x03, 0x04, 0x05, 0x06 return a value of zero when read directly.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;It means that if you pretend to enable the FIFO, &lt;EM style="color: #1f4e79; font-size: 10.0pt;"&gt;STATUS[f_mode] &amp;gt; 00&lt;/EM&gt;, &lt;STRONG&gt;the register 0x01, &lt;/STRONG&gt;which is OUT_X_MSB, &lt;STRONG&gt;will contain the previous 32 X, Y, and Z data samples&lt;/STRONG&gt;.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;If you disable the FIFO, &lt;EM style="color: #1f4e79; font-size: 10.0pt;"&gt;STATUS[f_mode] = 00&lt;/EM&gt;, and you read directly the sample data registers, indeed, the behavior is done as you mentioned. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;In case you disable the FIFO, please be aware about the &lt;EM style="color: #1f4e79; font-size: 10.0pt;"&gt;CTRL_REG1[f_read]&lt;/EM&gt; register.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Have a great day. :smileyhappy:&lt;/P&gt;&lt;P&gt;David Diaz.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 9.0pt;"&gt;Note: If this post answers your question, please click the Correct Answer button. Thank you!&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 02 Dec 2015 01:10:51 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Sensors/Accelerometer-and-Magnetometer-FIFO-usage-FXOS8700CQ/m-p/441429#M2250</guid>
      <dc:creator>david_diaz</dc:creator>
      <dc:date>2015-12-02T01:10:51Z</dc:date>
    </item>
    <item>
      <title>Re: Accelerometer and Magnetometer FIFO usage (FXOS8700CQ)</title>
      <link>https://community.nxp.com/t5/Sensors/Accelerometer-and-Magnetometer-FIFO-usage-FXOS8700CQ/m-p/441430#M2251</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thank you for your reply and time. I agree with you, but what I meant is if I have FIFO active, read the status (0x00), see that I have 5 new packets in FIFO, point at 0x01 and then read continously 36 bytes (6x6), which will be the last 6 bytes read?&lt;/P&gt;&lt;P&gt;Or when I read the last of the buffered packeds in FIFO, where will the autoincrement take me for the last 6 bytes? Will it automatically take me to 0x33? Will it take me to the oldest buffered data, considering that this is a ring buffer? Will it just give me zeroes, since I've already read the 30 bytes I have in FIFO? And what will happen if a new 6 bytes for the accelerometer arrive after I've read the Status?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Meanwhile, I've taken the safer road and don't rely on the autoincrement. I simply point to the compass after I get the acc data, but sill, out of curiousity (and because of possible optimization) I am interested what the autoincrement does when FIFO is read.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; GetAxlmData();&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; I2C_Read(FXOS8700CQ_SLAVE_ADDR, FXOS8700CQ_MAG_X1_MSB, sensorData.cmpsData[0].Ch, 6); //get compass data&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; I2C_Read(FXOS8700CQ_SLAVE_ADDR, FXOS8700CQ_TEMP, (unsigned char*)&amp;amp;sensorData.temperature, 1); //get compass data&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Kind regards,&lt;/P&gt;&lt;P&gt;Alex&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 02 Dec 2015 08:12:20 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Sensors/Accelerometer-and-Magnetometer-FIFO-usage-FXOS8700CQ/m-p/441430#M2251</guid>
      <dc:creator>alexandertorofi</dc:creator>
      <dc:date>2015-12-02T08:12:20Z</dc:date>
    </item>
    <item>
      <title>Re: Accelerometer and Magnetometer FIFO usage (FXOS8700CQ)</title>
      <link>https://community.nxp.com/t5/Sensors/Accelerometer-and-Magnetometer-FIFO-usage-FXOS8700CQ/m-p/441431#M2252</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&lt;SPAN style="font-size: 9.0pt;"&gt;Hello Alexander,&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 9.0pt;"&gt;Please accept my apologies for the delayed response. &lt;/SPAN&gt;&lt;/P&gt;&lt;P style="text-align: justify;"&gt;&lt;/P&gt;&lt;P style="text-align: justify;"&gt;&lt;SPAN style="font-size: 9.0pt;"&gt;Indeed, the FIFO overflow is asserted every 32 samples. In this case we have the option of flushing either the 14-bit data or the 8-bit data. &lt;/SPAN&gt;&lt;/P&gt;&lt;P style="text-align: justify;"&gt;&lt;/P&gt;&lt;P style="text-align: justify;"&gt;&lt;SPAN style="font-size: 9.0pt;"&gt;For the 14-bit data each sample consists of three 14-bit values, each stored as 2 bytes. Therefore, when full, the FIFO will contain 192 bytes. For the 8-bit data each sample consists of three 8-bit values, each stored as 1 byte. Therefore in this case when full the FIFO will contain 96 bytes. &lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P style="text-align: justify;"&gt;&lt;SPAN style="font-size: 9.0pt;"&gt;In regard with the FIFO behavior, please be aware about the FIFO buffer operating modes:&lt;/SPAN&gt;&lt;/P&gt;&lt;OL style="list-style-type: decimal;"&gt;&lt;LI&gt;&lt;SPAN style="font-size: 9.0pt;"&gt;f_mode= 01 Circular Buffer: In this mode the FIFO contains the most recent samples when overflowed. The oldest sample is discarded to be replaced by the new sample. This mode is useful when waiting for an event and wanting to collect the latest 32 samples up to that event.&lt;/SPAN&gt;&lt;/LI&gt;&lt;LI&gt;&lt;SPAN style="font-size: 9.0pt;"&gt;f_mode = 10 Fill Buffer: In this mode the FIFO stops accepting new samples when overflowed. This is a good mode to be in for data logging.&lt;/SPAN&gt;&lt;/LI&gt;&lt;LI&gt;&lt;SPAN style="font-size: 9.0pt;"&gt;f_mode = 11 Trigger Buffer: In this mode the FIFO will be in a circular mode up to the number of samples set in the watermark.&lt;/SPAN&gt;&lt;/LI&gt;&lt;/OL&gt;&lt;P style="text-align: justify;"&gt;&lt;/P&gt;&lt;P style="text-align: justify;"&gt;&lt;SPAN style="font-size: 9.0pt;"&gt;For more information on using the FIFO buffer and the various FIFO operating modes, please refer to Freescale application note &lt;A href="http://cache.freescale.com/files/sensors/doc/app_note/AN4073.pdf" title="http://cache.freescale.com/files/sensors/doc/app_note/AN4073.pdf"&gt;AN4073&lt;/A&gt;​.&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="text-align: justify;"&gt;&lt;/P&gt;&lt;P style="text-align: justify;"&gt;&lt;SPAN style="font-size: 9.0pt;"&gt;Please let me know if this information is useful for you.&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="text-align: justify;"&gt;&lt;/P&gt;&lt;P style="text-align: justify;"&gt;&lt;SPAN style="font-size: 9.0pt;"&gt;If I misunderstood your question, feel free to let me know.&amp;nbsp; I will be glad to help.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P style="text-align: justify;"&gt;&lt;SPAN style="font-size: 9.0pt;"&gt;Have a great day.&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="text-align: justify;"&gt;&lt;SPAN style="font-size: 9.0pt;"&gt;David Diaz.&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 10 Dec 2015 21:27:30 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Sensors/Accelerometer-and-Magnetometer-FIFO-usage-FXOS8700CQ/m-p/441431#M2252</guid>
      <dc:creator>david_diaz</dc:creator>
      <dc:date>2015-12-10T21:27:30Z</dc:date>
    </item>
  </channel>
</rss>

