<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[ECG Module code]]></title><description><![CDATA[<p dir="auto">Please help me understand your code for this module<br />
I got this module to work on a m5stack Fire but I would like an explanation of the library program, ECG.ino at:<br />
<a href="https://github.com/m5stack/M5-ProductExampleCodes/tree/master/Module/ECG" target="_blank" rel="noopener noreferrer nofollow ugc">https://github.com/m5stack/M5-ProductExampleCodes/tree/master/Module/ECG</a></p>
<p dir="auto">There are no comments in the code which makes it hard to follow the program.<br />
There is also no data dictionary for the following terms:<br />
measurements<br />
ECG_IDLE<br />
ECG_DATA_LENGTH<br />
ECG_DATA_H<br />
ECG_DATA_L<br />
ECG_END</p>
<p dir="auto">parameters:<br />
ECGdataFSM<br />
ECGWritePoint<br />
ECGReadPoint<br />
ECGData<br />
DataMAX<br />
DataMIN</p>
<p dir="auto">Difficult to understand constructs<br />
What does the following do?</p>
<p dir="auto">ECGdataFSM = ( data == 0xAA ) ? ECG_DATA_LENGTH : ECG_IDLE;<br />
DataMAX = ( ECGData &gt; DataMAX ) ? ECGData : DataMAX;<br />
DataMIN = ( ECGData &lt; DataMIN ) ? ECGData : DataMIN;</p>
<p dir="auto">The documentation for this product at <a href="https://docs.m5stack.com/#/en/module/ecg?id=related-link" target="_blank" rel="noopener noreferrer nofollow ugc">https://docs.m5stack.com/#/en/module/ecg?id=related-link</a><br />
states that the MPU STM32 in the module supports a heart rate statistics algorithm. What does this algorithm do? What parameters does it use?</p>
]]></description><link>https://community.m5stack.com/topic/2482/ecg-module-code</link><generator>RSS for Node</generator><lastBuildDate>Wed, 29 Apr 2026 06:47:51 GMT</lastBuildDate><atom:link href="https://community.m5stack.com/topic/2482.rss" rel="self" type="application/rss+xml"/><pubDate>Thu, 19 Nov 2020 02:54:21 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to ECG Module code on Thu, 26 Aug 2021 15:32:12 GMT]]></title><description><![CDATA[<p dir="auto">It is very shame that the product is not accompanied with any documentation.<br />
Where is the detailed schematic?<br />
Where is the description of the FW?<br />
Where is the description of RawDisplay SW?<br />
Where is description of the passthrough serial?<br />
Where is protocol description?</p>
]]></description><link>https://community.m5stack.com/post/14735</link><guid isPermaLink="true">https://community.m5stack.com/post/14735</guid><dc:creator><![CDATA[Kabron]]></dc:creator><pubDate>Thu, 26 Aug 2021 15:32:12 GMT</pubDate></item><item><title><![CDATA[Reply to ECG Module code on Wed, 25 Nov 2020 01:41:27 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/dsrc12" aria-label="Profile: dsrc12">@<bdi>dsrc12</bdi></a>: I have now got this to work and it works best if I discount the USB link to Fire. The code I had difficult understanding is based on a C++ Ternary Operator in C.  Returns either ECG_Data_LENGTH if data equals  0xAA  or ECG_IDLE if false. At least this is a start. Still need to decode the meaning of the parameters.</p>
]]></description><link>https://community.m5stack.com/post/10853</link><guid isPermaLink="true">https://community.m5stack.com/post/10853</guid><dc:creator><![CDATA[dsrc12]]></dc:creator><pubDate>Wed, 25 Nov 2020 01:41:27 GMT</pubDate></item></channel></rss>