Analog.com EngineerZone AnalogDialogue Log In
Wiki
Resources and Tools Education Content Wiki Help Wiki Tools
search wiki
Table of Contents
EVAL-ADL5902-ARDZ
Shield Specifications
Functional Block Diagram
Setting Up the Hardware
Power Options Jumper Setting
Option 1: 5V of
ADICUP3029 or Linduino
Uno
Option 2: 6V DC supply
Option 3: 6V Wall wart
Typical Hardware Setup for
measurement
Software GUI for ADICUP3029
Software Installation
Software Operation
Connection Window
Measurement Window
Calibration Window
Calibration Methodology
Development on ADICUP3029
C Development Guide
Installations
Setting Up CrossCore
Embedded Studio
Development on CrossCore
Embedded Studio
Python Development Guide
Installations
Setting Up PyCharm
Development on PyCharm
Software GUI for Linduino
Software Installation
Software Operation
Development on Linduino
Hardware Reference Information
This version (19 Sep 2018 17:16) was approved by adrianmtolentino.
The Previously approved version (08 Sep 2018 20:21) is available.
This is an old revision of the document!
EVAL-ADL5902-ARDZ
The EVAL-ADL5902-ARDZ shield illustrates the functionality of the ADL5902, a 50 MHz to 9 GHz
65 dB TruPwr™ RMS responding RF power detector. The voltage outputs of the ADL5902 are
routed to the ANALOG IN connector of the Arduino base board. This allows the RF power detector’s
output voltage to be easily digitized and processed by the Arduino base board’s integrated six-
channel ADC. The output of the ADL5902’s on-board temperature sensor is also routed to one of the
ANALOG IN pins.
The power supply for the board comes from the Arduino base board through the POWER connector
(5V). So while there is no need to connect an external power supply, the board can be powered
by an external supply (6 Volt wall wart on P3 or 6V connected to the P1 screw terminals.
The EVAL-ADL5902-ARDZ is compatible with EVAL-ADICUP3029 and Linduino. For both platforms,
PC software GUI applications (ADICUP3029, Linduino) are available using which, the user can
make RF power measurements and also calibrate the device to decrease measurement error.
Device drivers for ADICUP3029 and for Linduino Uno are also available, which the user may use to
develop their own code for RF measurement, device calibration, and more.
Shield Specifications
Input Frequency Range: 50MHz to 9GHz
RF Input Range: 65dB (+3 dBm to -62 dBm)
Maximum RF Input Power (Abs Max Rating): 21dBm
Supply:
1. 5V Internal from Arduino base board (short pin1 and pin2 of P4)
2. 6V External (for operation with an external supply or operation without Arduino
base board)
1. 6V External supply (short pin1 and pin2 of P2; short pin2 and pin3 of P4)
2. 6V Wall wart supply (short pin2 and pin3 of P2; short pin2 and pin3 of
P4)
Quiescent Current: < 100mA
Input signal characteristic: CW or modulated carriers with large crest factors ( e.g. QAM, XCDMA, OFDM, LTE)
Recommended Calibration: 3-point
Output Voltage Range:
1. VOUT: ~0.175V to ~2.45V
2. VTEMP: 1.1V to 1.8V
Functional Block Diagram
Setting Up the Hardware
Power Options Jumper Setting
Power up the EVAL-ADL5902-ARDZ using any of the options by shorting the correct pins using the provided shorting jumper caps.
Option 1: 5V of ADICUP3029 or Linduino Uno
1. Connect pin1 and pin2 of pin header P4.
2. Mount EVAL-ADL5902-ARDZ to ADICUP3029 or Linduino Uno.
This works regardless of the connections on pin header P2
Option 2: 6V DC supply
1. Connect pin2 and pin3 of pin header P4
2. Connect pin1 and pin2 of pin header P2
3. Connect 6V to the EVAL-ADL5902-ARDZ via the Screw terminal block
EVAL-ADL5902-ARDZ is already functional using this option, even
without ADICUP3029 or Linduino Uno
Option 3: 6V Wall wart
1. Connect pin2 and pin3 of pin header P4
2. Connect pin2 and pin3 of pin header P2
3. Connect 6V wall wart to the EVAL-ADL5902-ARDZ via the DC Jack
EVAL-ADL5902-ARDZ is already functional using this option, even
without ADICUP3029 or Linduino Uno
Typical Hardware Setup for measurement
Software GUI for ADICUP3029
Software Installation
1. Download the Software GUI file here.
2. Extract the Software GUI file to your computer.
3. Connect the EVAL-ADICUP3029 board using micro USB cable
4. Set the S2 switch to USB.
5. In the extracted files look for power_detector-firmware.hex then copy the hex file to Computer»DAPLINKdrive
After loading the hex file to the DAPLINK drive the window explorer must
automatically close or else you need to load the hex file to the drive again.
6. After the windows explorer automatically closes, reset the Eval-ADICUP3029 board by pressing the S1 (reset) button on the
board.
7. Go to extracted files and look for power_detector.exe file and double click to run the software. The Connection Window will open.
Software Operation
Connection Window
1. Mount EVAL-ADL5902-ARDZ to the ADICUP3029 and connect ADICUP3029 to computer as in Typical Hardware Setup for
Measurement
2. Click the refresh button on Port Name to Identify the port where an ADICUP3029 is installed
If there is more than one ADICUP3029 installed, select the port where
ADICUP3029 and EVAL-ADL5902-ARDZ connected
3. Set Baudrate to 115200
4. Select Auto-detect on Shield type.
5. Click Connect. The Measurement Window should Open.
Console Log must indicate “ADL5902 shield detected with ADiCUP”
Measurement Window
The EVAL-ADL5902-ARDZ shield converts the measured ADC code to RF input power in dBm using stored calibration coefficients. A 3-point
calibration methodology is used. The software program includes default calibration coefficients that correspond to the default response of the
ADL5902 across RF power level and frequency. datasheet specifications of ADL5902. Because of part-to-part device variation, observed
accuracy using the default calibration coefficients will be sub-optimal. By availing of the software program's 3-point calibration function,
measurement accuracy can be increased.
If calibration is skipped at some frequencies, the default calibration coefficients will be
used (user calibration coefficients and default calibration coefficients are INITIALLY
the same).
Related topic: Calibration of EVAL-ADL5902-ARDZ
To skip Calibration and use Default Calibration Coefficients:
Check the box to use default calibration coefficients
Uncheck to use user calibration coefficients
To make single measurement:
1. Enter the frequency of the input RF signal
2. Uncheck Continuous Measurement
3. Click Measure Button
Not entering the correct frequency may result to less accurate measurements.
To continuously make measurements:
1. Enter the frequency of the input RF signal
2. Check Continuous Measurement
3. Click Measure Button
4. Click Stop to stop measuring at the last measurement
Not entering the correct frequency may result to less accurate measurements.
To switch windows:
Click “Connection” or “Calibration” to switch to respective window.
Calibration Window
To calibrate at a specific frequency, take the following steps
1. Select the frequency using the frequency pull-down menu
2. Input an RF signal of 0dBm at the selected frequency. Click the Measure Button beside 0dBm.
3. Input an RF signal of -45dBm at the selected frequency. Click the Measure button beside -45dBm.
4. Input an RF signal of -60dBm at the selected frequency. Click the Measure Button beside -60dBm.
5. Click the Calibrate button. Console Log will indicate “User calibration coefficient for (frequency used) is updated.”
Follow steps exactly. User calibration coefficients will not update if the Calibrate
Button is not clicked.
If you plan to operate at a frequency not on the list, make sure the calibrate at least on the adjacent upper and lower calibration
frequencies (the software program will interpolate these data to ensure accuracy at the operating frequency. If the operating
frequency is higher or lower than the available calibration frequencies, calibrate only on the highest or lowest calibration
frequencies.
Calibration Methodology
Calibration can be implemented using 2, 3 or 4-point calibration techniques which are used to approximate the transfer function of the ADL5902.
Because the response of the ADL5902 changes with frequency, it is necessary to calibrate across frequency. If you are operating at a frequency
that is in between two calibration frequencies, the software program will perform a weighted interpolation of the two sets of calibration coefficients.
The typical Vout vs. Pin characteristic of ADL5902 at 2.14GHz input is shown below (Figure 50 from the ADL5902 datasheet).
Figure 1. ADL5902 Characteristic Response at 2.14GHz
Two-point calibration is the simplest calibration technique. This models the transfer function of the ADL5902 and ADC as a single straight
line
PIN = (CODE/SLOPE)+INTERCEPT
Where
PIN is the RF input power being measured
CODE is the ADC code
SLOPE is the slope of the ADL/ADL5902 combination (unit is LSBs/dB)
INTERCEPT is the (extrapolated) input RF power level which would yield and ADC code of 0 (this is a theoretical value with a unit of dBm)
SLOPE and INTERCEPT are calculated and stored during the calibration process by applying two known RF power levels, PIN1 and PIN2 (these
RF power levels should be within the linear input range of the ADL5902) and measuring the corresponding ADC codes, CODE1 and CODE2.
The equations for calculating SLOPE and INTERCEPT are as follows:
SLOPE = (CODE1–CODE2)/(PIN1−PIN2)
INTERCEPT = PIN1‐(CODE1/SLOPE)
If there is some non-linearity in the transfer function of the RF detector, the number of calibration points can be increased to improve
measurement accuracy To implement three-point calibration, three known power levels are applied PIN1, PIN2 and PIN3 (PIN1 should be
greater than PIN2 which should be greater than PIN3) and the corresponding ADC codes are noted (CODE1, CODE2, CODE3)
This results in two SLOPE values and two INTERCEPT values which are calculated using the equations
SLOPE1 = (CODE1–CODE2)/(PIN1−PIN2)
SLOPE2 = (CODE2–CODE3)/(PIN2−PIN3)
INTERCEPT1 = PIN1‐(CODE1/SLOPE1)
INTERCEPT2 = PIN2‐(CODE2/SLOPE2)
After calibration when measuring RF input power, the power is calculated using the appropriate equation
PIN = (CODE/SLOPE1)+INTERCEPT1 (if CODE > CODE2)
or
PIN = (CODE/SLOPE2)+INTERCEPT2 (if CODE < CODE2)
To decide which equation and calibration coefficients to use, the CODE from the ADC should be compared to CODE2 (CODE2 is the
demarcation point between the two calibration regions). This will indicate which region of the ADL5902's transfer function the RF input power is
located. For example, if the ADC CODE is greater than CODE2, this will indicate that the input power is greater than PIN2. So SLOPE1 and
INTERCEPT1 should be used to calculate the input power. Because of the need to identify the region in which the measured RF input power is
located, the CODE2 value should also be stored after calibration along with the SLOPE1, SLOPE2, INTERCEPT1 AND INTERCEPT2.
This technique can be extended to four or more calibration points. This may improve measurement accuracy at the cost of more complex
calibration.
Development on ADICUP3029
Development drivers are available for C and Python. Other development environments may be used but this development guided is focused on
software development on CrossCore Embedded Studio (for C) and on Pycharm(for Python).
C Development Guide
Installations
1. Download and install CrossCore Embedded Studio (CCES) 2.8.1
2. Download and install mBed windows serial driver
Assumes a fresh installation of all required software
Setting Up CrossCore Embedded Studio
1. Install the following packs by following the How to install or upgrade Packs for CCES guide:
ARM.CMSIS.5.4.0
AnalogDevices.ADuCM302x_DFP.3.1.2
2. Switch back to C/C + + window and close CCES 2.8.1
3. Download Dev Codes for Release.rar and unzip it.
4. Unzip adl5902.rar file to C:\Users\YourUsername\cces\2.8.1\adl5902. The contents of your unzipped folder should match the ones
below.
5. Launch CCES 2.8.1 and select workspace C:\Users\YourUsername\cces\2.8.1. If the adl5902.rar has been extracted elsewhere,
choose that location as workspace. Switch to C/C++ window if it's not the current window.
6. To open the unzipped folder in the workspace, click File → Open Projects from File System. A new window will pop up and ask you
to select the project or folder that you want to open. Select the proper directory then click Finish.
On the left side of the window, the structure of the loaded sample code should match the structure in the image shown below.
Development on CrossCore Embedded Studio
1. Setup Crosscore as in Setting Up CrossCore Embedded Studio
2. Connect your ADICUP3029 and power up the RF power detector shield then click Build .
3. After it finishes building, click Debug and click Application with GDB and OpenOCD (Emulator). Copy the following Debug configurations
on the new window that will appear then click the Debug button.
4. On the Debug window, click the Resume to run and display the results on the Console window.
Python Development Guide
Installations
Assumes a fresh installation of all required software
1. Download python 3.7.0 version. Choose the right version depending on operating system. For windows, choose Windows x86-
64 executable installer. (Do not run installer yet)
2. Run installer as Administrator. During installation, check “Add Python 3.7 to PATH” before clicking “Install Now”
3. Install pyserial. For windows, enter pip3.7 install pyserial on command prompt.
4. Download and install PyCharm community version
5. Download and install mBed windows serial driver
Setting Up PyCharm
1. Download power detector.exe
2. Install power detector.exe inside the “Scripts” directory where the python3.7 is located. For windows, the location path is similar to
C:\Users\MyUsername\AppData\Local\Programs\Python\Python37\Scripts
3. Launch PyCharm and set up PyCharm interpreter by clicking file»settings»Project»Project Interpreter choose python 3.7 then click
“Ok”.
Development on PyCharm
1. Connect the Eval-ADICUP3029 board using micro USB cable.
2. In the Eval-ADICUP3029, set the S2 switch to USB.
3. Download power_detector-firmware.hex, then copy it to the DAPLINK directory. Wait for the window to exit automatically. Else,
repeat the Development on PyCharm guide.
4. Press S1 (reset) button on the Eval-ADICUP3029 and mount the EVAL-ADL5902-ARDZ to the Eval-ADICUP3029
5. On PyCharm, go to File»Open and browse for the \PycharmProjects\example code directory.
6. Click Project Tab located at left side of IDE and go to adl5902 folder and double click adl5902-getShieldReadings.py
7. Change the default Port number (“COM10”) in the example code. On your computer go to Control Panel»Device Manager look for
Ports (COM & LPT) find the port number of “mbed Serial Port”.
8. Right click on any point in the working space and click Run ltc5596-getShieldReadings
Software GUI for Linduino
Software Installation
Software Operation
Development on Linduino
Hardware Reference Information
EVAL-ADL5902-ARDZ Design Files
Schematic Diagram of EVAL-ADL5902-ARDZ
Layout Design of EVAL-ADL5902-ARDZ
Fab Files of EVAL-ADL5902-ARDZ
Assembly Files of EVAL-ADL5902-ARDZ
/srv/wiki.analog.com/data/pages/resources/eval/user-guides/eval-adl5902-ardz.txt · Last modified: 19 Sep 2018 17:26 by adrianmtolentino
15,000
Problem Solvers
4,700+
Patents
125,000
Customers
50+
Years
Analog Devices. Dedicated to solving the toughest engineering challenges.
Ahead of What's Possible
ADI enables our customers to interpret the world around
us by intelligently bridging the physical and digital with
unmatched technologies that sense, measure and
connect. We collaborate with our customers to
accelerate the pace of innovation and create
breakthrough solutions that are ahead of what’s possible.
See the Innovations
SOCIAL
About ADI Analog Dialogue
Careers Contact us
Investor Relations News Room
Quality & Reliability Sales & Distribution
QUICK LINKS
English
体中文
日本語
Руccкий
LANGUAGES NEWSLETTER
Interested in the latest news and articles about ADI
products, design tools, training and events?
Choose from one of our 12 newsletters that match
your product area of interest, delivered monthly or
quarterly to your inbox.
Sign Up
ICP09046653
© 1995 - 2015 Analog Devices, Inc. All Rights Reserved Sitemap Privacy & Security Terms of use