<?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 Re: FreeFall Detection in Sensors</title>
    <link>https://community.nxp.com/t5/Sensors/FreeFall-Detection/m-p/621563#M3833</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hola Claudia,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Gracias por escribir.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;En este caso te recomiendo usar la siguiente configuración en los registros correspondientes al &lt;EM&gt;Freefall Detection&lt;/EM&gt;:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&lt;SPAN style="color: #7f0055; background: white; font-size: 8.0pt;"&gt;&lt;STRONG&gt;#if&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;SPAN style="font-size: 8.0pt; color: black; background: white;"&gt; FREEFALL_DETECTION&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&lt;SPAN style="font-size: 8.0pt; color: black; background: white;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; I2C_WriteRegister(FXOS8700CQ_I2C_ADDRESS, FF_MT_CFG_REG, 0x38);&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="font-size: 8.0pt; color: #3f7f5f; background: white;"&gt;// &lt;SPAN style="text-decoration: underline;"&gt;Freefall&lt;/SPAN&gt; detection for X and Y and Z axis&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&lt;SPAN style="font-size: 8.0pt; color: black; background: white;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; I2C_WriteRegister(FXOS8700CQ_I2C_ADDRESS, FT_MT_THS_REG, 0x04);&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="font-size: 8.0pt; color: #3f7f5f; background: white;"&gt;// Threshold Setting Value for the &lt;SPAN style="text-decoration: underline;"&gt;Freefall&lt;/SPAN&gt; detection of&amp;nbsp; 0.2g (4 * 0.063)&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&lt;SPAN style="font-size: 8.0pt; color: black; background: white;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; I2C_WriteRegister(FXOS8700CQ_I2C_ADDRESS, FF_MT_COUNT_REG, 0x04);&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="font-size: 8.0pt; color: #3f7f5f; background: white;"&gt;// Set the &lt;SPAN style="text-decoration: underline;"&gt;debounce&lt;/SPAN&gt; counter to 80 &lt;SPAN style="text-decoration: underline;"&gt;ms&lt;/SPAN&gt; timer (20ms * 4) &lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&lt;SPAN style="font-size: 8.0pt;"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&lt;SPAN style="font-size: 8.0pt; color: black; background: white;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; reg_val = I2C_ReadRegister(FXOS8700CQ_I2C_ADDRESS, CTRL_REG4);&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&lt;SPAN style="font-size: 8.0pt; color: black; background: white;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; I2C_WriteRegister(FXOS8700CQ_I2C_ADDRESS, CTRL_REG4, reg_val|0x04);&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="font-size: 8.0pt; color: #3f7f5f; background: white;"&gt;// Enable Motion/&lt;SPAN style="text-decoration: underline;"&gt;Freefall&lt;/SPAN&gt; Interrupt&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&lt;SPAN style="font-size: 8.0pt; color: black; background: white;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; reg_val = I2C_ReadRegister(FXOS8700CQ_I2C_ADDRESS, CTRL_REG5);&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&lt;SPAN style="font-size: 8.0pt; color: black; background: white;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; I2C_WriteRegister(FXOS8700CQ_I2C_ADDRESS, CTRL_REG5, reg_val|0x04);&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="font-size: 8.0pt; color: #3f7f5f; background: white;"&gt;// &lt;SPAN style="text-decoration: underline;"&gt;Freefall&lt;/SPAN&gt; interrupt routed to INT1 - PTC6&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #7f0055; background: white; font-size: 8.0pt;"&gt;&lt;STRONG&gt;#endif&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Toma en cuenta que al estar usando el modo acelerómetro, el ODR cambia para tu configuración.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;En este caso te recomiendo modificar el registro A_FFMT_COUNT como se muestra en el código mostrado. Puedes encontrar mas información en la tabla 94 (Table 94) de la hoja de datos en:&lt;/P&gt;&lt;P&gt;&lt;A class="link-titled" href="http://cache.nxp.com/files/sensors/doc/data_sheet/FXOS8700CQ.pdf" title="http://cache.nxp.com/files/sensors/doc/data_sheet/FXOS8700CQ.pdf"&gt;http://www.nxp.com/files/sensors/doc/data_sheet/FXOS8700CQ.pdf&lt;/A&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;El proyecto se encuentra adjunto a esta respuesta.&lt;/STRONG&gt; &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Espero que esta información sea útil para ti.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Saludos,&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 11.0pt;"&gt;David &lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Fri, 16 Sep 2016 06:37:00 GMT</pubDate>
    <dc:creator>david_diaz</dc:creator>
    <dc:date>2016-09-16T06:37:00Z</dc:date>
    <item>
      <title>FreeFall Detection</title>
      <link>https://community.nxp.com/t5/Sensors/FreeFall-Detection/m-p/621562#M3832</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Tengo problemas con mi código para el acelerómetro&amp;nbsp;FXOS8700CQ, deseo generar una interrupción por FreeFall pero no se genera, no se si sea necesario configurar otro registro que no haya hecho, esta es la función para inicializar el sensor que he estado utilizando:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;void FXOS8700CQ1_Init(void)&lt;BR /&gt;{&lt;BR /&gt; //Reset all registers to POR values&lt;BR /&gt; I2C_WriteRegister(FXOS8700CQ_I2C_ADDRESS, CTRL_REG2, 0x40);&lt;BR /&gt; //delay&lt;BR /&gt; Pause(0x400);&lt;/P&gt;&lt;P&gt;// +/-2g range with 0.244mg/LSB&lt;BR /&gt; I2C_WriteRegister(FXOS8700CQ_I2C_ADDRESS, XYZ_DATA_CFG_REG, 0x00);&lt;BR /&gt; //1ms delay&lt;BR /&gt; Pause(0x100);&lt;BR /&gt; &lt;BR /&gt;#if FREEFALL_DETECTION&lt;BR /&gt; I2C_WriteRegister(FXOS8700CQ_I2C_ADDRESS, FF_MT_CFG_REG, 0xB8); // Freefall detection for X and Y and Z axis&lt;BR /&gt; I2C_WriteRegister(FXOS8700CQ_I2C_ADDRESS, FT_MT_THS_REG, 0x03); // Threshold Setting Value for the Freefall detection of &amp;lt; 0.2g (0.2g/0.064g = 3.17 counts)&lt;BR /&gt; I2C_WriteRegister(FXOS8700CQ_I2C_ADDRESS, FF_MT_COUNT_REG, 0x0C); // Set the debounce counter to 100 ms timer (120ms/100Hz = 12 counts)&lt;BR /&gt;#endif&lt;/P&gt;&lt;P&gt;//Only accelerometer sensor is active&lt;BR /&gt; I2C_WriteRegister(FXOS8700CQ_I2C_ADDRESS, M_CTRL_REG1, 0x00);&lt;/P&gt;&lt;P&gt;//High Resolution mode&lt;BR /&gt; I2C_WriteRegister(FXOS8700CQ_I2C_ADDRESS, CTRL_REG2, 0x02);&lt;BR /&gt; &lt;BR /&gt; //Push-pull, active low interrupt&lt;BR /&gt; I2C_WriteRegister(FXOS8700CQ_I2C_ADDRESS, CTRL_REG3, 0x00);&lt;/P&gt;&lt;P&gt;//Enable DRDY interrupt&lt;BR /&gt; //Enable Freefall interrupt&lt;BR /&gt; I2C_WriteRegister(FXOS8700CQ_I2C_ADDRESS, CTRL_REG4, 0x05);&lt;/P&gt;&lt;P&gt;I2C_WriteRegister(FXOS8700CQ_I2C_ADDRESS, CTRL_REG5, 0x05);&lt;/P&gt;&lt;P&gt;//ODR= 3.125Hz Reduced noise, Active mode&lt;BR /&gt; I2C_WriteRegister(FXOS8700CQ_I2C_ADDRESS, CTRL_REG1, 0x35);&lt;BR /&gt;}&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 03 Feb 2026 21:05:43 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Sensors/FreeFall-Detection/m-p/621562#M3832</guid>
      <dc:creator>andrear__2810</dc:creator>
      <dc:date>2026-02-03T21:05:43Z</dc:date>
    </item>
    <item>
      <title>Re: FreeFall Detection</title>
      <link>https://community.nxp.com/t5/Sensors/FreeFall-Detection/m-p/621563#M3833</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hola Claudia,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Gracias por escribir.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;En este caso te recomiendo usar la siguiente configuración en los registros correspondientes al &lt;EM&gt;Freefall Detection&lt;/EM&gt;:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&lt;SPAN style="color: #7f0055; background: white; font-size: 8.0pt;"&gt;&lt;STRONG&gt;#if&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;SPAN style="font-size: 8.0pt; color: black; background: white;"&gt; FREEFALL_DETECTION&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&lt;SPAN style="font-size: 8.0pt; color: black; background: white;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; I2C_WriteRegister(FXOS8700CQ_I2C_ADDRESS, FF_MT_CFG_REG, 0x38);&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="font-size: 8.0pt; color: #3f7f5f; background: white;"&gt;// &lt;SPAN style="text-decoration: underline;"&gt;Freefall&lt;/SPAN&gt; detection for X and Y and Z axis&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&lt;SPAN style="font-size: 8.0pt; color: black; background: white;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; I2C_WriteRegister(FXOS8700CQ_I2C_ADDRESS, FT_MT_THS_REG, 0x04);&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="font-size: 8.0pt; color: #3f7f5f; background: white;"&gt;// Threshold Setting Value for the &lt;SPAN style="text-decoration: underline;"&gt;Freefall&lt;/SPAN&gt; detection of&amp;nbsp; 0.2g (4 * 0.063)&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&lt;SPAN style="font-size: 8.0pt; color: black; background: white;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; I2C_WriteRegister(FXOS8700CQ_I2C_ADDRESS, FF_MT_COUNT_REG, 0x04);&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="font-size: 8.0pt; color: #3f7f5f; background: white;"&gt;// Set the &lt;SPAN style="text-decoration: underline;"&gt;debounce&lt;/SPAN&gt; counter to 80 &lt;SPAN style="text-decoration: underline;"&gt;ms&lt;/SPAN&gt; timer (20ms * 4) &lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&lt;SPAN style="font-size: 8.0pt;"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&lt;SPAN style="font-size: 8.0pt; color: black; background: white;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; reg_val = I2C_ReadRegister(FXOS8700CQ_I2C_ADDRESS, CTRL_REG4);&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&lt;SPAN style="font-size: 8.0pt; color: black; background: white;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; I2C_WriteRegister(FXOS8700CQ_I2C_ADDRESS, CTRL_REG4, reg_val|0x04);&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="font-size: 8.0pt; color: #3f7f5f; background: white;"&gt;// Enable Motion/&lt;SPAN style="text-decoration: underline;"&gt;Freefall&lt;/SPAN&gt; Interrupt&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&lt;SPAN style="font-size: 8.0pt; color: black; background: white;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; reg_val = I2C_ReadRegister(FXOS8700CQ_I2C_ADDRESS, CTRL_REG5);&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&lt;SPAN style="font-size: 8.0pt; color: black; background: white;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; I2C_WriteRegister(FXOS8700CQ_I2C_ADDRESS, CTRL_REG5, reg_val|0x04);&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="font-size: 8.0pt; color: #3f7f5f; background: white;"&gt;// &lt;SPAN style="text-decoration: underline;"&gt;Freefall&lt;/SPAN&gt; interrupt routed to INT1 - PTC6&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #7f0055; background: white; font-size: 8.0pt;"&gt;&lt;STRONG&gt;#endif&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Toma en cuenta que al estar usando el modo acelerómetro, el ODR cambia para tu configuración.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;En este caso te recomiendo modificar el registro A_FFMT_COUNT como se muestra en el código mostrado. Puedes encontrar mas información en la tabla 94 (Table 94) de la hoja de datos en:&lt;/P&gt;&lt;P&gt;&lt;A class="link-titled" href="http://cache.nxp.com/files/sensors/doc/data_sheet/FXOS8700CQ.pdf" title="http://cache.nxp.com/files/sensors/doc/data_sheet/FXOS8700CQ.pdf"&gt;http://www.nxp.com/files/sensors/doc/data_sheet/FXOS8700CQ.pdf&lt;/A&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;El proyecto se encuentra adjunto a esta respuesta.&lt;/STRONG&gt; &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Espero que esta información sea útil para ti.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Saludos,&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 11.0pt;"&gt;David &lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 16 Sep 2016 06:37:00 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Sensors/FreeFall-Detection/m-p/621563#M3833</guid>
      <dc:creator>david_diaz</dc:creator>
      <dc:date>2016-09-16T06:37:00Z</dc:date>
    </item>
    <item>
      <title>Re: FreeFall Detection</title>
      <link>https://community.nxp.com/t5/Sensors/FreeFall-Detection/m-p/621564#M3834</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Muchísimas gracias, ya se generó la interrupción cambiando eso&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 16 Sep 2016 18:26:16 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Sensors/FreeFall-Detection/m-p/621564#M3834</guid>
      <dc:creator>andrear__2810</dc:creator>
      <dc:date>2016-09-16T18:26:16Z</dc:date>
    </item>
  </channel>
</rss>

