<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="https://devzone.nordicsemi.com/cfs-file/__key/system/syndication/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Application of FEM chip in ESB</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/90969/application-of-fem-chip-in-esb</link><description>My project uses ESB for communication. In our hardware design, nrf5340 + FEM is used. Nrf5340 uses two GPIO link FEM chips to switch between PA mode and LNA mode. May I ask where the switching signals of the two gpios should be added to the ESB driver</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Thu, 27 Feb 2025 01:47:04 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/90969/application-of-fem-chip-in-esb" /><item><title>RE: Application of FEM chip in ESB</title><link>https://devzone.nordicsemi.com/thread/524944?ContentTypeID=1</link><pubDate>Thu, 27 Feb 2025 01:47:04 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:b6a57674-0a8b-4f43-a765-eef6b937674a</guid><dc:creator>ChrisRu</dc:creator><description>&lt;p&gt;Sure,&lt;/p&gt;
&lt;p&gt;Its here now:&lt;/p&gt;
&lt;p&gt;&lt;a title="Forward Link" href="https://devzone.nordicsemi.com/f/nordic-q-a/119380/fem-nrf21540-soc-5340-esb-receiver-mode-not-working"&gt;119380/fem-nrf21540-soc-5340-esb-receiver-mode-not-working&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Application of FEM chip in ESB</title><link>https://devzone.nordicsemi.com/thread/524841?ContentTypeID=1</link><pubDate>Wed, 26 Feb 2025 14:19:12 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:9d60afba-d4d6-43e7-b0d9-7cb273177b6a</guid><dc:creator>Susheel Nuguru</dc:creator><description>&lt;p&gt;Please create a separate ticket for this as&amp;nbsp;this is different with different custom board and different nrf connect sdk version.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Application of FEM chip in ESB</title><link>https://devzone.nordicsemi.com/thread/524727?ContentTypeID=1</link><pubDate>Wed, 26 Feb 2025 07:39:12 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:719eb5c5-6f5d-4a2b-8660-3e616a6b49c6</guid><dc:creator>ChrisRu</dc:creator><description>&lt;p&gt;Good Day,&lt;/p&gt;
&lt;p&gt;We build a custom board with nrf5340 &amp;amp; nrf21540, all looks OK for DTS &amp;amp; config and I see that the &lt;br /&gt;esb_fem_for_rx_set() is available and called.&lt;br /&gt;I have the GPIO-TX/RX/PDN + MODE &amp;amp; ANTSEL correct wired.&lt;/p&gt;
&lt;p&gt;The ESB is working on the 5340DK board, so I&amp;#39;m sure there is something incoming. But the custom-board not receive anything.&lt;br /&gt;The config for nmp1300 is OK, the 21540 and 5340 have 3v3 volt. I/O is 3v3.&lt;/p&gt;
&lt;p&gt;Net-core UART0 disabled in favor for SPI0.&lt;/p&gt;
&lt;p&gt;&lt;span style="font-family:monospace;"&gt;&lt;span style="background-color:#ffffff;color:#000000;"&gt;mpsl_fem_enable(); is called before the esb_start_rx()&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-family:monospace;"&gt;&lt;span style="background-color:#ffffff;color:#000000;"&gt;What do I miss?&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;*** Booting nRF Connect SDK v2.7.99-cs2-d73b286ff6d9 ***
*** Using Zephyr OS v3.6.99-3d01dcc251bf ***
[00:00:00.002,105] &amp;lt;inf&amp;gt; esb_prx: Enhanced ShockBurst Receiver NetCore
[00:00:00.002,441] &amp;lt;dbg&amp;gt; esb_prx: clocks_start: HF clock started
[00:00:00.002,746] &amp;lt;dbg&amp;gt; esb_prx: esb_fem_init: Fem require receiver setup
[00:00:00.002,746] &amp;lt;dbg&amp;gt; esb_prx: esb_fem_init: Fem require sender setup
[00:00:00.002,838] &amp;lt;inf&amp;gt; esb_prx: ESB initialized
[00:00:00.002,929] &amp;lt;inf&amp;gt; esb_prx: IPC bound complete
[00:00:00.002,929] &amp;lt;inf&amp;gt; esb_prx: Setting up for packet receiption&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;CONFIG_DT_HAS_NORDIC_NRF21540_FEM_ENABLED=y
CONFIG_DT_HAS_NORDIC_NRF21540_FEM_SPI_ENABLED=y
..
CONFIG_MPSL_FEM_ONLY=y
CONFIG_MPSL_FEM_ANY_SUPPORT=y
CONFIG_MPSL_FEM_NRF21540_GPIO_SUPPORT=y
CONFIG_MPSL_FEM_NRF21540_GPIO_SPI_SUPPORT=y
CONFIG_MPSL_FEM_NCS_SUPPORTED_FEM_USED=y
CONFIG_MPSL_FEM_API_AVAILABLE=y
CONFIG_MPSL_FEM=y
# CONFIG_MPSL_FEM_NRF21540_GPIO is not set
CONFIG_MPSL_FEM_NRF21540_GPIO_SPI=y
CONFIG_MPSL_FEM_NRF21540_TX_GAIN_DB=10
CONFIG_MPSL_FEM_NRF21540_TX_GAIN_DB_POUTA=20
CONFIG_MPSL_FEM_NRF21540_TX_GAIN_DB_POUTB=10
CONFIG_MPSL_FEM_NRF21540_RX_GAIN_DB=13
CONFIG_MPSL_FEM_NRF21540_RUNTIME_PA_GAIN_CONTROL=y
CONFIG_MPSL_FEM_POWER_MODEL=y
CONFIG_MPSL_FEM_POWER_MODEL_NRF21540_USE_BUILTIN=y
CONFIG_MPSL_FEM_BUILTIN_POWER_MODEL_UPDATE_PERIOD=2000
CONFIG_MPSL_FEM_DEVICE_CONFIG_254=y
CONFIG_MPSL_FEM_INIT_PRIORITY=50
# CONFIG_MPSL_FEM_LOG_LEVEL_OFF is not set
# CONFIG_MPSL_FEM_LOG_LEVEL_ERR is not set
# CONFIG_MPSL_FEM_LOG_LEVEL_WRN is not set
# CONFIG_MPSL_FEM_LOG_LEVEL_INF is not set
CONFIG_MPSL_FEM_LOG_LEVEL_DBG=y
# CONFIG_MPSL_FEM_LOG_LEVEL_DEFAULT is not set
CONFIG_MPSL_FEM_LOG_LEVEL=4
..
CONFIG_FEM_AL_LIB=y
CONFIG_FEM=y
CONFIG_NRF21540_FEM=y
..
CONFIG_ESB=y
CONFIG_ESB_MAX_PAYLOAD_LENGTH=32
CONFIG_ESB_TX_FIFO_SIZE=8
CONFIG_ESB_RX_FIFO_SIZE=8
CONFIG_ESB_PIPE_COUNT=8
CONFIG_ESB_RADIO_IRQ_PRIORITY=1
CONFIG_ESB_EVENT_IRQ_PRIORITY=2
..
CONFIG_ESB_SYS_TIMER2=y
CONFIG_ESB_SYS_TIMER_INSTANCE=2

&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Can you help?&lt;/p&gt;
&lt;p&gt;I measure the pins at nrf21540 after esb_start_rx()&lt;br /&gt;RX = 3v&lt;br /&gt;TX = 0v&lt;br /&gt;PDN = 3v&lt;br /&gt;CSN = 3v&amp;nbsp; &amp;lt;--- that should be 0V as described in the product specs 4446_194 v1.0 / 2020-08-20&lt;/p&gt;
&lt;p&gt;Update: Product Spec&amp;nbsp;4446_194 v1.2 / 2022-01-28, download from the Web, show that the CSN is a non&amp;#39;t care (striped out)&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;so I add a loop in the netcore&amp;#39;s main()&lt;/p&gt;
&lt;p&gt;&lt;span style="font-family:monospace;"&gt;&lt;span style="background-color:#ffffff;color:#000000;"&gt; &lt;/span&gt;&lt;span style="background-color:#ffffff;color:#87ffaf;"&gt;bool&lt;/span&gt;&lt;span style="background-color:#ffffff;color:#000000;"&gt; rxon=&lt;/span&gt;&lt;span style="background-color:#ffffff;color:#ff54ff;"&gt;false&lt;/span&gt;&lt;span style="background-color:#ffffff;color:#000000;"&gt;; &lt;/span&gt;&lt;br /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="background-color:#ffffff;color:#ffff54;"&gt;for&lt;/span&gt;&lt;span style="background-color:#ffffff;color:#000000;"&gt; (;;) { &lt;/span&gt;&lt;br /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="background-color:#ffffff;color:#ffff54;"&gt;if&lt;/span&gt;&lt;span style="background-color:#ffffff;color:#000000;"&gt; (rxon) { &lt;/span&gt;&lt;br /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;esb_stop_rx(); &lt;br /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;} &lt;br /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="background-color:#ffffff;color:#ffff54;"&gt;else&lt;/span&gt;&lt;span style="background-color:#ffffff;color:#000000;"&gt; { &lt;/span&gt;&lt;br /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;esb_start_rx(); &lt;br /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;} &lt;br /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;rxon = !rxon; &lt;br /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;LOG_DBG(&lt;span style="background-color:#ffffff;color:#ff54ff;"&gt;&amp;quot;RX is &lt;/span&gt;&lt;span style="background-color:#ffffff;color:#ffd7d7;"&gt;%s&lt;/span&gt;&lt;span style="background-color:#ffffff;color:#ff54ff;"&gt;&amp;quot;&lt;/span&gt;&lt;span style="background-color:#ffffff;color:#000000;"&gt;, rxon?&lt;/span&gt;&lt;span style="background-color:#ffffff;color:#ff54ff;"&gt;&amp;quot;on&amp;quot;&lt;/span&gt;&lt;span style="background-color:#ffffff;color:#000000;"&gt;:&lt;/span&gt;&lt;span style="background-color:#ffffff;color:#ff54ff;"&gt;&amp;quot;off&amp;quot;&lt;/span&gt;&lt;span style="background-color:#ffffff;color:#000000;"&gt; ); &lt;/span&gt;&lt;br /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;k_sleep(K_MSEC(&lt;span style="background-color:#ffffff;color:#ff54ff;"&gt;5000&lt;/span&gt;&lt;span style="background-color:#ffffff;color:#000000;"&gt;)); &lt;/span&gt;&lt;br /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt; &lt;br /&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;RTT-Viewer:&lt;br /&gt;[00:00:55.004,821] &amp;lt;dbg&amp;gt; esb_prx: main: RX is off&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ----&amp;gt; and the CSN pin is 0V&lt;br /&gt;[00:01:00.004,974] &amp;lt;dbg&amp;gt; esb_prx: main: RX is on&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; -----&amp;gt; and the CSN pin is 3V&lt;/p&gt;
&lt;p&gt;This way never receive anything.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Application of FEM chip in ESB</title><link>https://devzone.nordicsemi.com/thread/449825?ContentTypeID=1</link><pubDate>Wed, 11 Oct 2023 12:46:05 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:12f83a90-b7fd-493c-a305-01ffab2a2d6f</guid><dc:creator>ovrebekk</dc:creator><description>&lt;p&gt;Hi Paul&lt;/p&gt;
&lt;p&gt;If you mean FEM with ESB then this is also supported on the nRF5340, yes.&lt;/p&gt;
&lt;p&gt;Best regards&lt;br /&gt;Torbjørn&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Application of FEM chip in ESB</title><link>https://devzone.nordicsemi.com/thread/449678?ContentTypeID=1</link><pubDate>Wed, 11 Oct 2023 01:27:31 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:5c59be34-6fed-4b66-a9cf-fa866a1dcc7d</guid><dc:creator>pauleffect</dc:creator><description>&lt;p&gt;Hello. Hate to bother, but just to confirm the ESB part. That also applies to nrf5340?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Application of FEM chip in ESB</title><link>https://devzone.nordicsemi.com/thread/416012?ContentTypeID=1</link><pubDate>Fri, 17 Mar 2023 13:06:25 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:bcf8b329-2a87-4315-94b3-ea0c9017c9dc</guid><dc:creator>ovrebekk</dc:creator><description>&lt;p&gt;Hi again&lt;/p&gt;
&lt;p&gt;Possibly you already noticed this, but in later versions of the nRF Connect SDK we finally have native support for FEM devices in the ESB library &lt;span class="emoticon" data-url="https://devzone.nordicsemi.com/cfs-file/__key/system/emoji/1f642.svg" title="Slight smile"&gt;&amp;#x1f642;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;Best regards&lt;br /&gt;Torbjørn&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Application of FEM chip in ESB</title><link>https://devzone.nordicsemi.com/thread/382706?ContentTypeID=1</link><pubDate>Mon, 22 Aug 2022 13:32:33 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:2603c09f-e237-4c45-918d-000fbf729f9b</guid><dc:creator>ovrebekk</dc:creator><description>&lt;p&gt;Hi&amp;nbsp;&lt;/p&gt;
&lt;p&gt;You welcome &lt;span class="emoticon" data-url="https://devzone.nordicsemi.com/cfs-file/__key/system/emoji/1f642.svg" title="Slight smile"&gt;&amp;#x1f642;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;In the end ESB doesn&amp;#39;t properly support FEM devices out of the box, and you would need to do some modifications to the ESB implementation itself to support this.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Best regards&lt;br /&gt;Torbjørn&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Application of FEM chip in ESB</title><link>https://devzone.nordicsemi.com/thread/382551?ContentTypeID=1</link><pubDate>Mon, 22 Aug 2022 03:09:22 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:2f697949-da12-4c82-a9c7-1e416fc9dd4f</guid><dc:creator>mingjkl</dc:creator><description>&lt;p&gt;&lt;strong&gt;Thank you very much for your professional advice.&lt;/strong&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Application of FEM chip in ESB</title><link>https://devzone.nordicsemi.com/thread/381589?ContentTypeID=1</link><pubDate>Mon, 15 Aug 2022 13:09:55 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:754d5e43-42a0-40b4-84d2-dd02c2f80909</guid><dc:creator>ovrebekk</dc:creator><description>&lt;p&gt;Hi&lt;/p&gt;
&lt;p&gt;In the ideal world you could just connect the TXREADY and RXREADY events of the radio to GPIO&amp;#39;s using the DPPI and GPIOTE peripherals, but the problem then is that the pins would only be set very shortly before the packets are sent or received.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;I assume the FEM chip requires this pins to be set a bit before the communication takes place, and possibly they should also be cleared a bit after?&lt;/p&gt;
&lt;p&gt;Best regards&lt;br /&gt;Torbjørn&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>