<?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[Inconsistencies in default extrinsic files]]></title><description><![CDATA[<p dir="auto">Hi team,</p>
<p dir="auto">I'm setting up a drone with a Voxl Deck, and I've pulled in the default extrinsic file ("factory_m500_flight_deck") to modify for my needs. I was looking to just leave it as-is except for adding a fixed offset to all the "body" measurements, but a few things about it seem a bit off. I'd like to either correct my understanding or help the team correct the file, depending on whether these errors are in my interpretation or in the file itself.</p>
<ol>
<li>
<p dir="auto">The y-distance between imu0 to imu1 is 0.037m in the file, but it seems like it should be .029m according to the <a href="https://docs.modalai.com/configure-extrinsics/" rel="nofollow ugc">reference drawings</a> (36mm - 2.8mm - 4.25mm) as well as my calipers. And .037m is wider than the board itself.</p>
</li>
<li>
<p dir="auto">This is a tiny one, but the z distance between IMUs is .002 which makes sense since they're on opposite sides of the PCB. Shouldn't the Z distances for imu-to-body and imu-to-tracking differ by .002 for each IMU? They're each the same in in the config file.</p>
</li>
<li>
<p dir="auto">The z height of the stereo and tof cameras relative to body are both 0 but they are clearly at different heights on the mount.</p>
</li>
<li>
<p dir="auto">Per imu-to-body, the body's X is just around the back edge of the PCB (.02m behind imu0). But per tof-to-body and stereo-to-body, it's a few cm behind the board (.1m behind the cameras).</p>
</li>
</ol>
<p dir="auto">I doubt any of these (save for possibly #1) will significantly affect performance, if at all, but I imagine it's in everyone's interest for the extrinsics to be self-consistent. Should these files be corrected, or am I missing something?</p>
<p dir="auto">For reference, here's the file I'm looking at (as set by "voxl-configure-extrinsics factory_m500_flight_deck"):</p>
<pre><code>{
	"name":	"M500_flight_deck",
	"extrinsics":	[{
			"parent":	"imu1",
			"child":	"imu0",
			"T_child_wrt_parent":	[-0.0484, 0.037, 0.002],
			"RPY_parent_to_child":	[0, 0, 0]
		}, {
			"parent":	"imu0",
			"child":	"tracking",
			"T_child_wrt_parent":	[0.065, -0.014, 0.013],
			"RPY_parent_to_child":	[0, 45, 90]
		}, {
			"parent":	"imu1",
			"child":	"tracking",
			"T_child_wrt_parent":	[0.017, 0.015, 0.013],
			"RPY_parent_to_child":	[0, 45, 90]
		}, {
			"parent":	"body",
			"child":	"imu0",
			"T_child_wrt_parent":	[0.02, 0.014, -0.008],
			"RPY_parent_to_child":	[0, 0, 0]
		}, {
			"parent":	"body",
			"child":	"imu1",
			"T_child_wrt_parent":	[0.068, -0.015, -0.008],
			"RPY_parent_to_child":	[0, 0, 0]
		}, {
			"parent":	"body",
			"child":	"stereo_l",
			"T_child_wrt_parent":	[0.1, -0.04, 0],
			"RPY_parent_to_child":	[0, 90, 90]
		}, {
			"parent":	"body",
			"child":	"tof",
			"T_child_wrt_parent":	[0.1, 0, 0],
			"RPY_parent_to_child":	[0, 90, 90]
		}, {
			"parent":	"body",
			"child":	"ground",
			"T_child_wrt_parent":	[0, 0, 0.1],
			"RPY_parent_to_child":	[0, 0, 0]
		}]
}
</code></pre>
]]></description><link>https://forum.modalai.com/topic/1915/inconsistencies-in-default-extrinsic-files</link><generator>RSS for Node</generator><lastBuildDate>Mon, 12 Oct 2026 08:59:50 GMT</lastBuildDate><atom:link href="https://forum.modalai.com/topic/1915.rss" rel="self" type="application/rss+xml"/><pubDate>Tue, 07 Mar 2023 19:58:39 GMT</pubDate><ttl>60</ttl></channel></rss>