<?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>BLE CSCS cadence value problem</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/37312/ble-cscs-cadence-value-problem</link><description>HI I am working with BLE CSCS example, and I found some problem during read cadence value. Simulator is changing values and I am observing situation: if cadence value is less than 50rpm occasionally shows 0rpm. I think that it occured when cumulative_crank_revs</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Thu, 16 Aug 2018 08:21:33 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/37312/ble-cscs-cadence-value-problem" /><item><title>RE: BLE CSCS cadence value problem</title><link>https://devzone.nordicsemi.com/thread/144443?ContentTypeID=1</link><pubDate>Thu, 16 Aug 2018 08:21:33 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:7104f074-6c16-41c8-98d4-edf495d731ad</guid><dc:creator>Hakon</dc:creator><description>&lt;p&gt;&lt;a href="https://www.bluetooth.com/specifications/gatt/viewer?attributeXmlFile=org.bluetooth.service.cycling_speed_and_cadence.xml"&gt;https://www.bluetooth.com/specifications/gatt/viewer?attributeXmlFile=org.bluetooth.service.cycling_speed_and_cadence.xml&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;It looks to me like it&amp;#39;s fine.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: BLE CSCS cadence value problem</title><link>https://devzone.nordicsemi.com/thread/144354?ContentTypeID=1</link><pubDate>Wed, 15 Aug 2018 14:37:19 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:f23a981c-4ce3-490f-89ed-0093da6ade93</guid><dc:creator>cavalihno</dc:creator><description>&lt;p&gt;What do You think about this solution (&lt;span class="short_text" id="result_box" lang="en"&gt;&lt;span&gt;&lt;span class=""&gt;which&lt;/span&gt; works correctly&lt;/span&gt;&lt;/span&gt; for everyone third party app&amp;#39;s):&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="c_cpp"&gt;    // Calculate simulated cadence values.
    p_measurement-&amp;gt;is_crank_rev_data_present = true;
    degrees_per_sec = RPM_TO_DEGREES_PER_SEC * RPM;

    crank_rev_degrees     += degrees_per_sec;
    cumulative_crank_revs += crank_rev_degrees / DEGREES_PER_REVOLUTION;
    crank_rev_degrees     %= DEGREES_PER_REVOLUTION;

    if(cumulative_crank_revs &amp;gt; last_cumulative_crank_revs){
      p_measurement-&amp;gt;cumulative_crank_revs = cumulative_crank_revs;
      p_measurement-&amp;gt;last_crank_event_time = event_time + (1024 * (degrees_per_sec - crank_rev_degrees) / degrees_per_sec);
      last_cumulative_crank_revs = p_measurement-&amp;gt;cumulative_crank_revs;
      last_last_crank_event_time = p_measurement-&amp;gt;last_crank_event_time;
    }else{
      p_measurement-&amp;gt;cumulative_crank_revs = last_cumulative_crank_revs;
      p_measurement-&amp;gt;last_crank_event_time = last_last_crank_event_time;
    }

    event_time += event_time_inc;&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;Is it &lt;span class="short_text" id="result_box" lang="en"&gt;&lt;span&gt;correct in terms of Gatt specifications&lt;/span&gt;&lt;/span&gt; ?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: BLE CSCS cadence value problem</title><link>https://devzone.nordicsemi.com/thread/144321?ContentTypeID=1</link><pubDate>Wed, 15 Aug 2018 12:14:06 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:615cfbaa-30ea-491b-bd82-f1971aa5a72f</guid><dc:creator>Hakon</dc:creator><description>&lt;p&gt;I tried it, and I got the same result as you. It happens because last_crank_event_time isn&amp;#39;t updated every time the measurement is sent to the phone application. This happens if the RPM is below 60.&lt;/p&gt;
&lt;p&gt;If you want to know why, read this file&lt;/p&gt;
&lt;p&gt;&lt;a href="https://github.com/NordicSemiconductor/Android-nRF-Toolbox/blob/master/app/src/main/java/no/nordicsemi/android/nrftoolbox/csc/CSCService.java"&gt;https://github.com/NordicSemiconductor/Android-nRF-Toolbox/blob/master/app/src/main/java/no/nordicsemi/android/nrftoolbox/csc/CSCService.java&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;The crank measurement is handled in &lt;span class="pl-en"&gt;onCrankMeasurementReceived&lt;/span&gt;(). As for the Wahoo application, I assume the behavior is similar to nRF toolbox and that&amp;#39;s the reason it reads 0 most of the time.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: BLE CSCS cadence value problem</title><link>https://devzone.nordicsemi.com/thread/144001?ContentTypeID=1</link><pubDate>Mon, 13 Aug 2018 14:39:13 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:c1acb427-4199-4473-9dce-b529d0ca877d</guid><dc:creator>cavalihno</dc:creator><description>&lt;p&gt;Still the same effect.stock example from SDK15, s132_nrf52_6.0.0_softdevice&lt;/p&gt;
&lt;p&gt;Please try wit Wahoo ultility&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: BLE CSCS cadence value problem</title><link>https://devzone.nordicsemi.com/thread/143997?ContentTypeID=1</link><pubDate>Mon, 13 Aug 2018 14:23:42 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:e075b34d-12cf-4002-b153-f48f05d34486</guid><dc:creator>cavalihno</dc:creator><description>&lt;p&gt;Try to set other values from range 0 - 50rpm;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: BLE CSCS cadence value problem</title><link>https://devzone.nordicsemi.com/thread/143992?ContentTypeID=1</link><pubDate>Mon, 13 Aug 2018 14:00:04 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:3b3e635a-7c00-4382-900c-7e42440d30f6</guid><dc:creator>Hakon</dc:creator><description>&lt;p&gt;Hmm, that&amp;#39;s strange. I installed the wahoo fitness app and tried the example and it worked for me. It reads 40 rpm all the time. Perhaps you can try reinstalling the SDK, and make sure you download it from this location &lt;a href="http://developer.nordicsemi.com/nRF51_SDK/nRF5_SDK_v12.x.x/"&gt;http://developer.nordicsemi.com/nRF51_SDK/nRF5_SDK_v12.x.x/&lt;/a&gt;. Then you can compile the example unmodified and see if it works, and if it does you can then try to modify it and see if it still works.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: BLE CSCS cadence value problem</title><link>https://devzone.nordicsemi.com/thread/143981?ContentTypeID=1</link><pubDate>Mon, 13 Aug 2018 13:28:13 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:69195452-783f-42f1-9ec4-baf3848a1446</guid><dc:creator>cavalihno</dc:creator><description>&lt;p&gt;I know, but what with compatibily with t&lt;span class="st"&gt;&lt;em&gt;hird&lt;/em&gt;-&lt;em&gt;party apps&lt;/em&gt;&lt;/span&gt; and BLE GATT specification ? Please look for thisscreen recorder from t&lt;span class="st"&gt;&lt;em&gt;hird&lt;/em&gt;-&lt;em&gt;party apps&lt;/em&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span class="st"&gt;&lt;em&gt;&lt;a href="https://youtu.be/rlbx2Nth0RU"&gt;https://youtu.be/rlbx2Nth0RU&lt;/a&gt;&lt;/em&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span class="st"&gt;&lt;em&gt;&lt;a href="https://youtu.be/ml3K6rgFIgA"&gt;https://youtu.be/ml3K6rgFIgA&lt;/a&gt;&lt;/em&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: BLE CSCS cadence value problem</title><link>https://devzone.nordicsemi.com/thread/143967?ContentTypeID=1</link><pubDate>Mon, 13 Aug 2018 12:54:00 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:bbd8e226-f199-410f-9b9e-34e589977547</guid><dc:creator>Hakon</dc:creator><description>&lt;p&gt;I suggest you use the nRF toolbox application with the cscs example. If you need your own functionality, you can implement it yourself by using the source code for the nRF toolbox found here,&lt;/p&gt;
&lt;p&gt;&lt;a href="https://github.com/NordicSemiconductor/Android-nRF-Toolbox"&gt;github.com/.../Android-nRF-Toolbox&lt;/a&gt; &lt;br /&gt; &lt;a href="https://github.com/NordicSemiconductor/IOS-nRF-Toolbox"&gt;github.com/.../IOS-nRF-Toolbox&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: BLE CSCS cadence value problem</title><link>https://devzone.nordicsemi.com/thread/143959?ContentTypeID=1</link><pubDate>Mon, 13 Aug 2018 12:43:32 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:e9b409d9-0a0f-4853-a76d-edc3e5879b95</guid><dc:creator>cavalihno</dc:creator><description>&lt;p&gt;I look like everything is fine with nRf Toolbox. But when I am using &lt;span class="st"&gt;&lt;em&gt;third&lt;/em&gt;-&lt;em&gt;party app like&lt;/em&gt; &amp;quot;Strava&amp;quot;, &amp;quot;Wahoo fitness&amp;quot; &amp;quot;Motosumo&amp;quot; this bug occured. &lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: BLE CSCS cadence value problem</title><link>https://devzone.nordicsemi.com/thread/143939?ContentTypeID=1</link><pubDate>Mon, 13 Aug 2018 12:12:37 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:863a2e38-0fce-4eef-9ea1-0a3a58f8782d</guid><dc:creator>Hakon</dc:creator><description>&lt;p&gt;It looks like you have a different application than the one I&amp;#39;m using. Try downloading the &amp;quot;nRF Toolbox for BLE&amp;quot; application on your phone, and see if the problem persists.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: BLE CSCS cadence value problem</title><link>https://devzone.nordicsemi.com/thread/143934?ContentTypeID=1</link><pubDate>Mon, 13 Aug 2018 12:00:50 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:336912e3-7cb8-45c9-b303-b8193b5596eb</guid><dc:creator>cavalihno</dc:creator><description>&lt;p&gt;Now I am using stock examle from SDK15. Just hardoce &lt;em&gt;crank revolution = 40; &lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&amp;nbsp;// Calculate simulated cadence values.&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; p_measurement-&amp;gt;is_crank_rev_data_present = true;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; degrees_per_sec = RPM_TO_DEGREES_PER_SEC * 23; //sensorsim_measure(&amp;amp;m_crank_rpm_sim_state, &amp;amp;m_crank_rpm_sim_cfg);&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; crank_rev_degrees&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; += degrees_per_sec * SPEED_AND_CADENCE_MEAS_INTERVAL / 1000;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; cumulative_crank_revs += crank_rev_degrees / DEGREES_PER_REVOLUTION;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; crank_rev_degrees&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; %= DEGREES_PER_REVOLUTION;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; p_measurement-&amp;gt;cumulative_crank_revs = cumulative_crank_revs;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; p_measurement-&amp;gt;last_crank_event_time =&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; event_time + (event_time_inc * (degrees_per_sec - crank_rev_degrees) / degrees_per_sec);&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; event_time += event_time_inc;&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;Plese look for screen recorder from Android app:&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="https://youtu.be/YAJQy5uj--E"&gt;https://youtu.be/YAJQy5uj--E&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: BLE CSCS cadence value problem</title><link>https://devzone.nordicsemi.com/thread/143752?ContentTypeID=1</link><pubDate>Fri, 10 Aug 2018 14:34:13 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:4b1d1aea-3ba6-476d-8fa9-739c95e54e22</guid><dc:creator>Hakon</dc:creator><description>&lt;p&gt;My code (using SDK version 12.1.0) looks like this;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;static void csc_sim_measurement(ble_cscs_meas_t * p_measurement)&lt;br /&gt;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; static uint16_t cumulative_crank_revs = 0;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; static uint16_t event_time&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = 0;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; static uint16_t wheel_revolution_mm&amp;nbsp;&amp;nbsp; = 0;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; static uint16_t crank_rev_degrees&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = 0;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; uint16_t mm_per_sec;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; uint16_t degrees_per_sec;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; uint16_t event_time_inc;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Per specification event time is in 1/1024th&amp;#39;s of a second.&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; event_time_inc = (1024 * SPEED_AND_CADENCE_MEAS_INTERVAL) / 1000;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Calculate simulated wheel revolution values.&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; p_measurement-&amp;gt;is_wheel_rev_data_present = true;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; mm_per_sec = KPH_TO_MM_PER_SEC * sensorsim_measure(&amp;amp;m_speed_kph_sim_state,&lt;br /&gt;&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;&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;&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;amp;m_speed_kph_sim_cfg);&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; wheel_revolution_mm&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; += mm_per_sec * SPEED_AND_CADENCE_MEAS_INTERVAL / 1000;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; m_cumulative_wheel_revs += wheel_revolution_mm / WHEEL_CIRCUMFERENCE_MM;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; wheel_revolution_mm&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; %= WHEEL_CIRCUMFERENCE_MM;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; p_measurement-&amp;gt;cumulative_wheel_revs = m_cumulative_wheel_revs;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; p_measurement-&amp;gt;last_wheel_event_time =&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; event_time + (event_time_inc * (mm_per_sec - wheel_revolution_mm) / mm_per_sec);&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Calculate simulated cadence values.&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; p_measurement-&amp;gt;is_crank_rev_data_present = true;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; degrees_per_sec = RPM_TO_DEGREES_PER_SEC * 40;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; crank_rev_degrees&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; += degrees_per_sec * SPEED_AND_CADENCE_MEAS_INTERVAL / 1000;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; cumulative_crank_revs += crank_rev_degrees / DEGREES_PER_REVOLUTION;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; crank_rev_degrees&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; %= DEGREES_PER_REVOLUTION;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; p_measurement-&amp;gt;cumulative_crank_revs = cumulative_crank_revs;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; p_measurement-&amp;gt;last_crank_event_time =&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; event_time + (event_time_inc * (degrees_per_sec - crank_rev_degrees) / degrees_per_sec);&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; event_time += event_time_inc;&lt;br /&gt;}&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Perhaps you could try replace your code with the code above.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: BLE CSCS cadence value problem</title><link>https://devzone.nordicsemi.com/thread/143748?ContentTypeID=1</link><pubDate>Fri, 10 Aug 2018 13:59:30 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:3d0959cc-769e-416a-9d5a-1e4d0bf6eaa6</guid><dc:creator>cavalihno</dc:creator><description>&lt;p&gt;#define RPM_TO_DEGREES_PER_SEC 6&lt;/p&gt;
&lt;p&gt;#define BICYCLE_POWER_MEAS_INTERVAL 1000&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;static void cp_sim_measurement(ble_cp_meas_t * p_measurement) &amp;nbsp;&lt;br /&gt;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; static uint16_t cumulative_crank_revs = 0;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; static uint16_t event_time&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = 0; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; static uint16_t crank_rev_degrees&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = 0;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; uint16_t degrees_per_sec;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; uint16_t event_time_inc;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Per specification event time is in 1/1024th&amp;#39;s of a second.&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; event_time_inc = (1024 * BICYCLE_POWER_MEAS_INTERVAL) / 1000;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Calculate simulated cadence values.&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; p_measurement-&amp;gt;is_crank_rev_data_present = true;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; degrees_per_sec = RPM_TO_DEGREES_PER_SEC * 40;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; crank_rev_degrees&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; += degrees_per_sec * BICYCLE_POWER_MEAS_INTERVAL / 1000;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; cumulative_crank_revs += crank_rev_degrees&amp;nbsp; / DEGREES_PER_REVOLUTION ;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; crank_rev_degrees&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; %= DEGREES_PER_REVOLUTION;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; p_measurement-&amp;gt;cumulative_crank_revs = cumulative_crank_revs;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; p_measurement-&amp;gt;last_crank_event_time = &lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;event_time + (event_time_inc * (degrees_per_sec - crank_rev_degrees) / degrees_per_sec);&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; event_time += event_time_inc;&lt;br /&gt;}&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: BLE CSCS cadence value problem</title><link>https://devzone.nordicsemi.com/thread/143747?ContentTypeID=1</link><pubDate>Fri, 10 Aug 2018 13:52:25 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:7ddec25c-15d5-4e42-999c-8f1c49898862</guid><dc:creator>Hakon</dc:creator><description>&lt;p&gt;Can you provide the code so I can see what you have done?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: BLE CSCS cadence value problem</title><link>https://devzone.nordicsemi.com/thread/143745?ContentTypeID=1</link><pubDate>Fri, 10 Aug 2018 13:47:14 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:54aad409-c56d-4d42-a4b6-d96dd0e98d27</guid><dc:creator>cavalihno</dc:creator><description>&lt;p&gt;No, I only hardcode Crank Revolution value ex. 40rpm.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: BLE CSCS cadence value problem</title><link>https://devzone.nordicsemi.com/thread/143743?ContentTypeID=1</link><pubDate>Fri, 10 Aug 2018 13:43:18 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:97239312-92c0-4316-b864-4d22767eeb4c</guid><dc:creator>Hakon</dc:creator><description>&lt;p&gt;Have you done any modifications to the original example code?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: BLE CSCS cadence value problem</title><link>https://devzone.nordicsemi.com/thread/143698?ContentTypeID=1</link><pubDate>Fri, 10 Aug 2018 09:59:11 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:daffadae-c500-4f09-a962-d96dea842158</guid><dc:creator>cavalihno</dc:creator><description>&lt;p&gt;Yes, i am using ble_app_cscs. Also cadence value i mean &amp;quot;Crank Revolution&amp;quot;.&lt;br /&gt;&lt;br /&gt;May i try explain it:&lt;br /&gt;&lt;br /&gt;If measured Crank Revolution is less than 50rpm my monitor occasionaly shows 0rpm despite the sended value is still the same. I think that it is related with &lt;strong&gt;&lt;em&gt;cumulative_crank_revs&lt;/em&gt;&lt;/strong&gt; and &lt;strong&gt;&lt;em&gt;last_crank_event_time.&amp;nbsp;&lt;/em&gt;&lt;/strong&gt; &lt;/p&gt;
&lt;p&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: BLE CSCS cadence value problem</title><link>https://devzone.nordicsemi.com/thread/143688?ContentTypeID=1</link><pubDate>Fri, 10 Aug 2018 09:03:24 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:f47d433d-a90d-4d39-8496-f09eb41b6a35</guid><dc:creator>Hakon</dc:creator><description>&lt;p&gt;Ok, can you please specify the following?&lt;/p&gt;
&lt;p&gt;Is it the &amp;quot;ble_app_cscs&amp;quot; example&amp;nbsp; you are referring to?&lt;/p&gt;
&lt;p&gt;By &amp;quot;cadence value&amp;quot;, do you mean crank rev?&lt;/p&gt;
&lt;p&gt;What is &amp;quot;BICYCLE_POWER_MEAS_INTERVAL&amp;quot;?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: BLE CSCS cadence value problem</title><link>https://devzone.nordicsemi.com/thread/143621?ContentTypeID=1</link><pubDate>Thu, 09 Aug 2018 15:35:21 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:0a50cc23-32d5-48ed-b8db-b0014550d9d8</guid><dc:creator>cavalihno</dc:creator><description>&lt;p&gt;Hi, I am using SDK12.1.0.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: BLE CSCS cadence value problem</title><link>https://devzone.nordicsemi.com/thread/143543?ContentTypeID=1</link><pubDate>Thu, 09 Aug 2018 11:06:57 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:87e6d2d4-3838-433b-a2de-1f4f481fb21a</guid><dc:creator>Hakon</dc:creator><description>&lt;p&gt;Hey, which SDK version are you using?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>