<?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>NCS: Softdevice+Mesh+Ext. Advertising -&amp;gt; TX Power Control?</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/112210/ncs-softdevice-mesh-ext-advertising---tx-power-control</link><description>Hello, 
 I have trouble again with TX Power control. This time using Softdevice Controller and NCS2.6.0. 
 Previous issue which was solved (this was using Zephyr Controller): 
 
 Is there a common solution to control TX Power runtime, when running Mesh</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Wed, 07 Aug 2024 10:02:27 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/112210/ncs-softdevice-mesh-ext-advertising---tx-power-control" /><item><title>RE: NCS: Softdevice+Mesh+Ext. Advertising -&gt; TX Power Control?</title><link>https://devzone.nordicsemi.com/thread/497301?ContentTypeID=1</link><pubDate>Wed, 07 Aug 2024 10:02:27 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:b8232340-08f7-43a3-bae9-5247ef0611ab</guid><dc:creator>Hieu</dc:creator><description>&lt;p&gt;Hi mesh777,&lt;/p&gt;
&lt;p&gt;A colleague found a way to configure TX Power during run-time. It isn&amp;#39;t exactly dynamic configuration, but maybe it can help.&lt;/p&gt;
&lt;p&gt;Before we go into the details, please know that this method is not tested thoroughly, and does involve using internal Mesh stack structures that were not intended for&amp;nbsp;application.&lt;/p&gt;
&lt;p&gt;First,&amp;nbsp;define the stack-internal&amp;nbsp;&lt;span&gt;struct &lt;span style="font-family:&amp;#39;courier new&amp;#39;, courier;"&gt;bt_mesh_ext_adv&lt;/span&gt;&lt;/span&gt;&amp;nbsp;in your application:&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="c_cpp"&gt;enum {
  /** Controller is currently advertising */
  ADV_FLAG_ACTIVE,
  /** Advertising sending completed */
  ADV_FLAG_SENT,
  /** Currently performing proxy advertising */
  ADV_FLAG_PROXY,
  /** The proxy has been start, but maybe pending. */
  ADV_FLAG_PROXY_START,
  /** The send-call has been scheduled. */
  ADV_FLAG_SCHEDULED,
  /** The send-call has been pending. */
  ADV_FLAG_SCHEDULE_PENDING,
  /** Custom adv params have been set, we need to update the parameters on
   *  the next send.
   */
  ADV_FLAG_UPDATE_PARAMS,

  /* Number of adv flags. */
  ADV_FLAGS_NUM
};

struct bt_mesh_ext_adv {
  uint8_t tag;
  ATOMIC_DEFINE(flags, ADV_FLAGS_NUM);
  struct bt_le_ext_adv *instance;
  struct net_buf *buf;
  uint64_t timestamp;
  struct k_work_delayable work;
  struct bt_le_adv_param adv_param;
};&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;Then, after the mesh stack is initialized (at the end of &lt;span style="font-family:&amp;#39;courier new&amp;#39;, courier;"&gt;bt_ready&lt;/span&gt;), you can set the TX Power here:&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="c_cpp"&gt;/* Hack into the mesh stack, due to lack of proper API */
STRUCT_SECTION_FOREACH(bt_mesh_ext_adv, adv) {
  LOG_INF(&amp;quot;adv: %8p&amp;quot;, (void *) adv);

  if (adv-&amp;gt;instance) {
    adv-&amp;gt;instance-&amp;gt;tx_power = txp_lvl;
  }
}&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;Where&amp;nbsp;&lt;span style="font-family:&amp;#39;courier new&amp;#39;, courier;"&gt;txp_level&lt;/span&gt; is any valid int8_t (signed) value for a given chip. For example: 0/4/-4/-8, etc.&lt;/p&gt;
&lt;p&gt;This will basically find all declared advertiser instances in the stack and directly set the power. Subsequently, when new Network PDUs or Beacons or GATT advertising start, they will start using the power configured here. If advertisings are disabled and enabled again, this will have to be redone at that time.&lt;/p&gt;
&lt;p&gt;This should work with at least Mesh packets with ADV bearer. Once again, this isn&amp;#39;t fully tested, so please perform additional testing, if you want to use this.&lt;/p&gt;
&lt;p&gt;Hieu&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: NCS: Softdevice+Mesh+Ext. Advertising -&gt; TX Power Control?</title><link>https://devzone.nordicsemi.com/thread/491359?ContentTypeID=1</link><pubDate>Fri, 28 Jun 2024 13:31:00 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:00f72f45-65a2-4552-9238-ec7979bb41a0</guid><dc:creator>Hieu</dc:creator><description>&lt;p&gt;Yes, we have recorded them. I can see how reading TX Power and seeing 0 would be concerning. I will talk with the documentation team to find a way to present the fact more clearly.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: NCS: Softdevice+Mesh+Ext. Advertising -&gt; TX Power Control?</title><link>https://devzone.nordicsemi.com/thread/491349?ContentTypeID=1</link><pubDate>Fri, 28 Jun 2024 13:17:50 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:b10555e0-17e9-4cda-ae60-199d46fa8f63</guid><dc:creator>mesh777</dc:creator><description>&lt;p&gt;Please forward both findings, also the one that with static configuration its confusing to see that register is switched back to 0 all the time without any good reason.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: NCS: Softdevice+Mesh+Ext. Advertising -&gt; TX Power Control?</title><link>https://devzone.nordicsemi.com/thread/491340?ContentTypeID=1</link><pubDate>Fri, 28 Jun 2024 12:57:22 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:542b9b5b-15aa-4342-89f6-bf2ef5abdab3</guid><dc:creator>Hieu</dc:creator><description>&lt;p&gt;Do you mean dynamic/run-time control of TX Power for Bluetooth Mesh? If so,&amp;nbsp;we have registered it &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;As for other regular BLE activities, I believe the dynamic TX Power control works fine.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: NCS: Softdevice+Mesh+Ext. Advertising -&gt; TX Power Control?</title><link>https://devzone.nordicsemi.com/thread/491338?ContentTypeID=1</link><pubDate>Fri, 28 Jun 2024 12:52:07 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:878bad1a-a302-40e8-b13a-8e14a0787b77</guid><dc:creator>mesh777</dc:creator><description>&lt;p&gt;Ok, ill try to search for similar topic regarding my last question at first.&lt;/p&gt;
&lt;p&gt;Final thoughts -&amp;gt; such basic feature as TX Power control still causes issues, maybe it should be brought forward to Softdevice/NCS developers as this is not first time I am working&amp;nbsp;on resolving TX Power control:)&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: NCS: Softdevice+Mesh+Ext. Advertising -&gt; TX Power Control?</title><link>https://devzone.nordicsemi.com/thread/491333?ContentTypeID=1</link><pubDate>Fri, 28 Jun 2024 12:41:38 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:d1e09ee5-2a92-4081-b895-a7ae017edad9</guid><dc:creator>Hieu</dc:creator><description>&lt;p&gt;I&amp;#39;m happy to help. I also learn new things and refresh a lot of the rusty bits of knowledge while answering your questions too.&amp;nbsp;&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;
[quote user="mesh777"]We need to perform spurious emission testing, maybe there are any Nordic guidelines upon that especially related to test firmware?[/quote]
&lt;p&gt;This is a rather different topic. May I ask you to open a new case for this? &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;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: NCS: Softdevice+Mesh+Ext. Advertising -&gt; TX Power Control?</title><link>https://devzone.nordicsemi.com/thread/491331?ContentTypeID=1</link><pubDate>Fri, 28 Jun 2024 12:36:52 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:c3961f99-5595-469c-94fc-43ba0f7e8976</guid><dc:creator>mesh777</dc:creator><description>&lt;p&gt;Ok I see. Thanks again for rapid and informative responses.&lt;/p&gt;
&lt;p&gt;We need to perform spurious emission testing, maybe there are any Nordic guidelines upon that especially related to test firmware?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: NCS: Softdevice+Mesh+Ext. Advertising -&gt; TX Power Control?</title><link>https://devzone.nordicsemi.com/thread/491330?ContentTypeID=1</link><pubDate>Fri, 28 Jun 2024 12:36:36 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:9607e97f-6845-4a07-9320-9c11a23d5ae1</guid><dc:creator>Hieu</dc:creator><description>&lt;p&gt;I also notice previously I&amp;nbsp;use misleading words in this sentence:&lt;/p&gt;
[quote user="vthieu"]For Mesh, I tweak the logic a little like&amp;nbsp;below and I can observe TXPOWER being 8&amp;nbsp;all the time.[/quote]
&lt;p&gt;I mean &amp;quot;all the time&amp;quot; as in &amp;quot;in a lot of instances,&amp;quot; &lt;em&gt;not&lt;/em&gt;&amp;nbsp;&amp;quot;always&amp;quot;. My apology if that confused you. I will edit it so that it doesn&amp;#39;t confuse any future readers.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: NCS: Softdevice+Mesh+Ext. Advertising -&gt; TX Power Control?</title><link>https://devzone.nordicsemi.com/thread/491326?ContentTypeID=1</link><pubDate>Fri, 28 Jun 2024 12:32:05 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:ef1d0c7c-bfed-4895-ae5e-f992ab563b08</guid><dc:creator>Hieu</dc:creator><description>[quote user="mesh777"]&lt;p&gt;But why to reconfigure it always back to 0dBm then?&lt;/p&gt;
&lt;p&gt;Or it is related to not retained register value due transceiver power modes or something?&lt;/p&gt;[/quote]
&lt;p&gt;TXPOWER-set-to-0 is just a known state to make it simpler to support multiple TX Power for different activities.&amp;nbsp;Examples include but not limited to other BLE activities, or user application&amp;#39;s MPSL timeslot API use, or &lt;a href="https://docs.nordicsemi.com/bundle/ncs-2.6.1/page/nrfxlib/mpsl/doc/tx_power_control.html"&gt;Power Envelope Control&lt;/a&gt;.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: NCS: Softdevice+Mesh+Ext. Advertising -&gt; TX Power Control?</title><link>https://devzone.nordicsemi.com/thread/491314?ContentTypeID=1</link><pubDate>Fri, 28 Jun 2024 11:55:41 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:ac1f9d17-5cc1-4890-8208-408bd3b88cba</guid><dc:creator>mesh777</dc:creator><description>&lt;p&gt;But why to reconfigure it always back to 0dBm then?&lt;/p&gt;
&lt;p&gt;Or it is related to not retained register value due transceiver power modes or something?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: NCS: Softdevice+Mesh+Ext. Advertising -&gt; TX Power Control?</title><link>https://devzone.nordicsemi.com/thread/491311?ContentTypeID=1</link><pubDate>Fri, 28 Jun 2024 11:45:59 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:dff6daf8-e454-4d93-ba2c-f18c7cba06f3</guid><dc:creator>Hieu</dc:creator><description>&lt;p&gt;No, it isn&amp;#39;t necessarily contradicting, if you consider that the radio only&amp;nbsp;&lt;em&gt;transmits&lt;/em&gt;&amp;nbsp;for a&amp;nbsp;little time overall. In&amp;nbsp;Bluetooth Mesh, the radio needs to be on receive as much as possible to not miss messages.&lt;/p&gt;
&lt;p&gt;Remember that there is a limit of 100 Lower-Transport PDU per 10-second&amp;nbsp;&lt;em&gt;moving&lt;/em&gt;&amp;nbsp;window, too. So even if your node has a lot it wants to send, it can&amp;#39;t transmit all the time.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: NCS: Softdevice+Mesh+Ext. Advertising -&gt; TX Power Control?</title><link>https://devzone.nordicsemi.com/thread/491279?ContentTypeID=1</link><pubDate>Fri, 28 Jun 2024 10:08:44 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:bba13f57-9f13-42e6-b972-497c588adfc1</guid><dc:creator>mesh777</dc:creator><description>[quote userid="9456" url="~/f/nordic-q-a/112210/ncs-softdevice-mesh-ext-advertising---tx-power-control/491259"]CONFIG_BT_CTLR_TX_PWR_ANTENNA and the&amp;nbsp;&lt;a href="https://docs.nordicsemi.com/bundle/ncs-2.6.1/page/kconfig/index.html#CONFIG_BT_CTLR_TX_PWR"&gt;CONFIG_BT_CTLR_TX_PWR&lt;/a&gt;&amp;nbsp;configuration line sets the default TX Power for all activities.[/quote][quote userid="9456" url="~/f/nordic-q-a/112210/ncs-softdevice-mesh-ext-advertising---tx-power-control/491259"]Yes, I too find that it is 0 for the absolutely vast majority of the time[/quote]
&lt;p&gt;These two things sounds contradicting in my opinion, if all activities set to happen with 8dbm, then why most of the time register is set to 0dBm?&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: NCS: Softdevice+Mesh+Ext. Advertising -&gt; TX Power Control?</title><link>https://devzone.nordicsemi.com/thread/491259?ContentTypeID=1</link><pubDate>Fri, 28 Jun 2024 09:01:19 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:9e224a39-4a0c-4628-9c8f-8187d89912fd</guid><dc:creator>Hieu</dc:creator><description>&lt;div&gt;CONFIG_BT_CTLR_TX_PWR_ANTENNA and the&amp;nbsp;&lt;a href="https://docs.nordicsemi.com/bundle/ncs-2.6.1/page/kconfig/index.html#CONFIG_BT_CTLR_TX_PWR"&gt;CONFIG_BT_CTLR_TX_PWR&lt;/a&gt;&amp;nbsp;configuration line sets the default TX Power for all activities.&lt;/div&gt;
&lt;div&gt;&lt;/div&gt;
&lt;div&gt;Therefore, without a runtime reconfiguration, the SoftDevice Controller should use the configured default.&lt;/div&gt;
&lt;div&gt;Also note that the CONFIG_BT_CTLR_TX_PWR choices depends on CONFIG_BT_CTLR_TX_PWR_ANTENNA being not set. If the _ANTENNA configuration is set, it takes priority.&lt;/div&gt;
&lt;div&gt;&lt;/div&gt;
&lt;div&gt;[quote user="mesh777"]In your sample code you do not print value of 0 by the way, otherwise it is&amp;nbsp;0 most of the time.[/quote]
&lt;p&gt;Yes, I too find that it is 0 for the absolutely vast majority of the time and&amp;nbsp;can&amp;#39;t figure out a good way to see the few &amp;quot;8\n&amp;quot; among the hundreds of &amp;quot;0\n,&amp;quot; so I set up that logic instead.&lt;/p&gt;
&lt;p&gt;I guess if we really want to, we could also set a logic to get the statistic on&amp;nbsp;how often and for how long TXPOWER stays in a particular value.&lt;/p&gt;
&lt;/div&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: NCS: Softdevice+Mesh+Ext. Advertising -&gt; TX Power Control?</title><link>https://devzone.nordicsemi.com/thread/490938?ContentTypeID=1</link><pubDate>Wed, 26 Jun 2024 15:49:22 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:bff891fa-4f7b-47da-82f3-b3b19f8bcc93</guid><dc:creator>mesh777</dc:creator><description>&lt;p&gt;Many thanks for clarification.&lt;/p&gt;
&lt;p&gt;I noticed that most of the time TX Power register is 0dBm, with the static config set which mentioned above.&lt;/p&gt;
&lt;p&gt;Does it mean that TX power setting is applied not to all handles? To which it is applied then?&lt;/p&gt;
&lt;p&gt;In your sample code you do not print value of 0 by the way, otherwise it is&amp;nbsp;0 most of the time.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: NCS: Softdevice+Mesh+Ext. Advertising -&gt; TX Power Control?</title><link>https://devzone.nordicsemi.com/thread/490572?ContentTypeID=1</link><pubDate>Tue, 25 Jun 2024 10:16:17 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:a831d175-32eb-431d-8765-ef068459166b</guid><dc:creator>Hieu</dc:creator><description>[quote user="mesh777"]1. Can you please explain why&amp;nbsp;Softdevice is altering TX Power on its own, after its configured by the user once?[/quote]
&lt;p&gt;It makes more sense if you think of it as &amp;quot;the user &lt;em&gt;requests&lt;/em&gt; the SoftDevice Controller to use this TX Power for that connection/advertising handle; and the SoftDevice then &lt;em&gt;serves&lt;/em&gt; that request appropriately by changing TX Power when it&amp;#39;s time to serve that handle.&amp;quot;&lt;/p&gt;
&lt;p&gt;At no point does the SoftDevice change this requested power. When the radio transmits, the TX Power will be raised to the appropriate value.&lt;/p&gt;
&lt;p&gt;If you &lt;span style="text-decoration:line-through;"&gt;configure&lt;/span&gt; request different handles to different TX Power, the Controller will also&amp;nbsp;get that done.&lt;/p&gt;
[quote user="mesh777"]2. Dynamic setting would allow user to reconfigure TX Power, this is not a must but nice to have feature. Also dynamic setting allow to have chip dependent configuration, e.g. 52832 does not have 8dbm, therefore its configured for 4dbm in our case.[/quote]
&lt;p&gt;Thank you. This is a very reasonable feature. We have registered it and will look into it.&amp;nbsp;Unfortunately, it is quite tricky to realize this with the way the mesh layers interact, so it might be difficult.&lt;/p&gt;
[quote user="mesh777"]&lt;p&gt;3. Static configuration does not work neither. It sets expected value to the register once, and later 0dBm is read back from the register all the time. I tried following conf:&lt;/p&gt;
&lt;div&gt;
&lt;div&gt;&lt;span&gt;CONFIG_BT_CTLR_TX_PWR_ANTENNA&lt;/span&gt;&lt;span&gt;=8&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;CONFIG_BT_CTLR_TX_PWR_PLUS_8&lt;/span&gt;&lt;span&gt;=y&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;So we are stuck with 0dBm at the moment :(&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;[/quote]
&lt;p&gt;I just tried with the Mesh Light sample, and it does work. I do see that just printing out TXPOWER rapidly doesn&amp;#39;t work nearly as well as I once remember. Perhaps it worked better with BLE applications where the radio time is longer.&lt;/p&gt;
&lt;p&gt;For Mesh, I tweak the logic a little like&amp;nbsp;below and I can observe TXPOWER does get set to 8. You could also use debugging to stop the execution at certain point to confirm the register value.&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="c_cpp"&gt;int main(void)
{
	int err;

	printk(&amp;quot;Initializing...\n&amp;quot;);

	err = bt_enable(bt_ready);
	if (err) {
		printk(&amp;quot;Bluetooth init failed (err %d)\n&amp;quot;, err);
	}

	while (1)
	{
		int txpower = NRF_RADIO-&amp;gt;TXPOWER;
		if (txpower &amp;gt; 0) printk(&amp;quot;TX power: %d\n&amp;quot;, txpower);
		static int cnt;
		if (cnt &amp;gt; 50000)
		{
			static int cnt2;
			printk(&amp;quot;cnt2: %d\n&amp;quot;, cnt2++);
			cnt = 0;
		}
		k_sleep(K_MSEC(1));
	}

	return 0;
}&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;If you want absolute proof that it works, I recommend using a spectrum analyzer and look into the radio output directly.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: NCS: Softdevice+Mesh+Ext. Advertising -&gt; TX Power Control?</title><link>https://devzone.nordicsemi.com/thread/490483?ContentTypeID=1</link><pubDate>Tue, 25 Jun 2024 07:15:19 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:e084a4ce-570e-4905-9048-671ae5e7adca</guid><dc:creator>mesh777</dc:creator><description>&lt;p&gt;Thanks for rapid response.&lt;/p&gt;
&lt;p&gt;1. Can you please explain why&amp;nbsp;Softdevice is altering TX Power on its own, after its configured by the user once?&lt;/p&gt;
&lt;p&gt;2. Dynamic setting would allow user to reconfigure TX Power, this is not a must but nice to have feature. Also dynamic setting allow to have chip dependent configuration, e.g. 52832 does not have 8dbm, therefore its configured for 4dbm in our case.&lt;/p&gt;
&lt;p&gt;3. Static configuration does not work neither. It sets expected value to the register once, and later 0dBm is read back from the register all the time. I tried following conf:&lt;/p&gt;
&lt;div&gt;
&lt;div&gt;&lt;span&gt;CONFIG_BT_CTLR_TX_PWR_ANTENNA&lt;/span&gt;&lt;span&gt;=8&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;CONFIG_BT_CTLR_TX_PWR_PLUS_8&lt;/span&gt;&lt;span&gt;=y&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;So we are stuck with 0dBm at the moment :(&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: NCS: Softdevice+Mesh+Ext. Advertising -&gt; TX Power Control?</title><link>https://devzone.nordicsemi.com/thread/490318?ContentTypeID=1</link><pubDate>Mon, 24 Jun 2024 13:29:53 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:e1df6ffe-d9b7-49e3-aad5-d38231ea2efc</guid><dc:creator>Hieu</dc:creator><description>&lt;p&gt;For general legacy and extended advertising, you can use&amp;nbsp;&lt;a href="https://github.com/nrfconnect/sdk-zephyr/blob/v3.5.99-ncs1-1/include/zephyr/bluetooth/hci.h#L91-L98"&gt;https://github.com/nrfconnect/sdk-zephyr/blob/v3.5.99-ncs1-1/include/zephyr/bluetooth/hci.h#L91-L98&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;But for Mesh, there is no way to get the advertising handle, unfortunately. Sorry that&amp;nbsp;we ended up at this dead end after my suggestions.&lt;/p&gt;
&lt;p&gt;May I ask why you wish to have dynamic TX power control with mesh?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: NCS: Softdevice+Mesh+Ext. Advertising -&gt; TX Power Control?</title><link>https://devzone.nordicsemi.com/thread/489732?ContentTypeID=1</link><pubDate>Thu, 20 Jun 2024 12:19:02 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:47f9d87b-22f9-49da-83c7-75f82f352159</guid><dc:creator>mesh777</dc:creator><description>&lt;p&gt;Is there a way to determine which handles are available? With Zephyr controller it worked 0-3 for 4 sets, but with Softdevice looks that it does not work that way. For last 3 sets I get such error: &amp;quot;Set Tx power err: -5 reason 0x00&amp;quot;&lt;/p&gt;
&lt;p&gt;EDIT: Also I tried to print value of&amp;nbsp;NRF_RADIO-&amp;gt;TXPOWER each 200ms, it always returns 0, despite that tx power was reconfigured for 8dBm using functions from the sample project.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: NCS: Softdevice+Mesh+Ext. Advertising -&gt; TX Power Control?</title><link>https://devzone.nordicsemi.com/thread/489728?ContentTypeID=1</link><pubDate>Thu, 20 Jun 2024 12:15:01 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:b401d35b-b093-417f-8f01-9eb2f2239523</guid><dc:creator>Hieu</dc:creator><description>[quote user="mesh777"]What is the reason of such behaviour? Does it mean that TX Power needs to be reconfigured continuously or it is handled by Softdevice automatically?[/quote]
&lt;p&gt;The SoftDevice will handle the TX Power on its own. The Host only needs to request once.&lt;/p&gt;
[quote user="mesh777"]The reference sample does not take into account multiple AVD sets, when EXT ADV is enabled. Maybe Conn Handle somehow can be determined to configure each set?[/quote]
&lt;p&gt;I&amp;nbsp;believe that the sample take into account ADV sets as well. Notice that you can set TX Power with an advertising set handle:&amp;nbsp;&lt;a href="https://github.com/nrfconnect/sdk-zephyr/blob/v3.5.99-ncs1-1/samples/bluetooth/hci_pwr_ctrl/src/main.c#L239-L240"&gt;https://github.com/nrfconnect/sdk-zephyr/blob/v3.5.99-ncs1-1/samples/bluetooth/hci_pwr_ctrl/src/main.c#L239-L240&lt;/a&gt;.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: NCS: Softdevice+Mesh+Ext. Advertising -&gt; TX Power Control?</title><link>https://devzone.nordicsemi.com/thread/489720?ContentTypeID=1</link><pubDate>Thu, 20 Jun 2024 11:56:41 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:5b2e6ea1-6a9d-4f5b-b1b8-fd81240faf39</guid><dc:creator>mesh777</dc:creator><description>[quote userid="9456" url="~/f/nordic-q-a/112210/ncs-softdevice-mesh-ext-advertising---tx-power-control/489470"]Please note that the SoftDevice&amp;nbsp;Controller only raise the TX Power&amp;nbsp;momentarily for the radio action, and then will set it back to 0[/quote]
&lt;p&gt;What is the reason of such behaviour? Does it mean that TX Power needs to be reconfigured continuously or it is handled by Softdevice automatically?&lt;/p&gt;
&lt;p&gt;The reference sample does not take into account multiple AVD sets, when EXT ADV is enabled. Maybe Conn Handle somehow can be determined to configure each set?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: NCS: Softdevice+Mesh+Ext. Advertising -&gt; TX Power Control?</title><link>https://devzone.nordicsemi.com/thread/489470?ContentTypeID=1</link><pubDate>Wed, 19 Jun 2024 09:53:20 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:fc20ef05-ca62-4be7-a6ed-31d6c39dc6cc</guid><dc:creator>Hieu</dc:creator><description>&lt;p&gt;Hi mesh777,&lt;/p&gt;
&lt;p&gt;You should be able to control the TX Power following the method&amp;nbsp;demonstrated in the&amp;nbsp;&lt;a href="https://docs.nordicsemi.com/bundle/ncs-2.6.1/page/zephyr/samples/bluetooth/hci_pwr_ctrl/README.html"&gt;Bluetooth: HCI Power Control&lt;/a&gt;&amp;nbsp;sample.&lt;/p&gt;
&lt;p&gt;Please note that the SoftDevice&amp;nbsp;Controller only raise the TX Power&amp;nbsp;momentarily for the radio action, and then will set it back to 0. A crude way I used to confirm things are working is to repeatedly print out the content of the &lt;a href="https://docs.nordicsemi.com/bundle/ps_nrf52840/page/radio.html#ariaid-title70"&gt;TXPOWER register&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Hieu&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>