<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://developerwiki.proventusnova.com/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Sonni</id>
	<title>ProventusNova DeveloperWiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://developerwiki.proventusnova.com/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Sonni"/>
	<link rel="alternate" type="text/html" href="https://developerwiki.proventusnova.com/Special:Contributions/Sonni"/>
	<updated>2026-04-18T06:18:16Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.39.17</generator>
	<entry>
		<id>https://developerwiki.proventusnova.com/index.php?title=Template:Authors&amp;diff=120</id>
		<title>Template:Authors</title>
		<link rel="alternate" type="text/html" href="https://developerwiki.proventusnova.com/index.php?title=Template:Authors&amp;diff=120"/>
		<updated>2025-03-31T15:13:05Z</updated>

		<summary type="html">&lt;p&gt;Sonni: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;width:100%; background-color:#f0f0f0;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Author:&#039;&#039;&#039;&lt;br /&gt;
{{#if: {{{name1|}}} | {{{name1}}} | }}  &lt;br /&gt;
&lt;br /&gt;
|| &#039;&#039;&#039;Date:&#039;&#039;&#039; March 13, 2025&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Sonni</name></author>
	</entry>
	<entry>
		<id>https://developerwiki.proventusnova.com/index.php?title=Template:Authors&amp;diff=119</id>
		<title>Template:Authors</title>
		<link rel="alternate" type="text/html" href="https://developerwiki.proventusnova.com/index.php?title=Template:Authors&amp;diff=119"/>
		<updated>2025-03-31T15:10:10Z</updated>

		<summary type="html">&lt;p&gt;Sonni: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;width:100%; background-color:#f0f0f0;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Author:&#039;&#039;&#039;&lt;br /&gt;
{{#if||{{{name1}}} | {{{name1}}} }}&lt;br /&gt;
|| &#039;&#039;&#039;Date:&#039;&#039;&#039; March 13, 2025&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Sonni</name></author>
	</entry>
	<entry>
		<id>https://developerwiki.proventusnova.com/index.php?title=Template:Authors&amp;diff=118</id>
		<title>Template:Authors</title>
		<link rel="alternate" type="text/html" href="https://developerwiki.proventusnova.com/index.php?title=Template:Authors&amp;diff=118"/>
		<updated>2025-03-31T15:09:31Z</updated>

		<summary type="html">&lt;p&gt;Sonni: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;width:100%; background-color:#f0f0f0;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Author:&#039;&#039;&#039;&lt;br /&gt;
{{if||{{{name1}}} | {{{name1}}} }}&lt;br /&gt;
|| &#039;&#039;&#039;Date:&#039;&#039;&#039; March 13, 2025&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Sonni</name></author>
	</entry>
	<entry>
		<id>https://developerwiki.proventusnova.com/index.php?title=Template:Authors&amp;diff=117</id>
		<title>Template:Authors</title>
		<link rel="alternate" type="text/html" href="https://developerwiki.proventusnova.com/index.php?title=Template:Authors&amp;diff=117"/>
		<updated>2025-03-31T15:04:46Z</updated>

		<summary type="html">&lt;p&gt;Sonni: Blanked the page&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Sonni</name></author>
	</entry>
	<entry>
		<id>https://developerwiki.proventusnova.com/index.php?title=Template:Authors&amp;diff=116</id>
		<title>Template:Authors</title>
		<link rel="alternate" type="text/html" href="https://developerwiki.proventusnova.com/index.php?title=Template:Authors&amp;diff=116"/>
		<updated>2025-03-31T15:02:49Z</updated>

		<summary type="html">&lt;p&gt;Sonni: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;width:100%; background-color:#f0f0f0;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Author:&#039;&#039;&#039;&lt;br /&gt;
{{#if: {{{name1|}}} | {{{name1}}} }}&lt;br /&gt;
{{{name2|}}}&lt;br /&gt;
{{{name3|}}}&lt;br /&gt;
|| &#039;&#039;&#039;Date:&#039;&#039;&#039; {{{date| }}}&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Sonni</name></author>
	</entry>
	<entry>
		<id>https://developerwiki.proventusnova.com/index.php?title=Template:Authors&amp;diff=115</id>
		<title>Template:Authors</title>
		<link rel="alternate" type="text/html" href="https://developerwiki.proventusnova.com/index.php?title=Template:Authors&amp;diff=115"/>
		<updated>2025-03-31T15:01:24Z</updated>

		<summary type="html">&lt;p&gt;Sonni: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;width:100%; background-color:#f0f0f0;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Author:&#039;&#039;&#039;&lt;br /&gt;
{{#if: {{{name1|}}} | {{{name1}}} | }}&lt;br /&gt;
{{{name2|}}}&lt;br /&gt;
{{{name3|}}}&lt;br /&gt;
|| &#039;&#039;&#039;Date:&#039;&#039;&#039; {{{date| }}}&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Sonni</name></author>
	</entry>
	<entry>
		<id>https://developerwiki.proventusnova.com/index.php?title=Template:Authors&amp;diff=114</id>
		<title>Template:Authors</title>
		<link rel="alternate" type="text/html" href="https://developerwiki.proventusnova.com/index.php?title=Template:Authors&amp;diff=114"/>
		<updated>2025-03-31T14:46:39Z</updated>

		<summary type="html">&lt;p&gt;Sonni: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;width:100%; background-color:#f0f0f0;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Author:&#039;&#039;&#039;&lt;br /&gt;
{{{name1|}}}&lt;br /&gt;
{{{name2|}}}&lt;br /&gt;
{{{name3|}}}&lt;br /&gt;
|| &#039;&#039;&#039;Date:&#039;&#039;&#039; {{{date| }}}&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Sonni</name></author>
	</entry>
	<entry>
		<id>https://developerwiki.proventusnova.com/index.php?title=Template:Authors&amp;diff=113</id>
		<title>Template:Authors</title>
		<link rel="alternate" type="text/html" href="https://developerwiki.proventusnova.com/index.php?title=Template:Authors&amp;diff=113"/>
		<updated>2025-03-31T14:46:11Z</updated>

		<summary type="html">&lt;p&gt;Sonni: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;width:100%; background-color:#f0f0f0;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Author:&#039;&#039;&#039;&lt;br /&gt;
{{{name|}}}&lt;br /&gt;
|| &#039;&#039;&#039;Date:&#039;&#039;&#039; {{{date| }}}&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Sonni</name></author>
	</entry>
	<entry>
		<id>https://developerwiki.proventusnova.com/index.php?title=Template:Authors&amp;diff=112</id>
		<title>Template:Authors</title>
		<link rel="alternate" type="text/html" href="https://developerwiki.proventusnova.com/index.php?title=Template:Authors&amp;diff=112"/>
		<updated>2025-03-31T14:45:22Z</updated>

		<summary type="html">&lt;p&gt;Sonni: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;width:100%; background-color:#f0f0f0;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Author:&#039;&#039;&#039;&lt;br /&gt;
{{{name|}}} | {{{name}}} | &lt;br /&gt;
|| &#039;&#039;&#039;Date:&#039;&#039;&#039; {{{date| }}}&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Sonni</name></author>
	</entry>
	<entry>
		<id>https://developerwiki.proventusnova.com/index.php?title=Template:Authors&amp;diff=111</id>
		<title>Template:Authors</title>
		<link rel="alternate" type="text/html" href="https://developerwiki.proventusnova.com/index.php?title=Template:Authors&amp;diff=111"/>
		<updated>2025-03-31T14:43:13Z</updated>

		<summary type="html">&lt;p&gt;Sonni: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;width:100%; background-color:#f0f0f0;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Author:&#039;&#039;&#039;&lt;br /&gt;
{{#if: {{{name|}}} | {{{name}}} | }}&lt;br /&gt;
|| &#039;&#039;&#039;Date:&#039;&#039;&#039; {{{date| }}}&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Sonni</name></author>
	</entry>
	<entry>
		<id>https://developerwiki.proventusnova.com/index.php?title=Template:Authors&amp;diff=110</id>
		<title>Template:Authors</title>
		<link rel="alternate" type="text/html" href="https://developerwiki.proventusnova.com/index.php?title=Template:Authors&amp;diff=110"/>
		<updated>2025-03-31T14:40:36Z</updated>

		<summary type="html">&lt;p&gt;Sonni: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;width:100%; background-color:#f0f0f0;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Author:&#039;&#039;&#039;&lt;br /&gt;
{{ {{{name1|}}} }} &amp;lt;br&amp;gt;&lt;br /&gt;
{{ {{{name2|}}} }} &amp;lt;br&amp;gt;&lt;br /&gt;
{{ {{{name3|}}} }} &amp;lt;br&amp;gt;&lt;br /&gt;
|| &#039;&#039;&#039;Date:&#039;&#039;&#039; {{{date| }}}&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Sonni</name></author>
	</entry>
	<entry>
		<id>https://developerwiki.proventusnova.com/index.php?title=Template:Authors&amp;diff=109</id>
		<title>Template:Authors</title>
		<link rel="alternate" type="text/html" href="https://developerwiki.proventusnova.com/index.php?title=Template:Authors&amp;diff=109"/>
		<updated>2025-03-31T14:37:22Z</updated>

		<summary type="html">&lt;p&gt;Sonni: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;width:100%; background-color:#f0f0f0;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Author:&#039;&#039;&#039;&lt;br /&gt;
{{ {{{name1|}}} | {{{name1}}} | }} &amp;lt;br&amp;gt;&lt;br /&gt;
{{ {{{name2|}}} | {{{name2}}} | }} &amp;lt;br&amp;gt;&lt;br /&gt;
{{ {{{name3|}}} | {{{name3}}} | }} &amp;lt;br&amp;gt;&lt;br /&gt;
|| &#039;&#039;&#039;Date:&#039;&#039;&#039; {{{date| }}}&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Sonni</name></author>
	</entry>
	<entry>
		<id>https://developerwiki.proventusnova.com/index.php?title=Template:Authors&amp;diff=108</id>
		<title>Template:Authors</title>
		<link rel="alternate" type="text/html" href="https://developerwiki.proventusnova.com/index.php?title=Template:Authors&amp;diff=108"/>
		<updated>2025-03-31T14:36:08Z</updated>

		<summary type="html">&lt;p&gt;Sonni: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;width:100%; background-color:#f0f0f0;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Author:&#039;&#039;&#039;&lt;br /&gt;
{{ #if: {{{name1}}} | {{{name1}}} | }} &amp;lt;br&amp;gt;&lt;br /&gt;
{{ #if: {{{name2}}} | {{{name2}}} | }} &amp;lt;br&amp;gt;&lt;br /&gt;
{{ #if: {{{name3}}} | {{{name3}}} | }} &amp;lt;br&amp;gt;&lt;br /&gt;
|| &#039;&#039;&#039;Date:&#039;&#039;&#039; {{{date| }}}&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Sonni</name></author>
	</entry>
	<entry>
		<id>https://developerwiki.proventusnova.com/index.php?title=Template:Authors&amp;diff=107</id>
		<title>Template:Authors</title>
		<link rel="alternate" type="text/html" href="https://developerwiki.proventusnova.com/index.php?title=Template:Authors&amp;diff=107"/>
		<updated>2025-03-31T14:35:18Z</updated>

		<summary type="html">&lt;p&gt;Sonni: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;width:100%; background-color:#f0f0f0;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Author:&#039;&#039;&#039;&lt;br /&gt;
{{ #if: {{{name1}}} | {{{name1}}} | }}&lt;br /&gt;
{{ #if: {{{name2}}} | {{{name2}}} | }}&lt;br /&gt;
{{ #if: {{{name3}}} | {{{name3}}} | }}&lt;br /&gt;
|| &#039;&#039;&#039;Date:&#039;&#039;&#039; {{{date| }}}&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Sonni</name></author>
	</entry>
	<entry>
		<id>https://developerwiki.proventusnova.com/index.php?title=Template:Authors&amp;diff=106</id>
		<title>Template:Authors</title>
		<link rel="alternate" type="text/html" href="https://developerwiki.proventusnova.com/index.php?title=Template:Authors&amp;diff=106"/>
		<updated>2025-03-31T14:34:51Z</updated>

		<summary type="html">&lt;p&gt;Sonni: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;width:100%; background-color:#f0f0f0;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Author:&#039;&#039;&#039;&lt;br /&gt;
{{ if: {{{name1}}} | {{{name1}}} | }}&lt;br /&gt;
{{ if: {{{name2}}} | {{{name2}}} | }}&lt;br /&gt;
{{ if: {{{name3}}} | {{{name3}}} | }}&lt;br /&gt;
|| &#039;&#039;&#039;Date:&#039;&#039;&#039; {{{date| }}}&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Sonni</name></author>
	</entry>
	<entry>
		<id>https://developerwiki.proventusnova.com/index.php?title=Template:Authors&amp;diff=105</id>
		<title>Template:Authors</title>
		<link rel="alternate" type="text/html" href="https://developerwiki.proventusnova.com/index.php?title=Template:Authors&amp;diff=105"/>
		<updated>2025-03-31T14:34:02Z</updated>

		<summary type="html">&lt;p&gt;Sonni: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;width:100%; background-color:#f0f0f0;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Author:&#039;&#039;&#039;&lt;br /&gt;
{{ {{{name1}}} | {{{name1}}} | }}&lt;br /&gt;
{{ {{{name2}}} | {{{name2}}} | }}&lt;br /&gt;
{{ {{{name3}}} | {{{name3}}} | }}&lt;br /&gt;
|| &#039;&#039;&#039;Date:&#039;&#039;&#039; {{{date| }}}&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Sonni</name></author>
	</entry>
	<entry>
		<id>https://developerwiki.proventusnova.com/index.php?title=Template:Authors&amp;diff=104</id>
		<title>Template:Authors</title>
		<link rel="alternate" type="text/html" href="https://developerwiki.proventusnova.com/index.php?title=Template:Authors&amp;diff=104"/>
		<updated>2025-03-31T14:33:12Z</updated>

		<summary type="html">&lt;p&gt;Sonni: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;width:100%; background-color:#f0f0f0;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Author:&#039;&#039;&#039;&lt;br /&gt;
{{ {{{name1|}}} | {{{name1}}} | }}&lt;br /&gt;
{{ {{{name2|}}} | {{{name2}}} | }}&lt;br /&gt;
{{ {{{name3|}}} | {{{name3}}} | }}&lt;br /&gt;
|| &#039;&#039;&#039;Date:&#039;&#039;&#039; {{{date| }}}&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Sonni</name></author>
	</entry>
	<entry>
		<id>https://developerwiki.proventusnova.com/index.php?title=Template:Authors&amp;diff=103</id>
		<title>Template:Authors</title>
		<link rel="alternate" type="text/html" href="https://developerwiki.proventusnova.com/index.php?title=Template:Authors&amp;diff=103"/>
		<updated>2025-03-31T14:31:36Z</updated>

		<summary type="html">&lt;p&gt;Sonni: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;width:100%; background-color:#f0f0f0;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Author:&#039;&#039;&#039;&lt;br /&gt;
{{#if: {{{name1|}}} | {{{name1}}} | }}&lt;br /&gt;
{{#if: {{{name2|}}} | {{{name2}}} | }}&lt;br /&gt;
{{#if: {{{name3|}}} | {{{name3}}} | }}&lt;br /&gt;
|| &#039;&#039;&#039;Date:&#039;&#039;&#039; {{{date| }}}&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Sonni</name></author>
	</entry>
	<entry>
		<id>https://developerwiki.proventusnova.com/index.php?title=Template:Authors&amp;diff=102</id>
		<title>Template:Authors</title>
		<link rel="alternate" type="text/html" href="https://developerwiki.proventusnova.com/index.php?title=Template:Authors&amp;diff=102"/>
		<updated>2025-03-31T14:28:36Z</updated>

		<summary type="html">&lt;p&gt;Sonni: Create Authors template&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;width:100%; background-color:#f0f0f0;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Author:&#039;&#039;&#039;&lt;br /&gt;
{{ {{{name1| }}} | {{{name1| }} | }}&lt;br /&gt;
{{ {{{name2| }}} | {{{name2| }} | }}&lt;br /&gt;
{{ {{{name3| }}} | {{{name3| }} | }}&lt;br /&gt;
|| &#039;&#039;&#039;Date:&#039;&#039;&#039; {{{date| }}}&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Sonni</name></author>
	</entry>
	<entry>
		<id>https://developerwiki.proventusnova.com/index.php?title=Module:ArrayHandler&amp;diff=101</id>
		<title>Module:ArrayHandler</title>
		<link rel="alternate" type="text/html" href="https://developerwiki.proventusnova.com/index.php?title=Module:ArrayHandler&amp;diff=101"/>
		<updated>2025-03-31T14:24:57Z</updated>

		<summary type="html">&lt;p&gt;Sonni: Create Module:ArrayHandler&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;local p = {}&lt;br /&gt;
&lt;br /&gt;
function p.split(frame)&lt;br /&gt;
    local input = frame.args[1] or &amp;quot;&amp;quot;&lt;br /&gt;
    local delimiter = frame.args[2] or &amp;quot;,&amp;quot;&lt;br /&gt;
    local result = {}&lt;br /&gt;
    for word in string.gmatch(input, &#039;([^&#039; .. delimiter .. &#039;]+)&#039;) do&lt;br /&gt;
        table.insert(result, word)&lt;br /&gt;
    end&lt;br /&gt;
    return table.concat(result, &amp;quot;\n&amp;quot;)&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
return p&lt;/div&gt;</summary>
		<author><name>Sonni</name></author>
	</entry>
	<entry>
		<id>https://developerwiki.proventusnova.com/index.php?title=How_to_create_a_custom_yocto_recipe&amp;diff=100</id>
		<title>How to create a custom yocto recipe</title>
		<link rel="alternate" type="text/html" href="https://developerwiki.proventusnova.com/index.php?title=How_to_create_a_custom_yocto_recipe&amp;diff=100"/>
		<updated>2025-03-26T03:18:19Z</updated>

		<summary type="html">&lt;p&gt;Sonni: Create How to create a custom recipe page&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=About=&lt;br /&gt;
This document shows how to create a custom Yocto recipe, a .bb file (bitbake file), from scratch. &amp;lt;br&amp;gt;&lt;br /&gt;
If you want to create a custom Yocto recipe automatically, see [[How to create a custom yocto meta layer|Create custom yocto meta layer]] page under &#039;&#039;&#039;Create layer via bitbake&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
=Create a custom Yocto recipe=&lt;br /&gt;
Follow these steps to create a custom Yocto recipe.&lt;br /&gt;
&lt;br /&gt;
==Step 1. Setup Yocto Environemnt==&lt;br /&gt;
Make sure to setup Yocto first.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
cd &amp;lt;your yocto folder&amp;gt;&lt;br /&gt;
source oe-init-build-env &amp;lt;your build directory&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
After setting up Yocto, you can add your own custom layer. To create a custom layer, see [[How to create a custom yocto meta layer|Create custom yocto meta layer]] page.&lt;br /&gt;
&lt;br /&gt;
==Step 2. Create the recipe==&lt;br /&gt;
After setting up Yocto, you can now create a custom recipe.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
cd &amp;lt;layer folder&amp;gt;&lt;br /&gt;
#If you want to create a new recipe folder&lt;br /&gt;
mkdir &amp;lt;recipe folder name&amp;gt;&lt;br /&gt;
#e.g. mkdir recipe-software&lt;br /&gt;
#If you want to create a recipe in an existing folder&lt;br /&gt;
cd &amp;lt;recipe folder name&amp;gt;&lt;br /&gt;
#create the recipe&lt;br /&gt;
touch proventusNova_1.0.bb&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
After creating the .bb file, we can now edit the recipe. &amp;lt;br&amp;gt;&lt;br /&gt;
You can use your preferred text editor to edit the file. Below is an example of what a recipe may contain.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
DESCRIPTION = &amp;quot;ProventusNova Recipe&amp;quot;&lt;br /&gt;
LICENSE = &amp;quot;CLOSED&amp;quot;&lt;br /&gt;
SRC_URI = &amp;quot;file://helloworld.c&amp;quot;&lt;br /&gt;
&lt;br /&gt;
inherit core-image&lt;br /&gt;
&lt;br /&gt;
IMAGE_FEATURES += &amp;quot;ssh-server-openssh debug-tweaks&amp;quot;&lt;br /&gt;
&lt;br /&gt;
CORE_IMAGE_BASE_INSTALL += &amp;quot;systemd&amp;quot;&lt;br /&gt;
TOOLCHAIN_HOST_TASK += &amp;quot;nativesdk-packagegroup-cuda-sdk-host&amp;quot;&lt;br /&gt;
&lt;br /&gt;
inherit nopackages&lt;br /&gt;
&lt;br /&gt;
do_install() {&lt;br /&gt;
    install -d ${D}${bindir}&lt;br /&gt;
    install -m 0755 &amp;lt;application&amp;gt; ${D}${bindir}/&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
do_compile() {&lt;br /&gt;
    ${CC} helloworld.c -o helloworld&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Step 3. Test the recipe==&lt;br /&gt;
After creating the recipe, test the recipe by running the command:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
bitbake -c fetch proventusNova&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
This tests the recipe if the files are downloaded correctly.&lt;br /&gt;
&lt;br /&gt;
==Step 4. Build the recipe==&lt;br /&gt;
To build the recipe, run the command:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
bitbake proventusNova&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{Footer}}&lt;/div&gt;</summary>
		<author><name>Sonni</name></author>
	</entry>
	<entry>
		<id>https://developerwiki.proventusnova.com/index.php?title=Main_Page&amp;diff=99</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="https://developerwiki.proventusnova.com/index.php?title=Main_Page&amp;diff=99"/>
		<updated>2025-03-26T02:48:41Z</updated>

		<summary type="html">&lt;p&gt;Sonni: Add link on how to create a custom yocto recipe&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{DISPLAYTITLE:Home - ProventusNova DeveloperWiki}}&lt;br /&gt;
&lt;br /&gt;
= Welcome to the ProventusNova Developer Wiki =&lt;br /&gt;
&#039;&#039;&#039;Expert knowledge for Embedded Systems, AI, and Software Development.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Looking to build high-performance embedded systems, optimize AI models, or streamline multimedia processing? This wiki is a &#039;&#039;&#039;public knowledge hub&#039;&#039;&#039; designed to help engineers, developers, and businesses solve real-world technical challenges.  &lt;br /&gt;
&lt;br /&gt;
Here, you’ll find &#039;&#039;&#039;step-by-step tutorials, best practices, and deep technical insights&#039;&#039;&#039; to help you bring your projects to life.  &lt;br /&gt;
&lt;br /&gt;
== 🚀 What You’ll Find Here ==&lt;br /&gt;
* &#039;&#039;&#039;Hands-on Tutorials&#039;&#039;&#039; – Practical guides to get you started quickly.  &lt;br /&gt;
* &#039;&#039;&#039;Industry Best Practices&#039;&#039;&#039; – Proven workflows and methodologies.  &lt;br /&gt;
* &#039;&#039;&#039;Optimized Solutions&#039;&#039;&#039; – Performance tuning for embedded, AI, and multimedia applications.  &lt;br /&gt;
* &#039;&#039;&#039;Open-Source Resources&#039;&#039;&#039; – Code samples, frameworks, and tools to accelerate development.  &lt;br /&gt;
&lt;br /&gt;
Whether you&#039;re an individual developer, a startup, or an enterprise, you’ll find resources here to &#039;&#039;&#039;enhance your expertise and improve your products&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
== 💡 Featured Tutorials ==&lt;br /&gt;
🔧 **[Building a Custom Linux OS with Yocto](Yocto-Project-Tutorial)** – Tailor an operating system for your hardware.  &lt;br /&gt;
🤖 **[Deploying AI for Real-Time Video Analytics](AI-Video-Analytics)** – Use machine learning for intelligent decision-making.  &lt;br /&gt;
🎥 **[Optimizing GStreamer Pipelines](GStreamer-Optimization)** – Improve multimedia processing efficiency.  &lt;br /&gt;
🌐 **[Scaling Web Applications](Django-Web-Development)** – Design backends for performance and reliability.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&amp;lt;!-- For more topics, explore the **[[Tutorials Index]]**. --&amp;gt;&lt;br /&gt;
== ⚙️ Technical Resources ==&lt;br /&gt;
* [[Embedded Systems Development]] – BSPs, firmware, and real-time processing.&lt;br /&gt;
**To get to know Embedded Platforms, here is an overview of the top platforms in the market right now!&lt;br /&gt;
***[[Embedded Platforms]] - From Raspberry Pi to Nvidia Jetson, get to know these embedded platforms.&lt;br /&gt;
**[[How to create a custom yocto meta layer|Create custom yocto meta layer]] - Create your own custom yocto meta layer.&lt;br /&gt;
**[[How to create a custom yocto recipe| Create custom yocto recipe]] - Create your own custom yocto recipe.&lt;br /&gt;
* [[AI &amp;amp; Computer Vision]] – Edge AI, model training, and deployment.&lt;br /&gt;
* [[GStreamer Development]] – High-performance video and audio streaming.&lt;br /&gt;
** [[GStreamer Fundamentals]] – Introduction, pipelines, elements, and data flow.&lt;br /&gt;
** [[GStreamer Daemon]] – Remote control of pipelines with JSON-RPC API.&lt;br /&gt;
** [[GStreamer Interpipes]] – Efficient multi-pipeline communication.&lt;br /&gt;
** [[GStreamer Application Development]] – Writing custom plugins and apps.&lt;br /&gt;
** [[GStreamer Best Practices]] – Performance optimization and debugging.&lt;br /&gt;
* [[Web &amp;amp; Cloud Solutions]] – Scalable, production-ready applications.&lt;br /&gt;
&lt;br /&gt;
== 👀  Are you a PM looking to expand your knowledge in the software development industry?==&lt;br /&gt;
This tutorial is for you!&lt;br /&gt;
Here, you&#039;ll explore essential concepts, from basic to intermediate, that will help you navigate technical discussions with engineers and clients more confidently&lt;br /&gt;
&lt;br /&gt;
📄&#039;&#039;&#039;[[Project Manager Tutorials]]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
{{Footer}}&lt;/div&gt;</summary>
		<author><name>Sonni</name></author>
	</entry>
	<entry>
		<id>https://developerwiki.proventusnova.com/index.php?title=Project_Manager_Tutorials&amp;diff=98</id>
		<title>Project Manager Tutorials</title>
		<link rel="alternate" type="text/html" href="https://developerwiki.proventusnova.com/index.php?title=Project_Manager_Tutorials&amp;diff=98"/>
		<updated>2025-03-25T02:06:11Z</updated>

		<summary type="html">&lt;p&gt;Sonni: /* 🏗 Need a Solution for Your Project? */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;width:100%; background-color:#f0f0f0;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Authors:&#039;&#039;&#039;&lt;br /&gt;
Sonni Lorenz F. Cubero (sonni.cubero@proventusnova.com)&lt;br /&gt;
&lt;br /&gt;
CJ Mirafuentes (cj.mirafuentes@proventusnova.com)&lt;br /&gt;
|| &#039;&#039;&#039;Date:&#039;&#039;&#039; March 14, 2025&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--NOTE!!!: change the date every time this page is published--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== About ==&lt;br /&gt;
This document serves as a guide for project managers dealing with ProventusNova products, providing them with essential technical knowledge, industry terms, best practices, and tools to effectively manage projects in an embedded systems environment.&lt;br /&gt;
&lt;br /&gt;
== Project Manager Terms ==&lt;br /&gt;
These are the terms that a project manager needs to know when dealing with ProventusNova products.&lt;br /&gt;
&lt;br /&gt;
===Basic Concepts===&lt;br /&gt;
&lt;br /&gt;
====Processor====&lt;br /&gt;
A processor, also known as a Central Processing Unit (CPU), is the &amp;quot;brain&amp;quot; of a computer, responsible for executing instructions from software and managing data flow.&lt;br /&gt;
&lt;br /&gt;
==== Software ====&lt;br /&gt;
Software is a collection of programs, instructions, and data that run on a computer to perform tasks. It is the opposite of hardware, which is the physical parts of a computer.&lt;br /&gt;
&lt;br /&gt;
==== Embedded Software ====&lt;br /&gt;
Embedded software is computer code that controls devices other than traditional computers. It is designed to work with a specific device&#039;s hardware and is often found in everyday objects like cars, appliances, and smartphones.&lt;br /&gt;
&lt;br /&gt;
==== Embedded Platforms/Systems ====&lt;br /&gt;
An embedded platform is defined as a system that includes various types of peripherals with distinct characteristics. These peripherals can either be integrated into modern SoC devices or remain as part of the platform board to enhance the capabilities of the SoC device.&lt;br /&gt;
&lt;br /&gt;
==== Computer Architecture ====&lt;br /&gt;
The structure of a computer system and how its parts work together. It defines how the computer&#039;s components interact to process data.&lt;br /&gt;
&lt;br /&gt;
==== Linux ====&lt;br /&gt;
Linux is a free, open-source operating system (OS) that is used on computers, servers, and mobile devices. It is similar to Unix and is one of the most widely used operating systems in the world.&lt;br /&gt;
&lt;br /&gt;
==== GStreamer ====&lt;br /&gt;
GStreamer is a pipeline-based multimedia framework that links together a wide variety of media processing systems to complete complex workflows.&lt;br /&gt;
&lt;br /&gt;
==== Kernel ====&lt;br /&gt;
A kernel is the core part of an operating system. It acts as a bridge between software applications and the hardware of a computer.&lt;br /&gt;
&lt;br /&gt;
==== API (Application Programming Interface) ====&lt;br /&gt;
An API, or application programming interface, is a set of rules or protocols that enables software applications to communicate with each other.&lt;br /&gt;
&lt;br /&gt;
==== Raspberry PI ====&lt;br /&gt;
A small, inexpensive computer used for learning and exploring computer science. It is about the size of a credit card and offers cost-effective, high-performance computing for businesses and home use.&lt;br /&gt;
&lt;br /&gt;
==== Ubuntu ====&lt;br /&gt;
Ubuntu is a modern, open-source operating system based on Linux for enterprise servers, desktops, cloud computing, and IoT.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
=== Intermediate Concepts===&lt;br /&gt;
&lt;br /&gt;
==== ARM (Advanced RISC Machine) ====&lt;br /&gt;
Refers to a type of computer processor architecture. ARM processors are known for their energy efficiency and performance.&lt;br /&gt;
&lt;br /&gt;
==== x86_64 ====&lt;br /&gt;
Also known as x64 or AMD64, x86_64 is a 64-bit architecture for CPUs. It is used in most home computers and servers. x86_64 is an extension of the 32-bit x86 architecture, supporting 64-bit mode and compatibility mode, which allows users to run 16-bit and 32-bit applications.&lt;br /&gt;
&lt;br /&gt;
==== GStreamer Daemon (gstd) ====&lt;br /&gt;
GStreamer Daemon, also called gstd, is a GStreamer framework for controlling audio and video streaming using an InterProcess Communication protocol.&lt;br /&gt;
&lt;br /&gt;
==== GStreamer Interpipes ====&lt;br /&gt;
GstInterpipe is a RidgeRun open-source GStreamer plug-in that enables pipeline buffers and events to flow between two or more independent pipelines. The plug-in consists of two elements: Interpipesink and Interpipesrc. The Interpipesrc connects with an Interpipesink, from which it receives buffers and events.&lt;br /&gt;
&lt;br /&gt;
==== Nvidia Jetson ====&lt;br /&gt;
NVIDIA Jetson is a platform for AI applications in robotics and embedded systems. It includes compact computers, software development kits, and other tools. It is used by professional developers to create breakthrough AI products across industries and by students and enthusiasts for hands-on AI learning and innovative projects.&lt;br /&gt;
&lt;br /&gt;
==== ESP32 ====&lt;br /&gt;
ESP32 is a low-cost, low-power microcontroller board with built-in Wi-Fi and Bluetooth. It is designed for a variety of applications, including IoT devices, wearable electronics, and mobile devices. Its low cost and power efficiency make it ideal for a variety of IoT applications.&lt;br /&gt;
&lt;br /&gt;
==== Texas Instruments Processors ====&lt;br /&gt;
Developed by Texas Instruments, these processors feature ARM9, ARM Cortex-A8, ARM Cortex-A9, ARM Cortex-A15, and ARM Cortex-A53 cores. Sitara Processors offer low-power and high-performance models, making them suitable for battery-operated devices and industrial systems. They provide a developer-friendly environment with tools like Code Composer Studio and RTOS support.&lt;br /&gt;
&lt;br /&gt;
==== Qualcomm Snapdragon ====&lt;br /&gt;
A system-on-chip (SoC) that powers a variety of devices, such as smartphones, tablets, laptops, and desktops. Snapdragon processors integrate ARM Cortex cores, DSP, and AI and come with built-in Wi-Fi, LTE, and 5G, making them ideal for IoT and edge computing.&lt;br /&gt;
&lt;br /&gt;
==== Intel Atom Processors ====&lt;br /&gt;
Intel Atom Processors are designed for low-power consumption while providing sufficient power for embedded systems. Their x86 architecture ensures compatibility with a wide variety of software.&lt;br /&gt;
&lt;br /&gt;
==== Microchip PIC Microcontrollers ====&lt;br /&gt;
Known for their low power consumption and affordability, Microchip PIC Microcontrollers are ideal for embedded systems, particularly in battery-powered devices and simple consumer electronics.&lt;br /&gt;
&lt;br /&gt;
==== STMicroelectronics STM32 Series ====&lt;br /&gt;
Based on the Arm Cortex-M processor, featuring cores from Cortex-M0 to Cortex-M7.&lt;br /&gt;
&lt;br /&gt;
==== Renesas RX ====&lt;br /&gt;
The Renesas RX Family uses 32-bit RX cores, delivering strong computational power and support for complex applications.&lt;br /&gt;
&lt;br /&gt;
==== Arm Cortex-M Series ====&lt;br /&gt;
Widely used for its scalability, low power, and strong performance, the Arm Cortex-M Series offers a range of cores from Cortex-M0 to Cortex-M7.&lt;br /&gt;
&lt;br /&gt;
==== Arduino ====&lt;br /&gt;
Arduino is an open-source electronics platform that uses hardware and software to read inputs and create outputs. It is used to build prototypes for various applications, including smart homes, entertainment, and monitoring systems.&lt;br /&gt;
&lt;br /&gt;
==== NXP i.MX Series ====&lt;br /&gt;
The NXP i.MX Series offers performance versatility, with different models targeting various market segments. They come with Arm Cortex-A series cores, GPU, and DSP for enhanced performance in multimedia and machine learning applications.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
===Advanced Concepts===&lt;br /&gt;
&lt;br /&gt;
==== RISC (Reduced Instruction Set Computer) ====&lt;br /&gt;
A microprocessor architecture that uses a small set of simple instructions to perform tasks more quickly than other architectures.&lt;br /&gt;
&lt;br /&gt;
==== Real-Time Operating System (RTOS) ====&lt;br /&gt;
A Real-Time Operating System (RTOS) is an operating system designed to process data and execute tasks within a strict time constraint. RTOS ensures timely execution of critical processes, making it ideal for embedded systems, industrial automation, robotics, and real-time data processing applications.&lt;br /&gt;
&lt;br /&gt;
==== SoC (System on Chip) ====&lt;br /&gt;
A System on Chip (SoC) is an integrated circuit that combines all essential components of a computer or electronic system onto a single chip. It typically includes a CPU, GPU, memory, peripherals, and connectivity interfaces. SoCs are widely used in mobile devices, IoT devices, and embedded systems.&lt;br /&gt;
&lt;br /&gt;
==== AI (Artificial Intelligence) ====&lt;br /&gt;
Artificial intelligence (AI) is a field of study that focuses on creating machines that can learn, reason, and act. AI is used in many applications, including search engines, social media, and online shopping. AI is technology that enables computers and machines to simulate human learning, comprehension, problem solving, decision making, creativity and autonomy&lt;br /&gt;
&lt;br /&gt;
====Machine Learning ====&lt;br /&gt;
Machine Learning is a branch of artificial intelligence (AI) focused on enabling computers and machines to imitate the way that humans learn.&lt;br /&gt;
&lt;br /&gt;
==== Yocto Project ====&lt;br /&gt;
The Yocto Project is an open-source initiative that provides tools and templates for building custom Linux distributions for embedded systems. It enables fine-grained control over system components, allowing developers to optimize for performance, footprint, and security. The project provides a flexible set of tools and a space where embedded developers worldwide can share technologies, software stacks, configurations, and best practices that can be used to create tailored Linux images for embedded and IOT devices, or anywhere a customized Linux OS is needed.&lt;br /&gt;
&lt;br /&gt;
==== MCU (Microcontroller Unit) ====&lt;br /&gt;
A microcontroller or microcontroller unit (MCU) is a small computer on a single integrated circuit. An MCU is a compact, self-contained computer on a chip, containing a processor core (CPU), memory (RAM and ROM), and input/output (I/O) peripherals.&lt;br /&gt;
&lt;br /&gt;
{{Footer}}&lt;/div&gt;</summary>
		<author><name>Sonni</name></author>
	</entry>
	<entry>
		<id>https://developerwiki.proventusnova.com/index.php?title=Template:Footer&amp;diff=97</id>
		<title>Template:Footer</title>
		<link rel="alternate" type="text/html" href="https://developerwiki.proventusnova.com/index.php?title=Template:Footer&amp;diff=97"/>
		<updated>2025-03-25T02:05:35Z</updated>

		<summary type="html">&lt;p&gt;Sonni: /* 🏗 Need a Solution for Your Project? */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= 🏗 Need a Solution for Your Project? =&lt;br /&gt;
Are you looking for ways to:  &lt;br /&gt;
✅ Optimize your &#039;&#039;&#039;embedded system&#039;&#039;&#039; for better performance?  &lt;br /&gt;
✅ Integrate &#039;&#039;&#039;AI and computer vision&#039;&#039;&#039; into your products?  &lt;br /&gt;
✅ Improve &#039;&#039;&#039;multimedia processing&#039;&#039;&#039; for real-time applications?  &lt;br /&gt;
✅ Develop a &#039;&#039;&#039;robust and scalable&#039;&#039;&#039; web platform?  &lt;br /&gt;
&lt;br /&gt;
Our team has helped businesses across multiple industries solve these challenges.  &lt;br /&gt;
&lt;br /&gt;
📩 &#039;&#039;&#039;Let’s collaborate!&#039;&#039;&#039; Contact us at &#039;&#039;&#039;[support@proventusnova.com](mailto:support@proventusnova.com)&#039;&#039;&#039; or visit &#039;&#039;&#039;[ProventusNova.com](https://proventusnova.com)&#039;&#039;&#039; to discuss your project.&lt;/div&gt;</summary>
		<author><name>Sonni</name></author>
	</entry>
	<entry>
		<id>https://developerwiki.proventusnova.com/index.php?title=GStreamer_Application_Development&amp;diff=96</id>
		<title>GStreamer Application Development</title>
		<link rel="alternate" type="text/html" href="https://developerwiki.proventusnova.com/index.php?title=GStreamer_Application_Development&amp;diff=96"/>
		<updated>2025-03-25T02:05:14Z</updated>

		<summary type="html">&lt;p&gt;Sonni: /* 🏗 Need a Solution for Your Project? */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;width:100%; background-color:#f0f0f0;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Authors:&#039;&#039;&#039;&lt;br /&gt;
Sonni Lorenz F. Cubero (sonni.cubero@proventusnova.com)&lt;br /&gt;
&lt;br /&gt;
CJ Mirafuentes (cj.mirafuentes@proventusnova.com)&lt;br /&gt;
|| &#039;&#039;&#039;Date:&#039;&#039;&#039; March 10, 2025&lt;br /&gt;
|}&lt;br /&gt;
= GStreamer Application Development =&lt;br /&gt;
This page shows how to build gstreamer applications. &lt;br /&gt;
Gstreamer applications can be built on the following platforms:&lt;br /&gt;
* Linux&lt;br /&gt;
* Windows&lt;br /&gt;
* Android&lt;br /&gt;
* iOS&lt;br /&gt;
* macOS&lt;br /&gt;
&lt;br /&gt;
== Linux ==&lt;br /&gt;
Gstreamer is included in all Linux distributions. We recommend using the latest version of a fast-moving distribution such as Fedora, Ubuntu (non-LTS), Debian or OpenSuse to get a recentg Gstreamer release.&lt;br /&gt;
&lt;br /&gt;
=== Prerequisites ===&lt;br /&gt;
The following must be present in the Linux system.&lt;br /&gt;
&lt;br /&gt;
=== Compiler ===  &lt;br /&gt;
* GCC  &lt;br /&gt;
* Clang  &lt;br /&gt;
&lt;br /&gt;
=== Package Manager ===  &lt;br /&gt;
Any one of the following will do:&lt;br /&gt;
* apt  &lt;br /&gt;
* dnf  &lt;br /&gt;
* snap  &lt;br /&gt;
&lt;br /&gt;
=== Linux Build Environment === &lt;br /&gt;
The Linux build environment was emulated using &#039;&#039;&#039;VMware Workstation 17 Pro&#039;&#039;&#039; with the following specifications:  &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
| &#039;&#039;&#039;Operating System&#039;&#039;&#039;: || Ubuntu 24.04.1 LTS&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Processors&#039;&#039;&#039;: || Number of processors: 4 &lt;br /&gt;
Number of cores per processor: 1&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Memory&#039;&#039;&#039;: || 8GB&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Storage&#039;&#039;&#039;: || 30GB (Expandable)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Installing on Ubuntu/Debian ===&lt;br /&gt;
Run the following command:  &lt;br /&gt;
&lt;br /&gt;
 apt-get install libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev libgstreamer-plugins-bad1.0-dev gstreamer1.0-plugins-base gstreamer1.0-plugins-good gstreamer1.0-plugins-bad gstreamer1.0-plugins-ugly gstreamer1.0-libav gstreamer1.0-tools gstreamer1.0-x gstreamer1.0-alsa gstreamer1.0-gl gstreamer1.0-gtk3 gstreamer1.0-qt5 gstreamer1.0-pulseaudio&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039; Make sure you have root access to install.  &lt;br /&gt;
&lt;br /&gt;
=== Installing on Fedora ===&lt;br /&gt;
Run the following command:  &lt;br /&gt;
&lt;br /&gt;
 dnf install gstreamer1-devel gstreamer1-plugins-base-tools gstreamer1-doc gstreamer1-plugins-base-devel gstreamer1-plugins-good gstreamer1-plugins-good-extras gstreamer1-plugins-ugly gstreamer1-plugins-bad-free gstreamer1-plugins-bad-free-devel gstreamer1-plugins-bad-free-extras&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039; Make sure you have root access to install.  &lt;br /&gt;
&lt;br /&gt;
=== Building a GStreamer Application ===&lt;br /&gt;
Building GStreamer requires the gcc/clang compiler and a text editor. Run the following command to build an application using GStreamer:  &lt;br /&gt;
&lt;br /&gt;
 gcc [filename].c -o [output_file] `pkg-config --cflags --libs gstreamer-1.0`&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Running a GStreamer Application ===&lt;br /&gt;
To run the application, simply run the following command:  &lt;br /&gt;
&lt;br /&gt;
 ./[application_name]&lt;br /&gt;
&lt;br /&gt;
== Windows ==&lt;br /&gt;
&lt;br /&gt;
=== Prerequisites ===&lt;br /&gt;
To develop applications using GStreamer for Windows, it is recommended to use Windows 10 or newer (Windows 7 or 8 is also supported), with Microsoft Visual Studio 2019 or newer.&lt;br /&gt;
&lt;br /&gt;
Additionally, the runtime and development installers must be installed.  &lt;br /&gt;
&#039;&#039;&#039;[https://gstreamer.freedesktop.org/download/#windows Download Gstreamer]&#039;&#039;&#039;  &lt;br /&gt;
&lt;br /&gt;
=== Installing on Windows ===&lt;br /&gt;
Install the GStreamer Runtime and Development Installer. After installing GStreamer runtime and development, add its libraries and plugins to your environment variables.  &lt;br /&gt;
&lt;br /&gt;
Follow these steps to add them to your environment variables:&lt;br /&gt;
&lt;br /&gt;
# Open Environment Variables.&lt;br /&gt;
# In System Variables, scroll down to the &#039;&#039;&#039;Path&#039;&#039;&#039; variable and click &#039;&#039;&#039;Edit&#039;&#039;&#039;.&lt;br /&gt;
# Click &#039;&#039;&#039;New&#039;&#039;&#039;.&lt;br /&gt;
# Add the locations for the &#039;&#039;&#039;\bin&#039;&#039;&#039;, &#039;&#039;&#039;\lib&#039;&#039;&#039;, &#039;&#039;&#039;\include&#039;&#039;&#039;, and &#039;&#039;&#039;\gstreamer-1.0&#039;&#039;&#039; directories.&lt;br /&gt;
&lt;br /&gt;
If you have the &#039;&#039;&#039;32-bit&#039;&#039;&#039; version installed, add the following paths to your System Variables:&lt;br /&gt;
&lt;br /&gt;
*C:\gstreamer\1.0\msvc_x86\bin&lt;br /&gt;
*C:\gstreamer\1.0\msvc_x86\lib&lt;br /&gt;
*C:\gstreamer\1.0\msvc_x86\lib\gstreamer-1.0&lt;br /&gt;
*C:\gstreamer\1.0\msvc_x86\include&lt;br /&gt;
&lt;br /&gt;
If you have the &#039;&#039;&#039;64-bit&#039;&#039;&#039; version installed, add the following paths to your System Variables:&lt;br /&gt;
&lt;br /&gt;
*C:\gstreamer\1.0\msvc_x86_64\bin&lt;br /&gt;
*C:\gstreamer\1.0\msvc_x86_64\lib&lt;br /&gt;
*C:\gstreamer\1.0\msvc_x86_64\lib\gstreamer-1.0&lt;br /&gt;
*C:\gstreamer\1.0\msvc_x86_64\include&lt;br /&gt;
&lt;br /&gt;
=== Building and Running a GStreamer Application ===&lt;br /&gt;
&lt;br /&gt;
This build was done with a 64-bit runtime and development GStreamer.  &lt;br /&gt;
&lt;br /&gt;
To build a GStreamer project, follow these steps:&lt;br /&gt;
&lt;br /&gt;
1 .Open &#039;&#039;&#039;Visual Studio&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
2. Click &#039;&#039;&#039;Create a new project&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
3. Select either &#039;&#039;&#039;Empty Project&#039;&#039;&#039; or &#039;&#039;&#039;Console App&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
.4 After selecting your project, set up the libraries and dependencies.&lt;br /&gt;
&lt;br /&gt;
5. In &#039;&#039;&#039;Solution Explorer&#039;&#039;&#039;, right-click on the project and select &#039;&#039;&#039;Properties&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
6. Go to &#039;&#039;&#039;C/C++&#039;&#039;&#039; → &#039;&#039;&#039;General&#039;&#039;&#039; → &#039;&#039;&#039;Additional Include Directories&#039;&#039;&#039; → Click &#039;&#039;&#039;Edit&#039;&#039;&#039; and add the following paths:&lt;br /&gt;
 C:\gstreamer\1.0\msvc_x86_64\include\glib-2.0 &lt;br /&gt;
 C:\gstreamer\1.0\msvc_x86_64\include\gstreamer-1.0 &lt;br /&gt;
 C:\gstreamer\1.0\msvc_x86_64\include\gstreamer-1.0\gst &lt;br /&gt;
 C:\gstreamer\1.0\msvc_x86_64\include\glib-2.0\glib &lt;br /&gt;
 C:\gstreamer\1.0\msvc_x86_64\lib\glib-2.0\include &lt;br /&gt;
 C:\gstreamer\1.0\msvc_x86_64\include\glib-2.0\ &lt;br /&gt;
 C:\gstreamer\1.0\msvc_x86_64\lib\gstreamer-1.0 &lt;br /&gt;
 %(AdditionalIncludeDirectories)&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039; The directories may vary depending on where you installed the GStreamer runtime and development files.&lt;br /&gt;
&lt;br /&gt;
7. Next, go to &#039;&#039;&#039;Linker&#039;&#039;&#039; → &#039;&#039;&#039;General&#039;&#039;&#039; → &#039;&#039;&#039;Additional Library Directories&#039;&#039;&#039; → Click &#039;&#039;&#039;Edit&#039;&#039;&#039; and add the following paths:&lt;br /&gt;
 C:\gstreamer\1.0\msvc_x86_64\lib&lt;br /&gt;
 C:\gstreamer\1.0\msvc_x86_64\lib\gstreamer-1.0&lt;br /&gt;
 C:\gstreamer\1.0\msvc_x86_64\bin&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039; The directories may vary depending on where you installed the GStreamer runtime and development files.&lt;br /&gt;
&lt;br /&gt;
8. Next, go to &#039;&#039;&#039;Linker&#039;&#039;&#039; → &#039;&#039;&#039;Input&#039;&#039;&#039; → &#039;&#039;&#039;Additional Dependencies&#039;&#039;&#039; → Click &#039;&#039;&#039;Edit&#039;&#039;&#039; and add the following libraries:&lt;br /&gt;
 gobject-2.0.lib&lt;br /&gt;
 glib-2.0.lib&lt;br /&gt;
 gstreamer-1.0.lib&lt;br /&gt;
 kernel32.lib&lt;br /&gt;
 user32.lib&lt;br /&gt;
 gdi32.lib&lt;br /&gt;
 winspool.lib&lt;br /&gt;
 comdlg32.lib&lt;br /&gt;
 advapi32.lib&lt;br /&gt;
 shell32.lib&lt;br /&gt;
 ole32.lib&lt;br /&gt;
 oleaut32.lib&lt;br /&gt;
 uuid.lib&lt;br /&gt;
 odbc32.lib&lt;br /&gt;
 odbccp32.lib&lt;br /&gt;
 %(AdditionalDependencies)&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039; The directories may vary depending on where you installed the GStreamer runtime and development files.&lt;br /&gt;
&lt;br /&gt;
9. After setting up the Libraries and Dependencies, its time to build the project.&lt;br /&gt;
&lt;br /&gt;
10. In the toolbar, select Debut, then select either x32 or x64, then click the play button.&lt;br /&gt;
&lt;br /&gt;
11. After clicking, the project should build and now you have your first Gstreamer Project!&lt;br /&gt;
&lt;br /&gt;
= References =&lt;br /&gt;
* [https://gstreamer.freedesktop.org/documentation/application-development/introduction/gstreamer.html?gi-language=c GStreamer Introduction]&lt;br /&gt;
* [https://gstreamer.freedesktop.org/documentation/installing/building-from-source-using-meson.html?gi-language=c#basic-meson-and-ninja-usage Building GStreamer from Source (Meson &amp;amp; Ninja)]&lt;br /&gt;
* [https://gitlab.freedesktop.org/gstreamer/gstreamer/-/blob/main/README.md README.md - GStreamer GitLab]&lt;br /&gt;
* [https://developer.ridgerun.com/wiki/index.php/GStreamer_Daemon GStreamer Daemon - RidgeRun]&lt;br /&gt;
* [https://developer.ridgerun.com/wiki/index.php/GStreamer_Daemon_-_Building_GStreamer_Daemon Building GStreamer Daemon - RidgeRun]&lt;br /&gt;
* [https://developer.ridgerun.com/wiki/index.php?title=GstInterpipe GstInterpipe - RidgeRun Wiki]&lt;br /&gt;
* [https://stackoverflow.com/a/50756228 Stack Overflow Answer - GStreamer]&lt;br /&gt;
* [https://stackoverflow.com/a/73301549 Stack Overflow Answer - GStreamer]&lt;br /&gt;
&lt;br /&gt;
= Frequently Asked Questions (FAQ) =&lt;br /&gt;
&lt;br /&gt;
* What is GStreamer?&lt;br /&gt;
**GStreamer is an open-source multimedia framework used for creating media-handling components such as audio and video processing applications. It is widely used in media players, streaming applications, and multimedia frameworks.&lt;br /&gt;
* How do I install GStreamer on Linux?&lt;br /&gt;
**On Ubuntu/Debian, use the following command:&lt;br /&gt;
 #Ubuntu&lt;br /&gt;
 apt-get install libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev libgstreamer-plugins-bad1.0-dev gstreamer1.0-plugins-base gstreamer1.0-plugins-good gstreamer1.0-plugins-bad gstreamer1.0-plugins-ugly gstreamer1.0-libav gstreamer1.0-tools gstreamer1.0-x gstreamer1.0-alsa gstreamer1.0-gl gstreamer1.0-gtk3 gstreamer1.0-qt5 gstreamer1.0-pulseaudio&lt;br /&gt;
 &lt;br /&gt;
 #Debian&lt;br /&gt;
 dnf install gstreamer1-devel gstreamer1-plugins-base-tools gstreamer1-doc gstreamer1-plugins-base-devel gstreamer1-plugins-good gstreamer1-plugins-good-extras gstreamer1-plugins-ugly gstreamer1-plugins-bad-free gstreamer1-plugins-bad-free-devel gstreamer1-plugins-bad-free-extras&lt;br /&gt;
&lt;br /&gt;
* How do I install GStreamer on Windows?&lt;br /&gt;
**Download the GStreamer Runtime and Development Installer from the official website: [https://gstreamer.freedesktop.org/download/#windows GStreamer Download]&lt;br /&gt;
&lt;br /&gt;
{{Footer}}&lt;/div&gt;</summary>
		<author><name>Sonni</name></author>
	</entry>
	<entry>
		<id>https://developerwiki.proventusnova.com/index.php?title=GStreamer_Development&amp;diff=95</id>
		<title>GStreamer Development</title>
		<link rel="alternate" type="text/html" href="https://developerwiki.proventusnova.com/index.php?title=GStreamer_Development&amp;diff=95"/>
		<updated>2025-03-25T02:04:10Z</updated>

		<summary type="html">&lt;p&gt;Sonni: /* 🏗 Need a Solution for Your Project? */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;width:100%; background-color:#f0f0f0;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Authors:&#039;&#039;&#039;&lt;br /&gt;
Sonni Lorenz F. Cubero (sonni.cubero@proventusnova.com)&lt;br /&gt;
&lt;br /&gt;
CJ Mirafuentes (cj.mirafuentes@proventusnova.com)&lt;br /&gt;
|| &#039;&#039;&#039;Date:&#039;&#039;&#039; March 11, 2025&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;!---NOTE!!!: change the date every time this is published---&amp;gt;&lt;br /&gt;
== About GStreamer ==  &lt;br /&gt;
&lt;br /&gt;
GStreamer is a framework for creating streaming media applications. The fundamental design comes from the video pipeline at Oregon Graduate Institute, as well as some ideas from DirectShow. Available across multiple platforms and licensed under the LGPL, GStreamer is suitable for both free and proprietary use, running on Linux, Windows, macOS, Android, and iOS.  &lt;br /&gt;
&lt;br /&gt;
The framework is based on plugins that provide various codecs and other functionalities. These plugins can be linked and arranged in a pipeline, which defines the flow of data. Pipelines can also be edited using a GUI editor and saved as XML, allowing for easy creation of reusable pipeline libraries.  &lt;br /&gt;
&lt;br /&gt;
=== GStreamer Components ===  &lt;br /&gt;
GStreamer is packaged into multiple components:  &lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;gstreamer&#039;&#039;&#039;: The core package  &lt;br /&gt;
* &#039;&#039;&#039;gst-plugins-base&#039;&#039;&#039;: An essential exemplary set of elements  &lt;br /&gt;
* &#039;&#039;&#039;gst-plugins-good&#039;&#039;&#039;: A set of good-quality plugins under LGPL  &lt;br /&gt;
* &#039;&#039;&#039;gst-plugins-ugly&#039;&#039;&#039;: A set of good-quality plugins that might pose distribution problems  &lt;br /&gt;
* &#039;&#039;&#039;gst-plugins-bad&#039;&#039;&#039;: A set of plugins that need more quality improvements  &lt;br /&gt;
* &#039;&#039;&#039;gst-libav&#039;&#039;&#039;: A set of plugins that wrap libav for decoding and encoding  &lt;br /&gt;
* Other additional packages  &lt;br /&gt;
&lt;br /&gt;
== Building GStreamer ==  &lt;br /&gt;
&lt;br /&gt;
This setup is recommended for developers who want to work on the GStreamer code itself, as well as for application developers who need to test features that have not yet been released.&lt;br /&gt;
&lt;br /&gt;
=== Prerequisites ===  &lt;br /&gt;
The following dependencies must be installed on the Linux system:  &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Compiler&#039;&#039;&#039;  &lt;br /&gt;
* GCC, Clang  &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Package Manager&#039;&#039;&#039;&lt;br /&gt;
Any one of the following will do:&lt;br /&gt;
* apt, dnf, snap, etc.  &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Packages/Dependencies&#039;&#039;&#039;  &lt;br /&gt;
* meson, ninja, flex, bison, gitlint  &lt;br /&gt;
&lt;br /&gt;
The GStreamer build environment was emulated via VMware Workstation 17 Pro with the following specifications:  &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
| &#039;&#039;&#039;Operating System&#039;&#039;&#039;: || Ubuntu 24.04.1 LTS&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Processors&#039;&#039;&#039;: || Number of processors: 4 &lt;br /&gt;
Number of cores per processor: 1&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Memory&#039;&#039;&#039;: || 8GB&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Storage&#039;&#039;&#039;: || 30GB (Expandable)&lt;br /&gt;
|} &lt;br /&gt;
&lt;br /&gt;
=== Getting the Source Code ===  &lt;br /&gt;
To build GStreamer, first, secure the latest copy of the source code:  &lt;br /&gt;
* GitLab: [https://gitlab.freedesktop.org/gstreamer/gstreamer GStreamer Repository]  &lt;br /&gt;
&lt;br /&gt;
After obtaining the source, ensure that the GStreamer version is compatible with the installed Meson version. Switch to the appropriate branch based on your Meson version.  &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ GStreamer and Meson Version Compatibility&lt;br /&gt;
! GStreamer Version !! Meson Version  &lt;br /&gt;
|-&lt;br /&gt;
| 1.25 (main branch to date) || &amp;gt;= 1.24  &lt;br /&gt;
|-&lt;br /&gt;
| 1.24 || &amp;gt;= 1.1  &lt;br /&gt;
|-&lt;br /&gt;
| 1.22 || &amp;gt;= 0.62  &lt;br /&gt;
|-&lt;br /&gt;
| 1.20 || &amp;gt;= 0.59  &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039; To verify which Meson version is compatible with GStreamer, check the &#039;&#039;&#039;meson.build&#039;&#039;&#039; file.  &lt;br /&gt;
&lt;br /&gt;
=== Updating Subprojects ===  &lt;br /&gt;
GStreamer modules are typically found under the &#039;&#039;&#039;subprojects/&#039;&#039;&#039; directory. These modules are not updated automatically and must be updated manually.  &lt;br /&gt;
&lt;br /&gt;
To update subprojects, execute the following command:  &lt;br /&gt;
&lt;br /&gt;
 meson subprojects update&lt;br /&gt;
&lt;br /&gt;
=== Setting Up the Build with Meson ===  &lt;br /&gt;
To set up GStreamer and its modules, execute the following command:  &lt;br /&gt;
&lt;br /&gt;
 meson setup &amp;lt;build_directory&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039; You can specify any directory name for &#039;&#039;&#039;&amp;lt;build_directory&amp;gt;&#039;&#039;&#039;. The command will automatically create the directory if it does not exist.  &lt;br /&gt;
&lt;br /&gt;
=== Building GStreamer and Its Modules ===  &lt;br /&gt;
Once Meson has finished setting up the module, execute either of the following commands to build:  &lt;br /&gt;
&lt;br /&gt;
 ninja -C &amp;lt;build_directory&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Or  &lt;br /&gt;
&lt;br /&gt;
 meson compile -C &amp;lt;build_directory&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Testing the GStreamer Build ==  &lt;br /&gt;
To test all components, run the following command:  &lt;br /&gt;
&lt;br /&gt;
 meson test -C &amp;lt;build_directory&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
To test a specific component, use the following command:  &lt;br /&gt;
&lt;br /&gt;
 meson test -C &amp;lt;build_directory&amp;gt; --suite gst-plugins-base&lt;br /&gt;
&lt;br /&gt;
== Frequently Asked Questions (FAQ) ==&lt;br /&gt;
&lt;br /&gt;
*What is GStreamer used for?&lt;br /&gt;
**GStreamer is used to create streaming media applications such as media players, video editing software, and real-time multimedia processing tools. It supports multiple platforms and a wide range of codecs.&lt;br /&gt;
&lt;br /&gt;
*How can I install GStreamer on my system?&lt;br /&gt;
**For Linux, you can install GStreamer using your system&#039;s package manager.&lt;br /&gt;
***For Ubuntu/Debian: &#039;&#039;&#039;&#039;&#039;sudo apt install gstreamer1.0*&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
***For Fedora: &#039;&#039;&#039;&#039;&#039;sudo dnf install gstreamer1.0*&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
**For windows, download pre-built binaries from the official GStreamer website. [https://gstreamer.freedesktop.org/download/#windows Windows GStreamer].&lt;br /&gt;
&lt;br /&gt;
*How do I check which plugins are installed?&lt;br /&gt;
**You can list installed plugins by running: &#039;&#039;&#039;&#039;&#039;gst-inspect-1.0 | less&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
*Can I use GStreamer for live streaming?&lt;br /&gt;
**Yes, GStreamer supports live streaming through plugins such as RTSP, RTP, and WebRTC.&lt;br /&gt;
&lt;br /&gt;
*How do I troubleshoot pipeline errors?&lt;br /&gt;
**Use the following command to debug issues: &#039;&#039;&#039;&#039;&#039;GST_DEBUG=4 gst-launch-1.0 &amp;lt;pipeline&amp;gt;&#039;&#039;&#039;&#039;&#039;, this provides detailed debugging output.&lt;br /&gt;
&lt;br /&gt;
{{Footer}}&lt;/div&gt;</summary>
		<author><name>Sonni</name></author>
	</entry>
	<entry>
		<id>https://developerwiki.proventusnova.com/index.php?title=How_to_create_a_custom_yocto_meta_layer&amp;diff=94</id>
		<title>How to create a custom yocto meta layer</title>
		<link rel="alternate" type="text/html" href="https://developerwiki.proventusnova.com/index.php?title=How_to_create_a_custom_yocto_meta_layer&amp;diff=94"/>
		<updated>2025-03-25T02:03:21Z</updated>

		<summary type="html">&lt;p&gt;Sonni: /* 🏗 Need a Solution for Your Project? */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Introduction=&lt;br /&gt;
&lt;br /&gt;
This wiki will provide a detailed guide on how to create a custom Yocto meta-layer.&lt;br /&gt;
&amp;lt;!--- COMMENTED THIS OUT SINCE THIS PAGE ONLY SHOWS HOW TO CREATE A CUSTOM LAYER, NOT CREATE A YOCTO IMAGE&lt;br /&gt;
=Pre-requisites=&lt;br /&gt;
1. The host machine must have the following requirements:&lt;br /&gt;
*At least 90GB of space&lt;br /&gt;
*At least 8GB RAM&lt;br /&gt;
*Host OS must be a supported Linux distribution. (To see supported Linux Distributions, click [https://docs.yoctoproject.org/ref-manual/system-requirements.html#supported-linux-distributions supported distributions])&lt;br /&gt;
&lt;br /&gt;
2. The following packages must be present in the host machine:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
apt install build-essential chrpath cpio debianutils diffstat file gawk gcc git iputils-ping libacl1 liblz4-tool locales python3 python3-git python3-jinja2 python3-pexpect python3-pip python3-subunit socat texinfo unzip wget xz-utils zstd&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
3. Get the latest copy of the [https://github.com/yoctoproject/poky Poky repository]. &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
git clone git://git.yoctoproject.org/poky&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
---&amp;gt;&lt;br /&gt;
=Create Base Meta-Layer=&lt;br /&gt;
&lt;br /&gt;
This section contains steps to create the base custom meta-layer. &amp;lt;br&amp;gt;&lt;br /&gt;
Creating a layer can be done manually or automatically via bitbake. &amp;lt;br&amp;gt;&lt;br /&gt;
After completion, the custom base meta-layer will contain the following parts:&lt;br /&gt;
&lt;br /&gt;
* Custom layer configuration&lt;br /&gt;
* Custom distro configuration&lt;br /&gt;
* Custom machine&lt;br /&gt;
* Custom config template files&lt;br /&gt;
* Custom image recipe&lt;br /&gt;
&lt;br /&gt;
==Manually create layer==&lt;br /&gt;
&lt;br /&gt;
===Step 1. Add base layer.conf file===&lt;br /&gt;
&lt;br /&gt;
The layer configuration file provides Yocto with the configuration for the custom meta-layer.&lt;br /&gt;
It shall be stored in a directory called &#039;&#039;&#039;conf&#039;&#039;&#039; inside the base meta-layer directory, and it shall be named layer.conf.&lt;br /&gt;
According to the [https://docs.yoctoproject.org/dev/dev-manual/layers.html Yocto documentation] it is recommended to start from an existing layer.conf file from a different meta-layer and change it according to the custom requirements.&lt;br /&gt;
&lt;br /&gt;
For instance, here is an example of how the directory structure should look after creating the layer.conf file.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
meta-proventusnova/&lt;br /&gt;
├── conf&lt;br /&gt;
│   └── layer.conf&lt;br /&gt;
└── README.md&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
An example layer.conf file based on [https://github.com/OE4T/tegra-demo-distro/blob/scarthgap-l4t-r35.x/layers/meta-tegrademo/conf/layer.conf NVIDIA OE4T tegra_demo_distro] is shown in the following code snipped.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
BBPATH =. &amp;quot;${LAYERDIR}:&amp;quot;&lt;br /&gt;
BBFILES += &amp;quot;${LAYERDIR}/recipes-*/*/*.bb ${LAYERDIR}/recipes-*/*/*.bbappend&amp;quot;&lt;br /&gt;
BBFILES_DYNAMIC += &amp;quot;swupdate:${LAYERDIR}/dynamic-layers/meta-swupdate/recipes-*/*/*.bb \&lt;br /&gt;
                    swupdate:${LAYERDIR}/dynamic-layers/meta-swupdate/recipes-*/*/*.bbappend&amp;quot;&lt;br /&gt;
&lt;br /&gt;
BBFILE_COLLECTIONS += &amp;quot;proventusnova&amp;quot;&lt;br /&gt;
BBFILE_PATTERN_proventusnova = &amp;quot;^${LAYERDIR}/&amp;quot;&lt;br /&gt;
BBFILE_PRIORITY_proventusnova = &amp;quot;50&amp;quot;&lt;br /&gt;
&lt;br /&gt;
LAYERVERSION_proventusnova = &amp;quot;4&amp;quot;&lt;br /&gt;
LAYERSERIES_COMPAT_proventusnova = &amp;quot;scarthgap&amp;quot;&lt;br /&gt;
&lt;br /&gt;
# This is used by the tegra-distro-sanity bbclass&lt;br /&gt;
# to identify the distro layer directory during&lt;br /&gt;
# bblayers checks.&lt;br /&gt;
TD_DISTRO_LAYERDIR = &amp;quot;${LAYERDIR}&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Step 2. Add base distro config===&lt;br /&gt;
&lt;br /&gt;
In order to add the initial distro configuration, it is necessary to create distro configuration file inside the &#039;&#039;&#039;meta-layer/conf/distro&#039;&#039;&#039; directory.&lt;br /&gt;
&lt;br /&gt;
Here is an example of how the directory structure should look like:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
meta-proventusnova/&lt;br /&gt;
├── conf&lt;br /&gt;
│   ├── distro&lt;br /&gt;
│   │   └── proventusnova.conf&lt;br /&gt;
│   └── layer.conf&lt;br /&gt;
└── README.md&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The same as with the layer.conf, it is easier to start with an existing distro configuration file and modify it in order to fit the project requirements. For example, the following corresponds to a distro configuration file based on the [https://github.com/OE4T/tegra-demo-distro/blob/scarthgap-l4t-r35.x/layers/meta-tegrademo/conf/distro/tegrademo.conf NVIDIA tegra_demo_distro]:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
DISTRO = &amp;quot;proventusnova&amp;quot;&lt;br /&gt;
DISTRO_NAME = &amp;quot;ProventusNova Custom Distro&amp;quot;&lt;br /&gt;
DISTRO_VERSION_BASE = &amp;quot;1.0&amp;quot;&lt;br /&gt;
DISTRO_VERSION = &amp;quot;${DISTRO_VERSION_BASE}+snapshot-${METADATA_REVISION}&amp;quot;&lt;br /&gt;
DISTRO_CODENAME = &amp;quot;proventusnova&amp;quot;&lt;br /&gt;
SDK_VENDOR = &amp;quot;-proventusnova&amp;quot;&lt;br /&gt;
SDK_VERSION := &amp;quot;${@&#039;${DISTRO_VERSION}&#039;.replace(&#039;snapshot-${METADATA_REVISION}&#039;,&#039;snapshot&#039;)}&amp;quot;&lt;br /&gt;
SDK_VERSION[vardepvalue] = &amp;quot;${SDK_VERSION}&amp;quot;&lt;br /&gt;
&lt;br /&gt;
MAINTAINER = &amp;quot;ProventusNova team &amp;lt;support@proventusnova.com&amp;gt;&amp;quot;&lt;br /&gt;
&lt;br /&gt;
TARGET_VENDOR = &amp;quot;-proventusnova&amp;quot;&lt;br /&gt;
&lt;br /&gt;
# New ${DISTRO}-&amp;lt;version&amp;gt; setting for sanity checks.&lt;br /&gt;
# Increment version number (and the corresponding&lt;br /&gt;
# setting int the template bblayers.conf.sample file)&lt;br /&gt;
# each time the layer settings are changed.&lt;br /&gt;
REQUIRED_PROVENTUSNOVA_BBLAYERS_CONF_VERSION = &amp;quot;${DISTRO}-1&amp;quot;&lt;br /&gt;
&lt;br /&gt;
LOCALCONF_VERSION = &amp;quot;2&amp;quot;&lt;br /&gt;
&lt;br /&gt;
PROVENTUSNOVA_DEFAULT_DISTRO_FEATURES = &amp;quot;largefile opengl ptest multiarch wayland vulkan systemd pam virtualization usrmerge&amp;quot;&lt;br /&gt;
&lt;br /&gt;
DISTRO_FEATURES ?= &amp;quot;${DISTRO_FEATURES_DEFAULT} ${PROVENTUSNOVA_DEFAULT_DISTRO_FEATURES}&amp;quot;&lt;br /&gt;
&lt;br /&gt;
# Jetson platforms do not use linux-yocto, but for QEMU testing&lt;br /&gt;
# align with the poky distro.&lt;br /&gt;
PREFERRED_VERSION_linux-yocto ?= &amp;quot;5.19%&amp;quot;&lt;br /&gt;
PREFERRED_VERSION_linux-yocto-rt ?= &amp;quot;5.19%&amp;quot;&lt;br /&gt;
&lt;br /&gt;
SDK_NAME = &amp;quot;${DISTRO}-${TCLIBC}-${SDKMACHINE}-${IMAGE_BASENAME}-${TUNE_PKGARCH}-${MACHINE}&amp;quot;&lt;br /&gt;
SDKPATHINSTALL = &amp;quot;/opt/${DISTRO}/${SDK_VERSION}&amp;quot;&lt;br /&gt;
&lt;br /&gt;
TCLIBCAPPEND = &amp;quot;&amp;quot;&lt;br /&gt;
&lt;br /&gt;
PACKAGE_CLASSES ?= &amp;quot;package_rpm&amp;quot;&lt;br /&gt;
&lt;br /&gt;
SANITY_TESTED_DISTROS ?= &amp;quot; \&lt;br /&gt;
            ubuntu-20.04 \n \&lt;br /&gt;
            ubuntu-22.04 \n \&lt;br /&gt;
            ubuntu-24.04 \n \&lt;br /&gt;
            &amp;quot;&lt;br /&gt;
&lt;br /&gt;
# Most NVIDIA-supplied services expect systemd&lt;br /&gt;
INIT_MANAGER = &amp;quot;systemd&amp;quot;&lt;br /&gt;
&lt;br /&gt;
require conf/distro/include/no-static-libs.inc&lt;br /&gt;
require conf/distro/include/yocto-uninative.inc&lt;br /&gt;
require conf/distro/include/security_flags.inc&lt;br /&gt;
INHERIT += &amp;quot;uninative&amp;quot;&lt;br /&gt;
&lt;br /&gt;
LICENSE_FLAGS_ACCEPTED += &amp;quot;commercial_faad2 commercial_x264&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Step 3. Add base machine===&lt;br /&gt;
&lt;br /&gt;
This step might not be required, if there is already a machine that can be used from a different meta-layer.&lt;br /&gt;
However, it is still recommended to create a custom machine configuration based on that machine in order to keep better order of the machine used in the custom Yocto build.&lt;br /&gt;
&lt;br /&gt;
To create a custom machine, it is necessary to add a machine.conf file in the &#039;&#039;&#039;meta-layer/conf/machine&#039;&#039;&#039; directory.&lt;br /&gt;
For example, this is how the directory structure should look when adding a new machine to the custom meta-layer:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
meta-proventusnova/&lt;br /&gt;
├── conf&lt;br /&gt;
│   ├── distro&lt;br /&gt;
│   │   └── proventusnova.conf&lt;br /&gt;
│   ├── layer.conf&lt;br /&gt;
│   └── machine&lt;br /&gt;
│       └── proventusnova-jetson-orin-nx-16-devkit.conf&lt;br /&gt;
└── README.md&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
And, as a reference, here is a custom machine based on [https://github.com/OE4T/meta-tegra/blob/scarthgap/conf/machine/p3509-a02-p3767-0000.conf NVIDIA meta-tegra  p3509-a02-p3767-0000] machine.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
#@TYPE: Machine&lt;br /&gt;
#@NAME: Nvidia Jetson Orin NX 16GB (P3767-0000)&lt;br /&gt;
#@DESCRIPTION: Nvidia Jetson Orin NX 16GB module in P3509 carrier&lt;br /&gt;
&lt;br /&gt;
TEGRA_FLASHVAR_PINMUX_CONFIG ?= &amp;quot;tegra234-mb1-bct-pinmux-p3767-hdmi-a03.dtsi&amp;quot;&lt;br /&gt;
TEGRA_FLASHVAR_PMC_CONFIG ?= &amp;quot;tegra234-mb1-bct-padvoltage-p3767-hdmi-a03.dtsi&amp;quot;&lt;br /&gt;
TEGRA_PLUGIN_MANAGER_OVERLAYS ?= &amp;quot;tegra234-carveouts.dtbo tegra-optee.dtbo tegra234-p3768-0000+p3767-0000-dynamic.dtbo tegra234-dcb-p3767-0000-hdmi.dtbo&amp;quot;&lt;br /&gt;
TEGRA_DCE_OVERLAY ?= &amp;quot;tegra234-dcb-p3767-0000-hdmi.dtbo&amp;quot;&lt;br /&gt;
&lt;br /&gt;
require conf/machine/include/orin-nx.inc&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Step 4. Add initial config template files===&lt;br /&gt;
&lt;br /&gt;
Bitbake will require 2 configuration files for building an image:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;bblayers.conf&#039;&#039;&#039;: This file contains information about the location of the required meta-layers for the project.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;local.conf&#039;&#039;&#039;: This file contains general build configuration for bitbake. For instance, in this file it is possible to determine where to store downloads, cache and even which package management configuration to use.&lt;br /&gt;
&lt;br /&gt;
Now, in order to simplify the configuration of a custom Yocto build, it is possible to include template configuration files on the custom meta-layer. This practice is encouraged in order to increase build repeatability.&lt;br /&gt;
&lt;br /&gt;
These 2 files are generally created inside &#039;&#039;&#039;meta-layer/conf/templates/template-name&#039;&#039;&#039;.&lt;br /&gt;
For reference, this is how the directory structure would look like after the files are created:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
meta-proventusnova/&lt;br /&gt;
├── conf&lt;br /&gt;
│   ├── distro&lt;br /&gt;
│   │   └── proventusnova.conf&lt;br /&gt;
│   ├── layer.conf&lt;br /&gt;
│   ├── machine&lt;br /&gt;
│   │   └── proventusnova-jetson-orin-nx-16-devkit.conf&lt;br /&gt;
│   └── templates&lt;br /&gt;
│       └── proventusnova&lt;br /&gt;
│           ├── bblayers.conf.sample&lt;br /&gt;
│           └── local.conf.sample&lt;br /&gt;
└── README.md&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Here is an example of a custom bblayers.conf.sample file based on [https://github.com/OE4T/tegra-demo-distro/blob/scarthgap-l4t-r35.x/layers/meta-tegrademo/conf/templates/tegrademo/bblayers.conf.sample NVIDIA tegra-demo-distro]:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
# Version of layers configuration, specific to&lt;br /&gt;
# each defined distro in the repository.&lt;br /&gt;
# Format: ${DISTRO}-&amp;lt;version&amp;gt;&lt;br /&gt;
TD_BBLAYERS_CONF_VERSION = &amp;quot;proventusnova-1&amp;quot;&lt;br /&gt;
&lt;br /&gt;
BBPATH = &amp;quot;${TOPDIR}&amp;quot;&lt;br /&gt;
BBFILES ?= &amp;quot;&amp;quot;&lt;br /&gt;
&lt;br /&gt;
BBLAYERS ?= &amp;quot; \&lt;br /&gt;
  ##OEROOT##/meta \&lt;br /&gt;
  ##OEROOT##/../meta-tegra \&lt;br /&gt;
  ##OEROOT##/../meta-tegra-community \&lt;br /&gt;
  ##OEROOT##/../meta-virtualization \&lt;br /&gt;
  ##OEROOT##/../meta-openembedded/meta-oe \&lt;br /&gt;
  ##OEROOT##/../meta-openembedded/meta-python \&lt;br /&gt;
  ##OEROOT##/../meta-openembedded/meta-networking \&lt;br /&gt;
  ##OEROOT##/../meta-openembedded/meta-filesystems \&lt;br /&gt;
  &amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
And, this is an example of a custom local.conf.sample file based on [https://github.com/OE4T/tegra-demo-distro/blob/scarthgap-l4t-r35.x/layers/meta-tegrademo/conf/templates/tegrademo/local.conf.sample NVIDIA tegra-demo-distro]:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
#&lt;br /&gt;
# Machine Selection&lt;br /&gt;
#&lt;br /&gt;
MACHINE ??= &amp;quot;proventusnova-jetson-orin-nx-16-devkit.conf&amp;quot;&lt;br /&gt;
&lt;br /&gt;
#&lt;br /&gt;
# Where to place downloads&lt;br /&gt;
#&lt;br /&gt;
DL_DIR ?= &amp;quot;${TOPDIR}/../downloads&amp;quot;&lt;br /&gt;
&lt;br /&gt;
#&lt;br /&gt;
# Where to place shared-state files&lt;br /&gt;
#&lt;br /&gt;
SSTATE_DIR ?= &amp;quot;${TOPDIR}/../sstate-cache&amp;quot;&lt;br /&gt;
&lt;br /&gt;
#&lt;br /&gt;
# Where to place the build output&lt;br /&gt;
#&lt;br /&gt;
TMPDIR = &amp;quot;${TOPDIR}/tmp&amp;quot;&lt;br /&gt;
&lt;br /&gt;
#&lt;br /&gt;
# Default policy (distro) config&lt;br /&gt;
#&lt;br /&gt;
DISTRO ?= &amp;quot;proventusnova&amp;quot;&lt;br /&gt;
&lt;br /&gt;
#&lt;br /&gt;
# Package Management configuration&lt;br /&gt;
#&lt;br /&gt;
PACKAGE_CLASSES ?= &amp;quot;package_deb&amp;quot;&lt;br /&gt;
&lt;br /&gt;
#&lt;br /&gt;
# SDK target architecture&lt;br /&gt;
#&lt;br /&gt;
SDKMACHINE ?= &amp;quot;x86_64&amp;quot;&lt;br /&gt;
&lt;br /&gt;
#&lt;br /&gt;
# Extra image configuration defaults&lt;br /&gt;
#&lt;br /&gt;
EXTRA_IMAGE_FEATURES ?= &amp;quot;debug-tweaks&amp;quot;&lt;br /&gt;
&lt;br /&gt;
#&lt;br /&gt;
# Additional image features&lt;br /&gt;
#&lt;br /&gt;
USER_CLASSES ?= &amp;quot;buildstats&amp;quot;&lt;br /&gt;
&lt;br /&gt;
#&lt;br /&gt;
# Interactive shell configuration&lt;br /&gt;
#&lt;br /&gt;
PATCHRESOLVE = &amp;quot;noop&amp;quot;&lt;br /&gt;
&lt;br /&gt;
#&lt;br /&gt;
# Disk Space Monitoring during the build&lt;br /&gt;
#&lt;br /&gt;
BB_DISKMON_DIRS ??= &amp;quot;\&lt;br /&gt;
    STOPTASKS,${TMPDIR},1G,100K \&lt;br /&gt;
    STOPTASKS,${DL_DIR},1G,100K \&lt;br /&gt;
    STOPTASKS,${SSTATE_DIR},1G,100K \&lt;br /&gt;
    STOPTASKS,/tmp,100M,100K \&lt;br /&gt;
    HALT,${TMPDIR},100M,1K \&lt;br /&gt;
    HALT,${DL_DIR},100M,1K \&lt;br /&gt;
    HALT,${SSTATE_DIR},100M,1K \&lt;br /&gt;
    HALT,/tmp,10M,1K&amp;quot;&lt;br /&gt;
&lt;br /&gt;
#&lt;br /&gt;
# Qemu configuration&lt;br /&gt;
#&lt;br /&gt;
PACKAGECONFIG:append:pn-qemu-system-native = &amp;quot; sdl&amp;quot;&lt;br /&gt;
&lt;br /&gt;
# CONF_VERSION is increased each time build/conf/ changes incompatibly and is used to&lt;br /&gt;
# track the version of this file when it was generated.&lt;br /&gt;
CONF_VERSION = &amp;quot;2&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Step 5. Add base image recipe===&lt;br /&gt;
&lt;br /&gt;
In order to create a custom image, it is necessary to add a custom image recipe file.&lt;br /&gt;
This file is usually added inside the &#039;&#039;&#039;meta-layer/recipes-layer/images&#039;&#039;&#039; directory.&lt;br /&gt;
&lt;br /&gt;
For example:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
meta-proventusnova/&lt;br /&gt;
├── conf&lt;br /&gt;
│   ├── distro&lt;br /&gt;
│   │   └── proventusnova.conf&lt;br /&gt;
│   ├── layer.conf&lt;br /&gt;
│   ├── machine&lt;br /&gt;
│   │   └── proventusnova-jetson-orin-nx-16-devkit.conf&lt;br /&gt;
│   └── templates&lt;br /&gt;
│       ├── bblayers.conf.sample&lt;br /&gt;
│       └── local.conf.sample&lt;br /&gt;
├── README.md&lt;br /&gt;
└── recipes-proventusnova&lt;br /&gt;
    └── images&lt;br /&gt;
        └── proventusnova-image-base.bb&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Once again, a custom image recipe can be based on another image recipe. And, it can also import other image recipes in order to include their base configurations.&lt;br /&gt;
&lt;br /&gt;
As reference, the following image recipe was based on [https://github.com/OE4T/tegra-demo-distro/blob/scarthgap-l4t-r35.x/layers/meta-tegrademo/recipes-demo/images/demo-image-base.bb NVIDIA tegra-demo-distro demo-image-base recipe]:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
DESCRIPTION = &amp;quot;ProventusNova base image&amp;quot;&lt;br /&gt;
LICENSE = &amp;quot;CLOSED&amp;quot;&lt;br /&gt;
&lt;br /&gt;
inherit core-image&lt;br /&gt;
&lt;br /&gt;
IMAGE_FEATURES += &amp;quot;ssh-server-openssh debug-tweaks&amp;quot;&lt;br /&gt;
&lt;br /&gt;
CORE_IMAGE_BASE_INSTALL += &amp;quot;systemd&amp;quot;&lt;br /&gt;
TOOLCHAIN_HOST_TASK += &amp;quot;nativesdk-packagegroup-cuda-sdk-host&amp;quot;&lt;br /&gt;
&lt;br /&gt;
inherit nopackages&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Create layer via bitbake==&lt;br /&gt;
&lt;br /&gt;
===Step 1. Create custom layer===&lt;br /&gt;
&lt;br /&gt;
Run the following command to create a custom layer&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
bitbake-layers create-layer meta-proventusnova&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This should automatically create a meta-proventusnova folder with the following structure&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
meta-proventusnova/&lt;br /&gt;
├── conf&lt;br /&gt;
│   └──layer.conf&lt;br /&gt;
├── COPYING.MIT&lt;br /&gt;
├── recipes-example&lt;br /&gt;
│    └── example&lt;br /&gt;
│        └──example_0.1.bb&lt;br /&gt;
└── README.md&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Step 2. Add custom layer===&lt;br /&gt;
Next is to add the custom layer to the project.&amp;lt;br&amp;gt;&lt;br /&gt;
Run the following command to add the custom layer&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
bitbake-layers add-layer meta-proventusnova&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This should add the meta-proventusnova to the build/conf/bblayers.conf file or where you set the build directory.&lt;br /&gt;
&lt;br /&gt;
{{Footer}}&lt;/div&gt;</summary>
		<author><name>Sonni</name></author>
	</entry>
	<entry>
		<id>https://developerwiki.proventusnova.com/index.php?title=Embedded_Platforms&amp;diff=93</id>
		<title>Embedded Platforms</title>
		<link rel="alternate" type="text/html" href="https://developerwiki.proventusnova.com/index.php?title=Embedded_Platforms&amp;diff=93"/>
		<updated>2025-03-25T01:59:50Z</updated>

		<summary type="html">&lt;p&gt;Sonni: Update to use Footer template&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;width:100%; background-color:#f0f0f0;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Author:&#039;&#039;&#039;&lt;br /&gt;
Sonni Lorenz F. Cubero (sonni.cubero@proventusnova.com)&lt;br /&gt;
|| &#039;&#039;&#039;Date:&#039;&#039;&#039; March 13, 2025&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== About ==&lt;br /&gt;
This document provides an overview of various embedded platforms/systems commonly used in the development of embedded applications in the industry. It covers a wide range of popular processors, microcontrollers, and development boards, highlighting their key features, performance, characteristics, and suitable use cases. By comparing different platforms such as Raspberry Pi, NVIDIA Jetson, ESP32, Arduino, NXP i.MX Series, etc., this document aims to assist in choosing the most appropriate solution based on their project requirements.&lt;br /&gt;
&lt;br /&gt;
== Embedded Platforms/Systems Overview ==&lt;br /&gt;
&lt;br /&gt;
=== Raspberry Pi ===&lt;br /&gt;
A small low-cost computer the size of a credit card. A Raspberry Pi can be a desktop computer, robotics controller, server, game controller, etc. The Raspberry Pi is an excellent tool for many projects, from basic learning to advanced projects.&lt;br /&gt;
&lt;br /&gt;
==== Pros ====&lt;br /&gt;
* Affordable&lt;br /&gt;
* Versatile operating system&lt;br /&gt;
* Very active community&lt;br /&gt;
* Easy to learn&lt;br /&gt;
* Flexible&lt;br /&gt;
* User Imagination&lt;br /&gt;
&lt;br /&gt;
The Raspberry Pi stands out as a cost-effective solution. This makes it an excellent choice for hobbyists, educators, and professionals alike. Its versatility is its key strength, as it can be used for a wide range of applications. The Raspberry Pi community is also another major advantage. A wealth of resources, tutorials, and forums make troubleshooting straightforward.&lt;br /&gt;
&lt;br /&gt;
==== Cons ====&lt;br /&gt;
* Limited power&lt;br /&gt;
* Limited processing power&lt;br /&gt;
* Limited RAM&lt;br /&gt;
* Limited Storage&lt;br /&gt;
&lt;br /&gt;
Raspberry Pi comes with certain limitations. One of those is their limited power, which can restrict its ability to perform demanding tasks or multiple peripherals. Raspberry Pi also relies on external storage which offers slower speed and limited capacity. Although it is compatible with many open-source applications, some software may not be optimized or supported for the Raspberry Pi.&lt;br /&gt;
&lt;br /&gt;
==== Applications ====&lt;br /&gt;
* Prototyping&lt;br /&gt;
* Automation&lt;br /&gt;
&lt;br /&gt;
==== Models ====&lt;br /&gt;
* Raspberry Pi 5&lt;br /&gt;
* Raspberry Pi 500&lt;br /&gt;
* Raspberry Pi Pico&lt;br /&gt;
* Raspberry Pi Zero&lt;br /&gt;
&lt;br /&gt;
==== Specifications ====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ Raspberry Pi Models Comparison&lt;br /&gt;
! Model !! Raspberry Pi 5 !! Raspberry Pi 500 !! Raspberry Pi Pico !! Raspberry Pi Zero&lt;br /&gt;
|-&lt;br /&gt;
! CPU&lt;br /&gt;
| 2.4 GHz quad-core 64-bit ARM Cortex-A76 || 2.4 GHz quad-core 64-bit ARM Cortex-A76 || 133 MHz single-core ARM Cortex-M0+ || 1 GHz single-core ARM1176JZF-S (Zero 1), 1 GHz quad-core 64-bit ARM Cortex-A53 (Zero 2)&lt;br /&gt;
|-&lt;br /&gt;
! GPU&lt;br /&gt;
| 800 MHz VideoCore VII || 800 MHz VideoCore VII || N/A || 250 MHz VideoCore IV&lt;br /&gt;
|-&lt;br /&gt;
! APU&lt;br /&gt;
| N/A || N/A || N/A || N/A&lt;br /&gt;
|-&lt;br /&gt;
! RAM&lt;br /&gt;
| 2/4/6/16GB LPDDR4x-4267 SDRAM || 2/4/6/16GB LPDDR4x-4267 SDRAM || 264kB SRAM || 512MB LPDDR2 SDRAM&lt;br /&gt;
|-&lt;br /&gt;
! Display&lt;br /&gt;
| Up to Dual 4Kp60 micro HDMI with HDR support, 4Kp60 HEVC decoder || Up to Dual 4Kp60 micro HDMI with HDR support, 4Kp60 HEVC decoder || N/A || Up to 1080P mini HDMI&lt;br /&gt;
|-&lt;br /&gt;
! Ports&lt;br /&gt;
| 2x USB 3.0, 2x USB 2.0, Gigabit Ethernet, PCIe Port || 2x USB 3.0, 2x USB 2.0, Gigabit Ethernet, PCIe Port || Micro-USB GPIO pins || Micro USB On-The-Go (OTG)&lt;br /&gt;
|-&lt;br /&gt;
! Storage options&lt;br /&gt;
| eMMC, MicroSD Card || eMMC, MicroSD Card || Onboard 2MB flash memory || MicroSD Card&lt;br /&gt;
|-&lt;br /&gt;
! Network&lt;br /&gt;
| Wi-Fi, BT 5.0, Gigabit Ethernet || Wi-Fi, BT 5.0, Gigabit Ethernet || N/A || Wi-Fi&lt;br /&gt;
|-&lt;br /&gt;
! Power&lt;br /&gt;
| 5V/5A DC power via USB-C || 5V/5A DC power via USB-C || 5V via Micro-USB || 5V via Micro-USB&lt;br /&gt;
|-&lt;br /&gt;
! OS Support&lt;br /&gt;
| Raspberry Pi OS, Ubuntu, Apertis, RISC OS, Ultramarine Linux, Alpine Linux, Other custom Linux distros (e.g. Yocto) || Raspberry Pi OS, Ubuntu, Apertis, RISC OS, Ultramarine Linux, Alpine Linux, Other custom Linux distros (e.g. Yocto) || MicroPython, CircuitPython || Raspberry Pi OS, RISC OS, Alpine Linux, Other custom Linux distros (e.g. Yocto)&lt;br /&gt;
|-&lt;br /&gt;
! Price Range&lt;br /&gt;
| $50-$120 || $120-$150 || $4-$7 || $5-$15&lt;br /&gt;
|-&lt;br /&gt;
! Documentation and Source Code&lt;br /&gt;
| Documentation: [https://www.raspberrypi.com/documentation/ Raspberry Pi Documentation],&lt;br /&gt;
[https://www.raspberrypi.com/documentation/computers/raspberry-pi.html Raspberry Pi Hardware Documentation]&lt;br /&gt;
&lt;br /&gt;
Github: [https://github.com/raspberrypi Raspberry Pi]&lt;br /&gt;
&lt;br /&gt;
| Documentation:[https://www.raspberrypi.com/documentation/ Raspberry Pi Documentation],&lt;br /&gt;
[https://www.raspberrypi.com/documentation/computers/raspberry-pi.html Raspberry Pi Hardware Documentation]&lt;br /&gt;
&lt;br /&gt;
Github: [https://github.com/raspberrypi Raspberry Pi] &lt;br /&gt;
&lt;br /&gt;
| Documentation: [https://www.raspberrypi.com/documentation/microcontrollers/pico-series.html#documentation Pico-series Microcontrollers - Raspberry Pi Documentation],&lt;br /&gt;
&lt;br /&gt;
Github: [https://github.com/raspberrypi/pico-examples Raspberry Pi Pico Examples]&lt;br /&gt;
&lt;br /&gt;
| Documentation: [https://www.raspberrypi.com/documentation/computers/raspberry-pi.html#raspberry-pi-zero Raspberry Pi hardware - Raspberry Pi Documentation],&lt;br /&gt;
&lt;br /&gt;
Github: [https://github.com/dwelch67/raspberrypi-zero dwelch67/raspberrypi-zero: Raspberry Pi Zero baremetal examples](for Zero 1),&lt;br /&gt;
&lt;br /&gt;
[https://github.com/Qengineering/RPi_64-bit_Zero-2-image Qengineering/RPi_64-bit_Zero-2-image: Raspberry Pi Zero 2 W 64-bit OS image with OpenCV, TensorFlow Lite and ncnn Framework.](for Zero 2)&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Why is Raspberry Pi Popular? ====&lt;br /&gt;
Raspberry Pi is popular because it is a small, affordable, single-board computer that is easy to use. It is also versatile for a wide range of applications and the community is very active. With its robust hardware capabilities, including support for multiple operating systems, it has become a favorite among professionals and hobby enthusiasts.&lt;br /&gt;
&lt;br /&gt;
=== NVIDIA Jetson ===&lt;br /&gt;
NVIDIA Jetson is the leading platform for robotics and embedded edge AI applications. A series of embedded computing boards designed specifically for AI and machine learning applications. NVIDIA Jetson offers several models to different needs, from low-power to high-performance applications.&lt;br /&gt;
&lt;br /&gt;
==== Pros ====&lt;br /&gt;
* Powerful GPU and CPU&lt;br /&gt;
* Versatile applications&lt;br /&gt;
* Open to Developers&lt;br /&gt;
* Wide range of options&lt;br /&gt;
&lt;br /&gt;
One of the key strengths of NVIDIA Jetson is its GPU, designed to accelerate deep learning, computer vision, and AI. This makes it an excellent choice for robotics, IoT, and autonomous systems. It is also supported by popular AI frameworks such as TensorFlow, PyTorch, and OpenCV. NVIDIA Jetson has rich software support from NVIDIA’s JetPack SDK, which simplifies development and deployment.&lt;br /&gt;
&lt;br /&gt;
==== Cons ====&lt;br /&gt;
* Expensive&lt;br /&gt;
* Limited GPIO&lt;br /&gt;
* Can get hot&lt;br /&gt;
&lt;br /&gt;
NVIDIA Jetson tends to be on the more expensive side than other single-board computers. Devices under NVIDIA Jetson can consume more power, which may not be ideal for battery-powered applications or energy-efficient applications. It requires a steep learning curve to set up and work with the hardware and software tools.&lt;br /&gt;
&lt;br /&gt;
==== Applications ====&lt;br /&gt;
* Robotics&lt;br /&gt;
* Edge AI&lt;br /&gt;
&lt;br /&gt;
==== Models ====&lt;br /&gt;
* Jetson AGX Orin series&lt;br /&gt;
* Jetson Orin NX series&lt;br /&gt;
* Jetson Orin Nano series&lt;br /&gt;
* Jetson AGX Xavier series&lt;br /&gt;
* Jetson Xavier NX series&lt;br /&gt;
* Jetson TX2 series&lt;br /&gt;
* Jetson Nano&lt;br /&gt;
&lt;br /&gt;
==== Specifications ====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ NVIDIA Jetson Models Comparison&lt;br /&gt;
! Model !! Jetson AGX Orin Series !! Jetson Orin NX Series !! Jetson Orin Nano Series !! Jetson AGX Xavier Series !! Jetson Xavier NX Series !! Jetson TX2 Series !! Jetson Nano&lt;br /&gt;
|-&lt;br /&gt;
! CPU&lt;br /&gt;
| 2.0/2.2 GHz 12-core NVIDIA Arm Cortex A78AE v8.2 64-bit CPU 3MB L2 + 6MB L3 || 2.0 GHz 8-core NVIDIA Arm Cortex A78AE v8.2 64-bit CPU 2MB L2 + 4MB L3, 2.0 6-core NVIDIA Arm Cortex A78AE v8.2 64-bit CPU 2MB L2 + 4MB L3 || 1.7 GHz 6-core Arm Cortex-A78AE v8.2 64-bit CPU 1.5MB L2 + 4MB L3 || 2.0/2.2 GHz 8-core NVIDIA Carmel Armv8.2 64-bit CPU 8MB L2 + 4MB L3 || 1.9 GHz 6-core NVIDIA Carmel Arm v8.2 64-bit CPU 6MB L2 + 4MB L3 || 1.95/2.2 GHz Dual-Core NVIDIA Denver 2 64-Bit CPU, 1.92/2 GHz Quad-Core Arm Cortex-A57 MPCore processor || 1.43 GHz Quad-Core Arm Cortex-A57 MPCore processor&lt;br /&gt;
|-&lt;br /&gt;
! GPU&lt;br /&gt;
| 200-275 TOPS, NVIDIA Ampere architecture GPU with up to 64 Tensor Cores || 117-157 TOPS, NVIDIA Ampere architecture GPU with up to 32 Tensor Cores || 34-67 TOPS, NVIDIA Ampere architecture GPU with up to 32 Tensor Cores || 30-32 TOPS, NVIDIA Volta architecture GPU with 64 Tensor Cores || 21 TOPS 1100 MHz 384-core NVIDIA Volta architecture GPU with 48 Tensor Cores || 1.26-1.33 TFLOPS, NVIDIA Pascal architecture GPU || 472 GFLOPS 921 MHz 128-core NVIDIA Maxwell architecture GPU&lt;br /&gt;
|-&lt;br /&gt;
! APU&lt;br /&gt;
| Integrated AI Accelerator (NVIDIA Tensor Cores) || Integrated AI Accelerator (NVIDIA Tensor Cores) || Integrated AI Accelerator (NVIDIA Tensor Cores) || Integrated AI Accelerator (NVIDIA Tensor Cores) || Integrated AI Accelerator (Tensor Cores) || Integrated AI Accelerator (NVIDIA Pascal GPU) || Integrated AI Accelerator (Maxwell GPU)&lt;br /&gt;
|-&lt;br /&gt;
! RAM&lt;br /&gt;
| 32/64GB 256-bit LPDDR5 || 8/16GB 128-bit LPDDR5 || 4GB 64-bit LPDDR5, 8GB 128-bit LPDDR5 || 32/64GB 256-bit LPDDR4x || 8/16GB 128-bit LPDDR4x || 4/8GB 128-bit LPDDR4 || 4GB 64-bit LPDDR4&lt;br /&gt;
|-&lt;br /&gt;
! Display&lt;br /&gt;
| Up to 8K video output, dual 4K || Up to 4K video output || Up to 4K video output || Up to dual 4K video output || Up to 4K video output, Dual 4K displays || Up to 1080p video output || Up to 1080P video output&lt;br /&gt;
|-&lt;br /&gt;
! Ports&lt;br /&gt;
| 3x USB 3.2 Gen2, 4x USB 2.0, 2x PCIe Gen 4 || 3x USB 3.2 Gen2, 3x USB 2.0, 1x PCIe Gen 4, Gigabit Ethernet || 3x USB 3.2 Gen2, 3x USB 2.0, 1x PCIe Gen 4, Gigabit Ethernet || 3x USB 3.2 Gen2, 4x USB 2.0, 1x PCIe Gen 3 || 1x USB3.2 Gen2, 3X USB 2.0 || 3x USB 3.0, 3x USB 2.0, 1x USB 3.0, 3x USB 2.0 || 1x USB 3.0, 3x USB 2.0&lt;br /&gt;
|-&lt;br /&gt;
! Storage options&lt;br /&gt;
| 32/64GB eMMC 5.1, M.2 NVMe || NVMe (supports external NVMe) || NVMe (supports external NVMe) || 32/64 GB eMMC 5.1 || 16GB eMMC 5.1 || 16/32GB eMMC 5.2 || 16GB eMMC 5.1&lt;br /&gt;
|-&lt;br /&gt;
! Network&lt;br /&gt;
| Wi-Fi 6, BT 5.0 || Wi-Fi, BT 5.0, Gigabit Ethernet || Wi-Fi, BT 5.0, Gigabit Ethernet || Wi-Fi, BT 5.0, Gigabit Ethernet || Wi-Fi, BT 5.0, Gigabit Ethernet || Wi-Fi, BT 4.2, Gigabit Ethernet || Gigabit Ethernet&lt;br /&gt;
|-&lt;br /&gt;
! Power&lt;br /&gt;
| 15W-75W || 10W-40W || 10W-30W || 20W-40W || 10W-20W || 7.5W-20W || 5W-10W&lt;br /&gt;
|-&lt;br /&gt;
! OS Support&lt;br /&gt;
| NVIDIA Jetpack SDK, Ubuntu, Other custom Linux distros (e.g. Yocto) || NVIDIA Jetpack SDK, Ubuntu, Other custom Linux distros (e.g. Yocto) || NVIDIA Jetpack SDK, Ubuntu, Other custom Linux distros (e.g. Yocto) || NVIDIA Jetpack SDK, Ubuntu, Other custom Linux distros (e.g. Yocto) || NVIDIA Jetpack SDK, Ubuntu, Other custom Linux distros (e.g. Yocto) || NVIDIA Jetpack SDK, Ubuntu, Other custom Linux distros (e.g. Yocto) || NVIDIA Jetpack SDK, Ubuntu, Other custom Linux distros (e.g. Yocto)&lt;br /&gt;
|-&lt;br /&gt;
! Price Range&lt;br /&gt;
| $599-$1,100 || $199-$399 || $99-$199 || $699-$899 || $399-$599 || $300-$600 || $59-$99&lt;br /&gt;
|-&lt;br /&gt;
! Documentation and Source Code&lt;br /&gt;
&lt;br /&gt;
| Documentation: [https://developer.nvidia.com/embedded/learn/jetson-agx-orin-devkit-user-guide/index.html Documentation: Jetson AGX Orin Developer Kit User Guide] &lt;br /&gt;
&lt;br /&gt;
| Documentation: [https://docs.nvidia.com/jetson/archives/r35.3.1/DeveloperGuide/text/HR/JetsonModuleAdaptationAndBringUp/JetsonOrinNxNanoSeries.html Documentation: Jetson Orin NX and Nano Series — Jetson Linux Developer Guide documentation] &lt;br /&gt;
&lt;br /&gt;
| Documentation: [https://docs.nvidia.com/jetson/archives/r35.3.1/DeveloperGuide/text/HR/JetsonModuleAdaptationAndBringUp/JetsonOrinNxNanoSeries.html Documentation: Jetson Orin NX and Nano Series — Jetson Linux Developer Guide documentation] &lt;br /&gt;
&lt;br /&gt;
| Documentation: [https://docs.nvidia.com/jetson/archives/r35.1/DeveloperGuide/text/SO/JetsonAgxXavierSeries.html Documentation: Jetson AGX Xavier Series — Jetson Linux Developer Guide]&lt;br /&gt;
&lt;br /&gt;
[https://developer.download.nvidia.com/assets/embedded/secure/jetson/xavier/docs/nv_jetson_agx_xavier_developer_kit_user_guide.pdf?__token__=exp=1736824216~hmac=0dd58c222c12044ba22a5eca3603e275081f6c46b808376a8c4ce6f244a83489&amp;amp;t=eyJscyI6ImdzZW8iLCJsc2QiOiJodHRwczovL3d3dy5nb29nbGUuY29tLyJ9 Jetson AGX Xavier Developer Kit] &lt;br /&gt;
&lt;br /&gt;
| Documentation: [https://docs.nvidia.com/jetson/archives/r35.1/DeveloperGuide/text/SO/JetsonXavierNxSeries.html Jetson Xavier NX Series — Jetson Linux Developer Guide]&lt;br /&gt;
&lt;br /&gt;
| Documentation: [https://developer.download.nvidia.com/assets/embedded/secure/jetson/TX2/docs/nv_jetson_tx2_developer_kit_user_guide.pdf?__token__=exp=1736824301~hmac=8bad2bcdc2d2cac0171768a6bd8c3519ffdae23678660ed09d681af48d4b921b&amp;amp;t=eyJscyI6ImdzZW8iLCJsc2QiOiJodHRwczovL3d3dy5nb29nbGUuY29tLyJ9 Jetson TX2 Developer Kit]&lt;br /&gt;
&lt;br /&gt;
| Documentation: [https://developer.download.nvidia.com/assets/embedded/secure/jetson/Nano/docs/NV_Jetson_Nano_Developer_Kit_User_Guide.pdf?__token__=exp=1736824305~hmac=cb82b2840ab317d9ffd0595eb2681c7d58b949c9bfa27718c82f5463815d30c7&amp;amp;t=eyJscyI6ImdzZW8iLCJsc2QiOiJodHRwczovL3d3dy5nb29nbGUuY29tLyJ9 Jetson Nano Developer Kit], &lt;br /&gt;
[https://developer.nvidia.com/embedded/learn/jetson-nano-2gb-devkit-user-guide Jetson Nano 2GB Developer Kit User Guide]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Why is NVIDIA Jetson Popular? ====&lt;br /&gt;
NVIDIA Jetson is popular because it provides high-performance AI computing in a compact, energy-efficient form factor. It is ideal for edge AI and robotics applications. From its entry-level to high-end modules, NVIDIA Jetson scales depending on the project&#039;s needs.&lt;br /&gt;
&lt;br /&gt;
=== ESP32 ===&lt;br /&gt;
Low-cost, low-power system-on-chip microcontrollers. A single 2.4 GHz WiFi and Bluetooth combo chip designed with TSMC low-power 40nm technology.&lt;br /&gt;
&lt;br /&gt;
==== Pros ====&lt;br /&gt;
* Low-cost&lt;br /&gt;
* Low-power&lt;br /&gt;
* IoT (Internet of Things)&lt;br /&gt;
&lt;br /&gt;
ESP32 is a powerful and versatile microcontroller because of its range of features, making it ideal for a variety of IoT applications. One of its biggest advantages is its low cost and low power consumption. It also has integrated Wi-Fi and Bluetooth, eliminating the need for external modules for wireless connectivity. ESP32 also has a strong developer community with support for ESP-IDF and is also compatible with Arduino IDE, making it great for beginners and experienced developers.&lt;br /&gt;
&lt;br /&gt;
==== Cons ====&lt;br /&gt;
* Limited GPIO&lt;br /&gt;
* Low-power&lt;br /&gt;
* High learning curve&lt;br /&gt;
&lt;br /&gt;
While ESP32’s performance is impressive, it may still fall short for resource-intensive tasks like high-end AI or complex video processing. Its lack of built-in storage can be limiting for applications that require large amounts of storage. Its GPIO pin count is also limiting for complex projects that require multiple connections.&lt;br /&gt;
&lt;br /&gt;
==== Applications ====&lt;br /&gt;
* Simple smart home&lt;br /&gt;
* Low-power IoT sensors (ultrasonic, IR, etc.)&lt;br /&gt;
* Simple smart agriculture&lt;br /&gt;
* Speech &amp;amp; Image recognition (OpenCV)&lt;br /&gt;
&lt;br /&gt;
==== Models ====&lt;br /&gt;
* ESP32-P series&lt;br /&gt;
* ESP32-S series&lt;br /&gt;
* ESP32-C series&lt;br /&gt;
* ESP32-H series&lt;br /&gt;
* ESP8266 series&lt;br /&gt;
&lt;br /&gt;
==== Specifications ====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ ESP32 Series Comparison&lt;br /&gt;
! Model !! ESP32-P Series !! ESP32-S Series !! ESP32-C Series !! ESP32-H Series !! ESP8266 Series&lt;br /&gt;
|-&lt;br /&gt;
! CPU&lt;br /&gt;
| Up to 240MHz Dual-core 32-bit Xtensa LX6 || Up to 240MHz Dual-core 32-bit Xtensa LX6 || Up to 160 MHz Single-core 32-bit Xtensa LX6 || Up to 160 MHz Single-core 32-bit Xtensa LX6 || Up to 160 MHz Single-core 32-bit Xtensa LX6&lt;br /&gt;
|-&lt;br /&gt;
! GPU&lt;br /&gt;
| N/A || N/A || N/A || N/A || N/A&lt;br /&gt;
|-&lt;br /&gt;
! APU&lt;br /&gt;
| N/A || N/A || N/A || N/A || N/A&lt;br /&gt;
|-&lt;br /&gt;
! RAM&lt;br /&gt;
| 320KB SRAM up to 512KB SRAM || 320KB SRAM up to 512KB SRAM || 128KB SRAM up to 192KB SRAM || 128KB SRAM up to 192KB SRAM || 128KB SRAM up to 192KB SRAM&lt;br /&gt;
|-&lt;br /&gt;
! Display&lt;br /&gt;
| No direct display support. Can support external display || No direct display support. Can support external display || No direct display support. Can support external display || No direct display support. Can support external display || No direct display support. Can support external display&lt;br /&gt;
|-&lt;br /&gt;
! Ports&lt;br /&gt;
| 1x SPI, 2x I2C, 2x UART, GPIO || 1x SPI, 2x I2C, 2x UART, GPIO || 1x SPI, 1x I2C, 1x UART, GPIO || 1x SPI, 1x I2C, 1x UART, GPIO || 1x SPI, 1x I2C, 1x UART, GPIO&lt;br /&gt;
|-&lt;br /&gt;
! Storage options&lt;br /&gt;
| Up to 16MB external flash || Up to 16MB external flash || Up to 16MB external flash || Up to 16MB external flash || Up to 4MB external flash&lt;br /&gt;
|-&lt;br /&gt;
! Network&lt;br /&gt;
| Wi-Fi, BT 4.2 || Wi-Fi, BT 4.2 || Wi-Fi, BT 4.2 || Wi-Fi, BT 4.2 || Wi-Fi&lt;br /&gt;
|-&lt;br /&gt;
! Power&lt;br /&gt;
| 3.3V low power || 3.3V low power || 3.3V low power || 3.3V low power || 3.3V low power&lt;br /&gt;
|-&lt;br /&gt;
! OS Support&lt;br /&gt;
| ESP-IDF, FreeRTOS, Arduino IDE || ESP-IDF, FreeRTOS, Arduino IDE || ESP-IDF, FreeRTOS, Arduino IDE || ESP-IDF, FreeRTOS, Arduino IDE || FreeRTOS, Arduino IDE&lt;br /&gt;
|-&lt;br /&gt;
! Price Range&lt;br /&gt;
| $1-$3 || $2-$6 || $1.50-$5 || $1.50-$5 || $1-$3&lt;br /&gt;
|-&lt;br /&gt;
! Documentation and Source Code&lt;br /&gt;
| Documentation: [https://docs.espressif.com/projects/esp-idf/en/stable/esp32/index.html Documentation: ESP-IDF Programming Guide - ESP32 - ESP-IDF Programming Guide v5.4 documentation],&lt;br /&gt;
[https://www.espressif.com/en/products/socs ESP SoCs]&lt;br /&gt;
&lt;br /&gt;
Github: [https://github.com/espressif Espressif Systems],&lt;br /&gt;
[https://github.com/espressif/esp-idf espressif/esp-idf: Espressif IoT Development Framework. Official development framework for Espressif SoCs.] &lt;br /&gt;
| Documentation: [https://docs.espressif.com/projects/esp-idf/en/stable/esp32/index.html Documentation: ESP-IDF Programming Guide - ESP32 - ESP-IDF Programming Guide v5.4 documentation],&lt;br /&gt;
[https://www.espressif.com/en/products/socs ESP SoCs]&lt;br /&gt;
&lt;br /&gt;
Github: [https://github.com/espressif Espressif Systems],&lt;br /&gt;
[https://github.com/espressif/esp-idf espressif/esp-idf: Espressif IoT Development Framework. Official development framework for Espressif SoCs.] &lt;br /&gt;
| Documentation: [https://docs.espressif.com/projects/esp-idf/en/stable/esp32/index.html Documentation: ESP-IDF Programming Guide - ESP32 - ESP-IDF Programming Guide v5.4 documentation],&lt;br /&gt;
[https://www.espressif.com/en/products/socs ESP SoCs]&lt;br /&gt;
&lt;br /&gt;
Github: [https://github.com/espressif Espressif Systems],&lt;br /&gt;
[https://github.com/espressif/esp-idf espressif/esp-idf: Espressif IoT Development Framework. Official development framework for Espressif SoCs.] &lt;br /&gt;
| Documentation: [https://docs.espressif.com/projects/esp-idf/en/stable/esp32/index.html Documentation: ESP-IDF Programming Guide - ESP32 - ESP-IDF Programming Guide v5.4 documentation],&lt;br /&gt;
[https://www.espressif.com/en/products/socs ESP SoCs]&lt;br /&gt;
&lt;br /&gt;
Github: [https://github.com/espressif Espressif Systems],&lt;br /&gt;
[https://github.com/espressif/esp-idf espressif/esp-idf: Espressif IoT Development Framework. Official development framework for Espressif SoCs.] &lt;br /&gt;
| Documentation: [https://docs.espressif.com/projects/esp-idf/en/stable/esp32/index.html Documentation: ESP-IDF Programming Guide - ESP32 - ESP-IDF Programming Guide v5.4 documentation],&lt;br /&gt;
[https://www.espressif.com/en/products/socs ESP SoCs]&lt;br /&gt;
&lt;br /&gt;
Github: [https://github.com/espressif Espressif Systems],&lt;br /&gt;
[https://github.com/espressif/esp-idf espressif/esp-idf: Espressif IoT Development Framework. Official development framework for Espressif SoCs.] &lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Why is ESP32 popular? ====&lt;br /&gt;
ESP32 is popular because it is cost-effective, has integrated Wi-Fi and Bluetooth, benefits from active community support, and has a well-developed ecosystem. ESP32s are heavily used in industries, especially in IoT. ESP32 offers robust connectivity and performance for a wide range of applications.&lt;br /&gt;
&lt;br /&gt;
=== Texas Instruments Sitara Processors ===&lt;br /&gt;
Developed by Texas Instruments, featuring ARM9, ARM Cortex-A8, ARM Cortex-A9, ARM Cortex A-15, and ARM Cortex-A53 cores. Supported by the Beagle community as well as TI&#039;s open-source development community.&lt;br /&gt;
&lt;br /&gt;
==== Pros ====&lt;br /&gt;
* Power efficient&lt;br /&gt;
* Cost-effective&lt;br /&gt;
* Scalability&lt;br /&gt;
* Real-time capability&lt;br /&gt;
&lt;br /&gt;
Texas Instruments Sitara Processors offer a wide range of powerful features for embedded and industrial applications. Sitara Processors provide low-power and higher-performance models, making them suitable for battery-operated devices and high-demand industrial systems. They also offer a developer-friendly environment with tools like Code Composer Studio and RTOS support.&lt;br /&gt;
&lt;br /&gt;
==== Cons ====&lt;br /&gt;
* Limited raw performance&lt;br /&gt;
* Complexity&lt;br /&gt;
* Limited high-end applications&lt;br /&gt;
&lt;br /&gt;
Sitara processors have challenges related to complexity and cost. Simple applications may offer more performance than necessary, leading to increased power consumption and system cost. The software ecosystem is more specialized compared to platforms like Raspberry Pi or ESP32, making development challenging for those unfamiliar with Code Composer Studio and RTOS. Long-term support for certain models may also be a concern as some projects rely on specific processor families.&lt;br /&gt;
&lt;br /&gt;
==== Applications ====&lt;br /&gt;
* IoT gateways&lt;br /&gt;
* Smart thermostats&lt;br /&gt;
* Industrial automation&lt;br /&gt;
* HMI&lt;br /&gt;
&lt;br /&gt;
==== Models ====&lt;br /&gt;
* AM335x&lt;br /&gt;
* AM35x&lt;br /&gt;
* AM37x&lt;br /&gt;
* AM437x&lt;br /&gt;
* AM57x&lt;br /&gt;
* AM62x&lt;br /&gt;
* AM65x&lt;br /&gt;
&lt;br /&gt;
==== Specifications ====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ Texas Instruments Sitara Processors Comparison&lt;br /&gt;
! Model !! AM335x !! AM35x !! AM37x !! AM437x !! AM57x !! AM62x !! AM65x&lt;br /&gt;
|-&lt;br /&gt;
! CPU&lt;br /&gt;
| ARM Cortex-A8, up to 1GHz || ARM Cortex-A8, up to 600MHz || ARM Cortex-A8, up to 1GHz || ARM Cortex-A9, up to 1GHz || Dual ARM Cortex-A15, up to 1.5GHz || Quad ARM Cortex-A53, up to 1.4GHz || Dual ARM Cortex-A53, up to 1.1GHz, Real-Time ARM Cortex-R5F&lt;br /&gt;
|-&lt;br /&gt;
! GPU&lt;br /&gt;
| PowerVR SGX530 || N/A || PowerVR SGX530 || PowerVR SGX544 || PowerVR SGX544MP2 || ARM Mali-G52 MP2 || N/A&lt;br /&gt;
|-&lt;br /&gt;
! APU&lt;br /&gt;
| PRU-ICSS || N/A || N/A || PRU-ICSS || Embedded Vision Engine (EVE), DSP C66x || N/A || PRU-ICSSG, Embedded Vision Engine (EVE)&lt;br /&gt;
|-&lt;br /&gt;
! RAM&lt;br /&gt;
| Up to 1GB DDR2/3L || Up to 256MB DDR2 || Up to 512MB DDR2/3L || Up to 1GB DDR3/3L || Up to 4GB DDR3/3L, DDR4 || Up to 2GB DDR4 || Up to 8GB DDR4&lt;br /&gt;
|-&lt;br /&gt;
! Display&lt;br /&gt;
| 24-bit LCD Controller || 24-bit LCD Controller || 24-bit LCD Controller || 24-bit LCD Controller || 24-bit LCD Controller, HDMI || 24-bit LCD Controller || 24-bit LCD Controller, DP/HDMI&lt;br /&gt;
|-&lt;br /&gt;
! Ports&lt;br /&gt;
| Up to 2x USB 2.0, Up to 2x Gigabit Ethernet, Up to 2x CAN ports, Up to 6x UARTS, Up to 3x I2C, GPIO || USB 2.0, Gigabit Ethernet, UART, I2C, GPIO || USB 2.0, Gigabit Ethernet, UART, I2C, GPIO || Up to 2x USB 2.0, Up to 2x Gigabit Ethernet, Up to 2x CAN ports, Up to 6x UARTS, Up to 3x I2C, GPIO || Up to 2x USB 2.0, Up to 2x USB 3.0, Up to 2x PCIe, Gigabit Ethernet, Up to 2x CAN ports, Up to 3x I2C, GPIO || Up to 2x USB 2.0, Up to 2x USB 3.0, Up to 2x PCIe, Gigabit Ethernet, Up to 2x CAN ports, Up to 3x I2C, GPIO || Up to 2x USB 2.0, Up to 2x USB 3.0, Up to 4x PCIe, Up to 2x Gigabit Ethernet, Up to 2x CAN ports, Up to 3x I2C, GPIO&lt;br /&gt;
|-&lt;br /&gt;
! Storage options&lt;br /&gt;
| eMMC, SD/SDIO, NAND || NAND, SD || NAND, SD || eMMC, SD/SDIO, NAND || eMMC, SD/SDIO, NAND, SATA || eMMC, SD/SDIO || eMMC, SD/SDIO, NVMe&lt;br /&gt;
|-&lt;br /&gt;
! Network&lt;br /&gt;
| Ethernet || Ethernet || Ethernet || Ethernet || Gigabit Ethernet || Gigabit Ethernet || Gigabit Ethernet&lt;br /&gt;
|-&lt;br /&gt;
! Power&lt;br /&gt;
| 1.8V/3.3V || 1.8V/3.3V || 1.8V/3.3V || 1.8V/3.3V || 1.8V/3.3V || 1.8V/3.3V || 1.8V/3.3V&lt;br /&gt;
|-&lt;br /&gt;
! OS Support&lt;br /&gt;
| Linaro, Linux (Yocto), RTOS, Android, Windows Embedded Compact || Linux, Windows CE || Linaro, Linux (Yocto), RTOS, Android, Windows Embedded Compact || Linaro, Linux (Yocto), RTOS, Android, Windows Embedded Compact || Linux (Yocto), RTOS, Android || Linux (Yocto), Android || Linux (Yocto), QNX, Android&lt;br /&gt;
|-&lt;br /&gt;
! Price Range&lt;br /&gt;
| $5-$20 || $10-$25 || $15-$30 || $10-$25 || $50-$150 || $25-$60 || $70-$200&lt;br /&gt;
|-&lt;br /&gt;
! Documentation and Source Code&lt;br /&gt;
| Documentation: [https://www.ti.com/lit/ds/symlink/am3359.pdf AM335x Sitara™ Processors datasheet (Rev. L)],&lt;br /&gt;
SDK: [https://www.ti.com/tool/PROCESSOR-SDK-AM335X PROCESSOR-SDK-AM335X Software development kit (SDK)]&lt;br /&gt;
| Documentation: [https://www.ti.com/cn/lit/ug/sprugr0c/sprugr0c.pdf AM35x ARM Microprocessor Technical Reference Manual (Rev. C)],&lt;br /&gt;
SDK: [https://www.ti.com/tool/download/LINUXEZSDK-AM35X/06.00.00.00 LINUXEZSDK-AM35X Software development kit (SDK)]&lt;br /&gt;
| Documentation: [https://www.ti.com/lit/ds/symlink/am3715.pdf?ts=1736860696591&amp;amp;ref_url=https%253A%252F%252Fwww.ti.com%252Fproduct%252FAM3715AM3715, AM3703 Sitara ARM Microprocessors datasheet (Rev. F)],&lt;br /&gt;
SDK: [https://www.ti.com/tool/download/LINUXEZSDK-AM37X/06.00.00.00 LINUXEZSDK-AM37X Software development kit (SDK)]&lt;br /&gt;
| Documentation: [https://www.ti.com/lit/ds/symlink/am4379.pdf AM437x Sitara™ Processors datasheet (Rev. E)],&lt;br /&gt;
SDK: [https://www.ti.com/tool/PROCESSOR-SDK-AM437X PROCESSOR-SDK-AM437X Software development kit (SDK)]&lt;br /&gt;
| Documentation: [https://www.ti.com/lit/po/sprt689a/sprt689a.pdf?ts=1736861964255&amp;amp;ref_url=https%253A%252F%252Fwww.google.com%252F sprt689a.pdf],&lt;br /&gt;
SDK: [https://www.ti.com/tool/PROCESSOR-SDK-AM57X PROCESSOR-SDK-AM57X Software development kit (SDK)]&lt;br /&gt;
| Documentation: [https://www.ti.com/lit/ds/symlink/am623.pdf AM62x Sitara™ Processors datasheet (Rev. B)],&lt;br /&gt;
SDK: [https://www.ti.com/tool/PROCESSOR-SDK-AM62X PROCESSOR-SDK-AM62X Software development kit (SDK)]&lt;br /&gt;
| Documentation: [https://www.ti.com/lit/ug/spruid7e/spruid7e.pdf?ts=1736862697648&amp;amp;ref_url=https%253A%252F%252Fwww.ti.com%252Fproduct%252FAM6548 AM65x/DRA80xM Processors Technical Reference Manual (Rev. E)],&lt;br /&gt;
SDK: [https://www.ti.com/tool/PROCESSOR-SDK-AM65X PROCESSOR-SDK-AM65X Software development kit (SDK)]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Why are Texas Instruments Sitara Processors popular? ====&lt;br /&gt;
Texas Instruments Sitara Processors are popular due to their reliability, cost-effectiveness, and scalable processing power. They excel in integrating key peripherals such as Ethernet, CAN, and industrial interfaces.&lt;br /&gt;
&lt;br /&gt;
=== Qualcomm Snapdragon ===  &lt;br /&gt;
It is a system-on-chip (SoC) that powers a variety of devices, such as smartphones, tablets, laptops, and desktops. They are designed to be fast, intelligent, and secure, with features like multi-core CPUs, GPUs, and digital signal processors.  &lt;br /&gt;
&lt;br /&gt;
==== Pros ====  &lt;br /&gt;
* Performance  &lt;br /&gt;
* Power Efficiency  &lt;br /&gt;
* Connectivity  &lt;br /&gt;
&lt;br /&gt;
Qualcomm Snapdragon processors are known for their high performance, versatility, and extensive use in mobile and embedded systems. Its processors are used in a wide range of applications, thanks to the combination of ARM Cortex cores, DSP, and AI. Snapdragon processors come with Wi-Fi, LTE, and 5G, which is great for IoT and edge computing. Its community is also well-established with Android and Linux SDKs.  &lt;br /&gt;
&lt;br /&gt;
==== Cons ====  &lt;br /&gt;
* Fragmentation  &lt;br /&gt;
* Software Compatibility  &lt;br /&gt;
* Overheating  &lt;br /&gt;
&lt;br /&gt;
Snapdragon processors tend to be power-hungry, making them less suitable for low-power applications. They may be overkill for simpler applications. Snapdragon processors are generally more expensive than other microcontrollers. The processors are optimized for high-speed and multimedia applications, they may not perform well for real-time applications.  &lt;br /&gt;
&lt;br /&gt;
==== Applications ====  &lt;br /&gt;
* Mobile devices  &lt;br /&gt;
* Multimedia  &lt;br /&gt;
* IoT  &lt;br /&gt;
&lt;br /&gt;
==== Models ====  &lt;br /&gt;
* Snapdragon 8 Series  &lt;br /&gt;
* Snapdragon 7 Series  &lt;br /&gt;
* Snapdragon 6 Series  &lt;br /&gt;
* Snapdragon 4 Series  &lt;br /&gt;
* Snapdragon 2 Series  &lt;br /&gt;
&lt;br /&gt;
==== Specifications ====  &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ Qualcomm Snapdragon Processors Comparison&lt;br /&gt;
! Model !! Snapdragon 2 Series !! Snapdragon 4 Series !! Snapdragon 6 Series !! Snapdragon 7 Series !! Snapdragon 8 Series&lt;br /&gt;
|-&lt;br /&gt;
! CPU&lt;br /&gt;
| ARM Cortex-A53, up to 1.3GHz, Quad-core&lt;br /&gt;
| Kryo 460, up to 2.0GHz, Octa-core&lt;br /&gt;
| Kryo 660, up to 2.4GHz, Octa-core&lt;br /&gt;
| Kryo 770, up to 2.4GHz, Octa-core&lt;br /&gt;
| Kryo 780, up to 3.2GHz, Octa-core&lt;br /&gt;
|-&lt;br /&gt;
! GPU&lt;br /&gt;
| Adreno 304&lt;br /&gt;
| Adreno 610&lt;br /&gt;
| Adreno 642L&lt;br /&gt;
| Adreno 642L&lt;br /&gt;
| Adreno 730&lt;br /&gt;
|-&lt;br /&gt;
! APU&lt;br /&gt;
| Basic AI features supported through CPU/GPU&lt;br /&gt;
| Qualcomm AI Engine, up to 2 TOPS&lt;br /&gt;
| Qualcomm AI Engine, up to 12 TOPS&lt;br /&gt;
| Qualcomm AI Engine, up to 12 TOPS&lt;br /&gt;
| Qualcomm AI Engine, up to 27 TOPS&lt;br /&gt;
|-&lt;br /&gt;
! RAM&lt;br /&gt;
| Up to 3GB LPDDR3&lt;br /&gt;
| Up to 6GB LPDDR4x&lt;br /&gt;
| Up to 12GB LPDDR4X/LPDDR5&lt;br /&gt;
| Up to 16GB LPDDR5&lt;br /&gt;
| Up to 18GB LPDDR5x&lt;br /&gt;
|-&lt;br /&gt;
! Display&lt;br /&gt;
| 720p HD @ 60Hz&lt;br /&gt;
| 1080p FHD @ 60Hz&lt;br /&gt;
| 1440p QHD @ 120Hz&lt;br /&gt;
| 1440p QHD+ @ 120Hz&lt;br /&gt;
| 4K UHD/1440p QHD+ @ 144Hz&lt;br /&gt;
|-&lt;br /&gt;
! Ports&lt;br /&gt;
| USB 2.0&lt;br /&gt;
| USB 3.1&lt;br /&gt;
| USB 3.1&lt;br /&gt;
| USB 3.1&lt;br /&gt;
| USB 3.2&lt;br /&gt;
|-&lt;br /&gt;
! Storage Options&lt;br /&gt;
| eMMC 5.1&lt;br /&gt;
| UFS 2.1&lt;br /&gt;
| eMMC 5.1, UFS 2.2&lt;br /&gt;
| UFS 3.1&lt;br /&gt;
| UFS 4.0&lt;br /&gt;
|-&lt;br /&gt;
! Network&lt;br /&gt;
| LTE Cat 4&lt;br /&gt;
| Wi-Fi 5, LTE Cat 15, 4G+ Mobile&lt;br /&gt;
| Wi-Fi 6, mmWave, 5G Mobile&lt;br /&gt;
| Wi-Fi 6, mmWave, 5G Mobile&lt;br /&gt;
| Wi-Fi 7, mmWave, 5G Mobile&lt;br /&gt;
|-&lt;br /&gt;
! Power&lt;br /&gt;
| 3.3V, low power&lt;br /&gt;
| 3.3V&lt;br /&gt;
| 3.3V&lt;br /&gt;
| 3.3V&lt;br /&gt;
| 3.3V&lt;br /&gt;
|-&lt;br /&gt;
! OS Support&lt;br /&gt;
| Android 10&lt;br /&gt;
| Android 11, Android 12&lt;br /&gt;
| Android 12, Android 13&lt;br /&gt;
| Android 12, Android 13&lt;br /&gt;
| Android 12, Android 13&lt;br /&gt;
|-&lt;br /&gt;
! Price Range&lt;br /&gt;
| $5-$15&lt;br /&gt;
| $20-$60&lt;br /&gt;
| $80-$150&lt;br /&gt;
| $250-$450&lt;br /&gt;
| $500-$1,200&lt;br /&gt;
|-&lt;br /&gt;
! Documentation and Source Code&lt;br /&gt;
| Documentation: [https://www.qualcomm.com/products/mobile/snapdragon/smartphones/qualcomm-2-series-mobile-platforms Qualcomm 2 Series Mobile Platforms]&lt;br /&gt;
&lt;br /&gt;
Github: [https://github.com/SnapdragonStudios Snapdragon Studios]&lt;br /&gt;
&lt;br /&gt;
Source Code: [https://docs.qualcomm.com/bundle/publicresource/topics/80-41102-1/get-the-source-code-from-the-clo-website.html Snapdragon Telematics Application Framework (TelAF) User Guide]&lt;br /&gt;
&lt;br /&gt;
| Documentation: [https://www.qualcomm.com/products/mobile/snapdragon/smartphones/snapdragon-4-series-mobile-platforms/snapdragon-4-gen-1-mobile-platform Snapdragon 4 Gen 1 Mobile Platform],&lt;br /&gt;
&lt;br /&gt;
[https://docs.qualcomm.com/bundle/publicresource/87-64330-1_REV_C_Snapdragon_4_Gen2_Mobile_Platform_Product_Brief.pdf Product Brief]&lt;br /&gt;
&lt;br /&gt;
Github: [https://github.com/SnapdragonStudios Snapdragon Studios]&lt;br /&gt;
&lt;br /&gt;
Source Code: [https://docs.qualcomm.com/bundle/publicresource/topics/80-41102-1/get-the-source-code-from-the-clo-website.html Snapdragon Telematics Application Framework (TelAF) User Guide]&lt;br /&gt;
&lt;br /&gt;
| Documentation: [https://www.qualcomm.com/content/dam/qcomm-martech/dm-assets/documents/product_brief_snapdragon_6_gen_1.pdf Snapdragon 6 Gen 1 Product Brief],&lt;br /&gt;
&lt;br /&gt;
[https://www.qualcomm.com/products/mobile/snapdragon/smartphones/snapdragon-6-series-mobile-platforms/snapdragon-6-gen-1-mobile-platform Snapdragon 6 Gen 1 Mobile Platform],&lt;br /&gt;
&lt;br /&gt;
[https://docs.qualcomm.com/bundle/publicresource/87-82624-1_REV_A_Snapdragon_6_Gen_3_Mobile_Platform_Product_Brief.pdf Product Brief]&lt;br /&gt;
&lt;br /&gt;
Github: [https://github.com/SnapdragonStudios Snapdragon Studios]&lt;br /&gt;
&lt;br /&gt;
Source Code: [https://docs.qualcomm.com/bundle/publicresource/topics/80-41102-1/get-the-source-code-from-the-clo-website.html Snapdragon Telematics Application Framework (TelAF) User Guide]&lt;br /&gt;
&lt;br /&gt;
| Documentation: [https://www.qualcomm.com/content/dam/qcomm-martech/dm-assets/documents/Snapdragon-7-Gen-1-Product-Brief.pdf Snapdragon-7-Gen-1-Product-Brief.pdf],&lt;br /&gt;
&lt;br /&gt;
[https://www.qualcomm.com/products/mobile/snapdragon/smartphones/snapdragon-7-series-mobile-platforms Snapdragon 7 Series Mobile Platforms]&lt;br /&gt;
&lt;br /&gt;
[https://www.qualcomm.com/products/mobile/snapdragon/smartphones/snapdragon-7-series-mobile-platforms/snapdragon-7-gen-1-mobile-platform Snapdragon 7 Gen 1 Mobile Platform],&lt;br /&gt;
&lt;br /&gt;
[https://www.qualcomm.com/products/mobile/snapdragon/smartphones/snapdragon-7-series-mobile-platforms/snapdragon-7-plus-gen-2-mobile-platform Snapdragon 7+ Gen 2 Mobile Platform]&lt;br /&gt;
&lt;br /&gt;
Github: [https://github.com/SnapdragonStudios Snapdragon Studios],&lt;br /&gt;
&lt;br /&gt;
[https://github.com/SnapdragonStudios/adreno-gpu-vulkan-code-sample-framework Snapdragon Studios]&lt;br /&gt;
&lt;br /&gt;
| Documentation: [https://www.qualcomm.com/products/mobile/snapdragon/smartphones/snapdragon-8-series-mobile-platforms Snapdragon 8 Series Mobile Platforms],&lt;br /&gt;
&lt;br /&gt;
[https://www.qualcomm.com/products/mobile/snapdragon/smartphones/snapdragon-8-series-mobile-platforms/snapdragon-8-plus-gen-1-mobile-platform Snapdragon 8+ Gen 1 Mobile Platform],&lt;br /&gt;
&lt;br /&gt;
[https://www.qualcomm.com/products/mobile/snapdragon/smartphones/snapdragon-8-series-mobile-platforms/snapdragon-8-gen-2-mobile-platform Snapdragon 8 Gen 2 Mobile Platform]&lt;br /&gt;
&lt;br /&gt;
Github: [https://github.com/SnapdragonStudios Snapdragon Studios],&lt;br /&gt;
&lt;br /&gt;
[https://github.com/SnapdragonStudios/adreno-gpu-vulkan-code-sample-framework Snapdragon Studios]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--| Documentation: []&lt;br /&gt;
Github: []&lt;br /&gt;
Source Code: [] --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Why is Qualcomm Snapdragon Popular? ====  &lt;br /&gt;
Qualcomm Snapdragon is popular because it consistently delivers high performance, making it a reliable choice for a wide range of devices, from flagship smartphones to wearables and edge computing platforms. Snapdragon combines high-performance CPUs, GPUs, AI, and modems, enabling seamless multitasking, powerful graphics, and lightning-fast connectivity.&lt;br /&gt;
&lt;br /&gt;
=== Intel Atom Processors ===&lt;br /&gt;
Intel Atom Processors are core processors commonly used in hardware platforms. They are designed to reduce electric consumption and power dissipation.&lt;br /&gt;
&lt;br /&gt;
==== Pros ====&lt;br /&gt;
* Low power consumption  &lt;br /&gt;
* Affordable price  &lt;br /&gt;
* Compact  &lt;br /&gt;
&lt;br /&gt;
Intel Atom Processors are designed for low-power consumption while providing sufficient power for embedded systems. Their use of x86 architecture ensures compatibility with a wide variety of software. This allows easy integration with existing applications, especially those that rely on Intel development tools. These processors are also suitable for media streaming, edge AI, and industrial automation. They also have Wi-Fi, Ethernet, and Bluetooth capabilities.&lt;br /&gt;
&lt;br /&gt;
==== Cons ====&lt;br /&gt;
* Limited Graphics Performance  &lt;br /&gt;
* Limited Performance  &lt;br /&gt;
* Low clock speeds  &lt;br /&gt;
* Compatibility Issues  &lt;br /&gt;
&lt;br /&gt;
While Intel Atom Processors are energy-efficient, they may not be as power-efficient as ARM-based processors like the ESP32 or Snapdragon. These processors tend to have lower overall performance compared to more powerful x86 processors and may struggle with complex AI applications or high-resolution video processing.  &lt;br /&gt;
&lt;br /&gt;
Although Intel Atom processors offer compatibility, it can also lead to higher heat output, requiring advanced cooling systems in compact closed environments. The development tools for Intel Atom processors may require specialized expertise, especially when working with Intel SDKs and Linux-based or Windows-based OS.&lt;br /&gt;
&lt;br /&gt;
==== Application ====&lt;br /&gt;
* Mobile  &lt;br /&gt;
* Embedded  &lt;br /&gt;
* IoT Applications  &lt;br /&gt;
* Infotainment (cars)  &lt;br /&gt;
&lt;br /&gt;
==== Models ====&lt;br /&gt;
* Intel Atom X7000E Series  &lt;br /&gt;
* Intel Atom X7000RE Series  &lt;br /&gt;
* Intel Atom X7000C Series  &lt;br /&gt;
* Intel Atom N-Series  &lt;br /&gt;
* Intel Atom P-Series  &lt;br /&gt;
* Intel Atom C-Series  &lt;br /&gt;
&lt;br /&gt;
==== Specifications ====&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ Intel Atom Processor Specifications&lt;br /&gt;
! Model !! Intel Atom X7000E Series !! Intel Atom X7000RE Series !! Intel Atom X7000C Series !! Intel Atom N-Series !! Intel Atom P-Series !! Intel Atom C-Series&lt;br /&gt;
|-&lt;br /&gt;
! CPU&lt;br /&gt;
| Up to 4 E-cores&lt;br /&gt;
| Up to 8 Cores&lt;br /&gt;
| Up to 8 Cores&lt;br /&gt;
| Up to 2 cores with Hyper-Threading&lt;br /&gt;
| Up to 8 cores with Hyper-Threading&lt;br /&gt;
| Up to 16 cores with Hyper-Threading&lt;br /&gt;
|-&lt;br /&gt;
! GPU&lt;br /&gt;
| Intel UHD Graphics&lt;br /&gt;
| Intel UHD Graphics&lt;br /&gt;
| Intel UHD Graphics&lt;br /&gt;
| Integrated Graphics&lt;br /&gt;
| Intel UHD Graphics&lt;br /&gt;
| Intel UHD Graphics&lt;br /&gt;
|-&lt;br /&gt;
! APU&lt;br /&gt;
| Intel Deep Learning Boost&lt;br /&gt;
| Intel Deep Learning Boost&lt;br /&gt;
| Intel Deep Learning Boost&lt;br /&gt;
| Basic AI handled by CPU and GPU&lt;br /&gt;
| Intel Deep Learning Boost&lt;br /&gt;
| Intel Deep Learning Boost&lt;br /&gt;
|-&lt;br /&gt;
! RAM&lt;br /&gt;
| Up to 16GB DDR/LPDDR4x&lt;br /&gt;
| Up to 16GB DDR/LPDDR4x&lt;br /&gt;
| Up to 16GB DDR/LPDDR4x&lt;br /&gt;
| Up to 4GB DDR3&lt;br /&gt;
| Up to 64GB DDR4&lt;br /&gt;
| Up to 256GB DDR4 ECC&lt;br /&gt;
|-&lt;br /&gt;
! Display&lt;br /&gt;
| Up to 4K @ 60Hz HDR&lt;br /&gt;
| Up to 4K @ 60Hz HDR&lt;br /&gt;
| Up to 4K @ 60Hz HDR&lt;br /&gt;
| FHD&lt;br /&gt;
| Up to 4K @ 60Hz&lt;br /&gt;
| Up to 4K @ 60Hz HDR&lt;br /&gt;
|-&lt;br /&gt;
! Ports&lt;br /&gt;
| USB-C, PCIe&lt;br /&gt;
| USB-C, PCIe&lt;br /&gt;
| USB-C, PCIe&lt;br /&gt;
| USB 2.0&lt;br /&gt;
| USB 3.2, PCIe&lt;br /&gt;
| USB 3.2, PCIe&lt;br /&gt;
|-&lt;br /&gt;
! Storage Options&lt;br /&gt;
| eMMC, SD, NVMe&lt;br /&gt;
| eMMC, SD, NVMe&lt;br /&gt;
| eMMC, SD, NVMe&lt;br /&gt;
| eMMC, SATA&lt;br /&gt;
| eMMC, NVMe, SATA&lt;br /&gt;
| eMMC, NVMe, SATA&lt;br /&gt;
|-&lt;br /&gt;
! Network&lt;br /&gt;
| Wi-Fi 6, Gigabit Ethernet&lt;br /&gt;
| Wi-Fi 6, Gigabit Ethernet&lt;br /&gt;
| Wi-Fi 6/6E, Gigabit Ethernet&lt;br /&gt;
| Wi-Fi 4, Wi-Fi 5, Ethernet Gigabit&lt;br /&gt;
| Wi-Fi 6/6E, Gigabit Ethernet&lt;br /&gt;
| Wi-Fi 6E, Gigabit Ethernet&lt;br /&gt;
|-&lt;br /&gt;
! Power&lt;br /&gt;
| 6W-15W&lt;br /&gt;
| 6W-15W&lt;br /&gt;
| 6W-15W&lt;br /&gt;
| 3.5W-7W&lt;br /&gt;
| 10W-20W&lt;br /&gt;
| 15W-35W&lt;br /&gt;
|-&lt;br /&gt;
! OS Support&lt;br /&gt;
| Ubuntu, Linux (Yocto), Windows 10/11&lt;br /&gt;
| Ubuntu, Linux (Yocto), Windows 10/11&lt;br /&gt;
| Ubuntu, Linux (Yocto), Windows 10/11&lt;br /&gt;
| Linux, Windows 7/10&lt;br /&gt;
| Ubuntu, Linux (Yocto), Windows 10/11&lt;br /&gt;
| Ubuntu, Linux (Yocto), Windows 10/11&lt;br /&gt;
|-&lt;br /&gt;
! Price Range&lt;br /&gt;
| $30-$60&lt;br /&gt;
| $50-$90&lt;br /&gt;
| $40-$80&lt;br /&gt;
| $20-$40&lt;br /&gt;
| $50-$100&lt;br /&gt;
| $100-$250&lt;br /&gt;
|-&lt;br /&gt;
! Documentation and Source Code&lt;br /&gt;
| Documentation: [https://www.intel.com/content/www/us/en/products/docs/processors/atom/x7000e-series-overview.html Intel Atom X7000E Series Overview],&lt;br /&gt;
[https://www.intel.com/content/www/us/en/products/docs/processors/atom/x7000e-series-product-brief.html Intel Atom® x7000E Series Product Brief]&lt;br /&gt;
&lt;br /&gt;
SDK: [https://www.intel.com/content/www/us/en/developer/topic-technology/edge-5g/hardware/atom-x7000e-dev-kit.html Developer Kits with Intel Atom® x7000E Processors]&lt;br /&gt;
| Documentation: [https://www.intel.com/content/www/us/en/products/docs/processors/atom/x7000re-series-overview.html Intel Atom X7000RE Series Overview],&lt;br /&gt;
[https://www.intel.com/content/www/us/en/products/docs/processors/atom/x7000re-series-product-brief.html Intel Atom® Processors x7000RE Series Product Brief]&lt;br /&gt;
| Documentation: [https://www.intel.com/content/www/us/en/products/docs/processors/atom/x7000c-series-overview.html Intel Atom X7000C Series Overview],&lt;br /&gt;
[https://www.intel.com/content/www/us/en/products/docs/processors/atom/x7000c-series-product-brief.html Intel Atom® x7000C Processors Series Product Brief]&lt;br /&gt;
| Documentation: [https://www.intel.com/content/www/us/en/products/docs/processors/atom/n2600-overview.html Intel Atom N2600 Overview]&lt;br /&gt;
| Documentation: [https://www.intel.com/content/www/us/en/products/docs/processors/atom/p-series-overview.html Intel Atom P-Series Overview],&lt;br /&gt;
[https://www.intel.com/content/www/us/en/products/docs/processors/atom/p5900-overview.html Intel Atom® P5900 Processors for 5G Network Edge Acceleration]&lt;br /&gt;
| Documentation: [https://www.intel.com/content/www/us/en/products/docs/processors/atom/c-series-overview.html Intel Atom C-Series Overview],&lt;br /&gt;
[https://www.intel.com/content/www/us/en/products/docs/processors/atom/c3000-overview.html Product Brief: Intel Atom® C3000 Processor] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Why is Intel Atom Processors Popular? ====&lt;br /&gt;
Intel Atom Processors are popular because of their low power consumption. They are ideal for small, portable devices and embedded systems. They offer a good balance between performance and power usage. Additionally, Intel’s reputation makes Atom processors a dependable choice for developers and manufacturers.&lt;br /&gt;
&lt;br /&gt;
=== Microchip PIC Microcontrollers ===&lt;br /&gt;
Microchip PIC Microcontrollers consist of scalable 8-bit, 16-bit, and 32-bit microcontrollers and Digital Signal Controllers.&lt;br /&gt;
&lt;br /&gt;
==== Pros ====&lt;br /&gt;
* Cheap, Budget friendly&lt;br /&gt;
* Low power&lt;br /&gt;
* Documentation&lt;br /&gt;
&lt;br /&gt;
Widely recognized for their low power consumption and affordability, Microchip PIC Microcontrollers are the ideal choice for a variety of embedded systems, particularly in battery-powered devices and simple consumer electronics. These microcontrollers offer user-friendly development environments due to MPLAB X IDE and Microchip Studio, which streamline the design and prototyping process. Microchip PIC Microcontrollers are also well supported by a rich ecosystem of tools, libraries, and applications.&lt;br /&gt;
&lt;br /&gt;
==== Cons ====&lt;br /&gt;
* Not enough computational power&lt;br /&gt;
* Not beginner friendly&lt;br /&gt;
&lt;br /&gt;
The microcontroller&#039;s processing power is limited compared to other more advanced microcontrollers such as the Arm Cortex-M Series. This makes them unsuitable for high computational tasks, such as AI or multimedia processing. They also lack built-in wireless connectivity, such as Wi-Fi and Bluetooth, and have relatively small RAM and storage capabilities. Microchip PIC Microcontrollers are less equipped for more advanced applications like high-speed processing, graphics, or real-time systems.&lt;br /&gt;
&lt;br /&gt;
==== Applications ====&lt;br /&gt;
* Automotive&lt;br /&gt;
* Industrial&lt;br /&gt;
* Home automation&lt;br /&gt;
&lt;br /&gt;
==== Models ====&lt;br /&gt;
* 8-bit MCUs&lt;br /&gt;
* 16-bit MCUs&lt;br /&gt;
* 32-bit MCUs&lt;br /&gt;
* Digital Signal Controllers&lt;br /&gt;
* Wireless MCUs&lt;br /&gt;
&lt;br /&gt;
==== Specifications ====&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ Microchip PIC Microcontroller and Digital Signal Controller Specifications&lt;br /&gt;
! Model !! Microchip PIC 8-bit MCU !! Microchip PIC 16-bit MCU !! Microchip PIC 32-bit MCU !! Microchip PIC Digital Signal Controllers !! Microchip PIC Wireless MCU&lt;br /&gt;
|-&lt;br /&gt;
! CPU&lt;br /&gt;
| 8-bit PIC core&lt;br /&gt;
| 16-bit PIC24 core&lt;br /&gt;
| 32-bit PIC32 core&lt;br /&gt;
| dsPIC core with digital signal processing&lt;br /&gt;
| 32-bit PIC32 core with integrated wireless&lt;br /&gt;
|-&lt;br /&gt;
! GPU&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
| Optional integrated GPU in select models&lt;br /&gt;
| N/A&lt;br /&gt;
| Optional Integrated GPU&lt;br /&gt;
|-&lt;br /&gt;
! APU&lt;br /&gt;
| N/A&lt;br /&gt;
| Basic signal processing capabilities&lt;br /&gt;
| Advanced signal processing&lt;br /&gt;
| Advanced signal processing&lt;br /&gt;
| Integrated wireless processing cores&lt;br /&gt;
|-&lt;br /&gt;
! RAM&lt;br /&gt;
| Up to 2KB&lt;br /&gt;
| Up to 32KB&lt;br /&gt;
| Up to 512KB&lt;br /&gt;
| Up to 64KB&lt;br /&gt;
| Up to 512KB&lt;br /&gt;
|-&lt;br /&gt;
! Display&lt;br /&gt;
| Basic LCD display&lt;br /&gt;
| Basic LCD display&lt;br /&gt;
| TFT and advanced displays&lt;br /&gt;
| LCD support&lt;br /&gt;
| TFT and advanced displays&lt;br /&gt;
|-&lt;br /&gt;
! Ports&lt;br /&gt;
| UART, SPI, I2C, GPIO&lt;br /&gt;
| UART, SPI, I2C, CAN, GPIO&lt;br /&gt;
| USB, PCIe, SPI, I2C&lt;br /&gt;
| UART, SPI, I2C, CAN, GPIO&lt;br /&gt;
| USB, SPI, I2C&lt;br /&gt;
|-&lt;br /&gt;
! Storage Options&lt;br /&gt;
| Internal Flash, EEPROM&lt;br /&gt;
| Internal Flash, EEPROM&lt;br /&gt;
| Internal Flash, SD, NAND&lt;br /&gt;
| Internal Flash, EEPROM&lt;br /&gt;
| Internal Flash, SD, NAND&lt;br /&gt;
|-&lt;br /&gt;
! Network&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
| Wi-Fi, Ethernet&lt;br /&gt;
| Ethernet&lt;br /&gt;
| Wi-Fi, Zigbee, LoRa&lt;br /&gt;
|-&lt;br /&gt;
! Power&lt;br /&gt;
| 0.03W-0.1W Ultra-low power&lt;br /&gt;
| 0.1W-0.5W Low power&lt;br /&gt;
| 0.5W-2W Low to Moderate Power&lt;br /&gt;
| 0.2W-1W Low power&lt;br /&gt;
| 0.05W-0.5W Ultra-low power&lt;br /&gt;
|-&lt;br /&gt;
! OS Support&lt;br /&gt;
| Bare-metal&lt;br /&gt;
| Bare-metal, FreeRTOS&lt;br /&gt;
| FreeRTOS, Zephyr&lt;br /&gt;
| FreeRTOS, Zephyr&lt;br /&gt;
| FreeRTOS, Zephyr, Harmony&lt;br /&gt;
|-&lt;br /&gt;
! Price Range&lt;br /&gt;
| $0.5-$3&lt;br /&gt;
| $2-$10&lt;br /&gt;
| $5-$20&lt;br /&gt;
| $5-$15&lt;br /&gt;
| $5-$25&lt;br /&gt;
|-&lt;br /&gt;
! Documentation and Source Code&lt;br /&gt;
| Documentation: [https://www.microchip.com/wwwAppNotes/AppNotes.aspx?appnote=en30009630 30009630m.pdf]&lt;br /&gt;
&lt;br /&gt;
SDK: [https://www.microchip.com/en-us/development-tools-tools/8bit/pic-avr-mcus Start Developing With 8-bit PIC® and AVR® MCUs],&lt;br /&gt;
&lt;br /&gt;
[https://www.microchip.com/en-us/development-tools-tools/software-tools Libraries, Code Examples and More]&lt;br /&gt;
&lt;br /&gt;
| Documentation: [https://www.microchip.com/en-us/development-tools-tools/16bit/ 16-bit Microcontrollers]&lt;br /&gt;
&lt;br /&gt;
SDK: [https://www.microchip.com/en-us/development-tools-tools/16bit/pic24f Developing With the 16-bit PIC24F MCU],&lt;br /&gt;
&lt;br /&gt;
[https://developerhelp.microchip.com/xwiki/bin/view/products/mcu-mpu/16bit-mcu/software-development/ Software Development for 16-bit PIC® MCUs - Developer Help]&lt;br /&gt;
| Documentation: [https://www.microchip.com/en-us/development-tools-tools/32bit/ PIC32 Family of 32-bit Microcontrollers]&lt;br /&gt;
&lt;br /&gt;
SDK: [https://www.microchip.com/en-us/development-tools-tools/32bit/pic32-starter-kit PIC32 STARTER KIT],&lt;br /&gt;
&lt;br /&gt;
| Documentation: [https://www.microchip.com/en-us/development-tools-tools/digital-signal-controllers Digital Signal Controllers (DSCs)]&lt;br /&gt;
&lt;br /&gt;
SDK: [https://www.microchip.com/en-us/development-tools-tools/software-tools Libraries, Code Examples and More]&lt;br /&gt;
&lt;br /&gt;
| Documentation: [https://www.microchip.com/en-us/development-tools-tools/wireless Wireless Microcontrollers]&lt;br /&gt;
&lt;br /&gt;
GitHub: [https://github.com/Microchip-MPLAB-Harmony Microchip MPLAB Harmony],&lt;br /&gt;
&lt;br /&gt;
[https://github.com/Microchip-MPLAB-Harmony/wireless_pic32cxbz_wbz Microchip-MPLAB-Harmony/wireless_pic32cxbz_wbz]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Why is Microchip PIC Microcontrollers Popular? ====&lt;br /&gt;
Microchip PIC Microcontrollers are popular because of their low cost, wide availability, and extensive design support from Microchip. They offer a variety of models that are well suited for everything from simple DIY projects to complex industrial systems. Microchip’s product availability and support network make PIC microcontrollers a trusted system for beginners and professionals.&lt;br /&gt;
&lt;br /&gt;
=== STMicroelectronics STM32 Series ===  &lt;br /&gt;
Based on the Arm Cortex-M processor. It offers products combining very high performance, real-time capabilities, digital signal processing, low-power operation, and connectivity, while maintaining full integration and ease of development.  &lt;br /&gt;
&lt;br /&gt;
==== Pros ====  &lt;br /&gt;
* High Performance  &lt;br /&gt;
* Wide range of peripherals  &lt;br /&gt;
* Low power consumption  &lt;br /&gt;
* Cost-effective  &lt;br /&gt;
&lt;br /&gt;
One of STMicroelectronics STM32 series&#039; pros is their processing power, from Arm Cortex-M0 to Cortex-M7 cores. They offer scalability for both simple and complex tasks. They also have good support for development with tools like STM32Cube and libraries like HAL, which simplify the development process. They support a wide array of peripherals such as SPI, I2C, UART, PWM, and CAN. Some models also have Wi-Fi and Bluetooth capabilities, reducing the need for external modules.  &lt;br /&gt;
&lt;br /&gt;
==== Cons ====  &lt;br /&gt;
* Complexity  &lt;br /&gt;
* Learning Curve  &lt;br /&gt;
* Different Pinout variations  &lt;br /&gt;
&lt;br /&gt;
While STMicroelectronics STM32 Series are generally affordable, they are still more expensive than other simpler microcontrollers. Beginners may find the development process more complex, especially when dealing with higher-end STM32 models. They are not well suited for high-level processing like AI, GPU-based graphics, or video processing.  &lt;br /&gt;
&lt;br /&gt;
==== Applications ====  &lt;br /&gt;
* Industrial  &lt;br /&gt;
* Automotive  &lt;br /&gt;
* IIoT (Industrial Internet of Things)  &lt;br /&gt;
* Communications Equipment  &lt;br /&gt;
&lt;br /&gt;
==== Models ====  &lt;br /&gt;
* STM32F/H Series (High Performance)  &lt;br /&gt;
* STM32G/C/F Series (Mainstream)  &lt;br /&gt;
* STM32L/U Series (Ultra-low power)  &lt;br /&gt;
* STM32W Series (Wireless)  &lt;br /&gt;
&lt;br /&gt;
==== Specifications ====  &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ STM32 Series Specifications&lt;br /&gt;
! Model !! STM32F/H Series !! STM32G/C/F Series !! STM32L/U Series !! STM32W Series&lt;br /&gt;
|-&lt;br /&gt;
! CPU&lt;br /&gt;
| Arm Cortex-M3/M4/M7/M33&lt;br /&gt;
| Arm Cortex-M4/M33&lt;br /&gt;
| Arm Cortex-M0+/M3/M33&lt;br /&gt;
| Arm Cortex-M4/M33&lt;br /&gt;
|-&lt;br /&gt;
! GPU&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
| Optional Integrated Graphics Controller&lt;br /&gt;
|-&lt;br /&gt;
! APU&lt;br /&gt;
| Basic DSP capabilities&lt;br /&gt;
| Enhanced DSP&lt;br /&gt;
| N/A&lt;br /&gt;
| Integrated RF processing for wireless&lt;br /&gt;
|-&lt;br /&gt;
! RAM&lt;br /&gt;
| Up to 1MB&lt;br /&gt;
| Up to 512KB&lt;br /&gt;
| Up to 192KB&lt;br /&gt;
| Up to 256KB&lt;br /&gt;
|-&lt;br /&gt;
! Display&lt;br /&gt;
| TFT LCD Controller&lt;br /&gt;
| TFT LCD&lt;br /&gt;
| N/A&lt;br /&gt;
| TFT LCD Up Controller&lt;br /&gt;
|-&lt;br /&gt;
! Ports&lt;br /&gt;
| UART, I2C, SPI, USB, CAN, GPIO&lt;br /&gt;
| UART, I2C, SPI, USB, CAN, GPIO&lt;br /&gt;
| UART, I2C, SPI, USB, GPIO&lt;br /&gt;
| UART, I2C, SPI, USB, CAN, GPIO&lt;br /&gt;
|-&lt;br /&gt;
! Storage Options&lt;br /&gt;
| Up to 2MB Internal Flash, External QSPI&lt;br /&gt;
| Up to 1MB Internal Flash, External QSPI&lt;br /&gt;
| Up to 1MB Internal Flash&lt;br /&gt;
| Up to 2MB Internal Flash, External QSPI&lt;br /&gt;
|-&lt;br /&gt;
! Network&lt;br /&gt;
| Ethernet&lt;br /&gt;
| CAN, USB&lt;br /&gt;
| USB&lt;br /&gt;
| Zigbee&lt;br /&gt;
|-&lt;br /&gt;
! Power&lt;br /&gt;
| 0.08W-2W&lt;br /&gt;
| 0.5W-1.5W&lt;br /&gt;
| 0.1W-0.8W&lt;br /&gt;
| 0.6W-1.2W&lt;br /&gt;
|-&lt;br /&gt;
! OS Support&lt;br /&gt;
| FreeRTOS, Zephyr, Mbed OS&lt;br /&gt;
| FreeRTOS, Zephyr, Mbed OS&lt;br /&gt;
| FreeRTOS, Zephyr, Mbed OS&lt;br /&gt;
| FreeRTOS, Zephyr, Mbed OS&lt;br /&gt;
|-&lt;br /&gt;
! Price Range&lt;br /&gt;
| $3-$20&lt;br /&gt;
| $2-$12&lt;br /&gt;
| $1.50-$10&lt;br /&gt;
| $3-$15&lt;br /&gt;
|-&lt;br /&gt;
! Documentation and Source Code&lt;br /&gt;
| Documentation: [https://www.st.com STM32 Microcontrollers (MCUs) - STMicroelectronics]&lt;br /&gt;
&lt;br /&gt;
SDK: [https://www.st.com STM32Cube MCU: List of Embedded software components - STMicroelectronics]&lt;br /&gt;
&lt;br /&gt;
GitHub: [https://github.com/STMicroelectronics STMicroelectronics]&lt;br /&gt;
| Documentation: [https://www.st.com STM32 Microcontrollers (MCUs) - STMicroelectronics]&lt;br /&gt;
&lt;br /&gt;
SDK: [https://www.st.com STM32Cube MCU: List of Embedded software components - STMicroelectronics]&lt;br /&gt;
&lt;br /&gt;
GitHub: [https://github.com/STMicroelectronics STMicroelectronics]&lt;br /&gt;
| Documentation: [https://www.st.com STM32 Microcontrollers (MCUs) - STMicroelectronics]&lt;br /&gt;
&lt;br /&gt;
SDK: [https://www.st.com STM32Cube MCU: List of Embedded software components - STMicroelectronics]&lt;br /&gt;
&lt;br /&gt;
GitHub: [https://github.com/STMicroelectronics STMicroelectronics]&lt;br /&gt;
| Documentation: [https://www.st.com STM32 Microcontrollers (MCUs) - STMicroelectronics]&lt;br /&gt;
&lt;br /&gt;
SDK: [https://www.st.com STM32Cube MCU: List of Embedded software components - STMicroelectronics]&lt;br /&gt;
&lt;br /&gt;
GitHub: [https://github.com/STMicroelectronics STMicroelectronics]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Why is STMicroelectronics STM32 Series popular? ====  &lt;br /&gt;
STMicroelectronics STM32 Series is popular because it is suitable for a wide range of applications and offers high performance and developer-friendly features. With Arm Cortex cores, STM32 microcontrollers deliver excellent performance, energy efficiency, and peripheral integration. The STM32 ecosystem is supported by comprehensive development tools, such as STM32Cube software.  &lt;br /&gt;
&lt;br /&gt;
=== Renesas RX Family ===&lt;br /&gt;
Built around advanced CPU cores packed with innovations unique to Renesas.&lt;br /&gt;
&lt;br /&gt;
==== Pros ====&lt;br /&gt;
* High performance  &lt;br /&gt;
* Low power consumption  &lt;br /&gt;
* Wide range applications  &lt;br /&gt;
&lt;br /&gt;
Renesas RX Family uses 32-bit RX cores, which deliver strong computational power and support for complex applications. They are also integrated with peripherals such as CAN, SPI, I2C, PWM, and ADC. Renesas RX has a robust ecosystem of development tools, such as e2 Studio and Renesas Synergy, for easy integration and fast development cycles.  &lt;br /&gt;
&lt;br /&gt;
==== Cons ====&lt;br /&gt;
* Proprietary architecture  &lt;br /&gt;
* Steep learning curve  &lt;br /&gt;
* Not ideal for AI or multimedia  &lt;br /&gt;
&lt;br /&gt;
While Renesas RX offers strong performance, it may not match the processing power of more advanced microcontrollers or processors, such as Arm Cortex-M, Snapdragon, or NVIDIA Jetson. It may have a steep learning curve for beginners, especially when compared to Arduino. There are also fewer libraries and less community support. While Renesas RX may be suitable for embedded systems, it may not be the best choice for AI, GPU acceleration, or complex video analytics, which demand more specialized hardware.  &lt;br /&gt;
&lt;br /&gt;
==== Applications ====&lt;br /&gt;
* Industrial  &lt;br /&gt;
* Automation  &lt;br /&gt;
* Communication  &lt;br /&gt;
&lt;br /&gt;
==== Models ====&lt;br /&gt;
* RX700  &lt;br /&gt;
* RX600  &lt;br /&gt;
* RX200  &lt;br /&gt;
* RX100  &lt;br /&gt;
&lt;br /&gt;
==== Specifications ====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ Renesas RX Family Specifications&lt;br /&gt;
! Model !! RX700 !! RX600 !! RX200 !! RX100&lt;br /&gt;
|-&lt;br /&gt;
! CPU&lt;br /&gt;
| Up to 240 MHz 32-bit RXv3 core&lt;br /&gt;
| Up to 120MHz 32-bit RXv2 core&lt;br /&gt;
| Up to 54MHz 32-bit RXv2 core&lt;br /&gt;
| Up to 32MHz 32-bit RXv2 core&lt;br /&gt;
|-&lt;br /&gt;
! GPU&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
|-&lt;br /&gt;
! APU&lt;br /&gt;
| Advanced signal processing and control&lt;br /&gt;
| Advanced signal processing and control&lt;br /&gt;
| Advanced signal processing and control&lt;br /&gt;
| Advanced signal processing and control&lt;br /&gt;
|-&lt;br /&gt;
! RAM&lt;br /&gt;
| Up to 128MB SRAM&lt;br /&gt;
| Up to 128MB SRAM&lt;br /&gt;
| Up to 32MB SRAM&lt;br /&gt;
| Up to 16MB SRAM&lt;br /&gt;
|-&lt;br /&gt;
! Display&lt;br /&gt;
| Support high-resolution displays&lt;br /&gt;
| Graphical LCD&lt;br /&gt;
| Basic LCD&lt;br /&gt;
| Basic LCD&lt;br /&gt;
|-&lt;br /&gt;
! Ports&lt;br /&gt;
| UART, SPI, I2C, CAN, USB&lt;br /&gt;
| UART, SPI, I2C, CAN, USB&lt;br /&gt;
| UART, SPI, I2C, USB&lt;br /&gt;
| UART, SPI, I2C, USB&lt;br /&gt;
|-&lt;br /&gt;
! Storage Options&lt;br /&gt;
| Internal Flash up to 16MB, External QSPI&lt;br /&gt;
| Internal Flash up to 4MB, External QSPI&lt;br /&gt;
| Internal Flash up to 2MB, External QSPI&lt;br /&gt;
| Internal Flash up to 1MB, External QSPI&lt;br /&gt;
|-&lt;br /&gt;
! Network&lt;br /&gt;
| Ethernet&lt;br /&gt;
| Ethernet&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
|-&lt;br /&gt;
! Power&lt;br /&gt;
| 0.5W-2W&lt;br /&gt;
| 0.3W-1.5W&lt;br /&gt;
| 0.2W-1W&lt;br /&gt;
| 0.1W-0.5W&lt;br /&gt;
|-&lt;br /&gt;
! OS Support&lt;br /&gt;
| FreeRTOS, RX V3 SDK, embOS&lt;br /&gt;
| FreeRTOS, RX V2 SDK, embOS&lt;br /&gt;
| FreeRTOS, RX 23 SDK, embOS&lt;br /&gt;
| FreeRTOS, RX V2 SDK, embOS&lt;br /&gt;
|-&lt;br /&gt;
! Price Range&lt;br /&gt;
| $10-$50&lt;br /&gt;
| $5-$20&lt;br /&gt;
| $2-$10&lt;br /&gt;
| $1-$5&lt;br /&gt;
|-&lt;br /&gt;
! Documentation and Source Code&lt;br /&gt;
| Documentation: [https://www.renesas.com Renesas RX700, RX600 MCU Series]  &lt;br /&gt;
&lt;br /&gt;
SDK: [https://www.renesas.com C/C++ Compiler Package for RX Family [CC-RX] | Renesas]  &lt;br /&gt;
&lt;br /&gt;
GitHub: [https://github.com/Renesas RX MCUs team]&lt;br /&gt;
| Documentation: [https://www.renesas.com Renesas RX700, RX600 MCU Series]  &lt;br /&gt;
&lt;br /&gt;
SDK: [https://www.renesas.com C/C++ Compiler Package for RX Family [CC-RX] | Renesas]  &lt;br /&gt;
&lt;br /&gt;
GitHub: [https://github.com/Renesas RX MCUs team]&lt;br /&gt;
| Documentation: [https://www.renesas.com Renesas RX200 MCU Series]  &lt;br /&gt;
&lt;br /&gt;
SDK: [https://www.renesas.com C/C++ Compiler Package for RX Family [CC-RX] | Renesas]  &lt;br /&gt;
&lt;br /&gt;
GitHub: [https://github.com/Renesas RX MCUs team]&lt;br /&gt;
| Documentation: [https://www.renesas.com Renesas RX100 MCU Series]  &lt;br /&gt;
&lt;br /&gt;
SDK: [https://www.renesas.com C/C++ Compiler Package for RX Family [CC-RX] | Renesas]  &lt;br /&gt;
&lt;br /&gt;
GitHub: [https://github.com/Renesas RX MCUs team]&lt;br /&gt;
|}&lt;br /&gt;
  &lt;br /&gt;
==== Why is Renesas RX popular? ====&lt;br /&gt;
Renesas RX is popular because it is reliable, secure, and efficient. Using RX CPU cores, these microcontrollers deliver excellent performance and real-time capabilities. Developers benefit from tools like the e² studio IDE, code generation utilities, and extensive libraries.&lt;br /&gt;
&lt;br /&gt;
=== Arm Cortex-M Series ===&lt;br /&gt;
Optimized for cost and energy-efficient microcontrollers.&lt;br /&gt;
&lt;br /&gt;
==== Pros ====&lt;br /&gt;
* Low power consumption  &lt;br /&gt;
* Compact  &lt;br /&gt;
* Cost-effective  &lt;br /&gt;
* Multiprocessing  &lt;br /&gt;
&lt;br /&gt;
Arm Cortex-M Series is widely used for its scalability, low power, and strong performance. They offer a range of cores from Cortex-M0 to Cortex-M7. The low power consumption makes it highly suitable for battery-operated devices, with advanced power management features that extend battery life. They also have robust development tools, libraries, and community support, which makes development and integration with peripheral devices easier.  &lt;br /&gt;
&lt;br /&gt;
==== Cons ====&lt;br /&gt;
* Low performance  &lt;br /&gt;
* Limited software capability  &lt;br /&gt;
&lt;br /&gt;
While the Arm Cortex-M Series offers solid performance, they are still limited compared to higher-end Arm Cortex-A processors or other specialized computing platforms such as NVIDIA Jetson or Qualcomm Snapdragon. Some advanced features such as RTOS or multi-core support may require more complex development and can be overkill for simple applications. The development process can be complex, especially for users unfamiliar with embedded systems or real-time applications, making it less beginner-friendly.  &lt;br /&gt;
&lt;br /&gt;
==== Applications ====&lt;br /&gt;
* IoT  &lt;br /&gt;
* Industrial  &lt;br /&gt;
* Automotive  &lt;br /&gt;
&lt;br /&gt;
==== Models ====&lt;br /&gt;
* Cortex-M0  &lt;br /&gt;
* Cortex-M0+  &lt;br /&gt;
* Cortex-M1  &lt;br /&gt;
* Cortex-M23  &lt;br /&gt;
* Cortex-M3  &lt;br /&gt;
* Cortex-M4  &lt;br /&gt;
* Cortex-M33  &lt;br /&gt;
* Cortex-M35P  &lt;br /&gt;
* Cortex-M55  &lt;br /&gt;
* Cortex-M7  &lt;br /&gt;
&lt;br /&gt;
==== Specifications ====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ Arm Cortex-M Series Specifications&lt;br /&gt;
! Model !! Cortex-M0 !! Cortex-M0+ !! Cortex-M1 !! Cortex-M23&lt;br /&gt;
|-&lt;br /&gt;
! CPU&lt;br /&gt;
| Armv6-M up to 50 MHz&lt;br /&gt;
| Armv6-M up to 50 MHz&lt;br /&gt;
| Armv6-M up to 50 MHz&lt;br /&gt;
| Armv6-M up to 50 MHz&lt;br /&gt;
|-&lt;br /&gt;
! GPU&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
|-&lt;br /&gt;
! APU&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
|-&lt;br /&gt;
! RAM&lt;br /&gt;
| Up to 1 MB&lt;br /&gt;
| Up to 1 MB&lt;br /&gt;
| Up to 1 MB&lt;br /&gt;
| Up to 1 MB&lt;br /&gt;
|-&lt;br /&gt;
! Display&lt;br /&gt;
| External via SPI/I2C&lt;br /&gt;
| External via SPI/I2C&lt;br /&gt;
| External via SPI/I2C&lt;br /&gt;
| External via SPI/I2C&lt;br /&gt;
|-&lt;br /&gt;
! Ports&lt;br /&gt;
| SPI, I2C, UART, GPIO&lt;br /&gt;
| SPI, I2C, UART, GPIO&lt;br /&gt;
| SPI, I2C, UART, GPIO&lt;br /&gt;
| SPI, I2C, UART, GPIO&lt;br /&gt;
|-&lt;br /&gt;
! Storage Options&lt;br /&gt;
| Up to 256KB Flash memory, SD, SPI-based NOR&lt;br /&gt;
| Up to 256KB Flash memory, SD, SPI-based NOR&lt;br /&gt;
| Up to 256KB Flash memory, SD, SPI-based NOR&lt;br /&gt;
| Up to 256KB Flash memory, SD, SPI-based NOR&lt;br /&gt;
|-&lt;br /&gt;
! Network&lt;br /&gt;
| External modules, SPI, I2C&lt;br /&gt;
| External modules, SPI, I2C&lt;br /&gt;
| External modules, SPI, I2C&lt;br /&gt;
| External modules, SPI, I2C&lt;br /&gt;
|-&lt;br /&gt;
! Power&lt;br /&gt;
| Approx 0.00005W&lt;br /&gt;
| Approx 0.00005W&lt;br /&gt;
| Approx 0.00005W&lt;br /&gt;
| Approx 0.00005W&lt;br /&gt;
|-&lt;br /&gt;
! OS Support&lt;br /&gt;
| FreeRTOS, Zephyr&lt;br /&gt;
| FreeRTOS, Zephyr&lt;br /&gt;
| FreeRTOS, Zephyr&lt;br /&gt;
| FreeRTOS, Zephyr&lt;br /&gt;
|-&lt;br /&gt;
! Price Range&lt;br /&gt;
| $1&lt;br /&gt;
| $1&lt;br /&gt;
| $1&lt;br /&gt;
| $1&lt;br /&gt;
|-&lt;br /&gt;
! Documentation and Source code&lt;br /&gt;
| Documentation: [https://documentation-service.arm.com/static/5e8e294afd977155116a6a5b?token= Documentation]&lt;br /&gt;
&lt;br /&gt;
Github: [https://github.com/ARM-software/CMSIS_5 CMSIS_5 GitHub] &lt;br /&gt;
&lt;br /&gt;
| Documentation: [https://developer.arm.com Cortex-M0+ Technical Reference Manual] &lt;br /&gt;
&lt;br /&gt;
Github: [https://github.com/ARM-software/CMSIS_5 CMSIS_5 GitHub]&lt;br /&gt;
&lt;br /&gt;
| Documentation: [https://developer.arm.com Cortex-M1 Technical Reference Manual]&lt;br /&gt;
&lt;br /&gt;
Github: [https://github.com/ARM-software/CMSIS_5 CMSIS_5 GitHub]&lt;br /&gt;
&lt;br /&gt;
|Documentation: [https://developer.arm.com Cortex-M23 Processor Technical Reference Manual]&lt;br /&gt;
&lt;br /&gt;
Github: [https://github.com/ARM-software/CMSIS_5 CMSIS_5 GitHub]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ Arm Cortex-M Series Specifications (Advanced Models)&lt;br /&gt;
! Model !! Cortex-M3 !! Cortex-M4 !! Cortex-M33 !! Cortex-M35P&lt;br /&gt;
|-&lt;br /&gt;
! CPU&lt;br /&gt;
| Armv7-M up to 120 MHz&lt;br /&gt;
| Armv7-M up to 120 MHz&lt;br /&gt;
| Armv8-M up to 200 MHz&lt;br /&gt;
| Armv8-M up to 200 MHz&lt;br /&gt;
|-&lt;br /&gt;
! GPU&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
|-&lt;br /&gt;
! APU&lt;br /&gt;
| N/A&lt;br /&gt;
| Optional DSP&lt;br /&gt;
| Optional DSP and TrustZone&lt;br /&gt;
| Optional DSP and TrustZone&lt;br /&gt;
|-&lt;br /&gt;
! RAM&lt;br /&gt;
| Up to 64MB&lt;br /&gt;
| Up to 64MB&lt;br /&gt;
| Up to 128MB&lt;br /&gt;
| Up to 128MB&lt;br /&gt;
|-&lt;br /&gt;
! Display&lt;br /&gt;
| External via SPI/I2C&lt;br /&gt;
| External via SPI/I2C&lt;br /&gt;
| External via SPI/I2C&lt;br /&gt;
| External via SPI/I2C&lt;br /&gt;
|-&lt;br /&gt;
! Ports&lt;br /&gt;
| SPI, I2C, UART, GPIO&lt;br /&gt;
| SPI, I2C, UART, GPIO&lt;br /&gt;
| SPI, I2C, UART, GPIO&lt;br /&gt;
| SPI, I2C, UART, GPIO&lt;br /&gt;
|-&lt;br /&gt;
! Storage Options&lt;br /&gt;
| Up to 1MB Flash Memory, SD, NAND, NOR&lt;br /&gt;
| Up to 1MB Flash Memory, SD, NAND, NOR&lt;br /&gt;
| Up to 1MB Flash Memory, SD, NAND, NOR&lt;br /&gt;
| Up to 1MB Flash Memory, SD, NAND, NOR&lt;br /&gt;
|-&lt;br /&gt;
! Network&lt;br /&gt;
| External Modules, SPI, I2C&lt;br /&gt;
| External Modules, SPI, I2C&lt;br /&gt;
| External Modules, SPI, I2C&lt;br /&gt;
| External Modules, SPI, I2C&lt;br /&gt;
|-&lt;br /&gt;
! Power&lt;br /&gt;
| Approx. 0.001 W&lt;br /&gt;
| Approx. 0.001 W&lt;br /&gt;
| Approx. 0.0015 W&lt;br /&gt;
| Approx. 0.0015 W&lt;br /&gt;
|-&lt;br /&gt;
! OS Support&lt;br /&gt;
| FreeRTOS, Zephyr&lt;br /&gt;
| FreeRTOS, Zephyr&lt;br /&gt;
| FreeRTOS, Zephyr&lt;br /&gt;
| FreeRTOS, Zephyr&lt;br /&gt;
|-&lt;br /&gt;
! Price Range&lt;br /&gt;
| $1-$3&lt;br /&gt;
| $1-$5&lt;br /&gt;
| $1-$5&lt;br /&gt;
| $2-$6&lt;br /&gt;
|-&lt;br /&gt;
! Documentation and Source code&lt;br /&gt;
| Documentation: [https://developer.arm.com/documentation/ddi0337/latest/ Cortex-M3 Technical Reference Manual]&lt;br /&gt;
&lt;br /&gt;
Github: [https://github.com/ARM-software/CMSIS_5 CMSIS_5 GitHub]&lt;br /&gt;
| Documentation: [https://developer.arm.com/documentation/ddi0439/b/Introduction/Product-documentation/Documentation Cortex-M4 Technical Reference Manual]&lt;br /&gt;
&lt;br /&gt;
Github: [https://github.com/ARM-software/CMSIS_5 CMSIS_5 GitHub]&lt;br /&gt;
| Documentation: [https://developer.arm.com/documentation/100230/latest/ Arm Cortex-M33 Processor Technical Reference Manual]&lt;br /&gt;
&lt;br /&gt;
Github: [https://github.com/ARM-software/CMSIS_5 CMSIS_5 GitHub]&lt;br /&gt;
| Documentation: [https://developer.arm.com/Processors/Cortex-M35P Cortex-M35P]&lt;br /&gt;
&lt;br /&gt;
Github: [https://github.com/ARM-software/CMSIS_5 CMSIS_5 GitHub]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ Arm Cortex-M Series Specifications (High-Performance Models)&lt;br /&gt;
! Model !! Cortex-M55 !! Cortex-M7&lt;br /&gt;
|-&lt;br /&gt;
! CPU&lt;br /&gt;
| Armv8.1-M up to 250 MHz&lt;br /&gt;
| Armv7E-M up to 600 MHz&lt;br /&gt;
|-&lt;br /&gt;
! GPU&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
|-&lt;br /&gt;
! APU&lt;br /&gt;
| Optional Helium vector processing&lt;br /&gt;
| Optional DSP&lt;br /&gt;
|-&lt;br /&gt;
! RAM&lt;br /&gt;
| Up to 256MB&lt;br /&gt;
| Up to 512MB&lt;br /&gt;
|-&lt;br /&gt;
! Display&lt;br /&gt;
| External via SPI/I2C&lt;br /&gt;
| External via SPI/I2C&lt;br /&gt;
|-&lt;br /&gt;
! Ports&lt;br /&gt;
| SPI, I2C, UART, GPIO&lt;br /&gt;
| SPI, I2C, UART, GPIO&lt;br /&gt;
|-&lt;br /&gt;
! Storage Options&lt;br /&gt;
| Up to 2MB Flash memory, SD, NAND, NOR&lt;br /&gt;
| Up to 2MB Flash memory, SD, NAND, NOR&lt;br /&gt;
|-&lt;br /&gt;
! Network&lt;br /&gt;
| External Modules, SPI, I2C&lt;br /&gt;
| External Modules, SPI, I2C&lt;br /&gt;
|-&lt;br /&gt;
! Power&lt;br /&gt;
| Approx. 0.002 W&lt;br /&gt;
| Approx. 0.003 W&lt;br /&gt;
|-&lt;br /&gt;
! OS Support&lt;br /&gt;
| FreeRTOS, Zephyr&lt;br /&gt;
| FreeRTOS, Zephyr&lt;br /&gt;
|-&lt;br /&gt;
! Price Range&lt;br /&gt;
| $2-$10&lt;br /&gt;
| $5-$20&lt;br /&gt;
|-&lt;br /&gt;
! Documentation and Source code&lt;br /&gt;
| Documentation: [https://developer.arm.com/documentation/101051/latest/ Arm Cortex-M55 Processor Technical Reference Manual]&lt;br /&gt;
&lt;br /&gt;
Github: [https://github.com/ARM-software/CMSIS_5 CMSIS_5 GitHub]&lt;br /&gt;
| Documentation: [https://developer.arm.com/documentation/ddi0489/f/introduction/documentation Arm Cortex-M7 Processor Technical Reference Manual r1p2]&lt;br /&gt;
&lt;br /&gt;
Github: [https://github.com/ARM-software/CMSIS_5 CMSIS_5 GitHub]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Why is Arm Cortex-M Series Popular? ====&lt;br /&gt;
The Arm Cortex-M Series is popular because of its excellent balance of low power consumption, high performance, scalability, integrated peripherals, and vast development tools and software support. The series ranges from the cost-effective Cortex-M0 to the high-performance Cortex-M7.&lt;br /&gt;
&lt;br /&gt;
=== Arduino ===&lt;br /&gt;
An open-source electronics platform based on easy-to-use hardware and software.&lt;br /&gt;
&lt;br /&gt;
==== Pros ====&lt;br /&gt;
* Easy to use&lt;br /&gt;
* Low cost&lt;br /&gt;
* Open source&lt;br /&gt;
* Free software&lt;br /&gt;
&lt;br /&gt;
Arduino is known for its ease of use and strong community support, making it ideal for beginners and hobbyists because of its user-friendly development tool, the Arduino IDE. It also supports a variety of microcontroller boards, including AVR, ARM, and ESP32. Arduino has a large community that provides ample tutorials, libraries, and forums, making it easy to find support and resources.&lt;br /&gt;
&lt;br /&gt;
==== Cons ====&lt;br /&gt;
* Limited processing power&lt;br /&gt;
* Limited Communication&lt;br /&gt;
* Limited Security&lt;br /&gt;
&lt;br /&gt;
Older boards like the Arduino Uno have limited processing power and memory, making it difficult for applications like AI or machine learning. Arduino boards are great for simple tasks and prototypes, but more advanced users may find the lack of features and processing power a blocker for larger and more demanding applications. Its power consumption is also relatively high compared to ESP32 or Arm Cortex-M series processors.&lt;br /&gt;
&lt;br /&gt;
==== Applications ====&lt;br /&gt;
* Home automation&lt;br /&gt;
* Projects/Thesis&lt;br /&gt;
&lt;br /&gt;
==== Models ====&lt;br /&gt;
* Arduino Nano&lt;br /&gt;
* Arduino MKR&lt;br /&gt;
* Arduino UNO Series&lt;br /&gt;
* Arduino Micro&lt;br /&gt;
* Arduino Zero&lt;br /&gt;
* Arduino Mega Series&lt;br /&gt;
&lt;br /&gt;
==== Specifications ====&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ Arduino Specifications&lt;br /&gt;
! Model !! Arduino Nano !! Arduino MKR !! Arduino UNO Series !! Arduino Micro !! Arduino Zero !! Arduino Mega&lt;br /&gt;
|-&lt;br /&gt;
! CPU&lt;br /&gt;
| ATMega328P 16MHz&lt;br /&gt;
| SAMD21 Cortex-M0+ 48MHz&lt;br /&gt;
| ATMega328P 16MHz&lt;br /&gt;
| ATMega32U4 16MHz&lt;br /&gt;
| SAMD21 Cortex-M0+ 48MHz&lt;br /&gt;
| ATmega2560 16MHz&lt;br /&gt;
|-&lt;br /&gt;
! GPU&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
|-&lt;br /&gt;
! APU&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
|-&lt;br /&gt;
! RAM&lt;br /&gt;
| 2KB SRAM&lt;br /&gt;
| 32KB SRAM&lt;br /&gt;
| 2KB SRAM&lt;br /&gt;
| 2.5KB SRAM&lt;br /&gt;
| 32KB SRAM&lt;br /&gt;
| 8KB SRAM&lt;br /&gt;
|-&lt;br /&gt;
! Display&lt;br /&gt;
| External via SPI/I2C/UART&lt;br /&gt;
| External via SPI/I2C/UART&lt;br /&gt;
| External via SPI/I2C/UART&lt;br /&gt;
| External via SPI/I2C/UART&lt;br /&gt;
| External via SPI/I2C/UART&lt;br /&gt;
| External via SPI/I2C/UART&lt;br /&gt;
|-&lt;br /&gt;
! Ports&lt;br /&gt;
| Digital GPIO (6 PWM, 8 Analog)&lt;br /&gt;
| Digital GPIO (4 PWM, 7 Analog)&lt;br /&gt;
| Digital GPIO (6 PWM, 6 Analog)&lt;br /&gt;
| Digital GPIO (7 PWM, 12 Analog)&lt;br /&gt;
| Digital GPIO (12 PWM, 6 Analog)&lt;br /&gt;
| Digital GPIO (16 PWM, 16 Analog)&lt;br /&gt;
|-&lt;br /&gt;
! Storage Options&lt;br /&gt;
| 32 KB Flash Memory&lt;br /&gt;
| 256 KB Flash Memory&lt;br /&gt;
| 32 KB Flash Memory&lt;br /&gt;
| 32 KB Flash Memory&lt;br /&gt;
| 256 KB Flash Memory&lt;br /&gt;
| 256 KB Flash Memory&lt;br /&gt;
|-&lt;br /&gt;
! Network&lt;br /&gt;
| N/A&lt;br /&gt;
| Wi-Fi, Ethernet&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
| External via compatible shields&lt;br /&gt;
| External via compatible shields&lt;br /&gt;
|-&lt;br /&gt;
! Power&lt;br /&gt;
| 19mW&lt;br /&gt;
| 75mW&lt;br /&gt;
| 25mW&lt;br /&gt;
| 25mW&lt;br /&gt;
| 75mW&lt;br /&gt;
| 25mW&lt;br /&gt;
|-&lt;br /&gt;
! OS Support&lt;br /&gt;
| Windows, Linux, macOS&lt;br /&gt;
| Windows, Linux, macOS&lt;br /&gt;
| Windows, Linux, macOS&lt;br /&gt;
| Windows, Linux, macOS&lt;br /&gt;
| Windows, Linux, macOS&lt;br /&gt;
| Windows, Linux, macOS&lt;br /&gt;
|-&lt;br /&gt;
! Price Range&lt;br /&gt;
| $8-$12&lt;br /&gt;
| $15-$30&lt;br /&gt;
| $20-$30&lt;br /&gt;
| $20-$25&lt;br /&gt;
| $20-$25&lt;br /&gt;
| $35-$50&lt;br /&gt;
|-&lt;br /&gt;
! Documentation and Source Code&lt;br /&gt;
| Documentation: [https://docs.arduino.cc/hardware/nano Arduino Nano]  &lt;br /&gt;
&lt;br /&gt;
Source Code(s): [https://create.arduino.cc/projecthub Arduino Project Hub]  &lt;br /&gt;
&lt;br /&gt;
GitHub: [https://github.com/arduino-libraries Arduino Libraries]&lt;br /&gt;
| Documentation: [https://docs.arduino.cc/hardware/mkr-family Arduino MKR Family]  &lt;br /&gt;
&lt;br /&gt;
Source Code(s): [https://create.arduino.cc/projecthub Arduino Project Hub]  &lt;br /&gt;
&lt;br /&gt;
GitHub: [https://github.com/arduino-libraries Arduino Libraries]&lt;br /&gt;
| Documentation: [https://docs.arduino.cc/hardware/uno Getting Started with Arduino UNO]  &lt;br /&gt;
&lt;br /&gt;
Source Code(s): [https://create.arduino.cc/projecthub Arduino Project Hub]  &lt;br /&gt;
&lt;br /&gt;
GitHub: [https://github.com/arduino-libraries Arduino Libraries]&lt;br /&gt;
| Documentation: [https://docs.arduino.cc/hardware/micro Arduino Micro]  &lt;br /&gt;
&lt;br /&gt;
Source Code(s): [https://create.arduino.cc/projecthub Arduino Project Hub]  &lt;br /&gt;
&lt;br /&gt;
GitHub: [https://github.com/arduino-libraries Arduino Libraries]&lt;br /&gt;
| Documentation: [https://docs.arduino.cc/hardware/zero Arduino Zero]  &lt;br /&gt;
&lt;br /&gt;
Source Code(s): [https://create.arduino.cc/projecthub Arduino Project Hub]  &lt;br /&gt;
&lt;br /&gt;
GitHub: [https://github.com/arduino-libraries Arduino Libraries]&lt;br /&gt;
| Documentation: [https://docs.arduino.cc/hardware/mega-2560 Arduino Mega 2560]  &lt;br /&gt;
&lt;br /&gt;
Source Code(s): [https://create.arduino.cc/projecthub Arduino Project Hub]  &lt;br /&gt;
&lt;br /&gt;
GitHub: [https://github.com/arduino-libraries Arduino Libraries]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Why is Arduino popular? ====&lt;br /&gt;
Arduino is popular because of its open-source electronics platform that is easy to use and has a large community of users. It has an easy-to-use, user-friendly IDE. It is affordable and has a broad range of compatible components, making it a leader in DIY electronics, education, and rapid prototyping.&lt;br /&gt;
&lt;br /&gt;
=== NXP i.MX Series ===&lt;br /&gt;
A family of NXP proprietary microprocessors dedicated to multimedia applications based on the ARM architecture.&lt;br /&gt;
&lt;br /&gt;
==== Pros ====&lt;br /&gt;
* Security&lt;br /&gt;
* Energy efficient&lt;br /&gt;
* SoC devices&lt;br /&gt;
&lt;br /&gt;
The NXP i.MX Series offers performance versatility, with different models targeting various market segments. They come with Arm Cortex-A series cores, GPU, and DSP for enhanced performance in multimedia and machine learning. They also include wireless options, including Wi-Fi, Ethernet, Bluetooth, and 5G in some models. The NXP i.MX series also supports a wide development ecosystem, including Yocto and Linux SDKs, for custom applications.&lt;br /&gt;
&lt;br /&gt;
==== Cons ====&lt;br /&gt;
* LPDDR4 devices&lt;br /&gt;
* Cost&lt;br /&gt;
&lt;br /&gt;
In more advanced models of the NXP i.MX series, relatively high power consumption may not be suitable for ultra-low power devices. It may be overkill for simpler tasks. It has a high learning curve for beginners compared to more straightforward platforms like Arduino or Raspberry Pi. Its price also tends to be on the higher side, making them less suitable for cost-sensitive projects.&lt;br /&gt;
&lt;br /&gt;
==== Applications ====&lt;br /&gt;
* Industrial IoT&lt;br /&gt;
* Multimedia&lt;br /&gt;
&lt;br /&gt;
==== Models ====&lt;br /&gt;
* i.MX RT Series&lt;br /&gt;
* i.MX 9 Series&lt;br /&gt;
* i.MX 8 Series&lt;br /&gt;
* i.MX 7 Series&lt;br /&gt;
* i.MX 6 Series&lt;br /&gt;
* i.MX 28 Series&lt;br /&gt;
&lt;br /&gt;
==== Specifications ====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ NXP i.MX Series Specifications&lt;br /&gt;
! Model !! i.MX RT Series !! i.MX 9 Series !! i.MX 8 Series !! i.MX 7 Series !! i.MX 6 Series !! i.MX 28 Series&lt;br /&gt;
|-&lt;br /&gt;
! CPU&lt;br /&gt;
| Arm Cortex-M7/M33 up to 1 GHz&lt;br /&gt;
| Arm Cortex-A55/A32 up to 2.2 GHz&lt;br /&gt;
| Arm Cortex-A72/A53 up to 1.8 GHz&lt;br /&gt;
| Arm Cortex-A7 up to 1 GHz&lt;br /&gt;
| Arm Cortex-A9, up to single to quad-core, up to 1.2 GHz&lt;br /&gt;
| Arm926EJ-S, up to 454 MHz&lt;br /&gt;
|-&lt;br /&gt;
! GPU&lt;br /&gt;
| N/A&lt;br /&gt;
| Vivante GC7000UL, Vulkan&lt;br /&gt;
| Vivante GC7000XS, OpenGL ES, Vulkan&lt;br /&gt;
| N/A&lt;br /&gt;
| Vivante GC880/GC2000 OpenGL ES 2.0&lt;br /&gt;
| N/A&lt;br /&gt;
|-&lt;br /&gt;
! APU&lt;br /&gt;
| N/A&lt;br /&gt;
| Neural Processing Unit (NPU)&lt;br /&gt;
| Integrated DSP, NPU&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
|-&lt;br /&gt;
! RAM&lt;br /&gt;
| External RAM via interfaces&lt;br /&gt;
| Up to 8 GB DDR4/LPDDR4&lt;br /&gt;
| Up to 8 GB DDR4/LPDDR4&lt;br /&gt;
| Up to 2 GB DDR3/LPDDR3&lt;br /&gt;
| Up to 4 GB DDR3/LPDDR2&lt;br /&gt;
| Up to 128MB DDR2&lt;br /&gt;
|-&lt;br /&gt;
! Display&lt;br /&gt;
| External via interface SPI/I2C&lt;br /&gt;
| Up to 3 4K UHD displays&lt;br /&gt;
| 4K UHD display&lt;br /&gt;
| External via interface&lt;br /&gt;
| Up to 1080p HD display&lt;br /&gt;
| 24-bit LCD Controller&lt;br /&gt;
|-&lt;br /&gt;
! Ports&lt;br /&gt;
| SPI, I2C, UART, USB&lt;br /&gt;
| SPI, I2C, PCIe, CAN, USB 3.0&lt;br /&gt;
| I2C, PCIe, CAN, USB 3.0&lt;br /&gt;
| SPI, I2C, USB 2.0&lt;br /&gt;
| USB 2.0, SPI, I2C, UART, PCIe, SATA&lt;br /&gt;
| USB 2.0, SPI, I2C, UART&lt;br /&gt;
|-&lt;br /&gt;
! Storage Options&lt;br /&gt;
| External Flash NOR/NAND&lt;br /&gt;
| eMMC, SD, UFS&lt;br /&gt;
| eMMC, SD, NAND, NOR&lt;br /&gt;
| eMMC, SD, NAND&lt;br /&gt;
| eMMC, SD, NAND, NOR&lt;br /&gt;
| SD, NAND, NOR&lt;br /&gt;
|-&lt;br /&gt;
! Network&lt;br /&gt;
| Ethernet, External Wi-Fi modules&lt;br /&gt;
| Ethernet, Wi-Fi, 5G&lt;br /&gt;
| Ethernet, Wi-Fi, Bluetooth&lt;br /&gt;
| Ethernet, External Wi-Fi modules&lt;br /&gt;
| Ethernet, Wi-Fi via external modules&lt;br /&gt;
| Ethernet, Wi-Fi via external modules&lt;br /&gt;
|-&lt;br /&gt;
! Power&lt;br /&gt;
| 50mW-500mW&lt;br /&gt;
| 500mW-1.5W&lt;br /&gt;
| 1W-3W&lt;br /&gt;
| 200mW-500mW&lt;br /&gt;
| 1W-3W&lt;br /&gt;
| 500mW-1W&lt;br /&gt;
|-&lt;br /&gt;
! OS Support&lt;br /&gt;
| FreeRTOS, Zephyr, Linux distros (Yocto, Ubuntu, etc.)&lt;br /&gt;
| Android, FreeRTOS, Zephyr, Linux distros (Yocto, Ubuntu, etc.)&lt;br /&gt;
| Android, FreeRTOS, Zephyr, Linux distros (Yocto, Ubuntu, etc.)&lt;br /&gt;
| FreeRTOS, Zephyr, Linux distros (Yocto, Ubuntu, etc.)&lt;br /&gt;
| Linux distros (Yocto, Ubuntu, etc.), Android&lt;br /&gt;
| Linux distros (Yocto, Ubuntu, etc.), Windows CE&lt;br /&gt;
|-&lt;br /&gt;
! Price Range&lt;br /&gt;
| $2-$15&lt;br /&gt;
| $20-$50&lt;br /&gt;
| $15-$100&lt;br /&gt;
| $8-$30&lt;br /&gt;
| $10-$50&lt;br /&gt;
| $5-$15&lt;br /&gt;
|-&lt;br /&gt;
! Documentation and Source Code&lt;br /&gt;
| Documentation: [https://www.nxp.com/docs/en/fact-sheet/IMXRT1050FS.pdf i.MX RT Series Brochure]  &lt;br /&gt;
&lt;br /&gt;
SDK: [https://community.nxp.com MCUXpresso SDK Builder]  &lt;br /&gt;
&lt;br /&gt;
GitHub: [https://github.com/nxp-imx nxp-imx]&lt;br /&gt;
| Documentation: [https://www.nxp.com/docs/en/fact-sheet/IMX9.pdf i.MX 9 Applications Processors]  &lt;br /&gt;
&lt;br /&gt;
SDK: [https://community.nxp.com MCUXpresso SDK Builder]  &lt;br /&gt;
&lt;br /&gt;
GitHub: [https://github.com/nxp-imx nxp-imx]&lt;br /&gt;
| Documentation: [https://www.nxp.com/docs/en/brochure/IMX8SERAPPBR.pdf i.MX 8 Series Applications Processors]  &lt;br /&gt;
&lt;br /&gt;
SDK: [https://community.nxp.com MCUXpresso SDK Builder]  &lt;br /&gt;
&lt;br /&gt;
GitHub: [https://github.com/nxp-imx nxp-imx]&lt;br /&gt;
| Documentation: [https://www.nxp.com/docs/en/fact-sheet/IMX7.pdf i.MX 7 Series Applications Processors]  &lt;br /&gt;
&lt;br /&gt;
SDK: [https://community.nxp.com MCUXpresso SDK Builder]  &lt;br /&gt;
&lt;br /&gt;
GitHub: [https://github.com/nxp-imx nxp-imx]&lt;br /&gt;
| Documentation: [https://www.nxp.com/docs/en/fact-sheet/IMX6.pdf i.MX 6 Series Applications Processors]  &lt;br /&gt;
&lt;br /&gt;
SDK: [https://community.nxp.com MCUXpresso SDK Builder]  &lt;br /&gt;
&lt;br /&gt;
GitHub: [https://github.com/nxp-imx nxp-imx]&lt;br /&gt;
| Documentation: [https://www.nxp.com/docs/en/fact-sheet/IMX28.pdf i.MX 28 Series Applications Processors]  &lt;br /&gt;
&lt;br /&gt;
SDK: [https://community.nxp.com MCUXpresso SDK Builder]  &lt;br /&gt;
&lt;br /&gt;
GitHub: [https://github.com/nxp-imx nxp-imx]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Why is NXP i.MX Series Popular? ====&lt;br /&gt;
NXP i.MX Series is popular because of its combination of high-performance processing power, energy efficiency, and flexibility. It is ideal for a wide range of embedded applications such as automotive, industrial, IoT, and consumer electronics. With a broad selection of models, from entry-level to high-end, i.MX caters to various performance and feature needs.&lt;br /&gt;
&lt;br /&gt;
== Comparison Table ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Platform !! Processor !! Performance !! Power Consumption !! Connectivity !! Ecosystem &amp;amp; Tools !! Applications !! Price&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Raspberry Pi&#039;&#039;&#039; || Broadcom SoC (ARM) || High || Medium || Wi-Fi, Ethernet, BT || Linux-based tools, GPIO support || IoT, edge computing, AI/ML || Low&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;NVIDIA Jetson&#039;&#039;&#039; || NVIDIA GPUs with ARM CPU || Very High || High || Wi-Fi, Ethernet || CUDA, TensorRT, Linux tools || AI/ML, robotics, video analytics || High&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;ESP32&#039;&#039;&#039; || Xtensa cores || Medium || Ultra-low || Wi-Fi, BLE || ESP-IDF, Arduino-compatible || IoT, smart home, wearable devices || Very Low&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Texas Instruments Sitara&#039;&#039;&#039; || MSP430 (low-power), Sitara (ARM Cortex-A) || Low to High || Ultra-low (MSP430) / Medium (Sitara) || Ethernet, CAN || Code Composer Studio, RTOS || Energy meters, medical, industrial || Low to Medium&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Qualcomm Snapdragon&#039;&#039;&#039; || ARM Cortex + DSP + AI || Very High || Medium || Wi-Fi, LTE, 5G || Android/Linux SDKs || Smart cameras, robotics, AR/VR || High&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Intel Atom Processors&#039;&#039;&#039; || x86/x86-64 CPU || Low to Medium || Ultra-low || Wi-Fi, Ethernet, BT || Intel SDKs, Linux-based tools || Edge computing, media, IoT || Medium to High&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Microchip PIC Microcontrollers&#039;&#039;&#039; || PIC32, PIC16, PIC18 (varied) || Low to Medium || Ultra-low || SPI, I2C, UART, CAN, etc. || MPLAB X IDE, Microchip Studio || Consumer electronics, automotive, industrial || Very Low&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;STMicroelectronics STM32 Series&#039;&#039;&#039; || ARM Cortex-M cores || Medium to High || Low || Optional (Wi-Fi, BLE) || STM32Cube, HAL libraries || Industrial control, robotics || Low to Medium&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Renesas RX/RL78&#039;&#039;&#039; || RX (32-bit), RL78 (16-bit) || Low to Medium || Very Low || Optional || e2 Studio, Renesas Synergy || Automotive ECUs, home appliances || Low&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;ARM Cortex-M Series&#039;&#039;&#039; || ARM Cortex-M (varied) || Medium to High || Low to Very Low || Varies by vendor || Rich ecosystem, widely supported || IoT, industrial, automotive || Low to Medium&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Arduino&#039;&#039;&#039; || AVR, SAM (ARM Cortex-M), others || Low to Medium || Low to Ultra-low || Optional (Wi-Fi), BLE || Arduino IDE || Prototyping, IoT, Robotics || Very Low&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;NXP i.MX Series&#039;&#039;&#039; || ARM Cortex-A (varied) || Medium to Very High || Medium || Ethernet, Wi-Fi, Bluetooth || Yocto, Linux SDKs, FreeRTOS || Industrial, IoT, Multimedia, Automotive || Medium to High&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Key Points ==&lt;br /&gt;
&lt;br /&gt;
=== Performance ===&lt;br /&gt;
* High-performance platforms like &#039;&#039;&#039;NVIDIA Jetson&#039;&#039;&#039;, &#039;&#039;&#039;Qualcomm Snapdragon&#039;&#039;&#039;, and &#039;&#039;&#039;NXP i.MX Series&#039;&#039;&#039; excel in AI/ML, robotics, and multimedia applications.&lt;br /&gt;
* &#039;&#039;&#039;Raspberry Pi&#039;&#039;&#039; and &#039;&#039;&#039;ESP32&#039;&#039;&#039; offer solid performance for lighter tasks like IoT and edge computing.&lt;br /&gt;
* &#039;&#039;&#039;Texas Instruments Sitara&#039;&#039;&#039; and &#039;&#039;&#039;Microchip PIC Microcontrollers&#039;&#039;&#039; are better suited for low to medium performance tasks, such as embedded systems, energy meters, and automotive electronics.&lt;br /&gt;
&lt;br /&gt;
=== Power Consumption ===&lt;br /&gt;
* &#039;&#039;&#039;ESP32&#039;&#039;&#039;, &#039;&#039;&#039;Microchip PIC&#039;&#039;&#039;, and &#039;&#039;&#039;Renesas RX/RL78&#039;&#039;&#039; have ultra-low power consumption, making them ideal for battery-powered or low-energy applications.&lt;br /&gt;
* &#039;&#039;&#039;Raspberry Pi&#039;&#039;&#039; and &#039;&#039;&#039;Intel Atom Processors&#039;&#039;&#039; offer a balance of performance and power.&lt;br /&gt;
* &#039;&#039;&#039;NVIDIA Jetson&#039;&#039;&#039; and &#039;&#039;&#039;Qualcomm Snapdragon&#039;&#039;&#039; require higher power due to their advanced processing capabilities.&lt;br /&gt;
&lt;br /&gt;
=== Connectivity ===&lt;br /&gt;
* Most platforms offer &#039;&#039;&#039;Wi-Fi, Ethernet, and Bluetooth (BT)&#039;&#039;&#039; connectivity.&lt;br /&gt;
* &#039;&#039;&#039;Qualcomm Snapdragon&#039;&#039;&#039; and &#039;&#039;&#039;NXP i.MX Series&#039;&#039;&#039; extend this to &#039;&#039;&#039;LTE and 5G&#039;&#039;&#039;, making them suitable for more advanced, network-intensive applications.&lt;br /&gt;
&lt;br /&gt;
=== Community Support &amp;amp; Tools ===&lt;br /&gt;
* Platforms like &#039;&#039;&#039;Raspberry Pi&#039;&#039;&#039;, &#039;&#039;&#039;NVIDIA Jetson&#039;&#039;&#039;, and &#039;&#039;&#039;Qualcomm Snapdragon&#039;&#039;&#039; are supported by rich ecosystems and powerful development tools, including &#039;&#039;&#039;CUDA, TensorRT, and various SDKs&#039;&#039;&#039;.&lt;br /&gt;
* &#039;&#039;&#039;Arduino&#039;&#039;&#039;, &#039;&#039;&#039;Microchip PIC&#039;&#039;&#039;, and &#039;&#039;&#039;Texas Instruments Sitara&#039;&#039;&#039; also have strong ecosystems for embedded applications, though they may lack some of the high-performance AI tools available on more powerful platforms.&lt;br /&gt;
&lt;br /&gt;
=== Price ===&lt;br /&gt;
* Low-cost platforms like &#039;&#039;&#039;Raspberry Pi&#039;&#039;&#039;, &#039;&#039;&#039;ESP32&#039;&#039;&#039;, and &#039;&#039;&#039;Arduino&#039;&#039;&#039; are budget-friendly options for educational projects, hobbyists, and low-power IoT devices.&lt;br /&gt;
* Higher-end platforms such as &#039;&#039;&#039;NVIDIA Jetson&#039;&#039;&#039;, &#039;&#039;&#039;Qualcomm Snapdragon&#039;&#039;&#039;, and &#039;&#039;&#039;NXP i.MX Series&#039;&#039;&#039; are more expensive.&lt;br /&gt;
&lt;br /&gt;
{{Footer}}&lt;/div&gt;</summary>
		<author><name>Sonni</name></author>
	</entry>
	<entry>
		<id>https://developerwiki.proventusnova.com/index.php?title=Main_Page&amp;diff=92</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="https://developerwiki.proventusnova.com/index.php?title=Main_Page&amp;diff=92"/>
		<updated>2025-03-25T01:49:26Z</updated>

		<summary type="html">&lt;p&gt;Sonni: Change collaboration section to Footer template&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{DISPLAYTITLE:Home - ProventusNova DeveloperWiki}}&lt;br /&gt;
&lt;br /&gt;
= Welcome to the ProventusNova Developer Wiki =&lt;br /&gt;
&#039;&#039;&#039;Expert knowledge for Embedded Systems, AI, and Software Development.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Looking to build high-performance embedded systems, optimize AI models, or streamline multimedia processing? This wiki is a &#039;&#039;&#039;public knowledge hub&#039;&#039;&#039; designed to help engineers, developers, and businesses solve real-world technical challenges.  &lt;br /&gt;
&lt;br /&gt;
Here, you’ll find &#039;&#039;&#039;step-by-step tutorials, best practices, and deep technical insights&#039;&#039;&#039; to help you bring your projects to life.  &lt;br /&gt;
&lt;br /&gt;
== 🚀 What You’ll Find Here ==&lt;br /&gt;
* &#039;&#039;&#039;Hands-on Tutorials&#039;&#039;&#039; – Practical guides to get you started quickly.  &lt;br /&gt;
* &#039;&#039;&#039;Industry Best Practices&#039;&#039;&#039; – Proven workflows and methodologies.  &lt;br /&gt;
* &#039;&#039;&#039;Optimized Solutions&#039;&#039;&#039; – Performance tuning for embedded, AI, and multimedia applications.  &lt;br /&gt;
* &#039;&#039;&#039;Open-Source Resources&#039;&#039;&#039; – Code samples, frameworks, and tools to accelerate development.  &lt;br /&gt;
&lt;br /&gt;
Whether you&#039;re an individual developer, a startup, or an enterprise, you’ll find resources here to &#039;&#039;&#039;enhance your expertise and improve your products&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
== 💡 Featured Tutorials ==&lt;br /&gt;
🔧 **[Building a Custom Linux OS with Yocto](Yocto-Project-Tutorial)** – Tailor an operating system for your hardware.  &lt;br /&gt;
🤖 **[Deploying AI for Real-Time Video Analytics](AI-Video-Analytics)** – Use machine learning for intelligent decision-making.  &lt;br /&gt;
🎥 **[Optimizing GStreamer Pipelines](GStreamer-Optimization)** – Improve multimedia processing efficiency.  &lt;br /&gt;
🌐 **[Scaling Web Applications](Django-Web-Development)** – Design backends for performance and reliability.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&amp;lt;!-- For more topics, explore the **[[Tutorials Index]]**. --&amp;gt;&lt;br /&gt;
== ⚙️ Technical Resources ==&lt;br /&gt;
* [[Embedded Systems Development]] – BSPs, firmware, and real-time processing.&lt;br /&gt;
**To get to know Embedded Platforms, here is an overview of the top platforms in the market right now!&lt;br /&gt;
***[[Embedded Platforms]] - From Raspberry Pi to Nvidia Jetson, get to know these embedded platforms.&lt;br /&gt;
**[[How to create a custom yocto meta layer|Create custom yocto meta layer]] - Create your own custom yocto meta layer.&lt;br /&gt;
* [[AI &amp;amp; Computer Vision]] – Edge AI, model training, and deployment.&lt;br /&gt;
* [[GStreamer Development]] – High-performance video and audio streaming.&lt;br /&gt;
** [[GStreamer Fundamentals]] – Introduction, pipelines, elements, and data flow.&lt;br /&gt;
** [[GStreamer Daemon]] – Remote control of pipelines with JSON-RPC API.&lt;br /&gt;
** [[GStreamer Interpipes]] – Efficient multi-pipeline communication.&lt;br /&gt;
** [[GStreamer Application Development]] – Writing custom plugins and apps.&lt;br /&gt;
** [[GStreamer Best Practices]] – Performance optimization and debugging.&lt;br /&gt;
* [[Web &amp;amp; Cloud Solutions]] – Scalable, production-ready applications.&lt;br /&gt;
&lt;br /&gt;
== 👀  Are you a PM looking to expand your knowledge in the software development industry?==&lt;br /&gt;
This tutorial is for you!&lt;br /&gt;
Here, you&#039;ll explore essential concepts, from basic to intermediate, that will help you navigate technical discussions with engineers and clients more confidently&lt;br /&gt;
&lt;br /&gt;
📄&#039;&#039;&#039;[[Project Manager Tutorials]]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
{{Footer}}&lt;/div&gt;</summary>
		<author><name>Sonni</name></author>
	</entry>
	<entry>
		<id>https://developerwiki.proventusnova.com/index.php?title=Template:Footer&amp;diff=91</id>
		<title>Template:Footer</title>
		<link rel="alternate" type="text/html" href="https://developerwiki.proventusnova.com/index.php?title=Template:Footer&amp;diff=91"/>
		<updated>2025-03-25T01:48:22Z</updated>

		<summary type="html">&lt;p&gt;Sonni: Create footer template&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== 🏗 Need a Solution for Your Project? ==&lt;br /&gt;
Are you looking for ways to:  &lt;br /&gt;
✅ Optimize your &#039;&#039;&#039;embedded system&#039;&#039;&#039; for better performance?  &lt;br /&gt;
✅ Integrate &#039;&#039;&#039;AI and computer vision&#039;&#039;&#039; into your products?  &lt;br /&gt;
✅ Improve &#039;&#039;&#039;multimedia processing&#039;&#039;&#039; for real-time applications?  &lt;br /&gt;
✅ Develop a &#039;&#039;&#039;robust and scalable&#039;&#039;&#039; web platform?  &lt;br /&gt;
&lt;br /&gt;
Our team has helped businesses across multiple industries solve these challenges.  &lt;br /&gt;
&lt;br /&gt;
📩 &#039;&#039;&#039;Let’s collaborate!&#039;&#039;&#039; Contact us at &#039;&#039;&#039;[support@proventusnova.com](mailto:support@proventusnova.com)&#039;&#039;&#039; or visit &#039;&#039;&#039;[ProventusNova.com](https://proventusnova.com)&#039;&#039;&#039; to discuss your project.&lt;/div&gt;</summary>
		<author><name>Sonni</name></author>
	</entry>
	<entry>
		<id>https://developerwiki.proventusnova.com/index.php?title=How_to_create_a_custom_yocto_meta_layer&amp;diff=90</id>
		<title>How to create a custom yocto meta layer</title>
		<link rel="alternate" type="text/html" href="https://developerwiki.proventusnova.com/index.php?title=How_to_create_a_custom_yocto_meta_layer&amp;diff=90"/>
		<updated>2025-03-24T13:30:15Z</updated>

		<summary type="html">&lt;p&gt;Sonni: /* Step 1. Create custom layer */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Introduction=&lt;br /&gt;
&lt;br /&gt;
This wiki will provide a detailed guide on how to create a custom Yocto meta-layer.&lt;br /&gt;
&amp;lt;!--- COMMENTED THIS OUT SINCE THIS PAGE ONLY SHOWS HOW TO CREATE A CUSTOM LAYER, NOT CREATE A YOCTO IMAGE&lt;br /&gt;
=Pre-requisites=&lt;br /&gt;
1. The host machine must have the following requirements:&lt;br /&gt;
*At least 90GB of space&lt;br /&gt;
*At least 8GB RAM&lt;br /&gt;
*Host OS must be a supported Linux distribution. (To see supported Linux Distributions, click [https://docs.yoctoproject.org/ref-manual/system-requirements.html#supported-linux-distributions supported distributions])&lt;br /&gt;
&lt;br /&gt;
2. The following packages must be present in the host machine:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
apt install build-essential chrpath cpio debianutils diffstat file gawk gcc git iputils-ping libacl1 liblz4-tool locales python3 python3-git python3-jinja2 python3-pexpect python3-pip python3-subunit socat texinfo unzip wget xz-utils zstd&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
3. Get the latest copy of the [https://github.com/yoctoproject/poky Poky repository]. &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
git clone git://git.yoctoproject.org/poky&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
---&amp;gt;&lt;br /&gt;
=Create Base Meta-Layer=&lt;br /&gt;
&lt;br /&gt;
This section contains steps to create the base custom meta-layer. &amp;lt;br&amp;gt;&lt;br /&gt;
Creating a layer can be done manually or automatically via bitbake. &amp;lt;br&amp;gt;&lt;br /&gt;
After completion, the custom base meta-layer will contain the following parts:&lt;br /&gt;
&lt;br /&gt;
* Custom layer configuration&lt;br /&gt;
* Custom distro configuration&lt;br /&gt;
* Custom machine&lt;br /&gt;
* Custom config template files&lt;br /&gt;
* Custom image recipe&lt;br /&gt;
&lt;br /&gt;
==Manually create layer==&lt;br /&gt;
&lt;br /&gt;
===Step 1. Add base layer.conf file===&lt;br /&gt;
&lt;br /&gt;
The layer configuration file provides Yocto with the configuration for the custom meta-layer.&lt;br /&gt;
It shall be stored in a directory called &#039;&#039;&#039;conf&#039;&#039;&#039; inside the base meta-layer directory, and it shall be named layer.conf.&lt;br /&gt;
According to the [https://docs.yoctoproject.org/dev/dev-manual/layers.html Yocto documentation] it is recommended to start from an existing layer.conf file from a different meta-layer and change it according to the custom requirements.&lt;br /&gt;
&lt;br /&gt;
For instance, here is an example of how the directory structure should look after creating the layer.conf file.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
meta-proventusnova/&lt;br /&gt;
├── conf&lt;br /&gt;
│   └── layer.conf&lt;br /&gt;
└── README.md&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
An example layer.conf file based on [https://github.com/OE4T/tegra-demo-distro/blob/scarthgap-l4t-r35.x/layers/meta-tegrademo/conf/layer.conf NVIDIA OE4T tegra_demo_distro] is shown in the following code snipped.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
BBPATH =. &amp;quot;${LAYERDIR}:&amp;quot;&lt;br /&gt;
BBFILES += &amp;quot;${LAYERDIR}/recipes-*/*/*.bb ${LAYERDIR}/recipes-*/*/*.bbappend&amp;quot;&lt;br /&gt;
BBFILES_DYNAMIC += &amp;quot;swupdate:${LAYERDIR}/dynamic-layers/meta-swupdate/recipes-*/*/*.bb \&lt;br /&gt;
                    swupdate:${LAYERDIR}/dynamic-layers/meta-swupdate/recipes-*/*/*.bbappend&amp;quot;&lt;br /&gt;
&lt;br /&gt;
BBFILE_COLLECTIONS += &amp;quot;proventusnova&amp;quot;&lt;br /&gt;
BBFILE_PATTERN_proventusnova = &amp;quot;^${LAYERDIR}/&amp;quot;&lt;br /&gt;
BBFILE_PRIORITY_proventusnova = &amp;quot;50&amp;quot;&lt;br /&gt;
&lt;br /&gt;
LAYERVERSION_proventusnova = &amp;quot;4&amp;quot;&lt;br /&gt;
LAYERSERIES_COMPAT_proventusnova = &amp;quot;scarthgap&amp;quot;&lt;br /&gt;
&lt;br /&gt;
# This is used by the tegra-distro-sanity bbclass&lt;br /&gt;
# to identify the distro layer directory during&lt;br /&gt;
# bblayers checks.&lt;br /&gt;
TD_DISTRO_LAYERDIR = &amp;quot;${LAYERDIR}&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Step 2. Add base distro config===&lt;br /&gt;
&lt;br /&gt;
In order to add the initial distro configuration, it is necessary to create distro configuration file inside the &#039;&#039;&#039;meta-layer/conf/distro&#039;&#039;&#039; directory.&lt;br /&gt;
&lt;br /&gt;
Here is an example of how the directory structure should look like:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
meta-proventusnova/&lt;br /&gt;
├── conf&lt;br /&gt;
│   ├── distro&lt;br /&gt;
│   │   └── proventusnova.conf&lt;br /&gt;
│   └── layer.conf&lt;br /&gt;
└── README.md&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The same as with the layer.conf, it is easier to start with an existing distro configuration file and modify it in order to fit the project requirements. For example, the following corresponds to a distro configuration file based on the [https://github.com/OE4T/tegra-demo-distro/blob/scarthgap-l4t-r35.x/layers/meta-tegrademo/conf/distro/tegrademo.conf NVIDIA tegra_demo_distro]:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
DISTRO = &amp;quot;proventusnova&amp;quot;&lt;br /&gt;
DISTRO_NAME = &amp;quot;ProventusNova Custom Distro&amp;quot;&lt;br /&gt;
DISTRO_VERSION_BASE = &amp;quot;1.0&amp;quot;&lt;br /&gt;
DISTRO_VERSION = &amp;quot;${DISTRO_VERSION_BASE}+snapshot-${METADATA_REVISION}&amp;quot;&lt;br /&gt;
DISTRO_CODENAME = &amp;quot;proventusnova&amp;quot;&lt;br /&gt;
SDK_VENDOR = &amp;quot;-proventusnova&amp;quot;&lt;br /&gt;
SDK_VERSION := &amp;quot;${@&#039;${DISTRO_VERSION}&#039;.replace(&#039;snapshot-${METADATA_REVISION}&#039;,&#039;snapshot&#039;)}&amp;quot;&lt;br /&gt;
SDK_VERSION[vardepvalue] = &amp;quot;${SDK_VERSION}&amp;quot;&lt;br /&gt;
&lt;br /&gt;
MAINTAINER = &amp;quot;ProventusNova team &amp;lt;support@proventusnova.com&amp;gt;&amp;quot;&lt;br /&gt;
&lt;br /&gt;
TARGET_VENDOR = &amp;quot;-proventusnova&amp;quot;&lt;br /&gt;
&lt;br /&gt;
# New ${DISTRO}-&amp;lt;version&amp;gt; setting for sanity checks.&lt;br /&gt;
# Increment version number (and the corresponding&lt;br /&gt;
# setting int the template bblayers.conf.sample file)&lt;br /&gt;
# each time the layer settings are changed.&lt;br /&gt;
REQUIRED_PROVENTUSNOVA_BBLAYERS_CONF_VERSION = &amp;quot;${DISTRO}-1&amp;quot;&lt;br /&gt;
&lt;br /&gt;
LOCALCONF_VERSION = &amp;quot;2&amp;quot;&lt;br /&gt;
&lt;br /&gt;
PROVENTUSNOVA_DEFAULT_DISTRO_FEATURES = &amp;quot;largefile opengl ptest multiarch wayland vulkan systemd pam virtualization usrmerge&amp;quot;&lt;br /&gt;
&lt;br /&gt;
DISTRO_FEATURES ?= &amp;quot;${DISTRO_FEATURES_DEFAULT} ${PROVENTUSNOVA_DEFAULT_DISTRO_FEATURES}&amp;quot;&lt;br /&gt;
&lt;br /&gt;
# Jetson platforms do not use linux-yocto, but for QEMU testing&lt;br /&gt;
# align with the poky distro.&lt;br /&gt;
PREFERRED_VERSION_linux-yocto ?= &amp;quot;5.19%&amp;quot;&lt;br /&gt;
PREFERRED_VERSION_linux-yocto-rt ?= &amp;quot;5.19%&amp;quot;&lt;br /&gt;
&lt;br /&gt;
SDK_NAME = &amp;quot;${DISTRO}-${TCLIBC}-${SDKMACHINE}-${IMAGE_BASENAME}-${TUNE_PKGARCH}-${MACHINE}&amp;quot;&lt;br /&gt;
SDKPATHINSTALL = &amp;quot;/opt/${DISTRO}/${SDK_VERSION}&amp;quot;&lt;br /&gt;
&lt;br /&gt;
TCLIBCAPPEND = &amp;quot;&amp;quot;&lt;br /&gt;
&lt;br /&gt;
PACKAGE_CLASSES ?= &amp;quot;package_rpm&amp;quot;&lt;br /&gt;
&lt;br /&gt;
SANITY_TESTED_DISTROS ?= &amp;quot; \&lt;br /&gt;
            ubuntu-20.04 \n \&lt;br /&gt;
            ubuntu-22.04 \n \&lt;br /&gt;
            ubuntu-24.04 \n \&lt;br /&gt;
            &amp;quot;&lt;br /&gt;
&lt;br /&gt;
# Most NVIDIA-supplied services expect systemd&lt;br /&gt;
INIT_MANAGER = &amp;quot;systemd&amp;quot;&lt;br /&gt;
&lt;br /&gt;
require conf/distro/include/no-static-libs.inc&lt;br /&gt;
require conf/distro/include/yocto-uninative.inc&lt;br /&gt;
require conf/distro/include/security_flags.inc&lt;br /&gt;
INHERIT += &amp;quot;uninative&amp;quot;&lt;br /&gt;
&lt;br /&gt;
LICENSE_FLAGS_ACCEPTED += &amp;quot;commercial_faad2 commercial_x264&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Step 3. Add base machine===&lt;br /&gt;
&lt;br /&gt;
This step might not be required, if there is already a machine that can be used from a different meta-layer.&lt;br /&gt;
However, it is still recommended to create a custom machine configuration based on that machine in order to keep better order of the machine used in the custom Yocto build.&lt;br /&gt;
&lt;br /&gt;
To create a custom machine, it is necessary to add a machine.conf file in the &#039;&#039;&#039;meta-layer/conf/machine&#039;&#039;&#039; directory.&lt;br /&gt;
For example, this is how the directory structure should look when adding a new machine to the custom meta-layer:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
meta-proventusnova/&lt;br /&gt;
├── conf&lt;br /&gt;
│   ├── distro&lt;br /&gt;
│   │   └── proventusnova.conf&lt;br /&gt;
│   ├── layer.conf&lt;br /&gt;
│   └── machine&lt;br /&gt;
│       └── proventusnova-jetson-orin-nx-16-devkit.conf&lt;br /&gt;
└── README.md&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
And, as a reference, here is a custom machine based on [https://github.com/OE4T/meta-tegra/blob/scarthgap/conf/machine/p3509-a02-p3767-0000.conf NVIDIA meta-tegra  p3509-a02-p3767-0000] machine.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
#@TYPE: Machine&lt;br /&gt;
#@NAME: Nvidia Jetson Orin NX 16GB (P3767-0000)&lt;br /&gt;
#@DESCRIPTION: Nvidia Jetson Orin NX 16GB module in P3509 carrier&lt;br /&gt;
&lt;br /&gt;
TEGRA_FLASHVAR_PINMUX_CONFIG ?= &amp;quot;tegra234-mb1-bct-pinmux-p3767-hdmi-a03.dtsi&amp;quot;&lt;br /&gt;
TEGRA_FLASHVAR_PMC_CONFIG ?= &amp;quot;tegra234-mb1-bct-padvoltage-p3767-hdmi-a03.dtsi&amp;quot;&lt;br /&gt;
TEGRA_PLUGIN_MANAGER_OVERLAYS ?= &amp;quot;tegra234-carveouts.dtbo tegra-optee.dtbo tegra234-p3768-0000+p3767-0000-dynamic.dtbo tegra234-dcb-p3767-0000-hdmi.dtbo&amp;quot;&lt;br /&gt;
TEGRA_DCE_OVERLAY ?= &amp;quot;tegra234-dcb-p3767-0000-hdmi.dtbo&amp;quot;&lt;br /&gt;
&lt;br /&gt;
require conf/machine/include/orin-nx.inc&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Step 4. Add initial config template files===&lt;br /&gt;
&lt;br /&gt;
Bitbake will require 2 configuration files for building an image:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;bblayers.conf&#039;&#039;&#039;: This file contains information about the location of the required meta-layers for the project.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;local.conf&#039;&#039;&#039;: This file contains general build configuration for bitbake. For instance, in this file it is possible to determine where to store downloads, cache and even which package management configuration to use.&lt;br /&gt;
&lt;br /&gt;
Now, in order to simplify the configuration of a custom Yocto build, it is possible to include template configuration files on the custom meta-layer. This practice is encouraged in order to increase build repeatability.&lt;br /&gt;
&lt;br /&gt;
These 2 files are generally created inside &#039;&#039;&#039;meta-layer/conf/templates/template-name&#039;&#039;&#039;.&lt;br /&gt;
For reference, this is how the directory structure would look like after the files are created:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
meta-proventusnova/&lt;br /&gt;
├── conf&lt;br /&gt;
│   ├── distro&lt;br /&gt;
│   │   └── proventusnova.conf&lt;br /&gt;
│   ├── layer.conf&lt;br /&gt;
│   ├── machine&lt;br /&gt;
│   │   └── proventusnova-jetson-orin-nx-16-devkit.conf&lt;br /&gt;
│   └── templates&lt;br /&gt;
│       └── proventusnova&lt;br /&gt;
│           ├── bblayers.conf.sample&lt;br /&gt;
│           └── local.conf.sample&lt;br /&gt;
└── README.md&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Here is an example of a custom bblayers.conf.sample file based on [https://github.com/OE4T/tegra-demo-distro/blob/scarthgap-l4t-r35.x/layers/meta-tegrademo/conf/templates/tegrademo/bblayers.conf.sample NVIDIA tegra-demo-distro]:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
# Version of layers configuration, specific to&lt;br /&gt;
# each defined distro in the repository.&lt;br /&gt;
# Format: ${DISTRO}-&amp;lt;version&amp;gt;&lt;br /&gt;
TD_BBLAYERS_CONF_VERSION = &amp;quot;proventusnova-1&amp;quot;&lt;br /&gt;
&lt;br /&gt;
BBPATH = &amp;quot;${TOPDIR}&amp;quot;&lt;br /&gt;
BBFILES ?= &amp;quot;&amp;quot;&lt;br /&gt;
&lt;br /&gt;
BBLAYERS ?= &amp;quot; \&lt;br /&gt;
  ##OEROOT##/meta \&lt;br /&gt;
  ##OEROOT##/../meta-tegra \&lt;br /&gt;
  ##OEROOT##/../meta-tegra-community \&lt;br /&gt;
  ##OEROOT##/../meta-virtualization \&lt;br /&gt;
  ##OEROOT##/../meta-openembedded/meta-oe \&lt;br /&gt;
  ##OEROOT##/../meta-openembedded/meta-python \&lt;br /&gt;
  ##OEROOT##/../meta-openembedded/meta-networking \&lt;br /&gt;
  ##OEROOT##/../meta-openembedded/meta-filesystems \&lt;br /&gt;
  &amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
And, this is an example of a custom local.conf.sample file based on [https://github.com/OE4T/tegra-demo-distro/blob/scarthgap-l4t-r35.x/layers/meta-tegrademo/conf/templates/tegrademo/local.conf.sample NVIDIA tegra-demo-distro]:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
#&lt;br /&gt;
# Machine Selection&lt;br /&gt;
#&lt;br /&gt;
MACHINE ??= &amp;quot;proventusnova-jetson-orin-nx-16-devkit.conf&amp;quot;&lt;br /&gt;
&lt;br /&gt;
#&lt;br /&gt;
# Where to place downloads&lt;br /&gt;
#&lt;br /&gt;
DL_DIR ?= &amp;quot;${TOPDIR}/../downloads&amp;quot;&lt;br /&gt;
&lt;br /&gt;
#&lt;br /&gt;
# Where to place shared-state files&lt;br /&gt;
#&lt;br /&gt;
SSTATE_DIR ?= &amp;quot;${TOPDIR}/../sstate-cache&amp;quot;&lt;br /&gt;
&lt;br /&gt;
#&lt;br /&gt;
# Where to place the build output&lt;br /&gt;
#&lt;br /&gt;
TMPDIR = &amp;quot;${TOPDIR}/tmp&amp;quot;&lt;br /&gt;
&lt;br /&gt;
#&lt;br /&gt;
# Default policy (distro) config&lt;br /&gt;
#&lt;br /&gt;
DISTRO ?= &amp;quot;proventusnova&amp;quot;&lt;br /&gt;
&lt;br /&gt;
#&lt;br /&gt;
# Package Management configuration&lt;br /&gt;
#&lt;br /&gt;
PACKAGE_CLASSES ?= &amp;quot;package_deb&amp;quot;&lt;br /&gt;
&lt;br /&gt;
#&lt;br /&gt;
# SDK target architecture&lt;br /&gt;
#&lt;br /&gt;
SDKMACHINE ?= &amp;quot;x86_64&amp;quot;&lt;br /&gt;
&lt;br /&gt;
#&lt;br /&gt;
# Extra image configuration defaults&lt;br /&gt;
#&lt;br /&gt;
EXTRA_IMAGE_FEATURES ?= &amp;quot;debug-tweaks&amp;quot;&lt;br /&gt;
&lt;br /&gt;
#&lt;br /&gt;
# Additional image features&lt;br /&gt;
#&lt;br /&gt;
USER_CLASSES ?= &amp;quot;buildstats&amp;quot;&lt;br /&gt;
&lt;br /&gt;
#&lt;br /&gt;
# Interactive shell configuration&lt;br /&gt;
#&lt;br /&gt;
PATCHRESOLVE = &amp;quot;noop&amp;quot;&lt;br /&gt;
&lt;br /&gt;
#&lt;br /&gt;
# Disk Space Monitoring during the build&lt;br /&gt;
#&lt;br /&gt;
BB_DISKMON_DIRS ??= &amp;quot;\&lt;br /&gt;
    STOPTASKS,${TMPDIR},1G,100K \&lt;br /&gt;
    STOPTASKS,${DL_DIR},1G,100K \&lt;br /&gt;
    STOPTASKS,${SSTATE_DIR},1G,100K \&lt;br /&gt;
    STOPTASKS,/tmp,100M,100K \&lt;br /&gt;
    HALT,${TMPDIR},100M,1K \&lt;br /&gt;
    HALT,${DL_DIR},100M,1K \&lt;br /&gt;
    HALT,${SSTATE_DIR},100M,1K \&lt;br /&gt;
    HALT,/tmp,10M,1K&amp;quot;&lt;br /&gt;
&lt;br /&gt;
#&lt;br /&gt;
# Qemu configuration&lt;br /&gt;
#&lt;br /&gt;
PACKAGECONFIG:append:pn-qemu-system-native = &amp;quot; sdl&amp;quot;&lt;br /&gt;
&lt;br /&gt;
# CONF_VERSION is increased each time build/conf/ changes incompatibly and is used to&lt;br /&gt;
# track the version of this file when it was generated.&lt;br /&gt;
CONF_VERSION = &amp;quot;2&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Step 5. Add base image recipe===&lt;br /&gt;
&lt;br /&gt;
In order to create a custom image, it is necessary to add a custom image recipe file.&lt;br /&gt;
This file is usually added inside the &#039;&#039;&#039;meta-layer/recipes-layer/images&#039;&#039;&#039; directory.&lt;br /&gt;
&lt;br /&gt;
For example:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
meta-proventusnova/&lt;br /&gt;
├── conf&lt;br /&gt;
│   ├── distro&lt;br /&gt;
│   │   └── proventusnova.conf&lt;br /&gt;
│   ├── layer.conf&lt;br /&gt;
│   ├── machine&lt;br /&gt;
│   │   └── proventusnova-jetson-orin-nx-16-devkit.conf&lt;br /&gt;
│   └── templates&lt;br /&gt;
│       ├── bblayers.conf.sample&lt;br /&gt;
│       └── local.conf.sample&lt;br /&gt;
├── README.md&lt;br /&gt;
└── recipes-proventusnova&lt;br /&gt;
    └── images&lt;br /&gt;
        └── proventusnova-image-base.bb&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Once again, a custom image recipe can be based on another image recipe. And, it can also import other image recipes in order to include their base configurations.&lt;br /&gt;
&lt;br /&gt;
As reference, the following image recipe was based on [https://github.com/OE4T/tegra-demo-distro/blob/scarthgap-l4t-r35.x/layers/meta-tegrademo/recipes-demo/images/demo-image-base.bb NVIDIA tegra-demo-distro demo-image-base recipe]:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
DESCRIPTION = &amp;quot;ProventusNova base image&amp;quot;&lt;br /&gt;
LICENSE = &amp;quot;CLOSED&amp;quot;&lt;br /&gt;
&lt;br /&gt;
inherit core-image&lt;br /&gt;
&lt;br /&gt;
IMAGE_FEATURES += &amp;quot;ssh-server-openssh debug-tweaks&amp;quot;&lt;br /&gt;
&lt;br /&gt;
CORE_IMAGE_BASE_INSTALL += &amp;quot;systemd&amp;quot;&lt;br /&gt;
TOOLCHAIN_HOST_TASK += &amp;quot;nativesdk-packagegroup-cuda-sdk-host&amp;quot;&lt;br /&gt;
&lt;br /&gt;
inherit nopackages&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Create layer via bitbake==&lt;br /&gt;
&lt;br /&gt;
===Step 1. Create custom layer===&lt;br /&gt;
&lt;br /&gt;
Run the following command to create a custom layer&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
bitbake-layers create-layer meta-proventusnova&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This should automatically create a meta-proventusnova folder with the following structure&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
meta-proventusnova/&lt;br /&gt;
├── conf&lt;br /&gt;
│   └──layer.conf&lt;br /&gt;
├── COPYING.MIT&lt;br /&gt;
├── recipes-example&lt;br /&gt;
│    └── example&lt;br /&gt;
│        └──example_0.1.bb&lt;br /&gt;
└── README.md&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Step 2. Add custom layer===&lt;br /&gt;
Next is to add the custom layer to the project.&amp;lt;br&amp;gt;&lt;br /&gt;
Run the following command to add the custom layer&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
bitbake-layers add-layer meta-proventusnova&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This should add the meta-proventusnova to the build/conf/bblayers.conf file or where you set the build directory.&lt;br /&gt;
&lt;br /&gt;
= 🏗 Need a Solution for Your Project? =&lt;br /&gt;
Are you looking for ways to:  &lt;br /&gt;
✅ Optimize your &#039;&#039;&#039;embedded system&#039;&#039;&#039; for better performance?  &lt;br /&gt;
✅ Integrate &#039;&#039;&#039;AI and computer vision&#039;&#039;&#039; into your products?  &lt;br /&gt;
✅ Improve &#039;&#039;&#039;multimedia processing&#039;&#039;&#039; for real-time applications?  &lt;br /&gt;
✅ Develop a &#039;&#039;&#039;robust and scalable&#039;&#039;&#039; web platform?  &lt;br /&gt;
&lt;br /&gt;
Our team has helped businesses across multiple industries solve these challenges.  &lt;br /&gt;
&lt;br /&gt;
📩 &#039;&#039;&#039;Let’s collaborate!&#039;&#039;&#039; Contact us at &#039;&#039;&#039;[support@proventusnova.com](mailto:support@proventusnova.com)&#039;&#039;&#039; or visit &#039;&#039;&#039;[ProventusNova.com](https://proventusnova.com)&#039;&#039;&#039; to discuss your project.&lt;/div&gt;</summary>
		<author><name>Sonni</name></author>
	</entry>
	<entry>
		<id>https://developerwiki.proventusnova.com/index.php?title=Main_Page&amp;diff=89</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="https://developerwiki.proventusnova.com/index.php?title=Main_Page&amp;diff=89"/>
		<updated>2025-03-24T09:01:26Z</updated>

		<summary type="html">&lt;p&gt;Sonni: Add link to How to create a custom yocto meta layer page&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{DISPLAYTITLE:Home - ProventusNova DeveloperWiki}}&lt;br /&gt;
&lt;br /&gt;
= Welcome to the ProventusNova Developer Wiki =&lt;br /&gt;
&#039;&#039;&#039;Expert knowledge for Embedded Systems, AI, and Software Development.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Looking to build high-performance embedded systems, optimize AI models, or streamline multimedia processing? This wiki is a &#039;&#039;&#039;public knowledge hub&#039;&#039;&#039; designed to help engineers, developers, and businesses solve real-world technical challenges.  &lt;br /&gt;
&lt;br /&gt;
Here, you’ll find &#039;&#039;&#039;step-by-step tutorials, best practices, and deep technical insights&#039;&#039;&#039; to help you bring your projects to life.  &lt;br /&gt;
&lt;br /&gt;
== 🚀 What You’ll Find Here ==&lt;br /&gt;
* &#039;&#039;&#039;Hands-on Tutorials&#039;&#039;&#039; – Practical guides to get you started quickly.  &lt;br /&gt;
* &#039;&#039;&#039;Industry Best Practices&#039;&#039;&#039; – Proven workflows and methodologies.  &lt;br /&gt;
* &#039;&#039;&#039;Optimized Solutions&#039;&#039;&#039; – Performance tuning for embedded, AI, and multimedia applications.  &lt;br /&gt;
* &#039;&#039;&#039;Open-Source Resources&#039;&#039;&#039; – Code samples, frameworks, and tools to accelerate development.  &lt;br /&gt;
&lt;br /&gt;
Whether you&#039;re an individual developer, a startup, or an enterprise, you’ll find resources here to &#039;&#039;&#039;enhance your expertise and improve your products&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
== 💡 Featured Tutorials ==&lt;br /&gt;
🔧 **[Building a Custom Linux OS with Yocto](Yocto-Project-Tutorial)** – Tailor an operating system for your hardware.  &lt;br /&gt;
🤖 **[Deploying AI for Real-Time Video Analytics](AI-Video-Analytics)** – Use machine learning for intelligent decision-making.  &lt;br /&gt;
🎥 **[Optimizing GStreamer Pipelines](GStreamer-Optimization)** – Improve multimedia processing efficiency.  &lt;br /&gt;
🌐 **[Scaling Web Applications](Django-Web-Development)** – Design backends for performance and reliability.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&amp;lt;!-- For more topics, explore the **[[Tutorials Index]]**. --&amp;gt;&lt;br /&gt;
== ⚙️ Technical Resources ==&lt;br /&gt;
* [[Embedded Systems Development]] – BSPs, firmware, and real-time processing.&lt;br /&gt;
**To get to know Embedded Platforms, here is an overview of the top platforms in the market right now!&lt;br /&gt;
***[[Embedded Platforms]] - From Raspberry Pi to Nvidia Jetson, get to know these embedded platforms.&lt;br /&gt;
**[[How to create a custom yocto meta layer|Create custom yocto meta layer]] - Create your own custom yocto meta layer.&lt;br /&gt;
* [[AI &amp;amp; Computer Vision]] – Edge AI, model training, and deployment.&lt;br /&gt;
* [[GStreamer Development]] – High-performance video and audio streaming.&lt;br /&gt;
** [[GStreamer Fundamentals]] – Introduction, pipelines, elements, and data flow.&lt;br /&gt;
** [[GStreamer Daemon]] – Remote control of pipelines with JSON-RPC API.&lt;br /&gt;
** [[GStreamer Interpipes]] – Efficient multi-pipeline communication.&lt;br /&gt;
** [[GStreamer Application Development]] – Writing custom plugins and apps.&lt;br /&gt;
** [[GStreamer Best Practices]] – Performance optimization and debugging.&lt;br /&gt;
* [[Web &amp;amp; Cloud Solutions]] – Scalable, production-ready applications.&lt;br /&gt;
&lt;br /&gt;
== 👀  Are you a PM looking to expand your knowledge in the software development industry?==&lt;br /&gt;
This tutorial is for you!&lt;br /&gt;
Here, you&#039;ll explore essential concepts, from basic to intermediate, that will help you navigate technical discussions with engineers and clients more confidently&lt;br /&gt;
&lt;br /&gt;
📄&#039;&#039;&#039;[[Project Manager Tutorials]]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== 🏗 Need a Solution for Your Project? ==&lt;br /&gt;
Are you looking for ways to:  &lt;br /&gt;
✅ Optimize your &#039;&#039;&#039;embedded system&#039;&#039;&#039; for better performance?  &lt;br /&gt;
✅ Integrate &#039;&#039;&#039;AI and computer vision&#039;&#039;&#039; into your products?  &lt;br /&gt;
✅ Improve &#039;&#039;&#039;multimedia processing&#039;&#039;&#039; for real-time applications?  &lt;br /&gt;
✅ Develop a &#039;&#039;&#039;robust and scalable&#039;&#039;&#039; web platform?  &lt;br /&gt;
&lt;br /&gt;
Our team has helped businesses across multiple industries solve these challenges.  &lt;br /&gt;
&lt;br /&gt;
📩 &#039;&#039;&#039;Let’s collaborate!&#039;&#039;&#039; Contact us at &#039;&#039;&#039;[support@proventusnova.com](mailto:support@proventusnova.com)&#039;&#039;&#039; or visit &#039;&#039;&#039;[ProventusNova.com](https://proventusnova.com)&#039;&#039;&#039; to discuss your project.&lt;/div&gt;</summary>
		<author><name>Sonni</name></author>
	</entry>
	<entry>
		<id>https://developerwiki.proventusnova.com/index.php?title=How_to_create_a_custom_yocto_meta_layer&amp;diff=88</id>
		<title>How to create a custom yocto meta layer</title>
		<link rel="alternate" type="text/html" href="https://developerwiki.proventusnova.com/index.php?title=How_to_create_a_custom_yocto_meta_layer&amp;diff=88"/>
		<updated>2025-03-24T09:00:56Z</updated>

		<summary type="html">&lt;p&gt;Sonni: Add how to create a layer via bitbake&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Introduction=&lt;br /&gt;
&lt;br /&gt;
This wiki will provide a detailed guide on how to create a custom Yocto meta-layer.&lt;br /&gt;
&amp;lt;!--- COMMENTED THIS OUT SINCE THIS PAGE ONLY SHOWS HOW TO CREATE A CUSTOM LAYER, NOT CREATE A YOCTO IMAGE&lt;br /&gt;
=Pre-requisites=&lt;br /&gt;
1. The host machine must have the following requirements:&lt;br /&gt;
*At least 90GB of space&lt;br /&gt;
*At least 8GB RAM&lt;br /&gt;
*Host OS must be a supported Linux distribution. (To see supported Linux Distributions, click [https://docs.yoctoproject.org/ref-manual/system-requirements.html#supported-linux-distributions supported distributions])&lt;br /&gt;
&lt;br /&gt;
2. The following packages must be present in the host machine:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
apt install build-essential chrpath cpio debianutils diffstat file gawk gcc git iputils-ping libacl1 liblz4-tool locales python3 python3-git python3-jinja2 python3-pexpect python3-pip python3-subunit socat texinfo unzip wget xz-utils zstd&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
3. Get the latest copy of the [https://github.com/yoctoproject/poky Poky repository]. &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
git clone git://git.yoctoproject.org/poky&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
---&amp;gt;&lt;br /&gt;
=Create Base Meta-Layer=&lt;br /&gt;
&lt;br /&gt;
This section contains steps to create the base custom meta-layer. &amp;lt;br&amp;gt;&lt;br /&gt;
Creating a layer can be done manually or automatically via bitbake. &amp;lt;br&amp;gt;&lt;br /&gt;
After completion, the custom base meta-layer will contain the following parts:&lt;br /&gt;
&lt;br /&gt;
* Custom layer configuration&lt;br /&gt;
* Custom distro configuration&lt;br /&gt;
* Custom machine&lt;br /&gt;
* Custom config template files&lt;br /&gt;
* Custom image recipe&lt;br /&gt;
&lt;br /&gt;
==Manually create layer==&lt;br /&gt;
&lt;br /&gt;
===Step 1. Add base layer.conf file===&lt;br /&gt;
&lt;br /&gt;
The layer configuration file provides Yocto with the configuration for the custom meta-layer.&lt;br /&gt;
It shall be stored in a directory called &#039;&#039;&#039;conf&#039;&#039;&#039; inside the base meta-layer directory, and it shall be named layer.conf.&lt;br /&gt;
According to the [https://docs.yoctoproject.org/dev/dev-manual/layers.html Yocto documentation] it is recommended to start from an existing layer.conf file from a different meta-layer and change it according to the custom requirements.&lt;br /&gt;
&lt;br /&gt;
For instance, here is an example of how the directory structure should look after creating the layer.conf file.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
meta-proventusnova/&lt;br /&gt;
├── conf&lt;br /&gt;
│   └── layer.conf&lt;br /&gt;
└── README.md&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
An example layer.conf file based on [https://github.com/OE4T/tegra-demo-distro/blob/scarthgap-l4t-r35.x/layers/meta-tegrademo/conf/layer.conf NVIDIA OE4T tegra_demo_distro] is shown in the following code snipped.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
BBPATH =. &amp;quot;${LAYERDIR}:&amp;quot;&lt;br /&gt;
BBFILES += &amp;quot;${LAYERDIR}/recipes-*/*/*.bb ${LAYERDIR}/recipes-*/*/*.bbappend&amp;quot;&lt;br /&gt;
BBFILES_DYNAMIC += &amp;quot;swupdate:${LAYERDIR}/dynamic-layers/meta-swupdate/recipes-*/*/*.bb \&lt;br /&gt;
                    swupdate:${LAYERDIR}/dynamic-layers/meta-swupdate/recipes-*/*/*.bbappend&amp;quot;&lt;br /&gt;
&lt;br /&gt;
BBFILE_COLLECTIONS += &amp;quot;proventusnova&amp;quot;&lt;br /&gt;
BBFILE_PATTERN_proventusnova = &amp;quot;^${LAYERDIR}/&amp;quot;&lt;br /&gt;
BBFILE_PRIORITY_proventusnova = &amp;quot;50&amp;quot;&lt;br /&gt;
&lt;br /&gt;
LAYERVERSION_proventusnova = &amp;quot;4&amp;quot;&lt;br /&gt;
LAYERSERIES_COMPAT_proventusnova = &amp;quot;scarthgap&amp;quot;&lt;br /&gt;
&lt;br /&gt;
# This is used by the tegra-distro-sanity bbclass&lt;br /&gt;
# to identify the distro layer directory during&lt;br /&gt;
# bblayers checks.&lt;br /&gt;
TD_DISTRO_LAYERDIR = &amp;quot;${LAYERDIR}&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Step 2. Add base distro config===&lt;br /&gt;
&lt;br /&gt;
In order to add the initial distro configuration, it is necessary to create distro configuration file inside the &#039;&#039;&#039;meta-layer/conf/distro&#039;&#039;&#039; directory.&lt;br /&gt;
&lt;br /&gt;
Here is an example of how the directory structure should look like:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
meta-proventusnova/&lt;br /&gt;
├── conf&lt;br /&gt;
│   ├── distro&lt;br /&gt;
│   │   └── proventusnova.conf&lt;br /&gt;
│   └── layer.conf&lt;br /&gt;
└── README.md&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The same as with the layer.conf, it is easier to start with an existing distro configuration file and modify it in order to fit the project requirements. For example, the following corresponds to a distro configuration file based on the [https://github.com/OE4T/tegra-demo-distro/blob/scarthgap-l4t-r35.x/layers/meta-tegrademo/conf/distro/tegrademo.conf NVIDIA tegra_demo_distro]:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
DISTRO = &amp;quot;proventusnova&amp;quot;&lt;br /&gt;
DISTRO_NAME = &amp;quot;ProventusNova Custom Distro&amp;quot;&lt;br /&gt;
DISTRO_VERSION_BASE = &amp;quot;1.0&amp;quot;&lt;br /&gt;
DISTRO_VERSION = &amp;quot;${DISTRO_VERSION_BASE}+snapshot-${METADATA_REVISION}&amp;quot;&lt;br /&gt;
DISTRO_CODENAME = &amp;quot;proventusnova&amp;quot;&lt;br /&gt;
SDK_VENDOR = &amp;quot;-proventusnova&amp;quot;&lt;br /&gt;
SDK_VERSION := &amp;quot;${@&#039;${DISTRO_VERSION}&#039;.replace(&#039;snapshot-${METADATA_REVISION}&#039;,&#039;snapshot&#039;)}&amp;quot;&lt;br /&gt;
SDK_VERSION[vardepvalue] = &amp;quot;${SDK_VERSION}&amp;quot;&lt;br /&gt;
&lt;br /&gt;
MAINTAINER = &amp;quot;ProventusNova team &amp;lt;support@proventusnova.com&amp;gt;&amp;quot;&lt;br /&gt;
&lt;br /&gt;
TARGET_VENDOR = &amp;quot;-proventusnova&amp;quot;&lt;br /&gt;
&lt;br /&gt;
# New ${DISTRO}-&amp;lt;version&amp;gt; setting for sanity checks.&lt;br /&gt;
# Increment version number (and the corresponding&lt;br /&gt;
# setting int the template bblayers.conf.sample file)&lt;br /&gt;
# each time the layer settings are changed.&lt;br /&gt;
REQUIRED_PROVENTUSNOVA_BBLAYERS_CONF_VERSION = &amp;quot;${DISTRO}-1&amp;quot;&lt;br /&gt;
&lt;br /&gt;
LOCALCONF_VERSION = &amp;quot;2&amp;quot;&lt;br /&gt;
&lt;br /&gt;
PROVENTUSNOVA_DEFAULT_DISTRO_FEATURES = &amp;quot;largefile opengl ptest multiarch wayland vulkan systemd pam virtualization usrmerge&amp;quot;&lt;br /&gt;
&lt;br /&gt;
DISTRO_FEATURES ?= &amp;quot;${DISTRO_FEATURES_DEFAULT} ${PROVENTUSNOVA_DEFAULT_DISTRO_FEATURES}&amp;quot;&lt;br /&gt;
&lt;br /&gt;
# Jetson platforms do not use linux-yocto, but for QEMU testing&lt;br /&gt;
# align with the poky distro.&lt;br /&gt;
PREFERRED_VERSION_linux-yocto ?= &amp;quot;5.19%&amp;quot;&lt;br /&gt;
PREFERRED_VERSION_linux-yocto-rt ?= &amp;quot;5.19%&amp;quot;&lt;br /&gt;
&lt;br /&gt;
SDK_NAME = &amp;quot;${DISTRO}-${TCLIBC}-${SDKMACHINE}-${IMAGE_BASENAME}-${TUNE_PKGARCH}-${MACHINE}&amp;quot;&lt;br /&gt;
SDKPATHINSTALL = &amp;quot;/opt/${DISTRO}/${SDK_VERSION}&amp;quot;&lt;br /&gt;
&lt;br /&gt;
TCLIBCAPPEND = &amp;quot;&amp;quot;&lt;br /&gt;
&lt;br /&gt;
PACKAGE_CLASSES ?= &amp;quot;package_rpm&amp;quot;&lt;br /&gt;
&lt;br /&gt;
SANITY_TESTED_DISTROS ?= &amp;quot; \&lt;br /&gt;
            ubuntu-20.04 \n \&lt;br /&gt;
            ubuntu-22.04 \n \&lt;br /&gt;
            ubuntu-24.04 \n \&lt;br /&gt;
            &amp;quot;&lt;br /&gt;
&lt;br /&gt;
# Most NVIDIA-supplied services expect systemd&lt;br /&gt;
INIT_MANAGER = &amp;quot;systemd&amp;quot;&lt;br /&gt;
&lt;br /&gt;
require conf/distro/include/no-static-libs.inc&lt;br /&gt;
require conf/distro/include/yocto-uninative.inc&lt;br /&gt;
require conf/distro/include/security_flags.inc&lt;br /&gt;
INHERIT += &amp;quot;uninative&amp;quot;&lt;br /&gt;
&lt;br /&gt;
LICENSE_FLAGS_ACCEPTED += &amp;quot;commercial_faad2 commercial_x264&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Step 3. Add base machine===&lt;br /&gt;
&lt;br /&gt;
This step might not be required, if there is already a machine that can be used from a different meta-layer.&lt;br /&gt;
However, it is still recommended to create a custom machine configuration based on that machine in order to keep better order of the machine used in the custom Yocto build.&lt;br /&gt;
&lt;br /&gt;
To create a custom machine, it is necessary to add a machine.conf file in the &#039;&#039;&#039;meta-layer/conf/machine&#039;&#039;&#039; directory.&lt;br /&gt;
For example, this is how the directory structure should look when adding a new machine to the custom meta-layer:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
meta-proventusnova/&lt;br /&gt;
├── conf&lt;br /&gt;
│   ├── distro&lt;br /&gt;
│   │   └── proventusnova.conf&lt;br /&gt;
│   ├── layer.conf&lt;br /&gt;
│   └── machine&lt;br /&gt;
│       └── proventusnova-jetson-orin-nx-16-devkit.conf&lt;br /&gt;
└── README.md&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
And, as a reference, here is a custom machine based on [https://github.com/OE4T/meta-tegra/blob/scarthgap/conf/machine/p3509-a02-p3767-0000.conf NVIDIA meta-tegra  p3509-a02-p3767-0000] machine.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
#@TYPE: Machine&lt;br /&gt;
#@NAME: Nvidia Jetson Orin NX 16GB (P3767-0000)&lt;br /&gt;
#@DESCRIPTION: Nvidia Jetson Orin NX 16GB module in P3509 carrier&lt;br /&gt;
&lt;br /&gt;
TEGRA_FLASHVAR_PINMUX_CONFIG ?= &amp;quot;tegra234-mb1-bct-pinmux-p3767-hdmi-a03.dtsi&amp;quot;&lt;br /&gt;
TEGRA_FLASHVAR_PMC_CONFIG ?= &amp;quot;tegra234-mb1-bct-padvoltage-p3767-hdmi-a03.dtsi&amp;quot;&lt;br /&gt;
TEGRA_PLUGIN_MANAGER_OVERLAYS ?= &amp;quot;tegra234-carveouts.dtbo tegra-optee.dtbo tegra234-p3768-0000+p3767-0000-dynamic.dtbo tegra234-dcb-p3767-0000-hdmi.dtbo&amp;quot;&lt;br /&gt;
TEGRA_DCE_OVERLAY ?= &amp;quot;tegra234-dcb-p3767-0000-hdmi.dtbo&amp;quot;&lt;br /&gt;
&lt;br /&gt;
require conf/machine/include/orin-nx.inc&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Step 4. Add initial config template files===&lt;br /&gt;
&lt;br /&gt;
Bitbake will require 2 configuration files for building an image:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;bblayers.conf&#039;&#039;&#039;: This file contains information about the location of the required meta-layers for the project.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;local.conf&#039;&#039;&#039;: This file contains general build configuration for bitbake. For instance, in this file it is possible to determine where to store downloads, cache and even which package management configuration to use.&lt;br /&gt;
&lt;br /&gt;
Now, in order to simplify the configuration of a custom Yocto build, it is possible to include template configuration files on the custom meta-layer. This practice is encouraged in order to increase build repeatability.&lt;br /&gt;
&lt;br /&gt;
These 2 files are generally created inside &#039;&#039;&#039;meta-layer/conf/templates/template-name&#039;&#039;&#039;.&lt;br /&gt;
For reference, this is how the directory structure would look like after the files are created:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
meta-proventusnova/&lt;br /&gt;
├── conf&lt;br /&gt;
│   ├── distro&lt;br /&gt;
│   │   └── proventusnova.conf&lt;br /&gt;
│   ├── layer.conf&lt;br /&gt;
│   ├── machine&lt;br /&gt;
│   │   └── proventusnova-jetson-orin-nx-16-devkit.conf&lt;br /&gt;
│   └── templates&lt;br /&gt;
│       └── proventusnova&lt;br /&gt;
│           ├── bblayers.conf.sample&lt;br /&gt;
│           └── local.conf.sample&lt;br /&gt;
└── README.md&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Here is an example of a custom bblayers.conf.sample file based on [https://github.com/OE4T/tegra-demo-distro/blob/scarthgap-l4t-r35.x/layers/meta-tegrademo/conf/templates/tegrademo/bblayers.conf.sample NVIDIA tegra-demo-distro]:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
# Version of layers configuration, specific to&lt;br /&gt;
# each defined distro in the repository.&lt;br /&gt;
# Format: ${DISTRO}-&amp;lt;version&amp;gt;&lt;br /&gt;
TD_BBLAYERS_CONF_VERSION = &amp;quot;proventusnova-1&amp;quot;&lt;br /&gt;
&lt;br /&gt;
BBPATH = &amp;quot;${TOPDIR}&amp;quot;&lt;br /&gt;
BBFILES ?= &amp;quot;&amp;quot;&lt;br /&gt;
&lt;br /&gt;
BBLAYERS ?= &amp;quot; \&lt;br /&gt;
  ##OEROOT##/meta \&lt;br /&gt;
  ##OEROOT##/../meta-tegra \&lt;br /&gt;
  ##OEROOT##/../meta-tegra-community \&lt;br /&gt;
  ##OEROOT##/../meta-virtualization \&lt;br /&gt;
  ##OEROOT##/../meta-openembedded/meta-oe \&lt;br /&gt;
  ##OEROOT##/../meta-openembedded/meta-python \&lt;br /&gt;
  ##OEROOT##/../meta-openembedded/meta-networking \&lt;br /&gt;
  ##OEROOT##/../meta-openembedded/meta-filesystems \&lt;br /&gt;
  &amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
And, this is an example of a custom local.conf.sample file based on [https://github.com/OE4T/tegra-demo-distro/blob/scarthgap-l4t-r35.x/layers/meta-tegrademo/conf/templates/tegrademo/local.conf.sample NVIDIA tegra-demo-distro]:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
#&lt;br /&gt;
# Machine Selection&lt;br /&gt;
#&lt;br /&gt;
MACHINE ??= &amp;quot;proventusnova-jetson-orin-nx-16-devkit.conf&amp;quot;&lt;br /&gt;
&lt;br /&gt;
#&lt;br /&gt;
# Where to place downloads&lt;br /&gt;
#&lt;br /&gt;
DL_DIR ?= &amp;quot;${TOPDIR}/../downloads&amp;quot;&lt;br /&gt;
&lt;br /&gt;
#&lt;br /&gt;
# Where to place shared-state files&lt;br /&gt;
#&lt;br /&gt;
SSTATE_DIR ?= &amp;quot;${TOPDIR}/../sstate-cache&amp;quot;&lt;br /&gt;
&lt;br /&gt;
#&lt;br /&gt;
# Where to place the build output&lt;br /&gt;
#&lt;br /&gt;
TMPDIR = &amp;quot;${TOPDIR}/tmp&amp;quot;&lt;br /&gt;
&lt;br /&gt;
#&lt;br /&gt;
# Default policy (distro) config&lt;br /&gt;
#&lt;br /&gt;
DISTRO ?= &amp;quot;proventusnova&amp;quot;&lt;br /&gt;
&lt;br /&gt;
#&lt;br /&gt;
# Package Management configuration&lt;br /&gt;
#&lt;br /&gt;
PACKAGE_CLASSES ?= &amp;quot;package_deb&amp;quot;&lt;br /&gt;
&lt;br /&gt;
#&lt;br /&gt;
# SDK target architecture&lt;br /&gt;
#&lt;br /&gt;
SDKMACHINE ?= &amp;quot;x86_64&amp;quot;&lt;br /&gt;
&lt;br /&gt;
#&lt;br /&gt;
# Extra image configuration defaults&lt;br /&gt;
#&lt;br /&gt;
EXTRA_IMAGE_FEATURES ?= &amp;quot;debug-tweaks&amp;quot;&lt;br /&gt;
&lt;br /&gt;
#&lt;br /&gt;
# Additional image features&lt;br /&gt;
#&lt;br /&gt;
USER_CLASSES ?= &amp;quot;buildstats&amp;quot;&lt;br /&gt;
&lt;br /&gt;
#&lt;br /&gt;
# Interactive shell configuration&lt;br /&gt;
#&lt;br /&gt;
PATCHRESOLVE = &amp;quot;noop&amp;quot;&lt;br /&gt;
&lt;br /&gt;
#&lt;br /&gt;
# Disk Space Monitoring during the build&lt;br /&gt;
#&lt;br /&gt;
BB_DISKMON_DIRS ??= &amp;quot;\&lt;br /&gt;
    STOPTASKS,${TMPDIR},1G,100K \&lt;br /&gt;
    STOPTASKS,${DL_DIR},1G,100K \&lt;br /&gt;
    STOPTASKS,${SSTATE_DIR},1G,100K \&lt;br /&gt;
    STOPTASKS,/tmp,100M,100K \&lt;br /&gt;
    HALT,${TMPDIR},100M,1K \&lt;br /&gt;
    HALT,${DL_DIR},100M,1K \&lt;br /&gt;
    HALT,${SSTATE_DIR},100M,1K \&lt;br /&gt;
    HALT,/tmp,10M,1K&amp;quot;&lt;br /&gt;
&lt;br /&gt;
#&lt;br /&gt;
# Qemu configuration&lt;br /&gt;
#&lt;br /&gt;
PACKAGECONFIG:append:pn-qemu-system-native = &amp;quot; sdl&amp;quot;&lt;br /&gt;
&lt;br /&gt;
# CONF_VERSION is increased each time build/conf/ changes incompatibly and is used to&lt;br /&gt;
# track the version of this file when it was generated.&lt;br /&gt;
CONF_VERSION = &amp;quot;2&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Step 5. Add base image recipe===&lt;br /&gt;
&lt;br /&gt;
In order to create a custom image, it is necessary to add a custom image recipe file.&lt;br /&gt;
This file is usually added inside the &#039;&#039;&#039;meta-layer/recipes-layer/images&#039;&#039;&#039; directory.&lt;br /&gt;
&lt;br /&gt;
For example:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
meta-proventusnova/&lt;br /&gt;
├── conf&lt;br /&gt;
│   ├── distro&lt;br /&gt;
│   │   └── proventusnova.conf&lt;br /&gt;
│   ├── layer.conf&lt;br /&gt;
│   ├── machine&lt;br /&gt;
│   │   └── proventusnova-jetson-orin-nx-16-devkit.conf&lt;br /&gt;
│   └── templates&lt;br /&gt;
│       ├── bblayers.conf.sample&lt;br /&gt;
│       └── local.conf.sample&lt;br /&gt;
├── README.md&lt;br /&gt;
└── recipes-proventusnova&lt;br /&gt;
    └── images&lt;br /&gt;
        └── proventusnova-image-base.bb&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Once again, a custom image recipe can be based on another image recipe. And, it can also import other image recipes in order to include their base configurations.&lt;br /&gt;
&lt;br /&gt;
As reference, the following image recipe was based on [https://github.com/OE4T/tegra-demo-distro/blob/scarthgap-l4t-r35.x/layers/meta-tegrademo/recipes-demo/images/demo-image-base.bb NVIDIA tegra-demo-distro demo-image-base recipe]:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
DESCRIPTION = &amp;quot;ProventusNova base image&amp;quot;&lt;br /&gt;
LICENSE = &amp;quot;CLOSED&amp;quot;&lt;br /&gt;
&lt;br /&gt;
inherit core-image&lt;br /&gt;
&lt;br /&gt;
IMAGE_FEATURES += &amp;quot;ssh-server-openssh debug-tweaks&amp;quot;&lt;br /&gt;
&lt;br /&gt;
CORE_IMAGE_BASE_INSTALL += &amp;quot;systemd&amp;quot;&lt;br /&gt;
TOOLCHAIN_HOST_TASK += &amp;quot;nativesdk-packagegroup-cuda-sdk-host&amp;quot;&lt;br /&gt;
&lt;br /&gt;
inherit nopackages&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Create layer via bitbake==&lt;br /&gt;
&lt;br /&gt;
===Step 1. Create custom layer===&lt;br /&gt;
&lt;br /&gt;
Run the following command to create a custom layer&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
bitbake-layers create-layer meta-proventusnova&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This should automatically create a meta-proventusnova folder with the following structure&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
meta-proventusnova/&lt;br /&gt;
├── conf&lt;br /&gt;
│   └──layer.conf&lt;br /&gt;
├── COPYING.MIT&lt;br /&gt;
├── recipes-example&lt;br /&gt;
└── README.md&lt;br /&gt;
    └── example&lt;br /&gt;
        └──exambple_0.1.bb&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Step 2. Add custom layer===&lt;br /&gt;
Next is to add the custom layer to the project.&amp;lt;br&amp;gt;&lt;br /&gt;
Run the following command to add the custom layer&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
bitbake-layers add-layer meta-proventusnova&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This should add the meta-proventusnova to the build/conf/bblayers.conf file or where you set the build directory.&lt;br /&gt;
&lt;br /&gt;
= 🏗 Need a Solution for Your Project? =&lt;br /&gt;
Are you looking for ways to:  &lt;br /&gt;
✅ Optimize your &#039;&#039;&#039;embedded system&#039;&#039;&#039; for better performance?  &lt;br /&gt;
✅ Integrate &#039;&#039;&#039;AI and computer vision&#039;&#039;&#039; into your products?  &lt;br /&gt;
✅ Improve &#039;&#039;&#039;multimedia processing&#039;&#039;&#039; for real-time applications?  &lt;br /&gt;
✅ Develop a &#039;&#039;&#039;robust and scalable&#039;&#039;&#039; web platform?  &lt;br /&gt;
&lt;br /&gt;
Our team has helped businesses across multiple industries solve these challenges.  &lt;br /&gt;
&lt;br /&gt;
📩 &#039;&#039;&#039;Let’s collaborate!&#039;&#039;&#039; Contact us at &#039;&#039;&#039;[support@proventusnova.com](mailto:support@proventusnova.com)&#039;&#039;&#039; or visit &#039;&#039;&#039;[ProventusNova.com](https://proventusnova.com)&#039;&#039;&#039; to discuss your project.&lt;/div&gt;</summary>
		<author><name>Sonni</name></author>
	</entry>
	<entry>
		<id>https://developerwiki.proventusnova.com/index.php?title=Project_Manager_Tutorials&amp;diff=86</id>
		<title>Project Manager Tutorials</title>
		<link rel="alternate" type="text/html" href="https://developerwiki.proventusnova.com/index.php?title=Project_Manager_Tutorials&amp;diff=86"/>
		<updated>2025-03-14T03:08:56Z</updated>

		<summary type="html">&lt;p&gt;Sonni: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;width:100%; background-color:#f0f0f0;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Authors:&#039;&#039;&#039;&lt;br /&gt;
Sonni Lorenz F. Cubero (sonni.cubero@proventusnova.com)&lt;br /&gt;
&lt;br /&gt;
CJ Mirafuentes (cj.mirafuentes@proventusnova.com)&lt;br /&gt;
|| &#039;&#039;&#039;Date:&#039;&#039;&#039; March 14, 2025&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--NOTE!!!: change the date every time this page is published--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== About ==&lt;br /&gt;
This document serves as a guide for project managers dealing with ProventusNova products, providing them with essential technical knowledge, industry terms, best practices, and tools to effectively manage projects in an embedded systems environment.&lt;br /&gt;
&lt;br /&gt;
== Project Manager Terms ==&lt;br /&gt;
These are the terms that a project manager needs to know when dealing with ProventusNova products.&lt;br /&gt;
&lt;br /&gt;
===Basic Concepts===&lt;br /&gt;
&lt;br /&gt;
====Processor====&lt;br /&gt;
A processor, also known as a Central Processing Unit (CPU), is the &amp;quot;brain&amp;quot; of a computer, responsible for executing instructions from software and managing data flow.&lt;br /&gt;
&lt;br /&gt;
==== Software ====&lt;br /&gt;
Software is a collection of programs, instructions, and data that run on a computer to perform tasks. It is the opposite of hardware, which is the physical parts of a computer.&lt;br /&gt;
&lt;br /&gt;
==== Embedded Software ====&lt;br /&gt;
Embedded software is computer code that controls devices other than traditional computers. It is designed to work with a specific device&#039;s hardware and is often found in everyday objects like cars, appliances, and smartphones.&lt;br /&gt;
&lt;br /&gt;
==== Embedded Platforms/Systems ====&lt;br /&gt;
An embedded platform is defined as a system that includes various types of peripherals with distinct characteristics. These peripherals can either be integrated into modern SoC devices or remain as part of the platform board to enhance the capabilities of the SoC device.&lt;br /&gt;
&lt;br /&gt;
==== Computer Architecture ====&lt;br /&gt;
The structure of a computer system and how its parts work together. It defines how the computer&#039;s components interact to process data.&lt;br /&gt;
&lt;br /&gt;
==== Linux ====&lt;br /&gt;
Linux is a free, open-source operating system (OS) that is used on computers, servers, and mobile devices. It is similar to Unix and is one of the most widely used operating systems in the world.&lt;br /&gt;
&lt;br /&gt;
==== GStreamer ====&lt;br /&gt;
GStreamer is a pipeline-based multimedia framework that links together a wide variety of media processing systems to complete complex workflows.&lt;br /&gt;
&lt;br /&gt;
==== Kernel ====&lt;br /&gt;
A kernel is the core part of an operating system. It acts as a bridge between software applications and the hardware of a computer.&lt;br /&gt;
&lt;br /&gt;
==== API (Application Programming Interface) ====&lt;br /&gt;
An API, or application programming interface, is a set of rules or protocols that enables software applications to communicate with each other.&lt;br /&gt;
&lt;br /&gt;
==== Raspberry PI ====&lt;br /&gt;
A small, inexpensive computer used for learning and exploring computer science. It is about the size of a credit card and offers cost-effective, high-performance computing for businesses and home use.&lt;br /&gt;
&lt;br /&gt;
==== Ubuntu ====&lt;br /&gt;
Ubuntu is a modern, open-source operating system based on Linux for enterprise servers, desktops, cloud computing, and IoT.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
=== Intermediate Concepts===&lt;br /&gt;
&lt;br /&gt;
==== ARM (Advanced RISC Machine) ====&lt;br /&gt;
Refers to a type of computer processor architecture. ARM processors are known for their energy efficiency and performance.&lt;br /&gt;
&lt;br /&gt;
==== x86_64 ====&lt;br /&gt;
Also known as x64 or AMD64, x86_64 is a 64-bit architecture for CPUs. It is used in most home computers and servers. x86_64 is an extension of the 32-bit x86 architecture, supporting 64-bit mode and compatibility mode, which allows users to run 16-bit and 32-bit applications.&lt;br /&gt;
&lt;br /&gt;
==== GStreamer Daemon (gstd) ====&lt;br /&gt;
GStreamer Daemon, also called gstd, is a GStreamer framework for controlling audio and video streaming using an InterProcess Communication protocol.&lt;br /&gt;
&lt;br /&gt;
==== GStreamer Interpipes ====&lt;br /&gt;
GstInterpipe is a RidgeRun open-source GStreamer plug-in that enables pipeline buffers and events to flow between two or more independent pipelines. The plug-in consists of two elements: Interpipesink and Interpipesrc. The Interpipesrc connects with an Interpipesink, from which it receives buffers and events.&lt;br /&gt;
&lt;br /&gt;
==== Nvidia Jetson ====&lt;br /&gt;
NVIDIA Jetson is a platform for AI applications in robotics and embedded systems. It includes compact computers, software development kits, and other tools. It is used by professional developers to create breakthrough AI products across industries and by students and enthusiasts for hands-on AI learning and innovative projects.&lt;br /&gt;
&lt;br /&gt;
==== ESP32 ====&lt;br /&gt;
ESP32 is a low-cost, low-power microcontroller board with built-in Wi-Fi and Bluetooth. It is designed for a variety of applications, including IoT devices, wearable electronics, and mobile devices. Its low cost and power efficiency make it ideal for a variety of IoT applications.&lt;br /&gt;
&lt;br /&gt;
==== Texas Instruments Processors ====&lt;br /&gt;
Developed by Texas Instruments, these processors feature ARM9, ARM Cortex-A8, ARM Cortex-A9, ARM Cortex-A15, and ARM Cortex-A53 cores. Sitara Processors offer low-power and high-performance models, making them suitable for battery-operated devices and industrial systems. They provide a developer-friendly environment with tools like Code Composer Studio and RTOS support.&lt;br /&gt;
&lt;br /&gt;
==== Qualcomm Snapdragon ====&lt;br /&gt;
A system-on-chip (SoC) that powers a variety of devices, such as smartphones, tablets, laptops, and desktops. Snapdragon processors integrate ARM Cortex cores, DSP, and AI and come with built-in Wi-Fi, LTE, and 5G, making them ideal for IoT and edge computing.&lt;br /&gt;
&lt;br /&gt;
==== Intel Atom Processors ====&lt;br /&gt;
Intel Atom Processors are designed for low-power consumption while providing sufficient power for embedded systems. Their x86 architecture ensures compatibility with a wide variety of software.&lt;br /&gt;
&lt;br /&gt;
==== Microchip PIC Microcontrollers ====&lt;br /&gt;
Known for their low power consumption and affordability, Microchip PIC Microcontrollers are ideal for embedded systems, particularly in battery-powered devices and simple consumer electronics.&lt;br /&gt;
&lt;br /&gt;
==== STMicroelectronics STM32 Series ====&lt;br /&gt;
Based on the Arm Cortex-M processor, featuring cores from Cortex-M0 to Cortex-M7.&lt;br /&gt;
&lt;br /&gt;
==== Renesas RX ====&lt;br /&gt;
The Renesas RX Family uses 32-bit RX cores, delivering strong computational power and support for complex applications.&lt;br /&gt;
&lt;br /&gt;
==== Arm Cortex-M Series ====&lt;br /&gt;
Widely used for its scalability, low power, and strong performance, the Arm Cortex-M Series offers a range of cores from Cortex-M0 to Cortex-M7.&lt;br /&gt;
&lt;br /&gt;
==== Arduino ====&lt;br /&gt;
Arduino is an open-source electronics platform that uses hardware and software to read inputs and create outputs. It is used to build prototypes for various applications, including smart homes, entertainment, and monitoring systems.&lt;br /&gt;
&lt;br /&gt;
==== NXP i.MX Series ====&lt;br /&gt;
The NXP i.MX Series offers performance versatility, with different models targeting various market segments. They come with Arm Cortex-A series cores, GPU, and DSP for enhanced performance in multimedia and machine learning applications.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
===Advanced Concepts===&lt;br /&gt;
&lt;br /&gt;
==== RISC (Reduced Instruction Set Computer) ====&lt;br /&gt;
A microprocessor architecture that uses a small set of simple instructions to perform tasks more quickly than other architectures.&lt;br /&gt;
&lt;br /&gt;
==== Real-Time Operating System (RTOS) ====&lt;br /&gt;
A Real-Time Operating System (RTOS) is an operating system designed to process data and execute tasks within a strict time constraint. RTOS ensures timely execution of critical processes, making it ideal for embedded systems, industrial automation, robotics, and real-time data processing applications.&lt;br /&gt;
&lt;br /&gt;
==== SoC (System on Chip) ====&lt;br /&gt;
A System on Chip (SoC) is an integrated circuit that combines all essential components of a computer or electronic system onto a single chip. It typically includes a CPU, GPU, memory, peripherals, and connectivity interfaces. SoCs are widely used in mobile devices, IoT devices, and embedded systems.&lt;br /&gt;
&lt;br /&gt;
==== AI (Artificial Intelligence) ====&lt;br /&gt;
Artificial intelligence (AI) is a field of study that focuses on creating machines that can learn, reason, and act. AI is used in many applications, including search engines, social media, and online shopping. AI is technology that enables computers and machines to simulate human learning, comprehension, problem solving, decision making, creativity and autonomy&lt;br /&gt;
&lt;br /&gt;
====Machine Learning ====&lt;br /&gt;
Machine Learning is a branch of artificial intelligence (AI) focused on enabling computers and machines to imitate the way that humans learn.&lt;br /&gt;
&lt;br /&gt;
==== Yocto Project ====&lt;br /&gt;
The Yocto Project is an open-source initiative that provides tools and templates for building custom Linux distributions for embedded systems. It enables fine-grained control over system components, allowing developers to optimize for performance, footprint, and security. The project provides a flexible set of tools and a space where embedded developers worldwide can share technologies, software stacks, configurations, and best practices that can be used to create tailored Linux images for embedded and IOT devices, or anywhere a customized Linux OS is needed.&lt;br /&gt;
&lt;br /&gt;
==== MCU (Microcontroller Unit) ====&lt;br /&gt;
A microcontroller or microcontroller unit (MCU) is a small computer on a single integrated circuit. An MCU is a compact, self-contained computer on a chip, containing a processor core (CPU), memory (RAM and ROM), and input/output (I/O) peripherals.&lt;br /&gt;
&lt;br /&gt;
== 🏗 Need a Solution for Your Project? ==&lt;br /&gt;
Are you looking for ways to:  &lt;br /&gt;
✅ Optimize your &#039;&#039;&#039;embedded system&#039;&#039;&#039; for better performance?  &lt;br /&gt;
✅ Integrate &#039;&#039;&#039;AI and computer vision&#039;&#039;&#039; into your products?  &lt;br /&gt;
✅ Improve &#039;&#039;&#039;multimedia processing&#039;&#039;&#039; for real-time applications?  &lt;br /&gt;
✅ Develop a &#039;&#039;&#039;robust and scalable&#039;&#039;&#039; web platform?  &lt;br /&gt;
&lt;br /&gt;
Our team has helped businesses across multiple industries solve these challenges.  &lt;br /&gt;
&lt;br /&gt;
📩 &#039;&#039;&#039;Let’s collaborate!&#039;&#039;&#039; Contact us at &#039;&#039;&#039;[support@proventusnova.com](mailto:support@proventusnova.com)&#039;&#039;&#039; or visit &#039;&#039;&#039;[ProventusNova.com](https://proventusnova.com)&#039;&#039;&#039; to discuss your project.&lt;/div&gt;</summary>
		<author><name>Sonni</name></author>
	</entry>
	<entry>
		<id>https://developerwiki.proventusnova.com/index.php?title=Project_Manager_Tutorials&amp;diff=85</id>
		<title>Project Manager Tutorials</title>
		<link rel="alternate" type="text/html" href="https://developerwiki.proventusnova.com/index.php?title=Project_Manager_Tutorials&amp;diff=85"/>
		<updated>2025-03-14T03:03:34Z</updated>

		<summary type="html">&lt;p&gt;Sonni: Add collaboration section&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;width:100%; background-color:#f0f0f0;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Authors:&#039;&#039;&#039;&lt;br /&gt;
Sonni Lorenz F. Cubero (sonni.cubero@proventusnova.com)&lt;br /&gt;
&lt;br /&gt;
CJ Mirafuentes (cj.mirafuentes@proventusnova.com)&lt;br /&gt;
|| &#039;&#039;&#039;Date:&#039;&#039;&#039; March 11, 2025&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--NOTE!!!: change the date every time this page is published--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== About ==&lt;br /&gt;
This document serves as a guide for project managers dealing with ProventusNova products, providing them with essential technical knowledge, industry terms, best practices, and tools to effectively manage projects in an embedded systems environment.&lt;br /&gt;
&lt;br /&gt;
== Project Manager Terms ==&lt;br /&gt;
These are the terms that a project manager needs to know when dealing with ProventusNova products.&lt;br /&gt;
&lt;br /&gt;
===Basic Concepts===&lt;br /&gt;
&lt;br /&gt;
====Processor====&lt;br /&gt;
A processor, also known as a Central Processing Unit (CPU), is the &amp;quot;brain&amp;quot; of a computer, responsible for executing instructions from software and managing data flow.&lt;br /&gt;
&lt;br /&gt;
==== Software ====&lt;br /&gt;
Software is a collection of programs, instructions, and data that run on a computer to perform tasks. It is the opposite of hardware, which is the physical parts of a computer.&lt;br /&gt;
&lt;br /&gt;
==== Embedded Software ====&lt;br /&gt;
Embedded software is computer code that controls devices other than traditional computers. It is designed to work with a specific device&#039;s hardware and is often found in everyday objects like cars, appliances, and smartphones.&lt;br /&gt;
&lt;br /&gt;
==== Embedded Platforms/Systems ====&lt;br /&gt;
An embedded platform is defined as a system that includes various types of peripherals with distinct characteristics. These peripherals can either be integrated into modern SoC devices or remain as part of the platform board to enhance the capabilities of the SoC device.&lt;br /&gt;
&lt;br /&gt;
==== Computer Architecture ====&lt;br /&gt;
The structure of a computer system and how its parts work together. It defines how the computer&#039;s components interact to process data.&lt;br /&gt;
&lt;br /&gt;
==== Linux ====&lt;br /&gt;
Linux is a free, open-source operating system (OS) that is used on computers, servers, and mobile devices. It is similar to Unix and is one of the most widely used operating systems in the world.&lt;br /&gt;
&lt;br /&gt;
==== GStreamer ====&lt;br /&gt;
GStreamer is a pipeline-based multimedia framework that links together a wide variety of media processing systems to complete complex workflows.&lt;br /&gt;
&lt;br /&gt;
==== Kernel ====&lt;br /&gt;
A kernel is the core part of an operating system. It acts as a bridge between software applications and the hardware of a computer.&lt;br /&gt;
&lt;br /&gt;
==== API (Application Programming Interface) ====&lt;br /&gt;
An API, or application programming interface, is a set of rules or protocols that enables software applications to communicate with each other.&lt;br /&gt;
&lt;br /&gt;
==== Raspberry PI ====&lt;br /&gt;
A small, inexpensive computer used for learning and exploring computer science. It is about the size of a credit card and offers cost-effective, high-performance computing for businesses and home use.&lt;br /&gt;
&lt;br /&gt;
==== Ubuntu ====&lt;br /&gt;
Ubuntu is a modern, open-source operating system based on Linux for enterprise servers, desktops, cloud computing, and IoT.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
=== Intermediate Concepts===&lt;br /&gt;
&lt;br /&gt;
==== ARM (Advanced RISC Machine) ====&lt;br /&gt;
Refers to a type of computer processor architecture. ARM processors are known for their energy efficiency and performance.&lt;br /&gt;
&lt;br /&gt;
==== x86_64 ====&lt;br /&gt;
Also known as x64 or AMD64, x86_64 is a 64-bit architecture for CPUs. It is used in most home computers and servers. x86_64 is an extension of the 32-bit x86 architecture, supporting 64-bit mode and compatibility mode, which allows users to run 16-bit and 32-bit applications.&lt;br /&gt;
&lt;br /&gt;
==== GStreamer Daemon (gstd) ====&lt;br /&gt;
GStreamer Daemon, also called gstd, is a GStreamer framework for controlling audio and video streaming using an InterProcess Communication protocol.&lt;br /&gt;
&lt;br /&gt;
==== GStreamer Interpipes ====&lt;br /&gt;
GstInterpipe is a RidgeRun open-source GStreamer plug-in that enables pipeline buffers and events to flow between two or more independent pipelines. The plug-in consists of two elements: Interpipesink and Interpipesrc. The Interpipesrc connects with an Interpipesink, from which it receives buffers and events.&lt;br /&gt;
&lt;br /&gt;
==== Nvidia Jetson ====&lt;br /&gt;
NVIDIA Jetson is a platform for AI applications in robotics and embedded systems. It includes compact computers, software development kits, and other tools. It is used by professional developers to create breakthrough AI products across industries and by students and enthusiasts for hands-on AI learning and innovative projects.&lt;br /&gt;
&lt;br /&gt;
==== ESP32 ====&lt;br /&gt;
ESP32 is a low-cost, low-power microcontroller board with built-in Wi-Fi and Bluetooth. It is designed for a variety of applications, including IoT devices, wearable electronics, and mobile devices. Its low cost and power efficiency make it ideal for a variety of IoT applications.&lt;br /&gt;
&lt;br /&gt;
==== Texas Instruments Processors ====&lt;br /&gt;
Developed by Texas Instruments, these processors feature ARM9, ARM Cortex-A8, ARM Cortex-A9, ARM Cortex-A15, and ARM Cortex-A53 cores. Sitara Processors offer low-power and high-performance models, making them suitable for battery-operated devices and industrial systems. They provide a developer-friendly environment with tools like Code Composer Studio and RTOS support.&lt;br /&gt;
&lt;br /&gt;
==== Qualcomm Snapdragon ====&lt;br /&gt;
A system-on-chip (SoC) that powers a variety of devices, such as smartphones, tablets, laptops, and desktops. Snapdragon processors integrate ARM Cortex cores, DSP, and AI and come with built-in Wi-Fi, LTE, and 5G, making them ideal for IoT and edge computing.&lt;br /&gt;
&lt;br /&gt;
==== Intel Atom Processors ====&lt;br /&gt;
Intel Atom Processors are designed for low-power consumption while providing sufficient power for embedded systems. Their x86 architecture ensures compatibility with a wide variety of software.&lt;br /&gt;
&lt;br /&gt;
==== Microchip PIC Microcontrollers ====&lt;br /&gt;
Known for their low power consumption and affordability, Microchip PIC Microcontrollers are ideal for embedded systems, particularly in battery-powered devices and simple consumer electronics.&lt;br /&gt;
&lt;br /&gt;
==== STMicroelectronics STM32 Series ====&lt;br /&gt;
Based on the Arm Cortex-M processor, featuring cores from Cortex-M0 to Cortex-M7.&lt;br /&gt;
&lt;br /&gt;
==== Renesas RX ====&lt;br /&gt;
The Renesas RX Family uses 32-bit RX cores, delivering strong computational power and support for complex applications.&lt;br /&gt;
&lt;br /&gt;
==== Arm Cortex-M Series ====&lt;br /&gt;
Widely used for its scalability, low power, and strong performance, the Arm Cortex-M Series offers a range of cores from Cortex-M0 to Cortex-M7.&lt;br /&gt;
&lt;br /&gt;
==== Arduino ====&lt;br /&gt;
Arduino is an open-source electronics platform that uses hardware and software to read inputs and create outputs. It is used to build prototypes for various applications, including smart homes, entertainment, and monitoring systems.&lt;br /&gt;
&lt;br /&gt;
==== NXP i.MX Series ====&lt;br /&gt;
The NXP i.MX Series offers performance versatility, with different models targeting various market segments. They come with Arm Cortex-A series cores, GPU, and DSP for enhanced performance in multimedia and machine learning applications.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
===Advanced Concepts===&lt;br /&gt;
&lt;br /&gt;
==== RISC (Reduced Instruction Set Computer) ====&lt;br /&gt;
A microprocessor architecture that uses a small set of simple instructions to perform tasks more quickly than other architectures.&lt;br /&gt;
&lt;br /&gt;
==== Real-Time Operating System (RTOS) ====&lt;br /&gt;
A Real-Time Operating System (RTOS) is an operating system designed to process data and execute tasks within a strict time constraint. RTOS ensures timely execution of critical processes, making it ideal for embedded systems, industrial automation, robotics, and real-time data processing applications.&lt;br /&gt;
&lt;br /&gt;
==== SoC (System on Chip) ====&lt;br /&gt;
A System on Chip (SoC) is an integrated circuit that combines all essential components of a computer or electronic system onto a single chip. It typically includes a CPU, GPU, memory, peripherals, and connectivity interfaces. SoCs are widely used in mobile devices, IoT devices, and embedded systems.&lt;br /&gt;
&lt;br /&gt;
==== AI (Artificial Intelligence) ====&lt;br /&gt;
Artificial intelligence (AI) is a field of study that focuses on creating machines that can learn, reason, and act. AI is used in many applications, including search engines, social media, and online shopping. AI is technology that enables computers and machines to simulate human learning, comprehension, problem solving, decision making, creativity and autonomy&lt;br /&gt;
&lt;br /&gt;
====Machine Learning ====&lt;br /&gt;
Machine Learning is a branch of artificial intelligence (AI) focused on enabling computers and machines to imitate the way that humans learn.&lt;br /&gt;
&lt;br /&gt;
==== Yocto Project ====&lt;br /&gt;
The Yocto Project is an open-source initiative that provides tools and templates for building custom Linux distributions for embedded systems. It enables fine-grained control over system components, allowing developers to optimize for performance, footprint, and security. The project provides a flexible set of tools and a space where embedded developers worldwide can share technologies, software stacks, configurations, and best practices that can be used to create tailored Linux images for embedded and IOT devices, or anywhere a customized Linux OS is needed.&lt;br /&gt;
&lt;br /&gt;
==== MCU (Microcontroller Unit) ====&lt;br /&gt;
A microcontroller or microcontroller unit (MCU) is a small computer on a single integrated circuit. An MCU is a compact, self-contained computer on a chip, containing a processor core (CPU), memory (RAM and ROM), and input/output (I/O) peripherals.&lt;br /&gt;
&lt;br /&gt;
== 🏗 Need a Solution for Your Project? ==&lt;br /&gt;
Are you looking for ways to:  &lt;br /&gt;
✅ Optimize your &#039;&#039;&#039;embedded system&#039;&#039;&#039; for better performance?  &lt;br /&gt;
✅ Integrate &#039;&#039;&#039;AI and computer vision&#039;&#039;&#039; into your products?  &lt;br /&gt;
✅ Improve &#039;&#039;&#039;multimedia processing&#039;&#039;&#039; for real-time applications?  &lt;br /&gt;
✅ Develop a &#039;&#039;&#039;robust and scalable&#039;&#039;&#039; web platform?  &lt;br /&gt;
&lt;br /&gt;
Our team has helped businesses across multiple industries solve these challenges.  &lt;br /&gt;
&lt;br /&gt;
📩 &#039;&#039;&#039;Let’s collaborate!&#039;&#039;&#039; Contact us at &#039;&#039;&#039;[support@proventusnova.com](mailto:support@proventusnova.com)&#039;&#039;&#039; or visit &#039;&#039;&#039;[ProventusNova.com](https://proventusnova.com)&#039;&#039;&#039; to discuss your project.&lt;/div&gt;</summary>
		<author><name>Sonni</name></author>
	</entry>
	<entry>
		<id>https://developerwiki.proventusnova.com/index.php?title=Embedded_Platforms&amp;diff=84</id>
		<title>Embedded Platforms</title>
		<link rel="alternate" type="text/html" href="https://developerwiki.proventusnova.com/index.php?title=Embedded_Platforms&amp;diff=84"/>
		<updated>2025-03-14T02:50:21Z</updated>

		<summary type="html">&lt;p&gt;Sonni: Add author&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;width:100%; background-color:#f0f0f0;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Author:&#039;&#039;&#039;&lt;br /&gt;
Sonni Lorenz F. Cubero (sonni.cubero@proventusnova.com)&lt;br /&gt;
|| &#039;&#039;&#039;Date:&#039;&#039;&#039; March 13, 2025&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== About ==&lt;br /&gt;
This document provides an overview of various embedded platforms/systems commonly used in the development of embedded applications in the industry. It covers a wide range of popular processors, microcontrollers, and development boards, highlighting their key features, performance, characteristics, and suitable use cases. By comparing different platforms such as Raspberry Pi, NVIDIA Jetson, ESP32, Arduino, NXP i.MX Series, etc., this document aims to assist in choosing the most appropriate solution based on their project requirements.&lt;br /&gt;
&lt;br /&gt;
== Embedded Platforms/Systems Overview ==&lt;br /&gt;
&lt;br /&gt;
=== Raspberry Pi ===&lt;br /&gt;
A small low-cost computer the size of a credit card. A Raspberry Pi can be a desktop computer, robotics controller, server, game controller, etc. The Raspberry Pi is an excellent tool for many projects, from basic learning to advanced projects.&lt;br /&gt;
&lt;br /&gt;
==== Pros ====&lt;br /&gt;
* Affordable&lt;br /&gt;
* Versatile operating system&lt;br /&gt;
* Very active community&lt;br /&gt;
* Easy to learn&lt;br /&gt;
* Flexible&lt;br /&gt;
* User Imagination&lt;br /&gt;
&lt;br /&gt;
The Raspberry Pi stands out as a cost-effective solution. This makes it an excellent choice for hobbyists, educators, and professionals alike. Its versatility is its key strength, as it can be used for a wide range of applications. The Raspberry Pi community is also another major advantage. A wealth of resources, tutorials, and forums make troubleshooting straightforward.&lt;br /&gt;
&lt;br /&gt;
==== Cons ====&lt;br /&gt;
* Limited power&lt;br /&gt;
* Limited processing power&lt;br /&gt;
* Limited RAM&lt;br /&gt;
* Limited Storage&lt;br /&gt;
&lt;br /&gt;
Raspberry Pi comes with certain limitations. One of those is their limited power, which can restrict its ability to perform demanding tasks or multiple peripherals. Raspberry Pi also relies on external storage which offers slower speed and limited capacity. Although it is compatible with many open-source applications, some software may not be optimized or supported for the Raspberry Pi.&lt;br /&gt;
&lt;br /&gt;
==== Applications ====&lt;br /&gt;
* Prototyping&lt;br /&gt;
* Automation&lt;br /&gt;
&lt;br /&gt;
==== Models ====&lt;br /&gt;
* Raspberry Pi 5&lt;br /&gt;
* Raspberry Pi 500&lt;br /&gt;
* Raspberry Pi Pico&lt;br /&gt;
* Raspberry Pi Zero&lt;br /&gt;
&lt;br /&gt;
==== Specifications ====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ Raspberry Pi Models Comparison&lt;br /&gt;
! Model !! Raspberry Pi 5 !! Raspberry Pi 500 !! Raspberry Pi Pico !! Raspberry Pi Zero&lt;br /&gt;
|-&lt;br /&gt;
! CPU&lt;br /&gt;
| 2.4 GHz quad-core 64-bit ARM Cortex-A76 || 2.4 GHz quad-core 64-bit ARM Cortex-A76 || 133 MHz single-core ARM Cortex-M0+ || 1 GHz single-core ARM1176JZF-S (Zero 1), 1 GHz quad-core 64-bit ARM Cortex-A53 (Zero 2)&lt;br /&gt;
|-&lt;br /&gt;
! GPU&lt;br /&gt;
| 800 MHz VideoCore VII || 800 MHz VideoCore VII || N/A || 250 MHz VideoCore IV&lt;br /&gt;
|-&lt;br /&gt;
! APU&lt;br /&gt;
| N/A || N/A || N/A || N/A&lt;br /&gt;
|-&lt;br /&gt;
! RAM&lt;br /&gt;
| 2/4/6/16GB LPDDR4x-4267 SDRAM || 2/4/6/16GB LPDDR4x-4267 SDRAM || 264kB SRAM || 512MB LPDDR2 SDRAM&lt;br /&gt;
|-&lt;br /&gt;
! Display&lt;br /&gt;
| Up to Dual 4Kp60 micro HDMI with HDR support, 4Kp60 HEVC decoder || Up to Dual 4Kp60 micro HDMI with HDR support, 4Kp60 HEVC decoder || N/A || Up to 1080P mini HDMI&lt;br /&gt;
|-&lt;br /&gt;
! Ports&lt;br /&gt;
| 2x USB 3.0, 2x USB 2.0, Gigabit Ethernet, PCIe Port || 2x USB 3.0, 2x USB 2.0, Gigabit Ethernet, PCIe Port || Micro-USB GPIO pins || Micro USB On-The-Go (OTG)&lt;br /&gt;
|-&lt;br /&gt;
! Storage options&lt;br /&gt;
| eMMC, MicroSD Card || eMMC, MicroSD Card || Onboard 2MB flash memory || MicroSD Card&lt;br /&gt;
|-&lt;br /&gt;
! Network&lt;br /&gt;
| Wi-Fi, BT 5.0, Gigabit Ethernet || Wi-Fi, BT 5.0, Gigabit Ethernet || N/A || Wi-Fi&lt;br /&gt;
|-&lt;br /&gt;
! Power&lt;br /&gt;
| 5V/5A DC power via USB-C || 5V/5A DC power via USB-C || 5V via Micro-USB || 5V via Micro-USB&lt;br /&gt;
|-&lt;br /&gt;
! OS Support&lt;br /&gt;
| Raspberry Pi OS, Ubuntu, Apertis, RISC OS, Ultramarine Linux, Alpine Linux, Other custom Linux distros (e.g. Yocto) || Raspberry Pi OS, Ubuntu, Apertis, RISC OS, Ultramarine Linux, Alpine Linux, Other custom Linux distros (e.g. Yocto) || MicroPython, CircuitPython || Raspberry Pi OS, RISC OS, Alpine Linux, Other custom Linux distros (e.g. Yocto)&lt;br /&gt;
|-&lt;br /&gt;
! Price Range&lt;br /&gt;
| $50-$120 || $120-$150 || $4-$7 || $5-$15&lt;br /&gt;
|-&lt;br /&gt;
! Documentation and Source Code&lt;br /&gt;
| Documentation: [https://www.raspberrypi.com/documentation/ Raspberry Pi Documentation],&lt;br /&gt;
[https://www.raspberrypi.com/documentation/computers/raspberry-pi.html Raspberry Pi Hardware Documentation]&lt;br /&gt;
&lt;br /&gt;
Github: [https://github.com/raspberrypi Raspberry Pi]&lt;br /&gt;
&lt;br /&gt;
| Documentation:[https://www.raspberrypi.com/documentation/ Raspberry Pi Documentation],&lt;br /&gt;
[https://www.raspberrypi.com/documentation/computers/raspberry-pi.html Raspberry Pi Hardware Documentation]&lt;br /&gt;
&lt;br /&gt;
Github: [https://github.com/raspberrypi Raspberry Pi] &lt;br /&gt;
&lt;br /&gt;
| Documentation: [https://www.raspberrypi.com/documentation/microcontrollers/pico-series.html#documentation Pico-series Microcontrollers - Raspberry Pi Documentation],&lt;br /&gt;
&lt;br /&gt;
Github: [https://github.com/raspberrypi/pico-examples Raspberry Pi Pico Examples]&lt;br /&gt;
&lt;br /&gt;
| Documentation: [https://www.raspberrypi.com/documentation/computers/raspberry-pi.html#raspberry-pi-zero Raspberry Pi hardware - Raspberry Pi Documentation],&lt;br /&gt;
&lt;br /&gt;
Github: [https://github.com/dwelch67/raspberrypi-zero dwelch67/raspberrypi-zero: Raspberry Pi Zero baremetal examples](for Zero 1),&lt;br /&gt;
&lt;br /&gt;
[https://github.com/Qengineering/RPi_64-bit_Zero-2-image Qengineering/RPi_64-bit_Zero-2-image: Raspberry Pi Zero 2 W 64-bit OS image with OpenCV, TensorFlow Lite and ncnn Framework.](for Zero 2)&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Why is Raspberry Pi Popular? ====&lt;br /&gt;
Raspberry Pi is popular because it is a small, affordable, single-board computer that is easy to use. It is also versatile for a wide range of applications and the community is very active. With its robust hardware capabilities, including support for multiple operating systems, it has become a favorite among professionals and hobby enthusiasts.&lt;br /&gt;
&lt;br /&gt;
=== NVIDIA Jetson ===&lt;br /&gt;
NVIDIA Jetson is the leading platform for robotics and embedded edge AI applications. A series of embedded computing boards designed specifically for AI and machine learning applications. NVIDIA Jetson offers several models to different needs, from low-power to high-performance applications.&lt;br /&gt;
&lt;br /&gt;
==== Pros ====&lt;br /&gt;
* Powerful GPU and CPU&lt;br /&gt;
* Versatile applications&lt;br /&gt;
* Open to Developers&lt;br /&gt;
* Wide range of options&lt;br /&gt;
&lt;br /&gt;
One of the key strengths of NVIDIA Jetson is its GPU, designed to accelerate deep learning, computer vision, and AI. This makes it an excellent choice for robotics, IoT, and autonomous systems. It is also supported by popular AI frameworks such as TensorFlow, PyTorch, and OpenCV. NVIDIA Jetson has rich software support from NVIDIA’s JetPack SDK, which simplifies development and deployment.&lt;br /&gt;
&lt;br /&gt;
==== Cons ====&lt;br /&gt;
* Expensive&lt;br /&gt;
* Limited GPIO&lt;br /&gt;
* Can get hot&lt;br /&gt;
&lt;br /&gt;
NVIDIA Jetson tends to be on the more expensive side than other single-board computers. Devices under NVIDIA Jetson can consume more power, which may not be ideal for battery-powered applications or energy-efficient applications. It requires a steep learning curve to set up and work with the hardware and software tools.&lt;br /&gt;
&lt;br /&gt;
==== Applications ====&lt;br /&gt;
* Robotics&lt;br /&gt;
* Edge AI&lt;br /&gt;
&lt;br /&gt;
==== Models ====&lt;br /&gt;
* Jetson AGX Orin series&lt;br /&gt;
* Jetson Orin NX series&lt;br /&gt;
* Jetson Orin Nano series&lt;br /&gt;
* Jetson AGX Xavier series&lt;br /&gt;
* Jetson Xavier NX series&lt;br /&gt;
* Jetson TX2 series&lt;br /&gt;
* Jetson Nano&lt;br /&gt;
&lt;br /&gt;
==== Specifications ====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ NVIDIA Jetson Models Comparison&lt;br /&gt;
! Model !! Jetson AGX Orin Series !! Jetson Orin NX Series !! Jetson Orin Nano Series !! Jetson AGX Xavier Series !! Jetson Xavier NX Series !! Jetson TX2 Series !! Jetson Nano&lt;br /&gt;
|-&lt;br /&gt;
! CPU&lt;br /&gt;
| 2.0/2.2 GHz 12-core NVIDIA Arm Cortex A78AE v8.2 64-bit CPU 3MB L2 + 6MB L3 || 2.0 GHz 8-core NVIDIA Arm Cortex A78AE v8.2 64-bit CPU 2MB L2 + 4MB L3, 2.0 6-core NVIDIA Arm Cortex A78AE v8.2 64-bit CPU 2MB L2 + 4MB L3 || 1.7 GHz 6-core Arm Cortex-A78AE v8.2 64-bit CPU 1.5MB L2 + 4MB L3 || 2.0/2.2 GHz 8-core NVIDIA Carmel Armv8.2 64-bit CPU 8MB L2 + 4MB L3 || 1.9 GHz 6-core NVIDIA Carmel Arm v8.2 64-bit CPU 6MB L2 + 4MB L3 || 1.95/2.2 GHz Dual-Core NVIDIA Denver 2 64-Bit CPU, 1.92/2 GHz Quad-Core Arm Cortex-A57 MPCore processor || 1.43 GHz Quad-Core Arm Cortex-A57 MPCore processor&lt;br /&gt;
|-&lt;br /&gt;
! GPU&lt;br /&gt;
| 200-275 TOPS, NVIDIA Ampere architecture GPU with up to 64 Tensor Cores || 117-157 TOPS, NVIDIA Ampere architecture GPU with up to 32 Tensor Cores || 34-67 TOPS, NVIDIA Ampere architecture GPU with up to 32 Tensor Cores || 30-32 TOPS, NVIDIA Volta architecture GPU with 64 Tensor Cores || 21 TOPS 1100 MHz 384-core NVIDIA Volta architecture GPU with 48 Tensor Cores || 1.26-1.33 TFLOPS, NVIDIA Pascal architecture GPU || 472 GFLOPS 921 MHz 128-core NVIDIA Maxwell architecture GPU&lt;br /&gt;
|-&lt;br /&gt;
! APU&lt;br /&gt;
| Integrated AI Accelerator (NVIDIA Tensor Cores) || Integrated AI Accelerator (NVIDIA Tensor Cores) || Integrated AI Accelerator (NVIDIA Tensor Cores) || Integrated AI Accelerator (NVIDIA Tensor Cores) || Integrated AI Accelerator (Tensor Cores) || Integrated AI Accelerator (NVIDIA Pascal GPU) || Integrated AI Accelerator (Maxwell GPU)&lt;br /&gt;
|-&lt;br /&gt;
! RAM&lt;br /&gt;
| 32/64GB 256-bit LPDDR5 || 8/16GB 128-bit LPDDR5 || 4GB 64-bit LPDDR5, 8GB 128-bit LPDDR5 || 32/64GB 256-bit LPDDR4x || 8/16GB 128-bit LPDDR4x || 4/8GB 128-bit LPDDR4 || 4GB 64-bit LPDDR4&lt;br /&gt;
|-&lt;br /&gt;
! Display&lt;br /&gt;
| Up to 8K video output, dual 4K || Up to 4K video output || Up to 4K video output || Up to dual 4K video output || Up to 4K video output, Dual 4K displays || Up to 1080p video output || Up to 1080P video output&lt;br /&gt;
|-&lt;br /&gt;
! Ports&lt;br /&gt;
| 3x USB 3.2 Gen2, 4x USB 2.0, 2x PCIe Gen 4 || 3x USB 3.2 Gen2, 3x USB 2.0, 1x PCIe Gen 4, Gigabit Ethernet || 3x USB 3.2 Gen2, 3x USB 2.0, 1x PCIe Gen 4, Gigabit Ethernet || 3x USB 3.2 Gen2, 4x USB 2.0, 1x PCIe Gen 3 || 1x USB3.2 Gen2, 3X USB 2.0 || 3x USB 3.0, 3x USB 2.0, 1x USB 3.0, 3x USB 2.0 || 1x USB 3.0, 3x USB 2.0&lt;br /&gt;
|-&lt;br /&gt;
! Storage options&lt;br /&gt;
| 32/64GB eMMC 5.1, M.2 NVMe || NVMe (supports external NVMe) || NVMe (supports external NVMe) || 32/64 GB eMMC 5.1 || 16GB eMMC 5.1 || 16/32GB eMMC 5.2 || 16GB eMMC 5.1&lt;br /&gt;
|-&lt;br /&gt;
! Network&lt;br /&gt;
| Wi-Fi 6, BT 5.0 || Wi-Fi, BT 5.0, Gigabit Ethernet || Wi-Fi, BT 5.0, Gigabit Ethernet || Wi-Fi, BT 5.0, Gigabit Ethernet || Wi-Fi, BT 5.0, Gigabit Ethernet || Wi-Fi, BT 4.2, Gigabit Ethernet || Gigabit Ethernet&lt;br /&gt;
|-&lt;br /&gt;
! Power&lt;br /&gt;
| 15W-75W || 10W-40W || 10W-30W || 20W-40W || 10W-20W || 7.5W-20W || 5W-10W&lt;br /&gt;
|-&lt;br /&gt;
! OS Support&lt;br /&gt;
| NVIDIA Jetpack SDK, Ubuntu, Other custom Linux distros (e.g. Yocto) || NVIDIA Jetpack SDK, Ubuntu, Other custom Linux distros (e.g. Yocto) || NVIDIA Jetpack SDK, Ubuntu, Other custom Linux distros (e.g. Yocto) || NVIDIA Jetpack SDK, Ubuntu, Other custom Linux distros (e.g. Yocto) || NVIDIA Jetpack SDK, Ubuntu, Other custom Linux distros (e.g. Yocto) || NVIDIA Jetpack SDK, Ubuntu, Other custom Linux distros (e.g. Yocto) || NVIDIA Jetpack SDK, Ubuntu, Other custom Linux distros (e.g. Yocto)&lt;br /&gt;
|-&lt;br /&gt;
! Price Range&lt;br /&gt;
| $599-$1,100 || $199-$399 || $99-$199 || $699-$899 || $399-$599 || $300-$600 || $59-$99&lt;br /&gt;
|-&lt;br /&gt;
! Documentation and Source Code&lt;br /&gt;
&lt;br /&gt;
| Documentation: [https://developer.nvidia.com/embedded/learn/jetson-agx-orin-devkit-user-guide/index.html Documentation: Jetson AGX Orin Developer Kit User Guide] &lt;br /&gt;
&lt;br /&gt;
| Documentation: [https://docs.nvidia.com/jetson/archives/r35.3.1/DeveloperGuide/text/HR/JetsonModuleAdaptationAndBringUp/JetsonOrinNxNanoSeries.html Documentation: Jetson Orin NX and Nano Series — Jetson Linux Developer Guide documentation] &lt;br /&gt;
&lt;br /&gt;
| Documentation: [https://docs.nvidia.com/jetson/archives/r35.3.1/DeveloperGuide/text/HR/JetsonModuleAdaptationAndBringUp/JetsonOrinNxNanoSeries.html Documentation: Jetson Orin NX and Nano Series — Jetson Linux Developer Guide documentation] &lt;br /&gt;
&lt;br /&gt;
| Documentation: [https://docs.nvidia.com/jetson/archives/r35.1/DeveloperGuide/text/SO/JetsonAgxXavierSeries.html Documentation: Jetson AGX Xavier Series — Jetson Linux Developer Guide]&lt;br /&gt;
&lt;br /&gt;
[https://developer.download.nvidia.com/assets/embedded/secure/jetson/xavier/docs/nv_jetson_agx_xavier_developer_kit_user_guide.pdf?__token__=exp=1736824216~hmac=0dd58c222c12044ba22a5eca3603e275081f6c46b808376a8c4ce6f244a83489&amp;amp;t=eyJscyI6ImdzZW8iLCJsc2QiOiJodHRwczovL3d3dy5nb29nbGUuY29tLyJ9 Jetson AGX Xavier Developer Kit] &lt;br /&gt;
&lt;br /&gt;
| Documentation: [https://docs.nvidia.com/jetson/archives/r35.1/DeveloperGuide/text/SO/JetsonXavierNxSeries.html Jetson Xavier NX Series — Jetson Linux Developer Guide]&lt;br /&gt;
&lt;br /&gt;
| Documentation: [https://developer.download.nvidia.com/assets/embedded/secure/jetson/TX2/docs/nv_jetson_tx2_developer_kit_user_guide.pdf?__token__=exp=1736824301~hmac=8bad2bcdc2d2cac0171768a6bd8c3519ffdae23678660ed09d681af48d4b921b&amp;amp;t=eyJscyI6ImdzZW8iLCJsc2QiOiJodHRwczovL3d3dy5nb29nbGUuY29tLyJ9 Jetson TX2 Developer Kit]&lt;br /&gt;
&lt;br /&gt;
| Documentation: [https://developer.download.nvidia.com/assets/embedded/secure/jetson/Nano/docs/NV_Jetson_Nano_Developer_Kit_User_Guide.pdf?__token__=exp=1736824305~hmac=cb82b2840ab317d9ffd0595eb2681c7d58b949c9bfa27718c82f5463815d30c7&amp;amp;t=eyJscyI6ImdzZW8iLCJsc2QiOiJodHRwczovL3d3dy5nb29nbGUuY29tLyJ9 Jetson Nano Developer Kit], &lt;br /&gt;
[https://developer.nvidia.com/embedded/learn/jetson-nano-2gb-devkit-user-guide Jetson Nano 2GB Developer Kit User Guide]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Why is NVIDIA Jetson Popular? ====&lt;br /&gt;
NVIDIA Jetson is popular because it provides high-performance AI computing in a compact, energy-efficient form factor. It is ideal for edge AI and robotics applications. From its entry-level to high-end modules, NVIDIA Jetson scales depending on the project&#039;s needs.&lt;br /&gt;
&lt;br /&gt;
=== ESP32 ===&lt;br /&gt;
Low-cost, low-power system-on-chip microcontrollers. A single 2.4 GHz WiFi and Bluetooth combo chip designed with TSMC low-power 40nm technology.&lt;br /&gt;
&lt;br /&gt;
==== Pros ====&lt;br /&gt;
* Low-cost&lt;br /&gt;
* Low-power&lt;br /&gt;
* IoT (Internet of Things)&lt;br /&gt;
&lt;br /&gt;
ESP32 is a powerful and versatile microcontroller because of its range of features, making it ideal for a variety of IoT applications. One of its biggest advantages is its low cost and low power consumption. It also has integrated Wi-Fi and Bluetooth, eliminating the need for external modules for wireless connectivity. ESP32 also has a strong developer community with support for ESP-IDF and is also compatible with Arduino IDE, making it great for beginners and experienced developers.&lt;br /&gt;
&lt;br /&gt;
==== Cons ====&lt;br /&gt;
* Limited GPIO&lt;br /&gt;
* Low-power&lt;br /&gt;
* High learning curve&lt;br /&gt;
&lt;br /&gt;
While ESP32’s performance is impressive, it may still fall short for resource-intensive tasks like high-end AI or complex video processing. Its lack of built-in storage can be limiting for applications that require large amounts of storage. Its GPIO pin count is also limiting for complex projects that require multiple connections.&lt;br /&gt;
&lt;br /&gt;
==== Applications ====&lt;br /&gt;
* Simple smart home&lt;br /&gt;
* Low-power IoT sensors (ultrasonic, IR, etc.)&lt;br /&gt;
* Simple smart agriculture&lt;br /&gt;
* Speech &amp;amp; Image recognition (OpenCV)&lt;br /&gt;
&lt;br /&gt;
==== Models ====&lt;br /&gt;
* ESP32-P series&lt;br /&gt;
* ESP32-S series&lt;br /&gt;
* ESP32-C series&lt;br /&gt;
* ESP32-H series&lt;br /&gt;
* ESP8266 series&lt;br /&gt;
&lt;br /&gt;
==== Specifications ====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ ESP32 Series Comparison&lt;br /&gt;
! Model !! ESP32-P Series !! ESP32-S Series !! ESP32-C Series !! ESP32-H Series !! ESP8266 Series&lt;br /&gt;
|-&lt;br /&gt;
! CPU&lt;br /&gt;
| Up to 240MHz Dual-core 32-bit Xtensa LX6 || Up to 240MHz Dual-core 32-bit Xtensa LX6 || Up to 160 MHz Single-core 32-bit Xtensa LX6 || Up to 160 MHz Single-core 32-bit Xtensa LX6 || Up to 160 MHz Single-core 32-bit Xtensa LX6&lt;br /&gt;
|-&lt;br /&gt;
! GPU&lt;br /&gt;
| N/A || N/A || N/A || N/A || N/A&lt;br /&gt;
|-&lt;br /&gt;
! APU&lt;br /&gt;
| N/A || N/A || N/A || N/A || N/A&lt;br /&gt;
|-&lt;br /&gt;
! RAM&lt;br /&gt;
| 320KB SRAM up to 512KB SRAM || 320KB SRAM up to 512KB SRAM || 128KB SRAM up to 192KB SRAM || 128KB SRAM up to 192KB SRAM || 128KB SRAM up to 192KB SRAM&lt;br /&gt;
|-&lt;br /&gt;
! Display&lt;br /&gt;
| No direct display support. Can support external display || No direct display support. Can support external display || No direct display support. Can support external display || No direct display support. Can support external display || No direct display support. Can support external display&lt;br /&gt;
|-&lt;br /&gt;
! Ports&lt;br /&gt;
| 1x SPI, 2x I2C, 2x UART, GPIO || 1x SPI, 2x I2C, 2x UART, GPIO || 1x SPI, 1x I2C, 1x UART, GPIO || 1x SPI, 1x I2C, 1x UART, GPIO || 1x SPI, 1x I2C, 1x UART, GPIO&lt;br /&gt;
|-&lt;br /&gt;
! Storage options&lt;br /&gt;
| Up to 16MB external flash || Up to 16MB external flash || Up to 16MB external flash || Up to 16MB external flash || Up to 4MB external flash&lt;br /&gt;
|-&lt;br /&gt;
! Network&lt;br /&gt;
| Wi-Fi, BT 4.2 || Wi-Fi, BT 4.2 || Wi-Fi, BT 4.2 || Wi-Fi, BT 4.2 || Wi-Fi&lt;br /&gt;
|-&lt;br /&gt;
! Power&lt;br /&gt;
| 3.3V low power || 3.3V low power || 3.3V low power || 3.3V low power || 3.3V low power&lt;br /&gt;
|-&lt;br /&gt;
! OS Support&lt;br /&gt;
| ESP-IDF, FreeRTOS, Arduino IDE || ESP-IDF, FreeRTOS, Arduino IDE || ESP-IDF, FreeRTOS, Arduino IDE || ESP-IDF, FreeRTOS, Arduino IDE || FreeRTOS, Arduino IDE&lt;br /&gt;
|-&lt;br /&gt;
! Price Range&lt;br /&gt;
| $1-$3 || $2-$6 || $1.50-$5 || $1.50-$5 || $1-$3&lt;br /&gt;
|-&lt;br /&gt;
! Documentation and Source Code&lt;br /&gt;
| Documentation: [https://docs.espressif.com/projects/esp-idf/en/stable/esp32/index.html Documentation: ESP-IDF Programming Guide - ESP32 - ESP-IDF Programming Guide v5.4 documentation],&lt;br /&gt;
[https://www.espressif.com/en/products/socs ESP SoCs]&lt;br /&gt;
&lt;br /&gt;
Github: [https://github.com/espressif Espressif Systems],&lt;br /&gt;
[https://github.com/espressif/esp-idf espressif/esp-idf: Espressif IoT Development Framework. Official development framework for Espressif SoCs.] &lt;br /&gt;
| Documentation: [https://docs.espressif.com/projects/esp-idf/en/stable/esp32/index.html Documentation: ESP-IDF Programming Guide - ESP32 - ESP-IDF Programming Guide v5.4 documentation],&lt;br /&gt;
[https://www.espressif.com/en/products/socs ESP SoCs]&lt;br /&gt;
&lt;br /&gt;
Github: [https://github.com/espressif Espressif Systems],&lt;br /&gt;
[https://github.com/espressif/esp-idf espressif/esp-idf: Espressif IoT Development Framework. Official development framework for Espressif SoCs.] &lt;br /&gt;
| Documentation: [https://docs.espressif.com/projects/esp-idf/en/stable/esp32/index.html Documentation: ESP-IDF Programming Guide - ESP32 - ESP-IDF Programming Guide v5.4 documentation],&lt;br /&gt;
[https://www.espressif.com/en/products/socs ESP SoCs]&lt;br /&gt;
&lt;br /&gt;
Github: [https://github.com/espressif Espressif Systems],&lt;br /&gt;
[https://github.com/espressif/esp-idf espressif/esp-idf: Espressif IoT Development Framework. Official development framework for Espressif SoCs.] &lt;br /&gt;
| Documentation: [https://docs.espressif.com/projects/esp-idf/en/stable/esp32/index.html Documentation: ESP-IDF Programming Guide - ESP32 - ESP-IDF Programming Guide v5.4 documentation],&lt;br /&gt;
[https://www.espressif.com/en/products/socs ESP SoCs]&lt;br /&gt;
&lt;br /&gt;
Github: [https://github.com/espressif Espressif Systems],&lt;br /&gt;
[https://github.com/espressif/esp-idf espressif/esp-idf: Espressif IoT Development Framework. Official development framework for Espressif SoCs.] &lt;br /&gt;
| Documentation: [https://docs.espressif.com/projects/esp-idf/en/stable/esp32/index.html Documentation: ESP-IDF Programming Guide - ESP32 - ESP-IDF Programming Guide v5.4 documentation],&lt;br /&gt;
[https://www.espressif.com/en/products/socs ESP SoCs]&lt;br /&gt;
&lt;br /&gt;
Github: [https://github.com/espressif Espressif Systems],&lt;br /&gt;
[https://github.com/espressif/esp-idf espressif/esp-idf: Espressif IoT Development Framework. Official development framework for Espressif SoCs.] &lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Why is ESP32 popular? ====&lt;br /&gt;
ESP32 is popular because it is cost-effective, has integrated Wi-Fi and Bluetooth, benefits from active community support, and has a well-developed ecosystem. ESP32s are heavily used in industries, especially in IoT. ESP32 offers robust connectivity and performance for a wide range of applications.&lt;br /&gt;
&lt;br /&gt;
=== Texas Instruments Sitara Processors ===&lt;br /&gt;
Developed by Texas Instruments, featuring ARM9, ARM Cortex-A8, ARM Cortex-A9, ARM Cortex A-15, and ARM Cortex-A53 cores. Supported by the Beagle community as well as TI&#039;s open-source development community.&lt;br /&gt;
&lt;br /&gt;
==== Pros ====&lt;br /&gt;
* Power efficient&lt;br /&gt;
* Cost-effective&lt;br /&gt;
* Scalability&lt;br /&gt;
* Real-time capability&lt;br /&gt;
&lt;br /&gt;
Texas Instruments Sitara Processors offer a wide range of powerful features for embedded and industrial applications. Sitara Processors provide low-power and higher-performance models, making them suitable for battery-operated devices and high-demand industrial systems. They also offer a developer-friendly environment with tools like Code Composer Studio and RTOS support.&lt;br /&gt;
&lt;br /&gt;
==== Cons ====&lt;br /&gt;
* Limited raw performance&lt;br /&gt;
* Complexity&lt;br /&gt;
* Limited high-end applications&lt;br /&gt;
&lt;br /&gt;
Sitara processors have challenges related to complexity and cost. Simple applications may offer more performance than necessary, leading to increased power consumption and system cost. The software ecosystem is more specialized compared to platforms like Raspberry Pi or ESP32, making development challenging for those unfamiliar with Code Composer Studio and RTOS. Long-term support for certain models may also be a concern as some projects rely on specific processor families.&lt;br /&gt;
&lt;br /&gt;
==== Applications ====&lt;br /&gt;
* IoT gateways&lt;br /&gt;
* Smart thermostats&lt;br /&gt;
* Industrial automation&lt;br /&gt;
* HMI&lt;br /&gt;
&lt;br /&gt;
==== Models ====&lt;br /&gt;
* AM335x&lt;br /&gt;
* AM35x&lt;br /&gt;
* AM37x&lt;br /&gt;
* AM437x&lt;br /&gt;
* AM57x&lt;br /&gt;
* AM62x&lt;br /&gt;
* AM65x&lt;br /&gt;
&lt;br /&gt;
==== Specifications ====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ Texas Instruments Sitara Processors Comparison&lt;br /&gt;
! Model !! AM335x !! AM35x !! AM37x !! AM437x !! AM57x !! AM62x !! AM65x&lt;br /&gt;
|-&lt;br /&gt;
! CPU&lt;br /&gt;
| ARM Cortex-A8, up to 1GHz || ARM Cortex-A8, up to 600MHz || ARM Cortex-A8, up to 1GHz || ARM Cortex-A9, up to 1GHz || Dual ARM Cortex-A15, up to 1.5GHz || Quad ARM Cortex-A53, up to 1.4GHz || Dual ARM Cortex-A53, up to 1.1GHz, Real-Time ARM Cortex-R5F&lt;br /&gt;
|-&lt;br /&gt;
! GPU&lt;br /&gt;
| PowerVR SGX530 || N/A || PowerVR SGX530 || PowerVR SGX544 || PowerVR SGX544MP2 || ARM Mali-G52 MP2 || N/A&lt;br /&gt;
|-&lt;br /&gt;
! APU&lt;br /&gt;
| PRU-ICSS || N/A || N/A || PRU-ICSS || Embedded Vision Engine (EVE), DSP C66x || N/A || PRU-ICSSG, Embedded Vision Engine (EVE)&lt;br /&gt;
|-&lt;br /&gt;
! RAM&lt;br /&gt;
| Up to 1GB DDR2/3L || Up to 256MB DDR2 || Up to 512MB DDR2/3L || Up to 1GB DDR3/3L || Up to 4GB DDR3/3L, DDR4 || Up to 2GB DDR4 || Up to 8GB DDR4&lt;br /&gt;
|-&lt;br /&gt;
! Display&lt;br /&gt;
| 24-bit LCD Controller || 24-bit LCD Controller || 24-bit LCD Controller || 24-bit LCD Controller || 24-bit LCD Controller, HDMI || 24-bit LCD Controller || 24-bit LCD Controller, DP/HDMI&lt;br /&gt;
|-&lt;br /&gt;
! Ports&lt;br /&gt;
| Up to 2x USB 2.0, Up to 2x Gigabit Ethernet, Up to 2x CAN ports, Up to 6x UARTS, Up to 3x I2C, GPIO || USB 2.0, Gigabit Ethernet, UART, I2C, GPIO || USB 2.0, Gigabit Ethernet, UART, I2C, GPIO || Up to 2x USB 2.0, Up to 2x Gigabit Ethernet, Up to 2x CAN ports, Up to 6x UARTS, Up to 3x I2C, GPIO || Up to 2x USB 2.0, Up to 2x USB 3.0, Up to 2x PCIe, Gigabit Ethernet, Up to 2x CAN ports, Up to 3x I2C, GPIO || Up to 2x USB 2.0, Up to 2x USB 3.0, Up to 2x PCIe, Gigabit Ethernet, Up to 2x CAN ports, Up to 3x I2C, GPIO || Up to 2x USB 2.0, Up to 2x USB 3.0, Up to 4x PCIe, Up to 2x Gigabit Ethernet, Up to 2x CAN ports, Up to 3x I2C, GPIO&lt;br /&gt;
|-&lt;br /&gt;
! Storage options&lt;br /&gt;
| eMMC, SD/SDIO, NAND || NAND, SD || NAND, SD || eMMC, SD/SDIO, NAND || eMMC, SD/SDIO, NAND, SATA || eMMC, SD/SDIO || eMMC, SD/SDIO, NVMe&lt;br /&gt;
|-&lt;br /&gt;
! Network&lt;br /&gt;
| Ethernet || Ethernet || Ethernet || Ethernet || Gigabit Ethernet || Gigabit Ethernet || Gigabit Ethernet&lt;br /&gt;
|-&lt;br /&gt;
! Power&lt;br /&gt;
| 1.8V/3.3V || 1.8V/3.3V || 1.8V/3.3V || 1.8V/3.3V || 1.8V/3.3V || 1.8V/3.3V || 1.8V/3.3V&lt;br /&gt;
|-&lt;br /&gt;
! OS Support&lt;br /&gt;
| Linaro, Linux (Yocto), RTOS, Android, Windows Embedded Compact || Linux, Windows CE || Linaro, Linux (Yocto), RTOS, Android, Windows Embedded Compact || Linaro, Linux (Yocto), RTOS, Android, Windows Embedded Compact || Linux (Yocto), RTOS, Android || Linux (Yocto), Android || Linux (Yocto), QNX, Android&lt;br /&gt;
|-&lt;br /&gt;
! Price Range&lt;br /&gt;
| $5-$20 || $10-$25 || $15-$30 || $10-$25 || $50-$150 || $25-$60 || $70-$200&lt;br /&gt;
|-&lt;br /&gt;
! Documentation and Source Code&lt;br /&gt;
| Documentation: [https://www.ti.com/lit/ds/symlink/am3359.pdf AM335x Sitara™ Processors datasheet (Rev. L)],&lt;br /&gt;
SDK: [https://www.ti.com/tool/PROCESSOR-SDK-AM335X PROCESSOR-SDK-AM335X Software development kit (SDK)]&lt;br /&gt;
| Documentation: [https://www.ti.com/cn/lit/ug/sprugr0c/sprugr0c.pdf AM35x ARM Microprocessor Technical Reference Manual (Rev. C)],&lt;br /&gt;
SDK: [https://www.ti.com/tool/download/LINUXEZSDK-AM35X/06.00.00.00 LINUXEZSDK-AM35X Software development kit (SDK)]&lt;br /&gt;
| Documentation: [https://www.ti.com/lit/ds/symlink/am3715.pdf?ts=1736860696591&amp;amp;ref_url=https%253A%252F%252Fwww.ti.com%252Fproduct%252FAM3715AM3715, AM3703 Sitara ARM Microprocessors datasheet (Rev. F)],&lt;br /&gt;
SDK: [https://www.ti.com/tool/download/LINUXEZSDK-AM37X/06.00.00.00 LINUXEZSDK-AM37X Software development kit (SDK)]&lt;br /&gt;
| Documentation: [https://www.ti.com/lit/ds/symlink/am4379.pdf AM437x Sitara™ Processors datasheet (Rev. E)],&lt;br /&gt;
SDK: [https://www.ti.com/tool/PROCESSOR-SDK-AM437X PROCESSOR-SDK-AM437X Software development kit (SDK)]&lt;br /&gt;
| Documentation: [https://www.ti.com/lit/po/sprt689a/sprt689a.pdf?ts=1736861964255&amp;amp;ref_url=https%253A%252F%252Fwww.google.com%252F sprt689a.pdf],&lt;br /&gt;
SDK: [https://www.ti.com/tool/PROCESSOR-SDK-AM57X PROCESSOR-SDK-AM57X Software development kit (SDK)]&lt;br /&gt;
| Documentation: [https://www.ti.com/lit/ds/symlink/am623.pdf AM62x Sitara™ Processors datasheet (Rev. B)],&lt;br /&gt;
SDK: [https://www.ti.com/tool/PROCESSOR-SDK-AM62X PROCESSOR-SDK-AM62X Software development kit (SDK)]&lt;br /&gt;
| Documentation: [https://www.ti.com/lit/ug/spruid7e/spruid7e.pdf?ts=1736862697648&amp;amp;ref_url=https%253A%252F%252Fwww.ti.com%252Fproduct%252FAM6548 AM65x/DRA80xM Processors Technical Reference Manual (Rev. E)],&lt;br /&gt;
SDK: [https://www.ti.com/tool/PROCESSOR-SDK-AM65X PROCESSOR-SDK-AM65X Software development kit (SDK)]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Why are Texas Instruments Sitara Processors popular? ====&lt;br /&gt;
Texas Instruments Sitara Processors are popular due to their reliability, cost-effectiveness, and scalable processing power. They excel in integrating key peripherals such as Ethernet, CAN, and industrial interfaces.&lt;br /&gt;
&lt;br /&gt;
=== Qualcomm Snapdragon ===  &lt;br /&gt;
It is a system-on-chip (SoC) that powers a variety of devices, such as smartphones, tablets, laptops, and desktops. They are designed to be fast, intelligent, and secure, with features like multi-core CPUs, GPUs, and digital signal processors.  &lt;br /&gt;
&lt;br /&gt;
==== Pros ====  &lt;br /&gt;
* Performance  &lt;br /&gt;
* Power Efficiency  &lt;br /&gt;
* Connectivity  &lt;br /&gt;
&lt;br /&gt;
Qualcomm Snapdragon processors are known for their high performance, versatility, and extensive use in mobile and embedded systems. Its processors are used in a wide range of applications, thanks to the combination of ARM Cortex cores, DSP, and AI. Snapdragon processors come with Wi-Fi, LTE, and 5G, which is great for IoT and edge computing. Its community is also well-established with Android and Linux SDKs.  &lt;br /&gt;
&lt;br /&gt;
==== Cons ====  &lt;br /&gt;
* Fragmentation  &lt;br /&gt;
* Software Compatibility  &lt;br /&gt;
* Overheating  &lt;br /&gt;
&lt;br /&gt;
Snapdragon processors tend to be power-hungry, making them less suitable for low-power applications. They may be overkill for simpler applications. Snapdragon processors are generally more expensive than other microcontrollers. The processors are optimized for high-speed and multimedia applications, they may not perform well for real-time applications.  &lt;br /&gt;
&lt;br /&gt;
==== Applications ====  &lt;br /&gt;
* Mobile devices  &lt;br /&gt;
* Multimedia  &lt;br /&gt;
* IoT  &lt;br /&gt;
&lt;br /&gt;
==== Models ====  &lt;br /&gt;
* Snapdragon 8 Series  &lt;br /&gt;
* Snapdragon 7 Series  &lt;br /&gt;
* Snapdragon 6 Series  &lt;br /&gt;
* Snapdragon 4 Series  &lt;br /&gt;
* Snapdragon 2 Series  &lt;br /&gt;
&lt;br /&gt;
==== Specifications ====  &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ Qualcomm Snapdragon Processors Comparison&lt;br /&gt;
! Model !! Snapdragon 2 Series !! Snapdragon 4 Series !! Snapdragon 6 Series !! Snapdragon 7 Series !! Snapdragon 8 Series&lt;br /&gt;
|-&lt;br /&gt;
! CPU&lt;br /&gt;
| ARM Cortex-A53, up to 1.3GHz, Quad-core&lt;br /&gt;
| Kryo 460, up to 2.0GHz, Octa-core&lt;br /&gt;
| Kryo 660, up to 2.4GHz, Octa-core&lt;br /&gt;
| Kryo 770, up to 2.4GHz, Octa-core&lt;br /&gt;
| Kryo 780, up to 3.2GHz, Octa-core&lt;br /&gt;
|-&lt;br /&gt;
! GPU&lt;br /&gt;
| Adreno 304&lt;br /&gt;
| Adreno 610&lt;br /&gt;
| Adreno 642L&lt;br /&gt;
| Adreno 642L&lt;br /&gt;
| Adreno 730&lt;br /&gt;
|-&lt;br /&gt;
! APU&lt;br /&gt;
| Basic AI features supported through CPU/GPU&lt;br /&gt;
| Qualcomm AI Engine, up to 2 TOPS&lt;br /&gt;
| Qualcomm AI Engine, up to 12 TOPS&lt;br /&gt;
| Qualcomm AI Engine, up to 12 TOPS&lt;br /&gt;
| Qualcomm AI Engine, up to 27 TOPS&lt;br /&gt;
|-&lt;br /&gt;
! RAM&lt;br /&gt;
| Up to 3GB LPDDR3&lt;br /&gt;
| Up to 6GB LPDDR4x&lt;br /&gt;
| Up to 12GB LPDDR4X/LPDDR5&lt;br /&gt;
| Up to 16GB LPDDR5&lt;br /&gt;
| Up to 18GB LPDDR5x&lt;br /&gt;
|-&lt;br /&gt;
! Display&lt;br /&gt;
| 720p HD @ 60Hz&lt;br /&gt;
| 1080p FHD @ 60Hz&lt;br /&gt;
| 1440p QHD @ 120Hz&lt;br /&gt;
| 1440p QHD+ @ 120Hz&lt;br /&gt;
| 4K UHD/1440p QHD+ @ 144Hz&lt;br /&gt;
|-&lt;br /&gt;
! Ports&lt;br /&gt;
| USB 2.0&lt;br /&gt;
| USB 3.1&lt;br /&gt;
| USB 3.1&lt;br /&gt;
| USB 3.1&lt;br /&gt;
| USB 3.2&lt;br /&gt;
|-&lt;br /&gt;
! Storage Options&lt;br /&gt;
| eMMC 5.1&lt;br /&gt;
| UFS 2.1&lt;br /&gt;
| eMMC 5.1, UFS 2.2&lt;br /&gt;
| UFS 3.1&lt;br /&gt;
| UFS 4.0&lt;br /&gt;
|-&lt;br /&gt;
! Network&lt;br /&gt;
| LTE Cat 4&lt;br /&gt;
| Wi-Fi 5, LTE Cat 15, 4G+ Mobile&lt;br /&gt;
| Wi-Fi 6, mmWave, 5G Mobile&lt;br /&gt;
| Wi-Fi 6, mmWave, 5G Mobile&lt;br /&gt;
| Wi-Fi 7, mmWave, 5G Mobile&lt;br /&gt;
|-&lt;br /&gt;
! Power&lt;br /&gt;
| 3.3V, low power&lt;br /&gt;
| 3.3V&lt;br /&gt;
| 3.3V&lt;br /&gt;
| 3.3V&lt;br /&gt;
| 3.3V&lt;br /&gt;
|-&lt;br /&gt;
! OS Support&lt;br /&gt;
| Android 10&lt;br /&gt;
| Android 11, Android 12&lt;br /&gt;
| Android 12, Android 13&lt;br /&gt;
| Android 12, Android 13&lt;br /&gt;
| Android 12, Android 13&lt;br /&gt;
|-&lt;br /&gt;
! Price Range&lt;br /&gt;
| $5-$15&lt;br /&gt;
| $20-$60&lt;br /&gt;
| $80-$150&lt;br /&gt;
| $250-$450&lt;br /&gt;
| $500-$1,200&lt;br /&gt;
|-&lt;br /&gt;
! Documentation and Source Code&lt;br /&gt;
| Documentation: [https://www.qualcomm.com/products/mobile/snapdragon/smartphones/qualcomm-2-series-mobile-platforms Qualcomm 2 Series Mobile Platforms]&lt;br /&gt;
&lt;br /&gt;
Github: [https://github.com/SnapdragonStudios Snapdragon Studios]&lt;br /&gt;
&lt;br /&gt;
Source Code: [https://docs.qualcomm.com/bundle/publicresource/topics/80-41102-1/get-the-source-code-from-the-clo-website.html Snapdragon Telematics Application Framework (TelAF) User Guide]&lt;br /&gt;
&lt;br /&gt;
| Documentation: [https://www.qualcomm.com/products/mobile/snapdragon/smartphones/snapdragon-4-series-mobile-platforms/snapdragon-4-gen-1-mobile-platform Snapdragon 4 Gen 1 Mobile Platform],&lt;br /&gt;
&lt;br /&gt;
[https://docs.qualcomm.com/bundle/publicresource/87-64330-1_REV_C_Snapdragon_4_Gen2_Mobile_Platform_Product_Brief.pdf Product Brief]&lt;br /&gt;
&lt;br /&gt;
Github: [https://github.com/SnapdragonStudios Snapdragon Studios]&lt;br /&gt;
&lt;br /&gt;
Source Code: [https://docs.qualcomm.com/bundle/publicresource/topics/80-41102-1/get-the-source-code-from-the-clo-website.html Snapdragon Telematics Application Framework (TelAF) User Guide]&lt;br /&gt;
&lt;br /&gt;
| Documentation: [https://www.qualcomm.com/content/dam/qcomm-martech/dm-assets/documents/product_brief_snapdragon_6_gen_1.pdf Snapdragon 6 Gen 1 Product Brief],&lt;br /&gt;
&lt;br /&gt;
[https://www.qualcomm.com/products/mobile/snapdragon/smartphones/snapdragon-6-series-mobile-platforms/snapdragon-6-gen-1-mobile-platform Snapdragon 6 Gen 1 Mobile Platform],&lt;br /&gt;
&lt;br /&gt;
[https://docs.qualcomm.com/bundle/publicresource/87-82624-1_REV_A_Snapdragon_6_Gen_3_Mobile_Platform_Product_Brief.pdf Product Brief]&lt;br /&gt;
&lt;br /&gt;
Github: [https://github.com/SnapdragonStudios Snapdragon Studios]&lt;br /&gt;
&lt;br /&gt;
Source Code: [https://docs.qualcomm.com/bundle/publicresource/topics/80-41102-1/get-the-source-code-from-the-clo-website.html Snapdragon Telematics Application Framework (TelAF) User Guide]&lt;br /&gt;
&lt;br /&gt;
| Documentation: [https://www.qualcomm.com/content/dam/qcomm-martech/dm-assets/documents/Snapdragon-7-Gen-1-Product-Brief.pdf Snapdragon-7-Gen-1-Product-Brief.pdf],&lt;br /&gt;
&lt;br /&gt;
[https://www.qualcomm.com/products/mobile/snapdragon/smartphones/snapdragon-7-series-mobile-platforms Snapdragon 7 Series Mobile Platforms]&lt;br /&gt;
&lt;br /&gt;
[https://www.qualcomm.com/products/mobile/snapdragon/smartphones/snapdragon-7-series-mobile-platforms/snapdragon-7-gen-1-mobile-platform Snapdragon 7 Gen 1 Mobile Platform],&lt;br /&gt;
&lt;br /&gt;
[https://www.qualcomm.com/products/mobile/snapdragon/smartphones/snapdragon-7-series-mobile-platforms/snapdragon-7-plus-gen-2-mobile-platform Snapdragon 7+ Gen 2 Mobile Platform]&lt;br /&gt;
&lt;br /&gt;
Github: [https://github.com/SnapdragonStudios Snapdragon Studios],&lt;br /&gt;
&lt;br /&gt;
[https://github.com/SnapdragonStudios/adreno-gpu-vulkan-code-sample-framework Snapdragon Studios]&lt;br /&gt;
&lt;br /&gt;
| Documentation: [https://www.qualcomm.com/products/mobile/snapdragon/smartphones/snapdragon-8-series-mobile-platforms Snapdragon 8 Series Mobile Platforms],&lt;br /&gt;
&lt;br /&gt;
[https://www.qualcomm.com/products/mobile/snapdragon/smartphones/snapdragon-8-series-mobile-platforms/snapdragon-8-plus-gen-1-mobile-platform Snapdragon 8+ Gen 1 Mobile Platform],&lt;br /&gt;
&lt;br /&gt;
[https://www.qualcomm.com/products/mobile/snapdragon/smartphones/snapdragon-8-series-mobile-platforms/snapdragon-8-gen-2-mobile-platform Snapdragon 8 Gen 2 Mobile Platform]&lt;br /&gt;
&lt;br /&gt;
Github: [https://github.com/SnapdragonStudios Snapdragon Studios],&lt;br /&gt;
&lt;br /&gt;
[https://github.com/SnapdragonStudios/adreno-gpu-vulkan-code-sample-framework Snapdragon Studios]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--| Documentation: []&lt;br /&gt;
Github: []&lt;br /&gt;
Source Code: [] --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Why is Qualcomm Snapdragon Popular? ====  &lt;br /&gt;
Qualcomm Snapdragon is popular because it consistently delivers high performance, making it a reliable choice for a wide range of devices, from flagship smartphones to wearables and edge computing platforms. Snapdragon combines high-performance CPUs, GPUs, AI, and modems, enabling seamless multitasking, powerful graphics, and lightning-fast connectivity.&lt;br /&gt;
&lt;br /&gt;
=== Intel Atom Processors ===&lt;br /&gt;
Intel Atom Processors are core processors commonly used in hardware platforms. They are designed to reduce electric consumption and power dissipation.&lt;br /&gt;
&lt;br /&gt;
==== Pros ====&lt;br /&gt;
* Low power consumption  &lt;br /&gt;
* Affordable price  &lt;br /&gt;
* Compact  &lt;br /&gt;
&lt;br /&gt;
Intel Atom Processors are designed for low-power consumption while providing sufficient power for embedded systems. Their use of x86 architecture ensures compatibility with a wide variety of software. This allows easy integration with existing applications, especially those that rely on Intel development tools. These processors are also suitable for media streaming, edge AI, and industrial automation. They also have Wi-Fi, Ethernet, and Bluetooth capabilities.&lt;br /&gt;
&lt;br /&gt;
==== Cons ====&lt;br /&gt;
* Limited Graphics Performance  &lt;br /&gt;
* Limited Performance  &lt;br /&gt;
* Low clock speeds  &lt;br /&gt;
* Compatibility Issues  &lt;br /&gt;
&lt;br /&gt;
While Intel Atom Processors are energy-efficient, they may not be as power-efficient as ARM-based processors like the ESP32 or Snapdragon. These processors tend to have lower overall performance compared to more powerful x86 processors and may struggle with complex AI applications or high-resolution video processing.  &lt;br /&gt;
&lt;br /&gt;
Although Intel Atom processors offer compatibility, it can also lead to higher heat output, requiring advanced cooling systems in compact closed environments. The development tools for Intel Atom processors may require specialized expertise, especially when working with Intel SDKs and Linux-based or Windows-based OS.&lt;br /&gt;
&lt;br /&gt;
==== Application ====&lt;br /&gt;
* Mobile  &lt;br /&gt;
* Embedded  &lt;br /&gt;
* IoT Applications  &lt;br /&gt;
* Infotainment (cars)  &lt;br /&gt;
&lt;br /&gt;
==== Models ====&lt;br /&gt;
* Intel Atom X7000E Series  &lt;br /&gt;
* Intel Atom X7000RE Series  &lt;br /&gt;
* Intel Atom X7000C Series  &lt;br /&gt;
* Intel Atom N-Series  &lt;br /&gt;
* Intel Atom P-Series  &lt;br /&gt;
* Intel Atom C-Series  &lt;br /&gt;
&lt;br /&gt;
==== Specifications ====&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ Intel Atom Processor Specifications&lt;br /&gt;
! Model !! Intel Atom X7000E Series !! Intel Atom X7000RE Series !! Intel Atom X7000C Series !! Intel Atom N-Series !! Intel Atom P-Series !! Intel Atom C-Series&lt;br /&gt;
|-&lt;br /&gt;
! CPU&lt;br /&gt;
| Up to 4 E-cores&lt;br /&gt;
| Up to 8 Cores&lt;br /&gt;
| Up to 8 Cores&lt;br /&gt;
| Up to 2 cores with Hyper-Threading&lt;br /&gt;
| Up to 8 cores with Hyper-Threading&lt;br /&gt;
| Up to 16 cores with Hyper-Threading&lt;br /&gt;
|-&lt;br /&gt;
! GPU&lt;br /&gt;
| Intel UHD Graphics&lt;br /&gt;
| Intel UHD Graphics&lt;br /&gt;
| Intel UHD Graphics&lt;br /&gt;
| Integrated Graphics&lt;br /&gt;
| Intel UHD Graphics&lt;br /&gt;
| Intel UHD Graphics&lt;br /&gt;
|-&lt;br /&gt;
! APU&lt;br /&gt;
| Intel Deep Learning Boost&lt;br /&gt;
| Intel Deep Learning Boost&lt;br /&gt;
| Intel Deep Learning Boost&lt;br /&gt;
| Basic AI handled by CPU and GPU&lt;br /&gt;
| Intel Deep Learning Boost&lt;br /&gt;
| Intel Deep Learning Boost&lt;br /&gt;
|-&lt;br /&gt;
! RAM&lt;br /&gt;
| Up to 16GB DDR/LPDDR4x&lt;br /&gt;
| Up to 16GB DDR/LPDDR4x&lt;br /&gt;
| Up to 16GB DDR/LPDDR4x&lt;br /&gt;
| Up to 4GB DDR3&lt;br /&gt;
| Up to 64GB DDR4&lt;br /&gt;
| Up to 256GB DDR4 ECC&lt;br /&gt;
|-&lt;br /&gt;
! Display&lt;br /&gt;
| Up to 4K @ 60Hz HDR&lt;br /&gt;
| Up to 4K @ 60Hz HDR&lt;br /&gt;
| Up to 4K @ 60Hz HDR&lt;br /&gt;
| FHD&lt;br /&gt;
| Up to 4K @ 60Hz&lt;br /&gt;
| Up to 4K @ 60Hz HDR&lt;br /&gt;
|-&lt;br /&gt;
! Ports&lt;br /&gt;
| USB-C, PCIe&lt;br /&gt;
| USB-C, PCIe&lt;br /&gt;
| USB-C, PCIe&lt;br /&gt;
| USB 2.0&lt;br /&gt;
| USB 3.2, PCIe&lt;br /&gt;
| USB 3.2, PCIe&lt;br /&gt;
|-&lt;br /&gt;
! Storage Options&lt;br /&gt;
| eMMC, SD, NVMe&lt;br /&gt;
| eMMC, SD, NVMe&lt;br /&gt;
| eMMC, SD, NVMe&lt;br /&gt;
| eMMC, SATA&lt;br /&gt;
| eMMC, NVMe, SATA&lt;br /&gt;
| eMMC, NVMe, SATA&lt;br /&gt;
|-&lt;br /&gt;
! Network&lt;br /&gt;
| Wi-Fi 6, Gigabit Ethernet&lt;br /&gt;
| Wi-Fi 6, Gigabit Ethernet&lt;br /&gt;
| Wi-Fi 6/6E, Gigabit Ethernet&lt;br /&gt;
| Wi-Fi 4, Wi-Fi 5, Ethernet Gigabit&lt;br /&gt;
| Wi-Fi 6/6E, Gigabit Ethernet&lt;br /&gt;
| Wi-Fi 6E, Gigabit Ethernet&lt;br /&gt;
|-&lt;br /&gt;
! Power&lt;br /&gt;
| 6W-15W&lt;br /&gt;
| 6W-15W&lt;br /&gt;
| 6W-15W&lt;br /&gt;
| 3.5W-7W&lt;br /&gt;
| 10W-20W&lt;br /&gt;
| 15W-35W&lt;br /&gt;
|-&lt;br /&gt;
! OS Support&lt;br /&gt;
| Ubuntu, Linux (Yocto), Windows 10/11&lt;br /&gt;
| Ubuntu, Linux (Yocto), Windows 10/11&lt;br /&gt;
| Ubuntu, Linux (Yocto), Windows 10/11&lt;br /&gt;
| Linux, Windows 7/10&lt;br /&gt;
| Ubuntu, Linux (Yocto), Windows 10/11&lt;br /&gt;
| Ubuntu, Linux (Yocto), Windows 10/11&lt;br /&gt;
|-&lt;br /&gt;
! Price Range&lt;br /&gt;
| $30-$60&lt;br /&gt;
| $50-$90&lt;br /&gt;
| $40-$80&lt;br /&gt;
| $20-$40&lt;br /&gt;
| $50-$100&lt;br /&gt;
| $100-$250&lt;br /&gt;
|-&lt;br /&gt;
! Documentation and Source Code&lt;br /&gt;
| Documentation: [https://www.intel.com/content/www/us/en/products/docs/processors/atom/x7000e-series-overview.html Intel Atom X7000E Series Overview],&lt;br /&gt;
[https://www.intel.com/content/www/us/en/products/docs/processors/atom/x7000e-series-product-brief.html Intel Atom® x7000E Series Product Brief]&lt;br /&gt;
&lt;br /&gt;
SDK: [https://www.intel.com/content/www/us/en/developer/topic-technology/edge-5g/hardware/atom-x7000e-dev-kit.html Developer Kits with Intel Atom® x7000E Processors]&lt;br /&gt;
| Documentation: [https://www.intel.com/content/www/us/en/products/docs/processors/atom/x7000re-series-overview.html Intel Atom X7000RE Series Overview],&lt;br /&gt;
[https://www.intel.com/content/www/us/en/products/docs/processors/atom/x7000re-series-product-brief.html Intel Atom® Processors x7000RE Series Product Brief]&lt;br /&gt;
| Documentation: [https://www.intel.com/content/www/us/en/products/docs/processors/atom/x7000c-series-overview.html Intel Atom X7000C Series Overview],&lt;br /&gt;
[https://www.intel.com/content/www/us/en/products/docs/processors/atom/x7000c-series-product-brief.html Intel Atom® x7000C Processors Series Product Brief]&lt;br /&gt;
| Documentation: [https://www.intel.com/content/www/us/en/products/docs/processors/atom/n2600-overview.html Intel Atom N2600 Overview]&lt;br /&gt;
| Documentation: [https://www.intel.com/content/www/us/en/products/docs/processors/atom/p-series-overview.html Intel Atom P-Series Overview],&lt;br /&gt;
[https://www.intel.com/content/www/us/en/products/docs/processors/atom/p5900-overview.html Intel Atom® P5900 Processors for 5G Network Edge Acceleration]&lt;br /&gt;
| Documentation: [https://www.intel.com/content/www/us/en/products/docs/processors/atom/c-series-overview.html Intel Atom C-Series Overview],&lt;br /&gt;
[https://www.intel.com/content/www/us/en/products/docs/processors/atom/c3000-overview.html Product Brief: Intel Atom® C3000 Processor] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Why is Intel Atom Processors Popular? ====&lt;br /&gt;
Intel Atom Processors are popular because of their low power consumption. They are ideal for small, portable devices and embedded systems. They offer a good balance between performance and power usage. Additionally, Intel’s reputation makes Atom processors a dependable choice for developers and manufacturers.&lt;br /&gt;
&lt;br /&gt;
=== Microchip PIC Microcontrollers ===&lt;br /&gt;
Microchip PIC Microcontrollers consist of scalable 8-bit, 16-bit, and 32-bit microcontrollers and Digital Signal Controllers.&lt;br /&gt;
&lt;br /&gt;
==== Pros ====&lt;br /&gt;
* Cheap, Budget friendly&lt;br /&gt;
* Low power&lt;br /&gt;
* Documentation&lt;br /&gt;
&lt;br /&gt;
Widely recognized for their low power consumption and affordability, Microchip PIC Microcontrollers are the ideal choice for a variety of embedded systems, particularly in battery-powered devices and simple consumer electronics. These microcontrollers offer user-friendly development environments due to MPLAB X IDE and Microchip Studio, which streamline the design and prototyping process. Microchip PIC Microcontrollers are also well supported by a rich ecosystem of tools, libraries, and applications.&lt;br /&gt;
&lt;br /&gt;
==== Cons ====&lt;br /&gt;
* Not enough computational power&lt;br /&gt;
* Not beginner friendly&lt;br /&gt;
&lt;br /&gt;
The microcontroller&#039;s processing power is limited compared to other more advanced microcontrollers such as the Arm Cortex-M Series. This makes them unsuitable for high computational tasks, such as AI or multimedia processing. They also lack built-in wireless connectivity, such as Wi-Fi and Bluetooth, and have relatively small RAM and storage capabilities. Microchip PIC Microcontrollers are less equipped for more advanced applications like high-speed processing, graphics, or real-time systems.&lt;br /&gt;
&lt;br /&gt;
==== Applications ====&lt;br /&gt;
* Automotive&lt;br /&gt;
* Industrial&lt;br /&gt;
* Home automation&lt;br /&gt;
&lt;br /&gt;
==== Models ====&lt;br /&gt;
* 8-bit MCUs&lt;br /&gt;
* 16-bit MCUs&lt;br /&gt;
* 32-bit MCUs&lt;br /&gt;
* Digital Signal Controllers&lt;br /&gt;
* Wireless MCUs&lt;br /&gt;
&lt;br /&gt;
==== Specifications ====&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ Microchip PIC Microcontroller and Digital Signal Controller Specifications&lt;br /&gt;
! Model !! Microchip PIC 8-bit MCU !! Microchip PIC 16-bit MCU !! Microchip PIC 32-bit MCU !! Microchip PIC Digital Signal Controllers !! Microchip PIC Wireless MCU&lt;br /&gt;
|-&lt;br /&gt;
! CPU&lt;br /&gt;
| 8-bit PIC core&lt;br /&gt;
| 16-bit PIC24 core&lt;br /&gt;
| 32-bit PIC32 core&lt;br /&gt;
| dsPIC core with digital signal processing&lt;br /&gt;
| 32-bit PIC32 core with integrated wireless&lt;br /&gt;
|-&lt;br /&gt;
! GPU&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
| Optional integrated GPU in select models&lt;br /&gt;
| N/A&lt;br /&gt;
| Optional Integrated GPU&lt;br /&gt;
|-&lt;br /&gt;
! APU&lt;br /&gt;
| N/A&lt;br /&gt;
| Basic signal processing capabilities&lt;br /&gt;
| Advanced signal processing&lt;br /&gt;
| Advanced signal processing&lt;br /&gt;
| Integrated wireless processing cores&lt;br /&gt;
|-&lt;br /&gt;
! RAM&lt;br /&gt;
| Up to 2KB&lt;br /&gt;
| Up to 32KB&lt;br /&gt;
| Up to 512KB&lt;br /&gt;
| Up to 64KB&lt;br /&gt;
| Up to 512KB&lt;br /&gt;
|-&lt;br /&gt;
! Display&lt;br /&gt;
| Basic LCD display&lt;br /&gt;
| Basic LCD display&lt;br /&gt;
| TFT and advanced displays&lt;br /&gt;
| LCD support&lt;br /&gt;
| TFT and advanced displays&lt;br /&gt;
|-&lt;br /&gt;
! Ports&lt;br /&gt;
| UART, SPI, I2C, GPIO&lt;br /&gt;
| UART, SPI, I2C, CAN, GPIO&lt;br /&gt;
| USB, PCIe, SPI, I2C&lt;br /&gt;
| UART, SPI, I2C, CAN, GPIO&lt;br /&gt;
| USB, SPI, I2C&lt;br /&gt;
|-&lt;br /&gt;
! Storage Options&lt;br /&gt;
| Internal Flash, EEPROM&lt;br /&gt;
| Internal Flash, EEPROM&lt;br /&gt;
| Internal Flash, SD, NAND&lt;br /&gt;
| Internal Flash, EEPROM&lt;br /&gt;
| Internal Flash, SD, NAND&lt;br /&gt;
|-&lt;br /&gt;
! Network&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
| Wi-Fi, Ethernet&lt;br /&gt;
| Ethernet&lt;br /&gt;
| Wi-Fi, Zigbee, LoRa&lt;br /&gt;
|-&lt;br /&gt;
! Power&lt;br /&gt;
| 0.03W-0.1W Ultra-low power&lt;br /&gt;
| 0.1W-0.5W Low power&lt;br /&gt;
| 0.5W-2W Low to Moderate Power&lt;br /&gt;
| 0.2W-1W Low power&lt;br /&gt;
| 0.05W-0.5W Ultra-low power&lt;br /&gt;
|-&lt;br /&gt;
! OS Support&lt;br /&gt;
| Bare-metal&lt;br /&gt;
| Bare-metal, FreeRTOS&lt;br /&gt;
| FreeRTOS, Zephyr&lt;br /&gt;
| FreeRTOS, Zephyr&lt;br /&gt;
| FreeRTOS, Zephyr, Harmony&lt;br /&gt;
|-&lt;br /&gt;
! Price Range&lt;br /&gt;
| $0.5-$3&lt;br /&gt;
| $2-$10&lt;br /&gt;
| $5-$20&lt;br /&gt;
| $5-$15&lt;br /&gt;
| $5-$25&lt;br /&gt;
|-&lt;br /&gt;
! Documentation and Source Code&lt;br /&gt;
| Documentation: [https://www.microchip.com/wwwAppNotes/AppNotes.aspx?appnote=en30009630 30009630m.pdf]&lt;br /&gt;
&lt;br /&gt;
SDK: [https://www.microchip.com/en-us/development-tools-tools/8bit/pic-avr-mcus Start Developing With 8-bit PIC® and AVR® MCUs],&lt;br /&gt;
&lt;br /&gt;
[https://www.microchip.com/en-us/development-tools-tools/software-tools Libraries, Code Examples and More]&lt;br /&gt;
&lt;br /&gt;
| Documentation: [https://www.microchip.com/en-us/development-tools-tools/16bit/ 16-bit Microcontrollers]&lt;br /&gt;
&lt;br /&gt;
SDK: [https://www.microchip.com/en-us/development-tools-tools/16bit/pic24f Developing With the 16-bit PIC24F MCU],&lt;br /&gt;
&lt;br /&gt;
[https://developerhelp.microchip.com/xwiki/bin/view/products/mcu-mpu/16bit-mcu/software-development/ Software Development for 16-bit PIC® MCUs - Developer Help]&lt;br /&gt;
| Documentation: [https://www.microchip.com/en-us/development-tools-tools/32bit/ PIC32 Family of 32-bit Microcontrollers]&lt;br /&gt;
&lt;br /&gt;
SDK: [https://www.microchip.com/en-us/development-tools-tools/32bit/pic32-starter-kit PIC32 STARTER KIT],&lt;br /&gt;
&lt;br /&gt;
| Documentation: [https://www.microchip.com/en-us/development-tools-tools/digital-signal-controllers Digital Signal Controllers (DSCs)]&lt;br /&gt;
&lt;br /&gt;
SDK: [https://www.microchip.com/en-us/development-tools-tools/software-tools Libraries, Code Examples and More]&lt;br /&gt;
&lt;br /&gt;
| Documentation: [https://www.microchip.com/en-us/development-tools-tools/wireless Wireless Microcontrollers]&lt;br /&gt;
&lt;br /&gt;
GitHub: [https://github.com/Microchip-MPLAB-Harmony Microchip MPLAB Harmony],&lt;br /&gt;
&lt;br /&gt;
[https://github.com/Microchip-MPLAB-Harmony/wireless_pic32cxbz_wbz Microchip-MPLAB-Harmony/wireless_pic32cxbz_wbz]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Why is Microchip PIC Microcontrollers Popular? ====&lt;br /&gt;
Microchip PIC Microcontrollers are popular because of their low cost, wide availability, and extensive design support from Microchip. They offer a variety of models that are well suited for everything from simple DIY projects to complex industrial systems. Microchip’s product availability and support network make PIC microcontrollers a trusted system for beginners and professionals.&lt;br /&gt;
&lt;br /&gt;
=== STMicroelectronics STM32 Series ===  &lt;br /&gt;
Based on the Arm Cortex-M processor. It offers products combining very high performance, real-time capabilities, digital signal processing, low-power operation, and connectivity, while maintaining full integration and ease of development.  &lt;br /&gt;
&lt;br /&gt;
==== Pros ====  &lt;br /&gt;
* High Performance  &lt;br /&gt;
* Wide range of peripherals  &lt;br /&gt;
* Low power consumption  &lt;br /&gt;
* Cost-effective  &lt;br /&gt;
&lt;br /&gt;
One of STMicroelectronics STM32 series&#039; pros is their processing power, from Arm Cortex-M0 to Cortex-M7 cores. They offer scalability for both simple and complex tasks. They also have good support for development with tools like STM32Cube and libraries like HAL, which simplify the development process. They support a wide array of peripherals such as SPI, I2C, UART, PWM, and CAN. Some models also have Wi-Fi and Bluetooth capabilities, reducing the need for external modules.  &lt;br /&gt;
&lt;br /&gt;
==== Cons ====  &lt;br /&gt;
* Complexity  &lt;br /&gt;
* Learning Curve  &lt;br /&gt;
* Different Pinout variations  &lt;br /&gt;
&lt;br /&gt;
While STMicroelectronics STM32 Series are generally affordable, they are still more expensive than other simpler microcontrollers. Beginners may find the development process more complex, especially when dealing with higher-end STM32 models. They are not well suited for high-level processing like AI, GPU-based graphics, or video processing.  &lt;br /&gt;
&lt;br /&gt;
==== Applications ====  &lt;br /&gt;
* Industrial  &lt;br /&gt;
* Automotive  &lt;br /&gt;
* IIoT (Industrial Internet of Things)  &lt;br /&gt;
* Communications Equipment  &lt;br /&gt;
&lt;br /&gt;
==== Models ====  &lt;br /&gt;
* STM32F/H Series (High Performance)  &lt;br /&gt;
* STM32G/C/F Series (Mainstream)  &lt;br /&gt;
* STM32L/U Series (Ultra-low power)  &lt;br /&gt;
* STM32W Series (Wireless)  &lt;br /&gt;
&lt;br /&gt;
==== Specifications ====  &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ STM32 Series Specifications&lt;br /&gt;
! Model !! STM32F/H Series !! STM32G/C/F Series !! STM32L/U Series !! STM32W Series&lt;br /&gt;
|-&lt;br /&gt;
! CPU&lt;br /&gt;
| Arm Cortex-M3/M4/M7/M33&lt;br /&gt;
| Arm Cortex-M4/M33&lt;br /&gt;
| Arm Cortex-M0+/M3/M33&lt;br /&gt;
| Arm Cortex-M4/M33&lt;br /&gt;
|-&lt;br /&gt;
! GPU&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
| Optional Integrated Graphics Controller&lt;br /&gt;
|-&lt;br /&gt;
! APU&lt;br /&gt;
| Basic DSP capabilities&lt;br /&gt;
| Enhanced DSP&lt;br /&gt;
| N/A&lt;br /&gt;
| Integrated RF processing for wireless&lt;br /&gt;
|-&lt;br /&gt;
! RAM&lt;br /&gt;
| Up to 1MB&lt;br /&gt;
| Up to 512KB&lt;br /&gt;
| Up to 192KB&lt;br /&gt;
| Up to 256KB&lt;br /&gt;
|-&lt;br /&gt;
! Display&lt;br /&gt;
| TFT LCD Controller&lt;br /&gt;
| TFT LCD&lt;br /&gt;
| N/A&lt;br /&gt;
| TFT LCD Up Controller&lt;br /&gt;
|-&lt;br /&gt;
! Ports&lt;br /&gt;
| UART, I2C, SPI, USB, CAN, GPIO&lt;br /&gt;
| UART, I2C, SPI, USB, CAN, GPIO&lt;br /&gt;
| UART, I2C, SPI, USB, GPIO&lt;br /&gt;
| UART, I2C, SPI, USB, CAN, GPIO&lt;br /&gt;
|-&lt;br /&gt;
! Storage Options&lt;br /&gt;
| Up to 2MB Internal Flash, External QSPI&lt;br /&gt;
| Up to 1MB Internal Flash, External QSPI&lt;br /&gt;
| Up to 1MB Internal Flash&lt;br /&gt;
| Up to 2MB Internal Flash, External QSPI&lt;br /&gt;
|-&lt;br /&gt;
! Network&lt;br /&gt;
| Ethernet&lt;br /&gt;
| CAN, USB&lt;br /&gt;
| USB&lt;br /&gt;
| Zigbee&lt;br /&gt;
|-&lt;br /&gt;
! Power&lt;br /&gt;
| 0.08W-2W&lt;br /&gt;
| 0.5W-1.5W&lt;br /&gt;
| 0.1W-0.8W&lt;br /&gt;
| 0.6W-1.2W&lt;br /&gt;
|-&lt;br /&gt;
! OS Support&lt;br /&gt;
| FreeRTOS, Zephyr, Mbed OS&lt;br /&gt;
| FreeRTOS, Zephyr, Mbed OS&lt;br /&gt;
| FreeRTOS, Zephyr, Mbed OS&lt;br /&gt;
| FreeRTOS, Zephyr, Mbed OS&lt;br /&gt;
|-&lt;br /&gt;
! Price Range&lt;br /&gt;
| $3-$20&lt;br /&gt;
| $2-$12&lt;br /&gt;
| $1.50-$10&lt;br /&gt;
| $3-$15&lt;br /&gt;
|-&lt;br /&gt;
! Documentation and Source Code&lt;br /&gt;
| Documentation: [https://www.st.com STM32 Microcontrollers (MCUs) - STMicroelectronics]&lt;br /&gt;
&lt;br /&gt;
SDK: [https://www.st.com STM32Cube MCU: List of Embedded software components - STMicroelectronics]&lt;br /&gt;
&lt;br /&gt;
GitHub: [https://github.com/STMicroelectronics STMicroelectronics]&lt;br /&gt;
| Documentation: [https://www.st.com STM32 Microcontrollers (MCUs) - STMicroelectronics]&lt;br /&gt;
&lt;br /&gt;
SDK: [https://www.st.com STM32Cube MCU: List of Embedded software components - STMicroelectronics]&lt;br /&gt;
&lt;br /&gt;
GitHub: [https://github.com/STMicroelectronics STMicroelectronics]&lt;br /&gt;
| Documentation: [https://www.st.com STM32 Microcontrollers (MCUs) - STMicroelectronics]&lt;br /&gt;
&lt;br /&gt;
SDK: [https://www.st.com STM32Cube MCU: List of Embedded software components - STMicroelectronics]&lt;br /&gt;
&lt;br /&gt;
GitHub: [https://github.com/STMicroelectronics STMicroelectronics]&lt;br /&gt;
| Documentation: [https://www.st.com STM32 Microcontrollers (MCUs) - STMicroelectronics]&lt;br /&gt;
&lt;br /&gt;
SDK: [https://www.st.com STM32Cube MCU: List of Embedded software components - STMicroelectronics]&lt;br /&gt;
&lt;br /&gt;
GitHub: [https://github.com/STMicroelectronics STMicroelectronics]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Why is STMicroelectronics STM32 Series popular? ====  &lt;br /&gt;
STMicroelectronics STM32 Series is popular because it is suitable for a wide range of applications and offers high performance and developer-friendly features. With Arm Cortex cores, STM32 microcontrollers deliver excellent performance, energy efficiency, and peripheral integration. The STM32 ecosystem is supported by comprehensive development tools, such as STM32Cube software.  &lt;br /&gt;
&lt;br /&gt;
=== Renesas RX Family ===&lt;br /&gt;
Built around advanced CPU cores packed with innovations unique to Renesas.&lt;br /&gt;
&lt;br /&gt;
==== Pros ====&lt;br /&gt;
* High performance  &lt;br /&gt;
* Low power consumption  &lt;br /&gt;
* Wide range applications  &lt;br /&gt;
&lt;br /&gt;
Renesas RX Family uses 32-bit RX cores, which deliver strong computational power and support for complex applications. They are also integrated with peripherals such as CAN, SPI, I2C, PWM, and ADC. Renesas RX has a robust ecosystem of development tools, such as e2 Studio and Renesas Synergy, for easy integration and fast development cycles.  &lt;br /&gt;
&lt;br /&gt;
==== Cons ====&lt;br /&gt;
* Proprietary architecture  &lt;br /&gt;
* Steep learning curve  &lt;br /&gt;
* Not ideal for AI or multimedia  &lt;br /&gt;
&lt;br /&gt;
While Renesas RX offers strong performance, it may not match the processing power of more advanced microcontrollers or processors, such as Arm Cortex-M, Snapdragon, or NVIDIA Jetson. It may have a steep learning curve for beginners, especially when compared to Arduino. There are also fewer libraries and less community support. While Renesas RX may be suitable for embedded systems, it may not be the best choice for AI, GPU acceleration, or complex video analytics, which demand more specialized hardware.  &lt;br /&gt;
&lt;br /&gt;
==== Applications ====&lt;br /&gt;
* Industrial  &lt;br /&gt;
* Automation  &lt;br /&gt;
* Communication  &lt;br /&gt;
&lt;br /&gt;
==== Models ====&lt;br /&gt;
* RX700  &lt;br /&gt;
* RX600  &lt;br /&gt;
* RX200  &lt;br /&gt;
* RX100  &lt;br /&gt;
&lt;br /&gt;
==== Specifications ====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ Renesas RX Family Specifications&lt;br /&gt;
! Model !! RX700 !! RX600 !! RX200 !! RX100&lt;br /&gt;
|-&lt;br /&gt;
! CPU&lt;br /&gt;
| Up to 240 MHz 32-bit RXv3 core&lt;br /&gt;
| Up to 120MHz 32-bit RXv2 core&lt;br /&gt;
| Up to 54MHz 32-bit RXv2 core&lt;br /&gt;
| Up to 32MHz 32-bit RXv2 core&lt;br /&gt;
|-&lt;br /&gt;
! GPU&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
|-&lt;br /&gt;
! APU&lt;br /&gt;
| Advanced signal processing and control&lt;br /&gt;
| Advanced signal processing and control&lt;br /&gt;
| Advanced signal processing and control&lt;br /&gt;
| Advanced signal processing and control&lt;br /&gt;
|-&lt;br /&gt;
! RAM&lt;br /&gt;
| Up to 128MB SRAM&lt;br /&gt;
| Up to 128MB SRAM&lt;br /&gt;
| Up to 32MB SRAM&lt;br /&gt;
| Up to 16MB SRAM&lt;br /&gt;
|-&lt;br /&gt;
! Display&lt;br /&gt;
| Support high-resolution displays&lt;br /&gt;
| Graphical LCD&lt;br /&gt;
| Basic LCD&lt;br /&gt;
| Basic LCD&lt;br /&gt;
|-&lt;br /&gt;
! Ports&lt;br /&gt;
| UART, SPI, I2C, CAN, USB&lt;br /&gt;
| UART, SPI, I2C, CAN, USB&lt;br /&gt;
| UART, SPI, I2C, USB&lt;br /&gt;
| UART, SPI, I2C, USB&lt;br /&gt;
|-&lt;br /&gt;
! Storage Options&lt;br /&gt;
| Internal Flash up to 16MB, External QSPI&lt;br /&gt;
| Internal Flash up to 4MB, External QSPI&lt;br /&gt;
| Internal Flash up to 2MB, External QSPI&lt;br /&gt;
| Internal Flash up to 1MB, External QSPI&lt;br /&gt;
|-&lt;br /&gt;
! Network&lt;br /&gt;
| Ethernet&lt;br /&gt;
| Ethernet&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
|-&lt;br /&gt;
! Power&lt;br /&gt;
| 0.5W-2W&lt;br /&gt;
| 0.3W-1.5W&lt;br /&gt;
| 0.2W-1W&lt;br /&gt;
| 0.1W-0.5W&lt;br /&gt;
|-&lt;br /&gt;
! OS Support&lt;br /&gt;
| FreeRTOS, RX V3 SDK, embOS&lt;br /&gt;
| FreeRTOS, RX V2 SDK, embOS&lt;br /&gt;
| FreeRTOS, RX 23 SDK, embOS&lt;br /&gt;
| FreeRTOS, RX V2 SDK, embOS&lt;br /&gt;
|-&lt;br /&gt;
! Price Range&lt;br /&gt;
| $10-$50&lt;br /&gt;
| $5-$20&lt;br /&gt;
| $2-$10&lt;br /&gt;
| $1-$5&lt;br /&gt;
|-&lt;br /&gt;
! Documentation and Source Code&lt;br /&gt;
| Documentation: [https://www.renesas.com Renesas RX700, RX600 MCU Series]  &lt;br /&gt;
&lt;br /&gt;
SDK: [https://www.renesas.com C/C++ Compiler Package for RX Family [CC-RX] | Renesas]  &lt;br /&gt;
&lt;br /&gt;
GitHub: [https://github.com/Renesas RX MCUs team]&lt;br /&gt;
| Documentation: [https://www.renesas.com Renesas RX700, RX600 MCU Series]  &lt;br /&gt;
&lt;br /&gt;
SDK: [https://www.renesas.com C/C++ Compiler Package for RX Family [CC-RX] | Renesas]  &lt;br /&gt;
&lt;br /&gt;
GitHub: [https://github.com/Renesas RX MCUs team]&lt;br /&gt;
| Documentation: [https://www.renesas.com Renesas RX200 MCU Series]  &lt;br /&gt;
&lt;br /&gt;
SDK: [https://www.renesas.com C/C++ Compiler Package for RX Family [CC-RX] | Renesas]  &lt;br /&gt;
&lt;br /&gt;
GitHub: [https://github.com/Renesas RX MCUs team]&lt;br /&gt;
| Documentation: [https://www.renesas.com Renesas RX100 MCU Series]  &lt;br /&gt;
&lt;br /&gt;
SDK: [https://www.renesas.com C/C++ Compiler Package for RX Family [CC-RX] | Renesas]  &lt;br /&gt;
&lt;br /&gt;
GitHub: [https://github.com/Renesas RX MCUs team]&lt;br /&gt;
|}&lt;br /&gt;
  &lt;br /&gt;
==== Why is Renesas RX popular? ====&lt;br /&gt;
Renesas RX is popular because it is reliable, secure, and efficient. Using RX CPU cores, these microcontrollers deliver excellent performance and real-time capabilities. Developers benefit from tools like the e² studio IDE, code generation utilities, and extensive libraries.&lt;br /&gt;
&lt;br /&gt;
=== Arm Cortex-M Series ===&lt;br /&gt;
Optimized for cost and energy-efficient microcontrollers.&lt;br /&gt;
&lt;br /&gt;
==== Pros ====&lt;br /&gt;
* Low power consumption  &lt;br /&gt;
* Compact  &lt;br /&gt;
* Cost-effective  &lt;br /&gt;
* Multiprocessing  &lt;br /&gt;
&lt;br /&gt;
Arm Cortex-M Series is widely used for its scalability, low power, and strong performance. They offer a range of cores from Cortex-M0 to Cortex-M7. The low power consumption makes it highly suitable for battery-operated devices, with advanced power management features that extend battery life. They also have robust development tools, libraries, and community support, which makes development and integration with peripheral devices easier.  &lt;br /&gt;
&lt;br /&gt;
==== Cons ====&lt;br /&gt;
* Low performance  &lt;br /&gt;
* Limited software capability  &lt;br /&gt;
&lt;br /&gt;
While the Arm Cortex-M Series offers solid performance, they are still limited compared to higher-end Arm Cortex-A processors or other specialized computing platforms such as NVIDIA Jetson or Qualcomm Snapdragon. Some advanced features such as RTOS or multi-core support may require more complex development and can be overkill for simple applications. The development process can be complex, especially for users unfamiliar with embedded systems or real-time applications, making it less beginner-friendly.  &lt;br /&gt;
&lt;br /&gt;
==== Applications ====&lt;br /&gt;
* IoT  &lt;br /&gt;
* Industrial  &lt;br /&gt;
* Automotive  &lt;br /&gt;
&lt;br /&gt;
==== Models ====&lt;br /&gt;
* Cortex-M0  &lt;br /&gt;
* Cortex-M0+  &lt;br /&gt;
* Cortex-M1  &lt;br /&gt;
* Cortex-M23  &lt;br /&gt;
* Cortex-M3  &lt;br /&gt;
* Cortex-M4  &lt;br /&gt;
* Cortex-M33  &lt;br /&gt;
* Cortex-M35P  &lt;br /&gt;
* Cortex-M55  &lt;br /&gt;
* Cortex-M7  &lt;br /&gt;
&lt;br /&gt;
==== Specifications ====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ Arm Cortex-M Series Specifications&lt;br /&gt;
! Model !! Cortex-M0 !! Cortex-M0+ !! Cortex-M1 !! Cortex-M23&lt;br /&gt;
|-&lt;br /&gt;
! CPU&lt;br /&gt;
| Armv6-M up to 50 MHz&lt;br /&gt;
| Armv6-M up to 50 MHz&lt;br /&gt;
| Armv6-M up to 50 MHz&lt;br /&gt;
| Armv6-M up to 50 MHz&lt;br /&gt;
|-&lt;br /&gt;
! GPU&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
|-&lt;br /&gt;
! APU&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
|-&lt;br /&gt;
! RAM&lt;br /&gt;
| Up to 1 MB&lt;br /&gt;
| Up to 1 MB&lt;br /&gt;
| Up to 1 MB&lt;br /&gt;
| Up to 1 MB&lt;br /&gt;
|-&lt;br /&gt;
! Display&lt;br /&gt;
| External via SPI/I2C&lt;br /&gt;
| External via SPI/I2C&lt;br /&gt;
| External via SPI/I2C&lt;br /&gt;
| External via SPI/I2C&lt;br /&gt;
|-&lt;br /&gt;
! Ports&lt;br /&gt;
| SPI, I2C, UART, GPIO&lt;br /&gt;
| SPI, I2C, UART, GPIO&lt;br /&gt;
| SPI, I2C, UART, GPIO&lt;br /&gt;
| SPI, I2C, UART, GPIO&lt;br /&gt;
|-&lt;br /&gt;
! Storage Options&lt;br /&gt;
| Up to 256KB Flash memory, SD, SPI-based NOR&lt;br /&gt;
| Up to 256KB Flash memory, SD, SPI-based NOR&lt;br /&gt;
| Up to 256KB Flash memory, SD, SPI-based NOR&lt;br /&gt;
| Up to 256KB Flash memory, SD, SPI-based NOR&lt;br /&gt;
|-&lt;br /&gt;
! Network&lt;br /&gt;
| External modules, SPI, I2C&lt;br /&gt;
| External modules, SPI, I2C&lt;br /&gt;
| External modules, SPI, I2C&lt;br /&gt;
| External modules, SPI, I2C&lt;br /&gt;
|-&lt;br /&gt;
! Power&lt;br /&gt;
| Approx 0.00005W&lt;br /&gt;
| Approx 0.00005W&lt;br /&gt;
| Approx 0.00005W&lt;br /&gt;
| Approx 0.00005W&lt;br /&gt;
|-&lt;br /&gt;
! OS Support&lt;br /&gt;
| FreeRTOS, Zephyr&lt;br /&gt;
| FreeRTOS, Zephyr&lt;br /&gt;
| FreeRTOS, Zephyr&lt;br /&gt;
| FreeRTOS, Zephyr&lt;br /&gt;
|-&lt;br /&gt;
! Price Range&lt;br /&gt;
| $1&lt;br /&gt;
| $1&lt;br /&gt;
| $1&lt;br /&gt;
| $1&lt;br /&gt;
|-&lt;br /&gt;
! Documentation and Source code&lt;br /&gt;
| Documentation: [https://documentation-service.arm.com/static/5e8e294afd977155116a6a5b?token= Documentation]&lt;br /&gt;
&lt;br /&gt;
Github: [https://github.com/ARM-software/CMSIS_5 CMSIS_5 GitHub] &lt;br /&gt;
&lt;br /&gt;
| Documentation: [https://developer.arm.com Cortex-M0+ Technical Reference Manual] &lt;br /&gt;
&lt;br /&gt;
Github: [https://github.com/ARM-software/CMSIS_5 CMSIS_5 GitHub]&lt;br /&gt;
&lt;br /&gt;
| Documentation: [https://developer.arm.com Cortex-M1 Technical Reference Manual]&lt;br /&gt;
&lt;br /&gt;
Github: [https://github.com/ARM-software/CMSIS_5 CMSIS_5 GitHub]&lt;br /&gt;
&lt;br /&gt;
|Documentation: [https://developer.arm.com Cortex-M23 Processor Technical Reference Manual]&lt;br /&gt;
&lt;br /&gt;
Github: [https://github.com/ARM-software/CMSIS_5 CMSIS_5 GitHub]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ Arm Cortex-M Series Specifications (Advanced Models)&lt;br /&gt;
! Model !! Cortex-M3 !! Cortex-M4 !! Cortex-M33 !! Cortex-M35P&lt;br /&gt;
|-&lt;br /&gt;
! CPU&lt;br /&gt;
| Armv7-M up to 120 MHz&lt;br /&gt;
| Armv7-M up to 120 MHz&lt;br /&gt;
| Armv8-M up to 200 MHz&lt;br /&gt;
| Armv8-M up to 200 MHz&lt;br /&gt;
|-&lt;br /&gt;
! GPU&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
|-&lt;br /&gt;
! APU&lt;br /&gt;
| N/A&lt;br /&gt;
| Optional DSP&lt;br /&gt;
| Optional DSP and TrustZone&lt;br /&gt;
| Optional DSP and TrustZone&lt;br /&gt;
|-&lt;br /&gt;
! RAM&lt;br /&gt;
| Up to 64MB&lt;br /&gt;
| Up to 64MB&lt;br /&gt;
| Up to 128MB&lt;br /&gt;
| Up to 128MB&lt;br /&gt;
|-&lt;br /&gt;
! Display&lt;br /&gt;
| External via SPI/I2C&lt;br /&gt;
| External via SPI/I2C&lt;br /&gt;
| External via SPI/I2C&lt;br /&gt;
| External via SPI/I2C&lt;br /&gt;
|-&lt;br /&gt;
! Ports&lt;br /&gt;
| SPI, I2C, UART, GPIO&lt;br /&gt;
| SPI, I2C, UART, GPIO&lt;br /&gt;
| SPI, I2C, UART, GPIO&lt;br /&gt;
| SPI, I2C, UART, GPIO&lt;br /&gt;
|-&lt;br /&gt;
! Storage Options&lt;br /&gt;
| Up to 1MB Flash Memory, SD, NAND, NOR&lt;br /&gt;
| Up to 1MB Flash Memory, SD, NAND, NOR&lt;br /&gt;
| Up to 1MB Flash Memory, SD, NAND, NOR&lt;br /&gt;
| Up to 1MB Flash Memory, SD, NAND, NOR&lt;br /&gt;
|-&lt;br /&gt;
! Network&lt;br /&gt;
| External Modules, SPI, I2C&lt;br /&gt;
| External Modules, SPI, I2C&lt;br /&gt;
| External Modules, SPI, I2C&lt;br /&gt;
| External Modules, SPI, I2C&lt;br /&gt;
|-&lt;br /&gt;
! Power&lt;br /&gt;
| Approx. 0.001 W&lt;br /&gt;
| Approx. 0.001 W&lt;br /&gt;
| Approx. 0.0015 W&lt;br /&gt;
| Approx. 0.0015 W&lt;br /&gt;
|-&lt;br /&gt;
! OS Support&lt;br /&gt;
| FreeRTOS, Zephyr&lt;br /&gt;
| FreeRTOS, Zephyr&lt;br /&gt;
| FreeRTOS, Zephyr&lt;br /&gt;
| FreeRTOS, Zephyr&lt;br /&gt;
|-&lt;br /&gt;
! Price Range&lt;br /&gt;
| $1-$3&lt;br /&gt;
| $1-$5&lt;br /&gt;
| $1-$5&lt;br /&gt;
| $2-$6&lt;br /&gt;
|-&lt;br /&gt;
! Documentation and Source code&lt;br /&gt;
| Documentation: [https://developer.arm.com/documentation/ddi0337/latest/ Cortex-M3 Technical Reference Manual]&lt;br /&gt;
&lt;br /&gt;
Github: [https://github.com/ARM-software/CMSIS_5 CMSIS_5 GitHub]&lt;br /&gt;
| Documentation: [https://developer.arm.com/documentation/ddi0439/b/Introduction/Product-documentation/Documentation Cortex-M4 Technical Reference Manual]&lt;br /&gt;
&lt;br /&gt;
Github: [https://github.com/ARM-software/CMSIS_5 CMSIS_5 GitHub]&lt;br /&gt;
| Documentation: [https://developer.arm.com/documentation/100230/latest/ Arm Cortex-M33 Processor Technical Reference Manual]&lt;br /&gt;
&lt;br /&gt;
Github: [https://github.com/ARM-software/CMSIS_5 CMSIS_5 GitHub]&lt;br /&gt;
| Documentation: [https://developer.arm.com/Processors/Cortex-M35P Cortex-M35P]&lt;br /&gt;
&lt;br /&gt;
Github: [https://github.com/ARM-software/CMSIS_5 CMSIS_5 GitHub]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ Arm Cortex-M Series Specifications (High-Performance Models)&lt;br /&gt;
! Model !! Cortex-M55 !! Cortex-M7&lt;br /&gt;
|-&lt;br /&gt;
! CPU&lt;br /&gt;
| Armv8.1-M up to 250 MHz&lt;br /&gt;
| Armv7E-M up to 600 MHz&lt;br /&gt;
|-&lt;br /&gt;
! GPU&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
|-&lt;br /&gt;
! APU&lt;br /&gt;
| Optional Helium vector processing&lt;br /&gt;
| Optional DSP&lt;br /&gt;
|-&lt;br /&gt;
! RAM&lt;br /&gt;
| Up to 256MB&lt;br /&gt;
| Up to 512MB&lt;br /&gt;
|-&lt;br /&gt;
! Display&lt;br /&gt;
| External via SPI/I2C&lt;br /&gt;
| External via SPI/I2C&lt;br /&gt;
|-&lt;br /&gt;
! Ports&lt;br /&gt;
| SPI, I2C, UART, GPIO&lt;br /&gt;
| SPI, I2C, UART, GPIO&lt;br /&gt;
|-&lt;br /&gt;
! Storage Options&lt;br /&gt;
| Up to 2MB Flash memory, SD, NAND, NOR&lt;br /&gt;
| Up to 2MB Flash memory, SD, NAND, NOR&lt;br /&gt;
|-&lt;br /&gt;
! Network&lt;br /&gt;
| External Modules, SPI, I2C&lt;br /&gt;
| External Modules, SPI, I2C&lt;br /&gt;
|-&lt;br /&gt;
! Power&lt;br /&gt;
| Approx. 0.002 W&lt;br /&gt;
| Approx. 0.003 W&lt;br /&gt;
|-&lt;br /&gt;
! OS Support&lt;br /&gt;
| FreeRTOS, Zephyr&lt;br /&gt;
| FreeRTOS, Zephyr&lt;br /&gt;
|-&lt;br /&gt;
! Price Range&lt;br /&gt;
| $2-$10&lt;br /&gt;
| $5-$20&lt;br /&gt;
|-&lt;br /&gt;
! Documentation and Source code&lt;br /&gt;
| Documentation: [https://developer.arm.com/documentation/101051/latest/ Arm Cortex-M55 Processor Technical Reference Manual]&lt;br /&gt;
&lt;br /&gt;
Github: [https://github.com/ARM-software/CMSIS_5 CMSIS_5 GitHub]&lt;br /&gt;
| Documentation: [https://developer.arm.com/documentation/ddi0489/f/introduction/documentation Arm Cortex-M7 Processor Technical Reference Manual r1p2]&lt;br /&gt;
&lt;br /&gt;
Github: [https://github.com/ARM-software/CMSIS_5 CMSIS_5 GitHub]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Why is Arm Cortex-M Series Popular? ====&lt;br /&gt;
The Arm Cortex-M Series is popular because of its excellent balance of low power consumption, high performance, scalability, integrated peripherals, and vast development tools and software support. The series ranges from the cost-effective Cortex-M0 to the high-performance Cortex-M7.&lt;br /&gt;
&lt;br /&gt;
=== Arduino ===&lt;br /&gt;
An open-source electronics platform based on easy-to-use hardware and software.&lt;br /&gt;
&lt;br /&gt;
==== Pros ====&lt;br /&gt;
* Easy to use&lt;br /&gt;
* Low cost&lt;br /&gt;
* Open source&lt;br /&gt;
* Free software&lt;br /&gt;
&lt;br /&gt;
Arduino is known for its ease of use and strong community support, making it ideal for beginners and hobbyists because of its user-friendly development tool, the Arduino IDE. It also supports a variety of microcontroller boards, including AVR, ARM, and ESP32. Arduino has a large community that provides ample tutorials, libraries, and forums, making it easy to find support and resources.&lt;br /&gt;
&lt;br /&gt;
==== Cons ====&lt;br /&gt;
* Limited processing power&lt;br /&gt;
* Limited Communication&lt;br /&gt;
* Limited Security&lt;br /&gt;
&lt;br /&gt;
Older boards like the Arduino Uno have limited processing power and memory, making it difficult for applications like AI or machine learning. Arduino boards are great for simple tasks and prototypes, but more advanced users may find the lack of features and processing power a blocker for larger and more demanding applications. Its power consumption is also relatively high compared to ESP32 or Arm Cortex-M series processors.&lt;br /&gt;
&lt;br /&gt;
==== Applications ====&lt;br /&gt;
* Home automation&lt;br /&gt;
* Projects/Thesis&lt;br /&gt;
&lt;br /&gt;
==== Models ====&lt;br /&gt;
* Arduino Nano&lt;br /&gt;
* Arduino MKR&lt;br /&gt;
* Arduino UNO Series&lt;br /&gt;
* Arduino Micro&lt;br /&gt;
* Arduino Zero&lt;br /&gt;
* Arduino Mega Series&lt;br /&gt;
&lt;br /&gt;
==== Specifications ====&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ Arduino Specifications&lt;br /&gt;
! Model !! Arduino Nano !! Arduino MKR !! Arduino UNO Series !! Arduino Micro !! Arduino Zero !! Arduino Mega&lt;br /&gt;
|-&lt;br /&gt;
! CPU&lt;br /&gt;
| ATMega328P 16MHz&lt;br /&gt;
| SAMD21 Cortex-M0+ 48MHz&lt;br /&gt;
| ATMega328P 16MHz&lt;br /&gt;
| ATMega32U4 16MHz&lt;br /&gt;
| SAMD21 Cortex-M0+ 48MHz&lt;br /&gt;
| ATmega2560 16MHz&lt;br /&gt;
|-&lt;br /&gt;
! GPU&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
|-&lt;br /&gt;
! APU&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
|-&lt;br /&gt;
! RAM&lt;br /&gt;
| 2KB SRAM&lt;br /&gt;
| 32KB SRAM&lt;br /&gt;
| 2KB SRAM&lt;br /&gt;
| 2.5KB SRAM&lt;br /&gt;
| 32KB SRAM&lt;br /&gt;
| 8KB SRAM&lt;br /&gt;
|-&lt;br /&gt;
! Display&lt;br /&gt;
| External via SPI/I2C/UART&lt;br /&gt;
| External via SPI/I2C/UART&lt;br /&gt;
| External via SPI/I2C/UART&lt;br /&gt;
| External via SPI/I2C/UART&lt;br /&gt;
| External via SPI/I2C/UART&lt;br /&gt;
| External via SPI/I2C/UART&lt;br /&gt;
|-&lt;br /&gt;
! Ports&lt;br /&gt;
| Digital GPIO (6 PWM, 8 Analog)&lt;br /&gt;
| Digital GPIO (4 PWM, 7 Analog)&lt;br /&gt;
| Digital GPIO (6 PWM, 6 Analog)&lt;br /&gt;
| Digital GPIO (7 PWM, 12 Analog)&lt;br /&gt;
| Digital GPIO (12 PWM, 6 Analog)&lt;br /&gt;
| Digital GPIO (16 PWM, 16 Analog)&lt;br /&gt;
|-&lt;br /&gt;
! Storage Options&lt;br /&gt;
| 32 KB Flash Memory&lt;br /&gt;
| 256 KB Flash Memory&lt;br /&gt;
| 32 KB Flash Memory&lt;br /&gt;
| 32 KB Flash Memory&lt;br /&gt;
| 256 KB Flash Memory&lt;br /&gt;
| 256 KB Flash Memory&lt;br /&gt;
|-&lt;br /&gt;
! Network&lt;br /&gt;
| N/A&lt;br /&gt;
| Wi-Fi, Ethernet&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
| External via compatible shields&lt;br /&gt;
| External via compatible shields&lt;br /&gt;
|-&lt;br /&gt;
! Power&lt;br /&gt;
| 19mW&lt;br /&gt;
| 75mW&lt;br /&gt;
| 25mW&lt;br /&gt;
| 25mW&lt;br /&gt;
| 75mW&lt;br /&gt;
| 25mW&lt;br /&gt;
|-&lt;br /&gt;
! OS Support&lt;br /&gt;
| Windows, Linux, macOS&lt;br /&gt;
| Windows, Linux, macOS&lt;br /&gt;
| Windows, Linux, macOS&lt;br /&gt;
| Windows, Linux, macOS&lt;br /&gt;
| Windows, Linux, macOS&lt;br /&gt;
| Windows, Linux, macOS&lt;br /&gt;
|-&lt;br /&gt;
! Price Range&lt;br /&gt;
| $8-$12&lt;br /&gt;
| $15-$30&lt;br /&gt;
| $20-$30&lt;br /&gt;
| $20-$25&lt;br /&gt;
| $20-$25&lt;br /&gt;
| $35-$50&lt;br /&gt;
|-&lt;br /&gt;
! Documentation and Source Code&lt;br /&gt;
| Documentation: [https://docs.arduino.cc/hardware/nano Arduino Nano]  &lt;br /&gt;
&lt;br /&gt;
Source Code(s): [https://create.arduino.cc/projecthub Arduino Project Hub]  &lt;br /&gt;
&lt;br /&gt;
GitHub: [https://github.com/arduino-libraries Arduino Libraries]&lt;br /&gt;
| Documentation: [https://docs.arduino.cc/hardware/mkr-family Arduino MKR Family]  &lt;br /&gt;
&lt;br /&gt;
Source Code(s): [https://create.arduino.cc/projecthub Arduino Project Hub]  &lt;br /&gt;
&lt;br /&gt;
GitHub: [https://github.com/arduino-libraries Arduino Libraries]&lt;br /&gt;
| Documentation: [https://docs.arduino.cc/hardware/uno Getting Started with Arduino UNO]  &lt;br /&gt;
&lt;br /&gt;
Source Code(s): [https://create.arduino.cc/projecthub Arduino Project Hub]  &lt;br /&gt;
&lt;br /&gt;
GitHub: [https://github.com/arduino-libraries Arduino Libraries]&lt;br /&gt;
| Documentation: [https://docs.arduino.cc/hardware/micro Arduino Micro]  &lt;br /&gt;
&lt;br /&gt;
Source Code(s): [https://create.arduino.cc/projecthub Arduino Project Hub]  &lt;br /&gt;
&lt;br /&gt;
GitHub: [https://github.com/arduino-libraries Arduino Libraries]&lt;br /&gt;
| Documentation: [https://docs.arduino.cc/hardware/zero Arduino Zero]  &lt;br /&gt;
&lt;br /&gt;
Source Code(s): [https://create.arduino.cc/projecthub Arduino Project Hub]  &lt;br /&gt;
&lt;br /&gt;
GitHub: [https://github.com/arduino-libraries Arduino Libraries]&lt;br /&gt;
| Documentation: [https://docs.arduino.cc/hardware/mega-2560 Arduino Mega 2560]  &lt;br /&gt;
&lt;br /&gt;
Source Code(s): [https://create.arduino.cc/projecthub Arduino Project Hub]  &lt;br /&gt;
&lt;br /&gt;
GitHub: [https://github.com/arduino-libraries Arduino Libraries]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Why is Arduino popular? ====&lt;br /&gt;
Arduino is popular because of its open-source electronics platform that is easy to use and has a large community of users. It has an easy-to-use, user-friendly IDE. It is affordable and has a broad range of compatible components, making it a leader in DIY electronics, education, and rapid prototyping.&lt;br /&gt;
&lt;br /&gt;
=== NXP i.MX Series ===&lt;br /&gt;
A family of NXP proprietary microprocessors dedicated to multimedia applications based on the ARM architecture.&lt;br /&gt;
&lt;br /&gt;
==== Pros ====&lt;br /&gt;
* Security&lt;br /&gt;
* Energy efficient&lt;br /&gt;
* SoC devices&lt;br /&gt;
&lt;br /&gt;
The NXP i.MX Series offers performance versatility, with different models targeting various market segments. They come with Arm Cortex-A series cores, GPU, and DSP for enhanced performance in multimedia and machine learning. They also include wireless options, including Wi-Fi, Ethernet, Bluetooth, and 5G in some models. The NXP i.MX series also supports a wide development ecosystem, including Yocto and Linux SDKs, for custom applications.&lt;br /&gt;
&lt;br /&gt;
==== Cons ====&lt;br /&gt;
* LPDDR4 devices&lt;br /&gt;
* Cost&lt;br /&gt;
&lt;br /&gt;
In more advanced models of the NXP i.MX series, relatively high power consumption may not be suitable for ultra-low power devices. It may be overkill for simpler tasks. It has a high learning curve for beginners compared to more straightforward platforms like Arduino or Raspberry Pi. Its price also tends to be on the higher side, making them less suitable for cost-sensitive projects.&lt;br /&gt;
&lt;br /&gt;
==== Applications ====&lt;br /&gt;
* Industrial IoT&lt;br /&gt;
* Multimedia&lt;br /&gt;
&lt;br /&gt;
==== Models ====&lt;br /&gt;
* i.MX RT Series&lt;br /&gt;
* i.MX 9 Series&lt;br /&gt;
* i.MX 8 Series&lt;br /&gt;
* i.MX 7 Series&lt;br /&gt;
* i.MX 6 Series&lt;br /&gt;
* i.MX 28 Series&lt;br /&gt;
&lt;br /&gt;
==== Specifications ====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ NXP i.MX Series Specifications&lt;br /&gt;
! Model !! i.MX RT Series !! i.MX 9 Series !! i.MX 8 Series !! i.MX 7 Series !! i.MX 6 Series !! i.MX 28 Series&lt;br /&gt;
|-&lt;br /&gt;
! CPU&lt;br /&gt;
| Arm Cortex-M7/M33 up to 1 GHz&lt;br /&gt;
| Arm Cortex-A55/A32 up to 2.2 GHz&lt;br /&gt;
| Arm Cortex-A72/A53 up to 1.8 GHz&lt;br /&gt;
| Arm Cortex-A7 up to 1 GHz&lt;br /&gt;
| Arm Cortex-A9, up to single to quad-core, up to 1.2 GHz&lt;br /&gt;
| Arm926EJ-S, up to 454 MHz&lt;br /&gt;
|-&lt;br /&gt;
! GPU&lt;br /&gt;
| N/A&lt;br /&gt;
| Vivante GC7000UL, Vulkan&lt;br /&gt;
| Vivante GC7000XS, OpenGL ES, Vulkan&lt;br /&gt;
| N/A&lt;br /&gt;
| Vivante GC880/GC2000 OpenGL ES 2.0&lt;br /&gt;
| N/A&lt;br /&gt;
|-&lt;br /&gt;
! APU&lt;br /&gt;
| N/A&lt;br /&gt;
| Neural Processing Unit (NPU)&lt;br /&gt;
| Integrated DSP, NPU&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
|-&lt;br /&gt;
! RAM&lt;br /&gt;
| External RAM via interfaces&lt;br /&gt;
| Up to 8 GB DDR4/LPDDR4&lt;br /&gt;
| Up to 8 GB DDR4/LPDDR4&lt;br /&gt;
| Up to 2 GB DDR3/LPDDR3&lt;br /&gt;
| Up to 4 GB DDR3/LPDDR2&lt;br /&gt;
| Up to 128MB DDR2&lt;br /&gt;
|-&lt;br /&gt;
! Display&lt;br /&gt;
| External via interface SPI/I2C&lt;br /&gt;
| Up to 3 4K UHD displays&lt;br /&gt;
| 4K UHD display&lt;br /&gt;
| External via interface&lt;br /&gt;
| Up to 1080p HD display&lt;br /&gt;
| 24-bit LCD Controller&lt;br /&gt;
|-&lt;br /&gt;
! Ports&lt;br /&gt;
| SPI, I2C, UART, USB&lt;br /&gt;
| SPI, I2C, PCIe, CAN, USB 3.0&lt;br /&gt;
| I2C, PCIe, CAN, USB 3.0&lt;br /&gt;
| SPI, I2C, USB 2.0&lt;br /&gt;
| USB 2.0, SPI, I2C, UART, PCIe, SATA&lt;br /&gt;
| USB 2.0, SPI, I2C, UART&lt;br /&gt;
|-&lt;br /&gt;
! Storage Options&lt;br /&gt;
| External Flash NOR/NAND&lt;br /&gt;
| eMMC, SD, UFS&lt;br /&gt;
| eMMC, SD, NAND, NOR&lt;br /&gt;
| eMMC, SD, NAND&lt;br /&gt;
| eMMC, SD, NAND, NOR&lt;br /&gt;
| SD, NAND, NOR&lt;br /&gt;
|-&lt;br /&gt;
! Network&lt;br /&gt;
| Ethernet, External Wi-Fi modules&lt;br /&gt;
| Ethernet, Wi-Fi, 5G&lt;br /&gt;
| Ethernet, Wi-Fi, Bluetooth&lt;br /&gt;
| Ethernet, External Wi-Fi modules&lt;br /&gt;
| Ethernet, Wi-Fi via external modules&lt;br /&gt;
| Ethernet, Wi-Fi via external modules&lt;br /&gt;
|-&lt;br /&gt;
! Power&lt;br /&gt;
| 50mW-500mW&lt;br /&gt;
| 500mW-1.5W&lt;br /&gt;
| 1W-3W&lt;br /&gt;
| 200mW-500mW&lt;br /&gt;
| 1W-3W&lt;br /&gt;
| 500mW-1W&lt;br /&gt;
|-&lt;br /&gt;
! OS Support&lt;br /&gt;
| FreeRTOS, Zephyr, Linux distros (Yocto, Ubuntu, etc.)&lt;br /&gt;
| Android, FreeRTOS, Zephyr, Linux distros (Yocto, Ubuntu, etc.)&lt;br /&gt;
| Android, FreeRTOS, Zephyr, Linux distros (Yocto, Ubuntu, etc.)&lt;br /&gt;
| FreeRTOS, Zephyr, Linux distros (Yocto, Ubuntu, etc.)&lt;br /&gt;
| Linux distros (Yocto, Ubuntu, etc.), Android&lt;br /&gt;
| Linux distros (Yocto, Ubuntu, etc.), Windows CE&lt;br /&gt;
|-&lt;br /&gt;
! Price Range&lt;br /&gt;
| $2-$15&lt;br /&gt;
| $20-$50&lt;br /&gt;
| $15-$100&lt;br /&gt;
| $8-$30&lt;br /&gt;
| $10-$50&lt;br /&gt;
| $5-$15&lt;br /&gt;
|-&lt;br /&gt;
! Documentation and Source Code&lt;br /&gt;
| Documentation: [https://www.nxp.com/docs/en/fact-sheet/IMXRT1050FS.pdf i.MX RT Series Brochure]  &lt;br /&gt;
&lt;br /&gt;
SDK: [https://community.nxp.com MCUXpresso SDK Builder]  &lt;br /&gt;
&lt;br /&gt;
GitHub: [https://github.com/nxp-imx nxp-imx]&lt;br /&gt;
| Documentation: [https://www.nxp.com/docs/en/fact-sheet/IMX9.pdf i.MX 9 Applications Processors]  &lt;br /&gt;
&lt;br /&gt;
SDK: [https://community.nxp.com MCUXpresso SDK Builder]  &lt;br /&gt;
&lt;br /&gt;
GitHub: [https://github.com/nxp-imx nxp-imx]&lt;br /&gt;
| Documentation: [https://www.nxp.com/docs/en/brochure/IMX8SERAPPBR.pdf i.MX 8 Series Applications Processors]  &lt;br /&gt;
&lt;br /&gt;
SDK: [https://community.nxp.com MCUXpresso SDK Builder]  &lt;br /&gt;
&lt;br /&gt;
GitHub: [https://github.com/nxp-imx nxp-imx]&lt;br /&gt;
| Documentation: [https://www.nxp.com/docs/en/fact-sheet/IMX7.pdf i.MX 7 Series Applications Processors]  &lt;br /&gt;
&lt;br /&gt;
SDK: [https://community.nxp.com MCUXpresso SDK Builder]  &lt;br /&gt;
&lt;br /&gt;
GitHub: [https://github.com/nxp-imx nxp-imx]&lt;br /&gt;
| Documentation: [https://www.nxp.com/docs/en/fact-sheet/IMX6.pdf i.MX 6 Series Applications Processors]  &lt;br /&gt;
&lt;br /&gt;
SDK: [https://community.nxp.com MCUXpresso SDK Builder]  &lt;br /&gt;
&lt;br /&gt;
GitHub: [https://github.com/nxp-imx nxp-imx]&lt;br /&gt;
| Documentation: [https://www.nxp.com/docs/en/fact-sheet/IMX28.pdf i.MX 28 Series Applications Processors]  &lt;br /&gt;
&lt;br /&gt;
SDK: [https://community.nxp.com MCUXpresso SDK Builder]  &lt;br /&gt;
&lt;br /&gt;
GitHub: [https://github.com/nxp-imx nxp-imx]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Why is NXP i.MX Series Popular? ====&lt;br /&gt;
NXP i.MX Series is popular because of its combination of high-performance processing power, energy efficiency, and flexibility. It is ideal for a wide range of embedded applications such as automotive, industrial, IoT, and consumer electronics. With a broad selection of models, from entry-level to high-end, i.MX caters to various performance and feature needs.&lt;br /&gt;
&lt;br /&gt;
== Comparison Table ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Platform !! Processor !! Performance !! Power Consumption !! Connectivity !! Ecosystem &amp;amp; Tools !! Applications !! Price&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Raspberry Pi&#039;&#039;&#039; || Broadcom SoC (ARM) || High || Medium || Wi-Fi, Ethernet, BT || Linux-based tools, GPIO support || IoT, edge computing, AI/ML || Low&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;NVIDIA Jetson&#039;&#039;&#039; || NVIDIA GPUs with ARM CPU || Very High || High || Wi-Fi, Ethernet || CUDA, TensorRT, Linux tools || AI/ML, robotics, video analytics || High&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;ESP32&#039;&#039;&#039; || Xtensa cores || Medium || Ultra-low || Wi-Fi, BLE || ESP-IDF, Arduino-compatible || IoT, smart home, wearable devices || Very Low&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Texas Instruments Sitara&#039;&#039;&#039; || MSP430 (low-power), Sitara (ARM Cortex-A) || Low to High || Ultra-low (MSP430) / Medium (Sitara) || Ethernet, CAN || Code Composer Studio, RTOS || Energy meters, medical, industrial || Low to Medium&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Qualcomm Snapdragon&#039;&#039;&#039; || ARM Cortex + DSP + AI || Very High || Medium || Wi-Fi, LTE, 5G || Android/Linux SDKs || Smart cameras, robotics, AR/VR || High&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Intel Atom Processors&#039;&#039;&#039; || x86/x86-64 CPU || Low to Medium || Ultra-low || Wi-Fi, Ethernet, BT || Intel SDKs, Linux-based tools || Edge computing, media, IoT || Medium to High&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Microchip PIC Microcontrollers&#039;&#039;&#039; || PIC32, PIC16, PIC18 (varied) || Low to Medium || Ultra-low || SPI, I2C, UART, CAN, etc. || MPLAB X IDE, Microchip Studio || Consumer electronics, automotive, industrial || Very Low&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;STMicroelectronics STM32 Series&#039;&#039;&#039; || ARM Cortex-M cores || Medium to High || Low || Optional (Wi-Fi, BLE) || STM32Cube, HAL libraries || Industrial control, robotics || Low to Medium&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Renesas RX/RL78&#039;&#039;&#039; || RX (32-bit), RL78 (16-bit) || Low to Medium || Very Low || Optional || e2 Studio, Renesas Synergy || Automotive ECUs, home appliances || Low&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;ARM Cortex-M Series&#039;&#039;&#039; || ARM Cortex-M (varied) || Medium to High || Low to Very Low || Varies by vendor || Rich ecosystem, widely supported || IoT, industrial, automotive || Low to Medium&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Arduino&#039;&#039;&#039; || AVR, SAM (ARM Cortex-M), others || Low to Medium || Low to Ultra-low || Optional (Wi-Fi), BLE || Arduino IDE || Prototyping, IoT, Robotics || Very Low&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;NXP i.MX Series&#039;&#039;&#039; || ARM Cortex-A (varied) || Medium to Very High || Medium || Ethernet, Wi-Fi, Bluetooth || Yocto, Linux SDKs, FreeRTOS || Industrial, IoT, Multimedia, Automotive || Medium to High&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Key Points ==&lt;br /&gt;
&lt;br /&gt;
=== Performance ===&lt;br /&gt;
* High-performance platforms like &#039;&#039;&#039;NVIDIA Jetson&#039;&#039;&#039;, &#039;&#039;&#039;Qualcomm Snapdragon&#039;&#039;&#039;, and &#039;&#039;&#039;NXP i.MX Series&#039;&#039;&#039; excel in AI/ML, robotics, and multimedia applications.&lt;br /&gt;
* &#039;&#039;&#039;Raspberry Pi&#039;&#039;&#039; and &#039;&#039;&#039;ESP32&#039;&#039;&#039; offer solid performance for lighter tasks like IoT and edge computing.&lt;br /&gt;
* &#039;&#039;&#039;Texas Instruments Sitara&#039;&#039;&#039; and &#039;&#039;&#039;Microchip PIC Microcontrollers&#039;&#039;&#039; are better suited for low to medium performance tasks, such as embedded systems, energy meters, and automotive electronics.&lt;br /&gt;
&lt;br /&gt;
=== Power Consumption ===&lt;br /&gt;
* &#039;&#039;&#039;ESP32&#039;&#039;&#039;, &#039;&#039;&#039;Microchip PIC&#039;&#039;&#039;, and &#039;&#039;&#039;Renesas RX/RL78&#039;&#039;&#039; have ultra-low power consumption, making them ideal for battery-powered or low-energy applications.&lt;br /&gt;
* &#039;&#039;&#039;Raspberry Pi&#039;&#039;&#039; and &#039;&#039;&#039;Intel Atom Processors&#039;&#039;&#039; offer a balance of performance and power.&lt;br /&gt;
* &#039;&#039;&#039;NVIDIA Jetson&#039;&#039;&#039; and &#039;&#039;&#039;Qualcomm Snapdragon&#039;&#039;&#039; require higher power due to their advanced processing capabilities.&lt;br /&gt;
&lt;br /&gt;
=== Connectivity ===&lt;br /&gt;
* Most platforms offer &#039;&#039;&#039;Wi-Fi, Ethernet, and Bluetooth (BT)&#039;&#039;&#039; connectivity.&lt;br /&gt;
* &#039;&#039;&#039;Qualcomm Snapdragon&#039;&#039;&#039; and &#039;&#039;&#039;NXP i.MX Series&#039;&#039;&#039; extend this to &#039;&#039;&#039;LTE and 5G&#039;&#039;&#039;, making them suitable for more advanced, network-intensive applications.&lt;br /&gt;
&lt;br /&gt;
=== Community Support &amp;amp; Tools ===&lt;br /&gt;
* Platforms like &#039;&#039;&#039;Raspberry Pi&#039;&#039;&#039;, &#039;&#039;&#039;NVIDIA Jetson&#039;&#039;&#039;, and &#039;&#039;&#039;Qualcomm Snapdragon&#039;&#039;&#039; are supported by rich ecosystems and powerful development tools, including &#039;&#039;&#039;CUDA, TensorRT, and various SDKs&#039;&#039;&#039;.&lt;br /&gt;
* &#039;&#039;&#039;Arduino&#039;&#039;&#039;, &#039;&#039;&#039;Microchip PIC&#039;&#039;&#039;, and &#039;&#039;&#039;Texas Instruments Sitara&#039;&#039;&#039; also have strong ecosystems for embedded applications, though they may lack some of the high-performance AI tools available on more powerful platforms.&lt;br /&gt;
&lt;br /&gt;
=== Price ===&lt;br /&gt;
* Low-cost platforms like &#039;&#039;&#039;Raspberry Pi&#039;&#039;&#039;, &#039;&#039;&#039;ESP32&#039;&#039;&#039;, and &#039;&#039;&#039;Arduino&#039;&#039;&#039; are budget-friendly options for educational projects, hobbyists, and low-power IoT devices.&lt;br /&gt;
* Higher-end platforms such as &#039;&#039;&#039;NVIDIA Jetson&#039;&#039;&#039;, &#039;&#039;&#039;Qualcomm Snapdragon&#039;&#039;&#039;, and &#039;&#039;&#039;NXP i.MX Series&#039;&#039;&#039; are more expensive.&lt;br /&gt;
&lt;br /&gt;
== 🏗 Need a Solution for Your Project? ==&lt;br /&gt;
Are you looking for ways to:  &lt;br /&gt;
✅ Optimize your &#039;&#039;&#039;embedded system&#039;&#039;&#039; for better performance?  &lt;br /&gt;
✅ Integrate &#039;&#039;&#039;AI and computer vision&#039;&#039;&#039; into your products?  &lt;br /&gt;
✅ Improve &#039;&#039;&#039;multimedia processing&#039;&#039;&#039; for real-time applications?  &lt;br /&gt;
✅ Develop a &#039;&#039;&#039;robust and scalable&#039;&#039;&#039; web platform?  &lt;br /&gt;
&lt;br /&gt;
Our team has helped businesses across multiple industries solve these challenges.  &lt;br /&gt;
&lt;br /&gt;
📩 &#039;&#039;&#039;Let’s collaborate!&#039;&#039;&#039; Contact us at &#039;&#039;&#039;[support@proventusnova.com](mailto:support@proventusnova.com)&#039;&#039;&#039; or visit &#039;&#039;&#039;[ProventusNova.com](https://proventusnova.com)&#039;&#039;&#039; to discuss your project.&lt;/div&gt;</summary>
		<author><name>Sonni</name></author>
	</entry>
	<entry>
		<id>https://developerwiki.proventusnova.com/index.php?title=Embedded_Platforms&amp;diff=83</id>
		<title>Embedded Platforms</title>
		<link rel="alternate" type="text/html" href="https://developerwiki.proventusnova.com/index.php?title=Embedded_Platforms&amp;diff=83"/>
		<updated>2025-03-12T13:25:14Z</updated>

		<summary type="html">&lt;p&gt;Sonni: Add arduino and NXP platforms&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== About ==&lt;br /&gt;
This document provides an overview of various embedded platforms/systems commonly used in the development of embedded applications in the industry. It covers a wide range of popular processors, microcontrollers, and development boards, highlighting their key features, performance, characteristics, and suitable use cases. By comparing different platforms such as Raspberry Pi, NVIDIA Jetson, ESP32, Arduino, NXP i.MX Series, etc., this document aims to assist in choosing the most appropriate solution based on their project requirements.&lt;br /&gt;
&lt;br /&gt;
== Embedded Platforms/Systems Overview ==&lt;br /&gt;
&lt;br /&gt;
=== Raspberry Pi ===&lt;br /&gt;
A small low-cost computer the size of a credit card. A Raspberry Pi can be a desktop computer, robotics controller, server, game controller, etc. The Raspberry Pi is an excellent tool for many projects, from basic learning to advanced projects.&lt;br /&gt;
&lt;br /&gt;
==== Pros ====&lt;br /&gt;
* Affordable&lt;br /&gt;
* Versatile operating system&lt;br /&gt;
* Very active community&lt;br /&gt;
* Easy to learn&lt;br /&gt;
* Flexible&lt;br /&gt;
* User Imagination&lt;br /&gt;
&lt;br /&gt;
The Raspberry Pi stands out as a cost-effective solution. This makes it an excellent choice for hobbyists, educators, and professionals alike. Its versatility is its key strength, as it can be used for a wide range of applications. The Raspberry Pi community is also another major advantage. A wealth of resources, tutorials, and forums make troubleshooting straightforward.&lt;br /&gt;
&lt;br /&gt;
==== Cons ====&lt;br /&gt;
* Limited power&lt;br /&gt;
* Limited processing power&lt;br /&gt;
* Limited RAM&lt;br /&gt;
* Limited Storage&lt;br /&gt;
&lt;br /&gt;
Raspberry Pi comes with certain limitations. One of those is their limited power, which can restrict its ability to perform demanding tasks or multiple peripherals. Raspberry Pi also relies on external storage which offers slower speed and limited capacity. Although it is compatible with many open-source applications, some software may not be optimized or supported for the Raspberry Pi.&lt;br /&gt;
&lt;br /&gt;
==== Applications ====&lt;br /&gt;
* Prototyping&lt;br /&gt;
* Automation&lt;br /&gt;
&lt;br /&gt;
==== Models ====&lt;br /&gt;
* Raspberry Pi 5&lt;br /&gt;
* Raspberry Pi 500&lt;br /&gt;
* Raspberry Pi Pico&lt;br /&gt;
* Raspberry Pi Zero&lt;br /&gt;
&lt;br /&gt;
==== Specifications ====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ Raspberry Pi Models Comparison&lt;br /&gt;
! Model !! Raspberry Pi 5 !! Raspberry Pi 500 !! Raspberry Pi Pico !! Raspberry Pi Zero&lt;br /&gt;
|-&lt;br /&gt;
! CPU&lt;br /&gt;
| 2.4 GHz quad-core 64-bit ARM Cortex-A76 || 2.4 GHz quad-core 64-bit ARM Cortex-A76 || 133 MHz single-core ARM Cortex-M0+ || 1 GHz single-core ARM1176JZF-S (Zero 1), 1 GHz quad-core 64-bit ARM Cortex-A53 (Zero 2)&lt;br /&gt;
|-&lt;br /&gt;
! GPU&lt;br /&gt;
| 800 MHz VideoCore VII || 800 MHz VideoCore VII || N/A || 250 MHz VideoCore IV&lt;br /&gt;
|-&lt;br /&gt;
! APU&lt;br /&gt;
| N/A || N/A || N/A || N/A&lt;br /&gt;
|-&lt;br /&gt;
! RAM&lt;br /&gt;
| 2/4/6/16GB LPDDR4x-4267 SDRAM || 2/4/6/16GB LPDDR4x-4267 SDRAM || 264kB SRAM || 512MB LPDDR2 SDRAM&lt;br /&gt;
|-&lt;br /&gt;
! Display&lt;br /&gt;
| Up to Dual 4Kp60 micro HDMI with HDR support, 4Kp60 HEVC decoder || Up to Dual 4Kp60 micro HDMI with HDR support, 4Kp60 HEVC decoder || N/A || Up to 1080P mini HDMI&lt;br /&gt;
|-&lt;br /&gt;
! Ports&lt;br /&gt;
| 2x USB 3.0, 2x USB 2.0, Gigabit Ethernet, PCIe Port || 2x USB 3.0, 2x USB 2.0, Gigabit Ethernet, PCIe Port || Micro-USB GPIO pins || Micro USB On-The-Go (OTG)&lt;br /&gt;
|-&lt;br /&gt;
! Storage options&lt;br /&gt;
| eMMC, MicroSD Card || eMMC, MicroSD Card || Onboard 2MB flash memory || MicroSD Card&lt;br /&gt;
|-&lt;br /&gt;
! Network&lt;br /&gt;
| Wi-Fi, BT 5.0, Gigabit Ethernet || Wi-Fi, BT 5.0, Gigabit Ethernet || N/A || Wi-Fi&lt;br /&gt;
|-&lt;br /&gt;
! Power&lt;br /&gt;
| 5V/5A DC power via USB-C || 5V/5A DC power via USB-C || 5V via Micro-USB || 5V via Micro-USB&lt;br /&gt;
|-&lt;br /&gt;
! OS Support&lt;br /&gt;
| Raspberry Pi OS, Ubuntu, Apertis, RISC OS, Ultramarine Linux, Alpine Linux, Other custom Linux distros (e.g. Yocto) || Raspberry Pi OS, Ubuntu, Apertis, RISC OS, Ultramarine Linux, Alpine Linux, Other custom Linux distros (e.g. Yocto) || MicroPython, CircuitPython || Raspberry Pi OS, RISC OS, Alpine Linux, Other custom Linux distros (e.g. Yocto)&lt;br /&gt;
|-&lt;br /&gt;
! Price Range&lt;br /&gt;
| $50-$120 || $120-$150 || $4-$7 || $5-$15&lt;br /&gt;
|-&lt;br /&gt;
! Documentation and Source Code&lt;br /&gt;
| Documentation: [https://www.raspberrypi.com/documentation/ Raspberry Pi Documentation],&lt;br /&gt;
[https://www.raspberrypi.com/documentation/computers/raspberry-pi.html Raspberry Pi Hardware Documentation]&lt;br /&gt;
&lt;br /&gt;
Github: [https://github.com/raspberrypi Raspberry Pi]&lt;br /&gt;
&lt;br /&gt;
| Documentation:[https://www.raspberrypi.com/documentation/ Raspberry Pi Documentation],&lt;br /&gt;
[https://www.raspberrypi.com/documentation/computers/raspberry-pi.html Raspberry Pi Hardware Documentation]&lt;br /&gt;
&lt;br /&gt;
Github: [https://github.com/raspberrypi Raspberry Pi] &lt;br /&gt;
&lt;br /&gt;
| Documentation: [https://www.raspberrypi.com/documentation/microcontrollers/pico-series.html#documentation Pico-series Microcontrollers - Raspberry Pi Documentation],&lt;br /&gt;
&lt;br /&gt;
Github: [https://github.com/raspberrypi/pico-examples Raspberry Pi Pico Examples]&lt;br /&gt;
&lt;br /&gt;
| Documentation: [https://www.raspberrypi.com/documentation/computers/raspberry-pi.html#raspberry-pi-zero Raspberry Pi hardware - Raspberry Pi Documentation],&lt;br /&gt;
&lt;br /&gt;
Github: [https://github.com/dwelch67/raspberrypi-zero dwelch67/raspberrypi-zero: Raspberry Pi Zero baremetal examples](for Zero 1),&lt;br /&gt;
&lt;br /&gt;
[https://github.com/Qengineering/RPi_64-bit_Zero-2-image Qengineering/RPi_64-bit_Zero-2-image: Raspberry Pi Zero 2 W 64-bit OS image with OpenCV, TensorFlow Lite and ncnn Framework.](for Zero 2)&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Why is Raspberry Pi Popular? ====&lt;br /&gt;
Raspberry Pi is popular because it is a small, affordable, single-board computer that is easy to use. It is also versatile for a wide range of applications and the community is very active. With its robust hardware capabilities, including support for multiple operating systems, it has become a favorite among professionals and hobby enthusiasts.&lt;br /&gt;
&lt;br /&gt;
=== NVIDIA Jetson ===&lt;br /&gt;
NVIDIA Jetson is the leading platform for robotics and embedded edge AI applications. A series of embedded computing boards designed specifically for AI and machine learning applications. NVIDIA Jetson offers several models to different needs, from low-power to high-performance applications.&lt;br /&gt;
&lt;br /&gt;
==== Pros ====&lt;br /&gt;
* Powerful GPU and CPU&lt;br /&gt;
* Versatile applications&lt;br /&gt;
* Open to Developers&lt;br /&gt;
* Wide range of options&lt;br /&gt;
&lt;br /&gt;
One of the key strengths of NVIDIA Jetson is its GPU, designed to accelerate deep learning, computer vision, and AI. This makes it an excellent choice for robotics, IoT, and autonomous systems. It is also supported by popular AI frameworks such as TensorFlow, PyTorch, and OpenCV. NVIDIA Jetson has rich software support from NVIDIA’s JetPack SDK, which simplifies development and deployment.&lt;br /&gt;
&lt;br /&gt;
==== Cons ====&lt;br /&gt;
* Expensive&lt;br /&gt;
* Limited GPIO&lt;br /&gt;
* Can get hot&lt;br /&gt;
&lt;br /&gt;
NVIDIA Jetson tends to be on the more expensive side than other single-board computers. Devices under NVIDIA Jetson can consume more power, which may not be ideal for battery-powered applications or energy-efficient applications. It requires a steep learning curve to set up and work with the hardware and software tools.&lt;br /&gt;
&lt;br /&gt;
==== Applications ====&lt;br /&gt;
* Robotics&lt;br /&gt;
* Edge AI&lt;br /&gt;
&lt;br /&gt;
==== Models ====&lt;br /&gt;
* Jetson AGX Orin series&lt;br /&gt;
* Jetson Orin NX series&lt;br /&gt;
* Jetson Orin Nano series&lt;br /&gt;
* Jetson AGX Xavier series&lt;br /&gt;
* Jetson Xavier NX series&lt;br /&gt;
* Jetson TX2 series&lt;br /&gt;
* Jetson Nano&lt;br /&gt;
&lt;br /&gt;
==== Specifications ====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ NVIDIA Jetson Models Comparison&lt;br /&gt;
! Model !! Jetson AGX Orin Series !! Jetson Orin NX Series !! Jetson Orin Nano Series !! Jetson AGX Xavier Series !! Jetson Xavier NX Series !! Jetson TX2 Series !! Jetson Nano&lt;br /&gt;
|-&lt;br /&gt;
! CPU&lt;br /&gt;
| 2.0/2.2 GHz 12-core NVIDIA Arm Cortex A78AE v8.2 64-bit CPU 3MB L2 + 6MB L3 || 2.0 GHz 8-core NVIDIA Arm Cortex A78AE v8.2 64-bit CPU 2MB L2 + 4MB L3, 2.0 6-core NVIDIA Arm Cortex A78AE v8.2 64-bit CPU 2MB L2 + 4MB L3 || 1.7 GHz 6-core Arm Cortex-A78AE v8.2 64-bit CPU 1.5MB L2 + 4MB L3 || 2.0/2.2 GHz 8-core NVIDIA Carmel Armv8.2 64-bit CPU 8MB L2 + 4MB L3 || 1.9 GHz 6-core NVIDIA Carmel Arm v8.2 64-bit CPU 6MB L2 + 4MB L3 || 1.95/2.2 GHz Dual-Core NVIDIA Denver 2 64-Bit CPU, 1.92/2 GHz Quad-Core Arm Cortex-A57 MPCore processor || 1.43 GHz Quad-Core Arm Cortex-A57 MPCore processor&lt;br /&gt;
|-&lt;br /&gt;
! GPU&lt;br /&gt;
| 200-275 TOPS, NVIDIA Ampere architecture GPU with up to 64 Tensor Cores || 117-157 TOPS, NVIDIA Ampere architecture GPU with up to 32 Tensor Cores || 34-67 TOPS, NVIDIA Ampere architecture GPU with up to 32 Tensor Cores || 30-32 TOPS, NVIDIA Volta architecture GPU with 64 Tensor Cores || 21 TOPS 1100 MHz 384-core NVIDIA Volta architecture GPU with 48 Tensor Cores || 1.26-1.33 TFLOPS, NVIDIA Pascal architecture GPU || 472 GFLOPS 921 MHz 128-core NVIDIA Maxwell architecture GPU&lt;br /&gt;
|-&lt;br /&gt;
! APU&lt;br /&gt;
| Integrated AI Accelerator (NVIDIA Tensor Cores) || Integrated AI Accelerator (NVIDIA Tensor Cores) || Integrated AI Accelerator (NVIDIA Tensor Cores) || Integrated AI Accelerator (NVIDIA Tensor Cores) || Integrated AI Accelerator (Tensor Cores) || Integrated AI Accelerator (NVIDIA Pascal GPU) || Integrated AI Accelerator (Maxwell GPU)&lt;br /&gt;
|-&lt;br /&gt;
! RAM&lt;br /&gt;
| 32/64GB 256-bit LPDDR5 || 8/16GB 128-bit LPDDR5 || 4GB 64-bit LPDDR5, 8GB 128-bit LPDDR5 || 32/64GB 256-bit LPDDR4x || 8/16GB 128-bit LPDDR4x || 4/8GB 128-bit LPDDR4 || 4GB 64-bit LPDDR4&lt;br /&gt;
|-&lt;br /&gt;
! Display&lt;br /&gt;
| Up to 8K video output, dual 4K || Up to 4K video output || Up to 4K video output || Up to dual 4K video output || Up to 4K video output, Dual 4K displays || Up to 1080p video output || Up to 1080P video output&lt;br /&gt;
|-&lt;br /&gt;
! Ports&lt;br /&gt;
| 3x USB 3.2 Gen2, 4x USB 2.0, 2x PCIe Gen 4 || 3x USB 3.2 Gen2, 3x USB 2.0, 1x PCIe Gen 4, Gigabit Ethernet || 3x USB 3.2 Gen2, 3x USB 2.0, 1x PCIe Gen 4, Gigabit Ethernet || 3x USB 3.2 Gen2, 4x USB 2.0, 1x PCIe Gen 3 || 1x USB3.2 Gen2, 3X USB 2.0 || 3x USB 3.0, 3x USB 2.0, 1x USB 3.0, 3x USB 2.0 || 1x USB 3.0, 3x USB 2.0&lt;br /&gt;
|-&lt;br /&gt;
! Storage options&lt;br /&gt;
| 32/64GB eMMC 5.1, M.2 NVMe || NVMe (supports external NVMe) || NVMe (supports external NVMe) || 32/64 GB eMMC 5.1 || 16GB eMMC 5.1 || 16/32GB eMMC 5.2 || 16GB eMMC 5.1&lt;br /&gt;
|-&lt;br /&gt;
! Network&lt;br /&gt;
| Wi-Fi 6, BT 5.0 || Wi-Fi, BT 5.0, Gigabit Ethernet || Wi-Fi, BT 5.0, Gigabit Ethernet || Wi-Fi, BT 5.0, Gigabit Ethernet || Wi-Fi, BT 5.0, Gigabit Ethernet || Wi-Fi, BT 4.2, Gigabit Ethernet || Gigabit Ethernet&lt;br /&gt;
|-&lt;br /&gt;
! Power&lt;br /&gt;
| 15W-75W || 10W-40W || 10W-30W || 20W-40W || 10W-20W || 7.5W-20W || 5W-10W&lt;br /&gt;
|-&lt;br /&gt;
! OS Support&lt;br /&gt;
| NVIDIA Jetpack SDK, Ubuntu, Other custom Linux distros (e.g. Yocto) || NVIDIA Jetpack SDK, Ubuntu, Other custom Linux distros (e.g. Yocto) || NVIDIA Jetpack SDK, Ubuntu, Other custom Linux distros (e.g. Yocto) || NVIDIA Jetpack SDK, Ubuntu, Other custom Linux distros (e.g. Yocto) || NVIDIA Jetpack SDK, Ubuntu, Other custom Linux distros (e.g. Yocto) || NVIDIA Jetpack SDK, Ubuntu, Other custom Linux distros (e.g. Yocto) || NVIDIA Jetpack SDK, Ubuntu, Other custom Linux distros (e.g. Yocto)&lt;br /&gt;
|-&lt;br /&gt;
! Price Range&lt;br /&gt;
| $599-$1,100 || $199-$399 || $99-$199 || $699-$899 || $399-$599 || $300-$600 || $59-$99&lt;br /&gt;
|-&lt;br /&gt;
! Documentation and Source Code&lt;br /&gt;
&lt;br /&gt;
| Documentation: [https://developer.nvidia.com/embedded/learn/jetson-agx-orin-devkit-user-guide/index.html Documentation: Jetson AGX Orin Developer Kit User Guide] &lt;br /&gt;
&lt;br /&gt;
| Documentation: [https://docs.nvidia.com/jetson/archives/r35.3.1/DeveloperGuide/text/HR/JetsonModuleAdaptationAndBringUp/JetsonOrinNxNanoSeries.html Documentation: Jetson Orin NX and Nano Series — Jetson Linux Developer Guide documentation] &lt;br /&gt;
&lt;br /&gt;
| Documentation: [https://docs.nvidia.com/jetson/archives/r35.3.1/DeveloperGuide/text/HR/JetsonModuleAdaptationAndBringUp/JetsonOrinNxNanoSeries.html Documentation: Jetson Orin NX and Nano Series — Jetson Linux Developer Guide documentation] &lt;br /&gt;
&lt;br /&gt;
| Documentation: [https://docs.nvidia.com/jetson/archives/r35.1/DeveloperGuide/text/SO/JetsonAgxXavierSeries.html Documentation: Jetson AGX Xavier Series — Jetson Linux Developer Guide]&lt;br /&gt;
&lt;br /&gt;
[https://developer.download.nvidia.com/assets/embedded/secure/jetson/xavier/docs/nv_jetson_agx_xavier_developer_kit_user_guide.pdf?__token__=exp=1736824216~hmac=0dd58c222c12044ba22a5eca3603e275081f6c46b808376a8c4ce6f244a83489&amp;amp;t=eyJscyI6ImdzZW8iLCJsc2QiOiJodHRwczovL3d3dy5nb29nbGUuY29tLyJ9 Jetson AGX Xavier Developer Kit] &lt;br /&gt;
&lt;br /&gt;
| Documentation: [https://docs.nvidia.com/jetson/archives/r35.1/DeveloperGuide/text/SO/JetsonXavierNxSeries.html Jetson Xavier NX Series — Jetson Linux Developer Guide]&lt;br /&gt;
&lt;br /&gt;
| Documentation: [https://developer.download.nvidia.com/assets/embedded/secure/jetson/TX2/docs/nv_jetson_tx2_developer_kit_user_guide.pdf?__token__=exp=1736824301~hmac=8bad2bcdc2d2cac0171768a6bd8c3519ffdae23678660ed09d681af48d4b921b&amp;amp;t=eyJscyI6ImdzZW8iLCJsc2QiOiJodHRwczovL3d3dy5nb29nbGUuY29tLyJ9 Jetson TX2 Developer Kit]&lt;br /&gt;
&lt;br /&gt;
| Documentation: [https://developer.download.nvidia.com/assets/embedded/secure/jetson/Nano/docs/NV_Jetson_Nano_Developer_Kit_User_Guide.pdf?__token__=exp=1736824305~hmac=cb82b2840ab317d9ffd0595eb2681c7d58b949c9bfa27718c82f5463815d30c7&amp;amp;t=eyJscyI6ImdzZW8iLCJsc2QiOiJodHRwczovL3d3dy5nb29nbGUuY29tLyJ9 Jetson Nano Developer Kit], &lt;br /&gt;
[https://developer.nvidia.com/embedded/learn/jetson-nano-2gb-devkit-user-guide Jetson Nano 2GB Developer Kit User Guide]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Why is NVIDIA Jetson Popular? ====&lt;br /&gt;
NVIDIA Jetson is popular because it provides high-performance AI computing in a compact, energy-efficient form factor. It is ideal for edge AI and robotics applications. From its entry-level to high-end modules, NVIDIA Jetson scales depending on the project&#039;s needs.&lt;br /&gt;
&lt;br /&gt;
=== ESP32 ===&lt;br /&gt;
Low-cost, low-power system-on-chip microcontrollers. A single 2.4 GHz WiFi and Bluetooth combo chip designed with TSMC low-power 40nm technology.&lt;br /&gt;
&lt;br /&gt;
==== Pros ====&lt;br /&gt;
* Low-cost&lt;br /&gt;
* Low-power&lt;br /&gt;
* IoT (Internet of Things)&lt;br /&gt;
&lt;br /&gt;
ESP32 is a powerful and versatile microcontroller because of its range of features, making it ideal for a variety of IoT applications. One of its biggest advantages is its low cost and low power consumption. It also has integrated Wi-Fi and Bluetooth, eliminating the need for external modules for wireless connectivity. ESP32 also has a strong developer community with support for ESP-IDF and is also compatible with Arduino IDE, making it great for beginners and experienced developers.&lt;br /&gt;
&lt;br /&gt;
==== Cons ====&lt;br /&gt;
* Limited GPIO&lt;br /&gt;
* Low-power&lt;br /&gt;
* High learning curve&lt;br /&gt;
&lt;br /&gt;
While ESP32’s performance is impressive, it may still fall short for resource-intensive tasks like high-end AI or complex video processing. Its lack of built-in storage can be limiting for applications that require large amounts of storage. Its GPIO pin count is also limiting for complex projects that require multiple connections.&lt;br /&gt;
&lt;br /&gt;
==== Applications ====&lt;br /&gt;
* Simple smart home&lt;br /&gt;
* Low-power IoT sensors (ultrasonic, IR, etc.)&lt;br /&gt;
* Simple smart agriculture&lt;br /&gt;
* Speech &amp;amp; Image recognition (OpenCV)&lt;br /&gt;
&lt;br /&gt;
==== Models ====&lt;br /&gt;
* ESP32-P series&lt;br /&gt;
* ESP32-S series&lt;br /&gt;
* ESP32-C series&lt;br /&gt;
* ESP32-H series&lt;br /&gt;
* ESP8266 series&lt;br /&gt;
&lt;br /&gt;
==== Specifications ====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ ESP32 Series Comparison&lt;br /&gt;
! Model !! ESP32-P Series !! ESP32-S Series !! ESP32-C Series !! ESP32-H Series !! ESP8266 Series&lt;br /&gt;
|-&lt;br /&gt;
! CPU&lt;br /&gt;
| Up to 240MHz Dual-core 32-bit Xtensa LX6 || Up to 240MHz Dual-core 32-bit Xtensa LX6 || Up to 160 MHz Single-core 32-bit Xtensa LX6 || Up to 160 MHz Single-core 32-bit Xtensa LX6 || Up to 160 MHz Single-core 32-bit Xtensa LX6&lt;br /&gt;
|-&lt;br /&gt;
! GPU&lt;br /&gt;
| N/A || N/A || N/A || N/A || N/A&lt;br /&gt;
|-&lt;br /&gt;
! APU&lt;br /&gt;
| N/A || N/A || N/A || N/A || N/A&lt;br /&gt;
|-&lt;br /&gt;
! RAM&lt;br /&gt;
| 320KB SRAM up to 512KB SRAM || 320KB SRAM up to 512KB SRAM || 128KB SRAM up to 192KB SRAM || 128KB SRAM up to 192KB SRAM || 128KB SRAM up to 192KB SRAM&lt;br /&gt;
|-&lt;br /&gt;
! Display&lt;br /&gt;
| No direct display support. Can support external display || No direct display support. Can support external display || No direct display support. Can support external display || No direct display support. Can support external display || No direct display support. Can support external display&lt;br /&gt;
|-&lt;br /&gt;
! Ports&lt;br /&gt;
| 1x SPI, 2x I2C, 2x UART, GPIO || 1x SPI, 2x I2C, 2x UART, GPIO || 1x SPI, 1x I2C, 1x UART, GPIO || 1x SPI, 1x I2C, 1x UART, GPIO || 1x SPI, 1x I2C, 1x UART, GPIO&lt;br /&gt;
|-&lt;br /&gt;
! Storage options&lt;br /&gt;
| Up to 16MB external flash || Up to 16MB external flash || Up to 16MB external flash || Up to 16MB external flash || Up to 4MB external flash&lt;br /&gt;
|-&lt;br /&gt;
! Network&lt;br /&gt;
| Wi-Fi, BT 4.2 || Wi-Fi, BT 4.2 || Wi-Fi, BT 4.2 || Wi-Fi, BT 4.2 || Wi-Fi&lt;br /&gt;
|-&lt;br /&gt;
! Power&lt;br /&gt;
| 3.3V low power || 3.3V low power || 3.3V low power || 3.3V low power || 3.3V low power&lt;br /&gt;
|-&lt;br /&gt;
! OS Support&lt;br /&gt;
| ESP-IDF, FreeRTOS, Arduino IDE || ESP-IDF, FreeRTOS, Arduino IDE || ESP-IDF, FreeRTOS, Arduino IDE || ESP-IDF, FreeRTOS, Arduino IDE || FreeRTOS, Arduino IDE&lt;br /&gt;
|-&lt;br /&gt;
! Price Range&lt;br /&gt;
| $1-$3 || $2-$6 || $1.50-$5 || $1.50-$5 || $1-$3&lt;br /&gt;
|-&lt;br /&gt;
! Documentation and Source Code&lt;br /&gt;
| Documentation: [https://docs.espressif.com/projects/esp-idf/en/stable/esp32/index.html Documentation: ESP-IDF Programming Guide - ESP32 - ESP-IDF Programming Guide v5.4 documentation],&lt;br /&gt;
[https://www.espressif.com/en/products/socs ESP SoCs]&lt;br /&gt;
&lt;br /&gt;
Github: [https://github.com/espressif Espressif Systems],&lt;br /&gt;
[https://github.com/espressif/esp-idf espressif/esp-idf: Espressif IoT Development Framework. Official development framework for Espressif SoCs.] &lt;br /&gt;
| Documentation: [https://docs.espressif.com/projects/esp-idf/en/stable/esp32/index.html Documentation: ESP-IDF Programming Guide - ESP32 - ESP-IDF Programming Guide v5.4 documentation],&lt;br /&gt;
[https://www.espressif.com/en/products/socs ESP SoCs]&lt;br /&gt;
&lt;br /&gt;
Github: [https://github.com/espressif Espressif Systems],&lt;br /&gt;
[https://github.com/espressif/esp-idf espressif/esp-idf: Espressif IoT Development Framework. Official development framework for Espressif SoCs.] &lt;br /&gt;
| Documentation: [https://docs.espressif.com/projects/esp-idf/en/stable/esp32/index.html Documentation: ESP-IDF Programming Guide - ESP32 - ESP-IDF Programming Guide v5.4 documentation],&lt;br /&gt;
[https://www.espressif.com/en/products/socs ESP SoCs]&lt;br /&gt;
&lt;br /&gt;
Github: [https://github.com/espressif Espressif Systems],&lt;br /&gt;
[https://github.com/espressif/esp-idf espressif/esp-idf: Espressif IoT Development Framework. Official development framework for Espressif SoCs.] &lt;br /&gt;
| Documentation: [https://docs.espressif.com/projects/esp-idf/en/stable/esp32/index.html Documentation: ESP-IDF Programming Guide - ESP32 - ESP-IDF Programming Guide v5.4 documentation],&lt;br /&gt;
[https://www.espressif.com/en/products/socs ESP SoCs]&lt;br /&gt;
&lt;br /&gt;
Github: [https://github.com/espressif Espressif Systems],&lt;br /&gt;
[https://github.com/espressif/esp-idf espressif/esp-idf: Espressif IoT Development Framework. Official development framework for Espressif SoCs.] &lt;br /&gt;
| Documentation: [https://docs.espressif.com/projects/esp-idf/en/stable/esp32/index.html Documentation: ESP-IDF Programming Guide - ESP32 - ESP-IDF Programming Guide v5.4 documentation],&lt;br /&gt;
[https://www.espressif.com/en/products/socs ESP SoCs]&lt;br /&gt;
&lt;br /&gt;
Github: [https://github.com/espressif Espressif Systems],&lt;br /&gt;
[https://github.com/espressif/esp-idf espressif/esp-idf: Espressif IoT Development Framework. Official development framework for Espressif SoCs.] &lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Why is ESP32 popular? ====&lt;br /&gt;
ESP32 is popular because it is cost-effective, has integrated Wi-Fi and Bluetooth, benefits from active community support, and has a well-developed ecosystem. ESP32s are heavily used in industries, especially in IoT. ESP32 offers robust connectivity and performance for a wide range of applications.&lt;br /&gt;
&lt;br /&gt;
=== Texas Instruments Sitara Processors ===&lt;br /&gt;
Developed by Texas Instruments, featuring ARM9, ARM Cortex-A8, ARM Cortex-A9, ARM Cortex A-15, and ARM Cortex-A53 cores. Supported by the Beagle community as well as TI&#039;s open-source development community.&lt;br /&gt;
&lt;br /&gt;
==== Pros ====&lt;br /&gt;
* Power efficient&lt;br /&gt;
* Cost-effective&lt;br /&gt;
* Scalability&lt;br /&gt;
* Real-time capability&lt;br /&gt;
&lt;br /&gt;
Texas Instruments Sitara Processors offer a wide range of powerful features for embedded and industrial applications. Sitara Processors provide low-power and higher-performance models, making them suitable for battery-operated devices and high-demand industrial systems. They also offer a developer-friendly environment with tools like Code Composer Studio and RTOS support.&lt;br /&gt;
&lt;br /&gt;
==== Cons ====&lt;br /&gt;
* Limited raw performance&lt;br /&gt;
* Complexity&lt;br /&gt;
* Limited high-end applications&lt;br /&gt;
&lt;br /&gt;
Sitara processors have challenges related to complexity and cost. Simple applications may offer more performance than necessary, leading to increased power consumption and system cost. The software ecosystem is more specialized compared to platforms like Raspberry Pi or ESP32, making development challenging for those unfamiliar with Code Composer Studio and RTOS. Long-term support for certain models may also be a concern as some projects rely on specific processor families.&lt;br /&gt;
&lt;br /&gt;
==== Applications ====&lt;br /&gt;
* IoT gateways&lt;br /&gt;
* Smart thermostats&lt;br /&gt;
* Industrial automation&lt;br /&gt;
* HMI&lt;br /&gt;
&lt;br /&gt;
==== Models ====&lt;br /&gt;
* AM335x&lt;br /&gt;
* AM35x&lt;br /&gt;
* AM37x&lt;br /&gt;
* AM437x&lt;br /&gt;
* AM57x&lt;br /&gt;
* AM62x&lt;br /&gt;
* AM65x&lt;br /&gt;
&lt;br /&gt;
==== Specifications ====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ Texas Instruments Sitara Processors Comparison&lt;br /&gt;
! Model !! AM335x !! AM35x !! AM37x !! AM437x !! AM57x !! AM62x !! AM65x&lt;br /&gt;
|-&lt;br /&gt;
! CPU&lt;br /&gt;
| ARM Cortex-A8, up to 1GHz || ARM Cortex-A8, up to 600MHz || ARM Cortex-A8, up to 1GHz || ARM Cortex-A9, up to 1GHz || Dual ARM Cortex-A15, up to 1.5GHz || Quad ARM Cortex-A53, up to 1.4GHz || Dual ARM Cortex-A53, up to 1.1GHz, Real-Time ARM Cortex-R5F&lt;br /&gt;
|-&lt;br /&gt;
! GPU&lt;br /&gt;
| PowerVR SGX530 || N/A || PowerVR SGX530 || PowerVR SGX544 || PowerVR SGX544MP2 || ARM Mali-G52 MP2 || N/A&lt;br /&gt;
|-&lt;br /&gt;
! APU&lt;br /&gt;
| PRU-ICSS || N/A || N/A || PRU-ICSS || Embedded Vision Engine (EVE), DSP C66x || N/A || PRU-ICSSG, Embedded Vision Engine (EVE)&lt;br /&gt;
|-&lt;br /&gt;
! RAM&lt;br /&gt;
| Up to 1GB DDR2/3L || Up to 256MB DDR2 || Up to 512MB DDR2/3L || Up to 1GB DDR3/3L || Up to 4GB DDR3/3L, DDR4 || Up to 2GB DDR4 || Up to 8GB DDR4&lt;br /&gt;
|-&lt;br /&gt;
! Display&lt;br /&gt;
| 24-bit LCD Controller || 24-bit LCD Controller || 24-bit LCD Controller || 24-bit LCD Controller || 24-bit LCD Controller, HDMI || 24-bit LCD Controller || 24-bit LCD Controller, DP/HDMI&lt;br /&gt;
|-&lt;br /&gt;
! Ports&lt;br /&gt;
| Up to 2x USB 2.0, Up to 2x Gigabit Ethernet, Up to 2x CAN ports, Up to 6x UARTS, Up to 3x I2C, GPIO || USB 2.0, Gigabit Ethernet, UART, I2C, GPIO || USB 2.0, Gigabit Ethernet, UART, I2C, GPIO || Up to 2x USB 2.0, Up to 2x Gigabit Ethernet, Up to 2x CAN ports, Up to 6x UARTS, Up to 3x I2C, GPIO || Up to 2x USB 2.0, Up to 2x USB 3.0, Up to 2x PCIe, Gigabit Ethernet, Up to 2x CAN ports, Up to 3x I2C, GPIO || Up to 2x USB 2.0, Up to 2x USB 3.0, Up to 2x PCIe, Gigabit Ethernet, Up to 2x CAN ports, Up to 3x I2C, GPIO || Up to 2x USB 2.0, Up to 2x USB 3.0, Up to 4x PCIe, Up to 2x Gigabit Ethernet, Up to 2x CAN ports, Up to 3x I2C, GPIO&lt;br /&gt;
|-&lt;br /&gt;
! Storage options&lt;br /&gt;
| eMMC, SD/SDIO, NAND || NAND, SD || NAND, SD || eMMC, SD/SDIO, NAND || eMMC, SD/SDIO, NAND, SATA || eMMC, SD/SDIO || eMMC, SD/SDIO, NVMe&lt;br /&gt;
|-&lt;br /&gt;
! Network&lt;br /&gt;
| Ethernet || Ethernet || Ethernet || Ethernet || Gigabit Ethernet || Gigabit Ethernet || Gigabit Ethernet&lt;br /&gt;
|-&lt;br /&gt;
! Power&lt;br /&gt;
| 1.8V/3.3V || 1.8V/3.3V || 1.8V/3.3V || 1.8V/3.3V || 1.8V/3.3V || 1.8V/3.3V || 1.8V/3.3V&lt;br /&gt;
|-&lt;br /&gt;
! OS Support&lt;br /&gt;
| Linaro, Linux (Yocto), RTOS, Android, Windows Embedded Compact || Linux, Windows CE || Linaro, Linux (Yocto), RTOS, Android, Windows Embedded Compact || Linaro, Linux (Yocto), RTOS, Android, Windows Embedded Compact || Linux (Yocto), RTOS, Android || Linux (Yocto), Android || Linux (Yocto), QNX, Android&lt;br /&gt;
|-&lt;br /&gt;
! Price Range&lt;br /&gt;
| $5-$20 || $10-$25 || $15-$30 || $10-$25 || $50-$150 || $25-$60 || $70-$200&lt;br /&gt;
|-&lt;br /&gt;
! Documentation and Source Code&lt;br /&gt;
| Documentation: [https://www.ti.com/lit/ds/symlink/am3359.pdf AM335x Sitara™ Processors datasheet (Rev. L)],&lt;br /&gt;
SDK: [https://www.ti.com/tool/PROCESSOR-SDK-AM335X PROCESSOR-SDK-AM335X Software development kit (SDK)]&lt;br /&gt;
| Documentation: [https://www.ti.com/cn/lit/ug/sprugr0c/sprugr0c.pdf AM35x ARM Microprocessor Technical Reference Manual (Rev. C)],&lt;br /&gt;
SDK: [https://www.ti.com/tool/download/LINUXEZSDK-AM35X/06.00.00.00 LINUXEZSDK-AM35X Software development kit (SDK)]&lt;br /&gt;
| Documentation: [https://www.ti.com/lit/ds/symlink/am3715.pdf?ts=1736860696591&amp;amp;ref_url=https%253A%252F%252Fwww.ti.com%252Fproduct%252FAM3715AM3715, AM3703 Sitara ARM Microprocessors datasheet (Rev. F)],&lt;br /&gt;
SDK: [https://www.ti.com/tool/download/LINUXEZSDK-AM37X/06.00.00.00 LINUXEZSDK-AM37X Software development kit (SDK)]&lt;br /&gt;
| Documentation: [https://www.ti.com/lit/ds/symlink/am4379.pdf AM437x Sitara™ Processors datasheet (Rev. E)],&lt;br /&gt;
SDK: [https://www.ti.com/tool/PROCESSOR-SDK-AM437X PROCESSOR-SDK-AM437X Software development kit (SDK)]&lt;br /&gt;
| Documentation: [https://www.ti.com/lit/po/sprt689a/sprt689a.pdf?ts=1736861964255&amp;amp;ref_url=https%253A%252F%252Fwww.google.com%252F sprt689a.pdf],&lt;br /&gt;
SDK: [https://www.ti.com/tool/PROCESSOR-SDK-AM57X PROCESSOR-SDK-AM57X Software development kit (SDK)]&lt;br /&gt;
| Documentation: [https://www.ti.com/lit/ds/symlink/am623.pdf AM62x Sitara™ Processors datasheet (Rev. B)],&lt;br /&gt;
SDK: [https://www.ti.com/tool/PROCESSOR-SDK-AM62X PROCESSOR-SDK-AM62X Software development kit (SDK)]&lt;br /&gt;
| Documentation: [https://www.ti.com/lit/ug/spruid7e/spruid7e.pdf?ts=1736862697648&amp;amp;ref_url=https%253A%252F%252Fwww.ti.com%252Fproduct%252FAM6548 AM65x/DRA80xM Processors Technical Reference Manual (Rev. E)],&lt;br /&gt;
SDK: [https://www.ti.com/tool/PROCESSOR-SDK-AM65X PROCESSOR-SDK-AM65X Software development kit (SDK)]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Why are Texas Instruments Sitara Processors popular? ====&lt;br /&gt;
Texas Instruments Sitara Processors are popular due to their reliability, cost-effectiveness, and scalable processing power. They excel in integrating key peripherals such as Ethernet, CAN, and industrial interfaces.&lt;br /&gt;
&lt;br /&gt;
=== Qualcomm Snapdragon ===  &lt;br /&gt;
It is a system-on-chip (SoC) that powers a variety of devices, such as smartphones, tablets, laptops, and desktops. They are designed to be fast, intelligent, and secure, with features like multi-core CPUs, GPUs, and digital signal processors.  &lt;br /&gt;
&lt;br /&gt;
==== Pros ====  &lt;br /&gt;
* Performance  &lt;br /&gt;
* Power Efficiency  &lt;br /&gt;
* Connectivity  &lt;br /&gt;
&lt;br /&gt;
Qualcomm Snapdragon processors are known for their high performance, versatility, and extensive use in mobile and embedded systems. Its processors are used in a wide range of applications, thanks to the combination of ARM Cortex cores, DSP, and AI. Snapdragon processors come with Wi-Fi, LTE, and 5G, which is great for IoT and edge computing. Its community is also well-established with Android and Linux SDKs.  &lt;br /&gt;
&lt;br /&gt;
==== Cons ====  &lt;br /&gt;
* Fragmentation  &lt;br /&gt;
* Software Compatibility  &lt;br /&gt;
* Overheating  &lt;br /&gt;
&lt;br /&gt;
Snapdragon processors tend to be power-hungry, making them less suitable for low-power applications. They may be overkill for simpler applications. Snapdragon processors are generally more expensive than other microcontrollers. The processors are optimized for high-speed and multimedia applications, they may not perform well for real-time applications.  &lt;br /&gt;
&lt;br /&gt;
==== Applications ====  &lt;br /&gt;
* Mobile devices  &lt;br /&gt;
* Multimedia  &lt;br /&gt;
* IoT  &lt;br /&gt;
&lt;br /&gt;
==== Models ====  &lt;br /&gt;
* Snapdragon 8 Series  &lt;br /&gt;
* Snapdragon 7 Series  &lt;br /&gt;
* Snapdragon 6 Series  &lt;br /&gt;
* Snapdragon 4 Series  &lt;br /&gt;
* Snapdragon 2 Series  &lt;br /&gt;
&lt;br /&gt;
==== Specifications ====  &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ Qualcomm Snapdragon Processors Comparison&lt;br /&gt;
! Model !! Snapdragon 2 Series !! Snapdragon 4 Series !! Snapdragon 6 Series !! Snapdragon 7 Series !! Snapdragon 8 Series&lt;br /&gt;
|-&lt;br /&gt;
! CPU&lt;br /&gt;
| ARM Cortex-A53, up to 1.3GHz, Quad-core&lt;br /&gt;
| Kryo 460, up to 2.0GHz, Octa-core&lt;br /&gt;
| Kryo 660, up to 2.4GHz, Octa-core&lt;br /&gt;
| Kryo 770, up to 2.4GHz, Octa-core&lt;br /&gt;
| Kryo 780, up to 3.2GHz, Octa-core&lt;br /&gt;
|-&lt;br /&gt;
! GPU&lt;br /&gt;
| Adreno 304&lt;br /&gt;
| Adreno 610&lt;br /&gt;
| Adreno 642L&lt;br /&gt;
| Adreno 642L&lt;br /&gt;
| Adreno 730&lt;br /&gt;
|-&lt;br /&gt;
! APU&lt;br /&gt;
| Basic AI features supported through CPU/GPU&lt;br /&gt;
| Qualcomm AI Engine, up to 2 TOPS&lt;br /&gt;
| Qualcomm AI Engine, up to 12 TOPS&lt;br /&gt;
| Qualcomm AI Engine, up to 12 TOPS&lt;br /&gt;
| Qualcomm AI Engine, up to 27 TOPS&lt;br /&gt;
|-&lt;br /&gt;
! RAM&lt;br /&gt;
| Up to 3GB LPDDR3&lt;br /&gt;
| Up to 6GB LPDDR4x&lt;br /&gt;
| Up to 12GB LPDDR4X/LPDDR5&lt;br /&gt;
| Up to 16GB LPDDR5&lt;br /&gt;
| Up to 18GB LPDDR5x&lt;br /&gt;
|-&lt;br /&gt;
! Display&lt;br /&gt;
| 720p HD @ 60Hz&lt;br /&gt;
| 1080p FHD @ 60Hz&lt;br /&gt;
| 1440p QHD @ 120Hz&lt;br /&gt;
| 1440p QHD+ @ 120Hz&lt;br /&gt;
| 4K UHD/1440p QHD+ @ 144Hz&lt;br /&gt;
|-&lt;br /&gt;
! Ports&lt;br /&gt;
| USB 2.0&lt;br /&gt;
| USB 3.1&lt;br /&gt;
| USB 3.1&lt;br /&gt;
| USB 3.1&lt;br /&gt;
| USB 3.2&lt;br /&gt;
|-&lt;br /&gt;
! Storage Options&lt;br /&gt;
| eMMC 5.1&lt;br /&gt;
| UFS 2.1&lt;br /&gt;
| eMMC 5.1, UFS 2.2&lt;br /&gt;
| UFS 3.1&lt;br /&gt;
| UFS 4.0&lt;br /&gt;
|-&lt;br /&gt;
! Network&lt;br /&gt;
| LTE Cat 4&lt;br /&gt;
| Wi-Fi 5, LTE Cat 15, 4G+ Mobile&lt;br /&gt;
| Wi-Fi 6, mmWave, 5G Mobile&lt;br /&gt;
| Wi-Fi 6, mmWave, 5G Mobile&lt;br /&gt;
| Wi-Fi 7, mmWave, 5G Mobile&lt;br /&gt;
|-&lt;br /&gt;
! Power&lt;br /&gt;
| 3.3V, low power&lt;br /&gt;
| 3.3V&lt;br /&gt;
| 3.3V&lt;br /&gt;
| 3.3V&lt;br /&gt;
| 3.3V&lt;br /&gt;
|-&lt;br /&gt;
! OS Support&lt;br /&gt;
| Android 10&lt;br /&gt;
| Android 11, Android 12&lt;br /&gt;
| Android 12, Android 13&lt;br /&gt;
| Android 12, Android 13&lt;br /&gt;
| Android 12, Android 13&lt;br /&gt;
|-&lt;br /&gt;
! Price Range&lt;br /&gt;
| $5-$15&lt;br /&gt;
| $20-$60&lt;br /&gt;
| $80-$150&lt;br /&gt;
| $250-$450&lt;br /&gt;
| $500-$1,200&lt;br /&gt;
|-&lt;br /&gt;
! Documentation and Source Code&lt;br /&gt;
| Documentation: [https://www.qualcomm.com/products/mobile/snapdragon/smartphones/qualcomm-2-series-mobile-platforms Qualcomm 2 Series Mobile Platforms]&lt;br /&gt;
&lt;br /&gt;
Github: [https://github.com/SnapdragonStudios Snapdragon Studios]&lt;br /&gt;
&lt;br /&gt;
Source Code: [https://docs.qualcomm.com/bundle/publicresource/topics/80-41102-1/get-the-source-code-from-the-clo-website.html Snapdragon Telematics Application Framework (TelAF) User Guide]&lt;br /&gt;
&lt;br /&gt;
| Documentation: [https://www.qualcomm.com/products/mobile/snapdragon/smartphones/snapdragon-4-series-mobile-platforms/snapdragon-4-gen-1-mobile-platform Snapdragon 4 Gen 1 Mobile Platform],&lt;br /&gt;
&lt;br /&gt;
[https://docs.qualcomm.com/bundle/publicresource/87-64330-1_REV_C_Snapdragon_4_Gen2_Mobile_Platform_Product_Brief.pdf Product Brief]&lt;br /&gt;
&lt;br /&gt;
Github: [https://github.com/SnapdragonStudios Snapdragon Studios]&lt;br /&gt;
&lt;br /&gt;
Source Code: [https://docs.qualcomm.com/bundle/publicresource/topics/80-41102-1/get-the-source-code-from-the-clo-website.html Snapdragon Telematics Application Framework (TelAF) User Guide]&lt;br /&gt;
&lt;br /&gt;
| Documentation: [https://www.qualcomm.com/content/dam/qcomm-martech/dm-assets/documents/product_brief_snapdragon_6_gen_1.pdf Snapdragon 6 Gen 1 Product Brief],&lt;br /&gt;
&lt;br /&gt;
[https://www.qualcomm.com/products/mobile/snapdragon/smartphones/snapdragon-6-series-mobile-platforms/snapdragon-6-gen-1-mobile-platform Snapdragon 6 Gen 1 Mobile Platform],&lt;br /&gt;
&lt;br /&gt;
[https://docs.qualcomm.com/bundle/publicresource/87-82624-1_REV_A_Snapdragon_6_Gen_3_Mobile_Platform_Product_Brief.pdf Product Brief]&lt;br /&gt;
&lt;br /&gt;
Github: [https://github.com/SnapdragonStudios Snapdragon Studios]&lt;br /&gt;
&lt;br /&gt;
Source Code: [https://docs.qualcomm.com/bundle/publicresource/topics/80-41102-1/get-the-source-code-from-the-clo-website.html Snapdragon Telematics Application Framework (TelAF) User Guide]&lt;br /&gt;
&lt;br /&gt;
| Documentation: [https://www.qualcomm.com/content/dam/qcomm-martech/dm-assets/documents/Snapdragon-7-Gen-1-Product-Brief.pdf Snapdragon-7-Gen-1-Product-Brief.pdf],&lt;br /&gt;
&lt;br /&gt;
[https://www.qualcomm.com/products/mobile/snapdragon/smartphones/snapdragon-7-series-mobile-platforms Snapdragon 7 Series Mobile Platforms]&lt;br /&gt;
&lt;br /&gt;
[https://www.qualcomm.com/products/mobile/snapdragon/smartphones/snapdragon-7-series-mobile-platforms/snapdragon-7-gen-1-mobile-platform Snapdragon 7 Gen 1 Mobile Platform],&lt;br /&gt;
&lt;br /&gt;
[https://www.qualcomm.com/products/mobile/snapdragon/smartphones/snapdragon-7-series-mobile-platforms/snapdragon-7-plus-gen-2-mobile-platform Snapdragon 7+ Gen 2 Mobile Platform]&lt;br /&gt;
&lt;br /&gt;
Github: [https://github.com/SnapdragonStudios Snapdragon Studios],&lt;br /&gt;
&lt;br /&gt;
[https://github.com/SnapdragonStudios/adreno-gpu-vulkan-code-sample-framework Snapdragon Studios]&lt;br /&gt;
&lt;br /&gt;
| Documentation: [https://www.qualcomm.com/products/mobile/snapdragon/smartphones/snapdragon-8-series-mobile-platforms Snapdragon 8 Series Mobile Platforms],&lt;br /&gt;
&lt;br /&gt;
[https://www.qualcomm.com/products/mobile/snapdragon/smartphones/snapdragon-8-series-mobile-platforms/snapdragon-8-plus-gen-1-mobile-platform Snapdragon 8+ Gen 1 Mobile Platform],&lt;br /&gt;
&lt;br /&gt;
[https://www.qualcomm.com/products/mobile/snapdragon/smartphones/snapdragon-8-series-mobile-platforms/snapdragon-8-gen-2-mobile-platform Snapdragon 8 Gen 2 Mobile Platform]&lt;br /&gt;
&lt;br /&gt;
Github: [https://github.com/SnapdragonStudios Snapdragon Studios],&lt;br /&gt;
&lt;br /&gt;
[https://github.com/SnapdragonStudios/adreno-gpu-vulkan-code-sample-framework Snapdragon Studios]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--| Documentation: []&lt;br /&gt;
Github: []&lt;br /&gt;
Source Code: [] --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Why is Qualcomm Snapdragon Popular? ====  &lt;br /&gt;
Qualcomm Snapdragon is popular because it consistently delivers high performance, making it a reliable choice for a wide range of devices, from flagship smartphones to wearables and edge computing platforms. Snapdragon combines high-performance CPUs, GPUs, AI, and modems, enabling seamless multitasking, powerful graphics, and lightning-fast connectivity.&lt;br /&gt;
&lt;br /&gt;
=== Intel Atom Processors ===&lt;br /&gt;
Intel Atom Processors are core processors commonly used in hardware platforms. They are designed to reduce electric consumption and power dissipation.&lt;br /&gt;
&lt;br /&gt;
==== Pros ====&lt;br /&gt;
* Low power consumption  &lt;br /&gt;
* Affordable price  &lt;br /&gt;
* Compact  &lt;br /&gt;
&lt;br /&gt;
Intel Atom Processors are designed for low-power consumption while providing sufficient power for embedded systems. Their use of x86 architecture ensures compatibility with a wide variety of software. This allows easy integration with existing applications, especially those that rely on Intel development tools. These processors are also suitable for media streaming, edge AI, and industrial automation. They also have Wi-Fi, Ethernet, and Bluetooth capabilities.&lt;br /&gt;
&lt;br /&gt;
==== Cons ====&lt;br /&gt;
* Limited Graphics Performance  &lt;br /&gt;
* Limited Performance  &lt;br /&gt;
* Low clock speeds  &lt;br /&gt;
* Compatibility Issues  &lt;br /&gt;
&lt;br /&gt;
While Intel Atom Processors are energy-efficient, they may not be as power-efficient as ARM-based processors like the ESP32 or Snapdragon. These processors tend to have lower overall performance compared to more powerful x86 processors and may struggle with complex AI applications or high-resolution video processing.  &lt;br /&gt;
&lt;br /&gt;
Although Intel Atom processors offer compatibility, it can also lead to higher heat output, requiring advanced cooling systems in compact closed environments. The development tools for Intel Atom processors may require specialized expertise, especially when working with Intel SDKs and Linux-based or Windows-based OS.&lt;br /&gt;
&lt;br /&gt;
==== Application ====&lt;br /&gt;
* Mobile  &lt;br /&gt;
* Embedded  &lt;br /&gt;
* IoT Applications  &lt;br /&gt;
* Infotainment (cars)  &lt;br /&gt;
&lt;br /&gt;
==== Models ====&lt;br /&gt;
* Intel Atom X7000E Series  &lt;br /&gt;
* Intel Atom X7000RE Series  &lt;br /&gt;
* Intel Atom X7000C Series  &lt;br /&gt;
* Intel Atom N-Series  &lt;br /&gt;
* Intel Atom P-Series  &lt;br /&gt;
* Intel Atom C-Series  &lt;br /&gt;
&lt;br /&gt;
==== Specifications ====&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ Intel Atom Processor Specifications&lt;br /&gt;
! Model !! Intel Atom X7000E Series !! Intel Atom X7000RE Series !! Intel Atom X7000C Series !! Intel Atom N-Series !! Intel Atom P-Series !! Intel Atom C-Series&lt;br /&gt;
|-&lt;br /&gt;
! CPU&lt;br /&gt;
| Up to 4 E-cores&lt;br /&gt;
| Up to 8 Cores&lt;br /&gt;
| Up to 8 Cores&lt;br /&gt;
| Up to 2 cores with Hyper-Threading&lt;br /&gt;
| Up to 8 cores with Hyper-Threading&lt;br /&gt;
| Up to 16 cores with Hyper-Threading&lt;br /&gt;
|-&lt;br /&gt;
! GPU&lt;br /&gt;
| Intel UHD Graphics&lt;br /&gt;
| Intel UHD Graphics&lt;br /&gt;
| Intel UHD Graphics&lt;br /&gt;
| Integrated Graphics&lt;br /&gt;
| Intel UHD Graphics&lt;br /&gt;
| Intel UHD Graphics&lt;br /&gt;
|-&lt;br /&gt;
! APU&lt;br /&gt;
| Intel Deep Learning Boost&lt;br /&gt;
| Intel Deep Learning Boost&lt;br /&gt;
| Intel Deep Learning Boost&lt;br /&gt;
| Basic AI handled by CPU and GPU&lt;br /&gt;
| Intel Deep Learning Boost&lt;br /&gt;
| Intel Deep Learning Boost&lt;br /&gt;
|-&lt;br /&gt;
! RAM&lt;br /&gt;
| Up to 16GB DDR/LPDDR4x&lt;br /&gt;
| Up to 16GB DDR/LPDDR4x&lt;br /&gt;
| Up to 16GB DDR/LPDDR4x&lt;br /&gt;
| Up to 4GB DDR3&lt;br /&gt;
| Up to 64GB DDR4&lt;br /&gt;
| Up to 256GB DDR4 ECC&lt;br /&gt;
|-&lt;br /&gt;
! Display&lt;br /&gt;
| Up to 4K @ 60Hz HDR&lt;br /&gt;
| Up to 4K @ 60Hz HDR&lt;br /&gt;
| Up to 4K @ 60Hz HDR&lt;br /&gt;
| FHD&lt;br /&gt;
| Up to 4K @ 60Hz&lt;br /&gt;
| Up to 4K @ 60Hz HDR&lt;br /&gt;
|-&lt;br /&gt;
! Ports&lt;br /&gt;
| USB-C, PCIe&lt;br /&gt;
| USB-C, PCIe&lt;br /&gt;
| USB-C, PCIe&lt;br /&gt;
| USB 2.0&lt;br /&gt;
| USB 3.2, PCIe&lt;br /&gt;
| USB 3.2, PCIe&lt;br /&gt;
|-&lt;br /&gt;
! Storage Options&lt;br /&gt;
| eMMC, SD, NVMe&lt;br /&gt;
| eMMC, SD, NVMe&lt;br /&gt;
| eMMC, SD, NVMe&lt;br /&gt;
| eMMC, SATA&lt;br /&gt;
| eMMC, NVMe, SATA&lt;br /&gt;
| eMMC, NVMe, SATA&lt;br /&gt;
|-&lt;br /&gt;
! Network&lt;br /&gt;
| Wi-Fi 6, Gigabit Ethernet&lt;br /&gt;
| Wi-Fi 6, Gigabit Ethernet&lt;br /&gt;
| Wi-Fi 6/6E, Gigabit Ethernet&lt;br /&gt;
| Wi-Fi 4, Wi-Fi 5, Ethernet Gigabit&lt;br /&gt;
| Wi-Fi 6/6E, Gigabit Ethernet&lt;br /&gt;
| Wi-Fi 6E, Gigabit Ethernet&lt;br /&gt;
|-&lt;br /&gt;
! Power&lt;br /&gt;
| 6W-15W&lt;br /&gt;
| 6W-15W&lt;br /&gt;
| 6W-15W&lt;br /&gt;
| 3.5W-7W&lt;br /&gt;
| 10W-20W&lt;br /&gt;
| 15W-35W&lt;br /&gt;
|-&lt;br /&gt;
! OS Support&lt;br /&gt;
| Ubuntu, Linux (Yocto), Windows 10/11&lt;br /&gt;
| Ubuntu, Linux (Yocto), Windows 10/11&lt;br /&gt;
| Ubuntu, Linux (Yocto), Windows 10/11&lt;br /&gt;
| Linux, Windows 7/10&lt;br /&gt;
| Ubuntu, Linux (Yocto), Windows 10/11&lt;br /&gt;
| Ubuntu, Linux (Yocto), Windows 10/11&lt;br /&gt;
|-&lt;br /&gt;
! Price Range&lt;br /&gt;
| $30-$60&lt;br /&gt;
| $50-$90&lt;br /&gt;
| $40-$80&lt;br /&gt;
| $20-$40&lt;br /&gt;
| $50-$100&lt;br /&gt;
| $100-$250&lt;br /&gt;
|-&lt;br /&gt;
! Documentation and Source Code&lt;br /&gt;
| Documentation: [https://www.intel.com/content/www/us/en/products/docs/processors/atom/x7000e-series-overview.html Intel Atom X7000E Series Overview],&lt;br /&gt;
[https://www.intel.com/content/www/us/en/products/docs/processors/atom/x7000e-series-product-brief.html Intel Atom® x7000E Series Product Brief]&lt;br /&gt;
&lt;br /&gt;
SDK: [https://www.intel.com/content/www/us/en/developer/topic-technology/edge-5g/hardware/atom-x7000e-dev-kit.html Developer Kits with Intel Atom® x7000E Processors]&lt;br /&gt;
| Documentation: [https://www.intel.com/content/www/us/en/products/docs/processors/atom/x7000re-series-overview.html Intel Atom X7000RE Series Overview],&lt;br /&gt;
[https://www.intel.com/content/www/us/en/products/docs/processors/atom/x7000re-series-product-brief.html Intel Atom® Processors x7000RE Series Product Brief]&lt;br /&gt;
| Documentation: [https://www.intel.com/content/www/us/en/products/docs/processors/atom/x7000c-series-overview.html Intel Atom X7000C Series Overview],&lt;br /&gt;
[https://www.intel.com/content/www/us/en/products/docs/processors/atom/x7000c-series-product-brief.html Intel Atom® x7000C Processors Series Product Brief]&lt;br /&gt;
| Documentation: [https://www.intel.com/content/www/us/en/products/docs/processors/atom/n2600-overview.html Intel Atom N2600 Overview]&lt;br /&gt;
| Documentation: [https://www.intel.com/content/www/us/en/products/docs/processors/atom/p-series-overview.html Intel Atom P-Series Overview],&lt;br /&gt;
[https://www.intel.com/content/www/us/en/products/docs/processors/atom/p5900-overview.html Intel Atom® P5900 Processors for 5G Network Edge Acceleration]&lt;br /&gt;
| Documentation: [https://www.intel.com/content/www/us/en/products/docs/processors/atom/c-series-overview.html Intel Atom C-Series Overview],&lt;br /&gt;
[https://www.intel.com/content/www/us/en/products/docs/processors/atom/c3000-overview.html Product Brief: Intel Atom® C3000 Processor] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Why is Intel Atom Processors Popular? ====&lt;br /&gt;
Intel Atom Processors are popular because of their low power consumption. They are ideal for small, portable devices and embedded systems. They offer a good balance between performance and power usage. Additionally, Intel’s reputation makes Atom processors a dependable choice for developers and manufacturers.&lt;br /&gt;
&lt;br /&gt;
=== Microchip PIC Microcontrollers ===&lt;br /&gt;
Microchip PIC Microcontrollers consist of scalable 8-bit, 16-bit, and 32-bit microcontrollers and Digital Signal Controllers.&lt;br /&gt;
&lt;br /&gt;
==== Pros ====&lt;br /&gt;
* Cheap, Budget friendly&lt;br /&gt;
* Low power&lt;br /&gt;
* Documentation&lt;br /&gt;
&lt;br /&gt;
Widely recognized for their low power consumption and affordability, Microchip PIC Microcontrollers are the ideal choice for a variety of embedded systems, particularly in battery-powered devices and simple consumer electronics. These microcontrollers offer user-friendly development environments due to MPLAB X IDE and Microchip Studio, which streamline the design and prototyping process. Microchip PIC Microcontrollers are also well supported by a rich ecosystem of tools, libraries, and applications.&lt;br /&gt;
&lt;br /&gt;
==== Cons ====&lt;br /&gt;
* Not enough computational power&lt;br /&gt;
* Not beginner friendly&lt;br /&gt;
&lt;br /&gt;
The microcontroller&#039;s processing power is limited compared to other more advanced microcontrollers such as the Arm Cortex-M Series. This makes them unsuitable for high computational tasks, such as AI or multimedia processing. They also lack built-in wireless connectivity, such as Wi-Fi and Bluetooth, and have relatively small RAM and storage capabilities. Microchip PIC Microcontrollers are less equipped for more advanced applications like high-speed processing, graphics, or real-time systems.&lt;br /&gt;
&lt;br /&gt;
==== Applications ====&lt;br /&gt;
* Automotive&lt;br /&gt;
* Industrial&lt;br /&gt;
* Home automation&lt;br /&gt;
&lt;br /&gt;
==== Models ====&lt;br /&gt;
* 8-bit MCUs&lt;br /&gt;
* 16-bit MCUs&lt;br /&gt;
* 32-bit MCUs&lt;br /&gt;
* Digital Signal Controllers&lt;br /&gt;
* Wireless MCUs&lt;br /&gt;
&lt;br /&gt;
==== Specifications ====&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ Microchip PIC Microcontroller and Digital Signal Controller Specifications&lt;br /&gt;
! Model !! Microchip PIC 8-bit MCU !! Microchip PIC 16-bit MCU !! Microchip PIC 32-bit MCU !! Microchip PIC Digital Signal Controllers !! Microchip PIC Wireless MCU&lt;br /&gt;
|-&lt;br /&gt;
! CPU&lt;br /&gt;
| 8-bit PIC core&lt;br /&gt;
| 16-bit PIC24 core&lt;br /&gt;
| 32-bit PIC32 core&lt;br /&gt;
| dsPIC core with digital signal processing&lt;br /&gt;
| 32-bit PIC32 core with integrated wireless&lt;br /&gt;
|-&lt;br /&gt;
! GPU&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
| Optional integrated GPU in select models&lt;br /&gt;
| N/A&lt;br /&gt;
| Optional Integrated GPU&lt;br /&gt;
|-&lt;br /&gt;
! APU&lt;br /&gt;
| N/A&lt;br /&gt;
| Basic signal processing capabilities&lt;br /&gt;
| Advanced signal processing&lt;br /&gt;
| Advanced signal processing&lt;br /&gt;
| Integrated wireless processing cores&lt;br /&gt;
|-&lt;br /&gt;
! RAM&lt;br /&gt;
| Up to 2KB&lt;br /&gt;
| Up to 32KB&lt;br /&gt;
| Up to 512KB&lt;br /&gt;
| Up to 64KB&lt;br /&gt;
| Up to 512KB&lt;br /&gt;
|-&lt;br /&gt;
! Display&lt;br /&gt;
| Basic LCD display&lt;br /&gt;
| Basic LCD display&lt;br /&gt;
| TFT and advanced displays&lt;br /&gt;
| LCD support&lt;br /&gt;
| TFT and advanced displays&lt;br /&gt;
|-&lt;br /&gt;
! Ports&lt;br /&gt;
| UART, SPI, I2C, GPIO&lt;br /&gt;
| UART, SPI, I2C, CAN, GPIO&lt;br /&gt;
| USB, PCIe, SPI, I2C&lt;br /&gt;
| UART, SPI, I2C, CAN, GPIO&lt;br /&gt;
| USB, SPI, I2C&lt;br /&gt;
|-&lt;br /&gt;
! Storage Options&lt;br /&gt;
| Internal Flash, EEPROM&lt;br /&gt;
| Internal Flash, EEPROM&lt;br /&gt;
| Internal Flash, SD, NAND&lt;br /&gt;
| Internal Flash, EEPROM&lt;br /&gt;
| Internal Flash, SD, NAND&lt;br /&gt;
|-&lt;br /&gt;
! Network&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
| Wi-Fi, Ethernet&lt;br /&gt;
| Ethernet&lt;br /&gt;
| Wi-Fi, Zigbee, LoRa&lt;br /&gt;
|-&lt;br /&gt;
! Power&lt;br /&gt;
| 0.03W-0.1W Ultra-low power&lt;br /&gt;
| 0.1W-0.5W Low power&lt;br /&gt;
| 0.5W-2W Low to Moderate Power&lt;br /&gt;
| 0.2W-1W Low power&lt;br /&gt;
| 0.05W-0.5W Ultra-low power&lt;br /&gt;
|-&lt;br /&gt;
! OS Support&lt;br /&gt;
| Bare-metal&lt;br /&gt;
| Bare-metal, FreeRTOS&lt;br /&gt;
| FreeRTOS, Zephyr&lt;br /&gt;
| FreeRTOS, Zephyr&lt;br /&gt;
| FreeRTOS, Zephyr, Harmony&lt;br /&gt;
|-&lt;br /&gt;
! Price Range&lt;br /&gt;
| $0.5-$3&lt;br /&gt;
| $2-$10&lt;br /&gt;
| $5-$20&lt;br /&gt;
| $5-$15&lt;br /&gt;
| $5-$25&lt;br /&gt;
|-&lt;br /&gt;
! Documentation and Source Code&lt;br /&gt;
| Documentation: [https://www.microchip.com/wwwAppNotes/AppNotes.aspx?appnote=en30009630 30009630m.pdf]&lt;br /&gt;
&lt;br /&gt;
SDK: [https://www.microchip.com/en-us/development-tools-tools/8bit/pic-avr-mcus Start Developing With 8-bit PIC® and AVR® MCUs],&lt;br /&gt;
&lt;br /&gt;
[https://www.microchip.com/en-us/development-tools-tools/software-tools Libraries, Code Examples and More]&lt;br /&gt;
&lt;br /&gt;
| Documentation: [https://www.microchip.com/en-us/development-tools-tools/16bit/ 16-bit Microcontrollers]&lt;br /&gt;
&lt;br /&gt;
SDK: [https://www.microchip.com/en-us/development-tools-tools/16bit/pic24f Developing With the 16-bit PIC24F MCU],&lt;br /&gt;
&lt;br /&gt;
[https://developerhelp.microchip.com/xwiki/bin/view/products/mcu-mpu/16bit-mcu/software-development/ Software Development for 16-bit PIC® MCUs - Developer Help]&lt;br /&gt;
| Documentation: [https://www.microchip.com/en-us/development-tools-tools/32bit/ PIC32 Family of 32-bit Microcontrollers]&lt;br /&gt;
&lt;br /&gt;
SDK: [https://www.microchip.com/en-us/development-tools-tools/32bit/pic32-starter-kit PIC32 STARTER KIT],&lt;br /&gt;
&lt;br /&gt;
| Documentation: [https://www.microchip.com/en-us/development-tools-tools/digital-signal-controllers Digital Signal Controllers (DSCs)]&lt;br /&gt;
&lt;br /&gt;
SDK: [https://www.microchip.com/en-us/development-tools-tools/software-tools Libraries, Code Examples and More]&lt;br /&gt;
&lt;br /&gt;
| Documentation: [https://www.microchip.com/en-us/development-tools-tools/wireless Wireless Microcontrollers]&lt;br /&gt;
&lt;br /&gt;
GitHub: [https://github.com/Microchip-MPLAB-Harmony Microchip MPLAB Harmony],&lt;br /&gt;
&lt;br /&gt;
[https://github.com/Microchip-MPLAB-Harmony/wireless_pic32cxbz_wbz Microchip-MPLAB-Harmony/wireless_pic32cxbz_wbz]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Why is Microchip PIC Microcontrollers Popular? ====&lt;br /&gt;
Microchip PIC Microcontrollers are popular because of their low cost, wide availability, and extensive design support from Microchip. They offer a variety of models that are well suited for everything from simple DIY projects to complex industrial systems. Microchip’s product availability and support network make PIC microcontrollers a trusted system for beginners and professionals.&lt;br /&gt;
&lt;br /&gt;
=== STMicroelectronics STM32 Series ===  &lt;br /&gt;
Based on the Arm Cortex-M processor. It offers products combining very high performance, real-time capabilities, digital signal processing, low-power operation, and connectivity, while maintaining full integration and ease of development.  &lt;br /&gt;
&lt;br /&gt;
==== Pros ====  &lt;br /&gt;
* High Performance  &lt;br /&gt;
* Wide range of peripherals  &lt;br /&gt;
* Low power consumption  &lt;br /&gt;
* Cost-effective  &lt;br /&gt;
&lt;br /&gt;
One of STMicroelectronics STM32 series&#039; pros is their processing power, from Arm Cortex-M0 to Cortex-M7 cores. They offer scalability for both simple and complex tasks. They also have good support for development with tools like STM32Cube and libraries like HAL, which simplify the development process. They support a wide array of peripherals such as SPI, I2C, UART, PWM, and CAN. Some models also have Wi-Fi and Bluetooth capabilities, reducing the need for external modules.  &lt;br /&gt;
&lt;br /&gt;
==== Cons ====  &lt;br /&gt;
* Complexity  &lt;br /&gt;
* Learning Curve  &lt;br /&gt;
* Different Pinout variations  &lt;br /&gt;
&lt;br /&gt;
While STMicroelectronics STM32 Series are generally affordable, they are still more expensive than other simpler microcontrollers. Beginners may find the development process more complex, especially when dealing with higher-end STM32 models. They are not well suited for high-level processing like AI, GPU-based graphics, or video processing.  &lt;br /&gt;
&lt;br /&gt;
==== Applications ====  &lt;br /&gt;
* Industrial  &lt;br /&gt;
* Automotive  &lt;br /&gt;
* IIoT (Industrial Internet of Things)  &lt;br /&gt;
* Communications Equipment  &lt;br /&gt;
&lt;br /&gt;
==== Models ====  &lt;br /&gt;
* STM32F/H Series (High Performance)  &lt;br /&gt;
* STM32G/C/F Series (Mainstream)  &lt;br /&gt;
* STM32L/U Series (Ultra-low power)  &lt;br /&gt;
* STM32W Series (Wireless)  &lt;br /&gt;
&lt;br /&gt;
==== Specifications ====  &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ STM32 Series Specifications&lt;br /&gt;
! Model !! STM32F/H Series !! STM32G/C/F Series !! STM32L/U Series !! STM32W Series&lt;br /&gt;
|-&lt;br /&gt;
! CPU&lt;br /&gt;
| Arm Cortex-M3/M4/M7/M33&lt;br /&gt;
| Arm Cortex-M4/M33&lt;br /&gt;
| Arm Cortex-M0+/M3/M33&lt;br /&gt;
| Arm Cortex-M4/M33&lt;br /&gt;
|-&lt;br /&gt;
! GPU&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
| Optional Integrated Graphics Controller&lt;br /&gt;
|-&lt;br /&gt;
! APU&lt;br /&gt;
| Basic DSP capabilities&lt;br /&gt;
| Enhanced DSP&lt;br /&gt;
| N/A&lt;br /&gt;
| Integrated RF processing for wireless&lt;br /&gt;
|-&lt;br /&gt;
! RAM&lt;br /&gt;
| Up to 1MB&lt;br /&gt;
| Up to 512KB&lt;br /&gt;
| Up to 192KB&lt;br /&gt;
| Up to 256KB&lt;br /&gt;
|-&lt;br /&gt;
! Display&lt;br /&gt;
| TFT LCD Controller&lt;br /&gt;
| TFT LCD&lt;br /&gt;
| N/A&lt;br /&gt;
| TFT LCD Up Controller&lt;br /&gt;
|-&lt;br /&gt;
! Ports&lt;br /&gt;
| UART, I2C, SPI, USB, CAN, GPIO&lt;br /&gt;
| UART, I2C, SPI, USB, CAN, GPIO&lt;br /&gt;
| UART, I2C, SPI, USB, GPIO&lt;br /&gt;
| UART, I2C, SPI, USB, CAN, GPIO&lt;br /&gt;
|-&lt;br /&gt;
! Storage Options&lt;br /&gt;
| Up to 2MB Internal Flash, External QSPI&lt;br /&gt;
| Up to 1MB Internal Flash, External QSPI&lt;br /&gt;
| Up to 1MB Internal Flash&lt;br /&gt;
| Up to 2MB Internal Flash, External QSPI&lt;br /&gt;
|-&lt;br /&gt;
! Network&lt;br /&gt;
| Ethernet&lt;br /&gt;
| CAN, USB&lt;br /&gt;
| USB&lt;br /&gt;
| Zigbee&lt;br /&gt;
|-&lt;br /&gt;
! Power&lt;br /&gt;
| 0.08W-2W&lt;br /&gt;
| 0.5W-1.5W&lt;br /&gt;
| 0.1W-0.8W&lt;br /&gt;
| 0.6W-1.2W&lt;br /&gt;
|-&lt;br /&gt;
! OS Support&lt;br /&gt;
| FreeRTOS, Zephyr, Mbed OS&lt;br /&gt;
| FreeRTOS, Zephyr, Mbed OS&lt;br /&gt;
| FreeRTOS, Zephyr, Mbed OS&lt;br /&gt;
| FreeRTOS, Zephyr, Mbed OS&lt;br /&gt;
|-&lt;br /&gt;
! Price Range&lt;br /&gt;
| $3-$20&lt;br /&gt;
| $2-$12&lt;br /&gt;
| $1.50-$10&lt;br /&gt;
| $3-$15&lt;br /&gt;
|-&lt;br /&gt;
! Documentation and Source Code&lt;br /&gt;
| Documentation: [https://www.st.com STM32 Microcontrollers (MCUs) - STMicroelectronics]&lt;br /&gt;
&lt;br /&gt;
SDK: [https://www.st.com STM32Cube MCU: List of Embedded software components - STMicroelectronics]&lt;br /&gt;
&lt;br /&gt;
GitHub: [https://github.com/STMicroelectronics STMicroelectronics]&lt;br /&gt;
| Documentation: [https://www.st.com STM32 Microcontrollers (MCUs) - STMicroelectronics]&lt;br /&gt;
&lt;br /&gt;
SDK: [https://www.st.com STM32Cube MCU: List of Embedded software components - STMicroelectronics]&lt;br /&gt;
&lt;br /&gt;
GitHub: [https://github.com/STMicroelectronics STMicroelectronics]&lt;br /&gt;
| Documentation: [https://www.st.com STM32 Microcontrollers (MCUs) - STMicroelectronics]&lt;br /&gt;
&lt;br /&gt;
SDK: [https://www.st.com STM32Cube MCU: List of Embedded software components - STMicroelectronics]&lt;br /&gt;
&lt;br /&gt;
GitHub: [https://github.com/STMicroelectronics STMicroelectronics]&lt;br /&gt;
| Documentation: [https://www.st.com STM32 Microcontrollers (MCUs) - STMicroelectronics]&lt;br /&gt;
&lt;br /&gt;
SDK: [https://www.st.com STM32Cube MCU: List of Embedded software components - STMicroelectronics]&lt;br /&gt;
&lt;br /&gt;
GitHub: [https://github.com/STMicroelectronics STMicroelectronics]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Why is STMicroelectronics STM32 Series popular? ====  &lt;br /&gt;
STMicroelectronics STM32 Series is popular because it is suitable for a wide range of applications and offers high performance and developer-friendly features. With Arm Cortex cores, STM32 microcontrollers deliver excellent performance, energy efficiency, and peripheral integration. The STM32 ecosystem is supported by comprehensive development tools, such as STM32Cube software.  &lt;br /&gt;
&lt;br /&gt;
=== Renesas RX Family ===&lt;br /&gt;
Built around advanced CPU cores packed with innovations unique to Renesas.&lt;br /&gt;
&lt;br /&gt;
==== Pros ====&lt;br /&gt;
* High performance  &lt;br /&gt;
* Low power consumption  &lt;br /&gt;
* Wide range applications  &lt;br /&gt;
&lt;br /&gt;
Renesas RX Family uses 32-bit RX cores, which deliver strong computational power and support for complex applications. They are also integrated with peripherals such as CAN, SPI, I2C, PWM, and ADC. Renesas RX has a robust ecosystem of development tools, such as e2 Studio and Renesas Synergy, for easy integration and fast development cycles.  &lt;br /&gt;
&lt;br /&gt;
==== Cons ====&lt;br /&gt;
* Proprietary architecture  &lt;br /&gt;
* Steep learning curve  &lt;br /&gt;
* Not ideal for AI or multimedia  &lt;br /&gt;
&lt;br /&gt;
While Renesas RX offers strong performance, it may not match the processing power of more advanced microcontrollers or processors, such as Arm Cortex-M, Snapdragon, or NVIDIA Jetson. It may have a steep learning curve for beginners, especially when compared to Arduino. There are also fewer libraries and less community support. While Renesas RX may be suitable for embedded systems, it may not be the best choice for AI, GPU acceleration, or complex video analytics, which demand more specialized hardware.  &lt;br /&gt;
&lt;br /&gt;
==== Applications ====&lt;br /&gt;
* Industrial  &lt;br /&gt;
* Automation  &lt;br /&gt;
* Communication  &lt;br /&gt;
&lt;br /&gt;
==== Models ====&lt;br /&gt;
* RX700  &lt;br /&gt;
* RX600  &lt;br /&gt;
* RX200  &lt;br /&gt;
* RX100  &lt;br /&gt;
&lt;br /&gt;
==== Specifications ====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ Renesas RX Family Specifications&lt;br /&gt;
! Model !! RX700 !! RX600 !! RX200 !! RX100&lt;br /&gt;
|-&lt;br /&gt;
! CPU&lt;br /&gt;
| Up to 240 MHz 32-bit RXv3 core&lt;br /&gt;
| Up to 120MHz 32-bit RXv2 core&lt;br /&gt;
| Up to 54MHz 32-bit RXv2 core&lt;br /&gt;
| Up to 32MHz 32-bit RXv2 core&lt;br /&gt;
|-&lt;br /&gt;
! GPU&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
|-&lt;br /&gt;
! APU&lt;br /&gt;
| Advanced signal processing and control&lt;br /&gt;
| Advanced signal processing and control&lt;br /&gt;
| Advanced signal processing and control&lt;br /&gt;
| Advanced signal processing and control&lt;br /&gt;
|-&lt;br /&gt;
! RAM&lt;br /&gt;
| Up to 128MB SRAM&lt;br /&gt;
| Up to 128MB SRAM&lt;br /&gt;
| Up to 32MB SRAM&lt;br /&gt;
| Up to 16MB SRAM&lt;br /&gt;
|-&lt;br /&gt;
! Display&lt;br /&gt;
| Support high-resolution displays&lt;br /&gt;
| Graphical LCD&lt;br /&gt;
| Basic LCD&lt;br /&gt;
| Basic LCD&lt;br /&gt;
|-&lt;br /&gt;
! Ports&lt;br /&gt;
| UART, SPI, I2C, CAN, USB&lt;br /&gt;
| UART, SPI, I2C, CAN, USB&lt;br /&gt;
| UART, SPI, I2C, USB&lt;br /&gt;
| UART, SPI, I2C, USB&lt;br /&gt;
|-&lt;br /&gt;
! Storage Options&lt;br /&gt;
| Internal Flash up to 16MB, External QSPI&lt;br /&gt;
| Internal Flash up to 4MB, External QSPI&lt;br /&gt;
| Internal Flash up to 2MB, External QSPI&lt;br /&gt;
| Internal Flash up to 1MB, External QSPI&lt;br /&gt;
|-&lt;br /&gt;
! Network&lt;br /&gt;
| Ethernet&lt;br /&gt;
| Ethernet&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
|-&lt;br /&gt;
! Power&lt;br /&gt;
| 0.5W-2W&lt;br /&gt;
| 0.3W-1.5W&lt;br /&gt;
| 0.2W-1W&lt;br /&gt;
| 0.1W-0.5W&lt;br /&gt;
|-&lt;br /&gt;
! OS Support&lt;br /&gt;
| FreeRTOS, RX V3 SDK, embOS&lt;br /&gt;
| FreeRTOS, RX V2 SDK, embOS&lt;br /&gt;
| FreeRTOS, RX 23 SDK, embOS&lt;br /&gt;
| FreeRTOS, RX V2 SDK, embOS&lt;br /&gt;
|-&lt;br /&gt;
! Price Range&lt;br /&gt;
| $10-$50&lt;br /&gt;
| $5-$20&lt;br /&gt;
| $2-$10&lt;br /&gt;
| $1-$5&lt;br /&gt;
|-&lt;br /&gt;
! Documentation and Source Code&lt;br /&gt;
| Documentation: [https://www.renesas.com Renesas RX700, RX600 MCU Series]  &lt;br /&gt;
&lt;br /&gt;
SDK: [https://www.renesas.com C/C++ Compiler Package for RX Family [CC-RX] | Renesas]  &lt;br /&gt;
&lt;br /&gt;
GitHub: [https://github.com/Renesas RX MCUs team]&lt;br /&gt;
| Documentation: [https://www.renesas.com Renesas RX700, RX600 MCU Series]  &lt;br /&gt;
&lt;br /&gt;
SDK: [https://www.renesas.com C/C++ Compiler Package for RX Family [CC-RX] | Renesas]  &lt;br /&gt;
&lt;br /&gt;
GitHub: [https://github.com/Renesas RX MCUs team]&lt;br /&gt;
| Documentation: [https://www.renesas.com Renesas RX200 MCU Series]  &lt;br /&gt;
&lt;br /&gt;
SDK: [https://www.renesas.com C/C++ Compiler Package for RX Family [CC-RX] | Renesas]  &lt;br /&gt;
&lt;br /&gt;
GitHub: [https://github.com/Renesas RX MCUs team]&lt;br /&gt;
| Documentation: [https://www.renesas.com Renesas RX100 MCU Series]  &lt;br /&gt;
&lt;br /&gt;
SDK: [https://www.renesas.com C/C++ Compiler Package for RX Family [CC-RX] | Renesas]  &lt;br /&gt;
&lt;br /&gt;
GitHub: [https://github.com/Renesas RX MCUs team]&lt;br /&gt;
|}&lt;br /&gt;
  &lt;br /&gt;
==== Why is Renesas RX popular? ====&lt;br /&gt;
Renesas RX is popular because it is reliable, secure, and efficient. Using RX CPU cores, these microcontrollers deliver excellent performance and real-time capabilities. Developers benefit from tools like the e² studio IDE, code generation utilities, and extensive libraries.&lt;br /&gt;
&lt;br /&gt;
=== Arm Cortex-M Series ===&lt;br /&gt;
Optimized for cost and energy-efficient microcontrollers.&lt;br /&gt;
&lt;br /&gt;
==== Pros ====&lt;br /&gt;
* Low power consumption  &lt;br /&gt;
* Compact  &lt;br /&gt;
* Cost-effective  &lt;br /&gt;
* Multiprocessing  &lt;br /&gt;
&lt;br /&gt;
Arm Cortex-M Series is widely used for its scalability, low power, and strong performance. They offer a range of cores from Cortex-M0 to Cortex-M7. The low power consumption makes it highly suitable for battery-operated devices, with advanced power management features that extend battery life. They also have robust development tools, libraries, and community support, which makes development and integration with peripheral devices easier.  &lt;br /&gt;
&lt;br /&gt;
==== Cons ====&lt;br /&gt;
* Low performance  &lt;br /&gt;
* Limited software capability  &lt;br /&gt;
&lt;br /&gt;
While the Arm Cortex-M Series offers solid performance, they are still limited compared to higher-end Arm Cortex-A processors or other specialized computing platforms such as NVIDIA Jetson or Qualcomm Snapdragon. Some advanced features such as RTOS or multi-core support may require more complex development and can be overkill for simple applications. The development process can be complex, especially for users unfamiliar with embedded systems or real-time applications, making it less beginner-friendly.  &lt;br /&gt;
&lt;br /&gt;
==== Applications ====&lt;br /&gt;
* IoT  &lt;br /&gt;
* Industrial  &lt;br /&gt;
* Automotive  &lt;br /&gt;
&lt;br /&gt;
==== Models ====&lt;br /&gt;
* Cortex-M0  &lt;br /&gt;
* Cortex-M0+  &lt;br /&gt;
* Cortex-M1  &lt;br /&gt;
* Cortex-M23  &lt;br /&gt;
* Cortex-M3  &lt;br /&gt;
* Cortex-M4  &lt;br /&gt;
* Cortex-M33  &lt;br /&gt;
* Cortex-M35P  &lt;br /&gt;
* Cortex-M55  &lt;br /&gt;
* Cortex-M7  &lt;br /&gt;
&lt;br /&gt;
==== Specifications ====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ Arm Cortex-M Series Specifications&lt;br /&gt;
! Model !! Cortex-M0 !! Cortex-M0+ !! Cortex-M1 !! Cortex-M23&lt;br /&gt;
|-&lt;br /&gt;
! CPU&lt;br /&gt;
| Armv6-M up to 50 MHz&lt;br /&gt;
| Armv6-M up to 50 MHz&lt;br /&gt;
| Armv6-M up to 50 MHz&lt;br /&gt;
| Armv6-M up to 50 MHz&lt;br /&gt;
|-&lt;br /&gt;
! GPU&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
|-&lt;br /&gt;
! APU&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
|-&lt;br /&gt;
! RAM&lt;br /&gt;
| Up to 1 MB&lt;br /&gt;
| Up to 1 MB&lt;br /&gt;
| Up to 1 MB&lt;br /&gt;
| Up to 1 MB&lt;br /&gt;
|-&lt;br /&gt;
! Display&lt;br /&gt;
| External via SPI/I2C&lt;br /&gt;
| External via SPI/I2C&lt;br /&gt;
| External via SPI/I2C&lt;br /&gt;
| External via SPI/I2C&lt;br /&gt;
|-&lt;br /&gt;
! Ports&lt;br /&gt;
| SPI, I2C, UART, GPIO&lt;br /&gt;
| SPI, I2C, UART, GPIO&lt;br /&gt;
| SPI, I2C, UART, GPIO&lt;br /&gt;
| SPI, I2C, UART, GPIO&lt;br /&gt;
|-&lt;br /&gt;
! Storage Options&lt;br /&gt;
| Up to 256KB Flash memory, SD, SPI-based NOR&lt;br /&gt;
| Up to 256KB Flash memory, SD, SPI-based NOR&lt;br /&gt;
| Up to 256KB Flash memory, SD, SPI-based NOR&lt;br /&gt;
| Up to 256KB Flash memory, SD, SPI-based NOR&lt;br /&gt;
|-&lt;br /&gt;
! Network&lt;br /&gt;
| External modules, SPI, I2C&lt;br /&gt;
| External modules, SPI, I2C&lt;br /&gt;
| External modules, SPI, I2C&lt;br /&gt;
| External modules, SPI, I2C&lt;br /&gt;
|-&lt;br /&gt;
! Power&lt;br /&gt;
| Approx 0.00005W&lt;br /&gt;
| Approx 0.00005W&lt;br /&gt;
| Approx 0.00005W&lt;br /&gt;
| Approx 0.00005W&lt;br /&gt;
|-&lt;br /&gt;
! OS Support&lt;br /&gt;
| FreeRTOS, Zephyr&lt;br /&gt;
| FreeRTOS, Zephyr&lt;br /&gt;
| FreeRTOS, Zephyr&lt;br /&gt;
| FreeRTOS, Zephyr&lt;br /&gt;
|-&lt;br /&gt;
! Price Range&lt;br /&gt;
| $1&lt;br /&gt;
| $1&lt;br /&gt;
| $1&lt;br /&gt;
| $1&lt;br /&gt;
|-&lt;br /&gt;
! Documentation and Source code&lt;br /&gt;
| Documentation: [https://documentation-service.arm.com/static/5e8e294afd977155116a6a5b?token= Documentation]&lt;br /&gt;
&lt;br /&gt;
Github: [https://github.com/ARM-software/CMSIS_5 CMSIS_5 GitHub] &lt;br /&gt;
&lt;br /&gt;
| Documentation: [https://developer.arm.com Cortex-M0+ Technical Reference Manual] &lt;br /&gt;
&lt;br /&gt;
Github: [https://github.com/ARM-software/CMSIS_5 CMSIS_5 GitHub]&lt;br /&gt;
&lt;br /&gt;
| Documentation: [https://developer.arm.com Cortex-M1 Technical Reference Manual]&lt;br /&gt;
&lt;br /&gt;
Github: [https://github.com/ARM-software/CMSIS_5 CMSIS_5 GitHub]&lt;br /&gt;
&lt;br /&gt;
|Documentation: [https://developer.arm.com Cortex-M23 Processor Technical Reference Manual]&lt;br /&gt;
&lt;br /&gt;
Github: [https://github.com/ARM-software/CMSIS_5 CMSIS_5 GitHub]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ Arm Cortex-M Series Specifications (Advanced Models)&lt;br /&gt;
! Model !! Cortex-M3 !! Cortex-M4 !! Cortex-M33 !! Cortex-M35P&lt;br /&gt;
|-&lt;br /&gt;
! CPU&lt;br /&gt;
| Armv7-M up to 120 MHz&lt;br /&gt;
| Armv7-M up to 120 MHz&lt;br /&gt;
| Armv8-M up to 200 MHz&lt;br /&gt;
| Armv8-M up to 200 MHz&lt;br /&gt;
|-&lt;br /&gt;
! GPU&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
|-&lt;br /&gt;
! APU&lt;br /&gt;
| N/A&lt;br /&gt;
| Optional DSP&lt;br /&gt;
| Optional DSP and TrustZone&lt;br /&gt;
| Optional DSP and TrustZone&lt;br /&gt;
|-&lt;br /&gt;
! RAM&lt;br /&gt;
| Up to 64MB&lt;br /&gt;
| Up to 64MB&lt;br /&gt;
| Up to 128MB&lt;br /&gt;
| Up to 128MB&lt;br /&gt;
|-&lt;br /&gt;
! Display&lt;br /&gt;
| External via SPI/I2C&lt;br /&gt;
| External via SPI/I2C&lt;br /&gt;
| External via SPI/I2C&lt;br /&gt;
| External via SPI/I2C&lt;br /&gt;
|-&lt;br /&gt;
! Ports&lt;br /&gt;
| SPI, I2C, UART, GPIO&lt;br /&gt;
| SPI, I2C, UART, GPIO&lt;br /&gt;
| SPI, I2C, UART, GPIO&lt;br /&gt;
| SPI, I2C, UART, GPIO&lt;br /&gt;
|-&lt;br /&gt;
! Storage Options&lt;br /&gt;
| Up to 1MB Flash Memory, SD, NAND, NOR&lt;br /&gt;
| Up to 1MB Flash Memory, SD, NAND, NOR&lt;br /&gt;
| Up to 1MB Flash Memory, SD, NAND, NOR&lt;br /&gt;
| Up to 1MB Flash Memory, SD, NAND, NOR&lt;br /&gt;
|-&lt;br /&gt;
! Network&lt;br /&gt;
| External Modules, SPI, I2C&lt;br /&gt;
| External Modules, SPI, I2C&lt;br /&gt;
| External Modules, SPI, I2C&lt;br /&gt;
| External Modules, SPI, I2C&lt;br /&gt;
|-&lt;br /&gt;
! Power&lt;br /&gt;
| Approx. 0.001 W&lt;br /&gt;
| Approx. 0.001 W&lt;br /&gt;
| Approx. 0.0015 W&lt;br /&gt;
| Approx. 0.0015 W&lt;br /&gt;
|-&lt;br /&gt;
! OS Support&lt;br /&gt;
| FreeRTOS, Zephyr&lt;br /&gt;
| FreeRTOS, Zephyr&lt;br /&gt;
| FreeRTOS, Zephyr&lt;br /&gt;
| FreeRTOS, Zephyr&lt;br /&gt;
|-&lt;br /&gt;
! Price Range&lt;br /&gt;
| $1-$3&lt;br /&gt;
| $1-$5&lt;br /&gt;
| $1-$5&lt;br /&gt;
| $2-$6&lt;br /&gt;
|-&lt;br /&gt;
! Documentation and Source code&lt;br /&gt;
| Documentation: [https://developer.arm.com/documentation/ddi0337/latest/ Cortex-M3 Technical Reference Manual]&lt;br /&gt;
&lt;br /&gt;
Github: [https://github.com/ARM-software/CMSIS_5 CMSIS_5 GitHub]&lt;br /&gt;
| Documentation: [https://developer.arm.com/documentation/ddi0439/b/Introduction/Product-documentation/Documentation Cortex-M4 Technical Reference Manual]&lt;br /&gt;
&lt;br /&gt;
Github: [https://github.com/ARM-software/CMSIS_5 CMSIS_5 GitHub]&lt;br /&gt;
| Documentation: [https://developer.arm.com/documentation/100230/latest/ Arm Cortex-M33 Processor Technical Reference Manual]&lt;br /&gt;
&lt;br /&gt;
Github: [https://github.com/ARM-software/CMSIS_5 CMSIS_5 GitHub]&lt;br /&gt;
| Documentation: [https://developer.arm.com/Processors/Cortex-M35P Cortex-M35P]&lt;br /&gt;
&lt;br /&gt;
Github: [https://github.com/ARM-software/CMSIS_5 CMSIS_5 GitHub]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ Arm Cortex-M Series Specifications (High-Performance Models)&lt;br /&gt;
! Model !! Cortex-M55 !! Cortex-M7&lt;br /&gt;
|-&lt;br /&gt;
! CPU&lt;br /&gt;
| Armv8.1-M up to 250 MHz&lt;br /&gt;
| Armv7E-M up to 600 MHz&lt;br /&gt;
|-&lt;br /&gt;
! GPU&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
|-&lt;br /&gt;
! APU&lt;br /&gt;
| Optional Helium vector processing&lt;br /&gt;
| Optional DSP&lt;br /&gt;
|-&lt;br /&gt;
! RAM&lt;br /&gt;
| Up to 256MB&lt;br /&gt;
| Up to 512MB&lt;br /&gt;
|-&lt;br /&gt;
! Display&lt;br /&gt;
| External via SPI/I2C&lt;br /&gt;
| External via SPI/I2C&lt;br /&gt;
|-&lt;br /&gt;
! Ports&lt;br /&gt;
| SPI, I2C, UART, GPIO&lt;br /&gt;
| SPI, I2C, UART, GPIO&lt;br /&gt;
|-&lt;br /&gt;
! Storage Options&lt;br /&gt;
| Up to 2MB Flash memory, SD, NAND, NOR&lt;br /&gt;
| Up to 2MB Flash memory, SD, NAND, NOR&lt;br /&gt;
|-&lt;br /&gt;
! Network&lt;br /&gt;
| External Modules, SPI, I2C&lt;br /&gt;
| External Modules, SPI, I2C&lt;br /&gt;
|-&lt;br /&gt;
! Power&lt;br /&gt;
| Approx. 0.002 W&lt;br /&gt;
| Approx. 0.003 W&lt;br /&gt;
|-&lt;br /&gt;
! OS Support&lt;br /&gt;
| FreeRTOS, Zephyr&lt;br /&gt;
| FreeRTOS, Zephyr&lt;br /&gt;
|-&lt;br /&gt;
! Price Range&lt;br /&gt;
| $2-$10&lt;br /&gt;
| $5-$20&lt;br /&gt;
|-&lt;br /&gt;
! Documentation and Source code&lt;br /&gt;
| Documentation: [https://developer.arm.com/documentation/101051/latest/ Arm Cortex-M55 Processor Technical Reference Manual]&lt;br /&gt;
&lt;br /&gt;
Github: [https://github.com/ARM-software/CMSIS_5 CMSIS_5 GitHub]&lt;br /&gt;
| Documentation: [https://developer.arm.com/documentation/ddi0489/f/introduction/documentation Arm Cortex-M7 Processor Technical Reference Manual r1p2]&lt;br /&gt;
&lt;br /&gt;
Github: [https://github.com/ARM-software/CMSIS_5 CMSIS_5 GitHub]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Why is Arm Cortex-M Series Popular? ====&lt;br /&gt;
The Arm Cortex-M Series is popular because of its excellent balance of low power consumption, high performance, scalability, integrated peripherals, and vast development tools and software support. The series ranges from the cost-effective Cortex-M0 to the high-performance Cortex-M7.&lt;br /&gt;
&lt;br /&gt;
=== Arduino ===&lt;br /&gt;
An open-source electronics platform based on easy-to-use hardware and software.&lt;br /&gt;
&lt;br /&gt;
==== Pros ====&lt;br /&gt;
* Easy to use&lt;br /&gt;
* Low cost&lt;br /&gt;
* Open source&lt;br /&gt;
* Free software&lt;br /&gt;
&lt;br /&gt;
Arduino is known for its ease of use and strong community support, making it ideal for beginners and hobbyists because of its user-friendly development tool, the Arduino IDE. It also supports a variety of microcontroller boards, including AVR, ARM, and ESP32. Arduino has a large community that provides ample tutorials, libraries, and forums, making it easy to find support and resources.&lt;br /&gt;
&lt;br /&gt;
==== Cons ====&lt;br /&gt;
* Limited processing power&lt;br /&gt;
* Limited Communication&lt;br /&gt;
* Limited Security&lt;br /&gt;
&lt;br /&gt;
Older boards like the Arduino Uno have limited processing power and memory, making it difficult for applications like AI or machine learning. Arduino boards are great for simple tasks and prototypes, but more advanced users may find the lack of features and processing power a blocker for larger and more demanding applications. Its power consumption is also relatively high compared to ESP32 or Arm Cortex-M series processors.&lt;br /&gt;
&lt;br /&gt;
==== Applications ====&lt;br /&gt;
* Home automation&lt;br /&gt;
* Projects/Thesis&lt;br /&gt;
&lt;br /&gt;
==== Models ====&lt;br /&gt;
* Arduino Nano&lt;br /&gt;
* Arduino MKR&lt;br /&gt;
* Arduino UNO Series&lt;br /&gt;
* Arduino Micro&lt;br /&gt;
* Arduino Zero&lt;br /&gt;
* Arduino Mega Series&lt;br /&gt;
&lt;br /&gt;
==== Specifications ====&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ Arduino Specifications&lt;br /&gt;
! Model !! Arduino Nano !! Arduino MKR !! Arduino UNO Series !! Arduino Micro !! Arduino Zero !! Arduino Mega&lt;br /&gt;
|-&lt;br /&gt;
! CPU&lt;br /&gt;
| ATMega328P 16MHz&lt;br /&gt;
| SAMD21 Cortex-M0+ 48MHz&lt;br /&gt;
| ATMega328P 16MHz&lt;br /&gt;
| ATMega32U4 16MHz&lt;br /&gt;
| SAMD21 Cortex-M0+ 48MHz&lt;br /&gt;
| ATmega2560 16MHz&lt;br /&gt;
|-&lt;br /&gt;
! GPU&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
|-&lt;br /&gt;
! APU&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
|-&lt;br /&gt;
! RAM&lt;br /&gt;
| 2KB SRAM&lt;br /&gt;
| 32KB SRAM&lt;br /&gt;
| 2KB SRAM&lt;br /&gt;
| 2.5KB SRAM&lt;br /&gt;
| 32KB SRAM&lt;br /&gt;
| 8KB SRAM&lt;br /&gt;
|-&lt;br /&gt;
! Display&lt;br /&gt;
| External via SPI/I2C/UART&lt;br /&gt;
| External via SPI/I2C/UART&lt;br /&gt;
| External via SPI/I2C/UART&lt;br /&gt;
| External via SPI/I2C/UART&lt;br /&gt;
| External via SPI/I2C/UART&lt;br /&gt;
| External via SPI/I2C/UART&lt;br /&gt;
|-&lt;br /&gt;
! Ports&lt;br /&gt;
| Digital GPIO (6 PWM, 8 Analog)&lt;br /&gt;
| Digital GPIO (4 PWM, 7 Analog)&lt;br /&gt;
| Digital GPIO (6 PWM, 6 Analog)&lt;br /&gt;
| Digital GPIO (7 PWM, 12 Analog)&lt;br /&gt;
| Digital GPIO (12 PWM, 6 Analog)&lt;br /&gt;
| Digital GPIO (16 PWM, 16 Analog)&lt;br /&gt;
|-&lt;br /&gt;
! Storage Options&lt;br /&gt;
| 32 KB Flash Memory&lt;br /&gt;
| 256 KB Flash Memory&lt;br /&gt;
| 32 KB Flash Memory&lt;br /&gt;
| 32 KB Flash Memory&lt;br /&gt;
| 256 KB Flash Memory&lt;br /&gt;
| 256 KB Flash Memory&lt;br /&gt;
|-&lt;br /&gt;
! Network&lt;br /&gt;
| N/A&lt;br /&gt;
| Wi-Fi, Ethernet&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
| External via compatible shields&lt;br /&gt;
| External via compatible shields&lt;br /&gt;
|-&lt;br /&gt;
! Power&lt;br /&gt;
| 19mW&lt;br /&gt;
| 75mW&lt;br /&gt;
| 25mW&lt;br /&gt;
| 25mW&lt;br /&gt;
| 75mW&lt;br /&gt;
| 25mW&lt;br /&gt;
|-&lt;br /&gt;
! OS Support&lt;br /&gt;
| Windows, Linux, macOS&lt;br /&gt;
| Windows, Linux, macOS&lt;br /&gt;
| Windows, Linux, macOS&lt;br /&gt;
| Windows, Linux, macOS&lt;br /&gt;
| Windows, Linux, macOS&lt;br /&gt;
| Windows, Linux, macOS&lt;br /&gt;
|-&lt;br /&gt;
! Price Range&lt;br /&gt;
| $8-$12&lt;br /&gt;
| $15-$30&lt;br /&gt;
| $20-$30&lt;br /&gt;
| $20-$25&lt;br /&gt;
| $20-$25&lt;br /&gt;
| $35-$50&lt;br /&gt;
|-&lt;br /&gt;
! Documentation and Source Code&lt;br /&gt;
| Documentation: [https://docs.arduino.cc/hardware/nano Arduino Nano]  &lt;br /&gt;
&lt;br /&gt;
Source Code(s): [https://create.arduino.cc/projecthub Arduino Project Hub]  &lt;br /&gt;
&lt;br /&gt;
GitHub: [https://github.com/arduino-libraries Arduino Libraries]&lt;br /&gt;
| Documentation: [https://docs.arduino.cc/hardware/mkr-family Arduino MKR Family]  &lt;br /&gt;
&lt;br /&gt;
Source Code(s): [https://create.arduino.cc/projecthub Arduino Project Hub]  &lt;br /&gt;
&lt;br /&gt;
GitHub: [https://github.com/arduino-libraries Arduino Libraries]&lt;br /&gt;
| Documentation: [https://docs.arduino.cc/hardware/uno Getting Started with Arduino UNO]  &lt;br /&gt;
&lt;br /&gt;
Source Code(s): [https://create.arduino.cc/projecthub Arduino Project Hub]  &lt;br /&gt;
&lt;br /&gt;
GitHub: [https://github.com/arduino-libraries Arduino Libraries]&lt;br /&gt;
| Documentation: [https://docs.arduino.cc/hardware/micro Arduino Micro]  &lt;br /&gt;
&lt;br /&gt;
Source Code(s): [https://create.arduino.cc/projecthub Arduino Project Hub]  &lt;br /&gt;
&lt;br /&gt;
GitHub: [https://github.com/arduino-libraries Arduino Libraries]&lt;br /&gt;
| Documentation: [https://docs.arduino.cc/hardware/zero Arduino Zero]  &lt;br /&gt;
&lt;br /&gt;
Source Code(s): [https://create.arduino.cc/projecthub Arduino Project Hub]  &lt;br /&gt;
&lt;br /&gt;
GitHub: [https://github.com/arduino-libraries Arduino Libraries]&lt;br /&gt;
| Documentation: [https://docs.arduino.cc/hardware/mega-2560 Arduino Mega 2560]  &lt;br /&gt;
&lt;br /&gt;
Source Code(s): [https://create.arduino.cc/projecthub Arduino Project Hub]  &lt;br /&gt;
&lt;br /&gt;
GitHub: [https://github.com/arduino-libraries Arduino Libraries]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Why is Arduino popular? ====&lt;br /&gt;
Arduino is popular because of its open-source electronics platform that is easy to use and has a large community of users. It has an easy-to-use, user-friendly IDE. It is affordable and has a broad range of compatible components, making it a leader in DIY electronics, education, and rapid prototyping.&lt;br /&gt;
&lt;br /&gt;
=== NXP i.MX Series ===&lt;br /&gt;
A family of NXP proprietary microprocessors dedicated to multimedia applications based on the ARM architecture.&lt;br /&gt;
&lt;br /&gt;
==== Pros ====&lt;br /&gt;
* Security&lt;br /&gt;
* Energy efficient&lt;br /&gt;
* SoC devices&lt;br /&gt;
&lt;br /&gt;
The NXP i.MX Series offers performance versatility, with different models targeting various market segments. They come with Arm Cortex-A series cores, GPU, and DSP for enhanced performance in multimedia and machine learning. They also include wireless options, including Wi-Fi, Ethernet, Bluetooth, and 5G in some models. The NXP i.MX series also supports a wide development ecosystem, including Yocto and Linux SDKs, for custom applications.&lt;br /&gt;
&lt;br /&gt;
==== Cons ====&lt;br /&gt;
* LPDDR4 devices&lt;br /&gt;
* Cost&lt;br /&gt;
&lt;br /&gt;
In more advanced models of the NXP i.MX series, relatively high power consumption may not be suitable for ultra-low power devices. It may be overkill for simpler tasks. It has a high learning curve for beginners compared to more straightforward platforms like Arduino or Raspberry Pi. Its price also tends to be on the higher side, making them less suitable for cost-sensitive projects.&lt;br /&gt;
&lt;br /&gt;
==== Applications ====&lt;br /&gt;
* Industrial IoT&lt;br /&gt;
* Multimedia&lt;br /&gt;
&lt;br /&gt;
==== Models ====&lt;br /&gt;
* i.MX RT Series&lt;br /&gt;
* i.MX 9 Series&lt;br /&gt;
* i.MX 8 Series&lt;br /&gt;
* i.MX 7 Series&lt;br /&gt;
* i.MX 6 Series&lt;br /&gt;
* i.MX 28 Series&lt;br /&gt;
&lt;br /&gt;
==== Specifications ====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ NXP i.MX Series Specifications&lt;br /&gt;
! Model !! i.MX RT Series !! i.MX 9 Series !! i.MX 8 Series !! i.MX 7 Series !! i.MX 6 Series !! i.MX 28 Series&lt;br /&gt;
|-&lt;br /&gt;
! CPU&lt;br /&gt;
| Arm Cortex-M7/M33 up to 1 GHz&lt;br /&gt;
| Arm Cortex-A55/A32 up to 2.2 GHz&lt;br /&gt;
| Arm Cortex-A72/A53 up to 1.8 GHz&lt;br /&gt;
| Arm Cortex-A7 up to 1 GHz&lt;br /&gt;
| Arm Cortex-A9, up to single to quad-core, up to 1.2 GHz&lt;br /&gt;
| Arm926EJ-S, up to 454 MHz&lt;br /&gt;
|-&lt;br /&gt;
! GPU&lt;br /&gt;
| N/A&lt;br /&gt;
| Vivante GC7000UL, Vulkan&lt;br /&gt;
| Vivante GC7000XS, OpenGL ES, Vulkan&lt;br /&gt;
| N/A&lt;br /&gt;
| Vivante GC880/GC2000 OpenGL ES 2.0&lt;br /&gt;
| N/A&lt;br /&gt;
|-&lt;br /&gt;
! APU&lt;br /&gt;
| N/A&lt;br /&gt;
| Neural Processing Unit (NPU)&lt;br /&gt;
| Integrated DSP, NPU&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
|-&lt;br /&gt;
! RAM&lt;br /&gt;
| External RAM via interfaces&lt;br /&gt;
| Up to 8 GB DDR4/LPDDR4&lt;br /&gt;
| Up to 8 GB DDR4/LPDDR4&lt;br /&gt;
| Up to 2 GB DDR3/LPDDR3&lt;br /&gt;
| Up to 4 GB DDR3/LPDDR2&lt;br /&gt;
| Up to 128MB DDR2&lt;br /&gt;
|-&lt;br /&gt;
! Display&lt;br /&gt;
| External via interface SPI/I2C&lt;br /&gt;
| Up to 3 4K UHD displays&lt;br /&gt;
| 4K UHD display&lt;br /&gt;
| External via interface&lt;br /&gt;
| Up to 1080p HD display&lt;br /&gt;
| 24-bit LCD Controller&lt;br /&gt;
|-&lt;br /&gt;
! Ports&lt;br /&gt;
| SPI, I2C, UART, USB&lt;br /&gt;
| SPI, I2C, PCIe, CAN, USB 3.0&lt;br /&gt;
| I2C, PCIe, CAN, USB 3.0&lt;br /&gt;
| SPI, I2C, USB 2.0&lt;br /&gt;
| USB 2.0, SPI, I2C, UART, PCIe, SATA&lt;br /&gt;
| USB 2.0, SPI, I2C, UART&lt;br /&gt;
|-&lt;br /&gt;
! Storage Options&lt;br /&gt;
| External Flash NOR/NAND&lt;br /&gt;
| eMMC, SD, UFS&lt;br /&gt;
| eMMC, SD, NAND, NOR&lt;br /&gt;
| eMMC, SD, NAND&lt;br /&gt;
| eMMC, SD, NAND, NOR&lt;br /&gt;
| SD, NAND, NOR&lt;br /&gt;
|-&lt;br /&gt;
! Network&lt;br /&gt;
| Ethernet, External Wi-Fi modules&lt;br /&gt;
| Ethernet, Wi-Fi, 5G&lt;br /&gt;
| Ethernet, Wi-Fi, Bluetooth&lt;br /&gt;
| Ethernet, External Wi-Fi modules&lt;br /&gt;
| Ethernet, Wi-Fi via external modules&lt;br /&gt;
| Ethernet, Wi-Fi via external modules&lt;br /&gt;
|-&lt;br /&gt;
! Power&lt;br /&gt;
| 50mW-500mW&lt;br /&gt;
| 500mW-1.5W&lt;br /&gt;
| 1W-3W&lt;br /&gt;
| 200mW-500mW&lt;br /&gt;
| 1W-3W&lt;br /&gt;
| 500mW-1W&lt;br /&gt;
|-&lt;br /&gt;
! OS Support&lt;br /&gt;
| FreeRTOS, Zephyr, Linux distros (Yocto, Ubuntu, etc.)&lt;br /&gt;
| Android, FreeRTOS, Zephyr, Linux distros (Yocto, Ubuntu, etc.)&lt;br /&gt;
| Android, FreeRTOS, Zephyr, Linux distros (Yocto, Ubuntu, etc.)&lt;br /&gt;
| FreeRTOS, Zephyr, Linux distros (Yocto, Ubuntu, etc.)&lt;br /&gt;
| Linux distros (Yocto, Ubuntu, etc.), Android&lt;br /&gt;
| Linux distros (Yocto, Ubuntu, etc.), Windows CE&lt;br /&gt;
|-&lt;br /&gt;
! Price Range&lt;br /&gt;
| $2-$15&lt;br /&gt;
| $20-$50&lt;br /&gt;
| $15-$100&lt;br /&gt;
| $8-$30&lt;br /&gt;
| $10-$50&lt;br /&gt;
| $5-$15&lt;br /&gt;
|-&lt;br /&gt;
! Documentation and Source Code&lt;br /&gt;
| Documentation: [https://www.nxp.com/docs/en/fact-sheet/IMXRT1050FS.pdf i.MX RT Series Brochure]  &lt;br /&gt;
&lt;br /&gt;
SDK: [https://community.nxp.com MCUXpresso SDK Builder]  &lt;br /&gt;
&lt;br /&gt;
GitHub: [https://github.com/nxp-imx nxp-imx]&lt;br /&gt;
| Documentation: [https://www.nxp.com/docs/en/fact-sheet/IMX9.pdf i.MX 9 Applications Processors]  &lt;br /&gt;
&lt;br /&gt;
SDK: [https://community.nxp.com MCUXpresso SDK Builder]  &lt;br /&gt;
&lt;br /&gt;
GitHub: [https://github.com/nxp-imx nxp-imx]&lt;br /&gt;
| Documentation: [https://www.nxp.com/docs/en/brochure/IMX8SERAPPBR.pdf i.MX 8 Series Applications Processors]  &lt;br /&gt;
&lt;br /&gt;
SDK: [https://community.nxp.com MCUXpresso SDK Builder]  &lt;br /&gt;
&lt;br /&gt;
GitHub: [https://github.com/nxp-imx nxp-imx]&lt;br /&gt;
| Documentation: [https://www.nxp.com/docs/en/fact-sheet/IMX7.pdf i.MX 7 Series Applications Processors]  &lt;br /&gt;
&lt;br /&gt;
SDK: [https://community.nxp.com MCUXpresso SDK Builder]  &lt;br /&gt;
&lt;br /&gt;
GitHub: [https://github.com/nxp-imx nxp-imx]&lt;br /&gt;
| Documentation: [https://www.nxp.com/docs/en/fact-sheet/IMX6.pdf i.MX 6 Series Applications Processors]  &lt;br /&gt;
&lt;br /&gt;
SDK: [https://community.nxp.com MCUXpresso SDK Builder]  &lt;br /&gt;
&lt;br /&gt;
GitHub: [https://github.com/nxp-imx nxp-imx]&lt;br /&gt;
| Documentation: [https://www.nxp.com/docs/en/fact-sheet/IMX28.pdf i.MX 28 Series Applications Processors]  &lt;br /&gt;
&lt;br /&gt;
SDK: [https://community.nxp.com MCUXpresso SDK Builder]  &lt;br /&gt;
&lt;br /&gt;
GitHub: [https://github.com/nxp-imx nxp-imx]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Why is NXP i.MX Series Popular? ====&lt;br /&gt;
NXP i.MX Series is popular because of its combination of high-performance processing power, energy efficiency, and flexibility. It is ideal for a wide range of embedded applications such as automotive, industrial, IoT, and consumer electronics. With a broad selection of models, from entry-level to high-end, i.MX caters to various performance and feature needs.&lt;br /&gt;
&lt;br /&gt;
== Comparison Table ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Platform !! Processor !! Performance !! Power Consumption !! Connectivity !! Ecosystem &amp;amp; Tools !! Applications !! Price&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Raspberry Pi&#039;&#039;&#039; || Broadcom SoC (ARM) || High || Medium || Wi-Fi, Ethernet, BT || Linux-based tools, GPIO support || IoT, edge computing, AI/ML || Low&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;NVIDIA Jetson&#039;&#039;&#039; || NVIDIA GPUs with ARM CPU || Very High || High || Wi-Fi, Ethernet || CUDA, TensorRT, Linux tools || AI/ML, robotics, video analytics || High&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;ESP32&#039;&#039;&#039; || Xtensa cores || Medium || Ultra-low || Wi-Fi, BLE || ESP-IDF, Arduino-compatible || IoT, smart home, wearable devices || Very Low&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Texas Instruments Sitara&#039;&#039;&#039; || MSP430 (low-power), Sitara (ARM Cortex-A) || Low to High || Ultra-low (MSP430) / Medium (Sitara) || Ethernet, CAN || Code Composer Studio, RTOS || Energy meters, medical, industrial || Low to Medium&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Qualcomm Snapdragon&#039;&#039;&#039; || ARM Cortex + DSP + AI || Very High || Medium || Wi-Fi, LTE, 5G || Android/Linux SDKs || Smart cameras, robotics, AR/VR || High&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Intel Atom Processors&#039;&#039;&#039; || x86/x86-64 CPU || Low to Medium || Ultra-low || Wi-Fi, Ethernet, BT || Intel SDKs, Linux-based tools || Edge computing, media, IoT || Medium to High&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Microchip PIC Microcontrollers&#039;&#039;&#039; || PIC32, PIC16, PIC18 (varied) || Low to Medium || Ultra-low || SPI, I2C, UART, CAN, etc. || MPLAB X IDE, Microchip Studio || Consumer electronics, automotive, industrial || Very Low&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;STMicroelectronics STM32 Series&#039;&#039;&#039; || ARM Cortex-M cores || Medium to High || Low || Optional (Wi-Fi, BLE) || STM32Cube, HAL libraries || Industrial control, robotics || Low to Medium&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Renesas RX/RL78&#039;&#039;&#039; || RX (32-bit), RL78 (16-bit) || Low to Medium || Very Low || Optional || e2 Studio, Renesas Synergy || Automotive ECUs, home appliances || Low&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;ARM Cortex-M Series&#039;&#039;&#039; || ARM Cortex-M (varied) || Medium to High || Low to Very Low || Varies by vendor || Rich ecosystem, widely supported || IoT, industrial, automotive || Low to Medium&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Arduino&#039;&#039;&#039; || AVR, SAM (ARM Cortex-M), others || Low to Medium || Low to Ultra-low || Optional (Wi-Fi), BLE || Arduino IDE || Prototyping, IoT, Robotics || Very Low&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;NXP i.MX Series&#039;&#039;&#039; || ARM Cortex-A (varied) || Medium to Very High || Medium || Ethernet, Wi-Fi, Bluetooth || Yocto, Linux SDKs, FreeRTOS || Industrial, IoT, Multimedia, Automotive || Medium to High&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Key Points ==&lt;br /&gt;
&lt;br /&gt;
=== Performance ===&lt;br /&gt;
* High-performance platforms like &#039;&#039;&#039;NVIDIA Jetson&#039;&#039;&#039;, &#039;&#039;&#039;Qualcomm Snapdragon&#039;&#039;&#039;, and &#039;&#039;&#039;NXP i.MX Series&#039;&#039;&#039; excel in AI/ML, robotics, and multimedia applications.&lt;br /&gt;
* &#039;&#039;&#039;Raspberry Pi&#039;&#039;&#039; and &#039;&#039;&#039;ESP32&#039;&#039;&#039; offer solid performance for lighter tasks like IoT and edge computing.&lt;br /&gt;
* &#039;&#039;&#039;Texas Instruments Sitara&#039;&#039;&#039; and &#039;&#039;&#039;Microchip PIC Microcontrollers&#039;&#039;&#039; are better suited for low to medium performance tasks, such as embedded systems, energy meters, and automotive electronics.&lt;br /&gt;
&lt;br /&gt;
=== Power Consumption ===&lt;br /&gt;
* &#039;&#039;&#039;ESP32&#039;&#039;&#039;, &#039;&#039;&#039;Microchip PIC&#039;&#039;&#039;, and &#039;&#039;&#039;Renesas RX/RL78&#039;&#039;&#039; have ultra-low power consumption, making them ideal for battery-powered or low-energy applications.&lt;br /&gt;
* &#039;&#039;&#039;Raspberry Pi&#039;&#039;&#039; and &#039;&#039;&#039;Intel Atom Processors&#039;&#039;&#039; offer a balance of performance and power.&lt;br /&gt;
* &#039;&#039;&#039;NVIDIA Jetson&#039;&#039;&#039; and &#039;&#039;&#039;Qualcomm Snapdragon&#039;&#039;&#039; require higher power due to their advanced processing capabilities.&lt;br /&gt;
&lt;br /&gt;
=== Connectivity ===&lt;br /&gt;
* Most platforms offer &#039;&#039;&#039;Wi-Fi, Ethernet, and Bluetooth (BT)&#039;&#039;&#039; connectivity.&lt;br /&gt;
* &#039;&#039;&#039;Qualcomm Snapdragon&#039;&#039;&#039; and &#039;&#039;&#039;NXP i.MX Series&#039;&#039;&#039; extend this to &#039;&#039;&#039;LTE and 5G&#039;&#039;&#039;, making them suitable for more advanced, network-intensive applications.&lt;br /&gt;
&lt;br /&gt;
=== Community Support &amp;amp; Tools ===&lt;br /&gt;
* Platforms like &#039;&#039;&#039;Raspberry Pi&#039;&#039;&#039;, &#039;&#039;&#039;NVIDIA Jetson&#039;&#039;&#039;, and &#039;&#039;&#039;Qualcomm Snapdragon&#039;&#039;&#039; are supported by rich ecosystems and powerful development tools, including &#039;&#039;&#039;CUDA, TensorRT, and various SDKs&#039;&#039;&#039;.&lt;br /&gt;
* &#039;&#039;&#039;Arduino&#039;&#039;&#039;, &#039;&#039;&#039;Microchip PIC&#039;&#039;&#039;, and &#039;&#039;&#039;Texas Instruments Sitara&#039;&#039;&#039; also have strong ecosystems for embedded applications, though they may lack some of the high-performance AI tools available on more powerful platforms.&lt;br /&gt;
&lt;br /&gt;
=== Price ===&lt;br /&gt;
* Low-cost platforms like &#039;&#039;&#039;Raspberry Pi&#039;&#039;&#039;, &#039;&#039;&#039;ESP32&#039;&#039;&#039;, and &#039;&#039;&#039;Arduino&#039;&#039;&#039; are budget-friendly options for educational projects, hobbyists, and low-power IoT devices.&lt;br /&gt;
* Higher-end platforms such as &#039;&#039;&#039;NVIDIA Jetson&#039;&#039;&#039;, &#039;&#039;&#039;Qualcomm Snapdragon&#039;&#039;&#039;, and &#039;&#039;&#039;NXP i.MX Series&#039;&#039;&#039; are more expensive.&lt;br /&gt;
&lt;br /&gt;
== 🏗 Need a Solution for Your Project? ==&lt;br /&gt;
Are you looking for ways to:  &lt;br /&gt;
✅ Optimize your &#039;&#039;&#039;embedded system&#039;&#039;&#039; for better performance?  &lt;br /&gt;
✅ Integrate &#039;&#039;&#039;AI and computer vision&#039;&#039;&#039; into your products?  &lt;br /&gt;
✅ Improve &#039;&#039;&#039;multimedia processing&#039;&#039;&#039; for real-time applications?  &lt;br /&gt;
✅ Develop a &#039;&#039;&#039;robust and scalable&#039;&#039;&#039; web platform?  &lt;br /&gt;
&lt;br /&gt;
Our team has helped businesses across multiple industries solve these challenges.  &lt;br /&gt;
&lt;br /&gt;
📩 &#039;&#039;&#039;Let’s collaborate!&#039;&#039;&#039; Contact us at &#039;&#039;&#039;[support@proventusnova.com](mailto:support@proventusnova.com)&#039;&#039;&#039; or visit &#039;&#039;&#039;[ProventusNova.com](https://proventusnova.com)&#039;&#039;&#039; to discuss your project.&lt;/div&gt;</summary>
		<author><name>Sonni</name></author>
	</entry>
	<entry>
		<id>https://developerwiki.proventusnova.com/index.php?title=Main_Page&amp;diff=68</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="https://developerwiki.proventusnova.com/index.php?title=Main_Page&amp;diff=68"/>
		<updated>2025-03-11T08:30:26Z</updated>

		<summary type="html">&lt;p&gt;Sonni: /* 👀  Are you a PM looking to expand your knowledge in the software development industry? */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{DISPLAYTITLE:Home - ProventusNova DeveloperWiki}}&lt;br /&gt;
&lt;br /&gt;
= Welcome to the ProventusNova Developer Wiki =&lt;br /&gt;
&#039;&#039;&#039;Expert knowledge for Embedded Systems, AI, and Software Development.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Looking to build high-performance embedded systems, optimize AI models, or streamline multimedia processing? This wiki is a &#039;&#039;&#039;public knowledge hub&#039;&#039;&#039; designed to help engineers, developers, and businesses solve real-world technical challenges.  &lt;br /&gt;
&lt;br /&gt;
Here, you’ll find &#039;&#039;&#039;step-by-step tutorials, best practices, and deep technical insights&#039;&#039;&#039; to help you bring your projects to life.  &lt;br /&gt;
&lt;br /&gt;
== 🚀 What You’ll Find Here ==&lt;br /&gt;
* &#039;&#039;&#039;Hands-on Tutorials&#039;&#039;&#039; – Practical guides to get you started quickly.  &lt;br /&gt;
* &#039;&#039;&#039;Industry Best Practices&#039;&#039;&#039; – Proven workflows and methodologies.  &lt;br /&gt;
* &#039;&#039;&#039;Optimized Solutions&#039;&#039;&#039; – Performance tuning for embedded, AI, and multimedia applications.  &lt;br /&gt;
* &#039;&#039;&#039;Open-Source Resources&#039;&#039;&#039; – Code samples, frameworks, and tools to accelerate development.  &lt;br /&gt;
&lt;br /&gt;
Whether you&#039;re an individual developer, a startup, or an enterprise, you’ll find resources here to &#039;&#039;&#039;enhance your expertise and improve your products&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
== 💡 Featured Tutorials ==&lt;br /&gt;
🔧 **[Building a Custom Linux OS with Yocto](Yocto-Project-Tutorial)** – Tailor an operating system for your hardware.  &lt;br /&gt;
🤖 **[Deploying AI for Real-Time Video Analytics](AI-Video-Analytics)** – Use machine learning for intelligent decision-making.  &lt;br /&gt;
🎥 **[Optimizing GStreamer Pipelines](GStreamer-Optimization)** – Improve multimedia processing efficiency.  &lt;br /&gt;
🌐 **[Scaling Web Applications](Django-Web-Development)** – Design backends for performance and reliability.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&amp;lt;!-- For more topics, explore the **[[Tutorials Index]]**. --&amp;gt;&lt;br /&gt;
== ⚙️ Technical Resources ==&lt;br /&gt;
* [[Embedded Systems Development]] – BSPs, firmware, and real-time processing.&lt;br /&gt;
**To get to know Embedded Platforms, here is an overview of the top platforms in the market right now!&lt;br /&gt;
***[[Embedded Platforms]] - From Raspberry Pi to Nvidia Jetson, get to know these embedded platforms.&lt;br /&gt;
* [[AI &amp;amp; Computer Vision]] – Edge AI, model training, and deployment.&lt;br /&gt;
* [[GStreamer Development]] – High-performance video and audio streaming.&lt;br /&gt;
** [[GStreamer Fundamentals]] – Introduction, pipelines, elements, and data flow.&lt;br /&gt;
** [[GStreamer Daemon]] – Remote control of pipelines with JSON-RPC API.&lt;br /&gt;
** [[GStreamer Interpipes]] – Efficient multi-pipeline communication.&lt;br /&gt;
** [[GStreamer Application Development]] – Writing custom plugins and apps.&lt;br /&gt;
** [[GStreamer Best Practices]] – Performance optimization and debugging.&lt;br /&gt;
* [[Web &amp;amp; Cloud Solutions]] – Scalable, production-ready applications.&lt;br /&gt;
&lt;br /&gt;
== 👀  Are you a PM looking to expand your knowledge in the software development industry?==&lt;br /&gt;
This tutorial is for you!&lt;br /&gt;
Here, you&#039;ll explore essential concepts, from basic to intermediate, that will help you navigate technical discussions with engineers and clients more confidently&lt;br /&gt;
&lt;br /&gt;
📄&#039;&#039;&#039;[[Project Manager Tutorials]]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== 🏗 Need a Solution for Your Project? ==&lt;br /&gt;
Are you looking for ways to:  &lt;br /&gt;
✅ Optimize your &#039;&#039;&#039;embedded system&#039;&#039;&#039; for better performance?  &lt;br /&gt;
✅ Integrate &#039;&#039;&#039;AI and computer vision&#039;&#039;&#039; into your products?  &lt;br /&gt;
✅ Improve &#039;&#039;&#039;multimedia processing&#039;&#039;&#039; for real-time applications?  &lt;br /&gt;
✅ Develop a &#039;&#039;&#039;robust and scalable&#039;&#039;&#039; web platform?  &lt;br /&gt;
&lt;br /&gt;
Our team has helped businesses across multiple industries solve these challenges.  &lt;br /&gt;
&lt;br /&gt;
📩 &#039;&#039;&#039;Let’s collaborate!&#039;&#039;&#039; Contact us at &#039;&#039;&#039;[support@proventusnova.com](mailto:support@proventusnova.com)&#039;&#039;&#039; or visit &#039;&#039;&#039;[ProventusNova.com](https://proventusnova.com)&#039;&#039;&#039; to discuss your project.&lt;/div&gt;</summary>
		<author><name>Sonni</name></author>
	</entry>
	<entry>
		<id>https://developerwiki.proventusnova.com/index.php?title=GStreamer_Application_Development&amp;diff=67</id>
		<title>GStreamer Application Development</title>
		<link rel="alternate" type="text/html" href="https://developerwiki.proventusnova.com/index.php?title=GStreamer_Application_Development&amp;diff=67"/>
		<updated>2025-03-11T08:15:36Z</updated>

		<summary type="html">&lt;p&gt;Sonni: /* Frequently Asked Questions */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;width:100%; background-color:#f0f0f0;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Authors:&#039;&#039;&#039;&lt;br /&gt;
Sonni Lorenz F. Cubero (sonni.cubero@proventusnova.com)&lt;br /&gt;
&lt;br /&gt;
CJ Mirafuentes (cj.mirafuentes@proventusnova.com)&lt;br /&gt;
|| &#039;&#039;&#039;Date:&#039;&#039;&#039; March 10, 2025&lt;br /&gt;
|}&lt;br /&gt;
= GStreamer Application Development =&lt;br /&gt;
This page shows how to build gstreamer applications. &lt;br /&gt;
Gstreamer applications can be built on the following platforms:&lt;br /&gt;
* Linux&lt;br /&gt;
* Windows&lt;br /&gt;
* Android&lt;br /&gt;
* iOS&lt;br /&gt;
* macOS&lt;br /&gt;
&lt;br /&gt;
== Linux ==&lt;br /&gt;
Gstreamer is included in all Linux distributions. We recommend using the latest version of a fast-moving distribution such as Fedora, Ubuntu (non-LTS), Debian or OpenSuse to get a recentg Gstreamer release.&lt;br /&gt;
&lt;br /&gt;
=== Prerequisites ===&lt;br /&gt;
The following must be present in the Linux system.&lt;br /&gt;
&lt;br /&gt;
=== Compiler ===  &lt;br /&gt;
* GCC  &lt;br /&gt;
* Clang  &lt;br /&gt;
&lt;br /&gt;
=== Package Manager ===  &lt;br /&gt;
Any one of the following will do:&lt;br /&gt;
* apt  &lt;br /&gt;
* dnf  &lt;br /&gt;
* snap  &lt;br /&gt;
&lt;br /&gt;
=== Linux Build Environment === &lt;br /&gt;
The Linux build environment was emulated using &#039;&#039;&#039;VMware Workstation 17 Pro&#039;&#039;&#039; with the following specifications:  &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
| &#039;&#039;&#039;Operating System&#039;&#039;&#039;: || Ubuntu 24.04.1 LTS&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Processors&#039;&#039;&#039;: || Number of processors: 4 &lt;br /&gt;
Number of cores per processor: 1&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Memory&#039;&#039;&#039;: || 8GB&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Storage&#039;&#039;&#039;: || 30GB (Expandable)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Installing on Ubuntu/Debian ===&lt;br /&gt;
Run the following command:  &lt;br /&gt;
&lt;br /&gt;
 apt-get install libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev libgstreamer-plugins-bad1.0-dev gstreamer1.0-plugins-base gstreamer1.0-plugins-good gstreamer1.0-plugins-bad gstreamer1.0-plugins-ugly gstreamer1.0-libav gstreamer1.0-tools gstreamer1.0-x gstreamer1.0-alsa gstreamer1.0-gl gstreamer1.0-gtk3 gstreamer1.0-qt5 gstreamer1.0-pulseaudio&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039; Make sure you have root access to install.  &lt;br /&gt;
&lt;br /&gt;
=== Installing on Fedora ===&lt;br /&gt;
Run the following command:  &lt;br /&gt;
&lt;br /&gt;
 dnf install gstreamer1-devel gstreamer1-plugins-base-tools gstreamer1-doc gstreamer1-plugins-base-devel gstreamer1-plugins-good gstreamer1-plugins-good-extras gstreamer1-plugins-ugly gstreamer1-plugins-bad-free gstreamer1-plugins-bad-free-devel gstreamer1-plugins-bad-free-extras&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039; Make sure you have root access to install.  &lt;br /&gt;
&lt;br /&gt;
=== Building a GStreamer Application ===&lt;br /&gt;
Building GStreamer requires the gcc/clang compiler and a text editor. Run the following command to build an application using GStreamer:  &lt;br /&gt;
&lt;br /&gt;
 gcc [filename].c -o [output_file] `pkg-config --cflags --libs gstreamer-1.0`&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Running a GStreamer Application ===&lt;br /&gt;
To run the application, simply run the following command:  &lt;br /&gt;
&lt;br /&gt;
 ./[application_name]&lt;br /&gt;
&lt;br /&gt;
== Windows ==&lt;br /&gt;
&lt;br /&gt;
=== Prerequisites ===&lt;br /&gt;
To develop applications using GStreamer for Windows, it is recommended to use Windows 10 or newer (Windows 7 or 8 is also supported), with Microsoft Visual Studio 2019 or newer.&lt;br /&gt;
&lt;br /&gt;
Additionally, the runtime and development installers must be installed.  &lt;br /&gt;
&#039;&#039;&#039;[https://gstreamer.freedesktop.org/download/#windows Download Gstreamer]&#039;&#039;&#039;  &lt;br /&gt;
&lt;br /&gt;
=== Installing on Windows ===&lt;br /&gt;
Install the GStreamer Runtime and Development Installer. After installing GStreamer runtime and development, add its libraries and plugins to your environment variables.  &lt;br /&gt;
&lt;br /&gt;
Follow these steps to add them to your environment variables:&lt;br /&gt;
&lt;br /&gt;
# Open Environment Variables.&lt;br /&gt;
# In System Variables, scroll down to the &#039;&#039;&#039;Path&#039;&#039;&#039; variable and click &#039;&#039;&#039;Edit&#039;&#039;&#039;.&lt;br /&gt;
# Click &#039;&#039;&#039;New&#039;&#039;&#039;.&lt;br /&gt;
# Add the locations for the &#039;&#039;&#039;\bin&#039;&#039;&#039;, &#039;&#039;&#039;\lib&#039;&#039;&#039;, &#039;&#039;&#039;\include&#039;&#039;&#039;, and &#039;&#039;&#039;\gstreamer-1.0&#039;&#039;&#039; directories.&lt;br /&gt;
&lt;br /&gt;
If you have the &#039;&#039;&#039;32-bit&#039;&#039;&#039; version installed, add the following paths to your System Variables:&lt;br /&gt;
&lt;br /&gt;
*C:\gstreamer\1.0\msvc_x86\bin&lt;br /&gt;
*C:\gstreamer\1.0\msvc_x86\lib&lt;br /&gt;
*C:\gstreamer\1.0\msvc_x86\lib\gstreamer-1.0&lt;br /&gt;
*C:\gstreamer\1.0\msvc_x86\include&lt;br /&gt;
&lt;br /&gt;
If you have the &#039;&#039;&#039;64-bit&#039;&#039;&#039; version installed, add the following paths to your System Variables:&lt;br /&gt;
&lt;br /&gt;
*C:\gstreamer\1.0\msvc_x86_64\bin&lt;br /&gt;
*C:\gstreamer\1.0\msvc_x86_64\lib&lt;br /&gt;
*C:\gstreamer\1.0\msvc_x86_64\lib\gstreamer-1.0&lt;br /&gt;
*C:\gstreamer\1.0\msvc_x86_64\include&lt;br /&gt;
&lt;br /&gt;
=== Building and Running a GStreamer Application ===&lt;br /&gt;
&lt;br /&gt;
This build was done with a 64-bit runtime and development GStreamer.  &lt;br /&gt;
&lt;br /&gt;
To build a GStreamer project, follow these steps:&lt;br /&gt;
&lt;br /&gt;
1 .Open &#039;&#039;&#039;Visual Studio&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
2. Click &#039;&#039;&#039;Create a new project&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
3. Select either &#039;&#039;&#039;Empty Project&#039;&#039;&#039; or &#039;&#039;&#039;Console App&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
.4 After selecting your project, set up the libraries and dependencies.&lt;br /&gt;
&lt;br /&gt;
5. In &#039;&#039;&#039;Solution Explorer&#039;&#039;&#039;, right-click on the project and select &#039;&#039;&#039;Properties&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
6. Go to &#039;&#039;&#039;C/C++&#039;&#039;&#039; → &#039;&#039;&#039;General&#039;&#039;&#039; → &#039;&#039;&#039;Additional Include Directories&#039;&#039;&#039; → Click &#039;&#039;&#039;Edit&#039;&#039;&#039; and add the following paths:&lt;br /&gt;
 C:\gstreamer\1.0\msvc_x86_64\include\glib-2.0 &lt;br /&gt;
 C:\gstreamer\1.0\msvc_x86_64\include\gstreamer-1.0 &lt;br /&gt;
 C:\gstreamer\1.0\msvc_x86_64\include\gstreamer-1.0\gst &lt;br /&gt;
 C:\gstreamer\1.0\msvc_x86_64\include\glib-2.0\glib &lt;br /&gt;
 C:\gstreamer\1.0\msvc_x86_64\lib\glib-2.0\include &lt;br /&gt;
 C:\gstreamer\1.0\msvc_x86_64\include\glib-2.0\ &lt;br /&gt;
 C:\gstreamer\1.0\msvc_x86_64\lib\gstreamer-1.0 &lt;br /&gt;
 %(AdditionalIncludeDirectories)&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039; The directories may vary depending on where you installed the GStreamer runtime and development files.&lt;br /&gt;
&lt;br /&gt;
7. Next, go to &#039;&#039;&#039;Linker&#039;&#039;&#039; → &#039;&#039;&#039;General&#039;&#039;&#039; → &#039;&#039;&#039;Additional Library Directories&#039;&#039;&#039; → Click &#039;&#039;&#039;Edit&#039;&#039;&#039; and add the following paths:&lt;br /&gt;
 C:\gstreamer\1.0\msvc_x86_64\lib&lt;br /&gt;
 C:\gstreamer\1.0\msvc_x86_64\lib\gstreamer-1.0&lt;br /&gt;
 C:\gstreamer\1.0\msvc_x86_64\bin&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039; The directories may vary depending on where you installed the GStreamer runtime and development files.&lt;br /&gt;
&lt;br /&gt;
8. Next, go to &#039;&#039;&#039;Linker&#039;&#039;&#039; → &#039;&#039;&#039;Input&#039;&#039;&#039; → &#039;&#039;&#039;Additional Dependencies&#039;&#039;&#039; → Click &#039;&#039;&#039;Edit&#039;&#039;&#039; and add the following libraries:&lt;br /&gt;
 gobject-2.0.lib&lt;br /&gt;
 glib-2.0.lib&lt;br /&gt;
 gstreamer-1.0.lib&lt;br /&gt;
 kernel32.lib&lt;br /&gt;
 user32.lib&lt;br /&gt;
 gdi32.lib&lt;br /&gt;
 winspool.lib&lt;br /&gt;
 comdlg32.lib&lt;br /&gt;
 advapi32.lib&lt;br /&gt;
 shell32.lib&lt;br /&gt;
 ole32.lib&lt;br /&gt;
 oleaut32.lib&lt;br /&gt;
 uuid.lib&lt;br /&gt;
 odbc32.lib&lt;br /&gt;
 odbccp32.lib&lt;br /&gt;
 %(AdditionalDependencies)&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039; The directories may vary depending on where you installed the GStreamer runtime and development files.&lt;br /&gt;
&lt;br /&gt;
9. After setting up the Libraries and Dependencies, its time to build the project.&lt;br /&gt;
&lt;br /&gt;
10. In the toolbar, select Debut, then select either x32 or x64, then click the play button.&lt;br /&gt;
&lt;br /&gt;
11. After clicking, the project should build and now you have your first Gstreamer Project!&lt;br /&gt;
&lt;br /&gt;
= References =&lt;br /&gt;
* [https://gstreamer.freedesktop.org/documentation/application-development/introduction/gstreamer.html?gi-language=c GStreamer Introduction]&lt;br /&gt;
* [https://gstreamer.freedesktop.org/documentation/installing/building-from-source-using-meson.html?gi-language=c#basic-meson-and-ninja-usage Building GStreamer from Source (Meson &amp;amp; Ninja)]&lt;br /&gt;
* [https://gitlab.freedesktop.org/gstreamer/gstreamer/-/blob/main/README.md README.md - GStreamer GitLab]&lt;br /&gt;
* [https://developer.ridgerun.com/wiki/index.php/GStreamer_Daemon GStreamer Daemon - RidgeRun]&lt;br /&gt;
* [https://developer.ridgerun.com/wiki/index.php/GStreamer_Daemon_-_Building_GStreamer_Daemon Building GStreamer Daemon - RidgeRun]&lt;br /&gt;
* [https://developer.ridgerun.com/wiki/index.php?title=GstInterpipe GstInterpipe - RidgeRun Wiki]&lt;br /&gt;
* [https://stackoverflow.com/a/50756228 Stack Overflow Answer - GStreamer]&lt;br /&gt;
* [https://stackoverflow.com/a/73301549 Stack Overflow Answer - GStreamer]&lt;br /&gt;
&lt;br /&gt;
= Frequently Asked Questions (FAQ) =&lt;br /&gt;
&lt;br /&gt;
* What is GStreamer?&lt;br /&gt;
**GStreamer is an open-source multimedia framework used for creating media-handling components such as audio and video processing applications. It is widely used in media players, streaming applications, and multimedia frameworks.&lt;br /&gt;
* How do I install GStreamer on Linux?&lt;br /&gt;
**On Ubuntu/Debian, use the following command:&lt;br /&gt;
 #Ubuntu&lt;br /&gt;
 apt-get install libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev libgstreamer-plugins-bad1.0-dev gstreamer1.0-plugins-base gstreamer1.0-plugins-good gstreamer1.0-plugins-bad gstreamer1.0-plugins-ugly gstreamer1.0-libav gstreamer1.0-tools gstreamer1.0-x gstreamer1.0-alsa gstreamer1.0-gl gstreamer1.0-gtk3 gstreamer1.0-qt5 gstreamer1.0-pulseaudio&lt;br /&gt;
 &lt;br /&gt;
 #Debian&lt;br /&gt;
 dnf install gstreamer1-devel gstreamer1-plugins-base-tools gstreamer1-doc gstreamer1-plugins-base-devel gstreamer1-plugins-good gstreamer1-plugins-good-extras gstreamer1-plugins-ugly gstreamer1-plugins-bad-free gstreamer1-plugins-bad-free-devel gstreamer1-plugins-bad-free-extras&lt;br /&gt;
&lt;br /&gt;
* How do I install GStreamer on Windows?&lt;br /&gt;
**Download the GStreamer Runtime and Development Installer from the official website: [https://gstreamer.freedesktop.org/download/#windows GStreamer Download]&lt;br /&gt;
&lt;br /&gt;
= 🏗 Need a Solution for Your Project? =&lt;br /&gt;
Are you looking for ways to:  &lt;br /&gt;
✅ Optimize your &#039;&#039;&#039;embedded system&#039;&#039;&#039; for better performance?  &lt;br /&gt;
✅ Integrate &#039;&#039;&#039;AI and computer vision&#039;&#039;&#039; into your products?  &lt;br /&gt;
✅ Improve &#039;&#039;&#039;multimedia processing&#039;&#039;&#039; for real-time applications?  &lt;br /&gt;
✅ Develop a &#039;&#039;&#039;robust and scalable&#039;&#039;&#039; web platform?  &lt;br /&gt;
&lt;br /&gt;
Our team has helped businesses across multiple industries solve these challenges.  &lt;br /&gt;
&lt;br /&gt;
📩 &#039;&#039;&#039;Let’s collaborate!&#039;&#039;&#039; Contact us at &#039;&#039;&#039;[support@proventusnova.com](mailto:support@proventusnova.com)&#039;&#039;&#039; or visit &#039;&#039;&#039;[ProventusNova.com](https://proventusnova.com)&#039;&#039;&#039; to discuss your project. --&amp;gt;&lt;/div&gt;</summary>
		<author><name>Sonni</name></author>
	</entry>
	<entry>
		<id>https://developerwiki.proventusnova.com/index.php?title=Main_Page&amp;diff=66</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="https://developerwiki.proventusnova.com/index.php?title=Main_Page&amp;diff=66"/>
		<updated>2025-03-11T08:13:57Z</updated>

		<summary type="html">&lt;p&gt;Sonni: Add Embedded Platforms description&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{DISPLAYTITLE:Home - ProventusNova DeveloperWiki}}&lt;br /&gt;
&lt;br /&gt;
= Welcome to the ProventusNova Developer Wiki =&lt;br /&gt;
&#039;&#039;&#039;Expert knowledge for Embedded Systems, AI, and Software Development.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Looking to build high-performance embedded systems, optimize AI models, or streamline multimedia processing? This wiki is a &#039;&#039;&#039;public knowledge hub&#039;&#039;&#039; designed to help engineers, developers, and businesses solve real-world technical challenges.  &lt;br /&gt;
&lt;br /&gt;
Here, you’ll find &#039;&#039;&#039;step-by-step tutorials, best practices, and deep technical insights&#039;&#039;&#039; to help you bring your projects to life.  &lt;br /&gt;
&lt;br /&gt;
== 🚀 What You’ll Find Here ==&lt;br /&gt;
* &#039;&#039;&#039;Hands-on Tutorials&#039;&#039;&#039; – Practical guides to get you started quickly.  &lt;br /&gt;
* &#039;&#039;&#039;Industry Best Practices&#039;&#039;&#039; – Proven workflows and methodologies.  &lt;br /&gt;
* &#039;&#039;&#039;Optimized Solutions&#039;&#039;&#039; – Performance tuning for embedded, AI, and multimedia applications.  &lt;br /&gt;
* &#039;&#039;&#039;Open-Source Resources&#039;&#039;&#039; – Code samples, frameworks, and tools to accelerate development.  &lt;br /&gt;
&lt;br /&gt;
Whether you&#039;re an individual developer, a startup, or an enterprise, you’ll find resources here to &#039;&#039;&#039;enhance your expertise and improve your products&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
== 💡 Featured Tutorials ==&lt;br /&gt;
🔧 **[Building a Custom Linux OS with Yocto](Yocto-Project-Tutorial)** – Tailor an operating system for your hardware.  &lt;br /&gt;
🤖 **[Deploying AI for Real-Time Video Analytics](AI-Video-Analytics)** – Use machine learning for intelligent decision-making.  &lt;br /&gt;
🎥 **[Optimizing GStreamer Pipelines](GStreamer-Optimization)** – Improve multimedia processing efficiency.  &lt;br /&gt;
🌐 **[Scaling Web Applications](Django-Web-Development)** – Design backends for performance and reliability.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&amp;lt;!-- For more topics, explore the **[[Tutorials Index]]**. --&amp;gt;&lt;br /&gt;
== ⚙️ Technical Resources ==&lt;br /&gt;
* [[Embedded Systems Development]] – BSPs, firmware, and real-time processing.&lt;br /&gt;
**To get to know Embedded Platforms, here is an overview of the top platforms in the market right now!&lt;br /&gt;
***[[Embedded Platforms]] - From Raspberry Pi to Nvidia Jetson, get to know these embedded platforms.&lt;br /&gt;
* [[AI &amp;amp; Computer Vision]] – Edge AI, model training, and deployment.&lt;br /&gt;
* [[GStreamer Development]] – High-performance video and audio streaming.&lt;br /&gt;
** [[GStreamer Fundamentals]] – Introduction, pipelines, elements, and data flow.&lt;br /&gt;
** [[GStreamer Daemon]] – Remote control of pipelines with JSON-RPC API.&lt;br /&gt;
** [[GStreamer Interpipes]] – Efficient multi-pipeline communication.&lt;br /&gt;
** [[GStreamer Application Development]] – Writing custom plugins and apps.&lt;br /&gt;
** [[GStreamer Best Practices]] – Performance optimization and debugging.&lt;br /&gt;
* [[Web &amp;amp; Cloud Solutions]] – Scalable, production-ready applications.&lt;br /&gt;
&lt;br /&gt;
== 👀  &#039;&#039;&#039;Are you a PM looking to expand your knowledge in the software development industry?&#039;&#039;&#039;==&lt;br /&gt;
This tutorial is for you!&lt;br /&gt;
Here, you&#039;ll explore essential concepts, from basic to intermediate, that will help you navigate technical discussions with engineers and clients more confidently&lt;br /&gt;
&lt;br /&gt;
📄&#039;&#039;&#039;[[Project Manager Tutorials]]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== 🏗 Need a Solution for Your Project? ==&lt;br /&gt;
Are you looking for ways to:  &lt;br /&gt;
✅ Optimize your &#039;&#039;&#039;embedded system&#039;&#039;&#039; for better performance?  &lt;br /&gt;
✅ Integrate &#039;&#039;&#039;AI and computer vision&#039;&#039;&#039; into your products?  &lt;br /&gt;
✅ Improve &#039;&#039;&#039;multimedia processing&#039;&#039;&#039; for real-time applications?  &lt;br /&gt;
✅ Develop a &#039;&#039;&#039;robust and scalable&#039;&#039;&#039; web platform?  &lt;br /&gt;
&lt;br /&gt;
Our team has helped businesses across multiple industries solve these challenges.  &lt;br /&gt;
&lt;br /&gt;
📩 &#039;&#039;&#039;Let’s collaborate!&#039;&#039;&#039; Contact us at &#039;&#039;&#039;[support@proventusnova.com](mailto:support@proventusnova.com)&#039;&#039;&#039; or visit &#039;&#039;&#039;[ProventusNova.com](https://proventusnova.com)&#039;&#039;&#039; to discuss your project.&lt;/div&gt;</summary>
		<author><name>Sonni</name></author>
	</entry>
	<entry>
		<id>https://developerwiki.proventusnova.com/index.php?title=GStreamer_Development&amp;diff=65</id>
		<title>GStreamer Development</title>
		<link rel="alternate" type="text/html" href="https://developerwiki.proventusnova.com/index.php?title=GStreamer_Development&amp;diff=65"/>
		<updated>2025-03-11T08:10:12Z</updated>

		<summary type="html">&lt;p&gt;Sonni: Update FAQ format&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;width:100%; background-color:#f0f0f0;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Authors:&#039;&#039;&#039;&lt;br /&gt;
Sonni Lorenz F. Cubero (sonni.cubero@proventusnova.com)&lt;br /&gt;
&lt;br /&gt;
CJ Mirafuentes (cj.mirafuentes@proventusnova.com)&lt;br /&gt;
|| &#039;&#039;&#039;Date:&#039;&#039;&#039; March 11, 2025&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;!---NOTE!!!: change the date every time this is published---&amp;gt;&lt;br /&gt;
== About GStreamer ==  &lt;br /&gt;
&lt;br /&gt;
GStreamer is a framework for creating streaming media applications. The fundamental design comes from the video pipeline at Oregon Graduate Institute, as well as some ideas from DirectShow. Available across multiple platforms and licensed under the LGPL, GStreamer is suitable for both free and proprietary use, running on Linux, Windows, macOS, Android, and iOS.  &lt;br /&gt;
&lt;br /&gt;
The framework is based on plugins that provide various codecs and other functionalities. These plugins can be linked and arranged in a pipeline, which defines the flow of data. Pipelines can also be edited using a GUI editor and saved as XML, allowing for easy creation of reusable pipeline libraries.  &lt;br /&gt;
&lt;br /&gt;
=== GStreamer Components ===  &lt;br /&gt;
GStreamer is packaged into multiple components:  &lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;gstreamer&#039;&#039;&#039;: The core package  &lt;br /&gt;
* &#039;&#039;&#039;gst-plugins-base&#039;&#039;&#039;: An essential exemplary set of elements  &lt;br /&gt;
* &#039;&#039;&#039;gst-plugins-good&#039;&#039;&#039;: A set of good-quality plugins under LGPL  &lt;br /&gt;
* &#039;&#039;&#039;gst-plugins-ugly&#039;&#039;&#039;: A set of good-quality plugins that might pose distribution problems  &lt;br /&gt;
* &#039;&#039;&#039;gst-plugins-bad&#039;&#039;&#039;: A set of plugins that need more quality improvements  &lt;br /&gt;
* &#039;&#039;&#039;gst-libav&#039;&#039;&#039;: A set of plugins that wrap libav for decoding and encoding  &lt;br /&gt;
* Other additional packages  &lt;br /&gt;
&lt;br /&gt;
== Building GStreamer ==  &lt;br /&gt;
&lt;br /&gt;
This setup is recommended for developers who want to work on the GStreamer code itself, as well as for application developers who need to test features that have not yet been released.&lt;br /&gt;
&lt;br /&gt;
=== Prerequisites ===  &lt;br /&gt;
The following dependencies must be installed on the Linux system:  &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Compiler&#039;&#039;&#039;  &lt;br /&gt;
* GCC, Clang  &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Package Manager&#039;&#039;&#039;&lt;br /&gt;
Any one of the following will do:&lt;br /&gt;
* apt, dnf, snap, etc.  &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Packages/Dependencies&#039;&#039;&#039;  &lt;br /&gt;
* meson, ninja, flex, bison, gitlint  &lt;br /&gt;
&lt;br /&gt;
The GStreamer build environment was emulated via VMware Workstation 17 Pro with the following specifications:  &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
| &#039;&#039;&#039;Operating System&#039;&#039;&#039;: || Ubuntu 24.04.1 LTS&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Processors&#039;&#039;&#039;: || Number of processors: 4 &lt;br /&gt;
Number of cores per processor: 1&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Memory&#039;&#039;&#039;: || 8GB&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Storage&#039;&#039;&#039;: || 30GB (Expandable)&lt;br /&gt;
|} &lt;br /&gt;
&lt;br /&gt;
=== Getting the Source Code ===  &lt;br /&gt;
To build GStreamer, first, secure the latest copy of the source code:  &lt;br /&gt;
* GitLab: [https://gitlab.freedesktop.org/gstreamer/gstreamer GStreamer Repository]  &lt;br /&gt;
&lt;br /&gt;
After obtaining the source, ensure that the GStreamer version is compatible with the installed Meson version. Switch to the appropriate branch based on your Meson version.  &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ GStreamer and Meson Version Compatibility&lt;br /&gt;
! GStreamer Version !! Meson Version  &lt;br /&gt;
|-&lt;br /&gt;
| 1.25 (main branch to date) || &amp;gt;= 1.24  &lt;br /&gt;
|-&lt;br /&gt;
| 1.24 || &amp;gt;= 1.1  &lt;br /&gt;
|-&lt;br /&gt;
| 1.22 || &amp;gt;= 0.62  &lt;br /&gt;
|-&lt;br /&gt;
| 1.20 || &amp;gt;= 0.59  &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039; To verify which Meson version is compatible with GStreamer, check the &#039;&#039;&#039;meson.build&#039;&#039;&#039; file.  &lt;br /&gt;
&lt;br /&gt;
=== Updating Subprojects ===  &lt;br /&gt;
GStreamer modules are typically found under the &#039;&#039;&#039;subprojects/&#039;&#039;&#039; directory. These modules are not updated automatically and must be updated manually.  &lt;br /&gt;
&lt;br /&gt;
To update subprojects, execute the following command:  &lt;br /&gt;
&lt;br /&gt;
 meson subprojects update&lt;br /&gt;
&lt;br /&gt;
=== Setting Up the Build with Meson ===  &lt;br /&gt;
To set up GStreamer and its modules, execute the following command:  &lt;br /&gt;
&lt;br /&gt;
 meson setup &amp;lt;build_directory&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039; You can specify any directory name for &#039;&#039;&#039;&amp;lt;build_directory&amp;gt;&#039;&#039;&#039;. The command will automatically create the directory if it does not exist.  &lt;br /&gt;
&lt;br /&gt;
=== Building GStreamer and Its Modules ===  &lt;br /&gt;
Once Meson has finished setting up the module, execute either of the following commands to build:  &lt;br /&gt;
&lt;br /&gt;
 ninja -C &amp;lt;build_directory&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Or  &lt;br /&gt;
&lt;br /&gt;
 meson compile -C &amp;lt;build_directory&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Testing the GStreamer Build ==  &lt;br /&gt;
To test all components, run the following command:  &lt;br /&gt;
&lt;br /&gt;
 meson test -C &amp;lt;build_directory&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
To test a specific component, use the following command:  &lt;br /&gt;
&lt;br /&gt;
 meson test -C &amp;lt;build_directory&amp;gt; --suite gst-plugins-base&lt;br /&gt;
&lt;br /&gt;
== Frequently Asked Questions (FAQ) ==&lt;br /&gt;
&lt;br /&gt;
*What is GStreamer used for?&lt;br /&gt;
**GStreamer is used to create streaming media applications such as media players, video editing software, and real-time multimedia processing tools. It supports multiple platforms and a wide range of codecs.&lt;br /&gt;
&lt;br /&gt;
*How can I install GStreamer on my system?&lt;br /&gt;
**For Linux, you can install GStreamer using your system&#039;s package manager.&lt;br /&gt;
***For Ubuntu/Debian: &#039;&#039;&#039;&#039;&#039;sudo apt install gstreamer1.0*&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
***For Fedora: &#039;&#039;&#039;&#039;&#039;sudo dnf install gstreamer1.0*&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
**For windows, download pre-built binaries from the official GStreamer website. [https://gstreamer.freedesktop.org/download/#windows Windows GStreamer].&lt;br /&gt;
&lt;br /&gt;
*How do I check which plugins are installed?&lt;br /&gt;
**You can list installed plugins by running: &#039;&#039;&#039;&#039;&#039;gst-inspect-1.0 | less&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
*Can I use GStreamer for live streaming?&lt;br /&gt;
**Yes, GStreamer supports live streaming through plugins such as RTSP, RTP, and WebRTC.&lt;br /&gt;
&lt;br /&gt;
*How do I troubleshoot pipeline errors?&lt;br /&gt;
**Use the following command to debug issues: &#039;&#039;&#039;&#039;&#039;GST_DEBUG=4 gst-launch-1.0 &amp;lt;pipeline&amp;gt;&#039;&#039;&#039;&#039;&#039;, this provides detailed debugging output.&lt;br /&gt;
&lt;br /&gt;
= 🏗 Need a Solution for Your Project? =&lt;br /&gt;
Are you looking for ways to:  &lt;br /&gt;
✅ Optimize your &#039;&#039;&#039;embedded system&#039;&#039;&#039; for better performance?  &lt;br /&gt;
✅ Integrate &#039;&#039;&#039;AI and computer vision&#039;&#039;&#039; into your products?  &lt;br /&gt;
✅ Improve &#039;&#039;&#039;multimedia processing&#039;&#039;&#039; for real-time applications?  &lt;br /&gt;
✅ Develop a &#039;&#039;&#039;robust and scalable&#039;&#039;&#039; web platform?  &lt;br /&gt;
&lt;br /&gt;
Our team has helped businesses across multiple industries solve these challenges.  &lt;br /&gt;
&lt;br /&gt;
📩 &#039;&#039;&#039;Let’s collaborate!&#039;&#039;&#039; Contact us at &#039;&#039;&#039;[support@proventusnova.com](mailto:support@proventusnova.com)&#039;&#039;&#039; or visit &#039;&#039;&#039;[ProventusNova.com](https://proventusnova.com)&#039;&#039;&#039; to discuss your project. --&amp;gt;&lt;/div&gt;</summary>
		<author><name>Sonni</name></author>
	</entry>
	<entry>
		<id>https://developerwiki.proventusnova.com/index.php?title=GStreamer_Development&amp;diff=64</id>
		<title>GStreamer Development</title>
		<link rel="alternate" type="text/html" href="https://developerwiki.proventusnova.com/index.php?title=GStreamer_Development&amp;diff=64"/>
		<updated>2025-03-11T08:06:58Z</updated>

		<summary type="html">&lt;p&gt;Sonni: Add FAQs&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;width:100%; background-color:#f0f0f0;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Authors:&#039;&#039;&#039;&lt;br /&gt;
Sonni Lorenz F. Cubero (sonni.cubero@proventusnova.com)&lt;br /&gt;
&lt;br /&gt;
CJ Mirafuentes (cj.mirafuentes@proventusnova.com)&lt;br /&gt;
|| &#039;&#039;&#039;Date:&#039;&#039;&#039; March 11, 2025&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;!---NOTE!!!: change the date every time this is published---&amp;gt;&lt;br /&gt;
== About GStreamer ==  &lt;br /&gt;
&lt;br /&gt;
GStreamer is a framework for creating streaming media applications. The fundamental design comes from the video pipeline at Oregon Graduate Institute, as well as some ideas from DirectShow. Available across multiple platforms and licensed under the LGPL, GStreamer is suitable for both free and proprietary use, running on Linux, Windows, macOS, Android, and iOS.  &lt;br /&gt;
&lt;br /&gt;
The framework is based on plugins that provide various codecs and other functionalities. These plugins can be linked and arranged in a pipeline, which defines the flow of data. Pipelines can also be edited using a GUI editor and saved as XML, allowing for easy creation of reusable pipeline libraries.  &lt;br /&gt;
&lt;br /&gt;
=== GStreamer Components ===  &lt;br /&gt;
GStreamer is packaged into multiple components:  &lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;gstreamer&#039;&#039;&#039;: The core package  &lt;br /&gt;
* &#039;&#039;&#039;gst-plugins-base&#039;&#039;&#039;: An essential exemplary set of elements  &lt;br /&gt;
* &#039;&#039;&#039;gst-plugins-good&#039;&#039;&#039;: A set of good-quality plugins under LGPL  &lt;br /&gt;
* &#039;&#039;&#039;gst-plugins-ugly&#039;&#039;&#039;: A set of good-quality plugins that might pose distribution problems  &lt;br /&gt;
* &#039;&#039;&#039;gst-plugins-bad&#039;&#039;&#039;: A set of plugins that need more quality improvements  &lt;br /&gt;
* &#039;&#039;&#039;gst-libav&#039;&#039;&#039;: A set of plugins that wrap libav for decoding and encoding  &lt;br /&gt;
* Other additional packages  &lt;br /&gt;
&lt;br /&gt;
== Building GStreamer ==  &lt;br /&gt;
&lt;br /&gt;
This setup is recommended for developers who want to work on the GStreamer code itself, as well as for application developers who need to test features that have not yet been released.&lt;br /&gt;
&lt;br /&gt;
=== Prerequisites ===  &lt;br /&gt;
The following dependencies must be installed on the Linux system:  &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Compiler&#039;&#039;&#039;  &lt;br /&gt;
* GCC, Clang  &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Package Manager&#039;&#039;&#039;&lt;br /&gt;
Any one of the following will do:&lt;br /&gt;
* apt, dnf, snap, etc.  &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Packages/Dependencies&#039;&#039;&#039;  &lt;br /&gt;
* meson, ninja, flex, bison, gitlint  &lt;br /&gt;
&lt;br /&gt;
The GStreamer build environment was emulated via VMware Workstation 17 Pro with the following specifications:  &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
| &#039;&#039;&#039;Operating System&#039;&#039;&#039;: || Ubuntu 24.04.1 LTS&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Processors&#039;&#039;&#039;: || Number of processors: 4 &lt;br /&gt;
Number of cores per processor: 1&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Memory&#039;&#039;&#039;: || 8GB&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Storage&#039;&#039;&#039;: || 30GB (Expandable)&lt;br /&gt;
|} &lt;br /&gt;
&lt;br /&gt;
=== Getting the Source Code ===  &lt;br /&gt;
To build GStreamer, first, secure the latest copy of the source code:  &lt;br /&gt;
* GitLab: [https://gitlab.freedesktop.org/gstreamer/gstreamer GStreamer Repository]  &lt;br /&gt;
&lt;br /&gt;
After obtaining the source, ensure that the GStreamer version is compatible with the installed Meson version. Switch to the appropriate branch based on your Meson version.  &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ GStreamer and Meson Version Compatibility&lt;br /&gt;
! GStreamer Version !! Meson Version  &lt;br /&gt;
|-&lt;br /&gt;
| 1.25 (main branch to date) || &amp;gt;= 1.24  &lt;br /&gt;
|-&lt;br /&gt;
| 1.24 || &amp;gt;= 1.1  &lt;br /&gt;
|-&lt;br /&gt;
| 1.22 || &amp;gt;= 0.62  &lt;br /&gt;
|-&lt;br /&gt;
| 1.20 || &amp;gt;= 0.59  &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039; To verify which Meson version is compatible with GStreamer, check the &#039;&#039;&#039;meson.build&#039;&#039;&#039; file.  &lt;br /&gt;
&lt;br /&gt;
=== Updating Subprojects ===  &lt;br /&gt;
GStreamer modules are typically found under the &#039;&#039;&#039;subprojects/&#039;&#039;&#039; directory. These modules are not updated automatically and must be updated manually.  &lt;br /&gt;
&lt;br /&gt;
To update subprojects, execute the following command:  &lt;br /&gt;
&lt;br /&gt;
 meson subprojects update&lt;br /&gt;
&lt;br /&gt;
=== Setting Up the Build with Meson ===  &lt;br /&gt;
To set up GStreamer and its modules, execute the following command:  &lt;br /&gt;
&lt;br /&gt;
 meson setup &amp;lt;build_directory&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039; You can specify any directory name for &#039;&#039;&#039;&amp;lt;build_directory&amp;gt;&#039;&#039;&#039;. The command will automatically create the directory if it does not exist.  &lt;br /&gt;
&lt;br /&gt;
=== Building GStreamer and Its Modules ===  &lt;br /&gt;
Once Meson has finished setting up the module, execute either of the following commands to build:  &lt;br /&gt;
&lt;br /&gt;
 ninja -C &amp;lt;build_directory&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Or  &lt;br /&gt;
&lt;br /&gt;
 meson compile -C &amp;lt;build_directory&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Testing the GStreamer Build ==  &lt;br /&gt;
To test all components, run the following command:  &lt;br /&gt;
&lt;br /&gt;
 meson test -C &amp;lt;build_directory&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
To test a specific component, use the following command:  &lt;br /&gt;
&lt;br /&gt;
 meson test -C &amp;lt;build_directory&amp;gt; --suite gst-plugins-base&lt;br /&gt;
&lt;br /&gt;
== Frequently Asked Questions (FAQ) ==&lt;br /&gt;
&lt;br /&gt;
#What is GStreamer used for?&lt;br /&gt;
#*GStreamer is used to create streaming media applications such as media players, video editing software, and real-time multimedia processing tools. It supports multiple platforms and a wide range of codecs.&lt;br /&gt;
#How can I install GStreamer on my system?&lt;br /&gt;
#*You can install GStreamer using your system&#039;s package manager.&lt;br /&gt;
#**For Ubuntu/Debian: &#039;&#039;&#039;&#039;&#039;sudo apt install gstreamer1.0*&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
#**For Fedora: &#039;&#039;&#039;&#039;&#039;sudo dnf install gstreamer1.0*&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
#**For windows, download pre-built binaries from the official GStreamer website. [https://gstreamer.freedesktop.org/download/#windows Windows GStreamer].&lt;br /&gt;
#How do I check which plugins are installed?&lt;br /&gt;
#*You can list installed plugins by running: &#039;&#039;&#039;&#039;&#039;gst-inspect-1.0 | less&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
#Can I use GStreamer for live streaming?&lt;br /&gt;
#*Yes, GStreamer supports live streaming through plugins such as RTSP, RTP, and WebRTC.&lt;br /&gt;
#How do I troubleshoot pipeline errors?&lt;br /&gt;
#*Use the following command to debug issues: &#039;&#039;&#039;&#039;&#039;GST_DEBUG=4 gst-launch-1.0 &amp;lt;pipeline&amp;gt;&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
This provides detailed debugging output.&lt;br /&gt;
&lt;br /&gt;
= 🏗 Need a Solution for Your Project? =&lt;br /&gt;
Are you looking for ways to:  &lt;br /&gt;
✅ Optimize your &#039;&#039;&#039;embedded system&#039;&#039;&#039; for better performance?  &lt;br /&gt;
✅ Integrate &#039;&#039;&#039;AI and computer vision&#039;&#039;&#039; into your products?  &lt;br /&gt;
✅ Improve &#039;&#039;&#039;multimedia processing&#039;&#039;&#039; for real-time applications?  &lt;br /&gt;
✅ Develop a &#039;&#039;&#039;robust and scalable&#039;&#039;&#039; web platform?  &lt;br /&gt;
&lt;br /&gt;
Our team has helped businesses across multiple industries solve these challenges.  &lt;br /&gt;
&lt;br /&gt;
📩 &#039;&#039;&#039;Let’s collaborate!&#039;&#039;&#039; Contact us at &#039;&#039;&#039;[support@proventusnova.com](mailto:support@proventusnova.com)&#039;&#039;&#039; or visit &#039;&#039;&#039;[ProventusNova.com](https://proventusnova.com)&#039;&#039;&#039; to discuss your project. --&amp;gt;&lt;/div&gt;</summary>
		<author><name>Sonni</name></author>
	</entry>
	<entry>
		<id>https://developerwiki.proventusnova.com/index.php?title=Project_Manager_Tutorials&amp;diff=63</id>
		<title>Project Manager Tutorials</title>
		<link rel="alternate" type="text/html" href="https://developerwiki.proventusnova.com/index.php?title=Project_Manager_Tutorials&amp;diff=63"/>
		<updated>2025-03-11T07:45:42Z</updated>

		<summary type="html">&lt;p&gt;Sonni: Add more concepts. Add horizontal rule to separate concepts. Update date&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;width:100%; background-color:#f0f0f0;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Authors:&#039;&#039;&#039;&lt;br /&gt;
Sonni Lorenz F. Cubero (sonni.cubero@proventusnova.com)&lt;br /&gt;
&lt;br /&gt;
CJ Mirafuentes (cj.mirafuentes@proventusnova.com)&lt;br /&gt;
|| &#039;&#039;&#039;Date:&#039;&#039;&#039; March 11, 2025&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--NOTE!!!: change the date every time this page is published--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== About ==&lt;br /&gt;
This document serves as a guide for project managers dealing with ProventusNova products, providing them with essential technical knowledge, industry terms, best practices, and tools to effectively manage projects in an embedded systems environment.&lt;br /&gt;
&lt;br /&gt;
== Project Manager Terms ==&lt;br /&gt;
These are the terms that a project manager needs to know when dealing with ProventusNova products.&lt;br /&gt;
&lt;br /&gt;
===Basic Concepts===&lt;br /&gt;
&lt;br /&gt;
====Processor====&lt;br /&gt;
A processor, also known as a Central Processing Unit (CPU), is the &amp;quot;brain&amp;quot; of a computer, responsible for executing instructions from software and managing data flow.&lt;br /&gt;
&lt;br /&gt;
==== Software ====&lt;br /&gt;
Software is a collection of programs, instructions, and data that run on a computer to perform tasks. It is the opposite of hardware, which is the physical parts of a computer.&lt;br /&gt;
&lt;br /&gt;
==== Embedded Software ====&lt;br /&gt;
Embedded software is computer code that controls devices other than traditional computers. It is designed to work with a specific device&#039;s hardware and is often found in everyday objects like cars, appliances, and smartphones.&lt;br /&gt;
&lt;br /&gt;
==== Embedded Platforms/Systems ====&lt;br /&gt;
An embedded platform is defined as a system that includes various types of peripherals with distinct characteristics. These peripherals can either be integrated into modern SoC devices or remain as part of the platform board to enhance the capabilities of the SoC device.&lt;br /&gt;
&lt;br /&gt;
==== Computer Architecture ====&lt;br /&gt;
The structure of a computer system and how its parts work together. It defines how the computer&#039;s components interact to process data.&lt;br /&gt;
&lt;br /&gt;
==== Linux ====&lt;br /&gt;
Linux is a free, open-source operating system (OS) that is used on computers, servers, and mobile devices. It is similar to Unix and is one of the most widely used operating systems in the world.&lt;br /&gt;
&lt;br /&gt;
==== GStreamer ====&lt;br /&gt;
GStreamer is a pipeline-based multimedia framework that links together a wide variety of media processing systems to complete complex workflows.&lt;br /&gt;
&lt;br /&gt;
==== Kernel ====&lt;br /&gt;
A kernel is the core part of an operating system. It acts as a bridge between software applications and the hardware of a computer.&lt;br /&gt;
&lt;br /&gt;
==== API (Application Programming Interface) ====&lt;br /&gt;
An API, or application programming interface, is a set of rules or protocols that enables software applications to communicate with each other.&lt;br /&gt;
&lt;br /&gt;
==== Raspberry PI ====&lt;br /&gt;
A small, inexpensive computer used for learning and exploring computer science. It is about the size of a credit card and offers cost-effective, high-performance computing for businesses and home use.&lt;br /&gt;
&lt;br /&gt;
==== Ubuntu ====&lt;br /&gt;
Ubuntu is a modern, open-source operating system based on Linux for enterprise servers, desktops, cloud computing, and IoT.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
=== Intermediate Concepts===&lt;br /&gt;
&lt;br /&gt;
==== ARM (Advanced RISC Machine) ====&lt;br /&gt;
Refers to a type of computer processor architecture. ARM processors are known for their energy efficiency and performance.&lt;br /&gt;
&lt;br /&gt;
==== x86_64 ====&lt;br /&gt;
Also known as x64 or AMD64, x86_64 is a 64-bit architecture for CPUs. It is used in most home computers and servers. x86_64 is an extension of the 32-bit x86 architecture, supporting 64-bit mode and compatibility mode, which allows users to run 16-bit and 32-bit applications.&lt;br /&gt;
&lt;br /&gt;
==== GStreamer Daemon (gstd) ====&lt;br /&gt;
GStreamer Daemon, also called gstd, is a GStreamer framework for controlling audio and video streaming using an InterProcess Communication protocol.&lt;br /&gt;
&lt;br /&gt;
==== GStreamer Interpipes ====&lt;br /&gt;
GstInterpipe is a RidgeRun open-source GStreamer plug-in that enables pipeline buffers and events to flow between two or more independent pipelines. The plug-in consists of two elements: Interpipesink and Interpipesrc. The Interpipesrc connects with an Interpipesink, from which it receives buffers and events.&lt;br /&gt;
&lt;br /&gt;
==== Nvidia Jetson ====&lt;br /&gt;
NVIDIA Jetson is a platform for AI applications in robotics and embedded systems. It includes compact computers, software development kits, and other tools. It is used by professional developers to create breakthrough AI products across industries and by students and enthusiasts for hands-on AI learning and innovative projects.&lt;br /&gt;
&lt;br /&gt;
==== ESP32 ====&lt;br /&gt;
ESP32 is a low-cost, low-power microcontroller board with built-in Wi-Fi and Bluetooth. It is designed for a variety of applications, including IoT devices, wearable electronics, and mobile devices. Its low cost and power efficiency make it ideal for a variety of IoT applications.&lt;br /&gt;
&lt;br /&gt;
==== Texas Instruments Processors ====&lt;br /&gt;
Developed by Texas Instruments, these processors feature ARM9, ARM Cortex-A8, ARM Cortex-A9, ARM Cortex-A15, and ARM Cortex-A53 cores. Sitara Processors offer low-power and high-performance models, making them suitable for battery-operated devices and industrial systems. They provide a developer-friendly environment with tools like Code Composer Studio and RTOS support.&lt;br /&gt;
&lt;br /&gt;
==== Qualcomm Snapdragon ====&lt;br /&gt;
A system-on-chip (SoC) that powers a variety of devices, such as smartphones, tablets, laptops, and desktops. Snapdragon processors integrate ARM Cortex cores, DSP, and AI and come with built-in Wi-Fi, LTE, and 5G, making them ideal for IoT and edge computing.&lt;br /&gt;
&lt;br /&gt;
==== Intel Atom Processors ====&lt;br /&gt;
Intel Atom Processors are designed for low-power consumption while providing sufficient power for embedded systems. Their x86 architecture ensures compatibility with a wide variety of software.&lt;br /&gt;
&lt;br /&gt;
==== Microchip PIC Microcontrollers ====&lt;br /&gt;
Known for their low power consumption and affordability, Microchip PIC Microcontrollers are ideal for embedded systems, particularly in battery-powered devices and simple consumer electronics.&lt;br /&gt;
&lt;br /&gt;
==== STMicroelectronics STM32 Series ====&lt;br /&gt;
Based on the Arm Cortex-M processor, featuring cores from Cortex-M0 to Cortex-M7.&lt;br /&gt;
&lt;br /&gt;
==== Renesas RX ====&lt;br /&gt;
The Renesas RX Family uses 32-bit RX cores, delivering strong computational power and support for complex applications.&lt;br /&gt;
&lt;br /&gt;
==== Arm Cortex-M Series ====&lt;br /&gt;
Widely used for its scalability, low power, and strong performance, the Arm Cortex-M Series offers a range of cores from Cortex-M0 to Cortex-M7.&lt;br /&gt;
&lt;br /&gt;
==== Arduino ====&lt;br /&gt;
Arduino is an open-source electronics platform that uses hardware and software to read inputs and create outputs. It is used to build prototypes for various applications, including smart homes, entertainment, and monitoring systems.&lt;br /&gt;
&lt;br /&gt;
==== NXP i.MX Series ====&lt;br /&gt;
The NXP i.MX Series offers performance versatility, with different models targeting various market segments. They come with Arm Cortex-A series cores, GPU, and DSP for enhanced performance in multimedia and machine learning applications.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
===Advanced Concepts===&lt;br /&gt;
&lt;br /&gt;
==== RISC (Reduced Instruction Set Computer) ====&lt;br /&gt;
A microprocessor architecture that uses a small set of simple instructions to perform tasks more quickly than other architectures.&lt;br /&gt;
&lt;br /&gt;
==== Real-Time Operating System (RTOS) ====&lt;br /&gt;
A Real-Time Operating System (RTOS) is an operating system designed to process data and execute tasks within a strict time constraint. RTOS ensures timely execution of critical processes, making it ideal for embedded systems, industrial automation, robotics, and real-time data processing applications.&lt;br /&gt;
&lt;br /&gt;
==== SoC (System on Chip) ====&lt;br /&gt;
A System on Chip (SoC) is an integrated circuit that combines all essential components of a computer or electronic system onto a single chip. It typically includes a CPU, GPU, memory, peripherals, and connectivity interfaces. SoCs are widely used in mobile devices, IoT devices, and embedded systems.&lt;br /&gt;
&lt;br /&gt;
==== AI (Artificial Intelligence) ====&lt;br /&gt;
Artificial intelligence (AI) is a field of study that focuses on creating machines that can learn, reason, and act. AI is used in many applications, including search engines, social media, and online shopping. AI is technology that enables computers and machines to simulate human learning, comprehension, problem solving, decision making, creativity and autonomy&lt;br /&gt;
&lt;br /&gt;
====Machine Learning ====&lt;br /&gt;
Machine Learning is a branch of artificial intelligence (AI) focused on enabling computers and machines to imitate the way that humans learn.&lt;br /&gt;
&lt;br /&gt;
==== Yocto Project ====&lt;br /&gt;
The Yocto Project is an open-source initiative that provides tools and templates for building custom Linux distributions for embedded systems. It enables fine-grained control over system components, allowing developers to optimize for performance, footprint, and security. The project provides a flexible set of tools and a space where embedded developers worldwide can share technologies, software stacks, configurations, and best practices that can be used to create tailored Linux images for embedded and IOT devices, or anywhere a customized Linux OS is needed.&lt;br /&gt;
&lt;br /&gt;
==== MCU (Microcontroller Unit) ====&lt;br /&gt;
A microcontroller or microcontroller unit (MCU) is a small computer on a single integrated circuit. An MCU is a compact, self-contained computer on a chip, containing a processor core (CPU), memory (RAM and ROM), and input/output (I/O) peripherals.&lt;/div&gt;</summary>
		<author><name>Sonni</name></author>
	</entry>
	<entry>
		<id>https://developerwiki.proventusnova.com/index.php?title=Project_Manager_Tutorials&amp;diff=62</id>
		<title>Project Manager Tutorials</title>
		<link rel="alternate" type="text/html" href="https://developerwiki.proventusnova.com/index.php?title=Project_Manager_Tutorials&amp;diff=62"/>
		<updated>2025-03-11T07:40:53Z</updated>

		<summary type="html">&lt;p&gt;Sonni: Add MCU(Microcontroller Unit) in advanced concepts.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;width:100%; background-color:#f0f0f0;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Authors:&#039;&#039;&#039;&lt;br /&gt;
Sonni Lorenz F. Cubero (sonni.cubero@proventusnova.com)&lt;br /&gt;
&lt;br /&gt;
CJ Mirafuentes (cj.mirafuentes@proventusnova.com)&lt;br /&gt;
|| &#039;&#039;&#039;Date:&#039;&#039;&#039; February 27, 2025&lt;br /&gt;
|}&lt;br /&gt;
== About ==&lt;br /&gt;
This document serves as a guide for project managers dealing with ProventusNova products, providing them with essential technical knowledge, industry terms, best practices, and tools to effectively manage projects in an embedded systems environment.&lt;br /&gt;
&lt;br /&gt;
== Project Manager Terms ==&lt;br /&gt;
These are the terms that a project manager needs to know when dealing with ProventusNova products.&lt;br /&gt;
&lt;br /&gt;
===Basic Concepts===&lt;br /&gt;
&lt;br /&gt;
==== Software ====&lt;br /&gt;
Software is a collection of programs, instructions, and data that run on a computer to perform tasks. It is the opposite of hardware, which is the physical parts of a computer.&lt;br /&gt;
&lt;br /&gt;
==== Embedded Software ====&lt;br /&gt;
Embedded software is computer code that controls devices other than traditional computers. It is designed to work with a specific device&#039;s hardware and is often found in everyday objects like cars, appliances, and smartphones.&lt;br /&gt;
&lt;br /&gt;
==== Embedded Platforms/Systems ====&lt;br /&gt;
An embedded platform is defined as a system that includes various types of peripherals with distinct characteristics. These peripherals can either be integrated into modern SoC devices or remain as part of the platform board to enhance the capabilities of the SoC device.&lt;br /&gt;
&lt;br /&gt;
==== Computer Architecture ====&lt;br /&gt;
The structure of a computer system and how its parts work together. It defines how the computer&#039;s components interact to process data.&lt;br /&gt;
&lt;br /&gt;
==== Linux ====&lt;br /&gt;
Linux is a free, open-source operating system (OS) that is used on computers, servers, and mobile devices. It is similar to Unix and is one of the most widely used operating systems in the world.&lt;br /&gt;
&lt;br /&gt;
==== GStreamer ====&lt;br /&gt;
GStreamer is a pipeline-based multimedia framework that links together a wide variety of media processing systems to complete complex workflows.&lt;br /&gt;
&lt;br /&gt;
==== Kernel ====&lt;br /&gt;
A kernel is the core part of an operating system. It acts as a bridge between software applications and the hardware of a computer.&lt;br /&gt;
&lt;br /&gt;
==== API ====&lt;br /&gt;
An API, or application programming interface, is a set of rules or protocols that enables software applications to communicate with each other.&lt;br /&gt;
&lt;br /&gt;
==== Raspberry PI ====&lt;br /&gt;
A small, inexpensive computer used for learning and exploring computer science. It is about the size of a credit card and offers cost-effective, high-performance computing for businesses and home use.&lt;br /&gt;
&lt;br /&gt;
==== Ubuntu ====&lt;br /&gt;
Ubuntu is a modern, open-source operating system based on Linux for enterprise servers, desktops, cloud computing, and IoT.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
=== Intermediate Concepts===&lt;br /&gt;
&lt;br /&gt;
==== ARM (Advanced RISC Machine) ====&lt;br /&gt;
Refers to a type of computer processor architecture. ARM processors are known for their energy efficiency and performance.&lt;br /&gt;
&lt;br /&gt;
==== RISC (Reduced Instruction Set Computer) ====&lt;br /&gt;
A microprocessor architecture that uses a small set of simple instructions to perform tasks more quickly than other architectures.&lt;br /&gt;
&lt;br /&gt;
==== x86_64 ====&lt;br /&gt;
Also known as x64 or AMD64, x86_64 is a 64-bit architecture for CPUs. It is used in most home computers and servers. x86_64 is an extension of the 32-bit x86 architecture, supporting 64-bit mode and compatibility mode, which allows users to run 16-bit and 32-bit applications.&lt;br /&gt;
&lt;br /&gt;
==== GStreamer Daemon (gstd) ====&lt;br /&gt;
GStreamer Daemon, also called gstd, is a GStreamer framework for controlling audio and video streaming using an InterProcess Communication protocol.&lt;br /&gt;
&lt;br /&gt;
==== GStreamer Interpipes ====&lt;br /&gt;
GstInterpipe is a RidgeRun open-source GStreamer plug-in that enables pipeline buffers and events to flow between two or more independent pipelines. The plug-in consists of two elements: Interpipesink and Interpipesrc. The Interpipesrc connects with an Interpipesink, from which it receives buffers and events.&lt;br /&gt;
&lt;br /&gt;
==== Nvidia Jetson ====&lt;br /&gt;
NVIDIA Jetson is a platform for AI applications in robotics and embedded systems. It includes compact computers, software development kits, and other tools. It is used by professional developers to create breakthrough AI products across industries and by students and enthusiasts for hands-on AI learning and innovative projects.&lt;br /&gt;
&lt;br /&gt;
==== ESP32 ====&lt;br /&gt;
ESP32 is a low-cost, low-power microcontroller board with built-in Wi-Fi and Bluetooth. It is designed for a variety of applications, including IoT devices, wearable electronics, and mobile devices. Its low cost and power efficiency make it ideal for a variety of IoT applications.&lt;br /&gt;
&lt;br /&gt;
==== Texas Instruments Processors ====&lt;br /&gt;
Developed by Texas Instruments, these processors feature ARM9, ARM Cortex-A8, ARM Cortex-A9, ARM Cortex-A15, and ARM Cortex-A53 cores. Sitara Processors offer low-power and high-performance models, making them suitable for battery-operated devices and industrial systems. They provide a developer-friendly environment with tools like Code Composer Studio and RTOS support.&lt;br /&gt;
&lt;br /&gt;
==== Qualcomm Snapdragon ====&lt;br /&gt;
A system-on-chip (SoC) that powers a variety of devices, such as smartphones, tablets, laptops, and desktops. Snapdragon processors integrate ARM Cortex cores, DSP, and AI and come with built-in Wi-Fi, LTE, and 5G, making them ideal for IoT and edge computing.&lt;br /&gt;
&lt;br /&gt;
==== Intel Atom Processors ====&lt;br /&gt;
Intel Atom Processors are designed for low-power consumption while providing sufficient power for embedded systems. Their x86 architecture ensures compatibility with a wide variety of software.&lt;br /&gt;
&lt;br /&gt;
==== Microchip PIC Microcontrollers ====&lt;br /&gt;
Known for their low power consumption and affordability, Microchip PIC Microcontrollers are ideal for embedded systems, particularly in battery-powered devices and simple consumer electronics.&lt;br /&gt;
&lt;br /&gt;
==== STMicroelectronics STM32 Series ====&lt;br /&gt;
Based on the Arm Cortex-M processor, featuring cores from Cortex-M0 to Cortex-M7.&lt;br /&gt;
&lt;br /&gt;
==== Renesas RX ====&lt;br /&gt;
The Renesas RX Family uses 32-bit RX cores, delivering strong computational power and support for complex applications.&lt;br /&gt;
&lt;br /&gt;
==== Arm Cortex-M Series ====&lt;br /&gt;
Widely used for its scalability, low power, and strong performance, the Arm Cortex-M Series offers a range of cores from Cortex-M0 to Cortex-M7.&lt;br /&gt;
&lt;br /&gt;
==== Arduino ====&lt;br /&gt;
Arduino is an open-source electronics platform that uses hardware and software to read inputs and create outputs. It is used to build prototypes for various applications, including smart homes, entertainment, and monitoring systems.&lt;br /&gt;
&lt;br /&gt;
==== NXP i.MX Series ====&lt;br /&gt;
The NXP i.MX Series offers performance versatility, with different models targeting various market segments. They come with Arm Cortex-A series cores, GPU, and DSP for enhanced performance in multimedia and machine learning applications.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
===Advanced Concepts===&lt;br /&gt;
&lt;br /&gt;
==== Real-Time Operating System (RTOS) ====&lt;br /&gt;
A Real-Time Operating System (RTOS) is an operating system designed to process data and execute tasks within a strict time constraint. RTOS ensures timely execution of critical processes, making it ideal for embedded systems, industrial automation, robotics, and real-time data processing applications.&lt;br /&gt;
&lt;br /&gt;
==== SoC (System on Chip) ====&lt;br /&gt;
A System on Chip (SoC) is an integrated circuit that combines all essential components of a computer or electronic system onto a single chip. It typically includes a CPU, GPU, memory, peripherals, and connectivity interfaces. SoCs are widely used in mobile devices, IoT devices, and embedded systems.&lt;br /&gt;
&lt;br /&gt;
==== AI (Artificial Intelligence) ====&lt;br /&gt;
Artificial intelligence (AI) is a field of study that focuses on creating machines that can learn, reason, and act. AI is used in many applications, including search engines, social media, and online shopping. AI is technology that enables computers and machines to simulate human learning, comprehension, problem solving, decision making, creativity and autonomy&lt;br /&gt;
&lt;br /&gt;
====Machine Learning ====&lt;br /&gt;
Machine Learning is a branch of artificial intelligence (AI) focused on enabling computers and machines to imitate the way that humans learn.&lt;br /&gt;
&lt;br /&gt;
==== Yocto Project ====&lt;br /&gt;
The Yocto Project is an open-source initiative that provides tools and templates for building custom Linux distributions for embedded systems. It enables fine-grained control over system components, allowing developers to optimize for performance, footprint, and security. The project provides a flexible set of tools and a space where embedded developers worldwide can share technologies, software stacks, configurations, and best practices that can be used to create tailored Linux images for embedded and IOT devices, or anywhere a customized Linux OS is needed.&lt;br /&gt;
&lt;br /&gt;
==== MCU (Microcontroller Unit) ====&lt;br /&gt;
A microcontroller or microcontroller unit (MCU) is a small computer on a single integrated circuit. An MCU is a compact, self-contained computer on a chip, containing a processor core (CPU), memory (RAM and ROM), and input/output (I/O) peripherals.&lt;/div&gt;</summary>
		<author><name>Sonni</name></author>
	</entry>
	<entry>
		<id>https://developerwiki.proventusnova.com/index.php?title=Project_Manager_Tutorials&amp;diff=61</id>
		<title>Project Manager Tutorials</title>
		<link rel="alternate" type="text/html" href="https://developerwiki.proventusnova.com/index.php?title=Project_Manager_Tutorials&amp;diff=61"/>
		<updated>2025-03-11T07:35:31Z</updated>

		<summary type="html">&lt;p&gt;Sonni: Add Basic, Intermediate and, Advanced concepts section.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;width:100%; background-color:#f0f0f0;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Authors:&#039;&#039;&#039;&lt;br /&gt;
Sonni Lorenz F. Cubero (sonni.cubero@proventusnova.com)&lt;br /&gt;
&lt;br /&gt;
CJ Mirafuentes (cj.mirafuentes@proventusnova.com)&lt;br /&gt;
|| &#039;&#039;&#039;Date:&#039;&#039;&#039; February 27, 2025&lt;br /&gt;
|}&lt;br /&gt;
== About ==&lt;br /&gt;
This document serves as a guide for project managers dealing with ProventusNova products, providing them with essential technical knowledge, industry terms, best practices, and tools to effectively manage projects in an embedded systems environment.&lt;br /&gt;
&lt;br /&gt;
== Project Manager Terms ==&lt;br /&gt;
These are the terms that a project manager needs to know when dealing with ProventusNova products.&lt;br /&gt;
&lt;br /&gt;
===Basic Concepts===&lt;br /&gt;
&lt;br /&gt;
==== Software ====&lt;br /&gt;
Software is a collection of programs, instructions, and data that run on a computer to perform tasks. It is the opposite of hardware, which is the physical parts of a computer.&lt;br /&gt;
&lt;br /&gt;
==== Embedded Software ====&lt;br /&gt;
Embedded software is computer code that controls devices other than traditional computers. It is designed to work with a specific device&#039;s hardware and is often found in everyday objects like cars, appliances, and smartphones.&lt;br /&gt;
&lt;br /&gt;
==== Embedded Platforms/Systems ====&lt;br /&gt;
An embedded platform is defined as a system that includes various types of peripherals with distinct characteristics. These peripherals can either be integrated into modern SoC devices or remain as part of the platform board to enhance the capabilities of the SoC device.&lt;br /&gt;
&lt;br /&gt;
==== Computer Architecture ====&lt;br /&gt;
The structure of a computer system and how its parts work together. It defines how the computer&#039;s components interact to process data.&lt;br /&gt;
&lt;br /&gt;
==== Linux ====&lt;br /&gt;
Linux is a free, open-source operating system (OS) that is used on computers, servers, and mobile devices. It is similar to Unix and is one of the most widely used operating systems in the world.&lt;br /&gt;
&lt;br /&gt;
==== GStreamer ====&lt;br /&gt;
GStreamer is a pipeline-based multimedia framework that links together a wide variety of media processing systems to complete complex workflows.&lt;br /&gt;
&lt;br /&gt;
==== Kernel ====&lt;br /&gt;
A kernel is the core part of an operating system. It acts as a bridge between software applications and the hardware of a computer.&lt;br /&gt;
&lt;br /&gt;
==== API ====&lt;br /&gt;
An API, or application programming interface, is a set of rules or protocols that enables software applications to communicate with each other.&lt;br /&gt;
&lt;br /&gt;
===Intermediate Concepts===&lt;br /&gt;
&lt;br /&gt;
==== ARM (Advanced RISC Machine) ====&lt;br /&gt;
Refers to a type of computer processor architecture. ARM processors are known for their energy efficiency and performance.&lt;br /&gt;
&lt;br /&gt;
==== RISC (Reduced Instruction Set Computer) ====&lt;br /&gt;
A microprocessor architecture that uses a small set of simple instructions to perform tasks more quickly than other architectures.&lt;br /&gt;
&lt;br /&gt;
==== x86_64 ====&lt;br /&gt;
Also known as x64 or AMD64, x86_64 is a 64-bit architecture for CPUs. It is used in most home computers and servers. x86_64 is an extension of the 32-bit x86 architecture, supporting 64-bit mode and compatibility mode, which allows users to run 16-bit and 32-bit applications.&lt;br /&gt;
&lt;br /&gt;
==== GStreamer Daemon (gstd) ====&lt;br /&gt;
GStreamer Daemon, also called gstd, is a GStreamer framework for controlling audio and video streaming using an InterProcess Communication protocol.&lt;br /&gt;
&lt;br /&gt;
==== GStreamer Interpipes ====&lt;br /&gt;
GstInterpipe is a RidgeRun open-source GStreamer plug-in that enables pipeline buffers and events to flow between two or more independent pipelines. The plug-in consists of two elements: Interpipesink and Interpipesrc. The Interpipesrc connects with an Interpipesink, from which it receives buffers and events.&lt;br /&gt;
&lt;br /&gt;
==== Raspberry PI ====&lt;br /&gt;
A small, inexpensive computer used for learning and exploring computer science. It is about the size of a credit card and offers cost-effective, high-performance computing for businesses and home use.&lt;br /&gt;
&lt;br /&gt;
==== Ubuntu ====&lt;br /&gt;
Ubuntu is a modern, open-source operating system based on Linux for enterprise servers, desktops, cloud computing, and IoT.&lt;br /&gt;
&lt;br /&gt;
==== Nvidia Jetson ====&lt;br /&gt;
NVIDIA Jetson is a platform for AI applications in robotics and embedded systems. It includes compact computers, software development kits, and other tools. It is used by professional developers to create breakthrough AI products across industries and by students and enthusiasts for hands-on AI learning and innovative projects.&lt;br /&gt;
&lt;br /&gt;
==== ESP32 ====&lt;br /&gt;
ESP32 is a low-cost, low-power microcontroller board with built-in Wi-Fi and Bluetooth. It is designed for a variety of applications, including IoT devices, wearable electronics, and mobile devices. Its low cost and power efficiency make it ideal for a variety of IoT applications.&lt;br /&gt;
&lt;br /&gt;
==== Texas Instruments Processors ====&lt;br /&gt;
Developed by Texas Instruments, these processors feature ARM9, ARM Cortex-A8, ARM Cortex-A9, ARM Cortex-A15, and ARM Cortex-A53 cores. Sitara Processors offer low-power and high-performance models, making them suitable for battery-operated devices and industrial systems. They provide a developer-friendly environment with tools like Code Composer Studio and RTOS support.&lt;br /&gt;
&lt;br /&gt;
==== Qualcomm Snapdragon ====&lt;br /&gt;
A system-on-chip (SoC) that powers a variety of devices, such as smartphones, tablets, laptops, and desktops. Snapdragon processors integrate ARM Cortex cores, DSP, and AI and come with built-in Wi-Fi, LTE, and 5G, making them ideal for IoT and edge computing.&lt;br /&gt;
&lt;br /&gt;
==== Intel Atom Processors ====&lt;br /&gt;
Intel Atom Processors are designed for low-power consumption while providing sufficient power for embedded systems. Their x86 architecture ensures compatibility with a wide variety of software.&lt;br /&gt;
&lt;br /&gt;
==== Microchip PIC Microcontrollers ====&lt;br /&gt;
Known for their low power consumption and affordability, Microchip PIC Microcontrollers are ideal for embedded systems, particularly in battery-powered devices and simple consumer electronics.&lt;br /&gt;
&lt;br /&gt;
==== STMicroelectronics STM32 Series ====&lt;br /&gt;
Based on the Arm Cortex-M processor, featuring cores from Cortex-M0 to Cortex-M7.&lt;br /&gt;
&lt;br /&gt;
==== Renesas RX ====&lt;br /&gt;
The Renesas RX Family uses 32-bit RX cores, delivering strong computational power and support for complex applications.&lt;br /&gt;
&lt;br /&gt;
==== Arm Cortex-M Series ====&lt;br /&gt;
Widely used for its scalability, low power, and strong performance, the Arm Cortex-M Series offers a range of cores from Cortex-M0 to Cortex-M7.&lt;br /&gt;
&lt;br /&gt;
==== Arduino ====&lt;br /&gt;
Arduino is an open-source electronics platform that uses hardware and software to read inputs and create outputs. It is used to build prototypes for various applications, including smart homes, entertainment, and monitoring systems.&lt;br /&gt;
&lt;br /&gt;
==== NXP i.MX Series ====&lt;br /&gt;
The NXP i.MX Series offers performance versatility, with different models targeting various market segments. They come with Arm Cortex-A series cores, GPU, and DSP for enhanced performance in multimedia and machine learning applications.&lt;br /&gt;
&lt;br /&gt;
===Advanced Concepts===&lt;br /&gt;
&lt;br /&gt;
==== Real-Time Operating System (RTOS) ====&lt;br /&gt;
A Real-Time Operating System (RTOS) is an operating system designed to process data and execute tasks within a strict time constraint. RTOS ensures timely execution of critical processes, making it ideal for embedded systems, industrial automation, robotics, and real-time data processing applications.&lt;br /&gt;
&lt;br /&gt;
==== SoC (System on Chip) ====&lt;br /&gt;
A System on Chip (SoC) is an integrated circuit that combines all essential components of a computer or electronic system onto a single chip. It typically includes a CPU, GPU, memory, peripherals, and connectivity interfaces. SoCs are widely used in mobile devices, IoT devices, and embedded systems.&lt;br /&gt;
&lt;br /&gt;
==== AI (Artificial Intelligence) ====&lt;br /&gt;
Artificial intelligence (AI) is a field of study that focuses on creating machines that can learn, reason, and act. AI is used in many applications, including search engines, social media, and online shopping. AI is technology that enables computers and machines to simulate human learning, comprehension, problem solving, decision making, creativity and autonomy&lt;br /&gt;
&lt;br /&gt;
====Machine Learning ====&lt;br /&gt;
Machine Learning is a branch of artificial intelligence (AI) focused on enabling computers and machines to imitate the way that humans learn.&lt;br /&gt;
&lt;br /&gt;
==== Yocto Project ====&lt;br /&gt;
The Yocto Project is an open-source initiative that provides tools and templates for building custom Linux distributions for embedded systems. It enables fine-grained control over system components, allowing developers to optimize for performance, footprint, and security.&lt;/div&gt;</summary>
		<author><name>Sonni</name></author>
	</entry>
	<entry>
		<id>https://developerwiki.proventusnova.com/index.php?title=GStreamer_Development&amp;diff=60</id>
		<title>GStreamer Development</title>
		<link rel="alternate" type="text/html" href="https://developerwiki.proventusnova.com/index.php?title=GStreamer_Development&amp;diff=60"/>
		<updated>2025-03-10T09:21:34Z</updated>

		<summary type="html">&lt;p&gt;Sonni: Add authors&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;width:100%; background-color:#f0f0f0;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Authors:&#039;&#039;&#039;&lt;br /&gt;
Sonni Lorenz F. Cubero (sonni.cubero@proventusnova.com)&lt;br /&gt;
&lt;br /&gt;
CJ Mirafuentes (cj.mirafuentes@proventusnova.com)&lt;br /&gt;
|| &#039;&#039;&#039;Date:&#039;&#039;&#039; March 10, 2025&lt;br /&gt;
|}&lt;br /&gt;
== About GStreamer ==  &lt;br /&gt;
&lt;br /&gt;
GStreamer is a framework for creating streaming media applications. The fundamental design comes from the video pipeline at Oregon Graduate Institute, as well as some ideas from DirectShow. Available across multiple platforms and licensed under the LGPL, GStreamer is suitable for both free and proprietary use, running on Linux, Windows, macOS, Android, and iOS.  &lt;br /&gt;
&lt;br /&gt;
The framework is based on plugins that provide various codecs and other functionalities. These plugins can be linked and arranged in a pipeline, which defines the flow of data. Pipelines can also be edited using a GUI editor and saved as XML, allowing for easy creation of reusable pipeline libraries.  &lt;br /&gt;
&lt;br /&gt;
=== GStreamer Components ===  &lt;br /&gt;
GStreamer is packaged into multiple components:  &lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;gstreamer&#039;&#039;&#039;: The core package  &lt;br /&gt;
* &#039;&#039;&#039;gst-plugins-base&#039;&#039;&#039;: An essential exemplary set of elements  &lt;br /&gt;
* &#039;&#039;&#039;gst-plugins-good&#039;&#039;&#039;: A set of good-quality plugins under LGPL  &lt;br /&gt;
* &#039;&#039;&#039;gst-plugins-ugly&#039;&#039;&#039;: A set of good-quality plugins that might pose distribution problems  &lt;br /&gt;
* &#039;&#039;&#039;gst-plugins-bad&#039;&#039;&#039;: A set of plugins that need more quality improvements  &lt;br /&gt;
* &#039;&#039;&#039;gst-libav&#039;&#039;&#039;: A set of plugins that wrap libav for decoding and encoding  &lt;br /&gt;
* Other additional packages  &lt;br /&gt;
&lt;br /&gt;
== Building GStreamer ==  &lt;br /&gt;
&lt;br /&gt;
This setup is recommended for developers who want to work on the GStreamer code itself, as well as for application developers who need to test features that have not yet been released.&lt;br /&gt;
&lt;br /&gt;
=== Prerequisites ===  &lt;br /&gt;
The following dependencies must be installed on the Linux system:  &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Compiler&#039;&#039;&#039;  &lt;br /&gt;
* GCC, Clang  &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Package Manager&#039;&#039;&#039;&lt;br /&gt;
Any one of the following will do:&lt;br /&gt;
* apt, dnf, snap, etc.  &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Packages/Dependencies&#039;&#039;&#039;  &lt;br /&gt;
* meson, ninja, flex, bison, gitlint  &lt;br /&gt;
&lt;br /&gt;
The GStreamer build environment was emulated via VMware Workstation 17 Pro with the following specifications:  &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
| &#039;&#039;&#039;Operating System&#039;&#039;&#039;: || Ubuntu 24.04.1 LTS&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Processors&#039;&#039;&#039;: || Number of processors: 4 &lt;br /&gt;
Number of cores per processor: 1&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Memory&#039;&#039;&#039;: || 8GB&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Storage&#039;&#039;&#039;: || 30GB (Expandable)&lt;br /&gt;
|} &lt;br /&gt;
&lt;br /&gt;
=== Getting the Source Code ===  &lt;br /&gt;
To build GStreamer, first, secure the latest copy of the source code:  &lt;br /&gt;
* GitLab: [https://gitlab.freedesktop.org/gstreamer/gstreamer GStreamer Repository]  &lt;br /&gt;
&lt;br /&gt;
After obtaining the source, ensure that the GStreamer version is compatible with the installed Meson version. Switch to the appropriate branch based on your Meson version.  &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ GStreamer and Meson Version Compatibility&lt;br /&gt;
! GStreamer Version !! Meson Version  &lt;br /&gt;
|-&lt;br /&gt;
| 1.25 (main branch to date) || &amp;gt;= 1.24  &lt;br /&gt;
|-&lt;br /&gt;
| 1.24 || &amp;gt;= 1.1  &lt;br /&gt;
|-&lt;br /&gt;
| 1.22 || &amp;gt;= 0.62  &lt;br /&gt;
|-&lt;br /&gt;
| 1.20 || &amp;gt;= 0.59  &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039; To verify which Meson version is compatible with GStreamer, check the &#039;&#039;&#039;meson.build&#039;&#039;&#039; file.  &lt;br /&gt;
&lt;br /&gt;
=== Updating Subprojects ===  &lt;br /&gt;
GStreamer modules are typically found under the &#039;&#039;&#039;subprojects/&#039;&#039;&#039; directory. These modules are not updated automatically and must be updated manually.  &lt;br /&gt;
&lt;br /&gt;
To update subprojects, execute the following command:  &lt;br /&gt;
&lt;br /&gt;
 meson subprojects update&lt;br /&gt;
&lt;br /&gt;
=== Setting Up the Build with Meson ===  &lt;br /&gt;
To set up GStreamer and its modules, execute the following command:  &lt;br /&gt;
&lt;br /&gt;
 meson setup &amp;lt;build_directory&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039; You can specify any directory name for &#039;&#039;&#039;&amp;lt;build_directory&amp;gt;&#039;&#039;&#039;. The command will automatically create the directory if it does not exist.  &lt;br /&gt;
&lt;br /&gt;
=== Building GStreamer and Its Modules ===  &lt;br /&gt;
Once Meson has finished setting up the module, execute either of the following commands to build:  &lt;br /&gt;
&lt;br /&gt;
 ninja -C &amp;lt;build_directory&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Or  &lt;br /&gt;
&lt;br /&gt;
 meson compile -C &amp;lt;build_directory&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Testing the GStreamer Build ==  &lt;br /&gt;
To test all components, run the following command:  &lt;br /&gt;
&lt;br /&gt;
 meson test -C &amp;lt;build_directory&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
To test a specific component, use the following command:  &lt;br /&gt;
&lt;br /&gt;
 meson test -C &amp;lt;build_directory&amp;gt; --suite gst-plugins-base&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= 🏗 Need a Solution for Your Project? =&lt;br /&gt;
Are you looking for ways to:  &lt;br /&gt;
✅ Optimize your &#039;&#039;&#039;embedded system&#039;&#039;&#039; for better performance?  &lt;br /&gt;
✅ Integrate &#039;&#039;&#039;AI and computer vision&#039;&#039;&#039; into your products?  &lt;br /&gt;
✅ Improve &#039;&#039;&#039;multimedia processing&#039;&#039;&#039; for real-time applications?  &lt;br /&gt;
✅ Develop a &#039;&#039;&#039;robust and scalable&#039;&#039;&#039; web platform?  &lt;br /&gt;
&lt;br /&gt;
Our team has helped businesses across multiple industries solve these challenges.  &lt;br /&gt;
&lt;br /&gt;
📩 &#039;&#039;&#039;Let’s collaborate!&#039;&#039;&#039; Contact us at &#039;&#039;&#039;[support@proventusnova.com](mailto:support@proventusnova.com)&#039;&#039;&#039; or visit &#039;&#039;&#039;[ProventusNova.com](https://proventusnova.com)&#039;&#039;&#039; to discuss your project. --&amp;gt;&lt;/div&gt;</summary>
		<author><name>Sonni</name></author>
	</entry>
	<entry>
		<id>https://developerwiki.proventusnova.com/index.php?title=GStreamer_Application_Development&amp;diff=59</id>
		<title>GStreamer Application Development</title>
		<link rel="alternate" type="text/html" href="https://developerwiki.proventusnova.com/index.php?title=GStreamer_Application_Development&amp;diff=59"/>
		<updated>2025-03-10T09:20:57Z</updated>

		<summary type="html">&lt;p&gt;Sonni: Add authors&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;width:100%; background-color:#f0f0f0;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Authors:&#039;&#039;&#039;&lt;br /&gt;
Sonni Lorenz F. Cubero (sonni.cubero@proventusnova.com)&lt;br /&gt;
&lt;br /&gt;
CJ Mirafuentes (cj.mirafuentes@proventusnova.com)&lt;br /&gt;
|| &#039;&#039;&#039;Date:&#039;&#039;&#039; March 10, 2025&lt;br /&gt;
|}&lt;br /&gt;
= GStreamer Application Development =&lt;br /&gt;
This page shows how to build gstreamer applications. &lt;br /&gt;
Gstreamer applications can be built on the following platforms:&lt;br /&gt;
* Linux&lt;br /&gt;
* Windows&lt;br /&gt;
* Android&lt;br /&gt;
* iOS&lt;br /&gt;
* macOS&lt;br /&gt;
&lt;br /&gt;
== Linux ==&lt;br /&gt;
Gstreamer is included in all Linux distributions. We recommend using the latest version of a fast-moving distribution such as Fedora, Ubuntu (non-LTS), Debian or OpenSuse to get a recentg Gstreamer release.&lt;br /&gt;
&lt;br /&gt;
=== Prerequisites ===&lt;br /&gt;
The following must be present in the Linux system.&lt;br /&gt;
&lt;br /&gt;
=== Compiler ===  &lt;br /&gt;
* GCC  &lt;br /&gt;
* Clang  &lt;br /&gt;
&lt;br /&gt;
=== Package Manager ===  &lt;br /&gt;
Any one of the following will do:&lt;br /&gt;
* apt  &lt;br /&gt;
* dnf  &lt;br /&gt;
* snap  &lt;br /&gt;
&lt;br /&gt;
=== Linux Build Environment === &lt;br /&gt;
The Linux build environment was emulated using &#039;&#039;&#039;VMware Workstation 17 Pro&#039;&#039;&#039; with the following specifications:  &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
| &#039;&#039;&#039;Operating System&#039;&#039;&#039;: || Ubuntu 24.04.1 LTS&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Processors&#039;&#039;&#039;: || Number of processors: 4 &lt;br /&gt;
Number of cores per processor: 1&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Memory&#039;&#039;&#039;: || 8GB&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Storage&#039;&#039;&#039;: || 30GB (Expandable)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Installing on Ubuntu/Debian ===&lt;br /&gt;
Run the following command:  &lt;br /&gt;
&lt;br /&gt;
 apt-get install libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev libgstreamer-plugins-bad1.0-dev gstreamer1.0-plugins-base gstreamer1.0-plugins-good gstreamer1.0-plugins-bad gstreamer1.0-plugins-ugly gstreamer1.0-libav gstreamer1.0-tools gstreamer1.0-x gstreamer1.0-alsa gstreamer1.0-gl gstreamer1.0-gtk3 gstreamer1.0-qt5 gstreamer1.0-pulseaudio&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039; Make sure you have root access to install.  &lt;br /&gt;
&lt;br /&gt;
=== Installing on Fedora ===&lt;br /&gt;
Run the following command:  &lt;br /&gt;
&lt;br /&gt;
 dnf install gstreamer1-devel gstreamer1-plugins-base-tools gstreamer1-doc gstreamer1-plugins-base-devel gstreamer1-plugins-good gstreamer1-plugins-good-extras gstreamer1-plugins-ugly gstreamer1-plugins-bad-free gstreamer1-plugins-bad-free-devel gstreamer1-plugins-bad-free-extras&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039; Make sure you have root access to install.  &lt;br /&gt;
&lt;br /&gt;
=== Building a GStreamer Application ===&lt;br /&gt;
Building GStreamer requires the gcc/clang compiler and a text editor. Run the following command to build an application using GStreamer:  &lt;br /&gt;
&lt;br /&gt;
 gcc [filename].c -o [output_file] `pkg-config --cflags --libs gstreamer-1.0`&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Running a GStreamer Application ===&lt;br /&gt;
To run the application, simply run the following command:  &lt;br /&gt;
&lt;br /&gt;
 ./[application_name]&lt;br /&gt;
&lt;br /&gt;
== Windows ==&lt;br /&gt;
&lt;br /&gt;
=== Prerequisites ===&lt;br /&gt;
To develop applications using GStreamer for Windows, it is recommended to use Windows 10 or newer (Windows 7 or 8 is also supported), with Microsoft Visual Studio 2019 or newer.&lt;br /&gt;
&lt;br /&gt;
Additionally, the runtime and development installers must be installed.  &lt;br /&gt;
&#039;&#039;&#039;[https://gstreamer.freedesktop.org/download/#windows Download Gstreamer]&#039;&#039;&#039;  &lt;br /&gt;
&lt;br /&gt;
=== Installing on Windows ===&lt;br /&gt;
Install the GStreamer Runtime and Development Installer. After installing GStreamer runtime and development, add its libraries and plugins to your environment variables.  &lt;br /&gt;
&lt;br /&gt;
Follow these steps to add them to your environment variables:&lt;br /&gt;
&lt;br /&gt;
# Open Environment Variables.&lt;br /&gt;
# In System Variables, scroll down to the &#039;&#039;&#039;Path&#039;&#039;&#039; variable and click &#039;&#039;&#039;Edit&#039;&#039;&#039;.&lt;br /&gt;
# Click &#039;&#039;&#039;New&#039;&#039;&#039;.&lt;br /&gt;
# Add the locations for the &#039;&#039;&#039;\bin&#039;&#039;&#039;, &#039;&#039;&#039;\lib&#039;&#039;&#039;, &#039;&#039;&#039;\include&#039;&#039;&#039;, and &#039;&#039;&#039;\gstreamer-1.0&#039;&#039;&#039; directories.&lt;br /&gt;
&lt;br /&gt;
If you have the &#039;&#039;&#039;32-bit&#039;&#039;&#039; version installed, add the following paths to your System Variables:&lt;br /&gt;
&lt;br /&gt;
*C:\gstreamer\1.0\msvc_x86\bin&lt;br /&gt;
*C:\gstreamer\1.0\msvc_x86\lib&lt;br /&gt;
*C:\gstreamer\1.0\msvc_x86\lib\gstreamer-1.0&lt;br /&gt;
*C:\gstreamer\1.0\msvc_x86\include&lt;br /&gt;
&lt;br /&gt;
If you have the &#039;&#039;&#039;64-bit&#039;&#039;&#039; version installed, add the following paths to your System Variables:&lt;br /&gt;
&lt;br /&gt;
*C:\gstreamer\1.0\msvc_x86_64\bin&lt;br /&gt;
*C:\gstreamer\1.0\msvc_x86_64\lib&lt;br /&gt;
*C:\gstreamer\1.0\msvc_x86_64\lib\gstreamer-1.0&lt;br /&gt;
*C:\gstreamer\1.0\msvc_x86_64\include&lt;br /&gt;
&lt;br /&gt;
=== Building and Running a GStreamer Application ===&lt;br /&gt;
&lt;br /&gt;
This build was done with a 64-bit runtime and development GStreamer.  &lt;br /&gt;
&lt;br /&gt;
To build a GStreamer project, follow these steps:&lt;br /&gt;
&lt;br /&gt;
1 .Open &#039;&#039;&#039;Visual Studio&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
2. Click &#039;&#039;&#039;Create a new project&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
3. Select either &#039;&#039;&#039;Empty Project&#039;&#039;&#039; or &#039;&#039;&#039;Console App&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
.4 After selecting your project, set up the libraries and dependencies.&lt;br /&gt;
&lt;br /&gt;
5. In &#039;&#039;&#039;Solution Explorer&#039;&#039;&#039;, right-click on the project and select &#039;&#039;&#039;Properties&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
6. Go to &#039;&#039;&#039;C/C++&#039;&#039;&#039; → &#039;&#039;&#039;General&#039;&#039;&#039; → &#039;&#039;&#039;Additional Include Directories&#039;&#039;&#039; → Click &#039;&#039;&#039;Edit&#039;&#039;&#039; and add the following paths:&lt;br /&gt;
 C:\gstreamer\1.0\msvc_x86_64\include\glib-2.0 &lt;br /&gt;
 C:\gstreamer\1.0\msvc_x86_64\include\gstreamer-1.0 &lt;br /&gt;
 C:\gstreamer\1.0\msvc_x86_64\include\gstreamer-1.0\gst &lt;br /&gt;
 C:\gstreamer\1.0\msvc_x86_64\include\glib-2.0\glib &lt;br /&gt;
 C:\gstreamer\1.0\msvc_x86_64\lib\glib-2.0\include &lt;br /&gt;
 C:\gstreamer\1.0\msvc_x86_64\include\glib-2.0\ &lt;br /&gt;
 C:\gstreamer\1.0\msvc_x86_64\lib\gstreamer-1.0 &lt;br /&gt;
 %(AdditionalIncludeDirectories)&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039; The directories may vary depending on where you installed the GStreamer runtime and development files.&lt;br /&gt;
&lt;br /&gt;
7. Next, go to &#039;&#039;&#039;Linker&#039;&#039;&#039; → &#039;&#039;&#039;General&#039;&#039;&#039; → &#039;&#039;&#039;Additional Library Directories&#039;&#039;&#039; → Click &#039;&#039;&#039;Edit&#039;&#039;&#039; and add the following paths:&lt;br /&gt;
 C:\gstreamer\1.0\msvc_x86_64\lib&lt;br /&gt;
 C:\gstreamer\1.0\msvc_x86_64\lib\gstreamer-1.0&lt;br /&gt;
 C:\gstreamer\1.0\msvc_x86_64\bin&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039; The directories may vary depending on where you installed the GStreamer runtime and development files.&lt;br /&gt;
&lt;br /&gt;
8. Next, go to &#039;&#039;&#039;Linker&#039;&#039;&#039; → &#039;&#039;&#039;Input&#039;&#039;&#039; → &#039;&#039;&#039;Additional Dependencies&#039;&#039;&#039; → Click &#039;&#039;&#039;Edit&#039;&#039;&#039; and add the following libraries:&lt;br /&gt;
 gobject-2.0.lib&lt;br /&gt;
 glib-2.0.lib&lt;br /&gt;
 gstreamer-1.0.lib&lt;br /&gt;
 kernel32.lib&lt;br /&gt;
 user32.lib&lt;br /&gt;
 gdi32.lib&lt;br /&gt;
 winspool.lib&lt;br /&gt;
 comdlg32.lib&lt;br /&gt;
 advapi32.lib&lt;br /&gt;
 shell32.lib&lt;br /&gt;
 ole32.lib&lt;br /&gt;
 oleaut32.lib&lt;br /&gt;
 uuid.lib&lt;br /&gt;
 odbc32.lib&lt;br /&gt;
 odbccp32.lib&lt;br /&gt;
 %(AdditionalDependencies)&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039; The directories may vary depending on where you installed the GStreamer runtime and development files.&lt;br /&gt;
&lt;br /&gt;
9. After setting up the Libraries and Dependencies, its time to build the project.&lt;br /&gt;
&lt;br /&gt;
10. In the toolbar, select Debut, then select either x32 or x64, then click the play button.&lt;br /&gt;
&lt;br /&gt;
11. After clicking, the project should build and now you have your first Gstreamer Project!&lt;br /&gt;
&lt;br /&gt;
= References =&lt;br /&gt;
* [https://gstreamer.freedesktop.org/documentation/application-development/introduction/gstreamer.html?gi-language=c GStreamer Introduction]&lt;br /&gt;
* [https://gstreamer.freedesktop.org/documentation/installing/building-from-source-using-meson.html?gi-language=c#basic-meson-and-ninja-usage Building GStreamer from Source (Meson &amp;amp; Ninja)]&lt;br /&gt;
* [https://gitlab.freedesktop.org/gstreamer/gstreamer/-/blob/main/README.md README.md - GStreamer GitLab]&lt;br /&gt;
* [https://developer.ridgerun.com/wiki/index.php/GStreamer_Daemon GStreamer Daemon - RidgeRun]&lt;br /&gt;
* [https://developer.ridgerun.com/wiki/index.php/GStreamer_Daemon_-_Building_GStreamer_Daemon Building GStreamer Daemon - RidgeRun]&lt;br /&gt;
* [https://developer.ridgerun.com/wiki/index.php?title=GstInterpipe GstInterpipe - RidgeRun Wiki]&lt;br /&gt;
* [https://stackoverflow.com/a/50756228 Stack Overflow Answer - GStreamer]&lt;br /&gt;
* [https://stackoverflow.com/a/73301549 Stack Overflow Answer - GStreamer]&lt;br /&gt;
&lt;br /&gt;
= Frequently Asked Questions =&lt;br /&gt;
&lt;br /&gt;
* What is GStreamer?&lt;br /&gt;
**GStreamer is an open-source multimedia framework used for creating media-handling components such as audio and video processing applications. It is widely used in media players, streaming applications, and multimedia frameworks.&lt;br /&gt;
* How do I install GStreamer on Linux?&lt;br /&gt;
**On Ubuntu/Debian, use the following command:&lt;br /&gt;
 #Ubuntu&lt;br /&gt;
 apt-get install libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev libgstreamer-plugins-bad1.0-dev gstreamer1.0-plugins-base gstreamer1.0-plugins-good gstreamer1.0-plugins-bad gstreamer1.0-plugins-ugly gstreamer1.0-libav gstreamer1.0-tools gstreamer1.0-x gstreamer1.0-alsa gstreamer1.0-gl gstreamer1.0-gtk3 gstreamer1.0-qt5 gstreamer1.0-pulseaudio&lt;br /&gt;
 &lt;br /&gt;
 #Debian&lt;br /&gt;
 dnf install gstreamer1-devel gstreamer1-plugins-base-tools gstreamer1-doc gstreamer1-plugins-base-devel gstreamer1-plugins-good gstreamer1-plugins-good-extras gstreamer1-plugins-ugly gstreamer1-plugins-bad-free gstreamer1-plugins-bad-free-devel gstreamer1-plugins-bad-free-extras&lt;br /&gt;
&lt;br /&gt;
* How do I install GStreamer on Windows?&lt;br /&gt;
**Download the GStreamer Runtime and Development Installer from the official website: [https://gstreamer.freedesktop.org/download/#windows GStreamer Download]&lt;br /&gt;
&lt;br /&gt;
= 🏗 Need a Solution for Your Project? =&lt;br /&gt;
Are you looking for ways to:  &lt;br /&gt;
✅ Optimize your &#039;&#039;&#039;embedded system&#039;&#039;&#039; for better performance?  &lt;br /&gt;
✅ Integrate &#039;&#039;&#039;AI and computer vision&#039;&#039;&#039; into your products?  &lt;br /&gt;
✅ Improve &#039;&#039;&#039;multimedia processing&#039;&#039;&#039; for real-time applications?  &lt;br /&gt;
✅ Develop a &#039;&#039;&#039;robust and scalable&#039;&#039;&#039; web platform?  &lt;br /&gt;
&lt;br /&gt;
Our team has helped businesses across multiple industries solve these challenges.  &lt;br /&gt;
&lt;br /&gt;
📩 &#039;&#039;&#039;Let’s collaborate!&#039;&#039;&#039; Contact us at &#039;&#039;&#039;[support@proventusnova.com](mailto:support@proventusnova.com)&#039;&#039;&#039; or visit &#039;&#039;&#039;[ProventusNova.com](https://proventusnova.com)&#039;&#039;&#039; to discuss your project. --&amp;gt;&lt;/div&gt;</summary>
		<author><name>Sonni</name></author>
	</entry>
	<entry>
		<id>https://developerwiki.proventusnova.com/index.php?title=GStreamer_Application_Development&amp;diff=58</id>
		<title>GStreamer Application Development</title>
		<link rel="alternate" type="text/html" href="https://developerwiki.proventusnova.com/index.php?title=GStreamer_Application_Development&amp;diff=58"/>
		<updated>2025-03-10T09:01:44Z</updated>

		<summary type="html">&lt;p&gt;Sonni: Fix text not shown as bold&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= GStreamer Application Development =&lt;br /&gt;
This page shows how to build gstreamer applications. &lt;br /&gt;
Gstreamer applications can be built on the following platforms:&lt;br /&gt;
* Linux&lt;br /&gt;
* Windows&lt;br /&gt;
* Android&lt;br /&gt;
* iOS&lt;br /&gt;
* macOS&lt;br /&gt;
&lt;br /&gt;
== Linux ==&lt;br /&gt;
Gstreamer is included in all Linux distributions. We recommend using the latest version of a fast-moving distribution such as Fedora, Ubuntu (non-LTS), Debian or OpenSuse to get a recentg Gstreamer release.&lt;br /&gt;
&lt;br /&gt;
=== Prerequisites ===&lt;br /&gt;
The following must be present in the Linux system.&lt;br /&gt;
&lt;br /&gt;
=== Compiler ===  &lt;br /&gt;
* GCC  &lt;br /&gt;
* Clang  &lt;br /&gt;
&lt;br /&gt;
=== Package Manager ===  &lt;br /&gt;
Any one of the following will do:&lt;br /&gt;
* apt  &lt;br /&gt;
* dnf  &lt;br /&gt;
* snap  &lt;br /&gt;
&lt;br /&gt;
=== Linux Build Environment === &lt;br /&gt;
The Linux build environment was emulated using &#039;&#039;&#039;VMware Workstation 17 Pro&#039;&#039;&#039; with the following specifications:  &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
| &#039;&#039;&#039;Operating System&#039;&#039;&#039;: || Ubuntu 24.04.1 LTS&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Processors&#039;&#039;&#039;: || Number of processors: 4 &lt;br /&gt;
Number of cores per processor: 1&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Memory&#039;&#039;&#039;: || 8GB&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Storage&#039;&#039;&#039;: || 30GB (Expandable)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Installing on Ubuntu/Debian ===&lt;br /&gt;
Run the following command:  &lt;br /&gt;
&lt;br /&gt;
 apt-get install libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev libgstreamer-plugins-bad1.0-dev gstreamer1.0-plugins-base gstreamer1.0-plugins-good gstreamer1.0-plugins-bad gstreamer1.0-plugins-ugly gstreamer1.0-libav gstreamer1.0-tools gstreamer1.0-x gstreamer1.0-alsa gstreamer1.0-gl gstreamer1.0-gtk3 gstreamer1.0-qt5 gstreamer1.0-pulseaudio&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039; Make sure you have root access to install.  &lt;br /&gt;
&lt;br /&gt;
=== Installing on Fedora ===&lt;br /&gt;
Run the following command:  &lt;br /&gt;
&lt;br /&gt;
 dnf install gstreamer1-devel gstreamer1-plugins-base-tools gstreamer1-doc gstreamer1-plugins-base-devel gstreamer1-plugins-good gstreamer1-plugins-good-extras gstreamer1-plugins-ugly gstreamer1-plugins-bad-free gstreamer1-plugins-bad-free-devel gstreamer1-plugins-bad-free-extras&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039; Make sure you have root access to install.  &lt;br /&gt;
&lt;br /&gt;
=== Building a GStreamer Application ===&lt;br /&gt;
Building GStreamer requires the gcc/clang compiler and a text editor. Run the following command to build an application using GStreamer:  &lt;br /&gt;
&lt;br /&gt;
 gcc [filename].c -o [output_file] `pkg-config --cflags --libs gstreamer-1.0`&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Running a GStreamer Application ===&lt;br /&gt;
To run the application, simply run the following command:  &lt;br /&gt;
&lt;br /&gt;
 ./[application_name]&lt;br /&gt;
&lt;br /&gt;
== Windows ==&lt;br /&gt;
&lt;br /&gt;
=== Prerequisites ===&lt;br /&gt;
To develop applications using GStreamer for Windows, it is recommended to use Windows 10 or newer (Windows 7 or 8 is also supported), with Microsoft Visual Studio 2019 or newer.&lt;br /&gt;
&lt;br /&gt;
Additionally, the runtime and development installers must be installed.  &lt;br /&gt;
&#039;&#039;&#039;[https://gstreamer.freedesktop.org/download/#windows Download Gstreamer]&#039;&#039;&#039;  &lt;br /&gt;
&lt;br /&gt;
=== Installing on Windows ===&lt;br /&gt;
Install the GStreamer Runtime and Development Installer. After installing GStreamer runtime and development, add its libraries and plugins to your environment variables.  &lt;br /&gt;
&lt;br /&gt;
Follow these steps to add them to your environment variables:&lt;br /&gt;
&lt;br /&gt;
# Open Environment Variables.&lt;br /&gt;
# In System Variables, scroll down to the &#039;&#039;&#039;Path&#039;&#039;&#039; variable and click &#039;&#039;&#039;Edit&#039;&#039;&#039;.&lt;br /&gt;
# Click &#039;&#039;&#039;New&#039;&#039;&#039;.&lt;br /&gt;
# Add the locations for the &#039;&#039;&#039;\bin&#039;&#039;&#039;, &#039;&#039;&#039;\lib&#039;&#039;&#039;, &#039;&#039;&#039;\include&#039;&#039;&#039;, and &#039;&#039;&#039;\gstreamer-1.0&#039;&#039;&#039; directories.&lt;br /&gt;
&lt;br /&gt;
If you have the &#039;&#039;&#039;32-bit&#039;&#039;&#039; version installed, add the following paths to your System Variables:&lt;br /&gt;
&lt;br /&gt;
*C:\gstreamer\1.0\msvc_x86\bin&lt;br /&gt;
*C:\gstreamer\1.0\msvc_x86\lib&lt;br /&gt;
*C:\gstreamer\1.0\msvc_x86\lib\gstreamer-1.0&lt;br /&gt;
*C:\gstreamer\1.0\msvc_x86\include&lt;br /&gt;
&lt;br /&gt;
If you have the &#039;&#039;&#039;64-bit&#039;&#039;&#039; version installed, add the following paths to your System Variables:&lt;br /&gt;
&lt;br /&gt;
*C:\gstreamer\1.0\msvc_x86_64\bin&lt;br /&gt;
*C:\gstreamer\1.0\msvc_x86_64\lib&lt;br /&gt;
*C:\gstreamer\1.0\msvc_x86_64\lib\gstreamer-1.0&lt;br /&gt;
*C:\gstreamer\1.0\msvc_x86_64\include&lt;br /&gt;
&lt;br /&gt;
=== Building and Running a GStreamer Application ===&lt;br /&gt;
&lt;br /&gt;
This build was done with a 64-bit runtime and development GStreamer.  &lt;br /&gt;
&lt;br /&gt;
To build a GStreamer project, follow these steps:&lt;br /&gt;
&lt;br /&gt;
1 .Open &#039;&#039;&#039;Visual Studio&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
2. Click &#039;&#039;&#039;Create a new project&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
3. Select either &#039;&#039;&#039;Empty Project&#039;&#039;&#039; or &#039;&#039;&#039;Console App&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
.4 After selecting your project, set up the libraries and dependencies.&lt;br /&gt;
&lt;br /&gt;
5. In &#039;&#039;&#039;Solution Explorer&#039;&#039;&#039;, right-click on the project and select &#039;&#039;&#039;Properties&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
6. Go to &#039;&#039;&#039;C/C++&#039;&#039;&#039; → &#039;&#039;&#039;General&#039;&#039;&#039; → &#039;&#039;&#039;Additional Include Directories&#039;&#039;&#039; → Click &#039;&#039;&#039;Edit&#039;&#039;&#039; and add the following paths:&lt;br /&gt;
 C:\gstreamer\1.0\msvc_x86_64\include\glib-2.0 &lt;br /&gt;
 C:\gstreamer\1.0\msvc_x86_64\include\gstreamer-1.0 &lt;br /&gt;
 C:\gstreamer\1.0\msvc_x86_64\include\gstreamer-1.0\gst &lt;br /&gt;
 C:\gstreamer\1.0\msvc_x86_64\include\glib-2.0\glib &lt;br /&gt;
 C:\gstreamer\1.0\msvc_x86_64\lib\glib-2.0\include &lt;br /&gt;
 C:\gstreamer\1.0\msvc_x86_64\include\glib-2.0\ &lt;br /&gt;
 C:\gstreamer\1.0\msvc_x86_64\lib\gstreamer-1.0 &lt;br /&gt;
 %(AdditionalIncludeDirectories)&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039; The directories may vary depending on where you installed the GStreamer runtime and development files.&lt;br /&gt;
&lt;br /&gt;
7. Next, go to &#039;&#039;&#039;Linker&#039;&#039;&#039; → &#039;&#039;&#039;General&#039;&#039;&#039; → &#039;&#039;&#039;Additional Library Directories&#039;&#039;&#039; → Click &#039;&#039;&#039;Edit&#039;&#039;&#039; and add the following paths:&lt;br /&gt;
 C:\gstreamer\1.0\msvc_x86_64\lib&lt;br /&gt;
 C:\gstreamer\1.0\msvc_x86_64\lib\gstreamer-1.0&lt;br /&gt;
 C:\gstreamer\1.0\msvc_x86_64\bin&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039; The directories may vary depending on where you installed the GStreamer runtime and development files.&lt;br /&gt;
&lt;br /&gt;
8. Next, go to &#039;&#039;&#039;Linker&#039;&#039;&#039; → &#039;&#039;&#039;Input&#039;&#039;&#039; → &#039;&#039;&#039;Additional Dependencies&#039;&#039;&#039; → Click &#039;&#039;&#039;Edit&#039;&#039;&#039; and add the following libraries:&lt;br /&gt;
 gobject-2.0.lib&lt;br /&gt;
 glib-2.0.lib&lt;br /&gt;
 gstreamer-1.0.lib&lt;br /&gt;
 kernel32.lib&lt;br /&gt;
 user32.lib&lt;br /&gt;
 gdi32.lib&lt;br /&gt;
 winspool.lib&lt;br /&gt;
 comdlg32.lib&lt;br /&gt;
 advapi32.lib&lt;br /&gt;
 shell32.lib&lt;br /&gt;
 ole32.lib&lt;br /&gt;
 oleaut32.lib&lt;br /&gt;
 uuid.lib&lt;br /&gt;
 odbc32.lib&lt;br /&gt;
 odbccp32.lib&lt;br /&gt;
 %(AdditionalDependencies)&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039; The directories may vary depending on where you installed the GStreamer runtime and development files.&lt;br /&gt;
&lt;br /&gt;
9. After setting up the Libraries and Dependencies, its time to build the project.&lt;br /&gt;
&lt;br /&gt;
10. In the toolbar, select Debut, then select either x32 or x64, then click the play button.&lt;br /&gt;
&lt;br /&gt;
11. After clicking, the project should build and now you have your first Gstreamer Project!&lt;br /&gt;
&lt;br /&gt;
= References =&lt;br /&gt;
* [https://gstreamer.freedesktop.org/documentation/application-development/introduction/gstreamer.html?gi-language=c GStreamer Introduction]&lt;br /&gt;
* [https://gstreamer.freedesktop.org/documentation/installing/building-from-source-using-meson.html?gi-language=c#basic-meson-and-ninja-usage Building GStreamer from Source (Meson &amp;amp; Ninja)]&lt;br /&gt;
* [https://gitlab.freedesktop.org/gstreamer/gstreamer/-/blob/main/README.md README.md - GStreamer GitLab]&lt;br /&gt;
* [https://developer.ridgerun.com/wiki/index.php/GStreamer_Daemon GStreamer Daemon - RidgeRun]&lt;br /&gt;
* [https://developer.ridgerun.com/wiki/index.php/GStreamer_Daemon_-_Building_GStreamer_Daemon Building GStreamer Daemon - RidgeRun]&lt;br /&gt;
* [https://developer.ridgerun.com/wiki/index.php?title=GstInterpipe GstInterpipe - RidgeRun Wiki]&lt;br /&gt;
* [https://stackoverflow.com/a/50756228 Stack Overflow Answer - GStreamer]&lt;br /&gt;
* [https://stackoverflow.com/a/73301549 Stack Overflow Answer - GStreamer]&lt;br /&gt;
&lt;br /&gt;
= Frequently Asked Questions =&lt;br /&gt;
&lt;br /&gt;
* What is GStreamer?&lt;br /&gt;
**GStreamer is an open-source multimedia framework used for creating media-handling components such as audio and video processing applications. It is widely used in media players, streaming applications, and multimedia frameworks.&lt;br /&gt;
* How do I install GStreamer on Linux?&lt;br /&gt;
**On Ubuntu/Debian, use the following command:&lt;br /&gt;
 #Ubuntu&lt;br /&gt;
 apt-get install libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev libgstreamer-plugins-bad1.0-dev gstreamer1.0-plugins-base gstreamer1.0-plugins-good gstreamer1.0-plugins-bad gstreamer1.0-plugins-ugly gstreamer1.0-libav gstreamer1.0-tools gstreamer1.0-x gstreamer1.0-alsa gstreamer1.0-gl gstreamer1.0-gtk3 gstreamer1.0-qt5 gstreamer1.0-pulseaudio&lt;br /&gt;
 &lt;br /&gt;
 #Debian&lt;br /&gt;
 dnf install gstreamer1-devel gstreamer1-plugins-base-tools gstreamer1-doc gstreamer1-plugins-base-devel gstreamer1-plugins-good gstreamer1-plugins-good-extras gstreamer1-plugins-ugly gstreamer1-plugins-bad-free gstreamer1-plugins-bad-free-devel gstreamer1-plugins-bad-free-extras&lt;br /&gt;
&lt;br /&gt;
* How do I install GStreamer on Windows?&lt;br /&gt;
**Download the GStreamer Runtime and Development Installer from the official website: [https://gstreamer.freedesktop.org/download/#windows GStreamer Download]&lt;br /&gt;
&lt;br /&gt;
= 🏗 Need a Solution for Your Project? =&lt;br /&gt;
Are you looking for ways to:  &lt;br /&gt;
✅ Optimize your &#039;&#039;&#039;embedded system&#039;&#039;&#039; for better performance?  &lt;br /&gt;
✅ Integrate &#039;&#039;&#039;AI and computer vision&#039;&#039;&#039; into your products?  &lt;br /&gt;
✅ Improve &#039;&#039;&#039;multimedia processing&#039;&#039;&#039; for real-time applications?  &lt;br /&gt;
✅ Develop a &#039;&#039;&#039;robust and scalable&#039;&#039;&#039; web platform?  &lt;br /&gt;
&lt;br /&gt;
Our team has helped businesses across multiple industries solve these challenges.  &lt;br /&gt;
&lt;br /&gt;
📩 &#039;&#039;&#039;Let’s collaborate!&#039;&#039;&#039; Contact us at &#039;&#039;&#039;[support@proventusnova.com](mailto:support@proventusnova.com)&#039;&#039;&#039; or visit &#039;&#039;&#039;[ProventusNova.com](https://proventusnova.com)&#039;&#039;&#039; to discuss your project. --&amp;gt;&lt;/div&gt;</summary>
		<author><name>Sonni</name></author>
	</entry>
	<entry>
		<id>https://developerwiki.proventusnova.com/index.php?title=Main_Page&amp;diff=57</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="https://developerwiki.proventusnova.com/index.php?title=Main_Page&amp;diff=57"/>
		<updated>2025-03-10T08:52:11Z</updated>

		<summary type="html">&lt;p&gt;Sonni: Add document icon&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{DISPLAYTITLE:Home - ProventusNova DeveloperWiki}}&lt;br /&gt;
&lt;br /&gt;
= Welcome to the ProventusNova Developer Wiki =&lt;br /&gt;
&#039;&#039;&#039;Expert knowledge for Embedded Systems, AI, and Software Development.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Looking to build high-performance embedded systems, optimize AI models, or streamline multimedia processing? This wiki is a &#039;&#039;&#039;public knowledge hub&#039;&#039;&#039; designed to help engineers, developers, and businesses solve real-world technical challenges.  &lt;br /&gt;
&lt;br /&gt;
Here, you’ll find &#039;&#039;&#039;step-by-step tutorials, best practices, and deep technical insights&#039;&#039;&#039; to help you bring your projects to life.  &lt;br /&gt;
&lt;br /&gt;
== 🚀 What You’ll Find Here ==&lt;br /&gt;
* &#039;&#039;&#039;Hands-on Tutorials&#039;&#039;&#039; – Practical guides to get you started quickly.  &lt;br /&gt;
* &#039;&#039;&#039;Industry Best Practices&#039;&#039;&#039; – Proven workflows and methodologies.  &lt;br /&gt;
* &#039;&#039;&#039;Optimized Solutions&#039;&#039;&#039; – Performance tuning for embedded, AI, and multimedia applications.  &lt;br /&gt;
* &#039;&#039;&#039;Open-Source Resources&#039;&#039;&#039; – Code samples, frameworks, and tools to accelerate development.  &lt;br /&gt;
&lt;br /&gt;
Whether you&#039;re an individual developer, a startup, or an enterprise, you’ll find resources here to &#039;&#039;&#039;enhance your expertise and improve your products&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
== 💡 Featured Tutorials ==&lt;br /&gt;
🔧 **[Building a Custom Linux OS with Yocto](Yocto-Project-Tutorial)** – Tailor an operating system for your hardware.  &lt;br /&gt;
🤖 **[Deploying AI for Real-Time Video Analytics](AI-Video-Analytics)** – Use machine learning for intelligent decision-making.  &lt;br /&gt;
🎥 **[Optimizing GStreamer Pipelines](GStreamer-Optimization)** – Improve multimedia processing efficiency.  &lt;br /&gt;
🌐 **[Scaling Web Applications](Django-Web-Development)** – Design backends for performance and reliability.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&amp;lt;!-- For more topics, explore the **[[Tutorials Index]]**. --&amp;gt;&lt;br /&gt;
== ⚙️ Technical Resources ==&lt;br /&gt;
* [[Embedded Systems Development]] – BSPs, firmware, and real-time processing.&lt;br /&gt;
**To get to know Embedded Platforms, here is an overview of the top platforms in the market right now!&lt;br /&gt;
***[[Embedded Platforms]]&lt;br /&gt;
* [[AI &amp;amp; Computer Vision]] – Edge AI, model training, and deployment.&lt;br /&gt;
* [[GStreamer Development]] – High-performance video and audio streaming.&lt;br /&gt;
** [[GStreamer Fundamentals]] – Introduction, pipelines, elements, and data flow.&lt;br /&gt;
** [[GStreamer Daemon]] – Remote control of pipelines with JSON-RPC API.&lt;br /&gt;
** [[GStreamer Interpipes]] – Efficient multi-pipeline communication.&lt;br /&gt;
** [[GStreamer Application Development]] – Writing custom plugins and apps.&lt;br /&gt;
** [[GStreamer Best Practices]] – Performance optimization and debugging.&lt;br /&gt;
* [[Web &amp;amp; Cloud Solutions]] – Scalable, production-ready applications.&lt;br /&gt;
&lt;br /&gt;
== 👀  &#039;&#039;&#039;Are you a PM looking to expand your knowledge in the software development industry?&#039;&#039;&#039;==&lt;br /&gt;
This tutorial is for you!&lt;br /&gt;
Here, you&#039;ll explore essential concepts, from basic to intermediate, that will help you navigate technical discussions with engineers and clients more confidently&lt;br /&gt;
&lt;br /&gt;
📄&#039;&#039;&#039;[[Project Manager Tutorials]]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== 🏗 Need a Solution for Your Project? ==&lt;br /&gt;
Are you looking for ways to:  &lt;br /&gt;
✅ Optimize your &#039;&#039;&#039;embedded system&#039;&#039;&#039; for better performance?  &lt;br /&gt;
✅ Integrate &#039;&#039;&#039;AI and computer vision&#039;&#039;&#039; into your products?  &lt;br /&gt;
✅ Improve &#039;&#039;&#039;multimedia processing&#039;&#039;&#039; for real-time applications?  &lt;br /&gt;
✅ Develop a &#039;&#039;&#039;robust and scalable&#039;&#039;&#039; web platform?  &lt;br /&gt;
&lt;br /&gt;
Our team has helped businesses across multiple industries solve these challenges.  &lt;br /&gt;
&lt;br /&gt;
📩 &#039;&#039;&#039;Let’s collaborate!&#039;&#039;&#039; Contact us at &#039;&#039;&#039;[support@proventusnova.com](mailto:support@proventusnova.com)&#039;&#039;&#039; or visit &#039;&#039;&#039;[ProventusNova.com](https://proventusnova.com)&#039;&#039;&#039; to discuss your project.&lt;/div&gt;</summary>
		<author><name>Sonni</name></author>
	</entry>
	<entry>
		<id>https://developerwiki.proventusnova.com/index.php?title=Embedded_Platforms&amp;diff=56</id>
		<title>Embedded Platforms</title>
		<link rel="alternate" type="text/html" href="https://developerwiki.proventusnova.com/index.php?title=Embedded_Platforms&amp;diff=56"/>
		<updated>2025-03-06T15:24:06Z</updated>

		<summary type="html">&lt;p&gt;Sonni: Add STMicroelectronics, Renesas RX and, ARM Cortex-M series&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== About ==&lt;br /&gt;
This document provides an overview of various embedded platforms/systems commonly used in the development of embedded applications in the industry. It covers a wide range of popular processors, microcontrollers, and development boards, highlighting their key features, performance, characteristics, and suitable use cases. By comparing different platforms such as Raspberry Pi, NVIDIA Jetson, ESP32, Arduino, NXP i.MX Series, etc., this document aims to assist in choosing the most appropriate solution based on their project requirements.&lt;br /&gt;
&lt;br /&gt;
== Embedded Platforms/Systems Overview ==&lt;br /&gt;
&lt;br /&gt;
=== Raspberry Pi ===&lt;br /&gt;
A small low-cost computer the size of a credit card. A Raspberry Pi can be a desktop computer, robotics controller, server, game controller, etc. The Raspberry Pi is an excellent tool for many projects, from basic learning to advanced projects.&lt;br /&gt;
&lt;br /&gt;
==== Pros ====&lt;br /&gt;
* Affordable&lt;br /&gt;
* Versatile operating system&lt;br /&gt;
* Very active community&lt;br /&gt;
* Easy to learn&lt;br /&gt;
* Flexible&lt;br /&gt;
* User Imagination&lt;br /&gt;
&lt;br /&gt;
The Raspberry Pi stands out as a cost-effective solution. This makes it an excellent choice for hobbyists, educators, and professionals alike. Its versatility is its key strength, as it can be used for a wide range of applications. The Raspberry Pi community is also another major advantage. A wealth of resources, tutorials, and forums make troubleshooting straightforward.&lt;br /&gt;
&lt;br /&gt;
==== Cons ====&lt;br /&gt;
* Limited power&lt;br /&gt;
* Limited processing power&lt;br /&gt;
* Limited RAM&lt;br /&gt;
* Limited Storage&lt;br /&gt;
&lt;br /&gt;
Raspberry Pi comes with certain limitations. One of those is their limited power, which can restrict its ability to perform demanding tasks or multiple peripherals. Raspberry Pi also relies on external storage which offers slower speed and limited capacity. Although it is compatible with many open-source applications, some software may not be optimized or supported for the Raspberry Pi.&lt;br /&gt;
&lt;br /&gt;
==== Applications ====&lt;br /&gt;
* Prototyping&lt;br /&gt;
* Automation&lt;br /&gt;
&lt;br /&gt;
==== Models ====&lt;br /&gt;
* Raspberry Pi 5&lt;br /&gt;
* Raspberry Pi 500&lt;br /&gt;
* Raspberry Pi Pico&lt;br /&gt;
* Raspberry Pi Zero&lt;br /&gt;
&lt;br /&gt;
==== Specifications ====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ Raspberry Pi Models Comparison&lt;br /&gt;
! Model !! Raspberry Pi 5 !! Raspberry Pi 500 !! Raspberry Pi Pico !! Raspberry Pi Zero&lt;br /&gt;
|-&lt;br /&gt;
! CPU&lt;br /&gt;
| 2.4 GHz quad-core 64-bit ARM Cortex-A76 || 2.4 GHz quad-core 64-bit ARM Cortex-A76 || 133 MHz single-core ARM Cortex-M0+ || 1 GHz single-core ARM1176JZF-S (Zero 1), 1 GHz quad-core 64-bit ARM Cortex-A53 (Zero 2)&lt;br /&gt;
|-&lt;br /&gt;
! GPU&lt;br /&gt;
| 800 MHz VideoCore VII || 800 MHz VideoCore VII || N/A || 250 MHz VideoCore IV&lt;br /&gt;
|-&lt;br /&gt;
! APU&lt;br /&gt;
| N/A || N/A || N/A || N/A&lt;br /&gt;
|-&lt;br /&gt;
! RAM&lt;br /&gt;
| 2/4/6/16GB LPDDR4x-4267 SDRAM || 2/4/6/16GB LPDDR4x-4267 SDRAM || 264kB SRAM || 512MB LPDDR2 SDRAM&lt;br /&gt;
|-&lt;br /&gt;
! Display&lt;br /&gt;
| Up to Dual 4Kp60 micro HDMI with HDR support, 4Kp60 HEVC decoder || Up to Dual 4Kp60 micro HDMI with HDR support, 4Kp60 HEVC decoder || N/A || Up to 1080P mini HDMI&lt;br /&gt;
|-&lt;br /&gt;
! Ports&lt;br /&gt;
| 2x USB 3.0, 2x USB 2.0, Gigabit Ethernet, PCIe Port || 2x USB 3.0, 2x USB 2.0, Gigabit Ethernet, PCIe Port || Micro-USB GPIO pins || Micro USB On-The-Go (OTG)&lt;br /&gt;
|-&lt;br /&gt;
! Storage options&lt;br /&gt;
| eMMC, MicroSD Card || eMMC, MicroSD Card || Onboard 2MB flash memory || MicroSD Card&lt;br /&gt;
|-&lt;br /&gt;
! Network&lt;br /&gt;
| Wi-Fi, BT 5.0, Gigabit Ethernet || Wi-Fi, BT 5.0, Gigabit Ethernet || N/A || Wi-Fi&lt;br /&gt;
|-&lt;br /&gt;
! Power&lt;br /&gt;
| 5V/5A DC power via USB-C || 5V/5A DC power via USB-C || 5V via Micro-USB || 5V via Micro-USB&lt;br /&gt;
|-&lt;br /&gt;
! OS Support&lt;br /&gt;
| Raspberry Pi OS, Ubuntu, Apertis, RISC OS, Ultramarine Linux, Alpine Linux, Other custom Linux distros (e.g. Yocto) || Raspberry Pi OS, Ubuntu, Apertis, RISC OS, Ultramarine Linux, Alpine Linux, Other custom Linux distros (e.g. Yocto) || MicroPython, CircuitPython || Raspberry Pi OS, RISC OS, Alpine Linux, Other custom Linux distros (e.g. Yocto)&lt;br /&gt;
|-&lt;br /&gt;
! Price Range&lt;br /&gt;
| $50-$120 || $120-$150 || $4-$7 || $5-$15&lt;br /&gt;
|-&lt;br /&gt;
! Documentation and Source Code&lt;br /&gt;
| Documentation: [https://www.raspberrypi.com/documentation/ Raspberry Pi Documentation],&lt;br /&gt;
[https://www.raspberrypi.com/documentation/computers/raspberry-pi.html Raspberry Pi Hardware Documentation]&lt;br /&gt;
&lt;br /&gt;
Github: [https://github.com/raspberrypi Raspberry Pi]&lt;br /&gt;
&lt;br /&gt;
| Documentation:[https://www.raspberrypi.com/documentation/ Raspberry Pi Documentation],&lt;br /&gt;
[https://www.raspberrypi.com/documentation/computers/raspberry-pi.html Raspberry Pi Hardware Documentation]&lt;br /&gt;
&lt;br /&gt;
Github: [https://github.com/raspberrypi Raspberry Pi] &lt;br /&gt;
&lt;br /&gt;
| Documentation: [https://www.raspberrypi.com/documentation/microcontrollers/pico-series.html#documentation Pico-series Microcontrollers - Raspberry Pi Documentation],&lt;br /&gt;
&lt;br /&gt;
Github: [https://github.com/raspberrypi/pico-examples Raspberry Pi Pico Examples]&lt;br /&gt;
&lt;br /&gt;
| Documentation: [https://www.raspberrypi.com/documentation/computers/raspberry-pi.html#raspberry-pi-zero Raspberry Pi hardware - Raspberry Pi Documentation],&lt;br /&gt;
&lt;br /&gt;
Github: [https://github.com/dwelch67/raspberrypi-zero dwelch67/raspberrypi-zero: Raspberry Pi Zero baremetal examples](for Zero 1),&lt;br /&gt;
&lt;br /&gt;
[https://github.com/Qengineering/RPi_64-bit_Zero-2-image Qengineering/RPi_64-bit_Zero-2-image: Raspberry Pi Zero 2 W 64-bit OS image with OpenCV, TensorFlow Lite and ncnn Framework.](for Zero 2)&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Why is Raspberry Pi Popular? ====&lt;br /&gt;
Raspberry Pi is popular because it is a small, affordable, single-board computer that is easy to use. It is also versatile for a wide range of applications and the community is very active. With its robust hardware capabilities, including support for multiple operating systems, it has become a favorite among professionals and hobby enthusiasts.&lt;br /&gt;
&lt;br /&gt;
=== NVIDIA Jetson ===&lt;br /&gt;
NVIDIA Jetson is the leading platform for robotics and embedded edge AI applications. A series of embedded computing boards designed specifically for AI and machine learning applications. NVIDIA Jetson offers several models to different needs, from low-power to high-performance applications.&lt;br /&gt;
&lt;br /&gt;
==== Pros ====&lt;br /&gt;
* Powerful GPU and CPU&lt;br /&gt;
* Versatile applications&lt;br /&gt;
* Open to Developers&lt;br /&gt;
* Wide range of options&lt;br /&gt;
&lt;br /&gt;
One of the key strengths of NVIDIA Jetson is its GPU, designed to accelerate deep learning, computer vision, and AI. This makes it an excellent choice for robotics, IoT, and autonomous systems. It is also supported by popular AI frameworks such as TensorFlow, PyTorch, and OpenCV. NVIDIA Jetson has rich software support from NVIDIA’s JetPack SDK, which simplifies development and deployment.&lt;br /&gt;
&lt;br /&gt;
==== Cons ====&lt;br /&gt;
* Expensive&lt;br /&gt;
* Limited GPIO&lt;br /&gt;
* Can get hot&lt;br /&gt;
&lt;br /&gt;
NVIDIA Jetson tends to be on the more expensive side than other single-board computers. Devices under NVIDIA Jetson can consume more power, which may not be ideal for battery-powered applications or energy-efficient applications. It requires a steep learning curve to set up and work with the hardware and software tools.&lt;br /&gt;
&lt;br /&gt;
==== Applications ====&lt;br /&gt;
* Robotics&lt;br /&gt;
* Edge AI&lt;br /&gt;
&lt;br /&gt;
==== Models ====&lt;br /&gt;
* Jetson AGX Orin series&lt;br /&gt;
* Jetson Orin NX series&lt;br /&gt;
* Jetson Orin Nano series&lt;br /&gt;
* Jetson AGX Xavier series&lt;br /&gt;
* Jetson Xavier NX series&lt;br /&gt;
* Jetson TX2 series&lt;br /&gt;
* Jetson Nano&lt;br /&gt;
&lt;br /&gt;
==== Specifications ====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ NVIDIA Jetson Models Comparison&lt;br /&gt;
! Model !! Jetson AGX Orin Series !! Jetson Orin NX Series !! Jetson Orin Nano Series !! Jetson AGX Xavier Series !! Jetson Xavier NX Series !! Jetson TX2 Series !! Jetson Nano&lt;br /&gt;
|-&lt;br /&gt;
! CPU&lt;br /&gt;
| 2.0/2.2 GHz 12-core NVIDIA Arm Cortex A78AE v8.2 64-bit CPU 3MB L2 + 6MB L3 || 2.0 GHz 8-core NVIDIA Arm Cortex A78AE v8.2 64-bit CPU 2MB L2 + 4MB L3, 2.0 6-core NVIDIA Arm Cortex A78AE v8.2 64-bit CPU 2MB L2 + 4MB L3 || 1.7 GHz 6-core Arm Cortex-A78AE v8.2 64-bit CPU 1.5MB L2 + 4MB L3 || 2.0/2.2 GHz 8-core NVIDIA Carmel Armv8.2 64-bit CPU 8MB L2 + 4MB L3 || 1.9 GHz 6-core NVIDIA Carmel Arm v8.2 64-bit CPU 6MB L2 + 4MB L3 || 1.95/2.2 GHz Dual-Core NVIDIA Denver 2 64-Bit CPU, 1.92/2 GHz Quad-Core Arm Cortex-A57 MPCore processor || 1.43 GHz Quad-Core Arm Cortex-A57 MPCore processor&lt;br /&gt;
|-&lt;br /&gt;
! GPU&lt;br /&gt;
| 200-275 TOPS, NVIDIA Ampere architecture GPU with up to 64 Tensor Cores || 117-157 TOPS, NVIDIA Ampere architecture GPU with up to 32 Tensor Cores || 34-67 TOPS, NVIDIA Ampere architecture GPU with up to 32 Tensor Cores || 30-32 TOPS, NVIDIA Volta architecture GPU with 64 Tensor Cores || 21 TOPS 1100 MHz 384-core NVIDIA Volta architecture GPU with 48 Tensor Cores || 1.26-1.33 TFLOPS, NVIDIA Pascal architecture GPU || 472 GFLOPS 921 MHz 128-core NVIDIA Maxwell architecture GPU&lt;br /&gt;
|-&lt;br /&gt;
! APU&lt;br /&gt;
| Integrated AI Accelerator (NVIDIA Tensor Cores) || Integrated AI Accelerator (NVIDIA Tensor Cores) || Integrated AI Accelerator (NVIDIA Tensor Cores) || Integrated AI Accelerator (NVIDIA Tensor Cores) || Integrated AI Accelerator (Tensor Cores) || Integrated AI Accelerator (NVIDIA Pascal GPU) || Integrated AI Accelerator (Maxwell GPU)&lt;br /&gt;
|-&lt;br /&gt;
! RAM&lt;br /&gt;
| 32/64GB 256-bit LPDDR5 || 8/16GB 128-bit LPDDR5 || 4GB 64-bit LPDDR5, 8GB 128-bit LPDDR5 || 32/64GB 256-bit LPDDR4x || 8/16GB 128-bit LPDDR4x || 4/8GB 128-bit LPDDR4 || 4GB 64-bit LPDDR4&lt;br /&gt;
|-&lt;br /&gt;
! Display&lt;br /&gt;
| Up to 8K video output, dual 4K || Up to 4K video output || Up to 4K video output || Up to dual 4K video output || Up to 4K video output, Dual 4K displays || Up to 1080p video output || Up to 1080P video output&lt;br /&gt;
|-&lt;br /&gt;
! Ports&lt;br /&gt;
| 3x USB 3.2 Gen2, 4x USB 2.0, 2x PCIe Gen 4 || 3x USB 3.2 Gen2, 3x USB 2.0, 1x PCIe Gen 4, Gigabit Ethernet || 3x USB 3.2 Gen2, 3x USB 2.0, 1x PCIe Gen 4, Gigabit Ethernet || 3x USB 3.2 Gen2, 4x USB 2.0, 1x PCIe Gen 3 || 1x USB3.2 Gen2, 3X USB 2.0 || 3x USB 3.0, 3x USB 2.0, 1x USB 3.0, 3x USB 2.0 || 1x USB 3.0, 3x USB 2.0&lt;br /&gt;
|-&lt;br /&gt;
! Storage options&lt;br /&gt;
| 32/64GB eMMC 5.1, M.2 NVMe || NVMe (supports external NVMe) || NVMe (supports external NVMe) || 32/64 GB eMMC 5.1 || 16GB eMMC 5.1 || 16/32GB eMMC 5.2 || 16GB eMMC 5.1&lt;br /&gt;
|-&lt;br /&gt;
! Network&lt;br /&gt;
| Wi-Fi 6, BT 5.0 || Wi-Fi, BT 5.0, Gigabit Ethernet || Wi-Fi, BT 5.0, Gigabit Ethernet || Wi-Fi, BT 5.0, Gigabit Ethernet || Wi-Fi, BT 5.0, Gigabit Ethernet || Wi-Fi, BT 4.2, Gigabit Ethernet || Gigabit Ethernet&lt;br /&gt;
|-&lt;br /&gt;
! Power&lt;br /&gt;
| 15W-75W || 10W-40W || 10W-30W || 20W-40W || 10W-20W || 7.5W-20W || 5W-10W&lt;br /&gt;
|-&lt;br /&gt;
! OS Support&lt;br /&gt;
| NVIDIA Jetpack SDK, Ubuntu, Other custom Linux distros (e.g. Yocto) || NVIDIA Jetpack SDK, Ubuntu, Other custom Linux distros (e.g. Yocto) || NVIDIA Jetpack SDK, Ubuntu, Other custom Linux distros (e.g. Yocto) || NVIDIA Jetpack SDK, Ubuntu, Other custom Linux distros (e.g. Yocto) || NVIDIA Jetpack SDK, Ubuntu, Other custom Linux distros (e.g. Yocto) || NVIDIA Jetpack SDK, Ubuntu, Other custom Linux distros (e.g. Yocto) || NVIDIA Jetpack SDK, Ubuntu, Other custom Linux distros (e.g. Yocto)&lt;br /&gt;
|-&lt;br /&gt;
! Price Range&lt;br /&gt;
| $599-$1,100 || $199-$399 || $99-$199 || $699-$899 || $399-$599 || $300-$600 || $59-$99&lt;br /&gt;
|-&lt;br /&gt;
! Documentation and Source Code&lt;br /&gt;
&lt;br /&gt;
| Documentation: [https://developer.nvidia.com/embedded/learn/jetson-agx-orin-devkit-user-guide/index.html Documentation: Jetson AGX Orin Developer Kit User Guide] &lt;br /&gt;
&lt;br /&gt;
| Documentation: [https://docs.nvidia.com/jetson/archives/r35.3.1/DeveloperGuide/text/HR/JetsonModuleAdaptationAndBringUp/JetsonOrinNxNanoSeries.html Documentation: Jetson Orin NX and Nano Series — Jetson Linux Developer Guide documentation] &lt;br /&gt;
&lt;br /&gt;
| Documentation: [https://docs.nvidia.com/jetson/archives/r35.3.1/DeveloperGuide/text/HR/JetsonModuleAdaptationAndBringUp/JetsonOrinNxNanoSeries.html Documentation: Jetson Orin NX and Nano Series — Jetson Linux Developer Guide documentation] &lt;br /&gt;
&lt;br /&gt;
| Documentation: [https://docs.nvidia.com/jetson/archives/r35.1/DeveloperGuide/text/SO/JetsonAgxXavierSeries.html Documentation: Jetson AGX Xavier Series — Jetson Linux Developer Guide]&lt;br /&gt;
&lt;br /&gt;
[https://developer.download.nvidia.com/assets/embedded/secure/jetson/xavier/docs/nv_jetson_agx_xavier_developer_kit_user_guide.pdf?__token__=exp=1736824216~hmac=0dd58c222c12044ba22a5eca3603e275081f6c46b808376a8c4ce6f244a83489&amp;amp;t=eyJscyI6ImdzZW8iLCJsc2QiOiJodHRwczovL3d3dy5nb29nbGUuY29tLyJ9 Jetson AGX Xavier Developer Kit] &lt;br /&gt;
&lt;br /&gt;
| Documentation: [https://docs.nvidia.com/jetson/archives/r35.1/DeveloperGuide/text/SO/JetsonXavierNxSeries.html Jetson Xavier NX Series — Jetson Linux Developer Guide]&lt;br /&gt;
&lt;br /&gt;
| Documentation: [https://developer.download.nvidia.com/assets/embedded/secure/jetson/TX2/docs/nv_jetson_tx2_developer_kit_user_guide.pdf?__token__=exp=1736824301~hmac=8bad2bcdc2d2cac0171768a6bd8c3519ffdae23678660ed09d681af48d4b921b&amp;amp;t=eyJscyI6ImdzZW8iLCJsc2QiOiJodHRwczovL3d3dy5nb29nbGUuY29tLyJ9 Jetson TX2 Developer Kit]&lt;br /&gt;
&lt;br /&gt;
| Documentation: [https://developer.download.nvidia.com/assets/embedded/secure/jetson/Nano/docs/NV_Jetson_Nano_Developer_Kit_User_Guide.pdf?__token__=exp=1736824305~hmac=cb82b2840ab317d9ffd0595eb2681c7d58b949c9bfa27718c82f5463815d30c7&amp;amp;t=eyJscyI6ImdzZW8iLCJsc2QiOiJodHRwczovL3d3dy5nb29nbGUuY29tLyJ9 Jetson Nano Developer Kit], &lt;br /&gt;
[https://developer.nvidia.com/embedded/learn/jetson-nano-2gb-devkit-user-guide Jetson Nano 2GB Developer Kit User Guide]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Why is NVIDIA Jetson Popular? ====&lt;br /&gt;
NVIDIA Jetson is popular because it provides high-performance AI computing in a compact, energy-efficient form factor. It is ideal for edge AI and robotics applications. From its entry-level to high-end modules, NVIDIA Jetson scales depending on the project&#039;s needs.&lt;br /&gt;
&lt;br /&gt;
=== ESP32 ===&lt;br /&gt;
Low-cost, low-power system-on-chip microcontrollers. A single 2.4 GHz WiFi and Bluetooth combo chip designed with TSMC low-power 40nm technology.&lt;br /&gt;
&lt;br /&gt;
==== Pros ====&lt;br /&gt;
* Low-cost&lt;br /&gt;
* Low-power&lt;br /&gt;
* IoT (Internet of Things)&lt;br /&gt;
&lt;br /&gt;
ESP32 is a powerful and versatile microcontroller because of its range of features, making it ideal for a variety of IoT applications. One of its biggest advantages is its low cost and low power consumption. It also has integrated Wi-Fi and Bluetooth, eliminating the need for external modules for wireless connectivity. ESP32 also has a strong developer community with support for ESP-IDF and is also compatible with Arduino IDE, making it great for beginners and experienced developers.&lt;br /&gt;
&lt;br /&gt;
==== Cons ====&lt;br /&gt;
* Limited GPIO&lt;br /&gt;
* Low-power&lt;br /&gt;
* High learning curve&lt;br /&gt;
&lt;br /&gt;
While ESP32’s performance is impressive, it may still fall short for resource-intensive tasks like high-end AI or complex video processing. Its lack of built-in storage can be limiting for applications that require large amounts of storage. Its GPIO pin count is also limiting for complex projects that require multiple connections.&lt;br /&gt;
&lt;br /&gt;
==== Applications ====&lt;br /&gt;
* Simple smart home&lt;br /&gt;
* Low-power IoT sensors (ultrasonic, IR, etc.)&lt;br /&gt;
* Simple smart agriculture&lt;br /&gt;
* Speech &amp;amp; Image recognition (OpenCV)&lt;br /&gt;
&lt;br /&gt;
==== Models ====&lt;br /&gt;
* ESP32-P series&lt;br /&gt;
* ESP32-S series&lt;br /&gt;
* ESP32-C series&lt;br /&gt;
* ESP32-H series&lt;br /&gt;
* ESP8266 series&lt;br /&gt;
&lt;br /&gt;
==== Specifications ====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ ESP32 Series Comparison&lt;br /&gt;
! Model !! ESP32-P Series !! ESP32-S Series !! ESP32-C Series !! ESP32-H Series !! ESP8266 Series&lt;br /&gt;
|-&lt;br /&gt;
! CPU&lt;br /&gt;
| Up to 240MHz Dual-core 32-bit Xtensa LX6 || Up to 240MHz Dual-core 32-bit Xtensa LX6 || Up to 160 MHz Single-core 32-bit Xtensa LX6 || Up to 160 MHz Single-core 32-bit Xtensa LX6 || Up to 160 MHz Single-core 32-bit Xtensa LX6&lt;br /&gt;
|-&lt;br /&gt;
! GPU&lt;br /&gt;
| N/A || N/A || N/A || N/A || N/A&lt;br /&gt;
|-&lt;br /&gt;
! APU&lt;br /&gt;
| N/A || N/A || N/A || N/A || N/A&lt;br /&gt;
|-&lt;br /&gt;
! RAM&lt;br /&gt;
| 320KB SRAM up to 512KB SRAM || 320KB SRAM up to 512KB SRAM || 128KB SRAM up to 192KB SRAM || 128KB SRAM up to 192KB SRAM || 128KB SRAM up to 192KB SRAM&lt;br /&gt;
|-&lt;br /&gt;
! Display&lt;br /&gt;
| No direct display support. Can support external display || No direct display support. Can support external display || No direct display support. Can support external display || No direct display support. Can support external display || No direct display support. Can support external display&lt;br /&gt;
|-&lt;br /&gt;
! Ports&lt;br /&gt;
| 1x SPI, 2x I2C, 2x UART, GPIO || 1x SPI, 2x I2C, 2x UART, GPIO || 1x SPI, 1x I2C, 1x UART, GPIO || 1x SPI, 1x I2C, 1x UART, GPIO || 1x SPI, 1x I2C, 1x UART, GPIO&lt;br /&gt;
|-&lt;br /&gt;
! Storage options&lt;br /&gt;
| Up to 16MB external flash || Up to 16MB external flash || Up to 16MB external flash || Up to 16MB external flash || Up to 4MB external flash&lt;br /&gt;
|-&lt;br /&gt;
! Network&lt;br /&gt;
| Wi-Fi, BT 4.2 || Wi-Fi, BT 4.2 || Wi-Fi, BT 4.2 || Wi-Fi, BT 4.2 || Wi-Fi&lt;br /&gt;
|-&lt;br /&gt;
! Power&lt;br /&gt;
| 3.3V low power || 3.3V low power || 3.3V low power || 3.3V low power || 3.3V low power&lt;br /&gt;
|-&lt;br /&gt;
! OS Support&lt;br /&gt;
| ESP-IDF, FreeRTOS, Arduino IDE || ESP-IDF, FreeRTOS, Arduino IDE || ESP-IDF, FreeRTOS, Arduino IDE || ESP-IDF, FreeRTOS, Arduino IDE || FreeRTOS, Arduino IDE&lt;br /&gt;
|-&lt;br /&gt;
! Price Range&lt;br /&gt;
| $1-$3 || $2-$6 || $1.50-$5 || $1.50-$5 || $1-$3&lt;br /&gt;
|-&lt;br /&gt;
! Documentation and Source Code&lt;br /&gt;
| Documentation: [https://docs.espressif.com/projects/esp-idf/en/stable/esp32/index.html Documentation: ESP-IDF Programming Guide - ESP32 - ESP-IDF Programming Guide v5.4 documentation],&lt;br /&gt;
[https://www.espressif.com/en/products/socs ESP SoCs]&lt;br /&gt;
&lt;br /&gt;
Github: [https://github.com/espressif Espressif Systems],&lt;br /&gt;
[https://github.com/espressif/esp-idf espressif/esp-idf: Espressif IoT Development Framework. Official development framework for Espressif SoCs.] &lt;br /&gt;
| Documentation: [https://docs.espressif.com/projects/esp-idf/en/stable/esp32/index.html Documentation: ESP-IDF Programming Guide - ESP32 - ESP-IDF Programming Guide v5.4 documentation],&lt;br /&gt;
[https://www.espressif.com/en/products/socs ESP SoCs]&lt;br /&gt;
&lt;br /&gt;
Github: [https://github.com/espressif Espressif Systems],&lt;br /&gt;
[https://github.com/espressif/esp-idf espressif/esp-idf: Espressif IoT Development Framework. Official development framework for Espressif SoCs.] &lt;br /&gt;
| Documentation: [https://docs.espressif.com/projects/esp-idf/en/stable/esp32/index.html Documentation: ESP-IDF Programming Guide - ESP32 - ESP-IDF Programming Guide v5.4 documentation],&lt;br /&gt;
[https://www.espressif.com/en/products/socs ESP SoCs]&lt;br /&gt;
&lt;br /&gt;
Github: [https://github.com/espressif Espressif Systems],&lt;br /&gt;
[https://github.com/espressif/esp-idf espressif/esp-idf: Espressif IoT Development Framework. Official development framework for Espressif SoCs.] &lt;br /&gt;
| Documentation: [https://docs.espressif.com/projects/esp-idf/en/stable/esp32/index.html Documentation: ESP-IDF Programming Guide - ESP32 - ESP-IDF Programming Guide v5.4 documentation],&lt;br /&gt;
[https://www.espressif.com/en/products/socs ESP SoCs]&lt;br /&gt;
&lt;br /&gt;
Github: [https://github.com/espressif Espressif Systems],&lt;br /&gt;
[https://github.com/espressif/esp-idf espressif/esp-idf: Espressif IoT Development Framework. Official development framework for Espressif SoCs.] &lt;br /&gt;
| Documentation: [https://docs.espressif.com/projects/esp-idf/en/stable/esp32/index.html Documentation: ESP-IDF Programming Guide - ESP32 - ESP-IDF Programming Guide v5.4 documentation],&lt;br /&gt;
[https://www.espressif.com/en/products/socs ESP SoCs]&lt;br /&gt;
&lt;br /&gt;
Github: [https://github.com/espressif Espressif Systems],&lt;br /&gt;
[https://github.com/espressif/esp-idf espressif/esp-idf: Espressif IoT Development Framework. Official development framework for Espressif SoCs.] &lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Why is ESP32 popular? ====&lt;br /&gt;
ESP32 is popular because it is cost-effective, has integrated Wi-Fi and Bluetooth, benefits from active community support, and has a well-developed ecosystem. ESP32s are heavily used in industries, especially in IoT. ESP32 offers robust connectivity and performance for a wide range of applications.&lt;br /&gt;
&lt;br /&gt;
=== Texas Instruments Sitara Processors ===&lt;br /&gt;
Developed by Texas Instruments, featuring ARM9, ARM Cortex-A8, ARM Cortex-A9, ARM Cortex A-15, and ARM Cortex-A53 cores. Supported by the Beagle community as well as TI&#039;s open-source development community.&lt;br /&gt;
&lt;br /&gt;
==== Pros ====&lt;br /&gt;
* Power efficient&lt;br /&gt;
* Cost-effective&lt;br /&gt;
* Scalability&lt;br /&gt;
* Real-time capability&lt;br /&gt;
&lt;br /&gt;
Texas Instruments Sitara Processors offer a wide range of powerful features for embedded and industrial applications. Sitara Processors provide low-power and higher-performance models, making them suitable for battery-operated devices and high-demand industrial systems. They also offer a developer-friendly environment with tools like Code Composer Studio and RTOS support.&lt;br /&gt;
&lt;br /&gt;
==== Cons ====&lt;br /&gt;
* Limited raw performance&lt;br /&gt;
* Complexity&lt;br /&gt;
* Limited high-end applications&lt;br /&gt;
&lt;br /&gt;
Sitara processors have challenges related to complexity and cost. Simple applications may offer more performance than necessary, leading to increased power consumption and system cost. The software ecosystem is more specialized compared to platforms like Raspberry Pi or ESP32, making development challenging for those unfamiliar with Code Composer Studio and RTOS. Long-term support for certain models may also be a concern as some projects rely on specific processor families.&lt;br /&gt;
&lt;br /&gt;
==== Applications ====&lt;br /&gt;
* IoT gateways&lt;br /&gt;
* Smart thermostats&lt;br /&gt;
* Industrial automation&lt;br /&gt;
* HMI&lt;br /&gt;
&lt;br /&gt;
==== Models ====&lt;br /&gt;
* AM335x&lt;br /&gt;
* AM35x&lt;br /&gt;
* AM37x&lt;br /&gt;
* AM437x&lt;br /&gt;
* AM57x&lt;br /&gt;
* AM62x&lt;br /&gt;
* AM65x&lt;br /&gt;
&lt;br /&gt;
==== Specifications ====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ Texas Instruments Sitara Processors Comparison&lt;br /&gt;
! Model !! AM335x !! AM35x !! AM37x !! AM437x !! AM57x !! AM62x !! AM65x&lt;br /&gt;
|-&lt;br /&gt;
! CPU&lt;br /&gt;
| ARM Cortex-A8, up to 1GHz || ARM Cortex-A8, up to 600MHz || ARM Cortex-A8, up to 1GHz || ARM Cortex-A9, up to 1GHz || Dual ARM Cortex-A15, up to 1.5GHz || Quad ARM Cortex-A53, up to 1.4GHz || Dual ARM Cortex-A53, up to 1.1GHz, Real-Time ARM Cortex-R5F&lt;br /&gt;
|-&lt;br /&gt;
! GPU&lt;br /&gt;
| PowerVR SGX530 || N/A || PowerVR SGX530 || PowerVR SGX544 || PowerVR SGX544MP2 || ARM Mali-G52 MP2 || N/A&lt;br /&gt;
|-&lt;br /&gt;
! APU&lt;br /&gt;
| PRU-ICSS || N/A || N/A || PRU-ICSS || Embedded Vision Engine (EVE), DSP C66x || N/A || PRU-ICSSG, Embedded Vision Engine (EVE)&lt;br /&gt;
|-&lt;br /&gt;
! RAM&lt;br /&gt;
| Up to 1GB DDR2/3L || Up to 256MB DDR2 || Up to 512MB DDR2/3L || Up to 1GB DDR3/3L || Up to 4GB DDR3/3L, DDR4 || Up to 2GB DDR4 || Up to 8GB DDR4&lt;br /&gt;
|-&lt;br /&gt;
! Display&lt;br /&gt;
| 24-bit LCD Controller || 24-bit LCD Controller || 24-bit LCD Controller || 24-bit LCD Controller || 24-bit LCD Controller, HDMI || 24-bit LCD Controller || 24-bit LCD Controller, DP/HDMI&lt;br /&gt;
|-&lt;br /&gt;
! Ports&lt;br /&gt;
| Up to 2x USB 2.0, Up to 2x Gigabit Ethernet, Up to 2x CAN ports, Up to 6x UARTS, Up to 3x I2C, GPIO || USB 2.0, Gigabit Ethernet, UART, I2C, GPIO || USB 2.0, Gigabit Ethernet, UART, I2C, GPIO || Up to 2x USB 2.0, Up to 2x Gigabit Ethernet, Up to 2x CAN ports, Up to 6x UARTS, Up to 3x I2C, GPIO || Up to 2x USB 2.0, Up to 2x USB 3.0, Up to 2x PCIe, Gigabit Ethernet, Up to 2x CAN ports, Up to 3x I2C, GPIO || Up to 2x USB 2.0, Up to 2x USB 3.0, Up to 2x PCIe, Gigabit Ethernet, Up to 2x CAN ports, Up to 3x I2C, GPIO || Up to 2x USB 2.0, Up to 2x USB 3.0, Up to 4x PCIe, Up to 2x Gigabit Ethernet, Up to 2x CAN ports, Up to 3x I2C, GPIO&lt;br /&gt;
|-&lt;br /&gt;
! Storage options&lt;br /&gt;
| eMMC, SD/SDIO, NAND || NAND, SD || NAND, SD || eMMC, SD/SDIO, NAND || eMMC, SD/SDIO, NAND, SATA || eMMC, SD/SDIO || eMMC, SD/SDIO, NVMe&lt;br /&gt;
|-&lt;br /&gt;
! Network&lt;br /&gt;
| Ethernet || Ethernet || Ethernet || Ethernet || Gigabit Ethernet || Gigabit Ethernet || Gigabit Ethernet&lt;br /&gt;
|-&lt;br /&gt;
! Power&lt;br /&gt;
| 1.8V/3.3V || 1.8V/3.3V || 1.8V/3.3V || 1.8V/3.3V || 1.8V/3.3V || 1.8V/3.3V || 1.8V/3.3V&lt;br /&gt;
|-&lt;br /&gt;
! OS Support&lt;br /&gt;
| Linaro, Linux (Yocto), RTOS, Android, Windows Embedded Compact || Linux, Windows CE || Linaro, Linux (Yocto), RTOS, Android, Windows Embedded Compact || Linaro, Linux (Yocto), RTOS, Android, Windows Embedded Compact || Linux (Yocto), RTOS, Android || Linux (Yocto), Android || Linux (Yocto), QNX, Android&lt;br /&gt;
|-&lt;br /&gt;
! Price Range&lt;br /&gt;
| $5-$20 || $10-$25 || $15-$30 || $10-$25 || $50-$150 || $25-$60 || $70-$200&lt;br /&gt;
|-&lt;br /&gt;
! Documentation and Source Code&lt;br /&gt;
| Documentation: [https://www.ti.com/lit/ds/symlink/am3359.pdf AM335x Sitara™ Processors datasheet (Rev. L)],&lt;br /&gt;
SDK: [https://www.ti.com/tool/PROCESSOR-SDK-AM335X PROCESSOR-SDK-AM335X Software development kit (SDK)]&lt;br /&gt;
| Documentation: [https://www.ti.com/cn/lit/ug/sprugr0c/sprugr0c.pdf AM35x ARM Microprocessor Technical Reference Manual (Rev. C)],&lt;br /&gt;
SDK: [https://www.ti.com/tool/download/LINUXEZSDK-AM35X/06.00.00.00 LINUXEZSDK-AM35X Software development kit (SDK)]&lt;br /&gt;
| Documentation: [https://www.ti.com/lit/ds/symlink/am3715.pdf?ts=1736860696591&amp;amp;ref_url=https%253A%252F%252Fwww.ti.com%252Fproduct%252FAM3715AM3715, AM3703 Sitara ARM Microprocessors datasheet (Rev. F)],&lt;br /&gt;
SDK: [https://www.ti.com/tool/download/LINUXEZSDK-AM37X/06.00.00.00 LINUXEZSDK-AM37X Software development kit (SDK)]&lt;br /&gt;
| Documentation: [https://www.ti.com/lit/ds/symlink/am4379.pdf AM437x Sitara™ Processors datasheet (Rev. E)],&lt;br /&gt;
SDK: [https://www.ti.com/tool/PROCESSOR-SDK-AM437X PROCESSOR-SDK-AM437X Software development kit (SDK)]&lt;br /&gt;
| Documentation: [https://www.ti.com/lit/po/sprt689a/sprt689a.pdf?ts=1736861964255&amp;amp;ref_url=https%253A%252F%252Fwww.google.com%252F sprt689a.pdf],&lt;br /&gt;
SDK: [https://www.ti.com/tool/PROCESSOR-SDK-AM57X PROCESSOR-SDK-AM57X Software development kit (SDK)]&lt;br /&gt;
| Documentation: [https://www.ti.com/lit/ds/symlink/am623.pdf AM62x Sitara™ Processors datasheet (Rev. B)],&lt;br /&gt;
SDK: [https://www.ti.com/tool/PROCESSOR-SDK-AM62X PROCESSOR-SDK-AM62X Software development kit (SDK)]&lt;br /&gt;
| Documentation: [https://www.ti.com/lit/ug/spruid7e/spruid7e.pdf?ts=1736862697648&amp;amp;ref_url=https%253A%252F%252Fwww.ti.com%252Fproduct%252FAM6548 AM65x/DRA80xM Processors Technical Reference Manual (Rev. E)],&lt;br /&gt;
SDK: [https://www.ti.com/tool/PROCESSOR-SDK-AM65X PROCESSOR-SDK-AM65X Software development kit (SDK)]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Why are Texas Instruments Sitara Processors popular? ====&lt;br /&gt;
Texas Instruments Sitara Processors are popular due to their reliability, cost-effectiveness, and scalable processing power. They excel in integrating key peripherals such as Ethernet, CAN, and industrial interfaces.&lt;br /&gt;
&lt;br /&gt;
=== Qualcomm Snapdragon ===  &lt;br /&gt;
It is a system-on-chip (SoC) that powers a variety of devices, such as smartphones, tablets, laptops, and desktops. They are designed to be fast, intelligent, and secure, with features like multi-core CPUs, GPUs, and digital signal processors.  &lt;br /&gt;
&lt;br /&gt;
==== Pros ====  &lt;br /&gt;
* Performance  &lt;br /&gt;
* Power Efficiency  &lt;br /&gt;
* Connectivity  &lt;br /&gt;
&lt;br /&gt;
Qualcomm Snapdragon processors are known for their high performance, versatility, and extensive use in mobile and embedded systems. Its processors are used in a wide range of applications, thanks to the combination of ARM Cortex cores, DSP, and AI. Snapdragon processors come with Wi-Fi, LTE, and 5G, which is great for IoT and edge computing. Its community is also well-established with Android and Linux SDKs.  &lt;br /&gt;
&lt;br /&gt;
==== Cons ====  &lt;br /&gt;
* Fragmentation  &lt;br /&gt;
* Software Compatibility  &lt;br /&gt;
* Overheating  &lt;br /&gt;
&lt;br /&gt;
Snapdragon processors tend to be power-hungry, making them less suitable for low-power applications. They may be overkill for simpler applications. Snapdragon processors are generally more expensive than other microcontrollers. The processors are optimized for high-speed and multimedia applications, they may not perform well for real-time applications.  &lt;br /&gt;
&lt;br /&gt;
==== Applications ====  &lt;br /&gt;
* Mobile devices  &lt;br /&gt;
* Multimedia  &lt;br /&gt;
* IoT  &lt;br /&gt;
&lt;br /&gt;
==== Models ====  &lt;br /&gt;
* Snapdragon 8 Series  &lt;br /&gt;
* Snapdragon 7 Series  &lt;br /&gt;
* Snapdragon 6 Series  &lt;br /&gt;
* Snapdragon 4 Series  &lt;br /&gt;
* Snapdragon 2 Series  &lt;br /&gt;
&lt;br /&gt;
==== Specifications ====  &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ Qualcomm Snapdragon Processors Comparison&lt;br /&gt;
! Model !! Snapdragon 2 Series !! Snapdragon 4 Series !! Snapdragon 6 Series !! Snapdragon 7 Series !! Snapdragon 8 Series&lt;br /&gt;
|-&lt;br /&gt;
! CPU&lt;br /&gt;
| ARM Cortex-A53, up to 1.3GHz, Quad-core&lt;br /&gt;
| Kryo 460, up to 2.0GHz, Octa-core&lt;br /&gt;
| Kryo 660, up to 2.4GHz, Octa-core&lt;br /&gt;
| Kryo 770, up to 2.4GHz, Octa-core&lt;br /&gt;
| Kryo 780, up to 3.2GHz, Octa-core&lt;br /&gt;
|-&lt;br /&gt;
! GPU&lt;br /&gt;
| Adreno 304&lt;br /&gt;
| Adreno 610&lt;br /&gt;
| Adreno 642L&lt;br /&gt;
| Adreno 642L&lt;br /&gt;
| Adreno 730&lt;br /&gt;
|-&lt;br /&gt;
! APU&lt;br /&gt;
| Basic AI features supported through CPU/GPU&lt;br /&gt;
| Qualcomm AI Engine, up to 2 TOPS&lt;br /&gt;
| Qualcomm AI Engine, up to 12 TOPS&lt;br /&gt;
| Qualcomm AI Engine, up to 12 TOPS&lt;br /&gt;
| Qualcomm AI Engine, up to 27 TOPS&lt;br /&gt;
|-&lt;br /&gt;
! RAM&lt;br /&gt;
| Up to 3GB LPDDR3&lt;br /&gt;
| Up to 6GB LPDDR4x&lt;br /&gt;
| Up to 12GB LPDDR4X/LPDDR5&lt;br /&gt;
| Up to 16GB LPDDR5&lt;br /&gt;
| Up to 18GB LPDDR5x&lt;br /&gt;
|-&lt;br /&gt;
! Display&lt;br /&gt;
| 720p HD @ 60Hz&lt;br /&gt;
| 1080p FHD @ 60Hz&lt;br /&gt;
| 1440p QHD @ 120Hz&lt;br /&gt;
| 1440p QHD+ @ 120Hz&lt;br /&gt;
| 4K UHD/1440p QHD+ @ 144Hz&lt;br /&gt;
|-&lt;br /&gt;
! Ports&lt;br /&gt;
| USB 2.0&lt;br /&gt;
| USB 3.1&lt;br /&gt;
| USB 3.1&lt;br /&gt;
| USB 3.1&lt;br /&gt;
| USB 3.2&lt;br /&gt;
|-&lt;br /&gt;
! Storage Options&lt;br /&gt;
| eMMC 5.1&lt;br /&gt;
| UFS 2.1&lt;br /&gt;
| eMMC 5.1, UFS 2.2&lt;br /&gt;
| UFS 3.1&lt;br /&gt;
| UFS 4.0&lt;br /&gt;
|-&lt;br /&gt;
! Network&lt;br /&gt;
| LTE Cat 4&lt;br /&gt;
| Wi-Fi 5, LTE Cat 15, 4G+ Mobile&lt;br /&gt;
| Wi-Fi 6, mmWave, 5G Mobile&lt;br /&gt;
| Wi-Fi 6, mmWave, 5G Mobile&lt;br /&gt;
| Wi-Fi 7, mmWave, 5G Mobile&lt;br /&gt;
|-&lt;br /&gt;
! Power&lt;br /&gt;
| 3.3V, low power&lt;br /&gt;
| 3.3V&lt;br /&gt;
| 3.3V&lt;br /&gt;
| 3.3V&lt;br /&gt;
| 3.3V&lt;br /&gt;
|-&lt;br /&gt;
! OS Support&lt;br /&gt;
| Android 10&lt;br /&gt;
| Android 11, Android 12&lt;br /&gt;
| Android 12, Android 13&lt;br /&gt;
| Android 12, Android 13&lt;br /&gt;
| Android 12, Android 13&lt;br /&gt;
|-&lt;br /&gt;
! Price Range&lt;br /&gt;
| $5-$15&lt;br /&gt;
| $20-$60&lt;br /&gt;
| $80-$150&lt;br /&gt;
| $250-$450&lt;br /&gt;
| $500-$1,200&lt;br /&gt;
|-&lt;br /&gt;
! Documentation and Source Code&lt;br /&gt;
| Documentation: [https://www.qualcomm.com/products/mobile/snapdragon/smartphones/qualcomm-2-series-mobile-platforms Qualcomm 2 Series Mobile Platforms]&lt;br /&gt;
&lt;br /&gt;
Github: [https://github.com/SnapdragonStudios Snapdragon Studios]&lt;br /&gt;
&lt;br /&gt;
Source Code: [https://docs.qualcomm.com/bundle/publicresource/topics/80-41102-1/get-the-source-code-from-the-clo-website.html Snapdragon Telematics Application Framework (TelAF) User Guide]&lt;br /&gt;
&lt;br /&gt;
| Documentation: [https://www.qualcomm.com/products/mobile/snapdragon/smartphones/snapdragon-4-series-mobile-platforms/snapdragon-4-gen-1-mobile-platform Snapdragon 4 Gen 1 Mobile Platform],&lt;br /&gt;
&lt;br /&gt;
[https://docs.qualcomm.com/bundle/publicresource/87-64330-1_REV_C_Snapdragon_4_Gen2_Mobile_Platform_Product_Brief.pdf Product Brief]&lt;br /&gt;
&lt;br /&gt;
Github: [https://github.com/SnapdragonStudios Snapdragon Studios]&lt;br /&gt;
&lt;br /&gt;
Source Code: [https://docs.qualcomm.com/bundle/publicresource/topics/80-41102-1/get-the-source-code-from-the-clo-website.html Snapdragon Telematics Application Framework (TelAF) User Guide]&lt;br /&gt;
&lt;br /&gt;
| Documentation: [https://www.qualcomm.com/content/dam/qcomm-martech/dm-assets/documents/product_brief_snapdragon_6_gen_1.pdf Snapdragon 6 Gen 1 Product Brief],&lt;br /&gt;
&lt;br /&gt;
[https://www.qualcomm.com/products/mobile/snapdragon/smartphones/snapdragon-6-series-mobile-platforms/snapdragon-6-gen-1-mobile-platform Snapdragon 6 Gen 1 Mobile Platform],&lt;br /&gt;
&lt;br /&gt;
[https://docs.qualcomm.com/bundle/publicresource/87-82624-1_REV_A_Snapdragon_6_Gen_3_Mobile_Platform_Product_Brief.pdf Product Brief]&lt;br /&gt;
&lt;br /&gt;
Github: [https://github.com/SnapdragonStudios Snapdragon Studios]&lt;br /&gt;
&lt;br /&gt;
Source Code: [https://docs.qualcomm.com/bundle/publicresource/topics/80-41102-1/get-the-source-code-from-the-clo-website.html Snapdragon Telematics Application Framework (TelAF) User Guide]&lt;br /&gt;
&lt;br /&gt;
| Documentation: [https://www.qualcomm.com/content/dam/qcomm-martech/dm-assets/documents/Snapdragon-7-Gen-1-Product-Brief.pdf Snapdragon-7-Gen-1-Product-Brief.pdf],&lt;br /&gt;
&lt;br /&gt;
[https://www.qualcomm.com/products/mobile/snapdragon/smartphones/snapdragon-7-series-mobile-platforms Snapdragon 7 Series Mobile Platforms]&lt;br /&gt;
&lt;br /&gt;
[https://www.qualcomm.com/products/mobile/snapdragon/smartphones/snapdragon-7-series-mobile-platforms/snapdragon-7-gen-1-mobile-platform Snapdragon 7 Gen 1 Mobile Platform],&lt;br /&gt;
&lt;br /&gt;
[https://www.qualcomm.com/products/mobile/snapdragon/smartphones/snapdragon-7-series-mobile-platforms/snapdragon-7-plus-gen-2-mobile-platform Snapdragon 7+ Gen 2 Mobile Platform]&lt;br /&gt;
&lt;br /&gt;
Github: [https://github.com/SnapdragonStudios Snapdragon Studios],&lt;br /&gt;
&lt;br /&gt;
[https://github.com/SnapdragonStudios/adreno-gpu-vulkan-code-sample-framework Snapdragon Studios]&lt;br /&gt;
&lt;br /&gt;
| Documentation: [https://www.qualcomm.com/products/mobile/snapdragon/smartphones/snapdragon-8-series-mobile-platforms Snapdragon 8 Series Mobile Platforms],&lt;br /&gt;
&lt;br /&gt;
[https://www.qualcomm.com/products/mobile/snapdragon/smartphones/snapdragon-8-series-mobile-platforms/snapdragon-8-plus-gen-1-mobile-platform Snapdragon 8+ Gen 1 Mobile Platform],&lt;br /&gt;
&lt;br /&gt;
[https://www.qualcomm.com/products/mobile/snapdragon/smartphones/snapdragon-8-series-mobile-platforms/snapdragon-8-gen-2-mobile-platform Snapdragon 8 Gen 2 Mobile Platform]&lt;br /&gt;
&lt;br /&gt;
Github: [https://github.com/SnapdragonStudios Snapdragon Studios],&lt;br /&gt;
&lt;br /&gt;
[https://github.com/SnapdragonStudios/adreno-gpu-vulkan-code-sample-framework Snapdragon Studios]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--| Documentation: []&lt;br /&gt;
Github: []&lt;br /&gt;
Source Code: [] --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Why is Qualcomm Snapdragon Popular? ====  &lt;br /&gt;
Qualcomm Snapdragon is popular because it consistently delivers high performance, making it a reliable choice for a wide range of devices, from flagship smartphones to wearables and edge computing platforms. Snapdragon combines high-performance CPUs, GPUs, AI, and modems, enabling seamless multitasking, powerful graphics, and lightning-fast connectivity.&lt;br /&gt;
&lt;br /&gt;
=== Intel Atom Processors ===&lt;br /&gt;
Intel Atom Processors are core processors commonly used in hardware platforms. They are designed to reduce electric consumption and power dissipation.&lt;br /&gt;
&lt;br /&gt;
==== Pros ====&lt;br /&gt;
* Low power consumption  &lt;br /&gt;
* Affordable price  &lt;br /&gt;
* Compact  &lt;br /&gt;
&lt;br /&gt;
Intel Atom Processors are designed for low-power consumption while providing sufficient power for embedded systems. Their use of x86 architecture ensures compatibility with a wide variety of software. This allows easy integration with existing applications, especially those that rely on Intel development tools. These processors are also suitable for media streaming, edge AI, and industrial automation. They also have Wi-Fi, Ethernet, and Bluetooth capabilities.&lt;br /&gt;
&lt;br /&gt;
==== Cons ====&lt;br /&gt;
* Limited Graphics Performance  &lt;br /&gt;
* Limited Performance  &lt;br /&gt;
* Low clock speeds  &lt;br /&gt;
* Compatibility Issues  &lt;br /&gt;
&lt;br /&gt;
While Intel Atom Processors are energy-efficient, they may not be as power-efficient as ARM-based processors like the ESP32 or Snapdragon. These processors tend to have lower overall performance compared to more powerful x86 processors and may struggle with complex AI applications or high-resolution video processing.  &lt;br /&gt;
&lt;br /&gt;
Although Intel Atom processors offer compatibility, it can also lead to higher heat output, requiring advanced cooling systems in compact closed environments. The development tools for Intel Atom processors may require specialized expertise, especially when working with Intel SDKs and Linux-based or Windows-based OS.&lt;br /&gt;
&lt;br /&gt;
==== Application ====&lt;br /&gt;
* Mobile  &lt;br /&gt;
* Embedded  &lt;br /&gt;
* IoT Applications  &lt;br /&gt;
* Infotainment (cars)  &lt;br /&gt;
&lt;br /&gt;
==== Models ====&lt;br /&gt;
* Intel Atom X7000E Series  &lt;br /&gt;
* Intel Atom X7000RE Series  &lt;br /&gt;
* Intel Atom X7000C Series  &lt;br /&gt;
* Intel Atom N-Series  &lt;br /&gt;
* Intel Atom P-Series  &lt;br /&gt;
* Intel Atom C-Series  &lt;br /&gt;
&lt;br /&gt;
==== Specifications ====&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ Intel Atom Processor Specifications&lt;br /&gt;
! Model !! Intel Atom X7000E Series !! Intel Atom X7000RE Series !! Intel Atom X7000C Series !! Intel Atom N-Series !! Intel Atom P-Series !! Intel Atom C-Series&lt;br /&gt;
|-&lt;br /&gt;
! CPU&lt;br /&gt;
| Up to 4 E-cores&lt;br /&gt;
| Up to 8 Cores&lt;br /&gt;
| Up to 8 Cores&lt;br /&gt;
| Up to 2 cores with Hyper-Threading&lt;br /&gt;
| Up to 8 cores with Hyper-Threading&lt;br /&gt;
| Up to 16 cores with Hyper-Threading&lt;br /&gt;
|-&lt;br /&gt;
! GPU&lt;br /&gt;
| Intel UHD Graphics&lt;br /&gt;
| Intel UHD Graphics&lt;br /&gt;
| Intel UHD Graphics&lt;br /&gt;
| Integrated Graphics&lt;br /&gt;
| Intel UHD Graphics&lt;br /&gt;
| Intel UHD Graphics&lt;br /&gt;
|-&lt;br /&gt;
! APU&lt;br /&gt;
| Intel Deep Learning Boost&lt;br /&gt;
| Intel Deep Learning Boost&lt;br /&gt;
| Intel Deep Learning Boost&lt;br /&gt;
| Basic AI handled by CPU and GPU&lt;br /&gt;
| Intel Deep Learning Boost&lt;br /&gt;
| Intel Deep Learning Boost&lt;br /&gt;
|-&lt;br /&gt;
! RAM&lt;br /&gt;
| Up to 16GB DDR/LPDDR4x&lt;br /&gt;
| Up to 16GB DDR/LPDDR4x&lt;br /&gt;
| Up to 16GB DDR/LPDDR4x&lt;br /&gt;
| Up to 4GB DDR3&lt;br /&gt;
| Up to 64GB DDR4&lt;br /&gt;
| Up to 256GB DDR4 ECC&lt;br /&gt;
|-&lt;br /&gt;
! Display&lt;br /&gt;
| Up to 4K @ 60Hz HDR&lt;br /&gt;
| Up to 4K @ 60Hz HDR&lt;br /&gt;
| Up to 4K @ 60Hz HDR&lt;br /&gt;
| FHD&lt;br /&gt;
| Up to 4K @ 60Hz&lt;br /&gt;
| Up to 4K @ 60Hz HDR&lt;br /&gt;
|-&lt;br /&gt;
! Ports&lt;br /&gt;
| USB-C, PCIe&lt;br /&gt;
| USB-C, PCIe&lt;br /&gt;
| USB-C, PCIe&lt;br /&gt;
| USB 2.0&lt;br /&gt;
| USB 3.2, PCIe&lt;br /&gt;
| USB 3.2, PCIe&lt;br /&gt;
|-&lt;br /&gt;
! Storage Options&lt;br /&gt;
| eMMC, SD, NVMe&lt;br /&gt;
| eMMC, SD, NVMe&lt;br /&gt;
| eMMC, SD, NVMe&lt;br /&gt;
| eMMC, SATA&lt;br /&gt;
| eMMC, NVMe, SATA&lt;br /&gt;
| eMMC, NVMe, SATA&lt;br /&gt;
|-&lt;br /&gt;
! Network&lt;br /&gt;
| Wi-Fi 6, Gigabit Ethernet&lt;br /&gt;
| Wi-Fi 6, Gigabit Ethernet&lt;br /&gt;
| Wi-Fi 6/6E, Gigabit Ethernet&lt;br /&gt;
| Wi-Fi 4, Wi-Fi 5, Ethernet Gigabit&lt;br /&gt;
| Wi-Fi 6/6E, Gigabit Ethernet&lt;br /&gt;
| Wi-Fi 6E, Gigabit Ethernet&lt;br /&gt;
|-&lt;br /&gt;
! Power&lt;br /&gt;
| 6W-15W&lt;br /&gt;
| 6W-15W&lt;br /&gt;
| 6W-15W&lt;br /&gt;
| 3.5W-7W&lt;br /&gt;
| 10W-20W&lt;br /&gt;
| 15W-35W&lt;br /&gt;
|-&lt;br /&gt;
! OS Support&lt;br /&gt;
| Ubuntu, Linux (Yocto), Windows 10/11&lt;br /&gt;
| Ubuntu, Linux (Yocto), Windows 10/11&lt;br /&gt;
| Ubuntu, Linux (Yocto), Windows 10/11&lt;br /&gt;
| Linux, Windows 7/10&lt;br /&gt;
| Ubuntu, Linux (Yocto), Windows 10/11&lt;br /&gt;
| Ubuntu, Linux (Yocto), Windows 10/11&lt;br /&gt;
|-&lt;br /&gt;
! Price Range&lt;br /&gt;
| $30-$60&lt;br /&gt;
| $50-$90&lt;br /&gt;
| $40-$80&lt;br /&gt;
| $20-$40&lt;br /&gt;
| $50-$100&lt;br /&gt;
| $100-$250&lt;br /&gt;
|-&lt;br /&gt;
! Documentation and Source Code&lt;br /&gt;
| Documentation: [https://www.intel.com/content/www/us/en/products/docs/processors/atom/x7000e-series-overview.html Intel Atom X7000E Series Overview],&lt;br /&gt;
[https://www.intel.com/content/www/us/en/products/docs/processors/atom/x7000e-series-product-brief.html Intel Atom® x7000E Series Product Brief]&lt;br /&gt;
&lt;br /&gt;
SDK: [https://www.intel.com/content/www/us/en/developer/topic-technology/edge-5g/hardware/atom-x7000e-dev-kit.html Developer Kits with Intel Atom® x7000E Processors]&lt;br /&gt;
| Documentation: [https://www.intel.com/content/www/us/en/products/docs/processors/atom/x7000re-series-overview.html Intel Atom X7000RE Series Overview],&lt;br /&gt;
[https://www.intel.com/content/www/us/en/products/docs/processors/atom/x7000re-series-product-brief.html Intel Atom® Processors x7000RE Series Product Brief]&lt;br /&gt;
| Documentation: [https://www.intel.com/content/www/us/en/products/docs/processors/atom/x7000c-series-overview.html Intel Atom X7000C Series Overview],&lt;br /&gt;
[https://www.intel.com/content/www/us/en/products/docs/processors/atom/x7000c-series-product-brief.html Intel Atom® x7000C Processors Series Product Brief]&lt;br /&gt;
| Documentation: [https://www.intel.com/content/www/us/en/products/docs/processors/atom/n2600-overview.html Intel Atom N2600 Overview]&lt;br /&gt;
| Documentation: [https://www.intel.com/content/www/us/en/products/docs/processors/atom/p-series-overview.html Intel Atom P-Series Overview],&lt;br /&gt;
[https://www.intel.com/content/www/us/en/products/docs/processors/atom/p5900-overview.html Intel Atom® P5900 Processors for 5G Network Edge Acceleration]&lt;br /&gt;
| Documentation: [https://www.intel.com/content/www/us/en/products/docs/processors/atom/c-series-overview.html Intel Atom C-Series Overview],&lt;br /&gt;
[https://www.intel.com/content/www/us/en/products/docs/processors/atom/c3000-overview.html Product Brief: Intel Atom® C3000 Processor] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Why is Intel Atom Processors Popular? ====&lt;br /&gt;
Intel Atom Processors are popular because of their low power consumption. They are ideal for small, portable devices and embedded systems. They offer a good balance between performance and power usage. Additionally, Intel’s reputation makes Atom processors a dependable choice for developers and manufacturers.&lt;br /&gt;
&lt;br /&gt;
=== Microchip PIC Microcontrollers ===&lt;br /&gt;
Microchip PIC Microcontrollers consist of scalable 8-bit, 16-bit, and 32-bit microcontrollers and Digital Signal Controllers.&lt;br /&gt;
&lt;br /&gt;
==== Pros ====&lt;br /&gt;
* Cheap, Budget friendly&lt;br /&gt;
* Low power&lt;br /&gt;
* Documentation&lt;br /&gt;
&lt;br /&gt;
Widely recognized for their low power consumption and affordability, Microchip PIC Microcontrollers are the ideal choice for a variety of embedded systems, particularly in battery-powered devices and simple consumer electronics. These microcontrollers offer user-friendly development environments due to MPLAB X IDE and Microchip Studio, which streamline the design and prototyping process. Microchip PIC Microcontrollers are also well supported by a rich ecosystem of tools, libraries, and applications.&lt;br /&gt;
&lt;br /&gt;
==== Cons ====&lt;br /&gt;
* Not enough computational power&lt;br /&gt;
* Not beginner friendly&lt;br /&gt;
&lt;br /&gt;
The microcontroller&#039;s processing power is limited compared to other more advanced microcontrollers such as the Arm Cortex-M Series. This makes them unsuitable for high computational tasks, such as AI or multimedia processing. They also lack built-in wireless connectivity, such as Wi-Fi and Bluetooth, and have relatively small RAM and storage capabilities. Microchip PIC Microcontrollers are less equipped for more advanced applications like high-speed processing, graphics, or real-time systems.&lt;br /&gt;
&lt;br /&gt;
==== Applications ====&lt;br /&gt;
* Automotive&lt;br /&gt;
* Industrial&lt;br /&gt;
* Home automation&lt;br /&gt;
&lt;br /&gt;
==== Models ====&lt;br /&gt;
* 8-bit MCUs&lt;br /&gt;
* 16-bit MCUs&lt;br /&gt;
* 32-bit MCUs&lt;br /&gt;
* Digital Signal Controllers&lt;br /&gt;
* Wireless MCUs&lt;br /&gt;
&lt;br /&gt;
==== Specifications ====&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ Microchip PIC Microcontroller and Digital Signal Controller Specifications&lt;br /&gt;
! Model !! Microchip PIC 8-bit MCU !! Microchip PIC 16-bit MCU !! Microchip PIC 32-bit MCU !! Microchip PIC Digital Signal Controllers !! Microchip PIC Wireless MCU&lt;br /&gt;
|-&lt;br /&gt;
! CPU&lt;br /&gt;
| 8-bit PIC core&lt;br /&gt;
| 16-bit PIC24 core&lt;br /&gt;
| 32-bit PIC32 core&lt;br /&gt;
| dsPIC core with digital signal processing&lt;br /&gt;
| 32-bit PIC32 core with integrated wireless&lt;br /&gt;
|-&lt;br /&gt;
! GPU&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
| Optional integrated GPU in select models&lt;br /&gt;
| N/A&lt;br /&gt;
| Optional Integrated GPU&lt;br /&gt;
|-&lt;br /&gt;
! APU&lt;br /&gt;
| N/A&lt;br /&gt;
| Basic signal processing capabilities&lt;br /&gt;
| Advanced signal processing&lt;br /&gt;
| Advanced signal processing&lt;br /&gt;
| Integrated wireless processing cores&lt;br /&gt;
|-&lt;br /&gt;
! RAM&lt;br /&gt;
| Up to 2KB&lt;br /&gt;
| Up to 32KB&lt;br /&gt;
| Up to 512KB&lt;br /&gt;
| Up to 64KB&lt;br /&gt;
| Up to 512KB&lt;br /&gt;
|-&lt;br /&gt;
! Display&lt;br /&gt;
| Basic LCD display&lt;br /&gt;
| Basic LCD display&lt;br /&gt;
| TFT and advanced displays&lt;br /&gt;
| LCD support&lt;br /&gt;
| TFT and advanced displays&lt;br /&gt;
|-&lt;br /&gt;
! Ports&lt;br /&gt;
| UART, SPI, I2C, GPIO&lt;br /&gt;
| UART, SPI, I2C, CAN, GPIO&lt;br /&gt;
| USB, PCIe, SPI, I2C&lt;br /&gt;
| UART, SPI, I2C, CAN, GPIO&lt;br /&gt;
| USB, SPI, I2C&lt;br /&gt;
|-&lt;br /&gt;
! Storage Options&lt;br /&gt;
| Internal Flash, EEPROM&lt;br /&gt;
| Internal Flash, EEPROM&lt;br /&gt;
| Internal Flash, SD, NAND&lt;br /&gt;
| Internal Flash, EEPROM&lt;br /&gt;
| Internal Flash, SD, NAND&lt;br /&gt;
|-&lt;br /&gt;
! Network&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
| Wi-Fi, Ethernet&lt;br /&gt;
| Ethernet&lt;br /&gt;
| Wi-Fi, Zigbee, LoRa&lt;br /&gt;
|-&lt;br /&gt;
! Power&lt;br /&gt;
| 0.03W-0.1W Ultra-low power&lt;br /&gt;
| 0.1W-0.5W Low power&lt;br /&gt;
| 0.5W-2W Low to Moderate Power&lt;br /&gt;
| 0.2W-1W Low power&lt;br /&gt;
| 0.05W-0.5W Ultra-low power&lt;br /&gt;
|-&lt;br /&gt;
! OS Support&lt;br /&gt;
| Bare-metal&lt;br /&gt;
| Bare-metal, FreeRTOS&lt;br /&gt;
| FreeRTOS, Zephyr&lt;br /&gt;
| FreeRTOS, Zephyr&lt;br /&gt;
| FreeRTOS, Zephyr, Harmony&lt;br /&gt;
|-&lt;br /&gt;
! Price Range&lt;br /&gt;
| $0.5-$3&lt;br /&gt;
| $2-$10&lt;br /&gt;
| $5-$20&lt;br /&gt;
| $5-$15&lt;br /&gt;
| $5-$25&lt;br /&gt;
|-&lt;br /&gt;
! Documentation and Source Code&lt;br /&gt;
| Documentation: [https://www.microchip.com/wwwAppNotes/AppNotes.aspx?appnote=en30009630 30009630m.pdf]&lt;br /&gt;
&lt;br /&gt;
SDK: [https://www.microchip.com/en-us/development-tools-tools/8bit/pic-avr-mcus Start Developing With 8-bit PIC® and AVR® MCUs],&lt;br /&gt;
&lt;br /&gt;
[https://www.microchip.com/en-us/development-tools-tools/software-tools Libraries, Code Examples and More]&lt;br /&gt;
&lt;br /&gt;
| Documentation: [https://www.microchip.com/en-us/development-tools-tools/16bit/ 16-bit Microcontrollers]&lt;br /&gt;
&lt;br /&gt;
SDK: [https://www.microchip.com/en-us/development-tools-tools/16bit/pic24f Developing With the 16-bit PIC24F MCU],&lt;br /&gt;
&lt;br /&gt;
[https://developerhelp.microchip.com/xwiki/bin/view/products/mcu-mpu/16bit-mcu/software-development/ Software Development for 16-bit PIC® MCUs - Developer Help]&lt;br /&gt;
| Documentation: [https://www.microchip.com/en-us/development-tools-tools/32bit/ PIC32 Family of 32-bit Microcontrollers]&lt;br /&gt;
&lt;br /&gt;
SDK: [https://www.microchip.com/en-us/development-tools-tools/32bit/pic32-starter-kit PIC32 STARTER KIT],&lt;br /&gt;
&lt;br /&gt;
| Documentation: [https://www.microchip.com/en-us/development-tools-tools/digital-signal-controllers Digital Signal Controllers (DSCs)]&lt;br /&gt;
&lt;br /&gt;
SDK: [https://www.microchip.com/en-us/development-tools-tools/software-tools Libraries, Code Examples and More]&lt;br /&gt;
&lt;br /&gt;
| Documentation: [https://www.microchip.com/en-us/development-tools-tools/wireless Wireless Microcontrollers]&lt;br /&gt;
&lt;br /&gt;
GitHub: [https://github.com/Microchip-MPLAB-Harmony Microchip MPLAB Harmony],&lt;br /&gt;
&lt;br /&gt;
[https://github.com/Microchip-MPLAB-Harmony/wireless_pic32cxbz_wbz Microchip-MPLAB-Harmony/wireless_pic32cxbz_wbz]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Why is Microchip PIC Microcontrollers Popular? ====&lt;br /&gt;
Microchip PIC Microcontrollers are popular because of their low cost, wide availability, and extensive design support from Microchip. They offer a variety of models that are well suited for everything from simple DIY projects to complex industrial systems. Microchip’s product availability and support network make PIC microcontrollers a trusted system for beginners and professionals.&lt;br /&gt;
&lt;br /&gt;
=== STMicroelectronics STM32 Series ===  &lt;br /&gt;
Based on the Arm Cortex-M processor. It offers products combining very high performance, real-time capabilities, digital signal processing, low-power operation, and connectivity, while maintaining full integration and ease of development.  &lt;br /&gt;
&lt;br /&gt;
==== Pros ====  &lt;br /&gt;
* High Performance  &lt;br /&gt;
* Wide range of peripherals  &lt;br /&gt;
* Low power consumption  &lt;br /&gt;
* Cost-effective  &lt;br /&gt;
&lt;br /&gt;
One of STMicroelectronics STM32 series&#039; pros is their processing power, from Arm Cortex-M0 to Cortex-M7 cores. They offer scalability for both simple and complex tasks. They also have good support for development with tools like STM32Cube and libraries like HAL, which simplify the development process. They support a wide array of peripherals such as SPI, I2C, UART, PWM, and CAN. Some models also have Wi-Fi and Bluetooth capabilities, reducing the need for external modules.  &lt;br /&gt;
&lt;br /&gt;
==== Cons ====  &lt;br /&gt;
* Complexity  &lt;br /&gt;
* Learning Curve  &lt;br /&gt;
* Different Pinout variations  &lt;br /&gt;
&lt;br /&gt;
While STMicroelectronics STM32 Series are generally affordable, they are still more expensive than other simpler microcontrollers. Beginners may find the development process more complex, especially when dealing with higher-end STM32 models. They are not well suited for high-level processing like AI, GPU-based graphics, or video processing.  &lt;br /&gt;
&lt;br /&gt;
==== Applications ====  &lt;br /&gt;
* Industrial  &lt;br /&gt;
* Automotive  &lt;br /&gt;
* IIoT (Industrial Internet of Things)  &lt;br /&gt;
* Communications Equipment  &lt;br /&gt;
&lt;br /&gt;
==== Models ====  &lt;br /&gt;
* STM32F/H Series (High Performance)  &lt;br /&gt;
* STM32G/C/F Series (Mainstream)  &lt;br /&gt;
* STM32L/U Series (Ultra-low power)  &lt;br /&gt;
* STM32W Series (Wireless)  &lt;br /&gt;
&lt;br /&gt;
==== Specifications ====  &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ STM32 Series Specifications&lt;br /&gt;
! Model !! STM32F/H Series !! STM32G/C/F Series !! STM32L/U Series !! STM32W Series&lt;br /&gt;
|-&lt;br /&gt;
! CPU&lt;br /&gt;
| Arm Cortex-M3/M4/M7/M33&lt;br /&gt;
| Arm Cortex-M4/M33&lt;br /&gt;
| Arm Cortex-M0+/M3/M33&lt;br /&gt;
| Arm Cortex-M4/M33&lt;br /&gt;
|-&lt;br /&gt;
! GPU&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
| Optional Integrated Graphics Controller&lt;br /&gt;
|-&lt;br /&gt;
! APU&lt;br /&gt;
| Basic DSP capabilities&lt;br /&gt;
| Enhanced DSP&lt;br /&gt;
| N/A&lt;br /&gt;
| Integrated RF processing for wireless&lt;br /&gt;
|-&lt;br /&gt;
! RAM&lt;br /&gt;
| Up to 1MB&lt;br /&gt;
| Up to 512KB&lt;br /&gt;
| Up to 192KB&lt;br /&gt;
| Up to 256KB&lt;br /&gt;
|-&lt;br /&gt;
! Display&lt;br /&gt;
| TFT LCD Controller&lt;br /&gt;
| TFT LCD&lt;br /&gt;
| N/A&lt;br /&gt;
| TFT LCD Up Controller&lt;br /&gt;
|-&lt;br /&gt;
! Ports&lt;br /&gt;
| UART, I2C, SPI, USB, CAN, GPIO&lt;br /&gt;
| UART, I2C, SPI, USB, CAN, GPIO&lt;br /&gt;
| UART, I2C, SPI, USB, GPIO&lt;br /&gt;
| UART, I2C, SPI, USB, CAN, GPIO&lt;br /&gt;
|-&lt;br /&gt;
! Storage Options&lt;br /&gt;
| Up to 2MB Internal Flash, External QSPI&lt;br /&gt;
| Up to 1MB Internal Flash, External QSPI&lt;br /&gt;
| Up to 1MB Internal Flash&lt;br /&gt;
| Up to 2MB Internal Flash, External QSPI&lt;br /&gt;
|-&lt;br /&gt;
! Network&lt;br /&gt;
| Ethernet&lt;br /&gt;
| CAN, USB&lt;br /&gt;
| USB&lt;br /&gt;
| Zigbee&lt;br /&gt;
|-&lt;br /&gt;
! Power&lt;br /&gt;
| 0.08W-2W&lt;br /&gt;
| 0.5W-1.5W&lt;br /&gt;
| 0.1W-0.8W&lt;br /&gt;
| 0.6W-1.2W&lt;br /&gt;
|-&lt;br /&gt;
! OS Support&lt;br /&gt;
| FreeRTOS, Zephyr, Mbed OS&lt;br /&gt;
| FreeRTOS, Zephyr, Mbed OS&lt;br /&gt;
| FreeRTOS, Zephyr, Mbed OS&lt;br /&gt;
| FreeRTOS, Zephyr, Mbed OS&lt;br /&gt;
|-&lt;br /&gt;
! Price Range&lt;br /&gt;
| $3-$20&lt;br /&gt;
| $2-$12&lt;br /&gt;
| $1.50-$10&lt;br /&gt;
| $3-$15&lt;br /&gt;
|-&lt;br /&gt;
! Documentation and Source Code&lt;br /&gt;
| Documentation: [https://www.st.com STM32 Microcontrollers (MCUs) - STMicroelectronics]&lt;br /&gt;
&lt;br /&gt;
SDK: [https://www.st.com STM32Cube MCU: List of Embedded software components - STMicroelectronics]&lt;br /&gt;
&lt;br /&gt;
GitHub: [https://github.com/STMicroelectronics STMicroelectronics]&lt;br /&gt;
| Documentation: [https://www.st.com STM32 Microcontrollers (MCUs) - STMicroelectronics]&lt;br /&gt;
&lt;br /&gt;
SDK: [https://www.st.com STM32Cube MCU: List of Embedded software components - STMicroelectronics]&lt;br /&gt;
&lt;br /&gt;
GitHub: [https://github.com/STMicroelectronics STMicroelectronics]&lt;br /&gt;
| Documentation: [https://www.st.com STM32 Microcontrollers (MCUs) - STMicroelectronics]&lt;br /&gt;
&lt;br /&gt;
SDK: [https://www.st.com STM32Cube MCU: List of Embedded software components - STMicroelectronics]&lt;br /&gt;
&lt;br /&gt;
GitHub: [https://github.com/STMicroelectronics STMicroelectronics]&lt;br /&gt;
| Documentation: [https://www.st.com STM32 Microcontrollers (MCUs) - STMicroelectronics]&lt;br /&gt;
&lt;br /&gt;
SDK: [https://www.st.com STM32Cube MCU: List of Embedded software components - STMicroelectronics]&lt;br /&gt;
&lt;br /&gt;
GitHub: [https://github.com/STMicroelectronics STMicroelectronics]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Why is STMicroelectronics STM32 Series popular? ====  &lt;br /&gt;
STMicroelectronics STM32 Series is popular because it is suitable for a wide range of applications and offers high performance and developer-friendly features. With Arm Cortex cores, STM32 microcontrollers deliver excellent performance, energy efficiency, and peripheral integration. The STM32 ecosystem is supported by comprehensive development tools, such as STM32Cube software.  &lt;br /&gt;
&lt;br /&gt;
=== Renesas RX Family ===&lt;br /&gt;
Built around advanced CPU cores packed with innovations unique to Renesas.&lt;br /&gt;
&lt;br /&gt;
==== Pros ====&lt;br /&gt;
* High performance  &lt;br /&gt;
* Low power consumption  &lt;br /&gt;
* Wide range applications  &lt;br /&gt;
&lt;br /&gt;
Renesas RX Family uses 32-bit RX cores, which deliver strong computational power and support for complex applications. They are also integrated with peripherals such as CAN, SPI, I2C, PWM, and ADC. Renesas RX has a robust ecosystem of development tools, such as e2 Studio and Renesas Synergy, for easy integration and fast development cycles.  &lt;br /&gt;
&lt;br /&gt;
==== Cons ====&lt;br /&gt;
* Proprietary architecture  &lt;br /&gt;
* Steep learning curve  &lt;br /&gt;
* Not ideal for AI or multimedia  &lt;br /&gt;
&lt;br /&gt;
While Renesas RX offers strong performance, it may not match the processing power of more advanced microcontrollers or processors, such as Arm Cortex-M, Snapdragon, or NVIDIA Jetson. It may have a steep learning curve for beginners, especially when compared to Arduino. There are also fewer libraries and less community support. While Renesas RX may be suitable for embedded systems, it may not be the best choice for AI, GPU acceleration, or complex video analytics, which demand more specialized hardware.  &lt;br /&gt;
&lt;br /&gt;
==== Applications ====&lt;br /&gt;
* Industrial  &lt;br /&gt;
* Automation  &lt;br /&gt;
* Communication  &lt;br /&gt;
&lt;br /&gt;
==== Models ====&lt;br /&gt;
* RX700  &lt;br /&gt;
* RX600  &lt;br /&gt;
* RX200  &lt;br /&gt;
* RX100  &lt;br /&gt;
&lt;br /&gt;
==== Specifications ====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ Renesas RX Family Specifications&lt;br /&gt;
! Model !! RX700 !! RX600 !! RX200 !! RX100&lt;br /&gt;
|-&lt;br /&gt;
! CPU&lt;br /&gt;
| Up to 240 MHz 32-bit RXv3 core&lt;br /&gt;
| Up to 120MHz 32-bit RXv2 core&lt;br /&gt;
| Up to 54MHz 32-bit RXv2 core&lt;br /&gt;
| Up to 32MHz 32-bit RXv2 core&lt;br /&gt;
|-&lt;br /&gt;
! GPU&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
|-&lt;br /&gt;
! APU&lt;br /&gt;
| Advanced signal processing and control&lt;br /&gt;
| Advanced signal processing and control&lt;br /&gt;
| Advanced signal processing and control&lt;br /&gt;
| Advanced signal processing and control&lt;br /&gt;
|-&lt;br /&gt;
! RAM&lt;br /&gt;
| Up to 128MB SRAM&lt;br /&gt;
| Up to 128MB SRAM&lt;br /&gt;
| Up to 32MB SRAM&lt;br /&gt;
| Up to 16MB SRAM&lt;br /&gt;
|-&lt;br /&gt;
! Display&lt;br /&gt;
| Support high-resolution displays&lt;br /&gt;
| Graphical LCD&lt;br /&gt;
| Basic LCD&lt;br /&gt;
| Basic LCD&lt;br /&gt;
|-&lt;br /&gt;
! Ports&lt;br /&gt;
| UART, SPI, I2C, CAN, USB&lt;br /&gt;
| UART, SPI, I2C, CAN, USB&lt;br /&gt;
| UART, SPI, I2C, USB&lt;br /&gt;
| UART, SPI, I2C, USB&lt;br /&gt;
|-&lt;br /&gt;
! Storage Options&lt;br /&gt;
| Internal Flash up to 16MB, External QSPI&lt;br /&gt;
| Internal Flash up to 4MB, External QSPI&lt;br /&gt;
| Internal Flash up to 2MB, External QSPI&lt;br /&gt;
| Internal Flash up to 1MB, External QSPI&lt;br /&gt;
|-&lt;br /&gt;
! Network&lt;br /&gt;
| Ethernet&lt;br /&gt;
| Ethernet&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
|-&lt;br /&gt;
! Power&lt;br /&gt;
| 0.5W-2W&lt;br /&gt;
| 0.3W-1.5W&lt;br /&gt;
| 0.2W-1W&lt;br /&gt;
| 0.1W-0.5W&lt;br /&gt;
|-&lt;br /&gt;
! OS Support&lt;br /&gt;
| FreeRTOS, RX V3 SDK, embOS&lt;br /&gt;
| FreeRTOS, RX V2 SDK, embOS&lt;br /&gt;
| FreeRTOS, RX 23 SDK, embOS&lt;br /&gt;
| FreeRTOS, RX V2 SDK, embOS&lt;br /&gt;
|-&lt;br /&gt;
! Price Range&lt;br /&gt;
| $10-$50&lt;br /&gt;
| $5-$20&lt;br /&gt;
| $2-$10&lt;br /&gt;
| $1-$5&lt;br /&gt;
|-&lt;br /&gt;
! Documentation and Source Code&lt;br /&gt;
| Documentation: [https://www.renesas.com Renesas RX700, RX600 MCU Series]  &lt;br /&gt;
&lt;br /&gt;
SDK: [https://www.renesas.com C/C++ Compiler Package for RX Family [CC-RX] | Renesas]  &lt;br /&gt;
&lt;br /&gt;
GitHub: [https://github.com/Renesas RX MCUs team]&lt;br /&gt;
| Documentation: [https://www.renesas.com Renesas RX700, RX600 MCU Series]  &lt;br /&gt;
&lt;br /&gt;
SDK: [https://www.renesas.com C/C++ Compiler Package for RX Family [CC-RX] | Renesas]  &lt;br /&gt;
&lt;br /&gt;
GitHub: [https://github.com/Renesas RX MCUs team]&lt;br /&gt;
| Documentation: [https://www.renesas.com Renesas RX200 MCU Series]  &lt;br /&gt;
&lt;br /&gt;
SDK: [https://www.renesas.com C/C++ Compiler Package for RX Family [CC-RX] | Renesas]  &lt;br /&gt;
&lt;br /&gt;
GitHub: [https://github.com/Renesas RX MCUs team]&lt;br /&gt;
| Documentation: [https://www.renesas.com Renesas RX100 MCU Series]  &lt;br /&gt;
&lt;br /&gt;
SDK: [https://www.renesas.com C/C++ Compiler Package for RX Family [CC-RX] | Renesas]  &lt;br /&gt;
&lt;br /&gt;
GitHub: [https://github.com/Renesas RX MCUs team]&lt;br /&gt;
|}&lt;br /&gt;
  &lt;br /&gt;
==== Why is Renesas RX popular? ====&lt;br /&gt;
Renesas RX is popular because it is reliable, secure, and efficient. Using RX CPU cores, these microcontrollers deliver excellent performance and real-time capabilities. Developers benefit from tools like the e² studio IDE, code generation utilities, and extensive libraries.&lt;br /&gt;
&lt;br /&gt;
=== Arm Cortex-M Series ===&lt;br /&gt;
Optimized for cost and energy-efficient microcontrollers.&lt;br /&gt;
&lt;br /&gt;
==== Pros ====&lt;br /&gt;
* Low power consumption  &lt;br /&gt;
* Compact  &lt;br /&gt;
* Cost-effective  &lt;br /&gt;
* Multiprocessing  &lt;br /&gt;
&lt;br /&gt;
Arm Cortex-M Series is widely used for its scalability, low power, and strong performance. They offer a range of cores from Cortex-M0 to Cortex-M7. The low power consumption makes it highly suitable for battery-operated devices, with advanced power management features that extend battery life. They also have robust development tools, libraries, and community support, which makes development and integration with peripheral devices easier.  &lt;br /&gt;
&lt;br /&gt;
==== Cons ====&lt;br /&gt;
* Low performance  &lt;br /&gt;
* Limited software capability  &lt;br /&gt;
&lt;br /&gt;
While the Arm Cortex-M Series offers solid performance, they are still limited compared to higher-end Arm Cortex-A processors or other specialized computing platforms such as NVIDIA Jetson or Qualcomm Snapdragon. Some advanced features such as RTOS or multi-core support may require more complex development and can be overkill for simple applications. The development process can be complex, especially for users unfamiliar with embedded systems or real-time applications, making it less beginner-friendly.  &lt;br /&gt;
&lt;br /&gt;
==== Applications ====&lt;br /&gt;
* IoT  &lt;br /&gt;
* Industrial  &lt;br /&gt;
* Automotive  &lt;br /&gt;
&lt;br /&gt;
==== Models ====&lt;br /&gt;
* Cortex-M0  &lt;br /&gt;
* Cortex-M0+  &lt;br /&gt;
* Cortex-M1  &lt;br /&gt;
* Cortex-M23  &lt;br /&gt;
* Cortex-M3  &lt;br /&gt;
* Cortex-M4  &lt;br /&gt;
* Cortex-M33  &lt;br /&gt;
* Cortex-M35P  &lt;br /&gt;
* Cortex-M55  &lt;br /&gt;
* Cortex-M7  &lt;br /&gt;
&lt;br /&gt;
==== Specifications ====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ Arm Cortex-M Series Specifications&lt;br /&gt;
! Model !! Cortex-M0 !! Cortex-M0+ !! Cortex-M1 !! Cortex-M23&lt;br /&gt;
|-&lt;br /&gt;
! CPU&lt;br /&gt;
| Armv6-M up to 50 MHz&lt;br /&gt;
| Armv6-M up to 50 MHz&lt;br /&gt;
| Armv6-M up to 50 MHz&lt;br /&gt;
| Armv6-M up to 50 MHz&lt;br /&gt;
|-&lt;br /&gt;
! GPU&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
|-&lt;br /&gt;
! APU&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
|-&lt;br /&gt;
! RAM&lt;br /&gt;
| Up to 1 MB&lt;br /&gt;
| Up to 1 MB&lt;br /&gt;
| Up to 1 MB&lt;br /&gt;
| Up to 1 MB&lt;br /&gt;
|-&lt;br /&gt;
! Display&lt;br /&gt;
| External via SPI/I2C&lt;br /&gt;
| External via SPI/I2C&lt;br /&gt;
| External via SPI/I2C&lt;br /&gt;
| External via SPI/I2C&lt;br /&gt;
|-&lt;br /&gt;
! Ports&lt;br /&gt;
| SPI, I2C, UART, GPIO&lt;br /&gt;
| SPI, I2C, UART, GPIO&lt;br /&gt;
| SPI, I2C, UART, GPIO&lt;br /&gt;
| SPI, I2C, UART, GPIO&lt;br /&gt;
|-&lt;br /&gt;
! Storage Options&lt;br /&gt;
| Up to 256KB Flash memory, SD, SPI-based NOR&lt;br /&gt;
| Up to 256KB Flash memory, SD, SPI-based NOR&lt;br /&gt;
| Up to 256KB Flash memory, SD, SPI-based NOR&lt;br /&gt;
| Up to 256KB Flash memory, SD, SPI-based NOR&lt;br /&gt;
|-&lt;br /&gt;
! Network&lt;br /&gt;
| External modules, SPI, I2C&lt;br /&gt;
| External modules, SPI, I2C&lt;br /&gt;
| External modules, SPI, I2C&lt;br /&gt;
| External modules, SPI, I2C&lt;br /&gt;
|-&lt;br /&gt;
! Power&lt;br /&gt;
| Approx 0.00005W&lt;br /&gt;
| Approx 0.00005W&lt;br /&gt;
| Approx 0.00005W&lt;br /&gt;
| Approx 0.00005W&lt;br /&gt;
|-&lt;br /&gt;
! OS Support&lt;br /&gt;
| FreeRTOS, Zephyr&lt;br /&gt;
| FreeRTOS, Zephyr&lt;br /&gt;
| FreeRTOS, Zephyr&lt;br /&gt;
| FreeRTOS, Zephyr&lt;br /&gt;
|-&lt;br /&gt;
! Price Range&lt;br /&gt;
| $1&lt;br /&gt;
| $1&lt;br /&gt;
| $1&lt;br /&gt;
| $1&lt;br /&gt;
|-&lt;br /&gt;
! Documentation and Source code&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ Arm Cortex-M Series Specifications (Advanced Models)&lt;br /&gt;
! Model !! Cortex-M3 !! Cortex-M4 !! Cortex-M33 !! Cortex-M35P&lt;br /&gt;
|-&lt;br /&gt;
! CPU&lt;br /&gt;
| Armv7-M up to 120 MHz&lt;br /&gt;
| Armv7-M up to 120 MHz&lt;br /&gt;
| Armv8-M up to 200 MHz&lt;br /&gt;
| Armv8-M up to 200 MHz&lt;br /&gt;
|-&lt;br /&gt;
! GPU&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
|-&lt;br /&gt;
! APU&lt;br /&gt;
| N/A&lt;br /&gt;
| Optional DSP&lt;br /&gt;
| Optional DSP and TrustZone&lt;br /&gt;
| Optional DSP and TrustZone&lt;br /&gt;
|-&lt;br /&gt;
! RAM&lt;br /&gt;
| Up to 64MB&lt;br /&gt;
| Up to 64MB&lt;br /&gt;
| Up to 128MB&lt;br /&gt;
| Up to 128MB&lt;br /&gt;
|-&lt;br /&gt;
! Display&lt;br /&gt;
| External via SPI/I2C&lt;br /&gt;
| External via SPI/I2C&lt;br /&gt;
| External via SPI/I2C&lt;br /&gt;
| External via SPI/I2C&lt;br /&gt;
|-&lt;br /&gt;
! Ports&lt;br /&gt;
| SPI, I2C, UART, GPIO&lt;br /&gt;
| SPI, I2C, UART, GPIO&lt;br /&gt;
| SPI, I2C, UART, GPIO&lt;br /&gt;
| SPI, I2C, UART, GPIO&lt;br /&gt;
|-&lt;br /&gt;
! Storage Options&lt;br /&gt;
| Up to 1MB Flash Memory, SD, NAND, NOR&lt;br /&gt;
| Up to 1MB Flash Memory, SD, NAND, NOR&lt;br /&gt;
| Up to 1MB Flash Memory, SD, NAND, NOR&lt;br /&gt;
| Up to 1MB Flash Memory, SD, NAND, NOR&lt;br /&gt;
|-&lt;br /&gt;
! Network&lt;br /&gt;
| External Modules, SPI, I2C&lt;br /&gt;
| External Modules, SPI, I2C&lt;br /&gt;
| External Modules, SPI, I2C&lt;br /&gt;
| External Modules, SPI, I2C&lt;br /&gt;
|-&lt;br /&gt;
! Power&lt;br /&gt;
| Approx. 0.001 W&lt;br /&gt;
| Approx. 0.001 W&lt;br /&gt;
| Approx. 0.0015 W&lt;br /&gt;
| Approx. 0.0015 W&lt;br /&gt;
|-&lt;br /&gt;
! OS Support&lt;br /&gt;
| FreeRTOS, Zephyr&lt;br /&gt;
| FreeRTOS, Zephyr&lt;br /&gt;
| FreeRTOS, Zephyr&lt;br /&gt;
| FreeRTOS, Zephyr&lt;br /&gt;
|-&lt;br /&gt;
! Price Range&lt;br /&gt;
| $1-$3&lt;br /&gt;
| $1-$5&lt;br /&gt;
| $1-$5&lt;br /&gt;
| $2-$6&lt;br /&gt;
|-&lt;br /&gt;
! Documentation and Source code&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ Arm Cortex-M Series Specifications (High-Performance Models)&lt;br /&gt;
! Model !! Cortex-M55 !! Cortex-M7&lt;br /&gt;
|-&lt;br /&gt;
! CPU&lt;br /&gt;
| Armv8.1-M up to 250 MHz&lt;br /&gt;
| Armv7E-M up to 600 MHz&lt;br /&gt;
|-&lt;br /&gt;
! GPU&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
|-&lt;br /&gt;
! APU&lt;br /&gt;
| Optional Helium vector processing&lt;br /&gt;
| Optional DSP&lt;br /&gt;
|-&lt;br /&gt;
! RAM&lt;br /&gt;
| Up to 256MB&lt;br /&gt;
| Up to 512MB&lt;br /&gt;
|-&lt;br /&gt;
! Display&lt;br /&gt;
| External via SPI/I2C&lt;br /&gt;
| External via SPI/I2C&lt;br /&gt;
|-&lt;br /&gt;
! Ports&lt;br /&gt;
| SPI, I2C, UART, GPIO&lt;br /&gt;
| SPI, I2C, UART, GPIO&lt;br /&gt;
|-&lt;br /&gt;
! Storage Options&lt;br /&gt;
| Up to 2MB Flash memory, SD, NAND, NOR&lt;br /&gt;
| Up to 2MB Flash memory, SD, NAND, NOR&lt;br /&gt;
|-&lt;br /&gt;
! Network&lt;br /&gt;
| External Modules, SPI, I2C&lt;br /&gt;
| External Modules, SPI, I2C&lt;br /&gt;
|-&lt;br /&gt;
! Power&lt;br /&gt;
| Approx. 0.002 W&lt;br /&gt;
| Approx. 0.003 W&lt;br /&gt;
|-&lt;br /&gt;
! OS Support&lt;br /&gt;
| FreeRTOS, Zephyr&lt;br /&gt;
| FreeRTOS, Zephyr&lt;br /&gt;
|-&lt;br /&gt;
! Price Range&lt;br /&gt;
| $2-$10&lt;br /&gt;
| $5-$20&lt;br /&gt;
|-&lt;br /&gt;
! Documentation and Source code&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Documentation and Source Code ====&lt;br /&gt;
* Cortex-M0: [https://documentation-service.arm.com/static/5e8e294afd977155116a6a5b?token= Documentation] | [https://github.com/ARM-software/CMSIS_5 CMSIS_5 GitHub]  &lt;br /&gt;
* Cortex-M0+: [https://developer.arm.com Cortex-M0+ Technical Reference Manual] | [https://github.com/ARM-software/CMSIS_5 CMSIS_5 GitHub]  &lt;br /&gt;
* Cortex-M1: [https://developer.arm.com Cortex-M1 Technical Reference Manual] | [https://github.com/ARM-software/CMSIS_5 CMSIS_5 GitHub]  &lt;br /&gt;
* Cortex-M23: [https://developer.arm.com Cortex-M23 Processor Technical Reference Manual] | [https://github.com/ARM-software/CMSIS_5 CMSIS_5 GitHub]  &lt;br /&gt;
* Cortex-M55: [https://developer.arm.com Cortex-M55 Processor Technical Reference Manual] | [https://github.com/ARM-software/CMSIS_5 CMSIS_5 GitHub]  &lt;br /&gt;
* Cortex-M7: [https://developer.arm.com Cortex-M7 Processor Technical Reference Manual] | [https://github.com/ARM-software/CMSIS_5 CMSIS_5 GitHub]  &lt;br /&gt;
&lt;br /&gt;
==== Why is Arm Cortex-M Series Popular? ====&lt;br /&gt;
The Arm Cortex-M Series is popular because of its excellent balance of low power consumption, high performance, scalability, integrated peripherals, and vast development tools and software support. The series ranges from the cost-effective Cortex-M0 to the high-performance Cortex-M7.&lt;br /&gt;
&lt;br /&gt;
== 🏗 Need a Solution for Your Project? ==&lt;br /&gt;
Are you looking for ways to:  &lt;br /&gt;
✅ Optimize your &#039;&#039;&#039;embedded system&#039;&#039;&#039; for better performance?  &lt;br /&gt;
✅ Integrate &#039;&#039;&#039;AI and computer vision&#039;&#039;&#039; into your products?  &lt;br /&gt;
✅ Improve &#039;&#039;&#039;multimedia processing&#039;&#039;&#039; for real-time applications?  &lt;br /&gt;
✅ Develop a &#039;&#039;&#039;robust and scalable&#039;&#039;&#039; web platform?  &lt;br /&gt;
&lt;br /&gt;
Our team has helped businesses across multiple industries solve these challenges.  &lt;br /&gt;
&lt;br /&gt;
📩 &#039;&#039;&#039;Let’s collaborate!&#039;&#039;&#039; Contact us at &#039;&#039;&#039;[support@proventusnova.com](mailto:support@proventusnova.com)&#039;&#039;&#039; or visit &#039;&#039;&#039;[ProventusNova.com](https://proventusnova.com)&#039;&#039;&#039; to discuss your project.&lt;/div&gt;</summary>
		<author><name>Sonni</name></author>
	</entry>
</feed>