<?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[Imu temp calibration]]></title><description><![CDATA[<p dir="auto">Hello, I have a voxl2 mini that I'm doing development on and I'm running in to issues with the temperature calibration on the imu, mostly that I can't get it to work. When I try to run the calibration it doesn't complete and says "not enough samples, need at least 3" It feels like I'm missing something obvious but I've tried it a few times to the same result. Any help or guidance is appreciated.</p>
<p dir="auto"><img src="/assets/uploads/files/1711500423509-screenshot-from-2024-03-26-17-45-59.png" alt="Screenshot from 2024-03-26 17-45-59.png" class=" img-fluid img-markdown" /></p>
]]></description><link>https://forum.modalai.com/topic/3264/imu-temp-calibration</link><generator>RSS for Node</generator><lastBuildDate>Wed, 10 Jun 2026 08:51:11 GMT</lastBuildDate><atom:link href="https://forum.modalai.com/topic/3264.rss" rel="self" type="application/rss+xml"/><pubDate>Wed, 27 Mar 2024 00:50:11 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Imu temp calibration on Wed, 27 Mar 2024 21:15:29 GMT]]></title><description><![CDATA[<p dir="auto">If you need the cpu stress function to generate more heat, here is something that works. you can replace the current function with this one. It adds a memcpy() operation which uses a lot of power. You can tune <code>do_memcpy_every_nth</code> to control more or less heat (decreasing the number will use heat up cpu more).</p>
<p dir="auto">Original function is <a href="https://gitlab.com/voxl-public/voxl-sdk/services/qrb5165-imu-server/-/blob/master/clients/voxl-calibrate-imu-temp.c#L168" rel="nofollow ugc">here</a></p>
<pre><code>#define STRESS_ARRAY_SIZE (128*1024)
static void* _stress_function(__attribute__((unused)) void* arg)
{
    uint8_t * _stress_array  = malloc(sizeof(uint8_t)*STRESS_ARRAY_SIZE);
    
    uint32_t cntr = 0;
	while(stress_running){
	    cntr++;
		volatile double s = sqrt(rand()); //this helps slow down the while loop
		
		const int do_memcpy_every_nth = 50; //do not perform memcpy every loop because cpu can get hot very quickly
		if ((cntr % do_memcpy_every_nth) == 0){            
		    memcpy(_stress_array,_stress_array+STRESS_ARRAY_SIZE/2,sizeof(uint8_t)*STRESS_ARRAY_SIZE/2);
		}
	}
	//printf("stress thread exiting\n");
	
	free(_stress_array);
	return NULL;
}
</code></pre>
]]></description><link>https://forum.modalai.com/post/15761</link><guid isPermaLink="true">https://forum.modalai.com/post/15761</guid><dc:creator><![CDATA[Alex Kushleyev]]></dc:creator><pubDate>Wed, 27 Mar 2024 21:15:29 GMT</pubDate></item><item><title><![CDATA[Reply to Imu temp calibration on Wed, 27 Mar 2024 20:02:31 GMT]]></title><description><![CDATA[<p dir="auto">we can also the stress function for the cpu, to make it consume more power. i will follow up about it a bit later.</p>
]]></description><link>https://forum.modalai.com/post/15760</link><guid isPermaLink="true">https://forum.modalai.com/post/15760</guid><dc:creator><![CDATA[Alex Kushleyev]]></dc:creator><pubDate>Wed, 27 Mar 2024 20:02:31 GMT</pubDate></item><item><title><![CDATA[Reply to Imu temp calibration on Wed, 27 Mar 2024 19:52:41 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="https://forum.modalai.com/uid/1844">@mkriesel</a> , yes, i believe your conclusion is correct. Something must be cooling down the board (enclosure).</p>
<p dir="auto">It tested this myself and have a small tip for you: setting cpu mode to performance helps to burn more power in the cpu (run this right before starting the temp calibration):</p>
<pre><code>voxl-set-cpu-mode perf
</code></pre>
<p dir="auto">Also you should start the calibration when the board is a bit colder, maybe room temp 20-25C</p>
<p dir="auto">Try it!</p>
]]></description><link>https://forum.modalai.com/post/15759</link><guid isPermaLink="true">https://forum.modalai.com/post/15759</guid><dc:creator><![CDATA[Alex Kushleyev]]></dc:creator><pubDate>Wed, 27 Mar 2024 19:52:41 GMT</pubDate></item><item><title><![CDATA[Reply to Imu temp calibration on Wed, 27 Mar 2024 18:22:47 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="https://forum.modalai.com/uid/7">@Alex-Kushleyev</a><br />
it runs for about a minute and it seems to be stressing the cpu but not enough to raise the temp significantly, in my setup the voxl is sitting in a metal housing so does it just not get hot enough for it to run the calibration properly?<br />
<img src="/assets/uploads/files/1711563658456-screenshot-from-2024-03-27-11-19-43.png" alt="Screenshot from 2024-03-27 11-19-43.png" class=" img-fluid img-markdown" /></p>
]]></description><link>https://forum.modalai.com/post/15754</link><guid isPermaLink="true">https://forum.modalai.com/post/15754</guid><dc:creator><![CDATA[mkriesel]]></dc:creator><pubDate>Wed, 27 Mar 2024 18:22:47 GMT</pubDate></item><item><title><![CDATA[Reply to Imu temp calibration on Wed, 27 Mar 2024 03:24:24 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="https://forum.modalai.com/uid/1844">@mkriesel</a> ,</p>
<p dir="auto">the source code is <a href="https://gitlab.com/voxl-public/voxl-sdk/services/qrb5165-imu-server/-/blob/master/clients/voxl-calibrate-imu-temp.c" rel="nofollow ugc">here</a></p>
<p dir="auto">You can run in debug mode to get more info, but it seems the temperature of the IMU has not really changed from the start (34C vs 31C). The cpu stressing may not be enough. You should check output of <code>top</code> while the stressing of CPU is running (the application just burns cpu cycles in order to heat up the cpu, which will heat up the IMU to help with temperature calibration). How long did the procedure run before it stopped?</p>
]]></description><link>https://forum.modalai.com/post/15731</link><guid isPermaLink="true">https://forum.modalai.com/post/15731</guid><dc:creator><![CDATA[Alex Kushleyev]]></dc:creator><pubDate>Wed, 27 Mar 2024 03:24:24 GMT</pubDate></item></channel></rss>