Application Note: JN-AN-1252
High Power Support
Supporting High Power Mode on a JN5189/QN9090/K32W device.

1 Application Note Overview
The following devices•

JN5189(T)/JN5188(T)•QN9090(T)/QN9030(T)•K32W061/K32W041

feature an integrated radio, which can be used with an external Front End. This applicationnote is concerned with setting up the device for hardware designs that uses a FEM (FrontEndmodule).

1.1 Contents

Contents
1

Application Note Overview ............................................................................................................... 1

1.1

Contents ........................................................................................................................................ 1

2

FEM Design........................................................................................................................................ 2

3

What is Required............................................................................................................................... 2

3.1

Setting up the DIO ......................................................................................................................... 24Zigbee 3.0 Applications ..................................................................................................................... 3

4.1

Setting up the Radio Parameters .................................................................................................. 3

4.2

Editing the Zigbee 3.0 Application Notes ...................................................................................... 45

BLE Applications ................................................................................................................................ 4

5.1

Editing the BLE Example Applications ........................................................................................... 4

Revision History ........................................................................................................................................ 5

JN-AN-1252 (1V2) 06-Apr-2020© NXP Semiconductors 20201

High Power Support

2 FEM Design
The parameters used in this example are suitable for a test design based on a Skyworks
SKY66112-11. The exact parameters needed for compliance with different Front Ends ordifferent layouts will require additional testing to confirm that the parameters used arecompliant. The examples design used is shown below:

3 What is Required
To support a Front-End module the following is required
1) Set up RX and TX DIO control
2) Set the compliance limit parameter on the radio

3.1 Setting up the DIO
Some of the PIO lines can be used to generate RFRX and RFTX signals. These signals areconnected directly from the MODEM with the device and indicate if the device is in RX or TX
mode and, by implication, if the MODEM is idle. Any of the PIOS that have RFRX and RFTX
options can be used from the table below
I/O Names
PIO0_0
PIO0_1
PIO0_2
PIO0_3
PIO0_4
PIO0_5
PIO0_6
PIO0_7
PIO0_8
PIO0_9
PIO0_10
PIO0_11
PIO0_12
PIO0_13
PIO0_14
PIO0_15
PIO0_16
PIO0_17
PIO0_18
PIO0_19
PIO0_20
PIO0_212FUNC0GPIO 0GPIO 1
GPIO 2GPIO 3GPIO 4GPIO 5GPIO 6GPIO 7GPIO 8GPIO 9GPIO 10GPIO 11
GPIO 12GPIO 13GPIO 14GPIO 15GPIO 16
GPIO 17
GPIO 18
GPIO 19GPIO 20
GPIO 21

FUNC1USART0_SCK

SPI0_SCKSPI0_MISO
SPI0_MOSISPI0_SSELN
SPI0_SCKSPI0_MISO
SPI0_MOSISPI0_SSELN
CT32B0_CAP0
CT32B1_CAP0
IR_BLASTER
SPI1_SSELN2
SPI1_SSELN1
SPI1_SCKSPI1_SSELN0
SPI1_MOSISPI1_MISO
ADO
IR_BLASTER
IR_BLASTERFUNC2USART1_TXD
USART1_RXD
USART0_RXD
USART0_TXD
USART0_CTS
USART0_RTS
USART0_RTS
USART0_CTS
USART0_TXD
USART0_RXD
USART1_TXD
USART1_RXD
SWCLK
SWDIO
USART0_SCK
ANA_COMP_OUT
ISO7816_RSTISO7816_CLKISO7816_IO
USART1_RXD
USART1_TXD
USART1_SCK

FUNC3CT32B1_MAT0
CT32B1_MAT1
CT32B0_MAT0
CT32B1_CAP1

CT32B0_CAP1

SWO
CT32B0_MAT1
CLK_IN-FUNC4
PWM0-PU
PWM1-PD
PWM2-PD
PWM3-PU
PWM4-PU
SPI1_MISO
PWM6-PD
PWM7-PD
PWM8-PU
PWM9-PU
RFTX
RFRX
PWM0-PU
PWM2-PU
PWM1-PU
PWM3-PU
PWM5-PU
PWM6-PD
PWM7-PD
PWM4-PD
PWM8-PD
PWM9-PU© NXP Semiconductors 2020

FUNC5
SPI1_SCKSPI1_MISO
SPI1_MOSISPI1_SSELN0
SPI1_SSELN1
SPI1_SSELN2I2C1_SCL
I2C1_SDAANA_COMP_OUT
USART1_SCK
I2C0_SCL
I2C0_SDA
I2C1_SCL
I2C1_SDA
SWO
I2C0_SCL
I2C0_SDA
CLK_OUT
USART0_TXD
USART0_RXD
RFTX
RFRX

FUNC6

ISO7816_RSTISO7816_CLKISO7816_IO

USART1_TXD
USART1_RXD
RFTX
ADO
SPI0_SCKSPI0_MISO
SPI0_MOSISPI0_SSELN
MCLK
PDM1_DATA
PDM1_CLK

SWO

FUNC7
PDM0_DATA
PDM0_CLK
MCLK

RFTX
RFRX
ADE
ADO
PDM1_DATA
PDM1_CLK
PDM0_DATA
PDM0_CLK
ANA_COMP_OUT

RFTX
RFRX
SPIFI_CSNSPIFI_IO3
SPIFI_CLKSPIFI_IO0
SPIFI_IO2
SPIFI_IO1

JN-AN-1252 (1V2) 06-Apr-2020

Special PIO functions are setup using IOCON_PinMuxSet. To use this function, include thefollowing header#include "fsl_iocon.h"In our example, the required functions are on DIO4 and DIO5 using IOCON_FUNCTION 7.
This is done with the following two lines of code:
IOCON_PinMuxSet(IOCON, 0, 4, IOCON_MODE_INACT | IOCON_FUNC7 | IOCON_DIGITAL_EN);
IOCON_PinMuxSet(IOCON, 0, 5, IOCON_MODE_INACT | IOCON_FUNC7 | IOCON_DIGITAL_EN);4 Zigbee 3.0 Applications
4.1 Setting up the Radio Parameters
There are two functions that are defined to set up the radio. Both should be used inconjunction to configure the radio. These functions are defined in AppApi.h.
The first function isPUBLIC void vAppApiSetRadioTxModes(teRadioTxMode eTxMode, teRadioTxModeeTxModeCh26);
This is concerned with changing the radios internal settings to set the radio is in different
proprietary modes affect currents and setting within the radio. The following are defined
E_RADIO_TX_MODE_STD = 0
E_RADIO_TX_MODE_PROP_1 = 1
E_RADIO_TX_MODE_PROP_2 = 2
The standard way to use this would be to set the radio XT mode to standard. If there areissues on radio channel 26 with band edge due to the output power from the front end thenusing proprietary mode for channel 26 may be required. In our example, the following isused:vAppApiSetRadioTxModes(E_RADIO_TX_MODE_STD, E_RADIO_TX_MODE_PROP_2);

The second function is
PUBLIC void vAppApiSetComplianceLimits(int8 i8TxMaxPower,int8 i8TxMaxPowerCh26,
uint8 u8CcaThreshold);This function deals with standard parameters for the radio such as CCA threshold. Theseparameters should be evaluated using CMET.
In our example, the radio is set to output 4db and the CCA threshold is adjusted to 83 to deal
the RX gain in the LNA and still be compliant with the IEEE802.15.4 specification. The
following is used:
vAppApiSetComplianceLimits(4, 4, 83);

JN-AN-1252 (1V2) 06-Apr-2020© NXP Semiconductors 20203

High Power Support

4.2 Editing the Zigbee 3.0 Application Notes
The code need to be added before BEFORE ZPS_eAplAfInit() is called. In ‘JN-AN-1244ZigBee-3-0-Light-Bulbs-for-JN518x’, the most suitable location is in APP_vInitialiseNode() inapp_zlo_light_node.c. Add the following code before ZPS_eAplAfInit() is called:// Start of HP Support Initialisation
IOCON_PinMuxSet(IOCON, 0, 4, IOCON_MODE_INACT | IOCON_FUNC7 | IOCON_DIGITAL_EN);
IOCON_PinMuxSet(IOCON, 0, 5, IOCON_MODE_INACT | IOCON_FUNC7 | IOCON_DIGITAL_EN);vAppApiSetComplianceLimits(4, 4, 83);
vAppApiSetRadioTxModes(E_RADIO_TX_MODE_STD, E_RADIO_TX_MODE_PROP_2);// End of HP Support Initialisation…
// Existing CodeZPS_u32MacSetTxBuffers (4);/* Initialise ZBPro stack */ZPS_eAplAfInit();

5 BLE Applications
5.1 Editing the BLE Example Applications
The Code need to be added within the BleApp_Init function. For example, in ‘beacon_bm’,
the code should be added at the end of void BleApp_Init(void) in beacon.c :// Start of HP Support Initialisation
IOCON_PinMuxSet(IOCON, 0, 4, IOCON_MODE_INACT | IOCON_FUNC7 | IOCON_DIGITAL_EN);
IOCON_PinMuxSet(IOCON, 0, 5, IOCON_MODE_INACT | IOCON_FUNC7 | IOCON_DIGITAL_EN);

4© NXP Semiconductors 2020

JN-AN-1252 (1V2) 06-Apr-2020

Revision History
VersionNotes

1V0First release

1V1

Added BLE support

1V2

Added K32W

How To Reach Us
Home Page:

Information in this document is provided solely to enable system and software implementers to use NXP
products. There are no express or implied copyright licenses granted hereunder to design or fabricate any
integrated circuits based on the information in this document. NXP reserves the right to make changes
without further notice to any products herein.

nxp.com
Web Support:
nxp.com/support

NXP makes no warranty, representation, or guarantee regarding the suitability of its products for any
particular purpose, nor does NXP assume any liability arising out of the application or use of any productor circuit, and specifically disclaims any and all liability, including without limitation consequential orincidental damages. “Typical” parameters that may be provided in NXP data sheets and/or specifications
can and do vary in different applications, and actual performance may vary over time. All operating
parameters, including “typicals,” must be validated for each customer application by customer's technicalexperts. NXP does not convey any license under its patent rights nor the rights of others. NXP sells products
pursuant to standard terms and conditions of sale, which can be found at the following address:nxp.com/SalesTermsandConditions.
While NXP has implemented advanced security features, all products may be subject to unidentified
vulnerabilities. Customers are responsible for the design and operation of their applications and products
to reduce the effect of these vulnerabilities on customer’s applications and products, and NXP accepts noliability for any vulnerability that is discovered. Customers should implement appropriate design andoperating safeguards to minimize the risks associated with their applications and products.
NXP, the NXP logo, NXP SECURE CONNECTIONS FOR A SMARTER WORLD, COOLFLUX, EMBRACE,GREENCHIP, HITAG, ICODE, JCOP, LIFE VIBES, MIFARE, MIFARE CLASSIC, MIFARE DESFire,MIFARE PLUS, MIFARE FLEX, MANTIS, MIFARE ULTRALIGHT, MIFARE4MOBILE, MIGLO, NTAG,ROADLINK, SMARTLX, SMARTMX, STARPLUG, TOPFET, TRENCHMOS, UCODE, Freescale, theFreescale logo, AltiVec, CodeWarrior, ColdFire, ColdFire+, the Energy Efficient Solutions logo, Kinetis,Layerscape, MagniV, mobileGT, PEG, PowerQUICC, Processor Expert, QorIQ, QorIQ Qonverge,
SafeAssure, the SafeAssure logo, StarCore, Symphony, VortiQa, Vybrid, Airfast, BeeKit, BeeStack,
CoreNet, Flexis, MXC, Platform in a Package, QUICC Engine, Tower, TurboLink, EdgeScale, EdgeLock,eIQ, and Immersive3D are trademarks of NXP B.V.
All other product or service names are the property of their respective owners. AMBA, Arm, Arm7,
Arm7TDMI, Arm9, Arm11, Artisan, big.LITTLE, Cordio, CoreLink, CoreSight, Cortex, DesignStart,
DynamIQ, Jazelle, Keil, Mali, Mbed, Mbed Enabled, NEON, POP, RealView, SecurCore, Socrates, Thumb,TrustZone, ULINK, ULINK2, ULINK-ME, ULINK-PLUS, ULINKpro, μVision, Versatile are trademarks orregistered trademarks of Arm Limited (or its subsidiaries) in the US and/or elsewhere. The relatedtechnology may be protected by any or all of patents, copyrights, designs and trade secrets. All rightsreserved. Oracle and Java are registered trademarks of Oracle and/or its affiliates. The Power Architecture
and Power.org word marks and the Power and Power.org logos and related marks are trademarks andservice marks licensed by Power.org.
© NXP B.V. 2020.
All rights reserved.
For more information, please visit: http://www.nxp.com
For sales office addresses, please send an email to: salesaddresses@nxp.com
Date of release: 04/2020
Document identifier: JN-AN-1252

JN-AN-1252 (1V2) 06-Apr-2020© NXP Semiconductors 20205