I have a few doubts regarding power macros and getting the result I want.
From combing through posts I have found the following:
Since BT840XE has a FEM, you need to properly represent them in the firmware using the following sections:
.dts
/ {
nrf_radio_fem: name_of_fem_node {
compatible = "skyworks,sky66112-11", "generic-fem-two-ctrl-pins";
ctx-gpios = <&gpio0 17 GPIO_ACTIVE_HIGH>;
crx-gpios = <&gpio0 19 GPIO_ACTIVE_HIGH>;
cps-gpios = <&gpio0 6 GPIO_ACTIVE_HIGH>;
chl-gpios = <&gpio0 8 GPIO_ACTIVE_HIGH>;
tx-gain-db = <x>;
rx-gain-db = <x>;
};
};
.
.
.
&radio {
fem = <&nrf_radio_fem>;
};
Kconfig at same level of prj.conf
bool "FEM enabled"
default y
select MPSL_FEM_GENERIC_TWO_CTRL_PINS_SUPPORT
prj.conf
and somewhere in my runtime, I need to use the following lines to enable the pins for transmit high power, since the driver only automatically enables the rx and tx
I want to use the +21bdm the bt840xe offers. I set tx-gain to 18, rx-gain to 11, following the specification, set the high tx mode using CPS and CHL, set
Since tx-gain and rx-gain don't actually control the gain,instead are used to inform the software regarding the gains from fem so it can adjust itself,and I want to divide between the nrf52840 and fem, since I read this is the way to do it to avoid overheating of the nrf52840,I did this way.
I wanted to confirm if what I did is correct