You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@nuttx.apache.org by gi...@apache.org on 2022/11/16 00:16:45 UTC

[incubator-nuttx-website] branch asf-site updated: Publishing web: 24c81cd558a7579a161cc49875837b86fad73b4d docs: 9b5516846282d2f11dce65c12d22473255668fff

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/incubator-nuttx-website.git


The following commit(s) were added to refs/heads/asf-site by this push:
     new a942b5e3 Publishing web: 24c81cd558a7579a161cc49875837b86fad73b4d docs: 9b5516846282d2f11dce65c12d22473255668fff
a942b5e3 is described below

commit a942b5e30150cd2dbd777247902eff8700bd7b0a
Author: Brennan <ba...@brennanashton.com>
AuthorDate: Wed Nov 16 00:14:03 2022 +0000

    Publishing web: 24c81cd558a7579a161cc49875837b86fad73b4d docs: 9b5516846282d2f11dce65c12d22473255668fff
---
 content/docs/10.0.0/index.html                     |   2 +-
 content/docs/10.0.0/searchindex.js                 |   2 +-
 content/docs/10.0.1/index.html                     |   2 +-
 content/docs/10.0.1/searchindex.js                 |   2 +-
 content/docs/10.1.0/index.html                     |   2 +-
 content/docs/10.1.0/searchindex.js                 |   2 +-
 content/docs/10.2.0/index.html                     |   2 +-
 content/docs/10.2.0/searchindex.js                 |   2 +-
 content/docs/10.3.0/index.html                     |   2 +-
 content/docs/10.3.0/searchindex.js                 |   2 +-
 content/docs/11.0.0/index.html                     |   2 +-
 content/docs/11.0.0/searchindex.js                 |   2 +-
 .../esp32/boards/esp32-devkitc/index.rst.txt       | 105 +++++++++--
 content/docs/latest/index.html                     |   2 +-
 content/docs/latest/objects.inv                    | Bin 39377 -> 39389 bytes
 .../xtensa/esp32/boards/esp32-devkitc/index.html   | 192 +++++++++++++++++++--
 content/docs/latest/searchindex.js                 |   2 +-
 content/feed.xml                                   |   4 +-
 18 files changed, 293 insertions(+), 36 deletions(-)

diff --git a/content/docs/10.0.0/index.html b/content/docs/10.0.0/index.html
index 3d21687d..8ecb9f1a 100644
--- a/content/docs/10.0.0/index.html
+++ b/content/docs/10.0.0/index.html
@@ -133,7 +133,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 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: 15 November 22 at 00:11</p>
+<p>Last Updated: 16 November 22 at 00:11</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/10.0.0/searchindex.js b/content/docs/10.0.0/searchindex.js
index dc8f317d..3f5436c8 100644
--- a/content/docs/10.0.0/searchindex.js
+++ b/content/docs/10.0.0/searchindex.js
@@ -1 +1 @@
-Search.setIndex({docnames:["applications/index","boards/index","components/binfmt","components/drivers/block/index","components/drivers/character/analog","components/drivers/character/can","components/drivers/character/index","components/drivers/character/keypad","components/drivers/character/pwm","components/drivers/character/quadrature","components/drivers/character/rtc","components/drivers/character/serial","components/drivers/character/timer","components/drivers/character/touchscreen [...]
\ No newline at end of file
+Search.setIndex({docnames:["applications/index","boards/index","components/binfmt","components/drivers/block/index","components/drivers/character/analog","components/drivers/character/can","components/drivers/character/index","components/drivers/character/keypad","components/drivers/character/pwm","components/drivers/character/quadrature","components/drivers/character/rtc","components/drivers/character/serial","components/drivers/character/timer","components/drivers/character/touchscreen [...]
\ No newline at end of file
diff --git a/content/docs/10.0.1/index.html b/content/docs/10.0.1/index.html
index 827c4f17..69d09a08 100644
--- a/content/docs/10.0.1/index.html
+++ b/content/docs/10.0.1/index.html
@@ -145,7 +145,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 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: 15 November 22 at 00:11</p>
+<p>Last Updated: 16 November 22 at 00:11</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/10.0.1/searchindex.js b/content/docs/10.0.1/searchindex.js
index dc8f317d..3f5436c8 100644
--- a/content/docs/10.0.1/searchindex.js
+++ b/content/docs/10.0.1/searchindex.js
@@ -1 +1 @@
-Search.setIndex({docnames:["applications/index","boards/index","components/binfmt","components/drivers/block/index","components/drivers/character/analog","components/drivers/character/can","components/drivers/character/index","components/drivers/character/keypad","components/drivers/character/pwm","components/drivers/character/quadrature","components/drivers/character/rtc","components/drivers/character/serial","components/drivers/character/timer","components/drivers/character/touchscreen [...]
\ No newline at end of file
+Search.setIndex({docnames:["applications/index","boards/index","components/binfmt","components/drivers/block/index","components/drivers/character/analog","components/drivers/character/can","components/drivers/character/index","components/drivers/character/keypad","components/drivers/character/pwm","components/drivers/character/quadrature","components/drivers/character/rtc","components/drivers/character/serial","components/drivers/character/timer","components/drivers/character/touchscreen [...]
\ No newline at end of file
diff --git a/content/docs/10.1.0/index.html b/content/docs/10.1.0/index.html
index 0e877fad..05c37ad6 100644
--- a/content/docs/10.1.0/index.html
+++ b/content/docs/10.1.0/index.html
@@ -144,7 +144,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: 15 November 22 at 00:11</p>
+<p>Last Updated: 16 November 22 at 00:11</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/10.1.0/searchindex.js b/content/docs/10.1.0/searchindex.js
index 03dfa9c1..f0760af1 100644
--- a/content/docs/10.1.0/searchindex.js
+++ b/content/docs/10.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/10.2.0/index.html b/content/docs/10.2.0/index.html
index 5fff09d6..f7603cf0 100644
--- a/content/docs/10.2.0/index.html
+++ b/content/docs/10.2.0/index.html
@@ -145,7 +145,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: 15 November 22 at 00:12</p>
+<p>Last Updated: 16 November 22 at 00:12</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/10.2.0/searchindex.js b/content/docs/10.2.0/searchindex.js
index c6064a1e..fecb018d 100644
--- a/content/docs/10.2.0/searchindex.js
+++ b/content/docs/10.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","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/10.3.0/index.html b/content/docs/10.3.0/index.html
index 5fff09d6..f7603cf0 100644
--- a/content/docs/10.3.0/index.html
+++ b/content/docs/10.3.0/index.html
@@ -145,7 +145,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: 15 November 22 at 00:12</p>
+<p>Last Updated: 16 November 22 at 00:12</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/10.3.0/searchindex.js b/content/docs/10.3.0/searchindex.js
index 59a851b3..413c5395 100644
--- a/content/docs/10.3.0/searchindex.js
+++ b/content/docs/10.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","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/11.0.0/index.html b/content/docs/11.0.0/index.html
index 5fff09d6..f7603cf0 100644
--- a/content/docs/11.0.0/index.html
+++ b/content/docs/11.0.0/index.html
@@ -145,7 +145,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: 15 November 22 at 00:12</p>
+<p>Last Updated: 16 November 22 at 00:12</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/11.0.0/searchindex.js b/content/docs/11.0.0/searchindex.js
index fa2f2b81..ca38f7e2 100644
--- a/content/docs/11.0.0/searchindex.js
+++ b/content/docs/11.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/latest/_sources/platforms/xtensa/esp32/boards/esp32-devkitc/index.rst.txt b/content/docs/latest/_sources/platforms/xtensa/esp32/boards/esp32-devkitc/index.rst.txt
index 0016fbe3..5a186f86 100644
--- a/content/docs/latest/_sources/platforms/xtensa/esp32/boards/esp32-devkitc/index.rst.txt
+++ b/content/docs/latest/_sources/platforms/xtensa/esp32/boards/esp32-devkitc/index.rst.txt
@@ -110,8 +110,10 @@ I2S
 ESP32 has two I2S peripherals accessible using either the generic I2S audio
 driver or a specific audio codec driver
 (`CS4344 <https://www.cirrus.com/products/cs4344-45-48/>`__ bindings are
-available at the moment). Also, it's possible to use the I2S character device
-driver to bypass audio systems and write directly to the I2S peripheral.
+available at the moment). The generic I2S audio driver enables using both
+the receiver module (RX) and the transmitter module (TX) without using any
+specific codec. Also, it's possible to use the I2S character device driver
+to bypass the audio subsystem and write directly to the I2S peripheral.
 
 .. note:: The I2S peripheral is able to work on two functional modes
   internally: 16 and 32-bit width.
@@ -134,6 +136,11 @@ driver to bypass audio systems and write directly to the I2S peripheral.
   aligned to the next boundary i.e. 16 bits for the 8 and 16-bit-widths and
   32 bits for 24 and 32-bit-widths.
 
+The following configurations use the I2S peripheral::
+  * :ref:`platforms/xtensa/esp32/boards/esp32-devkitc/index:audio`
+  * :ref:`platforms/xtensa/esp32/boards/esp32-devkitc/index:i2schar`
+  * :ref:`platforms/xtensa/esp32/boards/esp32-devkitc/index:nxlooper`
+
 Pin Mapping
 ===========
 
@@ -189,15 +196,15 @@ browser:
 
 After successfully built and flashed, connect the board to the Wi-Fi network::
 
-  $ nsh> wapi psk wlan0 mypasswd 1
-  $ nsh> wapi essid wlan0 myssid 1
-  $ nsh> renew wlan0
+  nsh> wapi psk wlan0 mypasswd 1
+  nsh> wapi essid wlan0 myssid 1
+  nsh> renew wlan0
 
 Once connected, open NuttX's player and play the file according to its file
 name and the IP address of the HTTP server::
 
-  $ nsh> nxplayer
-  $ nxplayer> play http://192.168.1.239:8000/tones.wav
+  nsh> nxplayer
+  nxplayer> play http://192.168.1.239:8000/tones.wav
 
 efuse
 -----
@@ -208,12 +215,35 @@ i2schar
 -------
 
 This configuration enables the I2S character device and the i2schar example
-app, which provides an easy-to-use way of testing the I2S peripheral (I2S0
-on this example).
+app, which provides an easy-to-use way of testing the I2S peripherals (I2S0
+and I2S1), enabling both the TX and the RX for those peripherals.
+
+**I2S0 pinout**
+
+========== ========== =========================================
+ESP32 Pin  Signal Pin Description
+========== ========== =========================================
+0          MCLK       Master Clock
+4          BCLK       Bit Clock (SCLK)
+5          WS         Word Select (LRCLK)
+18         DOUT       Data Out
+19         DIN        Data IN
+========== ========== =========================================
+
+**I2S1 pinout**
+
+========== ========== =========================================
+ESP32 Pin  Signal Pin Description
+========== ========== =========================================
+22         BCLK       Bit Clock (SCLK)
+23         WS         Word Select (LRCLK)
+25         DOUT       Data Out
+26         DIN        Data IN
+========== ========== =========================================
 
 After successfully built and flashed, run on the boards's terminal::
 
-  $ i2schar
+  i2schar -p /dev/i2schar[0-1]
 
 The corresponding output should show related debug informations.
 
@@ -319,6 +349,61 @@ nsh
 Basic NuttShell configuration (console enabled in UART0, exposed via
 USB connection by means of CP2102 converter, at 115200 bps).
 
+nxlooper
+--------
+
+This configuration uses the I2S1 peripheral as an I2S receiver and the I2S0
+peripheral as an I2S transmitter. The idea is to capture an I2S data frame
+using an I2S peripheral and reproduce the captured data on the other.
+
+**Receiving data on I2S1**
+
+The I2S1 will act as a receiver (master mode), capturing data from DIN, which
+needs to be connected to an external source as follows:
+
+========== ========== =========================================
+ESP32 Pin  Signal Pin Description
+========== ========== =========================================
+22         BCLK       Bit Clock (SCLK)
+23         WS         Word Select (LRCLK)
+26         DIN        Data IN
+========== ========== =========================================
+
+**Transmitting data on I2S0**
+
+The I2S0 will act as a transmitter (master mode), replicating the data
+captured on I2S1. The pinout for the transmitter is as follows:
+
+========== ========== =========================================
+ESP32 Pin  Signal Pin Description
+========== ========== =========================================
+0          MCLK       Master Clock
+4          BCLK       Bit Clock (SCLK)
+5          WS         Word Select (LRCLK)
+18         DOUT       Data Out
+========== ========== =========================================
+
+.. note:: The audio codec CS4344 can be connected to the transmitter pins
+  to reproduce the captured data if the receiver's source is an audio data.
+
+**nxlooper**
+
+The `nxlooper` application captures data from the audio device with receiving
+capabilities (the I2S1 on this example) and forwards the audio data frame to
+the audio device with transmitting capabilities (the I2S0 on this example).
+
+After successfully built and flashed, run on the boards's terminal::
+
+  nsh> nxlooper
+  nxlooper> loopback
+
+.. note:: `loopback` command default arguments for the channel configuration,
+  the data width and the sample rate are, respectively, 2 channels,
+  16 bits/sample and 48KHz. These arguments can be supplied to select
+  different audio formats, for instance::
+
+    nxlooper> loopback 2 8 44100
+
 ostest
 ------
 
diff --git a/content/docs/latest/index.html b/content/docs/latest/index.html
index 2dc9dae6..94247001 100644
--- a/content/docs/latest/index.html
+++ b/content/docs/latest/index.html
@@ -145,7 +145,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: 15 November 22 at 00:13</p>
+<p>Last Updated: 16 November 22 at 00:12</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 bb5edc5d..0c3c69dd 100644
Binary files a/content/docs/latest/objects.inv and b/content/docs/latest/objects.inv differ
diff --git a/content/docs/latest/platforms/xtensa/esp32/boards/esp32-devkitc/index.html b/content/docs/latest/platforms/xtensa/esp32/boards/esp32-devkitc/index.html
index 456ebe4a..22a98541 100644
--- a/content/docs/latest/platforms/xtensa/esp32/boards/esp32-devkitc/index.html
+++ b/content/docs/latest/platforms/xtensa/esp32/boards/esp32-devkitc/index.html
@@ -321,8 +321,10 @@ causes failing to bring the ESP32 chip up.</p>
 <p>ESP32 has two I2S peripherals accessible using either the generic I2S audio
 driver or a specific audio codec driver
 (<a class="reference external" href="https://www.cirrus.com/products/cs4344-45-48/">CS4344</a> bindings are
-available at the moment). Also, it’s possible to use the I2S character device
-driver to bypass audio systems and write directly to the I2S peripheral.</p>
+available at the moment). The generic I2S audio driver enables using both
+the receiver module (RX) and the transmitter module (TX) without using any
+specific codec. Also, it’s possible to use the I2S character device driver
+to bypass the audio subsystem and write directly to the I2S peripheral.</p>
 <div class="admonition note">
 <p class="admonition-title">Note</p>
 <p>The I2S peripheral is able to work on two functional modes
@@ -348,6 +350,14 @@ directly to the I2S character device. Just make sure to set the bit-width:</p>
 aligned to the next boundary i.e. 16 bits for the 8 and 16-bit-widths and
 32 bits for 24 and 32-bit-widths.</p>
 </div>
+<dl class="simple">
+<dt>The following configurations use the I2S peripheral::</dt><dd><ul class="simple">
+<li><p><a class="reference internal" href="#audio"><span class="std std-ref">audio</span></a></p></li>
+<li><p><a class="reference internal" href="#i2schar"><span class="std std-ref">i2schar</span></a></p></li>
+<li><p><a class="reference internal" href="#nxlooper"><span class="std std-ref">nxlooper</span></a></p></li>
+</ul>
+</dd>
+</dl>
 </section>
 <section id="pin-mapping">
 <h2>Pin Mapping<a class="headerlink" href="#pin-mapping" title="Permalink to this headline"></a></h2>
@@ -432,15 +442,15 @@ browser:</p>
 <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 1
-$ nsh&gt; wapi essid wlan0 myssid 1
-$ nsh&gt; renew wlan0
+<div class="highlight-none notranslate"><div class="highlight"><pre><span></span>nsh&gt; wapi psk wlan0 mypasswd 1
+nsh&gt; wapi essid wlan0 myssid 1
+nsh&gt; renew wlan0
 </pre></div>
 </div>
 <p>Once connected, open NuttX’s player and play the file according to its file
 name and the IP address of the HTTP server:</p>
-<div class="highlight-none notranslate"><div class="highlight"><pre><span></span>$ nsh&gt; nxplayer
-$ nxplayer&gt; play http://192.168.1.239:8000/tones.wav
+<div class="highlight-none notranslate"><div class="highlight"><pre><span></span>nsh&gt; nxplayer
+nxplayer&gt; play http://192.168.1.239:8000/tones.wav
 </pre></div>
 </div>
 </section>
@@ -451,10 +461,78 @@ $ nxplayer&gt; play http://192.168.1.239:8000/tones.wav
 <section id="i2schar">
 <h3>i2schar<a class="headerlink" href="#i2schar" title="Permalink to this headline"></a></h3>
 <p>This configuration enables the I2S character device and the i2schar example
-app, which provides an easy-to-use way of testing the I2S peripheral (I2S0
-on this example).</p>
+app, which provides an easy-to-use way of testing the I2S peripherals (I2S0
+and I2S1), enabling both the TX and the RX for those peripherals.</p>
+<p><strong>I2S0 pinout</strong></p>
+<table class="docutils align-default">
+<colgroup>
+<col style="width: 16%" />
+<col style="width: 16%" />
+<col style="width: 67%" />
+</colgroup>
+<thead>
+<tr class="row-odd"><th class="head"><p>ESP32 Pin</p></th>
+<th class="head"><p>Signal Pin</p></th>
+<th class="head"><p>Description</p></th>
+</tr>
+</thead>
+<tbody>
+<tr class="row-even"><td><p>0</p></td>
+<td><p>MCLK</p></td>
+<td><p>Master Clock</p></td>
+</tr>
+<tr class="row-odd"><td><p>4</p></td>
+<td><p>BCLK</p></td>
+<td><p>Bit Clock (SCLK)</p></td>
+</tr>
+<tr class="row-even"><td><p>5</p></td>
+<td><p>WS</p></td>
+<td><p>Word Select (LRCLK)</p></td>
+</tr>
+<tr class="row-odd"><td><p>18</p></td>
+<td><p>DOUT</p></td>
+<td><p>Data Out</p></td>
+</tr>
+<tr class="row-even"><td><p>19</p></td>
+<td><p>DIN</p></td>
+<td><p>Data IN</p></td>
+</tr>
+</tbody>
+</table>
+<p><strong>I2S1 pinout</strong></p>
+<table class="docutils align-default">
+<colgroup>
+<col style="width: 16%" />
+<col style="width: 16%" />
+<col style="width: 67%" />
+</colgroup>
+<thead>
+<tr class="row-odd"><th class="head"><p>ESP32 Pin</p></th>
+<th class="head"><p>Signal Pin</p></th>
+<th class="head"><p>Description</p></th>
+</tr>
+</thead>
+<tbody>
+<tr class="row-even"><td><p>22</p></td>
+<td><p>BCLK</p></td>
+<td><p>Bit Clock (SCLK)</p></td>
+</tr>
+<tr class="row-odd"><td><p>23</p></td>
+<td><p>WS</p></td>
+<td><p>Word Select (LRCLK)</p></td>
+</tr>
+<tr class="row-even"><td><p>25</p></td>
+<td><p>DOUT</p></td>
+<td><p>Data Out</p></td>
+</tr>
+<tr class="row-odd"><td><p>26</p></td>
+<td><p>DIN</p></td>
+<td><p>Data IN</p></td>
+</tr>
+</tbody>
+</table>
 <p>After successfully built and flashed, run on the boards’s terminal:</p>
-<div class="highlight-none notranslate"><div class="highlight"><pre><span></span>$ i2schar
+<div class="highlight-none notranslate"><div class="highlight"><pre><span></span>i2schar -p /dev/i2schar[0-1]
 </pre></div>
 </div>
 <p>The corresponding output should show related debug informations.</p>
@@ -586,6 +664,100 @@ outputted:</p>
 <p>Basic NuttShell configuration (console enabled in UART0, exposed via
 USB connection by means of CP2102 converter, at 115200 bps).</p>
 </section>
+<section id="nxlooper">
+<h3>nxlooper<a class="headerlink" href="#nxlooper" title="Permalink to this headline"></a></h3>
+<p>This configuration uses the I2S1 peripheral as an I2S receiver and the I2S0
+peripheral as an I2S transmitter. The idea is to capture an I2S data frame
+using an I2S peripheral and reproduce the captured data on the other.</p>
+<p><strong>Receiving data on I2S1</strong></p>
+<p>The I2S1 will act as a receiver (master mode), capturing data from DIN, which
+needs to be connected to an external source as follows:</p>
+<table class="docutils align-default">
+<colgroup>
+<col style="width: 16%" />
+<col style="width: 16%" />
+<col style="width: 67%" />
+</colgroup>
+<thead>
+<tr class="row-odd"><th class="head"><p>ESP32 Pin</p></th>
+<th class="head"><p>Signal Pin</p></th>
+<th class="head"><p>Description</p></th>
+</tr>
+</thead>
+<tbody>
+<tr class="row-even"><td><p>22</p></td>
+<td><p>BCLK</p></td>
+<td><p>Bit Clock (SCLK)</p></td>
+</tr>
+<tr class="row-odd"><td><p>23</p></td>
+<td><p>WS</p></td>
+<td><p>Word Select (LRCLK)</p></td>
+</tr>
+<tr class="row-even"><td><p>26</p></td>
+<td><p>DIN</p></td>
+<td><p>Data IN</p></td>
+</tr>
+</tbody>
+</table>
+<p><strong>Transmitting data on I2S0</strong></p>
+<p>The I2S0 will act as a transmitter (master mode), replicating the data
+captured on I2S1. The pinout for the transmitter is as follows:</p>
+<table class="docutils align-default">
+<colgroup>
+<col style="width: 16%" />
+<col style="width: 16%" />
+<col style="width: 67%" />
+</colgroup>
+<thead>
+<tr class="row-odd"><th class="head"><p>ESP32 Pin</p></th>
+<th class="head"><p>Signal Pin</p></th>
+<th class="head"><p>Description</p></th>
+</tr>
+</thead>
+<tbody>
+<tr class="row-even"><td><p>0</p></td>
+<td><p>MCLK</p></td>
+<td><p>Master Clock</p></td>
+</tr>
+<tr class="row-odd"><td><p>4</p></td>
+<td><p>BCLK</p></td>
+<td><p>Bit Clock (SCLK)</p></td>
+</tr>
+<tr class="row-even"><td><p>5</p></td>
+<td><p>WS</p></td>
+<td><p>Word Select (LRCLK)</p></td>
+</tr>
+<tr class="row-odd"><td><p>18</p></td>
+<td><p>DOUT</p></td>
+<td><p>Data Out</p></td>
+</tr>
+</tbody>
+</table>
+<div class="admonition note">
+<p class="admonition-title">Note</p>
+<p>The audio codec CS4344 can be connected to the transmitter pins
+to reproduce the captured data if the receiver’s source is an audio data.</p>
+</div>
+<p><strong>nxlooper</strong></p>
+<p>The <cite>nxlooper</cite> application captures data from the audio device with receiving
+capabilities (the I2S1 on this example) and forwards the audio data frame to
+the audio device with transmitting capabilities (the I2S0 on this example).</p>
+<p>After successfully built and flashed, run on the boards’s terminal:</p>
+<div class="highlight-none notranslate"><div class="highlight"><pre><span></span>nsh&gt; nxlooper
+nxlooper&gt; loopback
+</pre></div>
+</div>
+<div class="admonition note">
+<p class="admonition-title">Note</p>
+<p><cite>loopback</cite> command default arguments for the channel configuration,
+the data width and the sample rate are, respectively, 2 channels,
+16 bits/sample and 48KHz. These arguments can be supplied to select
+different audio formats, for instance:</p>
+<div class="highlight-none notranslate"><div class="highlight"><pre><span></span>nxlooper&gt; loopback 2 8 44100
+</pre></div>
+</div>
+</div>
+</section>
 <section id="ostest">
 <h3>ostest<a class="headerlink" href="#ostest" title="Permalink to this headline"></a></h3>
 <p>This is the NuttX test at apps/testing/ostest that is run against all new
diff --git a/content/docs/latest/searchindex.js b/content/docs/latest/searchindex.js
index c293f3b3..6c95801c 100644
--- a/content/docs/latest/searchindex.js
+++ b/content/docs/latest/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/feed.xml b/content/feed.xml
index 4f1558f5..ae10460d 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>Tue, 15 Nov 2022 00:14:21 +0000</pubDate>
-    <lastBuildDate>Tue, 15 Nov 2022 00:14:21 +0000</lastBuildDate>
+    <pubDate>Wed, 16 Nov 2022 00:14:00 +0000</pubDate>
+    <lastBuildDate>Wed, 16 Nov 2022 00:14:00 +0000</lastBuildDate>
     <generator>Jekyll v3.9.2</generator>
     
       <item>