<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="https://devzone.nordicsemi.com/cfs-file/__key/system/syndication/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Running the LSM6DLS (IMU) zephyr example with nrf52840 based Xiao BLE Sense</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/109732/running-the-lsm6dls-imu-zephyr-example-with-nrf52840-based-xiao-ble-sense</link><description>Hi all, 
 I&amp;#39;ve been trying to get the samples/sensor/lsm6dsl example working with the nrf52840-based Xiao BLE Sense and have had no luck. 
 I guess that it&amp;#39;s due to the power line for the sensor being connected to the P1.08 I dug into the xiao_ble_sense</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Tue, 15 Oct 2024 05:38:54 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/109732/running-the-lsm6dls-imu-zephyr-example-with-nrf52840-based-xiao-ble-sense" /><item><title>RE: Running the LSM6DLS (IMU) zephyr example with nrf52840 based Xiao BLE Sense</title><link>https://devzone.nordicsemi.com/thread/506216?ContentTypeID=1</link><pubDate>Tue, 15 Oct 2024 05:38:54 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:0d28d9b6-02da-440f-b03a-88b2221da509</guid><dc:creator>genmastermega</dc:creator><description>&lt;p&gt;Hello All,&lt;/p&gt;
&lt;p&gt;I have gotten the IMU to work.&lt;/p&gt;
&lt;p&gt;There is one thing that changes form the sample code vs what the new driver needs. &lt;br /&gt;&lt;br /&gt;I think with the zephyr toolchain/version being updated the driver must have changed.&lt;/p&gt;
&lt;p&gt;You can not change the sampling rate in code instead you have to use the following project config lines:&lt;/p&gt;
&lt;div style="background-color:#ffffff;color:#3b3b3b;font-family:Consolas, &amp;#39;Courier New&amp;#39;, monospace;font-size:14px;font-weight:normal;line-height:19px;white-space:pre;"&gt;
&lt;div&gt;&lt;span style="color:#0000ff;"&gt;CONFIG_LSM6DSL_GYRO_ODR&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;=1&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="color:#0000ff;"&gt;CONFIG_LSM6DSL_ACCEL_ODR&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;=1&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="color:#3b3b3b;"&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="color:#3b3b3b;"&gt;I found that after this I just use the following functions to check if the device is working and to pull the accleration data: &lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="color:#3b3b3b;"&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="color:#3b3b3b;"&gt;```&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;div style="background-color:#ffffff;color:#3b3b3b;font-family:Consolas, &amp;#39;Courier New&amp;#39;, monospace;font-size:14px;font-weight:normal;line-height:19px;white-space:pre;"&gt;
&lt;div&gt;&lt;span style="color:#af00db;"&gt;#include&lt;/span&gt;&lt;span style="color:#0000ff;"&gt; &lt;/span&gt;&lt;span style="color:#a31515;"&gt;&amp;quot;IMU.h&amp;quot;&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div&gt;&lt;span style="color:#0000ff;"&gt;LOG_MODULE_REGISTER&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;(imu, &lt;/span&gt;&lt;span style="color:#0000ff;"&gt;LOG_LEVEL_INF&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;);&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div&gt;&lt;span style="color:#0000ff;"&gt;int&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt; &lt;/span&gt;&lt;span style="color:#795e26;"&gt;IMUSetup&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;(){&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="color:#3b3b3b;"&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="color:#0000ff;"&gt;int&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt; &lt;/span&gt;&lt;span style="color:#001080;"&gt;err&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt; &lt;/span&gt;&lt;span style="color:#000000;"&gt;=&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt; &lt;/span&gt;&lt;span style="color:#098658;"&gt;0&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;; &lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="color:#3b3b3b;"&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="color:#af00db;"&gt;if&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt; (&lt;/span&gt;&lt;span style="color:#000000;"&gt;!&lt;/span&gt;&lt;span style="color:#795e26;"&gt;device_is_ready&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;(&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;IMU_DEVICE&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;)) {&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="color:#3b3b3b;"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="color:#0000ff;"&gt;LOG_ERR&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;(&lt;/span&gt;&lt;span style="color:#a31515;"&gt;&amp;quot;IMU device is not ready&amp;quot;&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;);&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="color:#3b3b3b;"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="color:#af00db;"&gt;return&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt; &lt;/span&gt;&lt;span style="color:#000000;"&gt;-&lt;/span&gt;&lt;span style="color:#098658;"&gt;1&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="color:#3b3b3b;"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; } &lt;/span&gt;&lt;span style="color:#af00db;"&gt;else&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt; {&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="color:#3b3b3b;"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="color:#0000ff;"&gt;LOG_INF&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;(&lt;/span&gt;&lt;span style="color:#a31515;"&gt;&amp;quot;IMU DEVICE IS READY&amp;quot;&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;);&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="color:#3b3b3b;"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; }&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div&gt;&lt;span style="color:#3b3b3b;"&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="color:#af00db;"&gt;return&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt; &lt;/span&gt;&lt;span style="color:#098658;"&gt;0&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;; &lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="color:#3b3b3b;"&gt;};&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div&gt;&lt;span style="color:#0000ff;"&gt;int&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt; &lt;/span&gt;&lt;span style="color:#795e26;"&gt;readIMUData&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;(){&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="color:#3b3b3b;"&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="color:#0000ff;"&gt;int&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt; &lt;/span&gt;&lt;span style="color:#001080;"&gt;err&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt; &lt;/span&gt;&lt;span style="color:#000000;"&gt;=&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt; &lt;/span&gt;&lt;span style="color:#098658;"&gt;0&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;; &lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div&gt;&lt;span style="color:#3b3b3b;"&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="color:#0000ff;"&gt;static&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt; &lt;/span&gt;&lt;span style="color:#0000ff;"&gt;struct&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt; &lt;/span&gt;&lt;span style="color:#267f99;"&gt;sensor_value&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt; &lt;/span&gt;&lt;span style="color:#001080;"&gt;accel_x&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;, &lt;/span&gt;&lt;span style="color:#001080;"&gt;accel_y&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;, &lt;/span&gt;&lt;span style="color:#001080;"&gt;accel_z&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="color:#3b3b3b;"&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="color:#0000ff;"&gt;static&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt; &lt;/span&gt;&lt;span style="color:#0000ff;"&gt;struct&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt; &lt;/span&gt;&lt;span style="color:#267f99;"&gt;sensor_value&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt; &lt;/span&gt;&lt;span style="color:#001080;"&gt;gyro_x&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;, &lt;/span&gt;&lt;span style="color:#001080;"&gt;gyro_y&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;, &lt;/span&gt;&lt;span style="color:#001080;"&gt;gyro_z&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;;&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;&lt;br /&gt;
&lt;div&gt;&lt;span style="color:#3b3b3b;"&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="color:#008000;"&gt;// Fetch accelerometer data&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="color:#3b3b3b;"&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="color:#001080;"&gt;err&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt; &lt;/span&gt;&lt;span style="color:#000000;"&gt;=&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt; &lt;/span&gt;&lt;span style="color:#795e26;"&gt;sensor_sample_fetch_chan&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;(&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;IMU_DEVICE&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;, &lt;/span&gt;&lt;span style="color:#0070c1;"&gt;SENSOR_CHAN_ACCEL_XYZ&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;);&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="color:#3b3b3b;"&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="color:#af00db;"&gt;if&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt; (&lt;/span&gt;&lt;span style="color:#001080;"&gt;err&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt; &lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt; &lt;/span&gt;&lt;span style="color:#098658;"&gt;0&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;) {&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="color:#3b3b3b;"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="color:#0000ff;"&gt;LOG_ERR&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;(&lt;/span&gt;&lt;span style="color:#a31515;"&gt;&amp;quot;Error fetching accelerometer data: &lt;/span&gt;&lt;span style="color:#001080;"&gt;%d&lt;/span&gt;&lt;span style="color:#a31515;"&gt;&amp;quot;&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;, &lt;/span&gt;&lt;span style="color:#001080;"&gt;err&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;);&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="color:#3b3b3b;"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="color:#af00db;"&gt;return&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;;&lt;/span&gt;&lt;span style="color:#008000;"&gt; &amp;nbsp;// Exit or handle the error appropriately&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="color:#3b3b3b;"&gt;&amp;nbsp; &amp;nbsp; }&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div&gt;&lt;span style="color:#3b3b3b;"&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="color:#008000;"&gt;// Get accelerometer channels&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="color:#3b3b3b;"&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="color:#001080;"&gt;err&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt; &lt;/span&gt;&lt;span style="color:#000000;"&gt;=&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt; &lt;/span&gt;&lt;span style="color:#795e26;"&gt;sensor_channel_get&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;(&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;IMU_DEVICE&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;, &lt;/span&gt;&lt;span style="color:#0070c1;"&gt;SENSOR_CHAN_ACCEL_X&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;, &lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;amp;&lt;/span&gt;&lt;span style="color:#001080;"&gt;accel_x&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;);&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="color:#3b3b3b;"&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="color:#af00db;"&gt;if&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt; (&lt;/span&gt;&lt;span style="color:#001080;"&gt;err&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt; &lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt; &lt;/span&gt;&lt;span style="color:#098658;"&gt;0&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;) {&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="color:#3b3b3b;"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="color:#0000ff;"&gt;LOG_ERR&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;(&lt;/span&gt;&lt;span style="color:#a31515;"&gt;&amp;quot;Error getting accelerometer X channel: &lt;/span&gt;&lt;span style="color:#001080;"&gt;%d&lt;/span&gt;&lt;span style="color:#a31515;"&gt;&amp;quot;&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;, &lt;/span&gt;&lt;span style="color:#001080;"&gt;err&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;);&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="color:#3b3b3b;"&gt;&amp;nbsp; &amp;nbsp; }&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div&gt;&lt;span style="color:#3b3b3b;"&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="color:#001080;"&gt;err&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt; &lt;/span&gt;&lt;span style="color:#000000;"&gt;=&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt; &lt;/span&gt;&lt;span style="color:#795e26;"&gt;sensor_channel_get&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;(&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;IMU_DEVICE&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;, &lt;/span&gt;&lt;span style="color:#0070c1;"&gt;SENSOR_CHAN_ACCEL_Y&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;, &lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;amp;&lt;/span&gt;&lt;span style="color:#001080;"&gt;accel_y&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;);&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="color:#3b3b3b;"&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="color:#af00db;"&gt;if&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt; (&lt;/span&gt;&lt;span style="color:#001080;"&gt;err&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt; &lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt; &lt;/span&gt;&lt;span style="color:#098658;"&gt;0&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;) {&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="color:#3b3b3b;"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="color:#0000ff;"&gt;LOG_ERR&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;(&lt;/span&gt;&lt;span style="color:#a31515;"&gt;&amp;quot;Error getting accelerometer Y channel: &lt;/span&gt;&lt;span style="color:#001080;"&gt;%d&lt;/span&gt;&lt;span style="color:#a31515;"&gt;&amp;quot;&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;, &lt;/span&gt;&lt;span style="color:#001080;"&gt;err&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;);&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="color:#3b3b3b;"&gt;&amp;nbsp; &amp;nbsp; }&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div&gt;&lt;span style="color:#3b3b3b;"&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="color:#001080;"&gt;err&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt; &lt;/span&gt;&lt;span style="color:#000000;"&gt;=&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt; &lt;/span&gt;&lt;span style="color:#795e26;"&gt;sensor_channel_get&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;(&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;IMU_DEVICE&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;, &lt;/span&gt;&lt;span style="color:#0070c1;"&gt;SENSOR_CHAN_ACCEL_Z&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;, &lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;amp;&lt;/span&gt;&lt;span style="color:#001080;"&gt;accel_z&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;);&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="color:#3b3b3b;"&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="color:#af00db;"&gt;if&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt; (&lt;/span&gt;&lt;span style="color:#001080;"&gt;err&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt; &lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt; &lt;/span&gt;&lt;span style="color:#098658;"&gt;0&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;) {&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="color:#3b3b3b;"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="color:#0000ff;"&gt;LOG_ERR&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;(&lt;/span&gt;&lt;span style="color:#a31515;"&gt;&amp;quot;Error getting accelerometer Z channel: &lt;/span&gt;&lt;span style="color:#001080;"&gt;%d&lt;/span&gt;&lt;span style="color:#a31515;"&gt;&amp;quot;&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;, &lt;/span&gt;&lt;span style="color:#001080;"&gt;err&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;);&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="color:#3b3b3b;"&gt;&amp;nbsp; &amp;nbsp; }&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div&gt;&lt;span style="color:#3b3b3b;"&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="color:#008000;"&gt;// Fetch gyroscope data&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="color:#3b3b3b;"&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="color:#001080;"&gt;err&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt; &lt;/span&gt;&lt;span style="color:#000000;"&gt;=&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt; &lt;/span&gt;&lt;span style="color:#795e26;"&gt;sensor_sample_fetch_chan&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;(&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;IMU_DEVICE&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;, &lt;/span&gt;&lt;span style="color:#0070c1;"&gt;SENSOR_CHAN_GYRO_XYZ&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;);&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="color:#3b3b3b;"&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="color:#af00db;"&gt;if&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt; (&lt;/span&gt;&lt;span style="color:#001080;"&gt;err&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt; &lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt; &lt;/span&gt;&lt;span style="color:#098658;"&gt;0&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;) {&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="color:#3b3b3b;"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="color:#0000ff;"&gt;LOG_ERR&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;(&lt;/span&gt;&lt;span style="color:#a31515;"&gt;&amp;quot;Error fetching gyroscope data: &lt;/span&gt;&lt;span style="color:#001080;"&gt;%d&lt;/span&gt;&lt;span style="color:#a31515;"&gt;&amp;quot;&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;, &lt;/span&gt;&lt;span style="color:#001080;"&gt;err&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;);&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="color:#3b3b3b;"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="color:#af00db;"&gt;return&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;;&lt;/span&gt;&lt;span style="color:#008000;"&gt; &amp;nbsp;// Exit or handle the error appropriately&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="color:#3b3b3b;"&gt;&amp;nbsp; &amp;nbsp; }&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div&gt;&lt;span style="color:#3b3b3b;"&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="color:#008000;"&gt;// Get gyroscope channels&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="color:#3b3b3b;"&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="color:#001080;"&gt;err&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt; &lt;/span&gt;&lt;span style="color:#000000;"&gt;=&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt; &lt;/span&gt;&lt;span style="color:#795e26;"&gt;sensor_channel_get&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;(&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;IMU_DEVICE&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;, &lt;/span&gt;&lt;span style="color:#0070c1;"&gt;SENSOR_CHAN_GYRO_X&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;, &lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;amp;&lt;/span&gt;&lt;span style="color:#001080;"&gt;gyro_x&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;);&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="color:#3b3b3b;"&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="color:#af00db;"&gt;if&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt; (&lt;/span&gt;&lt;span style="color:#001080;"&gt;err&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt; &lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt; &lt;/span&gt;&lt;span style="color:#098658;"&gt;0&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;) {&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="color:#3b3b3b;"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="color:#0000ff;"&gt;LOG_ERR&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;(&lt;/span&gt;&lt;span style="color:#a31515;"&gt;&amp;quot;Error getting gyroscope X channel: &lt;/span&gt;&lt;span style="color:#001080;"&gt;%d&lt;/span&gt;&lt;span style="color:#a31515;"&gt;&amp;quot;&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;, &lt;/span&gt;&lt;span style="color:#001080;"&gt;err&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;);&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="color:#3b3b3b;"&gt;&amp;nbsp; &amp;nbsp; }&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div&gt;&lt;span style="color:#3b3b3b;"&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="color:#001080;"&gt;err&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt; &lt;/span&gt;&lt;span style="color:#000000;"&gt;=&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt; &lt;/span&gt;&lt;span style="color:#795e26;"&gt;sensor_channel_get&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;(&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;IMU_DEVICE&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;, &lt;/span&gt;&lt;span style="color:#0070c1;"&gt;SENSOR_CHAN_GYRO_Y&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;, &lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;amp;&lt;/span&gt;&lt;span style="color:#001080;"&gt;gyro_y&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;);&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="color:#3b3b3b;"&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="color:#af00db;"&gt;if&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt; (&lt;/span&gt;&lt;span style="color:#001080;"&gt;err&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt; &lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt; &lt;/span&gt;&lt;span style="color:#098658;"&gt;0&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;) {&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="color:#3b3b3b;"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="color:#0000ff;"&gt;LOG_ERR&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;(&lt;/span&gt;&lt;span style="color:#a31515;"&gt;&amp;quot;Error getting gyroscope Y channel: &lt;/span&gt;&lt;span style="color:#001080;"&gt;%d&lt;/span&gt;&lt;span style="color:#a31515;"&gt;&amp;quot;&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;, &lt;/span&gt;&lt;span style="color:#001080;"&gt;err&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;);&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="color:#3b3b3b;"&gt;&amp;nbsp; &amp;nbsp; }&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div&gt;&lt;span style="color:#3b3b3b;"&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="color:#001080;"&gt;err&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt; &lt;/span&gt;&lt;span style="color:#000000;"&gt;=&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt; &lt;/span&gt;&lt;span style="color:#795e26;"&gt;sensor_channel_get&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;(&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;IMU_DEVICE&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;, &lt;/span&gt;&lt;span style="color:#0070c1;"&gt;SENSOR_CHAN_GYRO_Z&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;, &lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;amp;&lt;/span&gt;&lt;span style="color:#001080;"&gt;gyro_z&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;);&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="color:#3b3b3b;"&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="color:#af00db;"&gt;if&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt; (&lt;/span&gt;&lt;span style="color:#001080;"&gt;err&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt; &lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt; &lt;/span&gt;&lt;span style="color:#098658;"&gt;0&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;) {&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="color:#3b3b3b;"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="color:#0000ff;"&gt;LOG_ERR&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;(&lt;/span&gt;&lt;span style="color:#a31515;"&gt;&amp;quot;Error getting gyroscope Z channel: &lt;/span&gt;&lt;span style="color:#001080;"&gt;%d&lt;/span&gt;&lt;span style="color:#a31515;"&gt;&amp;quot;&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;, &lt;/span&gt;&lt;span style="color:#001080;"&gt;err&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;);&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="color:#3b3b3b;"&gt;&amp;nbsp; &amp;nbsp; }&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div&gt;&lt;span style="color:#3b3b3b;"&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="color:#008000;"&gt;// Print accelerometer data&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="color:#3b3b3b;"&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="color:#0000ff;"&gt;LOG_INF&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;(&lt;/span&gt;&lt;span style="color:#a31515;"&gt;&amp;quot;Accelerometer (m/s^2):&lt;/span&gt;&lt;span style="color:#ee0000;"&gt;\n\t&lt;/span&gt;&lt;span style="color:#a31515;"&gt;X: &lt;/span&gt;&lt;span style="color:#001080;"&gt;%d&lt;/span&gt;&lt;span style="color:#a31515;"&gt;.&lt;/span&gt;&lt;span style="color:#001080;"&gt;%06d&lt;/span&gt;&lt;span style="color:#ee0000;"&gt;\n\t&lt;/span&gt;&lt;span style="color:#a31515;"&gt;Y: &lt;/span&gt;&lt;span style="color:#001080;"&gt;%d&lt;/span&gt;&lt;span style="color:#a31515;"&gt;.&lt;/span&gt;&lt;span style="color:#001080;"&gt;%06d&lt;/span&gt;&lt;span style="color:#ee0000;"&gt;\n\t&lt;/span&gt;&lt;span style="color:#a31515;"&gt;Z: &lt;/span&gt;&lt;span style="color:#001080;"&gt;%d&lt;/span&gt;&lt;span style="color:#a31515;"&gt;.&lt;/span&gt;&lt;span style="color:#001080;"&gt;%06d&lt;/span&gt;&lt;span style="color:#a31515;"&gt;&amp;quot;&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;,&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="color:#3b3b3b;"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="color:#001080;"&gt;accel_x&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;.&lt;/span&gt;&lt;span style="color:#001080;"&gt;val1&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;, &lt;/span&gt;&lt;span style="color:#001080;"&gt;accel_x&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;.&lt;/span&gt;&lt;span style="color:#001080;"&gt;val2&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;, &lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="color:#3b3b3b;"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="color:#001080;"&gt;accel_y&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;.&lt;/span&gt;&lt;span style="color:#001080;"&gt;val1&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;, &lt;/span&gt;&lt;span style="color:#001080;"&gt;accel_y&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;.&lt;/span&gt;&lt;span style="color:#001080;"&gt;val2&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;, &lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="color:#3b3b3b;"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="color:#001080;"&gt;accel_z&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;.&lt;/span&gt;&lt;span style="color:#001080;"&gt;val1&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;, &lt;/span&gt;&lt;span style="color:#001080;"&gt;accel_z&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;.&lt;/span&gt;&lt;span style="color:#001080;"&gt;val2&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;);&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div&gt;&lt;span style="color:#3b3b3b;"&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="color:#008000;"&gt;// Print gyroscope data&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="color:#3b3b3b;"&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="color:#0000ff;"&gt;LOG_INF&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;(&lt;/span&gt;&lt;span style="color:#a31515;"&gt;&amp;quot;Gyroscope (rad/s):&lt;/span&gt;&lt;span style="color:#ee0000;"&gt;\n\t&lt;/span&gt;&lt;span style="color:#a31515;"&gt;X: &lt;/span&gt;&lt;span style="color:#001080;"&gt;%d&lt;/span&gt;&lt;span style="color:#a31515;"&gt;.&lt;/span&gt;&lt;span style="color:#001080;"&gt;%06d&lt;/span&gt;&lt;span style="color:#ee0000;"&gt;\n\t&lt;/span&gt;&lt;span style="color:#a31515;"&gt;Y: &lt;/span&gt;&lt;span style="color:#001080;"&gt;%d&lt;/span&gt;&lt;span style="color:#a31515;"&gt;.&lt;/span&gt;&lt;span style="color:#001080;"&gt;%06d&lt;/span&gt;&lt;span style="color:#ee0000;"&gt;\n\t&lt;/span&gt;&lt;span style="color:#a31515;"&gt;Z: &lt;/span&gt;&lt;span style="color:#001080;"&gt;%d&lt;/span&gt;&lt;span style="color:#a31515;"&gt;.&lt;/span&gt;&lt;span style="color:#001080;"&gt;%06d&lt;/span&gt;&lt;span style="color:#a31515;"&gt;&amp;quot;&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;,&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="color:#3b3b3b;"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="color:#001080;"&gt;gyro_x&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;.&lt;/span&gt;&lt;span style="color:#001080;"&gt;val1&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;, &lt;/span&gt;&lt;span style="color:#001080;"&gt;gyro_x&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;.&lt;/span&gt;&lt;span style="color:#001080;"&gt;val2&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;, &lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="color:#3b3b3b;"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="color:#001080;"&gt;gyro_y&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;.&lt;/span&gt;&lt;span style="color:#001080;"&gt;val1&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;, &lt;/span&gt;&lt;span style="color:#001080;"&gt;gyro_y&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;.&lt;/span&gt;&lt;span style="color:#001080;"&gt;val2&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;, &lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="color:#3b3b3b;"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="color:#001080;"&gt;gyro_z&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;.&lt;/span&gt;&lt;span style="color:#001080;"&gt;val1&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;, &lt;/span&gt;&lt;span style="color:#001080;"&gt;gyro_z&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;.&lt;/span&gt;&lt;span style="color:#001080;"&gt;val2&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;);&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="color:#3b3b3b;"&gt;}&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div&gt;&lt;span style="color:#3b3b3b;"&gt;```&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="color:#3b3b3b;"&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="color:#3b3b3b;"&gt;The I used the default device tree items and have this overlay done to increase the startup delay as recommended by other posts. &lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="color:#3b3b3b;"&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;```&lt;/p&gt;
&lt;div style="background-color:#ffffff;color:#3b3b3b;font-family:Consolas, &amp;#39;Courier New&amp;#39;, monospace;font-size:14px;font-weight:normal;line-height:19px;white-space:pre;"&gt;
&lt;div&gt;&lt;span style="color:#0000ff;"&gt;/&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt; {&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="color:#3b3b3b;"&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="color:#267f99;"&gt;lsm6ds3tr-c-en&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt; {&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="color:#3b3b3b;"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="color:#001080;"&gt;startup-delay-us&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt; &lt;/span&gt;&lt;span style="color:#000000;"&gt;=&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt; &amp;lt;&lt;/span&gt;&lt;span style="color:#098658;"&gt;10000&lt;/span&gt;&lt;span style="color:#3b3b3b;"&gt;&amp;gt;;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="color:#3b3b3b;"&gt;&amp;nbsp; &amp;nbsp; };&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="color:#3b3b3b;"&gt;};&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;```&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;I am using 2.7 toolchain and the 2.7 SDK.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Let me know if you have more questions, I think these were the most important points to consider&lt;br /&gt;&lt;br /&gt;&lt;a href="https://devzone.nordicsemi.com/cfs-file/__key/communityserver-discussions-components-files/4/IMU.c"&gt;devzone.nordicsemi.com/.../IMU.c&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Running the LSM6DLS (IMU) zephyr example with nrf52840 based Xiao BLE Sense</title><link>https://devzone.nordicsemi.com/thread/505983?ContentTypeID=1</link><pubDate>Sat, 12 Oct 2024 19:37:13 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:89580132-b692-406a-840d-497524665860</guid><dc:creator>genmastermega</dc:creator><description>&lt;p&gt;Are you able to share what the issue was in the example code that broke functionality?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Running the LSM6DLS (IMU) zephyr example with nrf52840 based Xiao BLE Sense</title><link>https://devzone.nordicsemi.com/thread/505982?ContentTypeID=1</link><pubDate>Sat, 12 Oct 2024 19:26:42 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:64966a0b-ba66-4021-8206-cfc964064c7a</guid><dc:creator>Akshay Mehta</dc:creator><description>&lt;p&gt;Hi&amp;nbsp;&lt;a href="https://devzone.nordicsemi.com/members/genmastermega"&gt;genmastermega&lt;/a&gt;&amp;nbsp;,&lt;/p&gt;
&lt;p&gt;Yes. Follow the instructions in the pdf file ( part of the zip bundle). You must see all the data from sensors in a pull mechanism. The data is in UTF-8 format. The raw data would be in byte format and can add that feature as a different service if required.&lt;/p&gt;
&lt;p&gt;Feel free to reach out &lt;a href="https://join.slack.com/t/hal-fpo6396/shared_invite/zt-2swttq21s-IBozsESCoDnMt2N3QYRKRg"&gt;on slack&lt;/a&gt; if you have any questions.&lt;/p&gt;
&lt;p&gt;Best,&lt;/p&gt;
&lt;p&gt;Akshay&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Running the LSM6DLS (IMU) zephyr example with nrf52840 based Xiao BLE Sense</title><link>https://devzone.nordicsemi.com/thread/505981?ContentTypeID=1</link><pubDate>Sat, 12 Oct 2024 19:14:27 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:4bc79c36-a27d-4a7f-befa-478e0abe9276</guid><dc:creator>genmastermega</dc:creator><description>&lt;p&gt;Does this library only allow us to see the sensor information over Bluetooth? What if we want the raw data? How would we go about doing that?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Running the LSM6DLS (IMU) zephyr example with nrf52840 based Xiao BLE Sense</title><link>https://devzone.nordicsemi.com/thread/505970?ContentTypeID=1</link><pubDate>Fri, 11 Oct 2024 22:59:38 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:ec1da730-831b-44db-8a7a-ac3200e2cfef</guid><dc:creator>genmastermega</dc:creator><description>&lt;p&gt;Hello Ammaro, &lt;br /&gt;&lt;br /&gt;Can you share the code you used to configure the i2c on the shell to work? &lt;br /&gt;&lt;br /&gt;Thanks for your help. &lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Running the LSM6DLS (IMU) zephyr example with nrf52840 based Xiao BLE Sense</title><link>https://devzone.nordicsemi.com/thread/504727?ContentTypeID=1</link><pubDate>Wed, 02 Oct 2024 15:35:28 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:750f6fa2-32ee-4598-94e6-e9460eb33e92</guid><dc:creator>Akshay Mehta</dc:creator><description>&lt;div class="flex-shrink-0 flex flex-col relative items-end"&gt;
&lt;div&gt;
&lt;div class="pt-0"&gt;
&lt;div class="gizmo-bot-avatar flex h-8 w-8 items-center justify-center overflow-hidden rounded-full"&gt;
&lt;div class="relative p-1 rounded-sm flex items-center justify-center bg-token-main-surface-primary text-token-text-primary h-8 w-8"&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="group/conversation-turn relative flex w-full min-w-0 flex-col agent-turn"&gt;
&lt;div class="flex-col gap-1 md:gap-3"&gt;
&lt;div class="flex max-w-full flex-col flex-grow"&gt;
&lt;div dir="auto" data-message-author-role="assistant" data-message-id="6ee17b45-8722-4a67-a1d5-82403440e1c3"&gt;
&lt;div&gt;
&lt;div class="markdown prose w-full break-words dark:prose-invert light"&gt;
&lt;p&gt;Hi&amp;nbsp;&lt;a href="https://devzone.nordicsemi.com/members/mentarus"&gt;mentarus&lt;/a&gt;&amp;nbsp;,&lt;/p&gt;
&lt;p&gt;It sounds like you&amp;#39;ve run into some persistent issues with the LSM6DSL sensor initialization on the nrf52840-based Xiao BLE Sense board using Zephyr. To help with this, we&amp;#39;ve developed a dedicated &lt;a href="https://github.com/OTAINFO/Downloads/tree/main/Zephyr/Seeed_Studio/XIAO_nRF52840_sense" rel="noopener noreferrer" target="_blank"&gt;library&lt;/a&gt; that specifically addresses the power and I2C configuration challenges you&amp;#39;re experiencing.&lt;/p&gt;
&lt;p&gt;Here&amp;rsquo;s how the library can help:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Automated Power Control&lt;/strong&gt;: The library includes proper handling of P1.08 to ensure the sensor is powered up correctly before initialization.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;I2C Configuration&lt;/strong&gt;: It takes care of the correct pull-up resistor configuration to avoid common issues with back-driving and phantom power on the I2C bus.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Enhanced Startup Delay&lt;/strong&gt;: We&amp;#39;ve also optimized the startup delay to ensure the sensor initializes reliably, avoiding the need for manual adjustments.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;You can integrate the library into your Zephyr project easily by following the steps in the deployment document (bundled with zip file). We&amp;#39;ve also added instructions for testing to ensure everything works smoothly.&lt;/p&gt;
&lt;p&gt;Feel free to &lt;a href="https://join.slack.com/t/hal-fpo6396/shared_invite/zt-2swttq21s-IBozsESCoDnMt2N3QYRKRg"&gt;contact us on slack&lt;/a&gt; if you need further assistance or run into any issues while implementing it!&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Running the LSM6DLS (IMU) zephyr example with nrf52840 based Xiao BLE Sense</title><link>https://devzone.nordicsemi.com/thread/499676?ContentTypeID=1</link><pubDate>Mon, 26 Aug 2024 07:37:37 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:c879f350-8585-46b0-91d0-72b46ac0e5b3</guid><dc:creator>clem67</dc:creator><description>&lt;p&gt;Thanks a lot &lt;a href="https://devzone.nordicsemi.com/members/boris-bergman1"&gt;boris bergman1&lt;/a&gt;&amp;nbsp;, I will look at it.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Running the LSM6DLS (IMU) zephyr example with nrf52840 based Xiao BLE Sense</title><link>https://devzone.nordicsemi.com/thread/499640?ContentTypeID=1</link><pubDate>Sat, 24 Aug 2024 18:00:21 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:1bab9bbc-1c3a-47f1-8ca3-ec8b049d1037</guid><dc:creator>leroyle</dc:creator><description>&lt;p&gt;&amp;nbsp;&lt;a href="https://devzone.nordicsemi.com/members/boris-bergman1"&gt;boris bergman1&lt;/a&gt;&amp;nbsp;Even though I&amp;#39;ve not been using the device myself other than just trying to practice my debugging :o) I just wanted to thank you for posting this.&lt;/p&gt;
&lt;p&gt;Other life things are interfering but I do hope to check out your implementation at some point.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Running the LSM6DLS (IMU) zephyr example with nrf52840 based Xiao BLE Sense</title><link>https://devzone.nordicsemi.com/thread/499630?ContentTypeID=1</link><pubDate>Fri, 23 Aug 2024 21:54:13 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:96c4f431-e41f-45bc-8ebe-575d1582fe1f</guid><dc:creator>boris bergman1</dc:creator><description>&lt;p&gt;Yes, have a look at &lt;a href="https://github.com/bcbergmanuu/LSM6_DSL_XIAO"&gt;my git&lt;/a&gt;.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Running the LSM6DLS (IMU) zephyr example with nrf52840 based Xiao BLE Sense</title><link>https://devzone.nordicsemi.com/thread/499515?ContentTypeID=1</link><pubDate>Fri, 23 Aug 2024 10:37:27 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:2fb814f1-6150-4f51-8c64-f83b9e0f043d</guid><dc:creator>clem67</dc:creator><description>&lt;p&gt;Hi&amp;nbsp;&lt;a href="https://devzone.nordicsemi.com/members/boris-bergman1"&gt;boris bergman1&lt;/a&gt;&amp;nbsp;,&lt;br /&gt;Thank you for your solution. I had the same problem with the&amp;nbsp;&lt;span&gt;LSM6DS3TR-C &amp;quot;not ready state&amp;quot; and changed my sdk version to 2.5.X to make it work.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-family:inherit;"&gt;I wanted to implement your solution which seems cleaner, and could allow me use the latest SDK version.&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-family:inherit;"&gt;I tried to use this exemple&amp;nbsp;&lt;/span&gt;&lt;a id="" style="font-family:inherit;" href="https://github.com/STMicroelectronics/STMems_Standard_C_drivers/tree/master/lsm6ds3tr-c_STdC"&gt;https://github.com/STMicroelectronics/STMems_Standard_C_drivers/tree/master/lsm6ds3tr-c_STdC&lt;/a&gt;&lt;span style="font-family:inherit;"&gt;&amp;nbsp;and replaced the platform_write, platform_read, tx_com and platform_delay functions by the code you gave. But&amp;nbsp;I still miss some code parts like the &amp;quot;Initialize mems driver interface&amp;quot; and the i2C initialization.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;Can you give me a full code exemple for the Xiao BLE Sense you used ?&lt;/p&gt;
&lt;p&gt;Thank you in advance&lt;/p&gt;
&lt;p&gt;I&amp;#39;m new to program this chip, it will help me a lot.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Running the LSM6DLS (IMU) zephyr example with nrf52840 based Xiao BLE Sense</title><link>https://devzone.nordicsemi.com/thread/493847?ContentTypeID=1</link><pubDate>Mon, 15 Jul 2024 10:01:40 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:0c8c2d55-8061-4ef4-a7e8-5d073eb4cc0b</guid><dc:creator>boris bergman1</dc:creator><description>&lt;p&gt;Instead of using the Zephyr sensor abstraction I just use the i2c port directly, as I don&amp;#39;t like them (or I don&amp;#39;t understand it, as no documentation about it anywhere to be found).&lt;/p&gt;
&lt;p&gt;Since quite a lot of people are watching this, I&amp;#39;ll taught sharing my solution. The driver files can directly be downloaded from &lt;a href="https://github.com/STMicroelectronics/lsm6dsl-pid/tree/master"&gt;STMicroelectronics Git&lt;/a&gt;. Paste lsm6dsl.c and lsm6dsl.h in your project.&lt;/p&gt;
&lt;p&gt;You can just use an example of STMicro and replace/add these snippets:&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="c_cpp"&gt;tatic int32_t platform_write(void *handle, uint8_t reg, const uint8_t *bufp,
                              uint16_t len)
{  

	int error = i2c_burst_write(i2c, LSM6DSL_ADDR, reg, bufp, len);
  if (error) {
    return -EIO;
  } else {
    return 0;
  };
}

/*
 * @brief  Read generic device register (platform dependent)
 *
 * @param  handle    customizable argument. In this examples is used in
 *                   order to select the correct sensor bus handler.
 * @param  reg       register to read
 * @param  bufp      pointer to buffer that store the data read
 * @param  len       number of consecutive register to read
 *
 */
static int32_t platform_read(void *handle, uint8_t reg, uint8_t *bufp,
                             uint16_t len)
{  
	 if(i2c_burst_read(i2c, LSM6DSL_ADDR, reg, bufp, len)){    
    return -EIO;
   }   
   return 0;
}

/*
 * @brief  Send buffer to console (platform dependent)
 *
 * @param  tx_buffer     buffer to transmit
 * @param  len           number of byte to send
 *
 */
static void tx_com(uint8_t *tx_buffer, uint16_t len)
{
    LOG_INF(&amp;quot;%s&amp;quot;, tx_buffer);
}

/*
 * @brief  platform specific delay (platform dependent)
 *
 * @param  ms        delay in ms
 *
 */
static void platform_delay(uint32_t ms)
{
    k_sleep(K_MSEC(ms));
}

/*
 * @brief  platform specific initialization (platform dependent)
 */
static void platform_init(void)
{
	i2c = DEVICE_DT_GET(DT_NODELABEL(i2c0));
	__ASSERT(device_is_ready(i2c), &amp;quot;LSM6DSL device not ready&amp;quot;);
}&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;xiao_ble_sense.overlay&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;&amp;amp;zephyr_udc0 {
	cdc_acm_uart0 {
		compatible = &amp;quot;zephyr,cdc-acm-uart&amp;quot;;
	};
};

&amp;amp;i2c0 {	
    lsm6ds3tr_c: lsm6ds3tr-c@6a {
        status = &amp;quot;disabled&amp;quot;;
    };
};
&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;prj.conf&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;CONFIG_STDOUT_CONSOLE=y

CONFIG_I2C=y
CONFIG_SPI=n

CONFIG_USB_DEVICE_PID=0x0001
CONFIG_USB_DRIVER_LOG_LEVEL_ERR=y
CONFIG_USB_DEVICE_LOG_LEVEL_ERR=y
CONFIG_SERIAL=y
CONFIG_UART_INTERRUPT_DRIVEN=y
CONFIG_UART_LINE_CTRL=y
# CONFIG_SENSOR=y
# CONFIG_LSM6DSL_TRIGGER_GLOBAL_THREAD=y
CONFIG_CBPRINTF_FP_SUPPORT=y
CONFIG_REGULATOR=y
CONFIG_LOG=y

CONFIG_USB_DEVICE_STACK=y
CONFIG_USB_DEVICE_PRODUCT=&amp;quot;lsm6dsl_sense&amp;quot;

CONFIG_UART_LINE_CTRL=y
CONFIG_USB_DEVICE_INITIALIZE_AT_BOOT=n
CONFIG_PRINTK=y



CONFIG_BUILD_OUTPUT_UF2=n
CONFIG_USE_DT_CODE_PARTITION=n

#debug section
CONFIG_CORTEX_M_DEBUG_MONITOR_HOOK=y
CONFIG_SEGGER_DEBUGMON=y
CONFIG_LOG_DEFAULT_LEVEL=3
CONFIG_I2C_LOG_LEVEL_DBG=n
CONFIG_I2C_DUMP_MESSAGES=n
CONFIG_DEBUG_OPTIMIZATIONS=y
CONFIG_DEBUG_THREAD_INFO=y
CONFIG_ASSERT=y
CONFIG_USB_DEVICE_VID=0x2FE3&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;This will work on any nrf sdk, and you&amp;#39;ll have full access to all functions of the most recent library, and have much better documentation. Please share me your thoughts.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Running the LSM6DLS (IMU) zephyr example with nrf52840 based Xiao BLE Sense</title><link>https://devzone.nordicsemi.com/thread/485907?ContentTypeID=1</link><pubDate>Sat, 25 May 2024 13:40:15 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:52547aa0-e421-44a1-8015-8676484fce7b</guid><dc:creator>leroyle</dc:creator><description>&lt;p&gt;In trying to debug this&amp;nbsp; (V2.6.1) the only thing I&amp;#39;ve found is that when setting breakpoints at various points through the sensor init processing, it will then work from then on. Nothing consistent enough to run down. Could be timing with the i2c xfers, new thread interactions seen with 2.6.1, debugger changing timing, etc...&lt;/p&gt;
&lt;p&gt;It&amp;#39;s beyond my ability to look at it further.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Running the LSM6DLS (IMU) zephyr example with nrf52840 based Xiao BLE Sense</title><link>https://devzone.nordicsemi.com/thread/485178?ContentTypeID=1</link><pubDate>Tue, 21 May 2024 14:16:13 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:835def38-9c71-4c93-8c64-3921ce208aa4</guid><dc:creator>leroyle</dc:creator><description>&lt;p&gt;So with the debugger behaving properly I may have a work around.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;It seems if I put a small k_sleep() at the entrance to&amp;nbsp; &amp;nbsp;&lt;span&gt;lsm6dsl_init&lt;/span&gt;&lt;span&gt;() it would start behaving.&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;&amp;nbsp;$InstallDir/v2.6.1/zephyr/drivers/sensor/lsm6dsl/lsm6dsl.c&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;&amp;lt;&lt;pre class="ui-code" data-mode="c_cpp"&gt;static int lsm6dsl_init(const struct device *dev)
{
	int ret;
	k_sleep(K_MSEC(1));
	const struct lsm6dsl_config * const config = dev-&amp;gt;config;

	ret = config-&amp;gt;bus_init(dev);
	
	...&lt;/pre&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;You might give it a shot. I don&amp;#39;t know why at this point.&lt;/span&gt;&lt;/p&gt;
&lt;div&gt;
&lt;div&gt;&lt;span&gt;&lt;/span&gt;SDK: 2.6.1&lt;/div&gt;
&lt;div&gt;ToolChain: 2.6.0&lt;/div&gt;
&lt;div&gt;&lt;span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;Then again, not always work. Some sort of timing issue I guess.&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div&gt;&lt;/div&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Running the LSM6DLS (IMU) zephyr example with nrf52840 based Xiao BLE Sense</title><link>https://devzone.nordicsemi.com/thread/485167?ContentTypeID=1</link><pubDate>Tue, 21 May 2024 14:06:43 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:d535e7ac-3d49-4771-9c10-d7cda27c2156</guid><dc:creator>leroyle</dc:creator><description>&lt;p&gt;Might verify the Toolchain version required for v2.6.1??&lt;/p&gt;
&lt;p&gt;I was having some trouble debugging v2.6.1 with Segger Ozone. I noticed when I switched SDK versions from 2.5.0 to 2.6.1 there were a number of &amp;quot;outdated&amp;quot; messages for various tools reported in the VSCode output view.&lt;/p&gt;
&lt;p&gt;So I updated the nrf toolchain version to 2.6.0. The issue with Ozone seemed to clear up, though it could be for unrelated reasons.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Running the LSM6DLS (IMU) zephyr example with nrf52840 based Xiao BLE Sense</title><link>https://devzone.nordicsemi.com/thread/484887?ContentTypeID=1</link><pubDate>Sun, 19 May 2024 20:24:24 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:366922b7-bec0-4bca-be20-27e85695bd2f</guid><dc:creator>boris bergman1</dc:creator><description>&lt;p&gt;Thank you for putting time in it. Bugs like this in the framework are really frustrating and time consuming. Hopefully Nordic will fix this soon. And indeed switching back to a previous framework is a headache too, for instance, when I set the SDK to 2.5.3 and make a new build configuration, the debugger does not do anything.&lt;/p&gt;
&lt;p&gt;(debug with SDK 2.5.3)&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;JLinkGDBServerCLExe: SEGGER J-Link GDB Server V7.96h Command Line Version
JLinkGDBServerCLExe: 
JLinkGDBServerCLExe: JLinkARM.dll V7.96h (DLL compiled May 15 2024 15:39:51)
JLinkGDBServerCLExe: 
JLinkGDBServerCLExe: -----GDB Server start settings-----
JLinkGDBServerCLExe: GDBInit file:                  none
JLinkGDBServerCLExe: GDB Server Listening port:     43081
JLinkGDBServerCLExe: SWO raw output listening port: 2332
JLinkGDBServerCLExe: Terminal I/O port:             2333
JLinkGDBServerCLExe: Accept remote connection:      yes
JLinkGDBServerCLExe: Generate logfile:              off
JLinkGDBServerCLExe: Verify download:               off
JLinkGDBServerCLExe: Init regs on start:            off
JLinkGDBServerCLExe: Silent mode:                   on
JLinkGDBServerCLExe: Single run mode:               on
JLinkGDBServerCLExe: Target connection timeout:     0 ms
JLinkGDBServerCLExe: ------J-Link related settings------
JLinkGDBServerCLExe: J-Link Host interface:         USB
JLinkGDBServerCLExe: J-Link script:                 none
JLinkGDBServerCLExe: J-Link settings file:          none
JLinkGDBServerCLExe: ------Target related settings------
JLinkGDBServerCLExe: Target device:                 nRF52840_xxAA
JLinkGDBServerCLExe: Target device parameters:      none
JLinkGDBServerCLExe: Target interface:              SWD
JLinkGDBServerCLExe: Target interface speed:        12000kHz
JLinkGDBServerCLExe: Target endian:                 little
JLinkGDBServerCLExe: 
=thread-group-added,id=&amp;quot;i1&amp;quot;
=cmd-param-changed,param=&amp;quot;pagination&amp;quot;,value=&amp;quot;off&amp;quot;
0x00003958 in ?? ()&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;(debug with SDK 2.6.1)&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;JLinkGDBServerCLExe: SEGGER J-Link GDB Server V7.96h Command Line Version
JLinkGDBServerCLExe: 
JLinkGDBServerCLExe: JLinkARM.dll V7.96h (DLL compiled May 15 2024 15:39:51)
JLinkGDBServerCLExe: 
JLinkGDBServerCLExe: -----GDB Server start settings-----
JLinkGDBServerCLExe: GDBInit file:                  none
JLinkGDBServerCLExe: GDB Server Listening port:     33091
JLinkGDBServerCLExe: SWO raw output listening port: 2332
JLinkGDBServerCLExe: Terminal I/O port:             2333
JLinkGDBServerCLExe: Accept remote connection:      yes
JLinkGDBServerCLExe: Generate logfile:              off
JLinkGDBServerCLExe: Verify download:               off
JLinkGDBServerCLExe: Init regs on start:            off
JLinkGDBServerCLExe: Silent mode:                   on
JLinkGDBServerCLExe: Single run mode:               on
JLinkGDBServerCLExe: Target connection timeout:     0 ms
JLinkGDBServerCLExe: ------J-Link related settings------
JLinkGDBServerCLExe: J-Link Host interface:         USB
JLinkGDBServerCLExe: J-Link script:                 none
JLinkGDBServerCLExe: J-Link settings file:          none
JLinkGDBServerCLExe: ------Target related settings------
JLinkGDBServerCLExe: Target device:                 nRF52840_xxAA
JLinkGDBServerCLExe: Target device parameters:      none
JLinkGDBServerCLExe: Target interface:              SWD
JLinkGDBServerCLExe: Target interface speed:        12000kHz
JLinkGDBServerCLExe: Target endian:                 little
JLinkGDBServerCLExe: 
=thread-group-added,id=&amp;quot;i1&amp;quot;
=cmd-param-changed,param=&amp;quot;pagination&amp;quot;,value=&amp;quot;off&amp;quot;
z_arm_reset () at /home/bergm006/ncs/v2.6.1/zephyr/arch/arm/core/cortex_m/reset.S:73
73	    movs.n r0, #0
[New Remote target]
[New Thread 536872392]
[New Thread 536871944]
[New Thread 536872776]
[New Thread 536872152]
[New Thread 536872568]
[Switching to Thread 536872568]

Thread 7 hit Breakpoint 1, main () at /home/bergm006/nrf-projects/lsm6dsl/src/main.c:99
99	{&lt;/pre&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Running the LSM6DLS (IMU) zephyr example with nrf52840 based Xiao BLE Sense</title><link>https://devzone.nordicsemi.com/thread/484873?ContentTypeID=1</link><pubDate>Sun, 19 May 2024 02:48:51 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:9da60d61-a975-4542-af41-f0085720a708</guid><dc:creator>leroyle</dc:creator><description>&lt;p&gt;Great to hear you have progress.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Running the LSM6DLS (IMU) zephyr example with nrf52840 based Xiao BLE Sense</title><link>https://devzone.nordicsemi.com/thread/484872?ContentTypeID=1</link><pubDate>Sat, 18 May 2024 22:16:27 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:c857aab7-e314-4100-8501-c85c9d419052</guid><dc:creator>Rishik</dc:creator><description>&lt;p&gt;Thank&amp;nbsp;&lt;a href="https://devzone.nordicsemi.com/members/leroyle"&gt;leroyle&lt;/a&gt;&amp;nbsp;for the hint!&lt;/p&gt;
&lt;p&gt;I just tried the following code on these ncs versions:&lt;/p&gt;
&lt;table&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td style="text-align:center;"&gt;&lt;strong&gt;SDK&lt;/strong&gt;&lt;/td&gt;
&lt;td style="text-align:center;"&gt;&lt;strong&gt;Toolchain&lt;/strong&gt;&lt;/td&gt;
&lt;td style="text-align:center;"&gt;&lt;strong&gt;LSM6DSL Works?&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="text-align:center;"&gt;2.5.0&lt;/td&gt;
&lt;td style="text-align:center;"&gt;2.5.0&lt;/td&gt;
&lt;td style="text-align:center;"&gt;YES&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="text-align:center;"&gt;2.5.3&lt;/td&gt;
&lt;td style="text-align:center;"&gt;2.5.3&lt;/td&gt;
&lt;td style="text-align:center;"&gt;YES&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="text-align:center;"&gt;2.5.3&lt;/td&gt;
&lt;td style="text-align:center;"&gt;2.6.1&lt;/td&gt;
&lt;td style="text-align:center;"&gt;YES&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="text-align:center;"&gt;2.6.0&lt;/td&gt;
&lt;td style="text-align:center;"&gt;2.6.0&lt;/td&gt;
&lt;td style="text-align:center;"&gt;NO&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="text-align:center;"&gt;2.6.1&lt;/td&gt;
&lt;td style="text-align:center;"&gt;2.6.1&lt;/td&gt;
&lt;td style="text-align:center;"&gt;NO&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;&amp;nbsp;&lt;strong&gt;main.c:&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="c_cpp"&gt;#include &amp;lt;zephyr/kernel.h&amp;gt;
#include &amp;lt;zephyr/device.h&amp;gt;
#include &amp;lt;zephyr/drivers/sensor.h&amp;gt;
#include &amp;lt;zephyr/drivers/gpio.h&amp;gt;
#include &amp;lt;zephyr/sys/util.h&amp;gt;
#include &amp;lt;stdio.h&amp;gt;

#define LEDR_NODE DT_ALIAS(led0)
#define LEDG_NODE DT_ALIAS(led1)
#define LEDB_NODE DT_ALIAS(led2)

static const struct gpio_dt_spec statLeds[3] = {
	GPIO_DT_SPEC_GET(LEDR_NODE, gpios),
	GPIO_DT_SPEC_GET(LEDG_NODE, gpios),
	GPIO_DT_SPEC_GET(LEDB_NODE, gpios)
};

static int print_samples;
static struct sensor_value accel_x_out, accel_y_out, accel_z_out;
static struct sensor_value gyro_x_out, gyro_y_out, gyro_z_out;


static inline float out_ev(struct sensor_value *val)
{
	return (val-&amp;gt;val1 + (float)val-&amp;gt;val2 / 1000000);
}

static void setStatLed(int red, int green, int blue) {
	gpio_pin_set_dt(&amp;amp;statLeds[0], red);
	gpio_pin_set_dt(&amp;amp;statLeds[1], green);
	gpio_pin_set_dt(&amp;amp;statLeds[2], blue);
	return;
}

#ifdef CONFIG_LSM6DSL_TRIGGER
static void lsm6dsl_trigger_handler(const struct device *dev, struct sensor_trigger *trig)
{
	static struct sensor_value accel_x, accel_y, accel_z;
	static struct sensor_value gyro_x, gyro_y, gyro_z;

	sensor_sample_fetch_chan(dev, SENSOR_CHAN_ACCEL_XYZ);
	sensor_channel_get(dev, SENSOR_CHAN_ACCEL_X, &amp;amp;accel_x);
	sensor_channel_get(dev, SENSOR_CHAN_ACCEL_Y, &amp;amp;accel_y);
	sensor_channel_get(dev, SENSOR_CHAN_ACCEL_Z, &amp;amp;accel_z);

	/* lsm6dsl gyro */
	sensor_sample_fetch_chan(dev, SENSOR_CHAN_GYRO_XYZ);
	sensor_channel_get(dev, SENSOR_CHAN_GYRO_X, &amp;amp;gyro_x);
	sensor_channel_get(dev, SENSOR_CHAN_GYRO_Y, &amp;amp;gyro_y);
	sensor_channel_get(dev, SENSOR_CHAN_GYRO_Z, &amp;amp;gyro_z);

	if (print_samples) {
		print_samples = 0;
		accel_x_out = accel_x;
		accel_y_out = accel_y;
		accel_z_out = accel_z;
		gyro_x_out = gyro_x;
		gyro_y_out = gyro_y;
		gyro_z_out = gyro_z;
	}
}
#endif

int main(void)
{
	char out_str[64];
	struct sensor_value odr_attr;
	const struct device *lsm6dsl_dev = DEVICE_DT_GET_ONE(st_lsm6dsl);

	for (unsigned int i = 0; i &amp;lt; 3; i++) {
		if (!gpio_is_ready_dt(&amp;amp;statLeds[i])) {
			printk(&amp;quot;led %d: not ready\n&amp;quot;, i);
			return 0;
		}
		if (gpio_pin_configure_dt(&amp;amp;statLeds[i], GPIO_OUTPUT_ACTIVE) &amp;lt; 0) {
			printk(&amp;quot;led %d: config fail\n&amp;quot;, i);
			return 0;
		}
	}
	setStatLed(1, 0, 0);
	k_msleep(100);

	if (lsm6dsl_dev == NULL) {
		printk(&amp;quot;Could not get LSM6DSL device\n&amp;quot;);
		return 0;
	}
	if (!device_is_ready(lsm6dsl_dev)) {
		printk(&amp;quot;LSM6DSL: not ready\n&amp;quot;);
		return 0;
	}

	/* set accel/gyro sampling frequency to 104 Hz */
	odr_attr.val1 = 104;
	odr_attr.val2 = 0;
	if (sensor_attr_set(lsm6dsl_dev, SENSOR_CHAN_ACCEL_XYZ,
			    SENSOR_ATTR_SAMPLING_FREQUENCY, &amp;amp;odr_attr) &amp;lt; 0) {
		printk(&amp;quot;Cannot set sampling frequency for accelerometer.\n&amp;quot;);
		return 0;
	}
	if (sensor_attr_set(lsm6dsl_dev, SENSOR_CHAN_GYRO_XYZ,
			    SENSOR_ATTR_SAMPLING_FREQUENCY, &amp;amp;odr_attr) &amp;lt; 0) {
		printk(&amp;quot;Cannot set sampling frequency for gyro.\n&amp;quot;);
		return 0;
	}

#ifdef CONFIG_LSM6DSL_TRIGGER
	struct sensor_trigger trig;

	trig.type = SENSOR_TRIG_DATA_READY;
	trig.chan = SENSOR_CHAN_ACCEL_XYZ;

	if (sensor_trigger_set(lsm6dsl_dev, &amp;amp;trig, lsm6dsl_trigger_handler) != 0) {
		printk(&amp;quot;Could not set sensor type and channel\n&amp;quot;);
		return 0;
	}
#endif

	if (sensor_sample_fetch(lsm6dsl_dev) &amp;lt; 0) {
		printk(&amp;quot;Sensor sample update error\n&amp;quot;);
		return 0;
	}
	setStatLed(0, 1, 0);
	k_msleep(100);

	while (1) {
		setStatLed(0, 0, 1);
		/* lsm6dsl accel */
		sprintf(out_str, &amp;quot;accel x:%f ms/2 y:%f ms/2 z:%f ms/2&amp;quot;,
							  out_ev(&amp;amp;accel_x_out),
							  out_ev(&amp;amp;accel_y_out),
							  out_ev(&amp;amp;accel_z_out));
		printk(&amp;quot;%s\n&amp;quot;, out_str);

		/* lsm6dsl gyro */
		sprintf(out_str, &amp;quot;gyro x:%f dps y:%f dps z:%f dps&amp;quot;,
							   out_ev(&amp;amp;gyro_x_out),
							   out_ev(&amp;amp;gyro_y_out),
							   out_ev(&amp;amp;gyro_z_out));
		printk(&amp;quot;%s\n\n&amp;quot;, out_str);

		print_samples = 1;
		setStatLed(0, 0, 0);
		k_msleep(50);
	}

	return 0;
}
&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;Note: the k_msleep(100) is not required, its just to show the status on builtin-led.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;prj.conf:&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;CONFIG_PRINTK=y
CONFIG_CBPRINTF_FP_SUPPORT=y
CONFIG_UART_CONSOLE=y
CONFIG_SENSOR=y

CONFIG_LSM6DSL=y
CONFIG_LSM6DSL_ENABLE_TEMP=n
CONFIG_LSM6DSL_TRIGGER_GLOBAL_THREAD=y
&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;I also tried adding &lt;strong&gt;CONFIG_PINCTRL=y&lt;/strong&gt; to nc&lt;em&gt;s/v2.6.1/zephyr/boards/arm/xiao_ble/&lt;/em&gt;&lt;em&gt;xiao_ble_defconfig&lt;/em&gt; in SDK 2.6.1 but still does not work, and has the same issue.&lt;/p&gt;
&lt;p&gt;This clearly means something has changed and unset in &lt;a href="https://github.com/nrfconnect/sdk-nrf/tree/v2.6-branch" rel="noopener noreferrer" target="_blank"&gt;2.6.x&lt;/a&gt; which is not directly related to xiao_ble as per &lt;a href="https://github.com/nrfconnect/sdk-nrf/compare/v2.5.3...v2.6.0" rel="noopener noreferrer" target="_blank"&gt;quick diff&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Time to investigate the ncs SDK now!&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;a href="https://devzone.nordicsemi.com/members/mentarus"&gt;mentarus&lt;/a&gt;&amp;nbsp;&lt;a href="https://devzone.nordicsemi.com/members/boris-bergman1"&gt;boris bergman1&lt;/a&gt;&amp;nbsp;&lt;a href="https://devzone.nordicsemi.com/members/ammaro"&gt;Ammaro&lt;/a&gt;&amp;nbsp;This should be somewhat helpful.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Running the LSM6DLS (IMU) zephyr example with nrf52840 based Xiao BLE Sense</title><link>https://devzone.nordicsemi.com/thread/484866?ContentTypeID=1</link><pubDate>Sat, 18 May 2024 13:16:45 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:147da979-522e-4965-833e-c11726ded61c</guid><dc:creator>leroyle</dc:creator><description>&lt;p&gt;Has anyone else tried to move back to nRF Connect SDK V2.5.0? You all seem to be using 2.6.1?&lt;/p&gt;
&lt;p&gt;As mentioned above, it seems to work for me using SDK 2.5.0. I did finally install SDK V2.6.1 and do indeed see the reported&amp;nbsp; &amp;quot;not ready&amp;quot; message when building with 2.6.1.&lt;/p&gt;
&lt;p&gt;2.5.0 works,&amp;nbsp; 2.6.1 does not.&lt;/p&gt;
&lt;p&gt;I do see a difference in one of the board files,&amp;nbsp;xiao_ble_defconfig.&amp;nbsp; &lt;strong&gt;&amp;quot;CONFIG_PINCTRL=y&amp;quot;&lt;/strong&gt; was &lt;strong&gt;removed&lt;/strong&gt; in the 2.6.1 version.&lt;/p&gt;
&lt;p&gt;At this point my build environment workspace is giving me trouble ( lost ability to switch SDK versions within VSCode nRFConnect extension) so I cannot see if adding it back into the 2.6.1 version will solve the issue. I&amp;#39;m sure there are other changes between the two versions as well, I only compared the sample and the board files.&lt;/p&gt;
&lt;p&gt;Again, I would give SDK V2.5.0 a shot, see what happens.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Running the LSM6DLS (IMU) zephyr example with nrf52840 based Xiao BLE Sense</title><link>https://devzone.nordicsemi.com/thread/484851?ContentTypeID=1</link><pubDate>Fri, 17 May 2024 22:00:09 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:55d80b60-f821-4ae9-b2ec-c8df1c3f8a72</guid><dc:creator>boris bergman1</dc:creator><description>&lt;p&gt;Yes except the chips are unreachable underneath their metal casing, and no test points are exposed (tough could use other exposed pins instead).&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Running the LSM6DLS (IMU) zephyr example with nrf52840 based Xiao BLE Sense</title><link>https://devzone.nordicsemi.com/thread/484841?ContentTypeID=1</link><pubDate>Fri, 17 May 2024 21:01:30 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:02052f3c-30dc-4d76-a110-5618db56c7a1</guid><dc:creator>hmolesworth</dc:creator><description>&lt;p&gt;&amp;nbsp;.. ah, did you mean the Arduino code works on the nRF52? If so they must have a different startup sequence which avoids the clock stretch issue&lt;/p&gt;
&lt;p&gt;Edit: You can easily prove this one way or another; use a &amp;#39;scope to capture the very first TWIM transaction and look at the first clock pulse - is it short? Compare with the same first clock pulse with Arduino - is the latter not short?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Running the LSM6DLS (IMU) zephyr example with nrf52840 based Xiao BLE Sense</title><link>https://devzone.nordicsemi.com/thread/484838?ContentTypeID=1</link><pubDate>Fri, 17 May 2024 20:39:25 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:f630444b-05b2-45f3-9dca-b66d82e7851d</guid><dc:creator>boris bergman1</dc:creator><description>&lt;p&gt;If the silicon causes the issue then why it does work with Arduino&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Running the LSM6DLS (IMU) zephyr example with nrf52840 based Xiao BLE Sense</title><link>https://devzone.nordicsemi.com/thread/484832?ContentTypeID=1</link><pubDate>Fri, 17 May 2024 15:33:20 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:012f8116-71ee-49ab-bf9d-6b149587bd4b</guid><dc:creator>hmolesworth</dc:creator><description>&lt;p&gt;&amp;quot;&lt;span&gt;&lt;em&gt;I suppose it could be a non initialized variable somewhere, or a strange timing issue&lt;/em&gt;&lt;/span&gt;&amp;quot;. On another post we spent a lot of time discovering an errata item on the nRF52832 not shown as an errata on other devices causes the i2c transaction to fail in the manner described here. See&amp;nbsp;&lt;a href="https://devzone.nordicsemi.com/f/nordic-q-a/111006/nrf52dk_nrf52832-i2c-clock-pulse-issue"&gt;nrf52832-i2c-clock-pulse-issue&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Running the LSM6DLS (IMU) zephyr example with nrf52840 based Xiao BLE Sense</title><link>https://devzone.nordicsemi.com/thread/484804?ContentTypeID=1</link><pubDate>Fri, 17 May 2024 06:12:15 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:36c4e0f5-198f-41cb-930c-cae2821b0615</guid><dc:creator>Hieu</dc:creator><description>[quote userid="132713" url="~/f/nordic-q-a/109732/running-the-lsm6dls-imu-zephyr-example-with-nrf52840-based-xiao-ble-sense/484768"]Ughh, my message to you has been marked as spam by the mods, &lt;a href="https://devzone.nordicsemi.com/members/vthieu" data-contentid="d29c682e1c9d47529ddaf05d83c968d9" data-contenttypeid="e9ed411860ed4f2ba0265705b8793d05" class="ui-contentpeek internal-link view-user-profile"&gt;Hieu&lt;/a&gt; can you please help at least with un-marking the message as spam, thank you![/quote]
&lt;p&gt;I tried approving the message, but your message still doesn&amp;#39;t appear, and higher-level admins are not available right now. I will leave them a message to check it. Sorry for the inconvenience.&lt;/p&gt;
&lt;p&gt;You could also try sending the&amp;nbsp;same message again.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Running the LSM6DLS (IMU) zephyr example with nrf52840 based Xiao BLE Sense</title><link>https://devzone.nordicsemi.com/thread/484784?ContentTypeID=1</link><pubDate>Thu, 16 May 2024 20:51:47 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:4e992cd6-9252-4a47-9dd0-cf76baa302dc</guid><dc:creator>leroyle</dc:creator><description>&lt;p&gt;What I&amp;#39;ve been successful with is the basic sample, unchanged, from the zephyr tree,&amp;nbsp;&lt;/p&gt;
&lt;p&gt;ncs/v2.5.0/zephyr/samples/sensor/lsm6dsl/&lt;/p&gt;
&lt;p&gt;It&amp;#39;s a bit different than that latest uploaded source &amp;quot;here&amp;quot;, including the build zephyr.dts&lt;/p&gt;
&lt;p&gt;I did not try your version that includes&amp;nbsp;easydma-maxcnt-bits in the i2c defines, among other differences in the dts files.&lt;/p&gt;
&lt;p&gt;My hex built as described in my long post above:&lt;/p&gt;
&lt;p&gt;&lt;a href="https://devzone.nordicsemi.com/cfs-file/__key/communityserver-discussions-components-files/4/leroy_5F00_lsm6dsl_5F00_zephyr_5F00_hex.zip"&gt;devzone.nordicsemi.com/.../leroy_5F00_lsm6dsl_5F00_zephyr_5F00_hex.zip&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Running the LSM6DLS (IMU) zephyr example with nrf52840 based Xiao BLE Sense</title><link>https://devzone.nordicsemi.com/thread/484776?ContentTypeID=1</link><pubDate>Thu, 16 May 2024 18:57:27 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:a7183770-fffc-4035-a2b0-1c34b80f5e56</guid><dc:creator>boris bergman1</dc:creator><description>&lt;p&gt;This is the non-working version.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>