<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>Power &amp; EnergyのトピックRe: How to test twrkm35z75m_meterlibph_test example project in TWRKM35z75M board?</title>
    <link>https://community.nxp.com/t5/Power-Energy/How-to-test-twrkm35z75m-meterlibph-test-example-project-in/m-p/1745811#M31</link>
    <description>&lt;P&gt;Hi,&lt;/P&gt;
&lt;P&gt;Thank you, I will download SDK and have a test soon.&lt;/P&gt;
&lt;P&gt;BR&lt;/P&gt;
&lt;P&gt;XiangJun Rong&lt;/P&gt;</description>
    <pubDate>Wed, 25 Oct 2023 09:26:08 GMT</pubDate>
    <dc:creator>xiangjun_rong</dc:creator>
    <dc:date>2023-10-25T09:26:08Z</dc:date>
    <item>
      <title>How to test twrkm35z75m_meterlibph_test example project in TWRKM35z75M board?</title>
      <link>https://community.nxp.com/t5/Power-Energy/How-to-test-twrkm35z75m-meterlibph-test-example-project-in/m-p/1745788#M30</link>
      <description>&lt;P&gt;Hi all,&amp;nbsp;&lt;a href="https://community.nxp.com/t5/user/viewprofilepage/user-id/26034"&gt;@xiangjun_rong&lt;/a&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I've been trying to learn&amp;nbsp;twrkm35z75m_meterlibph_test project with&amp;nbsp;SDK_2.x_TWR-KM35Z75M with metering library. There,&amp;nbsp;&lt;SPAN&gt;phase V / I samples are read from AFE and passed to the metering algorithm via&amp;nbsp;&lt;/SPAN&gt;&lt;STRONG&gt;METERLIB1PH_ProcSamples(&lt;/STRONG&gt;&lt;STRONG&gt;).&amp;nbsp;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;Yet, I can't find any AFE converted values are being used in&amp;nbsp;twrkm35z75m_meterlibph_test examples, as in contrast, in&amp;nbsp;&lt;U&gt;&lt;EM&gt;twrkm35z75m_afe_polling&lt;/EM&gt;&lt;/U&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;example project - I can see API's like&amp;nbsp;AFE_Init,&amp;nbsp;AFE_SetChannelConfig,&amp;nbsp;AFE_DoSoftwareTriggerChannel,AFE_GetChannelConversionValue,etc.&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;Also, in example,&lt;/SPAN&gt;&lt;EM&gt;&lt;U&gt;twrkm35z75m_meterlibFFT1ph_test&lt;/U&gt;&lt;/EM&gt;&lt;SPAN&gt;&amp;nbsp;even the&amp;nbsp;fsl_afe driver is not added. Why is it so? Without driver for AFE, how can the meter example has been developed?!&lt;/SPAN&gt;&lt;SPAN&gt;So can someone explain how to setup and how does the example project work?!&lt;BR /&gt;&lt;BR /&gt;Testing Environment:&lt;BR /&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;OL&gt;&lt;LI&gt;&lt;SPAN&gt;OS - Ubuntu&amp;nbsp;&lt;/SPAN&gt;&lt;/LI&gt;&lt;LI&gt;&lt;SPAN&gt;IDE - MCUXpresso IDE&lt;/SPAN&gt;&lt;/LI&gt;&lt;LI&gt;&lt;SPAN&gt;SDK -&amp;nbsp;SDK_2.14.0_TWR-KM35Z75M built using online SDK builder with metering middleware enabled&lt;/SPAN&gt;&lt;/LI&gt;&lt;LI&gt;&lt;SPAN&gt;Project - demo_apps/twrkm35z75m_meterlibph_test&lt;/SPAN&gt;&lt;/LI&gt;&lt;/OL&gt;</description>
      <pubDate>Wed, 25 Oct 2023 08:57:46 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Power-Energy/How-to-test-twrkm35z75m-meterlibph-test-example-project-in/m-p/1745788#M30</guid>
      <dc:creator>GanesanGuru</dc:creator>
      <dc:date>2023-10-25T08:57:46Z</dc:date>
    </item>
    <item>
      <title>Re: How to test twrkm35z75m_meterlibph_test example project in TWRKM35z75M board?</title>
      <link>https://community.nxp.com/t5/Power-Energy/How-to-test-twrkm35z75m-meterlibph-test-example-project-in/m-p/1745811#M31</link>
      <description>&lt;P&gt;Hi,&lt;/P&gt;
&lt;P&gt;Thank you, I will download SDK and have a test soon.&lt;/P&gt;
&lt;P&gt;BR&lt;/P&gt;
&lt;P&gt;XiangJun Rong&lt;/P&gt;</description>
      <pubDate>Wed, 25 Oct 2023 09:26:08 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Power-Energy/How-to-test-twrkm35z75m-meterlibph-test-example-project-in/m-p/1745811#M31</guid>
      <dc:creator>xiangjun_rong</dc:creator>
      <dc:date>2023-10-25T09:26:08Z</dc:date>
    </item>
    <item>
      <title>Re: How to test twrkm35z75m_meterlibph_test example project in TWRKM35z75M board?</title>
      <link>https://community.nxp.com/t5/Power-Energy/How-to-test-twrkm35z75m-meterlibph-test-example-project-in/m-p/1746794#M32</link>
      <description>&lt;P&gt;Hi,&lt;/P&gt;
&lt;P&gt;The twrkm35z75m_meterlibph_test example is a simulator rather than actual system.&lt;/P&gt;
&lt;P&gt;Pls refer to the code especially &lt;SPAN&gt;&lt;FONT color="#FF0000"&gt; fill_buffers&lt;/FONT&gt;&lt;/SPAN&gt;(), which assign the voltage and current array with a predefined sine table.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;DIV style="background-color: #ffffff; padding: 0px 0px 0px 2px;"&gt;
&lt;DIV style="color: #000000; background-color: #ffffff; font-family: 'Consolas'; font-size: 10pt; white-space: nowrap;"&gt;
&lt;P&gt;&lt;SPAN&gt;while&lt;/SPAN&gt;&lt;SPAN&gt;(1)&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt; {&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;/* ADC sampling simulation (function fills-up both U and I buffers) */&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;&lt;FONT color="#FF0000"&gt; adc_samples = fill_buffers(u_re, i_re);&lt;/FONT&gt; &lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="background-color: #e0e0e0;"&gt;&lt;SPAN&gt;#if&lt;/SPAN&gt;&lt;SPAN&gt; AFE_MODE == 1 &lt;/SPAN&gt;&lt;SPAN&gt;/* asynchronous or synchronous processing? */&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="background-color: #e0e0e0;"&gt;&lt;SPAN&gt;/* performs interpolation only for asynchronous processing */&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="background-color: #e0e0e0;"&gt;&lt;SPAN&gt; fcn_out = METERLIBFFT1PH_Interpolation(&amp;amp;ui, ORD2, ORD2, adc_samples); &lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="background-color: #e0e0e0;"&gt;&lt;SPAN&gt;#endif&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;/* main calculation (FFT, I-signal conditioning, scaling, averaging) */&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt; METERLIBFFT1PH_CalcMain(&amp;amp;ui); &lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;/* gets 16 FFT magnitudes (auxiliary output only) */&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt; METERLIBFFT1PH_GetMagnitudes(&amp;amp;ui, 16); &lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&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;The function body of api function fill_buffers():&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;DIV style="background-color: #ffffff; padding: 0px 0px 0px 2px;"&gt;
&lt;DIV style="color: #000000; background-color: #ffffff; font-family: 'Consolas'; font-size: 10pt; white-space: nowrap;"&gt;
&lt;P&gt;&lt;SPAN&gt;unsigned&lt;/SPAN&gt; &lt;SPAN&gt;long&lt;/SPAN&gt; &lt;SPAN&gt;fill_buffers&lt;/SPAN&gt;&lt;SPAN&gt; (&lt;/SPAN&gt;&lt;SPAN&gt;frac24&lt;/SPAN&gt;&lt;SPAN&gt; *u, &lt;/SPAN&gt;&lt;SPAN&gt;frac24&lt;/SPAN&gt;&lt;SPAN&gt; *i)&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;{&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;unsigned&lt;/SPAN&gt; &lt;SPAN&gt;long&lt;/SPAN&gt;&lt;SPAN&gt; samp = INP_SAMPLES;&lt;/SPAN&gt;&lt;SPAN&gt;/* integer or power-of two input samples */&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;long&lt;/SPAN&gt;&lt;SPAN&gt; *pu,*pi; &lt;/SPAN&gt;&lt;SPAN&gt;/* pointers to U and I data table */&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="background-color: #e0e0e0;"&gt;&lt;SPAN&gt;#if&lt;/SPAN&gt;&lt;SPAN&gt; AFE_MODE == 1 &lt;/SPAN&gt;&lt;SPAN&gt;/* Asynchronous S/W triggered continuous conversion mode */&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="background-color: #e0e0e0;"&gt;&lt;SPAN&gt; pu = sinus65_24bit; &lt;/SPAN&gt;&lt;SPAN&gt;/* set pointer to the beginning of U-LUT, 65 points */&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="background-color: #e0e0e0;"&gt;&lt;SPAN&gt; pi = sinus65_24bit_45deg;&lt;/SPAN&gt;&lt;SPAN&gt;/* set pointer to the beginning of I-LUT,65 points,45� shift */&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;#else&lt;/SPAN&gt; &lt;SPAN&gt;/* Synchronous H/W triggered single conversion mode */&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt; pu = sinus32_24bit; &lt;/SPAN&gt;&lt;SPAN&gt;/* set pointer to the beginning of U-LUT, 32 points */&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt; pi = sinus32_24bit_45deg;&lt;/SPAN&gt;&lt;SPAN&gt;/* set pointer to the beginning of I-LUT,32 points,45� shift */&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;#endif&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;for&lt;/SPAN&gt;&lt;SPAN&gt; (&lt;/SPAN&gt;&lt;SPAN&gt;unsigned&lt;/SPAN&gt; &lt;SPAN&gt;long&lt;/SPAN&gt;&lt;SPAN&gt; cnt = 0; cnt &amp;lt; samp; cnt++) &lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt; {&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt; u[cnt] = (*pu++); &lt;/SPAN&gt;&lt;SPAN&gt;/* copy U-binary values from LUT to the U-output buffer */&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt; i[cnt] = (*pi++); &lt;/SPAN&gt;&lt;SPAN&gt;/* copy I-binary values from LUT to the I-output buffer */&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt; } &lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;return&lt;/SPAN&gt;&lt;SPAN&gt; (samp);&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;}&lt;/SPAN&gt;&lt;/P&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;P&gt;&amp;nbsp;The array &lt;SPAN&gt;sinus32_24bit&lt;/SPAN&gt;[] is from inputdata.h&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;DIV style="background-color: #ffffff; padding: 0px 0px 0px 2px;"&gt;
&lt;DIV style="color: #000000; background-color: #ffffff; font-family: 'Consolas'; font-size: 10pt; white-space: nowrap;"&gt;
&lt;P&gt;&lt;SPAN&gt;/* sinus 32 points, 1-st harmonic only, scaled to 24-bit */&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;frac24 sinus32_24bit[]={ &lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;0 ,&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;1636536 ,&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;3210181 ,&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;4660461 ,&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;5931642 ,&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;6974873 ,&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;7750063 ,&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;8227423 ,&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;8388607 ,&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;8227423 ,&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&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;The array sinus32_24bit_45deg[] is from inputdata.h&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;DIV style="background-color: #ffffff; padding: 0px 0px 0px 2px;"&gt;
&lt;DIV style="color: #000000; background-color: #ffffff; font-family: 'Consolas'; font-size: 10pt; white-space: nowrap;"&gt;
&lt;P&gt;&lt;SPAN&gt;frac24 sinus32_24bit_45deg[]={ &lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;5931642 ,&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;6974873 ,&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;7750063 ,&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;8227423 ,&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;8388607 ,&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;8227423 ,&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;7750063 ,&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;6974873 ,&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;5931642 ,&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;4660461 ,&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&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;For an actual system, the two array should be from sample of U and I.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;Hope it can help you&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;BR&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;XiangJun Rong&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;</description>
      <pubDate>Thu, 26 Oct 2023 08:05:37 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Power-Energy/How-to-test-twrkm35z75m-meterlibph-test-example-project-in/m-p/1746794#M32</guid>
      <dc:creator>xiangjun_rong</dc:creator>
      <dc:date>2023-10-26T08:05:37Z</dc:date>
    </item>
  </channel>
</rss>

