Skip to content

Commit dbed1fb

Browse files
1 parent 02e1eeb commit dbed1fb

File tree

292 files changed

+9229
-2204
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

292 files changed

+9229
-2204
lines changed
1.37 MB
Loading
3 MB
Loading
3.85 MB
Loading

pull/1/_sources/learning/workshop_a_precision_converter_fpga_integration_journey/index.rst.txt

Lines changed: 408 additions & 208 deletions
Large diffs are not rendered by default.

pull/1/_sources/solutions/reference-designs/ad-rpi-t1lpse-sl/basic-sample-application/index.rst.txt

Lines changed: 29 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -2,26 +2,14 @@ Basic Sample Application
22
========================
33

44
This simple sample application demonstrates how to get started with the :adi:`AD-RPI-T1LPSE-SL` HAT
5-
by creating a basic Blinky demo. It uses two :adi:`EVAL-CN0575-RPIZ` HATs,
5+
by creating a basic Blinky demo. It uses two :adi:`EVAL-CN0575-RPIZ`
6+
(10BASE-T1L Field Device Development Platform with Class 12 and 13 SPoE) HATs,
67
an :adi:`AD-RPI-T1LPSE-SL` HAT as a communication interface, and three Raspberry Pi computers.
78
These are set up in a parent-child configuration, where the :adi:`AD-RPI-T1LPSE-SL` HAT acts as the parent device,
89
and the two :adi:`EVAL-CN0575-RPIZ` HATs act as child devices.
910
The application toggles the on-board LED of a :adi:`EVAL-CN0575-RPIZ` HAT when the button is pressed on the
1011
other :adi:`EVAL-CN0575-RPIZ` HAT and vice versa.
1112

12-
Prerequisites
13-
-------------
14-
15-
- Python 3.8 or newer (3.8–3.11 tested with pyadi-iio).
16-
Ensure that a compatible version is installed on your system before continuing.
17-
Older versions (<3.8) may not work reliably with pyadi-iio.
18-
19-
- Git command-line tools installed.
20-
21-
- Three Raspberry Pi computers with :adi:`Kuiper 2` image installed.
22-
Follow the instructions in the `Kuiper 2 User Guide <https://github.com/analogdevicesinc/adi-kuiper-gen/releases>`_
23-
to prepare the Raspberry Pi.
24-
2513
Hardware Setup
2614
--------------
2715

@@ -39,7 +27,7 @@ Hardware Setup
3927

4028
- 3x Raspberry Pi 5 computers running Kuiper 2
4129

42-
- 1x USB Type-C Power Supply (15V, 3A)
30+
- 1x USB Type-C Power Supply (at least 9V, 3A; 9V/12V/15V/20V supported)
4331

4432
- 2x T1L Cables
4533

@@ -57,13 +45,30 @@ Hardware Setup
5745
Software Setup
5846
--------------
5947

60-
When running commands with *sudo*, you might be prompted to enter the password for the **analog** user.
61-
If you have not changed it, the default password is **analog**.
48+
Prerequisites
49+
~~~~~~~~~~~~~
50+
51+
- Three Raspberry Pi computers with :adi:`kuiper-linux` image installed.
52+
Follow the instructions in the `Kuiper 2 User Guide
53+
<https://analogdevicesinc.github.io/documentation/linux/kuiper/index.html>`_
54+
to prepare the Raspberry Pi.
55+
56+
- ADI Kuiper Linux includes Python and pyadi-iio, but the versions may lag behind
57+
that required for this demo. This demo was tested with Python 3.8-3.11, and the
58+
main branch of pyadi-iio.
6259

63-
Repository Cloning
64-
~~~~~~~~~~~~~~~~~~
60+
- Git command-line tools installed.
61+
62+
The easiest way to configure Kuiper and install dependencies is with a locally attached
63+
monitor, keyboard, and network connection. One Raspberry Pi can be used to configure all
64+
three cards, swapping SD cards accordingly afterwards. Log into Kuiper Linux and open a
65+
terminal. When running commands with *sudo*, you might be prompted to enter the password
66+
for the **analog** user. If you have not changed it, the default password is **analog**.
6567

66-
1. Clone the repository on both Raspberry Pi computers:
68+
Pyadi-iio Cloning and Installation
69+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
70+
71+
1. Clone the repository on the parent Raspberry Pi (with the :adi:`AD-RPI-T1LPSE-SL` HAT):
6772

6873
.. shell::
6974
:user: analog
@@ -73,13 +78,14 @@ Repository Cloning
7378
$ git clone https://github.com/analogdevicesinc/pyadi-iio.git
7479
$ cd pyadi-iio
7580

76-
2. Install Python dependencies and open a virtual environment:
81+
2. From the pyadi-iio directory, install Python dependencies and open a virtual environment:
7782

7883
.. shell::
7984
:user: analog
8085
:group: analog
8186
:show-user:
8287

88+
$ cd ~/pyadi-iio
8389
$ python3 -m venv ./venv
8490
$ source venv/bin/activate
8591
$ pip install -e .
@@ -100,7 +106,6 @@ In order to apply the overlays, open a terminal on each Raspberry Pi and follow
100106

101107
$ sudo tee -a /boot/firmware/config.txt <<'EOF'
102108
dtoverlay=rpi-t1lpse-apl
103-
dtoverlay=rpi-t1lpse-class12
104109
EOF
105110

106111
2. For each child Raspberry Pi:
@@ -233,8 +238,8 @@ Run the application the parent Raspberry Pi only, which will handle communicatio
233238
:group: analog
234239
:show-user:
235240

236-
$ cd examples/cn0575
237-
$ source venv/bin/activate
241+
$ cd ~/pyadi-iio/examples/rpi_t1lpse
242+
$ source ~/pyadi-iio/venv/bin/activate
238243
$ python3 cn0591_2x_cn0575_button_blinky.py
239244

240245
.. figure:: eval-cn0575-rpiz-sample-application-terminal-result.gif

pull/1/_sources/solutions/reference-designs/ad4062-ardz/index.rst.txt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,8 @@
1212
no-OS:
1313
- no-OS driver (ad405x) <drivers/adc/ad405x>
1414

15+
.. .. custom-doc:: doc.yml
16+
1517
.. _eval-ad4062-ardz:
1618

1719
EVAL-AD4060/AD4062-ARDZ

pull/1/_sources/solutions/reference-designs/adrd3161-01z/hardware-guide.rst.txt

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -141,7 +141,7 @@ Depending on the used motor and its wiring, you may need to customize the encode
141141
:adi:`ADI Trinamic QSH <en/product-category/stepper-motors.html>` series stepper motors.
142142

143143
.. image:: res/cable-encoder-stepper.lfs.svg
144-
.. .. wireviz:: res/cable-encoder-stepper.wireviz.yaml
144+
.. .. wireviz:: res/cable-encoder-stepper.wireviz.yml
145145
146146
.. tab-item:: BLDC with Hall
147147

@@ -150,22 +150,22 @@ Depending on the used motor and its wiring, you may need to customize the encode
150150

151151

152152
.. image:: res/cable-encoder-bldc.lfs.svg
153-
.. .. wireviz:: res/cable-encoder-bldc.wireviz.yaml
153+
.. .. wireviz:: res/cable-encoder-bldc.wireviz.yml
154154
155155
.. tab-item:: BLDC with Hall, VESC-like connector
156156

157157
Encoder cable for using a Digital Hall sensor with a VESC-like encoder connector (6-pin JST PH), such as the
158158
`REV-21-1650 <https://revrobotics.eu/rev-21-1650/>`_.
159159

160160
.. image:: res/cable-encoder-bldc-vesc.lfs.svg
161-
.. .. wireviz:: res/cable-encoder-bldc-vesc.wireviz.yaml
161+
.. .. wireviz:: res/cable-encoder-bldc-vesc.wireviz.yml
162162
163163
.. tab-item:: BLDC with Hall & ADI Trinamic ABN
164164

165165
Encoder cable for using both an ADI Trinamic ABN encoder and a Digital Hall sensor.
166166

167167
.. image:: res/cable-encoder-bldc-abn.lfs.svg
168-
.. .. wireviz:: res/cable-encoder-bldc-abn.wireviz.yaml
168+
.. .. wireviz:: res/cable-encoder-bldc-abn.wireviz.yml
169169
170170
.. _adrd3161_cable_can:
171171

@@ -175,7 +175,7 @@ CAN cable
175175
The ADRDx161 board family communicates via CAN bus. The two headers P8, P9 allow for daisy-chaining CAN devices.
176176

177177
.. image:: res/cable-can.lfs.svg
178-
.. .. wireviz:: res/cable-can.wireviz.yaml
178+
.. .. wireviz:: res/cable-can.wireviz.yml
179179
180180
.. _adrd3161_design_files:
181181

Lines changed: 207 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,207 @@
1+
.. _adrv9032:
2+
3+
EVAL-ADRV9032
4+
===============================================================================
5+
6+
Integrated 2T2R TDD and FDD RadioVerse Transceiver with Dual Observation Paths.
7+
8+
Overview
9+
-------------------------------------------------------------------------------
10+
11+
.. image:: evaluation-board-angle.webp
12+
:align: right
13+
:width: 500
14+
15+
The :adi:`EVAL-ADRV903x <en/resources/evaluation-hardware-and-software/evaluation-boards-kits/eval-adrv903x.html>`, is an FMC radio card
16+
designed to showcase the :adi:`ADRV9032 <ADRV9032R>` and :adi:`ADRV9032R`, highly
17+
integrated, radio frequency (RF) agile transceivers offering 2 independently
18+
controlled transmitters, dual observation receiver inputs for monitoring
19+
transmitter channels, 2 independently controlled receivers, integrated
20+
local oscillator (LO) and clock synthesizers, and digital signal processing
21+
functions providing a complete transceiver solution.
22+
23+
The device provides the high radio performance and low-power consumption
24+
demanded by cellular infrastructure applications, software-defined radios,
25+
portable instruments, and military communications.
26+
27+
Features:
28+
29+
- Both chips feature:
30+
31+
- 2 differential transmitters & 2 differential receivers
32+
- 2 differential observation receivers
33+
- Support for TDD and FDD applications
34+
- LO tunable range: 450 MHz to 7125 MHz
35+
- RF range: 350 MHz to 7225 MHz
36+
- Maximum transmitter large-signal bandwidth: 200 MHz
37+
- Maximum transmitter synthesis bandwidth: 450 MHz
38+
- Maximum receiver signal bandwidth: 200 MHz
39+
- Maximum observation receiver signal bandwidth: 450 MHz
40+
- JESD204B and JESD204C digital interface: up to 16.5 Gbps
41+
- Low power consumption: 4.82 W for TDD mode with 200 MHz bandwidth
42+
43+
- Complete ADRV9032/ADRV9032R radio cards for evaluation
44+
45+
- FMC connector for FPGA integration
46+
- Fully integrated fractional-N RF synthesizer
47+
- Fully integrated clock synthesizer
48+
- Dual external LO inputs supporting operation up to 6 GHz (ADRV9032R)
49+
50+
Applications:
51+
52+
- Software defined radios
53+
- Portable instrumentation
54+
- Military communications
55+
- General-purpose radios
56+
- Wireless infrastructure
57+
- 3G/4G/5G TDD and FDD base stations
58+
59+
.. toctree::
60+
:hidden:
61+
62+
user-guide
63+
prerequisites
64+
quickstart/index
65+
66+
Recommendations
67+
-------------------------------------------------------------------------------
68+
69+
People who follow the flow that is outlined, have a much better experience with
70+
things. However, like many things, documentation is never as complete as it
71+
should be. If you have any questions, feel free to ask on our
72+
:ref:`EngineerZone forums <help-and-support>`, but before that, please make
73+
sure you read our documentation thoroughly.
74+
75+
To better understand the :adi:`ADRV9032 <ADRV9032R>` / :adi:`ADRV9032R`, we recommend to use
76+
the :adi:`EVAL-ADRV903x <en/resources/evaluation-hardware-and-software/evaluation-boards-kits/eval-adrv903x.html>` evaluation board.
77+
78+
Table of contents
79+
-------------------------------------------------------------------------------
80+
81+
#. Using the evaluation board/full stack reference design that we offer:
82+
83+
#. :ref:`Prerequisites <adrv9032 prerequisites>` - what you need to get started
84+
#. :ref:`Quick start guides <adrv9032 quickstart>`:
85+
86+
#. Using the :ref:`ZCU102/Zynq UltraScale+ MP SoC <adrv9032 quickstart zcu102>`
87+
88+
#. Configure an SD Card with :external+adi-kuiper-gen:doc:`Kuiper <index>`
89+
90+
#. Linux Applications
91+
92+
#. :ref:`iio-oscilloscope`
93+
94+
#. Design with the ADRV9032/ADRV9032R
95+
96+
- :ref:`adrv9032 block-diagram`
97+
98+
- :adi:`ADRV9032R product page <ADRV9032R>`
99+
- :adi:`Full data sheet and chip design package <en/products/adrv9032r.html>`
100+
101+
- Hardware in the Loop / How to design your own custom BaseBand
102+
103+
- :dokuwiki:`GNU Radio <resources/tools-software/linux-software/gnuradio>`
104+
- :dokuwiki:`Transceiver Toolbox <resources/tools-software/transceiver-toolbox>`
105+
106+
- Resources for designing a custom ADRV9032/ADRV9032R-based platform software
107+
108+
#. For Linux software:
109+
110+
#. About the device driver:
111+
112+
- :dokuwiki:`JESD204B Transmit Linux driver <resources/tools-software/linux-drivers/jesd204/axi_jesd204_tx>`
113+
- :dokuwiki:`JESD204B Receive Linux driver <resources/tools-software/linux-drivers/jesd204/axi_jesd204_rx>`
114+
- :external+hdl:ref:`axi_jesd204_tx`
115+
- :external+hdl:ref:`axi_jesd204_rx`
116+
- :dokuwiki:`JESD204B/C AXI_ADXCVR High-speed transceivers Linux driver <resources/tools-software/linux-drivers/jesd204/axi_adxcvr>`
117+
- :dokuwiki:`AXI ADC HDL Linux driver <resources/tools-software/linux-drivers/iio-adc/axi-adc-hdl>`
118+
- :dokuwiki:`AXI DAC HDL Linux driver <resources/tools-software/linux-drivers/iio-dds/axi-dac-dds-hdl>`
119+
- :dokuwiki:`AD9528 Low Jitter Clock Generator Linux driver <resources/tools-software/linux-drivers/iio-pll/ad9528>`
120+
- :external+hdl:ref:`axi_dmac`
121+
- ADRV9032/ADRV9032R Linux device driver (in-tree at :git-linux:`drivers/iio/adc/adrv903x/adrv903x.c`)
122+
123+
#. About the device tree:
124+
125+
- :dokuwiki:`Customizing the device tree on the target <resources/eval/user-guides/ad-fmcomms2-ebz/software/linux/zynq_tips_tricks>`
126+
127+
#. About the JESD204 utilities:
128+
129+
- :dokuwiki:`JESD204 (FSM) interface Linux Kernel framework <resources/tools-software/linux-drivers/jesd204/jesd204-fsm-framework>`
130+
- :dokuwiki:`JESD204 status utility <resources/tools-software/linux-software/jesd_status>`
131+
- :dokuwiki:`JESD204 Eye Scan <resources/tools-software/linux-software/jesd_eye_scan>`
132+
- :external+hdl:ref:`jesd204`
133+
134+
#. :dokuwiki:`Changing the VCXO frequency and updating the default RF Transceiver Profile <resources/eval/user-guides/rf-trx-vcxo-and-profiles>`
135+
#. :git-hdl:`HDL reference design <projects/adrv9032>` which you must use in your FPGA.
136+
More HDL build details at :external+hdl:ref:`build_hdl`.
137+
138+
#. :dokuwiki:`Additional documentation about SDR Signal Chains - The math behind the RF <resources/eval/user-guides/ad-fmcomms1-ebz/math>`
139+
#. :ref:`Help and Support <help-and-support>`
140+
141+
.. _adrv9032 block-diagram:
142+
143+
Block diagram
144+
-------------------------------------------------------------------------------
145+
146+
The ADRV9032/ADRV9032R features a zero-IF (ZIF) architecture that provides
147+
wide bandwidth with dynamic range suitable for non-contiguous multicarrier
148+
applications. The transceiver includes:
149+
150+
- 2 transmitter channels with integrated DACs
151+
- 2 receiver channels with integrated ADCs
152+
- 2 observation receiver channels for transmitter monitoring
153+
- Integrated RF and clock synthesizers
154+
- JESD204B/C digital interface (up to 16.5 Gbps)
155+
- SPI control interface
156+
- General purpose I/O and interrupts
157+
158+
.. image:: block-diagram.png
159+
:align: center
160+
:width: 800
161+
162+
Pictures
163+
-------------------------------------------------------------------------------
164+
165+
.. figure:: evaluation-board-top.webp
166+
167+
ADRV903X evaluation board - top view
168+
169+
.. figure:: evaluation-board-bottom.webp
170+
171+
ADRV903X evaluation board - bottom view
172+
173+
Videos
174+
-------------------------------------------------------------------------------
175+
176+
Software Defined Radio using the Linux IIO Framework
177+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
178+
179+
.. video:: http://ftp.fau.de/fosdem/2015/devroom-software_defined_radio/iiosdr.mp4
180+
181+
ADI articles
182+
-------------------------------------------------------------------------------
183+
184+
Four Quick Steps to Production: Using Model-Based Design for Software-Defined
185+
Radio:
186+
187+
#. :adi:`Part 1 - The Analog Devices/AMD Xilinx SDR Rapid Prototyping Platform: Its Capabilities, Benefits, and Tools <library/analogDialogue/archives/49-09/four-step-sdr-01.html>`
188+
#. :adi:`Part 2 - Mode S Detection and Decoding Using MATLAB and Simulink <library/analogDialogue/archives/49-10/four-step-sdr-02.html>`
189+
#. :adi:`Part 3 - Mode S Signals Decoding Algorithm Validation Using Hardware in the Loop <library/analogDialogue/archives/49-11/four-step-sdr-03.html>`
190+
#. :adi:`Part 4 - Rapid Prototyping Using the Zynq SDR Kit and Simulink Code Generation Workflow <library/analogDialogue/archives/49-12/four-step-sdr-04.html>`
191+
192+
About JESD standard:
193+
194+
#. :adi:`JESD204B Survival Guide <media/en/technical-documentation/technical-articles/JESD204B-Survival-Guide.pdf>`
195+
#. :adi:`JESD204C Primer: What's New and in It for You—Part 1 <resources/analog-dialogue/articles/jesd204c-primer-part1.html>`
196+
#. :adi:`JESD204C Primer: What's New and in It for You—Part 2 <resources/analog-dialogue/articles/jesd204c-primer-part2.html>`
197+
198+
MathWorks webinars
199+
-------------------------------------------------------------------------------
200+
201+
#. :mw:`Modelling and Simulating Analog Devices' RF Transceivers with MATLAB and SimRF <videos/modelling-and-simulating-analog-devices-rf-transceivers-with-matlab-and-simrf-89934.html>`
202+
#. :mw:`Getting Started with Software-Defined Radio using MATLAB and Simulink <videos/getting-started-with-software-defined-radio-using-matlab-and-simulink-108646.html>`
203+
204+
Warning
205+
-------------------------------------------------------------------------------
206+
207+
.. esd-warning::

0 commit comments

Comments
 (0)