This is an automated email from the ASF dual-hosted git repository.

github-bot pushed a commit to branch asf-site
in repository https://gitbox.apache.org/repos/asf/nuttx-website.git


The following commit(s) were added to refs/heads/asf-site by this push:
     new fa914d806 Publishing web: 405a7126bab3fbbeef1bb95fabd1561c86029fc1 
docs: 47d0356c65ac7aa7459c2942f7eb4fc3a48be921
fa914d806 is described below

commit fa914d806a0c01095862e86c735cda5667e7fedb
Author: raiden00pl <[email protected]>
AuthorDate: Sun Mar 2 00:28:47 2025 +0000

    Publishing web: 405a7126bab3fbbeef1bb95fabd1561c86029fc1 docs: 
47d0356c65ac7aa7459c2942f7eb4fc3a48be921
---
 content/docs/10.0.0/index.html                     |   2 +-
 content/docs/10.0.1/index.html                     |   2 +-
 content/docs/10.1.0/index.html                     |   2 +-
 content/docs/10.2.0/index.html                     |   2 +-
 content/docs/10.3.0/index.html                     |   2 +-
 content/docs/11.0.0/index.html                     |   2 +-
 content/docs/12.0.0/index.html                     |   2 +-
 content/docs/12.0.0/searchindex.js                 |   2 +-
 content/docs/12.1.0/index.html                     |   2 +-
 content/docs/12.1.0/searchindex.js                 |   2 +-
 content/docs/12.2.0/index.html                     |   2 +-
 .../xtensa/esp32/boards/esp32-audio-kit/index.html |   2 +-
 .../xtensa/esp32/boards/esp32-devkitc/index.html   |   2 +-
 content/docs/12.2.0/searchindex.js                 |   2 +-
 content/docs/12.2.1/index.html                     |   2 +-
 content/docs/12.2.1/searchindex.js                 |   2 +-
 content/docs/12.3.0/index.html                     |   2 +-
 content/docs/12.3.0/searchindex.js                 |   2 +-
 content/docs/12.4.0/index.html                     |   2 +-
 content/docs/12.4.0/searchindex.js                 |   2 +-
 content/docs/12.5.0/index.html                     |   2 +-
 content/docs/12.5.0/searchindex.js                 |   2 +-
 content/docs/12.5.1/index.html                     |   2 +-
 content/docs/12.5.1/searchindex.js                 |   2 +-
 content/docs/12.6.0/index.html                     |   2 +-
 content/docs/12.6.0/searchindex.js                 |   2 +-
 content/docs/12.7.0/index.html                     |   2 +-
 content/docs/12.7.0/searchindex.js                 |   2 +-
 content/docs/12.8.0/index.html                     |   2 +-
 content/docs/12.8.0/searchindex.js                 |   2 +-
 .../drivers/character/leds/index.rst.txt           |   1 +
 .../drivers/character/leds/userled.rst.txt         |  76 +++++++++++++++++
 .../latest/components/drivers/character/index.html |   1 +
 .../components/drivers/character/leds/index.html   |   6 +-
 .../character/leds/{ws2812.html => userled.html}   |  93 ++++++++++++++-------
 .../components/drivers/character/leds/ws2812.html  |   5 +-
 content/docs/latest/index.html                     |   2 +-
 content/docs/latest/objects.inv                    | Bin 139557 -> 139588 bytes
 content/docs/latest/searchindex.js                 |   2 +-
 content/feed.xml                                   |   4 +-
 40 files changed, 183 insertions(+), 67 deletions(-)

diff --git a/content/docs/10.0.0/index.html b/content/docs/10.0.0/index.html
index a3aa95b9f..fb4c73676 100644
--- a/content/docs/10.0.0/index.html
+++ b/content/docs/10.0.0/index.html
@@ -207,7 +207,7 @@ by following these <a class="reference internal" 
href="contributing/documentatio
 <div class="section" id="nuttx-documentation">
 <h1>NuttX Documentation<a class="headerlink" href="#nuttx-documentation" 
title="Permalink to this headline">¶</a></h1>
 <p>NuttX is a real-time operating system (RTOS) with an emphasis on standards 
compliance and small footprint. Scalable from 8-bit to 32-bit microcontroller 
environments, the primary governing standards in NuttX are Posix and ANSI 
standards. Additional standard APIs from Unix and other common RTOS’s (such as 
VxWorks) are adopted for functionality not available under these standards, or 
for functionality that is not appropriate for deeply-embedded environments 
(such as fork()).</p>
-<p>Last Updated: 01 March 25 at 00:14</p>
+<p>Last Updated: 02 March 25 at 00:14</p>
 <div class="toctree-wrapper compound">
 <p class="caption"><span class="caption-text">Table of Contents</span></p>
 <ul class="current">
diff --git a/content/docs/10.0.1/index.html b/content/docs/10.0.1/index.html
index 5cbf79e9b..9cb2025ad 100644
--- a/content/docs/10.0.1/index.html
+++ b/content/docs/10.0.1/index.html
@@ -241,7 +241,7 @@ by following these <a class="reference internal" 
href="contributing/documentatio
 <div class="section" id="nuttx-documentation">
 <h1>NuttX Documentation<a class="headerlink" href="#nuttx-documentation" 
title="Permalink to this headline">¶</a></h1>
 <p>NuttX is a real-time operating system (RTOS) with an emphasis on standards 
compliance and small footprint. Scalable from 8-bit to 32-bit microcontroller 
environments, the primary governing standards in NuttX are Posix and ANSI 
standards. Additional standard APIs from Unix and other common RTOS’s (such as 
VxWorks) are adopted for functionality not available under these standards, or 
for functionality that is not appropriate for deeply-embedded environments 
(such as fork()).</p>
-<p>Last Updated: 01 March 25 at 00:14</p>
+<p>Last Updated: 02 March 25 at 00:14</p>
 <div class="toctree-wrapper compound">
 <p class="caption"><span class="caption-text">Table of Contents</span></p>
 <ul class="current">
diff --git a/content/docs/10.1.0/index.html b/content/docs/10.1.0/index.html
index e547a3484..cc7ab71be 100644
--- a/content/docs/10.1.0/index.html
+++ b/content/docs/10.1.0/index.html
@@ -241,7 +241,7 @@ by following these <a class="reference internal" 
href="contributing/documentatio
 <div class="section" id="nuttx-documentation">
 <h1>NuttX Documentation<a class="headerlink" href="#nuttx-documentation" 
title="Permalink to this headline">¶</a></h1>
 <p>NuttX is a real-time operating system (RTOS) with an emphasis on standards 
compliance and small footprint. Scalable from 8-bit to 64-bit microcontroller 
environments, the primary governing standards in NuttX are POSIX and ANSI 
standards. Additional standard APIs from Unix and other common RTOS’s (such as 
VxWorks) are adopted for functionality not available under these standards, or 
for functionality that is not appropriate for deeply-embedded environments 
(such as fork()).</p>
-<p>Last Updated: 01 March 25 at 00:15</p>
+<p>Last Updated: 02 March 25 at 00:14</p>
 <div class="toctree-wrapper compound">
 <p class="caption"><span class="caption-text">Table of Contents</span></p>
 <ul class="current">
diff --git a/content/docs/10.2.0/index.html b/content/docs/10.2.0/index.html
index 2c6328fc4..441bbefbb 100644
--- a/content/docs/10.2.0/index.html
+++ b/content/docs/10.2.0/index.html
@@ -242,7 +242,7 @@ by following these <a class="reference internal" 
href="contributing/documentatio
 <div class="section" id="nuttx-documentation">
 <h1>NuttX Documentation<a class="headerlink" href="#nuttx-documentation" 
title="Permalink to this headline">¶</a></h1>
 <p>NuttX is a real-time operating system (RTOS) with an emphasis on standards 
compliance and small footprint. Scalable from 8-bit to 64-bit microcontroller 
environments, the primary governing standards in NuttX are POSIX and ANSI 
standards. Additional standard APIs from Unix and other common RTOS’s (such as 
VxWorks) are adopted for functionality not available under these standards, or 
for functionality that is not appropriate for deeply-embedded environments 
(such as fork()).</p>
-<p>Last Updated: 01 March 25 at 00:15</p>
+<p>Last Updated: 02 March 25 at 00:15</p>
 <div class="toctree-wrapper compound">
 <p class="caption"><span class="caption-text">Table of Contents</span></p>
 <ul class="current">
diff --git a/content/docs/10.3.0/index.html b/content/docs/10.3.0/index.html
index 2c6328fc4..441bbefbb 100644
--- a/content/docs/10.3.0/index.html
+++ b/content/docs/10.3.0/index.html
@@ -242,7 +242,7 @@ by following these <a class="reference internal" 
href="contributing/documentatio
 <div class="section" id="nuttx-documentation">
 <h1>NuttX Documentation<a class="headerlink" href="#nuttx-documentation" 
title="Permalink to this headline">¶</a></h1>
 <p>NuttX is a real-time operating system (RTOS) with an emphasis on standards 
compliance and small footprint. Scalable from 8-bit to 64-bit microcontroller 
environments, the primary governing standards in NuttX are POSIX and ANSI 
standards. Additional standard APIs from Unix and other common RTOS’s (such as 
VxWorks) are adopted for functionality not available under these standards, or 
for functionality that is not appropriate for deeply-embedded environments 
(such as fork()).</p>
-<p>Last Updated: 01 March 25 at 00:15</p>
+<p>Last Updated: 02 March 25 at 00:15</p>
 <div class="toctree-wrapper compound">
 <p class="caption"><span class="caption-text">Table of Contents</span></p>
 <ul class="current">
diff --git a/content/docs/11.0.0/index.html b/content/docs/11.0.0/index.html
index 401cb371b..441bbefbb 100644
--- a/content/docs/11.0.0/index.html
+++ b/content/docs/11.0.0/index.html
@@ -242,7 +242,7 @@ by following these <a class="reference internal" 
href="contributing/documentatio
 <div class="section" id="nuttx-documentation">
 <h1>NuttX Documentation<a class="headerlink" href="#nuttx-documentation" 
title="Permalink to this headline">¶</a></h1>
 <p>NuttX is a real-time operating system (RTOS) with an emphasis on standards 
compliance and small footprint. Scalable from 8-bit to 64-bit microcontroller 
environments, the primary governing standards in NuttX are POSIX and ANSI 
standards. Additional standard APIs from Unix and other common RTOS’s (such as 
VxWorks) are adopted for functionality not available under these standards, or 
for functionality that is not appropriate for deeply-embedded environments 
(such as fork()).</p>
-<p>Last Updated: 01 March 25 at 00:16</p>
+<p>Last Updated: 02 March 25 at 00:15</p>
 <div class="toctree-wrapper compound">
 <p class="caption"><span class="caption-text">Table of Contents</span></p>
 <ul class="current">
diff --git a/content/docs/12.0.0/index.html b/content/docs/12.0.0/index.html
index f49a657e4..b2a08b611 100644
--- a/content/docs/12.0.0/index.html
+++ b/content/docs/12.0.0/index.html
@@ -167,7 +167,7 @@ by following these <a class="reference internal" 
href="contributing/documentatio
 <section id="nuttx-documentation">
 <h1>NuttX Documentation<a class="headerlink" href="#nuttx-documentation" 
title="Permalink to this headline"></a></h1>
 <p>NuttX is a real-time operating system (RTOS) with an emphasis on standards 
compliance and small footprint. Scalable from 8-bit to 64-bit microcontroller 
environments, the primary governing standards in NuttX are POSIX and ANSI 
standards. Additional standard APIs from Unix and other common RTOS’s (such as 
VxWorks) are adopted for functionality not available under these standards, or 
for functionality that is not appropriate for deeply-embedded environments 
(such as fork()).</p>
-<p>Last Updated: 01 March 25 at 00:16</p>
+<p>Last Updated: 02 March 25 at 00:16</p>
 <div class="toctree-wrapper compound">
 <p class="caption" role="heading"><span class="caption-text">Table of 
Contents</span></p>
 <ul class="current">
diff --git a/content/docs/12.0.0/searchindex.js 
b/content/docs/12.0.0/searchindex.js
index 8c15f2a00..7e4958a37 100644
--- a/content/docs/12.0.0/searchindex.js
+++ b/content/docs/12.0.0/searchindex.js
@@ -1 +1 @@
-Search.setIndex({docnames:["applications/index","applications/nsh/builtin","applications/nsh/commands","applications/nsh/config","applications/nsh/customizing","applications/nsh/index","applications/nsh/installation","applications/nsh/login","applications/nsh/nsh","components/binfmt","components/drivers/block/index","components/drivers/character/analog","components/drivers/character/can","components/drivers/character/foc","components/drivers/character/index","components/drivers/character
 [...]
\ No newline at end of file
+Search.setIndex({docnames:["applications/index","applications/nsh/builtin","applications/nsh/commands","applications/nsh/config","applications/nsh/customizing","applications/nsh/index","applications/nsh/installation","applications/nsh/login","applications/nsh/nsh","components/binfmt","components/drivers/block/index","components/drivers/character/analog","components/drivers/character/can","components/drivers/character/foc","components/drivers/character/index","components/drivers/character
 [...]
\ No newline at end of file
diff --git a/content/docs/12.1.0/index.html b/content/docs/12.1.0/index.html
index fc01ba41f..0ed812276 100644
--- a/content/docs/12.1.0/index.html
+++ b/content/docs/12.1.0/index.html
@@ -167,7 +167,7 @@ by following these <a class="reference internal" 
href="contributing/documentatio
 <section id="nuttx-documentation">
 <h1>NuttX Documentation<a class="headerlink" href="#nuttx-documentation" 
title="Permalink to this headline"></a></h1>
 <p>NuttX is a real-time operating system (RTOS) with an emphasis on standards 
compliance and small footprint. Scalable from 8-bit to 64-bit microcontroller 
environments, the primary governing standards in NuttX are POSIX and ANSI 
standards. Additional standard APIs from Unix and other common RTOS’s (such as 
VxWorks) are adopted for functionality not available under these standards, or 
for functionality that is not appropriate for deeply-embedded environments 
(such as fork()).</p>
-<p>Last Updated: 01 March 25 at 00:16</p>
+<p>Last Updated: 02 March 25 at 00:16</p>
 <div class="toctree-wrapper compound">
 <p class="caption" role="heading"><span class="caption-text">Table of 
Contents</span></p>
 <ul class="current">
diff --git a/content/docs/12.1.0/searchindex.js 
b/content/docs/12.1.0/searchindex.js
index 7684f66f1..c884a65a8 100644
--- a/content/docs/12.1.0/searchindex.js
+++ b/content/docs/12.1.0/searchindex.js
@@ -1 +1 @@
-Search.setIndex({docnames:["applications/index","applications/nsh/builtin","applications/nsh/commands","applications/nsh/config","applications/nsh/customizing","applications/nsh/index","applications/nsh/installation","applications/nsh/login","applications/nsh/nsh","components/binfmt","components/drivers/block/index","components/drivers/character/analog","components/drivers/character/can","components/drivers/character/foc","components/drivers/character/index","components/drivers/character
 [...]
\ No newline at end of file
+Search.setIndex({docnames:["applications/index","applications/nsh/builtin","applications/nsh/commands","applications/nsh/config","applications/nsh/customizing","applications/nsh/index","applications/nsh/installation","applications/nsh/login","applications/nsh/nsh","components/binfmt","components/drivers/block/index","components/drivers/character/analog","components/drivers/character/can","components/drivers/character/foc","components/drivers/character/index","components/drivers/character
 [...]
\ No newline at end of file
diff --git a/content/docs/12.2.0/index.html b/content/docs/12.2.0/index.html
index 069545deb..68a207d3b 100644
--- a/content/docs/12.2.0/index.html
+++ b/content/docs/12.2.0/index.html
@@ -168,7 +168,7 @@ by following these <a class="reference internal" 
href="contributing/documentatio
 <section id="nuttx-documentation">
 <h1>NuttX Documentation<a class="headerlink" href="#nuttx-documentation" 
title="Permalink to this heading"></a></h1>
 <p>NuttX is a real-time operating system (RTOS) with an emphasis on standards 
compliance and small footprint. Scalable from 8-bit to 64-bit microcontroller 
environments, the primary governing standards in NuttX are POSIX and ANSI 
standards. Additional standard APIs from Unix and other common RTOS’s (such as 
VxWorks) are adopted for functionality not available under these standards, or 
for functionality that is not appropriate for deeply-embedded environments 
(such as fork()).</p>
-<p>Last Updated: 01 March 25 at 00:17</p>
+<p>Last Updated: 02 March 25 at 00:16</p>
 <div class="toctree-wrapper compound">
 <p class="caption" role="heading"><span class="caption-text">Table of 
Contents</span></p>
 <ul class="current">
diff --git 
a/content/docs/12.2.0/platforms/xtensa/esp32/boards/esp32-audio-kit/index.html 
b/content/docs/12.2.0/platforms/xtensa/esp32/boards/esp32-audio-kit/index.html
index 98aa78ecb..e07ca20c1 100644
--- 
a/content/docs/12.2.0/platforms/xtensa/esp32/boards/esp32-audio-kit/index.html
+++ 
b/content/docs/12.2.0/platforms/xtensa/esp32/boards/esp32-audio-kit/index.html
@@ -349,7 +349,7 @@ Serving HTTP on 0.0.0.0 port 8000 (http://0.0.0.0:8000/)
 <p>Look for your PC IP address and test playing the prepared audio on your
 browser:</p>
 <figure class="align-center">
-<img alt="../../../../../_images/esp32-audio-config-file1.png" 
src="../../../../../_images/esp32-audio-config-file1.png" />
+<img alt="../../../../../_images/esp32-audio-config-file.png" 
src="../../../../../_images/esp32-audio-config-file.png" />
 </figure>
 <p>After successfully built and flashed, connect the board to the Wi-Fi 
network:</p>
 <div class="highlight-none notranslate"><div 
class="highlight"><pre><span></span>$ nsh&gt; wapi psk wlan0 mypasswd 3
diff --git 
a/content/docs/12.2.0/platforms/xtensa/esp32/boards/esp32-devkitc/index.html 
b/content/docs/12.2.0/platforms/xtensa/esp32/boards/esp32-devkitc/index.html
index 874b7c3a5..09730ba82 100644
--- a/content/docs/12.2.0/platforms/xtensa/esp32/boards/esp32-devkitc/index.html
+++ b/content/docs/12.2.0/platforms/xtensa/esp32/boards/esp32-devkitc/index.html
@@ -446,7 +446,7 @@ Serving HTTP on 0.0.0.0 port 8000 (http://0.0.0.0:8000/)
 <p>Look for your PC IP address and test playing the prepared audio on your
 browser:</p>
 <figure class="align-center">
-<img alt="../../../../../_images/esp32-audio-config-file.png" 
src="../../../../../_images/esp32-audio-config-file.png" />
+<img alt="../../../../../_images/esp32-audio-config-file1.png" 
src="../../../../../_images/esp32-audio-config-file1.png" />
 </figure>
 <p>After successfully built and flashed, connect the board to the Wi-Fi 
network:</p>
 <div class="highlight-none notranslate"><div 
class="highlight"><pre><span></span>nsh&gt; wapi psk wlan0 mypasswd 3
diff --git a/content/docs/12.2.0/searchindex.js 
b/content/docs/12.2.0/searchindex.js
index 5925657b9..18ebb2974 100644
--- a/content/docs/12.2.0/searchindex.js
+++ b/content/docs/12.2.0/searchindex.js
@@ -1 +1 @@
-Search.setIndex({"docnames": ["applications/index", 
"applications/nsh/builtin", "applications/nsh/commands", 
"applications/nsh/config", "applications/nsh/customizing", 
"applications/nsh/index", "applications/nsh/installation", 
"applications/nsh/login", "applications/nsh/nsh", "applications/nxdiag/config", 
"applications/nxdiag/index", "applications/wapi/commands", 
"applications/wapi/index", "applications/wapi/wireless", "components/binfmt", 
"components/drivers/block/index", "components/dr [...]
\ No newline at end of file
+Search.setIndex({"docnames": ["applications/index", 
"applications/nsh/builtin", "applications/nsh/commands", 
"applications/nsh/config", "applications/nsh/customizing", 
"applications/nsh/index", "applications/nsh/installation", 
"applications/nsh/login", "applications/nsh/nsh", "applications/nxdiag/config", 
"applications/nxdiag/index", "applications/wapi/commands", 
"applications/wapi/index", "applications/wapi/wireless", "components/binfmt", 
"components/drivers/block/index", "components/dr [...]
\ No newline at end of file
diff --git a/content/docs/12.2.1/index.html b/content/docs/12.2.1/index.html
index 069545deb..83c99c080 100644
--- a/content/docs/12.2.1/index.html
+++ b/content/docs/12.2.1/index.html
@@ -168,7 +168,7 @@ by following these <a class="reference internal" 
href="contributing/documentatio
 <section id="nuttx-documentation">
 <h1>NuttX Documentation<a class="headerlink" href="#nuttx-documentation" 
title="Permalink to this heading"></a></h1>
 <p>NuttX is a real-time operating system (RTOS) with an emphasis on standards 
compliance and small footprint. Scalable from 8-bit to 64-bit microcontroller 
environments, the primary governing standards in NuttX are POSIX and ANSI 
standards. Additional standard APIs from Unix and other common RTOS’s (such as 
VxWorks) are adopted for functionality not available under these standards, or 
for functionality that is not appropriate for deeply-embedded environments 
(such as fork()).</p>
-<p>Last Updated: 01 March 25 at 00:17</p>
+<p>Last Updated: 02 March 25 at 00:17</p>
 <div class="toctree-wrapper compound">
 <p class="caption" role="heading"><span class="caption-text">Table of 
Contents</span></p>
 <ul class="current">
diff --git a/content/docs/12.2.1/searchindex.js 
b/content/docs/12.2.1/searchindex.js
index 9932c6378..9e2656d9b 100644
--- a/content/docs/12.2.1/searchindex.js
+++ b/content/docs/12.2.1/searchindex.js
@@ -1 +1 @@
-Search.setIndex({"docnames": ["applications/index", 
"applications/nsh/builtin", "applications/nsh/commands", 
"applications/nsh/config", "applications/nsh/customizing", 
"applications/nsh/index", "applications/nsh/installation", 
"applications/nsh/login", "applications/nsh/nsh", "applications/nxdiag/config", 
"applications/nxdiag/index", "applications/wapi/commands", 
"applications/wapi/index", "applications/wapi/wireless", "components/binfmt", 
"components/drivers/block/index", "components/dr [...]
\ No newline at end of file
+Search.setIndex({"docnames": ["applications/index", 
"applications/nsh/builtin", "applications/nsh/commands", 
"applications/nsh/config", "applications/nsh/customizing", 
"applications/nsh/index", "applications/nsh/installation", 
"applications/nsh/login", "applications/nsh/nsh", "applications/nxdiag/config", 
"applications/nxdiag/index", "applications/wapi/commands", 
"applications/wapi/index", "applications/wapi/wireless", "components/binfmt", 
"components/drivers/block/index", "components/dr [...]
\ No newline at end of file
diff --git a/content/docs/12.3.0/index.html b/content/docs/12.3.0/index.html
index 0fe8e4d3b..77b98fa35 100644
--- a/content/docs/12.3.0/index.html
+++ b/content/docs/12.3.0/index.html
@@ -168,7 +168,7 @@ by following these <a class="reference internal" 
href="contributing/documentatio
 <section id="nuttx-documentation">
 <h1>NuttX Documentation<a class="headerlink" href="#nuttx-documentation" 
title="Permalink to this heading"></a></h1>
 <p>NuttX is a real-time operating system (RTOS) with an emphasis on standards 
compliance and small footprint. Scalable from 8-bit to 64-bit microcontroller 
environments, the primary governing standards in NuttX are POSIX and ANSI 
standards. Additional standard APIs from Unix and other common RTOS’s (such as 
VxWorks) are adopted for functionality not available under these standards, or 
for functionality that is not appropriate for deeply-embedded environments 
(such as fork()).</p>
-<p>Last Updated: 01 March 25 at 00:17</p>
+<p>Last Updated: 02 March 25 at 00:17</p>
 <div class="toctree-wrapper compound">
 <p class="caption" role="heading"><span class="caption-text">Table of 
Contents</span></p>
 <ul class="current">
diff --git a/content/docs/12.3.0/searchindex.js 
b/content/docs/12.3.0/searchindex.js
index 18a78a97e..ecb75ea8b 100644
--- a/content/docs/12.3.0/searchindex.js
+++ b/content/docs/12.3.0/searchindex.js
@@ -1 +1 @@
-Search.setIndex({"docnames": ["applications/index", 
"applications/nsh/builtin", "applications/nsh/commands", 
"applications/nsh/config", "applications/nsh/customizing", 
"applications/nsh/index", "applications/nsh/installation", 
"applications/nsh/login", "applications/nsh/nsh", "applications/nxdiag/config", 
"applications/nxdiag/index", "applications/wapi/commands", 
"applications/wapi/index", "applications/wapi/wireless", "components/binfmt", 
"components/drivers/block/index", "components/dr [...]
\ No newline at end of file
+Search.setIndex({"docnames": ["applications/index", 
"applications/nsh/builtin", "applications/nsh/commands", 
"applications/nsh/config", "applications/nsh/customizing", 
"applications/nsh/index", "applications/nsh/installation", 
"applications/nsh/login", "applications/nsh/nsh", "applications/nxdiag/config", 
"applications/nxdiag/index", "applications/wapi/commands", 
"applications/wapi/index", "applications/wapi/wireless", "components/binfmt", 
"components/drivers/block/index", "components/dr [...]
\ No newline at end of file
diff --git a/content/docs/12.4.0/index.html b/content/docs/12.4.0/index.html
index a3ad52f5a..196f166f7 100644
--- a/content/docs/12.4.0/index.html
+++ b/content/docs/12.4.0/index.html
@@ -175,7 +175,7 @@ standards. Additional standard APIs from Unix and other 
common RTOS’s (such as
 VxWorks) are adopted for functionality not available under these standards, or
 for functionality that is not appropriate for deeply-embedded environments 
(such
 as fork()).</p>
-<p>Last Updated: 01 March 25 at 00:18</p>
+<p>Last Updated: 02 March 25 at 00:18</p>
 <div class="toctree-wrapper compound">
 <p class="caption" role="heading"><span class="caption-text">Table of 
Contents</span></p>
 <ul class="current">
diff --git a/content/docs/12.4.0/searchindex.js 
b/content/docs/12.4.0/searchindex.js
index b0d137d73..02ab51bc3 100644
--- a/content/docs/12.4.0/searchindex.js
+++ b/content/docs/12.4.0/searchindex.js
@@ -1 +1 @@
-Search.setIndex({"docnames": ["applications/audioutils/fmsynt/index", 
"applications/audioutils/index", "applications/audioutils/mml_parser/index", 
"applications/audioutils/nxaudio/index", 
"applications/benchmarks/coremark/index", "applications/benchmarks/index", 
"applications/boot/index", "applications/boot/mcuboot/index", 
"applications/boot/miniboot/index", "applications/canutils/candump/index", 
"applications/canutils/canlib/index", "applications/canutils/cansend/index", 
"applications/c [...]
\ No newline at end of file
+Search.setIndex({"docnames": ["applications/audioutils/fmsynt/index", 
"applications/audioutils/index", "applications/audioutils/mml_parser/index", 
"applications/audioutils/nxaudio/index", 
"applications/benchmarks/coremark/index", "applications/benchmarks/index", 
"applications/boot/index", "applications/boot/mcuboot/index", 
"applications/boot/miniboot/index", "applications/canutils/candump/index", 
"applications/canutils/canlib/index", "applications/canutils/cansend/index", 
"applications/c [...]
\ No newline at end of file
diff --git a/content/docs/12.5.0/index.html b/content/docs/12.5.0/index.html
index 8eb64f129..f49aa75e8 100644
--- a/content/docs/12.5.0/index.html
+++ b/content/docs/12.5.0/index.html
@@ -175,7 +175,7 @@ standards. Additional standard APIs from Unix and other 
common RTOS’s (such as
 VxWorks) are adopted for functionality not available under these standards, or
 for functionality that is not appropriate for deeply-embedded environments 
(such
 as fork()).</p>
-<p>Last Updated: 01 March 25 at 00:19</p>
+<p>Last Updated: 02 March 25 at 00:19</p>
 <div class="toctree-wrapper compound">
 <p class="caption" role="heading"><span class="caption-text">Table of 
Contents</span></p>
 <ul class="current">
diff --git a/content/docs/12.5.0/searchindex.js 
b/content/docs/12.5.0/searchindex.js
index 3bf154d46..e45733a31 100644
--- a/content/docs/12.5.0/searchindex.js
+++ b/content/docs/12.5.0/searchindex.js
@@ -1 +1 @@
-Search.setIndex({"docnames": ["applications/audioutils/fmsynt/index", 
"applications/audioutils/index", "applications/audioutils/mml_parser/index", 
"applications/audioutils/nxaudio/index", 
"applications/benchmarks/coremark/index", "applications/benchmarks/index", 
"applications/boot/index", "applications/boot/mcuboot/index", 
"applications/boot/miniboot/index", "applications/canutils/candump/index", 
"applications/canutils/canlib/index", "applications/canutils/cansend/index", 
"applications/c [...]
\ No newline at end of file
+Search.setIndex({"docnames": ["applications/audioutils/fmsynt/index", 
"applications/audioutils/index", "applications/audioutils/mml_parser/index", 
"applications/audioutils/nxaudio/index", 
"applications/benchmarks/coremark/index", "applications/benchmarks/index", 
"applications/boot/index", "applications/boot/mcuboot/index", 
"applications/boot/miniboot/index", "applications/canutils/candump/index", 
"applications/canutils/canlib/index", "applications/canutils/cansend/index", 
"applications/c [...]
\ No newline at end of file
diff --git a/content/docs/12.5.1/index.html b/content/docs/12.5.1/index.html
index fd61c3c33..6a9bb2c4b 100644
--- a/content/docs/12.5.1/index.html
+++ b/content/docs/12.5.1/index.html
@@ -175,7 +175,7 @@ standards. Additional standard APIs from Unix and other 
common RTOS’s (such as
 VxWorks) are adopted for functionality not available under these standards, or
 for functionality that is not appropriate for deeply-embedded environments 
(such
 as fork()).</p>
-<p>Last Updated: 01 March 25 at 00:21</p>
+<p>Last Updated: 02 March 25 at 00:20</p>
 <div class="toctree-wrapper compound">
 <p class="caption" role="heading"><span class="caption-text">Table of 
Contents</span></p>
 <ul class="current">
diff --git a/content/docs/12.5.1/searchindex.js 
b/content/docs/12.5.1/searchindex.js
index a96cc7d6b..849ccc69b 100644
--- a/content/docs/12.5.1/searchindex.js
+++ b/content/docs/12.5.1/searchindex.js
@@ -1 +1 @@
-Search.setIndex({"docnames": ["applications/audioutils/fmsynt/index", 
"applications/audioutils/index", "applications/audioutils/mml_parser/index", 
"applications/audioutils/nxaudio/index", 
"applications/benchmarks/coremark/index", "applications/benchmarks/index", 
"applications/boot/index", "applications/boot/mcuboot/index", 
"applications/boot/miniboot/index", "applications/canutils/candump/index", 
"applications/canutils/canlib/index", "applications/canutils/cansend/index", 
"applications/c [...]
\ No newline at end of file
+Search.setIndex({"docnames": ["applications/audioutils/fmsynt/index", 
"applications/audioutils/index", "applications/audioutils/mml_parser/index", 
"applications/audioutils/nxaudio/index", 
"applications/benchmarks/coremark/index", "applications/benchmarks/index", 
"applications/boot/index", "applications/boot/mcuboot/index", 
"applications/boot/miniboot/index", "applications/canutils/candump/index", 
"applications/canutils/canlib/index", "applications/canutils/cansend/index", 
"applications/c [...]
\ No newline at end of file
diff --git a/content/docs/12.6.0/index.html b/content/docs/12.6.0/index.html
index d404134ee..53ca690c2 100644
--- a/content/docs/12.6.0/index.html
+++ b/content/docs/12.6.0/index.html
@@ -176,7 +176,7 @@ standards. Additional standard APIs from Unix and other 
common RTOS’s (such as
 VxWorks) are adopted for functionality not available under these standards, or
 for functionality that is not appropriate for deeply-embedded environments 
(such
 as fork()).</p>
-<p>Last Updated: 01 March 25 at 00:22</p>
+<p>Last Updated: 02 March 25 at 00:22</p>
 <div class="toctree-wrapper compound">
 <p class="caption" role="heading"><span class="caption-text">Table of 
Contents</span></p>
 <ul class="current">
diff --git a/content/docs/12.6.0/searchindex.js 
b/content/docs/12.6.0/searchindex.js
index d014da2a2..adba1bdd3 100644
--- a/content/docs/12.6.0/searchindex.js
+++ b/content/docs/12.6.0/searchindex.js
@@ -1 +1 @@
-Search.setIndex({"docnames": ["applications/audioutils/fmsynt/index", 
"applications/audioutils/index", "applications/audioutils/mml_parser/index", 
"applications/audioutils/nxaudio/index", 
"applications/benchmarks/cachespeed/index", 
"applications/benchmarks/coremark-pro/index", 
"applications/benchmarks/coremark/index", 
"applications/benchmarks/dhrystone/index", "applications/benchmarks/fio/index", 
"applications/benchmarks/index", "applications/benchmarks/iozone/index", 
"applications/bench [...]
\ No newline at end of file
+Search.setIndex({"docnames": ["applications/audioutils/fmsynt/index", 
"applications/audioutils/index", "applications/audioutils/mml_parser/index", 
"applications/audioutils/nxaudio/index", 
"applications/benchmarks/cachespeed/index", 
"applications/benchmarks/coremark-pro/index", 
"applications/benchmarks/coremark/index", 
"applications/benchmarks/dhrystone/index", "applications/benchmarks/fio/index", 
"applications/benchmarks/index", "applications/benchmarks/iozone/index", 
"applications/bench [...]
\ No newline at end of file
diff --git a/content/docs/12.7.0/index.html b/content/docs/12.7.0/index.html
index 9cfd451c3..10c255d82 100644
--- a/content/docs/12.7.0/index.html
+++ b/content/docs/12.7.0/index.html
@@ -175,7 +175,7 @@ standards. Additional standard APIs from Unix and other 
common RTOS’s (such as
 VxWorks) are adopted for functionality not available under these standards, or
 for functionality that is not appropriate for deeply-embedded environments 
(such
 as fork()).</p>
-<p>Last Updated: 01 March 25 at 00:23</p>
+<p>Last Updated: 02 March 25 at 00:23</p>
 <div class="toctree-wrapper compound">
 <p class="caption" role="heading"><span class="caption-text">Table of 
Contents</span></p>
 <ul class="current">
diff --git a/content/docs/12.7.0/searchindex.js 
b/content/docs/12.7.0/searchindex.js
index c3511ae13..d48371131 100644
--- a/content/docs/12.7.0/searchindex.js
+++ b/content/docs/12.7.0/searchindex.js
@@ -1 +1 @@
-Search.setIndex({"docnames": ["applications/audioutils/fmsynt/index", 
"applications/audioutils/index", "applications/audioutils/mml_parser/index", 
"applications/audioutils/nxaudio/index", 
"applications/benchmarks/cachespeed/index", 
"applications/benchmarks/coremark-pro/index", 
"applications/benchmarks/coremark/index", 
"applications/benchmarks/dhrystone/index", "applications/benchmarks/fio/index", 
"applications/benchmarks/index", "applications/benchmarks/iozone/index", 
"applications/bench [...]
\ No newline at end of file
+Search.setIndex({"docnames": ["applications/audioutils/fmsynt/index", 
"applications/audioutils/index", "applications/audioutils/mml_parser/index", 
"applications/audioutils/nxaudio/index", 
"applications/benchmarks/cachespeed/index", 
"applications/benchmarks/coremark-pro/index", 
"applications/benchmarks/coremark/index", 
"applications/benchmarks/dhrystone/index", "applications/benchmarks/fio/index", 
"applications/benchmarks/index", "applications/benchmarks/iozone/index", 
"applications/bench [...]
\ No newline at end of file
diff --git a/content/docs/12.8.0/index.html b/content/docs/12.8.0/index.html
index b041ff022..cfd6d4b6c 100644
--- a/content/docs/12.8.0/index.html
+++ b/content/docs/12.8.0/index.html
@@ -175,7 +175,7 @@ standards. Additional standard APIs from Unix and other 
common RTOS’s (such as
 VxWorks) are adopted for functionality not available under these standards, or
 for functionality that is not appropriate for deeply-embedded environments 
(such
 as fork()).</p>
-<p>Last Updated: 01 March 25 at 00:25</p>
+<p>Last Updated: 02 March 25 at 00:25</p>
 <div class="toctree-wrapper compound">
 <p class="caption" role="heading"><span class="caption-text">Table of 
Contents</span></p>
 <ul class="current">
diff --git a/content/docs/12.8.0/searchindex.js 
b/content/docs/12.8.0/searchindex.js
index 961fa47a7..6f21d2f5a 100644
--- a/content/docs/12.8.0/searchindex.js
+++ b/content/docs/12.8.0/searchindex.js
@@ -1 +1 @@
-Search.setIndex({"docnames": ["applications/audioutils/fmsynt/index", 
"applications/audioutils/index", "applications/audioutils/mml_parser/index", 
"applications/audioutils/nxaudio/index", 
"applications/benchmarks/cachespeed/index", 
"applications/benchmarks/coremark-pro/index", 
"applications/benchmarks/coremark/index", 
"applications/benchmarks/dhrystone/index", "applications/benchmarks/fio/index", 
"applications/benchmarks/index", "applications/benchmarks/iozone/index", 
"applications/bench [...]
\ No newline at end of file
+Search.setIndex({"docnames": ["applications/audioutils/fmsynt/index", 
"applications/audioutils/index", "applications/audioutils/mml_parser/index", 
"applications/audioutils/nxaudio/index", 
"applications/benchmarks/cachespeed/index", 
"applications/benchmarks/coremark-pro/index", 
"applications/benchmarks/coremark/index", 
"applications/benchmarks/dhrystone/index", "applications/benchmarks/fio/index", 
"applications/benchmarks/index", "applications/benchmarks/iozone/index", 
"applications/bench [...]
\ No newline at end of file
diff --git 
a/content/docs/latest/_sources/components/drivers/character/leds/index.rst.txt 
b/content/docs/latest/_sources/components/drivers/character/leds/index.rst.txt
index bfed00549..1aef9f979 100644
--- 
a/content/docs/latest/_sources/components/drivers/character/leds/index.rst.txt
+++ 
b/content/docs/latest/_sources/components/drivers/character/leds/index.rst.txt
@@ -5,4 +5,5 @@ LEDS
 .. toctree::
   :caption: Supported Drivers
 
+  userled.rst
   ws2812.rst
diff --git 
a/content/docs/latest/_sources/components/drivers/character/leds/userled.rst.txt
 
b/content/docs/latest/_sources/components/drivers/character/leds/userled.rst.txt
new file mode 100644
index 000000000..645076190
--- /dev/null
+++ 
b/content/docs/latest/_sources/components/drivers/character/leds/userled.rst.txt
@@ -0,0 +1,76 @@
+===============
+USERLED Drivers
+===============
+
+The USERLED is a NuttX subsystem to control LEDs on the user board.
+Using it is possible for applications to control each LED individually
+or as a group.
+
+There is an application called "leds" that will test all LEDs in your board 
(counting in binary, turning ON and OFF each LED).
+
+.. code-block:: bash
+
+  NuttShell (NSH)
+  nsh> leds
+  nsh>
+  leds_main: Starting the led_daemon
+  leds main: led daemon started
+  led_daemon: Running
+  led_daemon: Opening /dev/userleds
+  led_daemon: Supported LEDs 0xff
+  led daemon: LED set 0x01
+  led daemon: LED set 0x02
+  led daemon: LED set 0x03
+  led daemon: LED set 0x04
+  led daemon: LED set 0x05
+
+Also is possible for users to control the LEDs from "nsh>" using the "printf" 
command to send data to it in hexa code:
+
+.. code-block:: bash
+
+  NuttShell (NSH)
+  nsh> printf \x000000a5 > /dev/userleds
+
+This command will turn ON the LEDs mapped to bits 0, 2, 5 and 7.
+
+It is important to note that USERLED and ARCH_LEDS will not work together,
+so in order to use USERLED please disable CONFIG_ARCH_LEDS.
+
+The NuttX USERLED driver is split into two parts:
+
+#. An "upper half" (userled_upper.c), generic driver that provides the
+   common interface to application level code, and
+#. A "lower half" (userled_lower.c), that calls the platform-specific board
+   functions (board_userled_initialize(), board_userled(), 
board_userled_all(), etc) that implements the low-level control of the LEDs.
+
+Files supporting USERLED can be found in the following locations:
+
+-  **Interface Definition**. The header file for the NuttX USERLED
+   driver resides at ``include/nuttx/leds/userled.h``. This header
+   file includes both the application level interface to the USERLED
+   driver as well as the interface between the "upper half" and
+   "lower half" drivers. The USERLED module uses a standard character
+   driver framework.
+-  **"Upper Half" Driver**. The generic, "upper half" USERLED driver
+   resides at ``drivers/leds/userled_upper.c``.
+-  **"Lower Half" Drivers**. Lower Half of the USERLED driver resides
+   in ``drivers/leds/userled_lower.c`` and the directory for the board
+   specific functions will be at 
``boards/<arch>/<family>/<boardname>/src/<arch>_userleds.c``.
+
+Something important to note is that your board initialization code (normally 
named ``<arch>_bringup.c`` should call the function to register the driver.
+
+For stm32f4discovery board this initialization code is placed at 
``boards/arm/stm32/stm32f4discovery/src/stm32_bringup.c`` and this is the block 
responsible to initialize the subsytem:
+
+.. code-block:: C
+
+  #ifdef CONFIG_USERLED
+    /* Register the LED driver */
+
+    ret = userled_lower_initialize("/dev/userleds");
+    if (ret < 0)
+      {
+        syslog(LOG_ERR, "ERROR: userled_lower_initialize() failed: %d\n", ret);
+      }
+  #endif
+
+
diff --git a/content/docs/latest/components/drivers/character/index.html 
b/content/docs/latest/components/drivers/character/index.html
index 4b5e52cb3..0f53ab19b 100644
--- a/content/docs/latest/components/drivers/character/index.html
+++ b/content/docs/latest/components/drivers/character/index.html
@@ -283,6 +283,7 @@ documented in the following paragraphs.</p>
 </li>
 <li class="toctree-l1"><a class="reference internal" href="ipcc.html">IPCC 
(Inter Processor Communication Controller) Driver</a></li>
 <li class="toctree-l1"><a class="reference internal" 
href="leds/index.html">LEDS</a><ul>
+<li class="toctree-l2"><a class="reference internal" 
href="leds/userled.html">USERLED Drivers</a></li>
 <li class="toctree-l2"><a class="reference internal" 
href="leds/ws2812.html">ws2812 Drivers</a></li>
 </ul>
 </li>
diff --git a/content/docs/latest/components/drivers/character/leds/index.html 
b/content/docs/latest/components/drivers/character/leds/index.html
index 6d40c30eb..91a91386a 100644
--- a/content/docs/latest/components/drivers/character/leds/index.html
+++ b/content/docs/latest/components/drivers/character/leds/index.html
@@ -43,7 +43,7 @@
     <script src="../../../../_static/js/theme.js"></script>
     <link rel="index" title="Index" href="../../../../genindex.html" />
     <link rel="search" title="Search" href="../../../../search.html" />
-    <link rel="next" title="ws2812 Drivers" href="ws2812.html" />
+    <link rel="next" title="USERLED Drivers" href="userled.html" />
     <link rel="prev" title="IPCC (Inter Processor Communication Controller) 
Driver" href="../ipcc.html" /> 
 </head>
 
@@ -137,6 +137,7 @@
 <li class="toctree-l4"><a class="reference internal" 
href="../input/index.html">Input Devices</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../ipcc.html">IPCC 
(Inter Processor Communication Controller) Driver</a></li>
 <li class="toctree-l4 current"><a class="current reference internal" 
href="#">LEDS</a><ul>
+<li class="toctree-l5"><a class="reference internal" 
href="userled.html">USERLED Drivers</a></li>
 <li class="toctree-l5"><a class="reference internal" href="ws2812.html">ws2812 
Drivers</a></li>
 </ul>
 </li>
@@ -224,6 +225,7 @@
 <div class="toctree-wrapper compound">
 <p class="caption" role="heading"><span class="caption-text">Supported 
Drivers</span></p>
 <ul>
+<li class="toctree-l1"><a class="reference internal" 
href="userled.html">USERLED Drivers</a></li>
 <li class="toctree-l1"><a class="reference internal" href="ws2812.html">ws2812 
Drivers</a></li>
 </ul>
 </div>
@@ -234,7 +236,7 @@
           </div>
           <footer><div class="rst-footer-buttons" role="navigation" 
aria-label="Footer">
         <a href="../ipcc.html" class="btn btn-neutral float-left" title="IPCC 
(Inter Processor Communication Controller) Driver" accesskey="p" 
rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> 
Previous</a>
-        <a href="ws2812.html" class="btn btn-neutral float-right" 
title="ws2812 Drivers" accesskey="n" rel="next">Next <span class="fa 
fa-arrow-circle-right" aria-hidden="true"></span></a>
+        <a href="userled.html" class="btn btn-neutral float-right" 
title="USERLED Drivers" accesskey="n" rel="next">Next <span class="fa 
fa-arrow-circle-right" aria-hidden="true"></span></a>
     </div>
 
   <hr/>
diff --git a/content/docs/latest/components/drivers/character/leds/ws2812.html 
b/content/docs/latest/components/drivers/character/leds/userled.html
similarity index 70%
copy from content/docs/latest/components/drivers/character/leds/ws2812.html
copy to content/docs/latest/components/drivers/character/leds/userled.html
index a8b122103..5e35d00f2 100644
--- a/content/docs/latest/components/drivers/character/leds/ws2812.html
+++ b/content/docs/latest/components/drivers/character/leds/userled.html
@@ -25,7 +25,7 @@
   <meta charset="utf-8" /><meta name="generator" content="Docutils 0.19: 
https://docutils.sourceforge.io/"; />
 
   <meta name="viewport" content="width=device-width, initial-scale=1.0" />
-  <title>ws2812 Drivers &mdash; NuttX latest documentation</title>
+  <title>USERLED Drivers &mdash; NuttX latest documentation</title>
       <link rel="stylesheet" type="text/css" 
href="../../../../_static/pygments.css" />
       <link rel="stylesheet" type="text/css" 
href="../../../../_static/css/theme.css" />
       <link rel="stylesheet" type="text/css" 
href="../../../../_static/copybutton.css" />
@@ -43,7 +43,7 @@
     <script src="../../../../_static/js/theme.js"></script>
     <link rel="index" title="Index" href="../../../../genindex.html" />
     <link rel="search" title="Search" href="../../../../search.html" />
-    <link rel="next" title="Loop Device" href="../loop.html" />
+    <link rel="next" title="ws2812 Drivers" href="ws2812.html" />
     <link rel="prev" title="LEDS" href="index.html" /> 
 </head>
 
@@ -137,7 +137,8 @@
 <li class="toctree-l4"><a class="reference internal" 
href="../input/index.html">Input Devices</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../ipcc.html">IPCC 
(Inter Processor Communication Controller) Driver</a></li>
 <li class="toctree-l4 current"><a class="reference internal" 
href="index.html">LEDS</a><ul class="current">
-<li class="toctree-l5 current"><a class="current reference internal" 
href="#">ws2812 Drivers</a></li>
+<li class="toctree-l5 current"><a class="current reference internal" 
href="#">USERLED Drivers</a></li>
+<li class="toctree-l5"><a class="reference internal" href="ws2812.html">ws2812 
Drivers</a></li>
 </ul>
 </li>
 <li class="toctree-l4"><a class="reference internal" href="../loop.html">Loop 
Device</a></li>
@@ -210,9 +211,9 @@
           <li class="breadcrumb-item"><a href="../../index.html">Device 
Drivers</a></li>
           <li class="breadcrumb-item"><a href="../index.html">Character Device 
Drivers</a></li>
           <li class="breadcrumb-item"><a href="index.html">LEDS</a></li>
-      <li class="breadcrumb-item active">ws2812 Drivers</li>
+      <li class="breadcrumb-item active">USERLED Drivers</li>
       <li class="wy-breadcrumbs-aside">
-            <a 
href="../../../../_sources/components/drivers/character/leds/ws2812.rst.txt" 
rel="nofollow"> View page source</a>
+            <a 
href="../../../../_sources/components/drivers/character/leds/userled.rst.txt" 
rel="nofollow"> View page source</a>
       </li>
   </ul>
   <hr/>
@@ -220,35 +221,69 @@
           <div role="main" class="document" itemscope="itemscope" 
itemtype="http://schema.org/Article";>
            <div itemprop="articleBody">
              
-  <section id="ws2812-drivers">
-<h1>ws2812 Drivers<a class="headerlink" href="#ws2812-drivers" 
title="Permalink to this heading"></a></h1>
-<p>This driver allows control of any smart pixels that use the ws2812
-protocol.  It supports pixel chains that use normal RGB pixels or
-newer RGBW pixels.</p>
-<p>The current driver does not support mixed RGB and RGBW pixels in a
-single chain.</p>
-<p>The NuttX ws2812 driver is split into two parts:</p>
+  <section id="userled-drivers">
+<h1>USERLED Drivers<a class="headerlink" href="#userled-drivers" 
title="Permalink to this heading"></a></h1>
+<p>The USERLED is a NuttX subsystem to control LEDs on the user board.
+Using it is possible for applications to control each LED individually
+or as a group.</p>
+<p>There is an application called “leds” that will test all LEDs in your board 
(counting in binary, turning ON and OFF each LED).</p>
+<div class="highlight-bash notranslate"><div 
class="highlight"><pre><span></span>NuttShell<span class="w"> </span><span 
class="o">(</span>NSH<span class="o">)</span>
+nsh&gt;<span class="w"> </span>leds
+nsh&gt;
+leds_main:<span class="w"> </span>Starting<span class="w"> </span>the<span 
class="w"> </span>led_daemon
+leds<span class="w"> </span>main:<span class="w"> </span>led<span class="w"> 
</span>daemon<span class="w"> </span>started
+led_daemon:<span class="w"> </span>Running
+led_daemon:<span class="w"> </span>Opening<span class="w"> </span>/dev/userleds
+led_daemon:<span class="w"> </span>Supported<span class="w"> </span>LEDs<span 
class="w"> </span>0xff
+led<span class="w"> </span>daemon:<span class="w"> </span>LED<span class="w"> 
</span><span class="nb">set</span><span class="w"> </span>0x01
+led<span class="w"> </span>daemon:<span class="w"> </span>LED<span class="w"> 
</span><span class="nb">set</span><span class="w"> </span>0x02
+led<span class="w"> </span>daemon:<span class="w"> </span>LED<span class="w"> 
</span><span class="nb">set</span><span class="w"> </span>0x03
+led<span class="w"> </span>daemon:<span class="w"> </span>LED<span class="w"> 
</span><span class="nb">set</span><span class="w"> </span>0x04
+led<span class="w"> </span>daemon:<span class="w"> </span>LED<span class="w"> 
</span><span class="nb">set</span><span class="w"> </span>0x05
+</pre></div>
+</div>
+<p>Also is possible for users to control the LEDs from “nsh&gt;” using the 
“printf” command to send data to it in hexa code:</p>
+<div class="highlight-bash notranslate"><div 
class="highlight"><pre><span></span>NuttShell<span class="w"> </span><span 
class="o">(</span>NSH<span class="o">)</span>
+nsh&gt;<span class="w"> </span><span class="nb">printf</span><span class="w"> 
</span><span class="se">\x</span>000000a5<span class="w"> </span>&gt;<span 
class="w"> </span>/dev/userleds
+</pre></div>
+</div>
+<p>This command will turn ON the LEDs mapped to bits 0, 2, 5 and 7.</p>
+<p>It is important to note that USERLED and ARCH_LEDS will not work together,
+so in order to use USERLED please disable CONFIG_ARCH_LEDS.</p>
+<p>The NuttX USERLED driver is split into two parts:</p>
 <ol class="arabic simple">
-<li><p>An “upper half”, generic driver that provides the common
-interface to application level code, and</p></li>
-<li><p>A “lower half”, platform-specific driver that implements the
-low-level formatting and output.</p></li>
+<li><p>An “upper half” (userled_upper.c), generic driver that provides the
+common interface to application level code, and</p></li>
+<li><p>A “lower half” (userled_lower.c), that calls the platform-specific board
+functions (board_userled_initialize(), board_userled(), board_userled_all(), 
etc) that implements the low-level control of the LEDs.</p></li>
 </ol>
-<p>Files supporting ws2812 can be found in the following locations:</p>
+<p>Files supporting USERLED can be found in the following locations:</p>
 <ul class="simple">
-<li><p><strong>Interface Definition</strong>. The header file for the NuttX 
ws2812
-driver reside at <code class="docutils literal notranslate"><span 
class="pre">include/nuttx/leds/ws2812.h</span></code>. This header
-file includes both the application level interface to the ws2812
+<li><p><strong>Interface Definition</strong>. The header file for the NuttX 
USERLED
+driver resides at <code class="docutils literal notranslate"><span 
class="pre">include/nuttx/leds/userled.h</span></code>. This header
+file includes both the application level interface to the USERLED
 driver as well as the interface between the “upper half” and
-“lower half” drivers. The ws2812 module uses a standard character
+“lower half” drivers. The USERLED module uses a standard character
 driver framework.</p></li>
-<li><p><strong>“Upper Half” Driver</strong>. The generic, “upper half” ws2812 
driver
-resides at <code class="docutils literal notranslate"><span 
class="pre">drivers/leds/ws2812.c</span></code>.</p></li>
-<li><p><strong>“Lower Half” Drivers</strong>. Platform-specific ws2812 drivers 
reside
-in <code class="docutils literal notranslate"><span 
class="pre">arch/&lt;architecture&gt;/src/&lt;hardware&gt;</span></code>
-directory for the specific processor <code class="docutils literal 
notranslate"><span class="pre">&lt;architecture&gt;</span></code> and for
-the specific <code class="docutils literal notranslate"><span 
class="pre">&lt;chip&gt;</span></code> ws2812 peripheral devices.</p></li>
+<li><p><strong>“Upper Half” Driver</strong>. The generic, “upper half” USERLED 
driver
+resides at <code class="docutils literal notranslate"><span 
class="pre">drivers/leds/userled_upper.c</span></code>.</p></li>
+<li><p><strong>“Lower Half” Drivers</strong>. Lower Half of the USERLED driver 
resides
+in <code class="docutils literal notranslate"><span 
class="pre">drivers/leds/userled_lower.c</span></code> and the directory for 
the board
+specific functions will be at <code class="docutils literal notranslate"><span 
class="pre">boards/&lt;arch&gt;/&lt;family&gt;/&lt;boardname&gt;/src/&lt;arch&gt;_userleds.c</span></code>.</p></li>
 </ul>
+<p>Something important to note is that your board initialization code 
(normally named <code class="docutils literal notranslate"><span 
class="pre">&lt;arch&gt;_bringup.c</span></code> should call the function to 
register the driver.</p>
+<p>For stm32f4discovery board this initialization code is placed at <code 
class="docutils literal notranslate"><span 
class="pre">boards/arm/stm32/stm32f4discovery/src/stm32_bringup.c</span></code> 
and this is the block responsible to initialize the subsytem:</p>
+<div class="highlight-C notranslate"><div 
class="highlight"><pre><span></span><span class="cp">#ifdef 
CONFIG_USERLED</span>
+<span class="w">  </span><span class="cm">/* Register the LED driver */</span>
+
+<span class="w">  </span><span class="n">ret</span><span class="w"> 
</span><span class="o">=</span><span class="w"> </span><span 
class="n">userled_lower_initialize</span><span class="p">(</span><span 
class="s">&quot;/dev/userleds&quot;</span><span class="p">);</span>
+<span class="w">  </span><span class="k">if</span><span class="w"> 
</span><span class="p">(</span><span class="n">ret</span><span class="w"> 
</span><span class="o">&lt;</span><span class="w"> </span><span 
class="mi">0</span><span class="p">)</span>
+<span class="w">    </span><span class="p">{</span>
+<span class="w">      </span><span class="n">syslog</span><span 
class="p">(</span><span class="n">LOG_ERR</span><span class="p">,</span><span 
class="w"> </span><span class="s">&quot;ERROR: userled_lower_initialize() 
failed: %d</span><span class="se">\n</span><span class="s">&quot;</span><span 
class="p">,</span><span class="w"> </span><span class="n">ret</span><span 
class="p">);</span>
+<span class="w">    </span><span class="p">}</span>
+<span class="cp">#endif</span>
+</pre></div>
+</div>
 </section>
 
 
@@ -256,7 +291,7 @@ the specific <code class="docutils literal 
notranslate"><span class="pre">&lt;ch
           </div>
           <footer><div class="rst-footer-buttons" role="navigation" 
aria-label="Footer">
         <a href="index.html" class="btn btn-neutral float-left" title="LEDS" 
accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" 
aria-hidden="true"></span> Previous</a>
-        <a href="../loop.html" class="btn btn-neutral float-right" title="Loop 
Device" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right" 
aria-hidden="true"></span></a>
+        <a href="ws2812.html" class="btn btn-neutral float-right" 
title="ws2812 Drivers" accesskey="n" rel="next">Next <span class="fa 
fa-arrow-circle-right" aria-hidden="true"></span></a>
     </div>
 
   <hr/>
diff --git a/content/docs/latest/components/drivers/character/leds/ws2812.html 
b/content/docs/latest/components/drivers/character/leds/ws2812.html
index a8b122103..e1548b2ee 100644
--- a/content/docs/latest/components/drivers/character/leds/ws2812.html
+++ b/content/docs/latest/components/drivers/character/leds/ws2812.html
@@ -44,7 +44,7 @@
     <link rel="index" title="Index" href="../../../../genindex.html" />
     <link rel="search" title="Search" href="../../../../search.html" />
     <link rel="next" title="Loop Device" href="../loop.html" />
-    <link rel="prev" title="LEDS" href="index.html" /> 
+    <link rel="prev" title="USERLED Drivers" href="userled.html" /> 
 </head>
 
 <body class="wy-body-for-nav"> 
@@ -137,6 +137,7 @@
 <li class="toctree-l4"><a class="reference internal" 
href="../input/index.html">Input Devices</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../ipcc.html">IPCC 
(Inter Processor Communication Controller) Driver</a></li>
 <li class="toctree-l4 current"><a class="reference internal" 
href="index.html">LEDS</a><ul class="current">
+<li class="toctree-l5"><a class="reference internal" 
href="userled.html">USERLED Drivers</a></li>
 <li class="toctree-l5 current"><a class="current reference internal" 
href="#">ws2812 Drivers</a></li>
 </ul>
 </li>
@@ -255,7 +256,7 @@ the specific <code class="docutils literal 
notranslate"><span class="pre">&lt;ch
            </div>
           </div>
           <footer><div class="rst-footer-buttons" role="navigation" 
aria-label="Footer">
-        <a href="index.html" class="btn btn-neutral float-left" title="LEDS" 
accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" 
aria-hidden="true"></span> Previous</a>
+        <a href="userled.html" class="btn btn-neutral float-left" 
title="USERLED Drivers" accesskey="p" rel="prev"><span class="fa 
fa-arrow-circle-left" aria-hidden="true"></span> Previous</a>
         <a href="../loop.html" class="btn btn-neutral float-right" title="Loop 
Device" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right" 
aria-hidden="true"></span></a>
     </div>
 
diff --git a/content/docs/latest/index.html b/content/docs/latest/index.html
index 7551a1381..09e563959 100644
--- a/content/docs/latest/index.html
+++ b/content/docs/latest/index.html
@@ -175,7 +175,7 @@ standards. Additional standard APIs from Unix and other 
common RTOS’s (such as
 VxWorks) are adopted for functionality not available under these standards, or
 for functionality that is not appropriate for deeply-embedded environments 
(such
 as fork()).</p>
-<p>Last Updated: 01 March 25 at 00:26</p>
+<p>Last Updated: 02 March 25 at 00:26</p>
 <div class="toctree-wrapper compound">
 <p class="caption" role="heading"><span class="caption-text">Table of 
Contents</span></p>
 <ul class="current">
diff --git a/content/docs/latest/objects.inv b/content/docs/latest/objects.inv
index 6e8ae466a..cd0cc0824 100644
Binary files a/content/docs/latest/objects.inv and 
b/content/docs/latest/objects.inv differ
diff --git a/content/docs/latest/searchindex.js 
b/content/docs/latest/searchindex.js
index 478558677..469cfdbd7 100644
--- a/content/docs/latest/searchindex.js
+++ b/content/docs/latest/searchindex.js
@@ -1 +1 @@
-Search.setIndex({"docnames": ["applications/audioutils/fmsynt/index", 
"applications/audioutils/index", "applications/audioutils/mml_parser/index", 
"applications/audioutils/nxaudio/index", 
"applications/benchmarks/cachespeed/index", 
"applications/benchmarks/coremark-pro/index", 
"applications/benchmarks/coremark/index", 
"applications/benchmarks/cyclictest/index", 
"applications/benchmarks/dhrystone/index", "applications/benchmarks/fio/index", 
"applications/benchmarks/index", "applications/b [...]
\ No newline at end of file
+Search.setIndex({"docnames": ["applications/audioutils/fmsynt/index", 
"applications/audioutils/index", "applications/audioutils/mml_parser/index", 
"applications/audioutils/nxaudio/index", 
"applications/benchmarks/cachespeed/index", 
"applications/benchmarks/coremark-pro/index", 
"applications/benchmarks/coremark/index", 
"applications/benchmarks/cyclictest/index", 
"applications/benchmarks/dhrystone/index", "applications/benchmarks/fio/index", 
"applications/benchmarks/index", "applications/b [...]
\ No newline at end of file
diff --git a/content/feed.xml b/content/feed.xml
index 363544e16..6aedea157 100644
--- a/content/feed.xml
+++ b/content/feed.xml
@@ -5,8 +5,8 @@
     <description></description>
     <link>/</link>
     <atom:link href="/feed.xml" rel="self" type="application/rss+xml"/>
-    <pubDate>Sat, 01 Mar 2025 00:28:32 +0000</pubDate>
-    <lastBuildDate>Sat, 01 Mar 2025 00:28:32 +0000</lastBuildDate>
+    <pubDate>Sun, 02 Mar 2025 00:28:33 +0000</pubDate>
+    <lastBuildDate>Sun, 02 Mar 2025 00:28:33 +0000</lastBuildDate>
     <generator>Jekyll v4.3.2</generator>
     
       <item>

Reply via email to