diff --git a/docs/solutions/reference-designs/ad-apard32690-sl/ad-apardpfwd-sl/AD-APARDPFWD-SL-DesignSupport.zip b/docs/solutions/reference-designs/ad-apard32690-sl/ad-apardpfwd-sl/AD-APARDPFWD-SL-DesignSupport.zip new file mode 100644 index 000000000..e69de29bb diff --git a/docs/solutions/reference-designs/ad-apard32690-sl/ad-apardpfwd-sl/ADIN2111_Power_Down_Selection.csv b/docs/solutions/reference-designs/ad-apard32690-sl/ad-apardpfwd-sl/ADIN2111_Power_Down_Selection.csv new file mode 100644 index 000000000..f80329661 --- /dev/null +++ b/docs/solutions/reference-designs/ad-apard32690-sl/ad-apardpfwd-sl/ADIN2111_Power_Down_Selection.csv @@ -0,0 +1,3 @@ +JP4 Position , Software Power-down +Across 1 and 2, Disabled +Across 2 and 3, Enabled \ No newline at end of file diff --git a/docs/solutions/reference-designs/ad-apard32690-sl/ad-apardpfwd-sl/ADIN2111_SPI_Selection.csv b/docs/solutions/reference-designs/ad-apard32690-sl/ad-apardpfwd-sl/ADIN2111_SPI_Selection.csv new file mode 100644 index 000000000..2be4c030f --- /dev/null +++ b/docs/solutions/reference-designs/ad-apard32690-sl/ad-apardpfwd-sl/ADIN2111_SPI_Selection.csv @@ -0,0 +1,3 @@ +JP3 Position , SPI Mode +Across 1 and 2, AD (Generic SPI) +Across 2 and 3, OA (OPEN Alliance SPI) \ No newline at end of file diff --git a/docs/solutions/reference-designs/ad-apard32690-sl/ad-apardpfwd-sl/SPoE_PD_Power_Class_Selection.csv b/docs/solutions/reference-designs/ad-apard32690-sl/ad-apardpfwd-sl/SPoE_PD_Power_Class_Selection.csv new file mode 100644 index 000000000..7150d900b --- /dev/null +++ b/docs/solutions/reference-designs/ad-apard32690-sl/ad-apardpfwd-sl/SPoE_PD_Power_Class_Selection.csv @@ -0,0 +1,6 @@ +PD Class, JP1 Position , JP2 Position , VPD(min), VPD(max), I(max), PPD(max) + 10, Across 1 and 2, Across 1 and 2, 14 V , 30 V , 92 mA , 1.23 W + 11, Across 1 and 2, Disconnected , 14 V , 30 V , 240 mA, 3.20 W + 12, Across 1 and 2, Across 2 and 3, 14 V , 30 V , 632 mA, 8.40 W + 13, Across 2 and 3, Across 1 and 2, 35 V , 58 V , 231 mA, 7.70 W + 14, Across 1 and 3, Disconnected , 35 V , 58 V , 600 mA, 20.0 W diff --git a/docs/solutions/reference-designs/ad-apard32690-sl/ad-apardpfwd-sl/ad-t1lusb2-network.png b/docs/solutions/reference-designs/ad-apard32690-sl/ad-apardpfwd-sl/ad-t1lusb2-network.png new file mode 100644 index 000000000..b1140ba1e --- /dev/null +++ b/docs/solutions/reference-designs/ad-apard32690-sl/ad-apardpfwd-sl/ad-t1lusb2-network.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d8086742aa161d26e328f0b35c33b4321257d239d6976769063418058d4b58ba +size 9134 diff --git a/docs/solutions/reference-designs/ad-apard32690-sl/ad-apardpfwd-sl/apard-pfwd-block-diagram.png b/docs/solutions/reference-designs/ad-apard32690-sl/ad-apardpfwd-sl/apard-pfwd-block-diagram.png new file mode 100644 index 000000000..7e1c7d32c --- /dev/null +++ b/docs/solutions/reference-designs/ad-apard32690-sl/ad-apardpfwd-sl/apard-pfwd-block-diagram.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:46546357f111ed806e406adb0bc9867722fca347654d1894c303f22550dca0af +size 63208 diff --git a/docs/solutions/reference-designs/ad-apard32690-sl/ad-apardpfwd-sl/apard-pfwd-bottom-with-labels.png b/docs/solutions/reference-designs/ad-apard32690-sl/ad-apardpfwd-sl/apard-pfwd-bottom-with-labels.png new file mode 100644 index 000000000..05a1a439d --- /dev/null +++ b/docs/solutions/reference-designs/ad-apard32690-sl/ad-apardpfwd-sl/apard-pfwd-bottom-with-labels.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3efb0dae96e32f601e155f6ac4491a3f9ef8817cb0008e89f706e7d23aa11738 +size 177854 diff --git a/docs/solutions/reference-designs/ad-apard32690-sl/ad-apardpfwd-sl/apard-pfwd-classes.png b/docs/solutions/reference-designs/ad-apard32690-sl/ad-apardpfwd-sl/apard-pfwd-classes.png new file mode 100644 index 000000000..7ea086daa --- /dev/null +++ b/docs/solutions/reference-designs/ad-apard32690-sl/ad-apardpfwd-sl/apard-pfwd-classes.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8dfdd6bfce5380495fde36dc8d34496ccd1829ba37733621a96e5207f93718eb +size 72498 diff --git a/docs/solutions/reference-designs/ad-apard32690-sl/ad-apardpfwd-sl/apard-pfwd-result.png b/docs/solutions/reference-designs/ad-apard32690-sl/ad-apardpfwd-sl/apard-pfwd-result.png new file mode 100644 index 000000000..4c9eb2375 --- /dev/null +++ b/docs/solutions/reference-designs/ad-apard32690-sl/ad-apardpfwd-sl/apard-pfwd-result.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fc0f4e13ddef9be6e4423870b8756111393a6b1ae66867baf34ff57367c65d0c +size 24582 diff --git a/docs/solutions/reference-designs/ad-apard32690-sl/ad-apardpfwd-sl/apard-pfwd-setup.png b/docs/solutions/reference-designs/ad-apard32690-sl/ad-apardpfwd-sl/apard-pfwd-setup.png new file mode 100644 index 000000000..8abdd39b2 --- /dev/null +++ b/docs/solutions/reference-designs/ad-apard32690-sl/ad-apardpfwd-sl/apard-pfwd-setup.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f53b0fb89f98185c990b101268f2f722bde2b1cb1ed68d773ed6e0a7044e8142 +size 2569669 diff --git a/docs/solutions/reference-designs/ad-apard32690-sl/ad-apardpfwd-sl/apard-pfwd-top-iso.png b/docs/solutions/reference-designs/ad-apard32690-sl/ad-apardpfwd-sl/apard-pfwd-top-iso.png new file mode 100644 index 000000000..199468602 --- /dev/null +++ b/docs/solutions/reference-designs/ad-apard32690-sl/ad-apardpfwd-sl/apard-pfwd-top-iso.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fd185bc06a061b5218844a44bdb4b5ccd53f9b535df5accfb7ab4ac35e23b7e7 +size 287655 diff --git a/docs/solutions/reference-designs/ad-apard32690-sl/ad-apardpfwd-sl/apard-pfwd-top-with-labels.png b/docs/solutions/reference-designs/ad-apard32690-sl/ad-apardpfwd-sl/apard-pfwd-top-with-labels.png new file mode 100644 index 000000000..6a910ba7e --- /dev/null +++ b/docs/solutions/reference-designs/ad-apard32690-sl/ad-apardpfwd-sl/apard-pfwd-top-with-labels.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:24dff8a6dafac9eca721d967ccb7d29189900ee94e1a23cc0d3d05843a87fa01 +size 200984 diff --git a/docs/solutions/reference-designs/ad-apard32690-sl/ad-apardpfwd-sl/command_prompt.png b/docs/solutions/reference-designs/ad-apard32690-sl/ad-apardpfwd-sl/command_prompt.png new file mode 100644 index 000000000..d8f6f8576 --- /dev/null +++ b/docs/solutions/reference-designs/ad-apard32690-sl/ad-apardpfwd-sl/command_prompt.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7bb109674ddb514d8791eb1539e191a682d06d430465ce659a177222b1454473 +size 67225 diff --git a/docs/solutions/reference-designs/ad-apard32690-sl/ad-apardpfwd-sl/index.rst b/docs/solutions/reference-designs/ad-apard32690-sl/ad-apardpfwd-sl/index.rst new file mode 100644 index 000000000..80692b131 --- /dev/null +++ b/docs/solutions/reference-designs/ad-apard32690-sl/ad-apardpfwd-sl/index.rst @@ -0,0 +1,323 @@ +.. _ad-apardpfwd-sl: + +AD-APARDPFWD-SL +================ + +2-port 10BASE-T1L Arduino Shield with SPoE Power Forwarding +""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" + +General Description +------------------- + +.. figure:: apard-pfwd-top-iso.png + :width: 475 px + :align: right + + AD-APARDPFWD-SL + +The :adi:`AD-APARDPFWD-SL ` is a 10BASE-T1L power forwarder +with Single Pair Power over Ethernet (SPoE) for development of field devices and +applications on a :adi:`AD-APARD32690-SL ` platform board. +The SPoE powered device (PD) and isolated flyback regulator provide 12 V +power to the platform board. SPoE Class 10-12 (24 V nominal) and +Class 13-14 (55 V nominal) are supported. + +Designed for use on the :adi:`AD-APARD32690-SL ` platform, +the :adi:`AD-APARDPFWD-SL ` hardware features Arduino Mega +Form-factor headers, and two 10BASE-T1L ports for connecting to a +10BASE-T1L Power Sourcing Equipment (PSE) such as the +:adi:`AD-RPI-T1LPSE-SL ` 2-port 10BASE-T1L w/SPoE PSE +Development +Platform. + +To allow board stacking and development of field device applications using +Arduino shields, the :adi:`AD-APARDPFWD-SL ` has extra tall +headers that allows other Arduino shields to be stacked on top of it. + +The design also features a complete power and data isolation to the host +:adi:`AD-APARD32690-SL `. + +Evaluation Board Hardware +------------------------- + +Primary Side +~~~~~~~~~~~~ + +.. figure:: apard-pfwd-top-with-labels.png + + AD-APARDPFWD-SL Primary Side + +The :adi:`AD-APARDPFWD-SL ` uses 2 10BASE-T1L ports. One port +is the input port (**P7**), which supplies power to the +:adi:`AD-APARD32690-SL ` platform board, and the other port +is the output port (**P8**), which can be used to connect to another 10BASE-T1L +device or to daisy chain multiple devices. The input port is connected to the +:adi:`LTC9111` SPoE PD controller, which extracts the SPoE power from the +10BASE-T1L cable and provides it to the :adi:`LT8304` isolated flyback +regulator. The :adi:`LT8304` provides a regulated 12V. + +Power is supplied to the :adi:`AD-APARD32690-SL ` platform +board via **PIN8** of the **P1** header. + +The onboard :adi:`ADIN2111` PHY provides the 10BASE-T1L connection to the host +platform board. The :adi:`ADIN2111` is connected to the +:adi:`AD-APARD32690-SL ` platform board via the **P5** and +uses the SPI4 port of the :adi:`AD-APARD32690-SL `. + +The :adi:`ADIN2111` supports selectable peak-to-peak transmit levels of 1.1V or +2.4V for each PHY. To select the desired level, configure the P9 and P10 solder +jumpers for PHY1 and PHY2, respectively: + +- Disconnected: Sets the transmit level to 2.4V +- Shorted: Sets the transmit level to 1.1V + +The generic SPI protocol is half duplex. Therefore, it is not possible +to write frame data into the MAC_TX register and read from the +MAC_RX register at the same time. To achieve full duplex transmission on +Ethernet at 10 Mbps, OPEN Alliance SPI must be used. +To select which SPI protocol to use, the **JP3** solder jumper should be +configured as follows: + +.. csv-table:: + :file: ADIN2111_SPI_Selection.csv + +The :adi:`ADIN2111` supports software power-down after power-up / reset for each +port independently. To utilize this feature: + +- Short jumper P11 to enable the software power-down for PHY1. +- In order to enable the software power-down for PHY2, configure JP4 solder + jumper with the following settings + +.. csv-table:: + :file: ADIN2111_Power_Down_Selection.csv + +Secondary Side +~~~~~~~~~~~~~~ + +.. figure:: apard-pfwd-bottom-with-labels.png + + AD-APARDPFWD-SL Secondary Side + +SPoE PD Power Class Selection (JP1 and JP2) +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +By default, the :adi:`LTC9111` SPoE PD +controller included in the :adi:`AD-APARDPFWD-SL` circuit is configured for +PD Class 12. If a different PD class is required for the application, the +**JP1** and **JP2** solder jumpers should be reconfigured to match the desired +class. + +.. figure:: apard-pfwd-classes.png + :width: 475 px + + SPoE PD Power Class Jumpers + +.. csv-table:: + :file: SPoE_PD_Power_Class_Selection.csv + +.. warning:: + + Do not use PD Classes 15! + + The :adi:`AD-APARDPFWD-SL ` evaluation board is not + designed to handle the class 15's power specifications. + +System Setup +------------ + +**Required Equipment** + +**Hardware** + +- :adi:`AD-APARDPFWD-SL ` Circuit Evaluation Board +- :adi:`AD-APARD32690-SL ` +- 10BASE-T1L media converter, either: + + - :adi:`EVAL-ADIN1100EBZ ` Product Evaluation Board + - :adi:`AD-T1LUSB2.0-EBZ ` USB2.0 to 10BASE-T1L + Interface Board + - Other 10BASE-T to 10BASE-T1L media converter + +- Power Source, either: + + - :adi:`AD-RPI-T1LPSE-SL ` 2-port 10BASE-T1L w/SPoE + PSE Development Platform + + - Raspberry Pi Model 3B (or higher) + - Micro-SD Card for Raspberry Pi + + - Other 10BASE-T1L Power Coupling Network Board w/ SPoE PSE + +- :adi:`MAX32625PICO ` or any other similar programmer + supporting the SWD interface + +Block Diagram +~~~~~~~~~~~~~ + +Setup with SPoE via PSE +^^^^^^^^^^^^^^^^^^^^^^^ + +The :adi:`AD-RPI-T1LPSE-SL ` 2-port 10BASE-T1L w/SPoE PSE +Development +Platform provides a complete solution for powering the +:adi:`AD-APARDPFWD-SL ` evaluation board and the +:adi:`AD-APARD32690-SL ` platform board via SPoE. + +.. figure:: apard-pfwd-block-diagram.png + + Test Setup with SPoE via PSE + +Basic Operation +~~~~~~~~~~~~~~~ + +.. figure:: apard-pfwd-setup.png + + Complete Evaluation Setup + +To establish a 10BASE-T1L connection to an +:adi:`AD-APARD32690-SL ` using the +:adi:`AD-APARDPFWD-SL ` evaluation board +and ping the :adi:`AD-APARD32690-SL `: + +#. Ensure that the jumpers and switches of the + :adi:`AD-APARDPFWD-SL ` are configured to the default settings. + +#. Connect the :adi:`AD-APARDPFWD-SL ` circuit evaluation + board to the :adi:`AD-APARD32690-SL ` Arduino headers. + +#. Using a USB-C cable, connect **P1** on the + :adi:`AD-T1LUSB2.0-EBZ ` evaluation board to a USB port on + the computer. + +#. Operation with SPoE PSE: + + * Set the output of the PSE or DC power supply to either 24V (Class 12) or + 55V (Class 14), depending on the settings of **JP1** and **JP2** on the + AD-APARDPFWD-SL board. + * Using a PROFIBUS cable, connect **P1** on the AD-RPI-T1LPSE-SL + evaluation board to **P7** on the + :adi:`AD-APARDPFWD-SL ` evaluation board. + * Using a PROFIBUS cable, connect **P2** on the AD-RPI-T1LPSE-SL + evaluation board to **P2** on the + :adi:`AD-T1LUSB2.0-EBZ ` evaluation board. + +#. Upload the :git-no-OS:`AD-APARD32690-SL ADIN2111 Example ` + to the :adi:`AD-APARD32690-SL ` platform board using the + :adi:`MAX32625PICO ` programmer. + +#. By default the :adi:`AD-APARD32690-SL ` has 192.168.97.40 + as its IP address. If you are using a different IP address, make sure to + update the + :git-no-OS:`AD-APARD32690-SL ADIN2111 Example + ` + with the new IP address. + +#. Update the IP address of the Raspberry Pi's Ethernet Interface depending on + which port of the :adi:`AD-RPI-T1LPSE-SL ` you are using + (**ETH1** / **ETH2**). + + .. warning:: + + ADD STATIC IP FOR BOTH PORTS + ETH1 192.168.97.10 + ETH2 192.168.90.10 + + Save the table and reboot the system by entering the following command in the + console: + + .. shell:: + :user: analog + :group: analog + :show-user: + + $sudo reboot + + * From the start menu open the **Control Panel** and click on **Network + and Internet** + * Click on **View network status and tasks** + + You should see two networks. + + .. figure:: ad-t1lusb2-network.png + :width: 400 px + + Network Connections + + * Click on the **Connections: Ethernet** and click on **Properties** + * Select **Internet Protocol Version 4 (TCP/IPv4)** and click on + **Properties** + * Select **Use the following IP address:** and type in the following **IP + address** and **Subnet mask**: + :: + + IP address: 192.168.90.zzz + Subnet mask: 255.255.0.0 + + where **zzz** is a number between 1 and 254, currently unused in the + network (for example, 10 cannot be used, since it is used by the + AD-RPI-T1LPSE-SL). + * Click on **OK** to save the changes and close the dialog boxes. + +#. Wait for the **DS1** LED on the + :adi:`AD-APARDPFWD-SL ` evaluation board and the **DS1** + LED on the :adi:`AD-RPI-T1LPSE-SL ` evaluation board to + turn on and start blinking at the same time. This indicates that a + 10BASE-T1L link has been established. + +#. Now you can ping the device to see if the connection is working properly. + Open a terminal on your host PC connect to the AD-RPI-T1LPSE-SL through SSH: + + :: + + ssh analog@192.168.90.10 + + Enter the password **analog** when prompted. + + You can now ping the :adi:`AD-APARD32690-SL ` platform + board using the following command: + + .. shell:: + :user: analog + :group: analog + :show-user: + + $ping 192.168.97.50 + + .. figure:: + apard-pfwd-result.png + + Result + +Schematic, PCB Layout, Bill of Materials +---------------------------------------- + +.. admonition:: Download + + :download:`AD-APARDPFWD-SL Design & Integration + Files` + + - Schematics + - PCB Layout + - Bill of Materials + - Allegro Project + +Additional Information and Useful Links +--------------------------------------- +- :adi:`ADIN2111 Product Page ` +- :adi:`LTC9111 Product Page ` +- :adi:`LT8304 Product Page ` + +Hardware Registration +--------------------- + +.. tip:: + + Receive software update notifications, documentation updates, view the latest + videos, and more when you :adi:`register ` your + hardware. + +Help and Support +------------------- + +For questions and more information about this product, connect with us through +the Analog Devices :ez:`/` . diff --git a/docs/solutions/reference-designs/ad-apard32690-sl/ad-apardspoe-sl/AD-APARDSPOE-SL-DesignSupport.zip b/docs/solutions/reference-designs/ad-apard32690-sl/ad-apardspoe-sl/AD-APARDSPOE-SL-DesignSupport.zip new file mode 100644 index 000000000..9541965cf --- /dev/null +++ b/docs/solutions/reference-designs/ad-apard32690-sl/ad-apardspoe-sl/AD-APARDSPOE-SL-DesignSupport.zip @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:26b330f45126ec458f036b8473ded7f54c0e72078336c89f6990b6d4166f2bc4 +size 58528 diff --git a/docs/solutions/reference-designs/ad-apard32690-sl/ad-apardspoe-sl/SPoE_PD_Power_Class_Selection.csv b/docs/solutions/reference-designs/ad-apard32690-sl/ad-apardspoe-sl/SPoE_PD_Power_Class_Selection.csv new file mode 100644 index 000000000..7150d900b --- /dev/null +++ b/docs/solutions/reference-designs/ad-apard32690-sl/ad-apardspoe-sl/SPoE_PD_Power_Class_Selection.csv @@ -0,0 +1,6 @@ +PD Class, JP1 Position , JP2 Position , VPD(min), VPD(max), I(max), PPD(max) + 10, Across 1 and 2, Across 1 and 2, 14 V , 30 V , 92 mA , 1.23 W + 11, Across 1 and 2, Disconnected , 14 V , 30 V , 240 mA, 3.20 W + 12, Across 1 and 2, Across 2 and 3, 14 V , 30 V , 632 mA, 8.40 W + 13, Across 2 and 3, Across 1 and 2, 35 V , 58 V , 231 mA, 7.70 W + 14, Across 1 and 3, Disconnected , 35 V , 58 V , 600 mA, 20.0 W diff --git a/docs/solutions/reference-designs/ad-apard32690-sl/ad-apardspoe-sl/ad-t1lusb2-network.png b/docs/solutions/reference-designs/ad-apard32690-sl/ad-apardspoe-sl/ad-t1lusb2-network.png new file mode 100644 index 000000000..b1140ba1e --- /dev/null +++ b/docs/solutions/reference-designs/ad-apard32690-sl/ad-apardspoe-sl/ad-t1lusb2-network.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d8086742aa161d26e328f0b35c33b4321257d239d6976769063418058d4b58ba +size 9134 diff --git a/docs/solutions/reference-designs/ad-apard32690-sl/ad-apardspoe-sl/apard-spoe-block-diagram.png b/docs/solutions/reference-designs/ad-apard32690-sl/ad-apardspoe-sl/apard-spoe-block-diagram.png new file mode 100644 index 000000000..79cd150e9 --- /dev/null +++ b/docs/solutions/reference-designs/ad-apard32690-sl/ad-apardspoe-sl/apard-spoe-block-diagram.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:db7840c56c4b93d14a1ed74407fe6449f02241b4bf447c0b8733b7d8798176ec +size 56517 diff --git a/docs/solutions/reference-designs/ad-apard32690-sl/ad-apardspoe-sl/apard-spoe-bottom-with-labels.png b/docs/solutions/reference-designs/ad-apard32690-sl/ad-apardspoe-sl/apard-spoe-bottom-with-labels.png new file mode 100644 index 000000000..c2a03c8dd --- /dev/null +++ b/docs/solutions/reference-designs/ad-apard32690-sl/ad-apardspoe-sl/apard-spoe-bottom-with-labels.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4a176d594f5ed629ae9ba17c641165f9986a0847a329a6f4737d66329e390cbc +size 181151 diff --git a/docs/solutions/reference-designs/ad-apard32690-sl/ad-apardspoe-sl/apard-spoe-classes.png b/docs/solutions/reference-designs/ad-apard32690-sl/ad-apardspoe-sl/apard-spoe-classes.png new file mode 100644 index 000000000..24de0e06e --- /dev/null +++ b/docs/solutions/reference-designs/ad-apard32690-sl/ad-apardspoe-sl/apard-spoe-classes.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:245bfecbe1f670978faf04ceb4bef1fc1efb1185fe41c2c9ad3c9611265a3569 +size 144808 diff --git a/docs/solutions/reference-designs/ad-apard32690-sl/ad-apardspoe-sl/apard-spoe-result.png b/docs/solutions/reference-designs/ad-apard32690-sl/ad-apardspoe-sl/apard-spoe-result.png new file mode 100644 index 000000000..4c9eb2375 --- /dev/null +++ b/docs/solutions/reference-designs/ad-apard32690-sl/ad-apardspoe-sl/apard-spoe-result.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fc0f4e13ddef9be6e4423870b8756111393a6b1ae66867baf34ff57367c65d0c +size 24582 diff --git a/docs/solutions/reference-designs/ad-apard32690-sl/ad-apardspoe-sl/apard-spoe-setup.png b/docs/solutions/reference-designs/ad-apard32690-sl/ad-apardspoe-sl/apard-spoe-setup.png new file mode 100644 index 000000000..37eaaa2a7 --- /dev/null +++ b/docs/solutions/reference-designs/ad-apard32690-sl/ad-apardspoe-sl/apard-spoe-setup.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:be7defc30aed206bfd8ac3a134a45cc20a9b25ff4b2f67a9ee69c11f7b0e9aec +size 8882670 diff --git a/docs/solutions/reference-designs/ad-apard32690-sl/ad-apardspoe-sl/apard-spoe-top-iso.png b/docs/solutions/reference-designs/ad-apard32690-sl/ad-apardspoe-sl/apard-spoe-top-iso.png new file mode 100644 index 000000000..225e08955 --- /dev/null +++ b/docs/solutions/reference-designs/ad-apard32690-sl/ad-apardspoe-sl/apard-spoe-top-iso.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e582b7d539f916332783d1afb856d817ce7829c084f36ffe9106525abc74d56a +size 301024 diff --git a/docs/solutions/reference-designs/ad-apard32690-sl/ad-apardspoe-sl/apard-spoe-top-with-labels.png b/docs/solutions/reference-designs/ad-apard32690-sl/ad-apardspoe-sl/apard-spoe-top-with-labels.png new file mode 100644 index 000000000..e44fc20a6 --- /dev/null +++ b/docs/solutions/reference-designs/ad-apard32690-sl/ad-apardspoe-sl/apard-spoe-top-with-labels.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:24be13246fde9949417078977ec825b0f0c7086715ea7a227b0f10e6d690b7f7 +size 273623 diff --git a/docs/solutions/reference-designs/ad-apard32690-sl/ad-apardspoe-sl/index.rst b/docs/solutions/reference-designs/ad-apard32690-sl/ad-apardspoe-sl/index.rst new file mode 100644 index 000000000..4ec17468c --- /dev/null +++ b/docs/solutions/reference-designs/ad-apard32690-sl/ad-apardspoe-sl/index.rst @@ -0,0 +1,282 @@ +.. _ad-apardspoe-sl: + +AD-APARDSPOE-SL +================ + +10BASE-T1L Power Extractor with Class 10-14 SPoE +"""""""""""""""""""""""""""""""""""""""""""""""" + +General Description +------------------- + +.. figure:: apard-spoe-top-iso.png + :width: 475 px + :align: right + + AD-APARDSPOE-SL + +The :adi:`AD-APARDSPOE-SL ` is a 10BASE-T1L power extractor +with +Single Pair Power over Ethernet (SPoE) for development of field devices and +applications on a :adi:`AD-APARD32690-SL ` platform board. +The SPoE powered device (PD) and isolated flyback regulator provide 12 V +power to the platform board. SPoE Class 10-12 (24 V nominal) and +Class 13-14 (55 V nominal) are supported. + +Designed for use on the :adi:`AD-APARD32690-SL ` platform, +the :adi:`AD-APARDSPOE-SL ` hardware features Arduino +Form-factor headers, and 3 pins +to extract power from the :adi:`AD-APARD32690-SL ` board. + +To support board stacking and the development of field device applications using +Arduino shields, the :adi:`AD-APARDSPOE-SL` is equipped with +extra-tall headers, enabling other Arduino shields to be stacked on top of it. + +The design also features a complete power isolation to the host +:adi:`AD-APARD32690-SL `. + +Evaluation Board Hardware +------------------------- + +Primary Side +~~~~~~~~~~~~ + +.. figure:: apard-spoe-top-with-labels.png + + AD-APARDSPOE-SL Primary Side + +The :adi:`AD-APARDSPOE-SL ` uses 3 headers to connect to the +:adi:`AD-APARD32690-SL ` platform board to extract the SPoE +power: + +- **P5** is for the negative voltage rail. +- **P6** is for the positive voltage rail. +- **P7** is for the ground rail. + +Power is supplied to the :adi:`AD-APARD32690-SL ` platform +board via **PIN8** of the **P1** header. + +SPoE PD Power Class Selection (JP1 and JP2) +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +By default, the :adi:`LTC9111` SPoE PD +controller included in the :adi:`AD-APARDSPOE-SL` circuit is configured for +PD Class 12. If a different PD class is required for the application, the +**JP1** and **JP2** solder jumpers should be reconfigured to match the desired +class. + +.. figure:: apard-spoe-classes.png + :width: 475 px + + SPoE PD Power Class Jumpers + +.. csv-table:: + :file: SPoE_PD_Power_Class_Selection.csv + +.. warning:: + + Do not use PD Classes 15! + + The :adi:`AD-APARDSPOE-SL ` evaluation board is not designed + to + handle the class 15's power specifications. + +Secondary Side +~~~~~~~~~~~~~~ + +.. figure:: apard-spoe-bottom-with-labels.png + + AD-APARDSPOE-SL Secondary Side + +System Setup +------------ + +**Required Equipment** + +**Hardware** + +- :adi:`AD-APARDSPOE-SL ` Circuit Evaluation Board +- :adi:`AD-APARD32690-SL ` + +- Power Source, either: + + - :adi:`AD-RPI-T1LPSE-SL ` 2-port 10BASE-T1L w/SPoE + PSE Development Platform + + - Raspberry Pi Model 3B (or higher) + - Micro-SD Card for Raspberry Pi + + - Other 10BASE-T1L Power Coupling Network Board w/ SPoE PSE + +- :adi:`MAX32625PICO ` or any other similar programmer + supporting the SWD interface + +Block Diagram +~~~~~~~~~~~~~ + +Setup with SPoE via PSE +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +The :adi:`AD-RPI-T1LPSE-SL ` 2-port 10BASE-T1L w/SPoE PSE +Development Platform +provides a complete solution for powering the :adi:`AD-APARDSPOE-SL +` evaluation board +and the :adi:`AD-APARD32690-SL ` platform board via SPoE. + +.. figure:: apard-spoe-block-diagram.png + + Test Setup with SPoE via PSE + +Basic Operation +~~~~~~~~~~~~~~~ + +.. figure:: apard-spoe-setup.png + + Complete Evaluation Setup + +To establish a 10BASE-T1L connection to an +:adi:`AD-APARD32690-SL ` using the +:adi:`AD-APARDSPOE-SL ` evaluation board +and ping the :adi:`AD-APARD32690-SL `: + +#. Ensure that the jumpers and switches of the + :adi:`AD-APARDSPOE-SL ` are configured to the default settings. + +#. Connect the :adi:`AD-APARDSPOE-SL ` circuit evaluation + board to the :adi:`AD-APARD32690-SL ` Arduino headers. + +#. Using a USB-C cable, connect **P1** on the + :adi:`AD-T1LUSB2.0-EBZ ` evaluation board to a USB port on + the computer. + +#. Operation with SPoE PSE: + + * Set the output of the PSE or DC power supply to either 24V (Class 12) or + 55V (Class 14), depending on the settings of **JP1** and **JP2** on the + AD-APARDSPOE-SL board. + * Using a PROFIBUS cable, connect **P1** on the AD-RPI-T1LPSE-SL + evaluation board to **P1** on the + :adi:`AD-APARD32690-SL ` evaluation board. + * Using a PROFIBUS cable, connect **P2** on the AD-RPI-T1LPSE-SL + evaluation board to **P2** on the + :adi:`AD-T1LUSB2.0-EBZ ` evaluation board. + +#. Upload the :git-no-OS:`AD-APARD32690-SL TCP Echo Server Example ` + to the :adi:`AD-APARD32690-SL ` platform board using the + :adi:`MAX32625PICO ` programmer. + +#. By default the :adi:`AD-APARD32690-SL ` has + 192.168.97.40 as its IP address. If you are using a different IP address, + make sure to update the + :git-no-OS:`AD-APARD32690-SL TCP Echo Server Example ` + with the new IP address. + +#. Update the IP address of the Raspberry Pi's Ethernet Interface depending + on which port of the :adi:`AD-RPI-T1LPSE-SL ` you are + using (**ETH1** / **ETH2**). + + .. warning:: + + ADD STATIC IP FOR BOTH PORTS + ETH1 192.168.97.10 + ETH2 192.168.90.10 + + Save the table and reboot the system by entering the following command in the + console: + + .. shell:: + :user: analog + :group: analog + :show-user: + + $sudo reboot + + * From the start menu open the **Control Panel** and click on **Network + and Internet** + * Click on **View network status and tasks** + + You should see two networks. + + .. figure:: ad-t1lusb2-network.png + :width: 400 px + + Network Connections + + * Click on the **Connections: Ethernet** and click on **Properties** + * Select **Internet Protocol Version 4 (TCP/IPv4)** and click on + **Properties** + * Select **Use the following IP address:** and type in the following **IP + address** and **Subnet mask**: + + :: + + IP address: 192.168.90.zzz + Subnet mask: 255.255.0.0 + + where **zzz** is a number between 1 and 254, currently unused in the + network (for example, 10 cannot be used, since it is used by the + AD-RPI-T1LPSE-SL). + * Click on **OK** to save the changes and close the dialog boxes. + +#. Wait for the **DS3** LED on the + :adi:`AD-APARD32690-SL ` evaluation board and the + **DS1** LED on the :adi:`AD-RPI-T1LPSE-SL ` evaluation + board to turn on and start blinking at the same time. This indicates that + a 10BASE-T1L link has been established. + +#. Now you can ping the device to see if the connection is working properly. + Open a terminal on your host PC connect to the AD-RPI-T1LPSE-SL through SSH: + + :: + + ssh analog@192.168.90.10 + + Enter the password **analog** when prompted. + + You can now ping the :adi:`AD-APARD32690-SL ` platform + board using the following command: + + .. shell:: + :user: analog + :group: analog + :show-user: + + $ping 192.168.97.50 + + .. figure:: apard-spoe-result.png + + Result + + +Schematic, PCB Layout, Bill of Materials +---------------------------------------- + +.. admonition:: Download + + :download:`AD-APARDSPOE-SL Design & Integration Files ` + + - Schematics + - PCB Layout + - Bill of Materials + - Allegro Project + +Additional Information and Useful Links +--------------------------------------- +- :adi:`ADIN1110 Product Page ` +- :adi:`LTC9111 Product Page ` +- :adi:`LT8304 Product Page ` + +Hardware Registration +--------------------- + +.. tip:: + + Receive software update notifications, documentation updates, view the latest + videos, and more when you :adi:`register ` your + hardware. + +Help and Support +------------------- + +For questions and more information about this product, connect with us through +the Analog Devices :ez:`/` . diff --git a/docs/solutions/reference-designs/ad-apard32690-sl/index.rst b/docs/solutions/reference-designs/ad-apard32690-sl/index.rst index 049cae7e3..29652f755 100644 --- a/docs/solutions/reference-designs/ad-apard32690-sl/index.rst +++ b/docs/solutions/reference-designs/ad-apard32690-sl/index.rst @@ -2,8 +2,8 @@ AD-APARD32690-SL ================ -Arduino Form-factor Development Platform Based on MAX32690 ARM Cortex-M4 Microcontroller -"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" +Arduino Form-factor Development Platform Based on MAX32690 ARM Cortex-M4 +"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" Introduction ------------ @@ -18,7 +18,8 @@ industrial field devices. Some of the main features and benefits include: - ARM Cortex-M4 Ultra Efficient Microcontroller with integrated Bluetooth 5.2 LE - WiFi connectivity - Long-range, single-pair 10BASE-T1L Ethernet interface -- Built-in security for root-of-trust, mutual authentication, data confidentiality and integrity, secure boot, and secure communications +- Built-in security for root-of-trust, mutual authentication, data + confidentiality and integrity, secure boot, and secure communications - Open-source software stack .. figure:: eval-max32690-ardz_angle.jpg @@ -51,7 +52,8 @@ system together and get it up and running in no time. This is what you’ll find in the development kit box: - 1 x AD-APARD32690-SL board -- 1 x :dokuwiki:`AD-T1LUSB2.0-EBZ ` 10BASE-T1L to USB adapter board +- 1 x :dokuwiki:`AD-T1LUSB2.0-EBZ ` + 10BASE-T1L to USB adapter board - 1 x PROFIBUS (1x2x18AWG) cable for Single Pair Ethernet (SPE) connectivity - 1 x USB 2.0 cable @@ -73,7 +75,7 @@ transfer. Hardware Components and Connections ----------------------------------- - +.. attention:: TO BE REPLACED! .. figure:: apard32690_hw_components.png Hardware Components and Connections @@ -88,12 +90,17 @@ Required Hardware ~~~~~~~~~~~~~~~~~ - **Development kit**: :adi:`AD-APARD32690-SL Microcontroller Board ` -- **Power supplies**: 5V to 28V at 2A external power supply or 5V USB-C power supply -- **Programmer**: :adi:`MAX32625PICO` or any other similar programmer supporting the SWD interface - -#. Connect the AD-APARD32690-SL to the :dokuwiki:`AD-T1LUSB2.0-EBZ ` using the single pair Ethernet cable. +- **Power supplies**: 5V to 28V at 2A external power supply or 5V USB-C power + supply +- **Programmer**: :adi:`MAX32625PICO` or any other similar programmer + supporting the SWD interface + +#. Connect the AD-APARD32690-SL to the :dokuwiki:`AD-T1LUSB2.0-EBZ ` + using the single pair Ethernet + cable. #. Connect the AD-T1LUSB2.0-EBZ to your PC using an USB cable. -#. Connect the MAX32625PICO programmer, or any programmer supporting the SWD interface, to the AD-APARD32690-SL. +#. Connect the MAX32625PICO programmer, or any programmer supporting the SWD + interface, to the AD-APARD32690-SL. #. Connect the power supply to the AD-APARD32690-SL. .. figure:: apard32690_system_setup.jpg @@ -112,29 +119,40 @@ MAX32625PICO. #. Download the firmware image: `MAX32625PICO firmware `__ #. Set the MAX32625PICO in MAINTENANCE mode: - * Disconnect the MAX32625PICO from the PC and the AD-SWIOT1L-SL board. - * Plug the micro USB cable only in the MAX32625PICO. - * Keep the button on the MAX32625PICO pressed. - * Plug the micro USB cable into the PC. - * Once you see the MAINTENANCE drive being mounted, you may release the button. - .. figure:: picture2.jpg - :width: 300 px + * Disconnect the MAX32625PICO from the PC and the AD-SWIOT1L-SL board. + * Plug the micro USB cable only in the MAX32625PICO. + * Keep the button on the MAX32625PICO pressed. + * Plug the micro USB cable into the PC. + * Once you see the MAINTENANCE drive being mounted, you may release the + button. + + .. figure:: picture2.jpg + :width: 300 px - Imaging the MAX32625PICO + Imaging the MAX32625PICO -#. Drag and drop (to the MAINTENANCE drive) the firmware image you previously downloaded. -#. After a few seconds, the MAINTENANCE drive will disappear and will be replaced by a drive named DAPLINK. Once this is done, the process is complete, and the MAX32625PICO may be used to flash the firmware of the AD-SWIOT1L-SL board. +#. Drag and drop (to the MAINTENANCE drive) the firmware image you previously + downloaded. +#. After a few seconds, the MAINTENANCE drive will disappear and will be + replaced by a drive named DAPLINK. Once this is done, the process is + complete, and the MAX32625PICO may be used to flash the firmware of the + AD-SWIOT1L-SL board. Programming the AD-APARD32690-SL ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ #. Connect the MAX32625PICO to the PC using the micro USB cable. -#. Connect the MAX32625PICO to the AD-APARD32690-SL board using the 10-pin ribbon cable. -#. Connect the power supply to the AD-APARD32690-SL. Make sure the board is powered up for the next steps. +#. Connect the MAX32625PICO to the AD-APARD32690-SL board using the 10-pin + ribbon cable. +#. Connect the power supply to the AD-APARD32690-SL. Make sure the board is + powered up for the next steps. #. A DAPLINK drive should appear as mounted on your PC. -#. Drag and drop the new firmware image into the DAPLINK drive. After a few seconds, the drive will be remounted. -#. Check the DAPLINK directory and make sure there is no FAIL.TXT file. In case there is, repeat the drag and drop step. Otherwise, you may disconnect the MAX32625PICO from the AD-APARD32690-SL, since the firmware update is complete. +#. Drag and drop the new firmware image into the DAPLINK drive. After a few + seconds, the drive will be remounted. +#. Check the DAPLINK directory and make sure there is no FAIL.TXT file. In case + there is, repeat the drag and drop step. Otherwise, you may disconnect the + MAX32625PICO from the AD-APARD32690-SL, since the firmware update is complete. AD-APARD32690-SL Software Stack ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ diff --git a/docs/solutions/reference-designs/ad-apard32690-sl/pin-descriptions.csv b/docs/solutions/reference-designs/ad-apard32690-sl/pin-descriptions.csv index a1a2ab275..908f0592e 100644 --- a/docs/solutions/reference-designs/ad-apard32690-sl/pin-descriptions.csv +++ b/docs/solutions/reference-designs/ad-apard32690-sl/pin-descriptions.csv @@ -1,39 +1,44 @@ -LEDs, -DS1,Power good -DS2,User LED +LEDs , +DS1 , Power good +DS2 , User LED Buttons & Switches, -S1,MAX32690 Reset -S2,User Button -S3,User switches -S4,1: ADIN1110 SWPD_EN -,2: ADIN1110 SPI_CFG0 -,3: ADIN1110 SPI_CFG1 -Jumper settings, -P50,Position 1-2: Connect programmer SWD_RX to WiFi UART TX -,Position 2-3: Connect programmer SWD_RX to MAX32690 -P55,Position 1-2: Connect programmer SWD_TX to WiFi UART RX -,Position 2-3: Connect programmer SWD_RX to MAX32690 -P38,Connect WiFi UART TX to MAX32690 -P56,Connect WiFi UART RX to MAX32690 -P51,Position 1-2: Set programmer voltage to 3V3 (normal operation mode) -,Position 2-3: Set programmer voltage to 1V8 (WiFi chip programming) -Connectors, -P1,10BASE-T1L -P10,USB-C Power & Data -P14,External Power 5V-28V -P9,SWD Programmer -P11,SPOE Shield ISO GND -P16,SPOE Shield PI+ -P17,SPOE Shield PI- -P53,SPOE Shield PI+ -P54,SPOE Shield PI- -P12,SPOE Shield Data TRX N -P15,SPOE Shield Data TRX P -P8,SPI PMOD -P13,I2C PMOD -P2,Arduino Connector - Power -P3,Arduino Connector - Analog -P4,Arduino Connector - SPI / I2S -P5,Arduino Connector - SPI & I2C -P6,Arduino Connector - UART -P7,Arduino Connector - GPIO & CAN +S1 , MAX32690 Reset +S2 , User Button +S3 , User switches +S4 , 1: ADIN1110 SWPD_EN + , 2: ADIN1110 SPI_CFG0 + , 3: ADIN1110 SPI_CFG1 +Jumper settings , +P50 , Position 1-2: Connect programmer SWD_RX to WiFi UART TX + , Position 2-3: Connect programmer SWD_RX to MAX32690 +P55 , Position 1-2: Connect programmer SWD_TX to WiFi UART RX + , Position 2-3: Connect programmer SWD_RX to MAX32690 +P38 , Connect WiFi UART TX to MAX32690 +P56 , Connect WiFi UART RX to MAX32690 +P51 , Position 1-2: Set programmer voltage to 3V3 (normal operation mode) + , Position 2-3: Set programmer voltage to 1V8 (WiFi chip programming) +JP12 , Position 1-2: To use the Low Power UART0RX port for programming and debugging + , Position 2-3: to use the normal UART0RX port for programming and debugging +JP13 , Position 1-2: To use the Low Power UART0TX port for programming and debugging + , Position 2-3: to use the normal UART0TX port for programming and debugging +Connectors , +P1 , 10BASE-T1L +P10 , USB-C Power & Data +P14 , External Power 5V-28V +P9 , SWD Programmer +P58 , RISC-V Programmer +P11 , SPOE Shield ISO GND +P16 , SPOE Shield PI+ +P17 , SPOE Shield PI- +P53 , SPOE Shield PI+ +P54 , SPOE Shield PI- +P12 , SPOE Shield Data TRX N +P15 , SPOE Shield Data TRX P +P8 , SPI PMOD +P13 , I2C PMOD +P2 , Arduino Connector - Power +P3 , Arduino Connector - Analog +P4 , Arduino Connector - SPI / I2S +P5 , Arduino Connector - SPI & I2C +P6 , Arduino Connector - UART +P7 , Arduino Connector - GPIO & CAN diff --git a/docs/solutions/reference-designs/ad-apard32690-sl/specifications.csv b/docs/solutions/reference-designs/ad-apard32690-sl/specifications.csv index 2a5552325..b26e22f52 100644 --- a/docs/solutions/reference-designs/ad-apard32690-sl/specifications.csv +++ b/docs/solutions/reference-designs/ad-apard32690-sl/specifications.csv @@ -1,13 +1,13 @@ Computing Resources, -CPU,MAX32690 Ultralow Power ARM Cortex-M4 with FPU-Based Microcontroller (MCU) with 3 MB Flash and 1 MB SRAM -Memory,1 Gb RAM -Storage,64 Mb QSPI Flash -Security,MAXQ1065 Ultralow Power Cryptographic Controller with ChipDNATM -Connectivity, -Ethernet,"ADIN1110 Robust, Industrial, Low Power 10BASE-T1L Ethernet MAC-PHY" -WiFi,"NINA-W102 - IEEE 802.11b, IEEE 802.11g, IEEE 802.11n" -Bluetooth,Bluetooth 5.2 LE Radio -USB,USB 2.0 -Power supply, -External power,5V DC to 28V DC -USB-C,"5 V at 3 A, without power negotiation" +CPU , MAX32690 Ultralow Power ARM Cortex-M4 with FPU-Based Microcontroller (MCU) with 3 MB Flash and 1 MB SRAM +Memory , 1 Gb RAM +Storage , 64 Mb QSPI Flash +Security , MAXQ1065 Ultralow Power Cryptographic Controller with ChipDNATM +Connectivity , +Ethernet , "ADIN1110 Robust, Industrial, Low Power 10BASE-T1L Ethernet MAC-PHY" +WiFi , "NINA-W102 - IEEE 802.11b, IEEE 802.11g, IEEE 802.11n" +Bluetooth , Bluetooth 5.2 LE Radio +USB , USB 2.0 +Power supply , +External power , 5V DC to 28V DC +USB-C , "5 V at 3 A, without power negotiation" diff --git a/docs/solutions/reference-designs/ad-rpi-t1lpse-sl/AD-RPI-T1LPSE-SL-DesignSupport.zip b/docs/solutions/reference-designs/ad-rpi-t1lpse-sl/AD-RPI-T1LPSE-SL-DesignSupport.zip new file mode 100644 index 000000000..6288ddead --- /dev/null +++ b/docs/solutions/reference-designs/ad-rpi-t1lpse-sl/AD-RPI-T1LPSE-SL-DesignSupport.zip @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:86192274930f38f9a8016d1a38d9c2dc5699a8accae1ad0c25dee3e649229028 +size 518629 diff --git a/docs/solutions/reference-designs/ad-rpi-t1lpse-sl/ADIN2111_Power_Down_Selection.csv b/docs/solutions/reference-designs/ad-rpi-t1lpse-sl/ADIN2111_Power_Down_Selection.csv new file mode 100644 index 000000000..f80329661 --- /dev/null +++ b/docs/solutions/reference-designs/ad-rpi-t1lpse-sl/ADIN2111_Power_Down_Selection.csv @@ -0,0 +1,3 @@ +JP4 Position , Software Power-down +Across 1 and 2, Disabled +Across 2 and 3, Enabled \ No newline at end of file diff --git a/docs/solutions/reference-designs/ad-rpi-t1lpse-sl/ADIN2111_SPI_Selection.csv b/docs/solutions/reference-designs/ad-rpi-t1lpse-sl/ADIN2111_SPI_Selection.csv new file mode 100644 index 000000000..2be4c030f --- /dev/null +++ b/docs/solutions/reference-designs/ad-rpi-t1lpse-sl/ADIN2111_SPI_Selection.csv @@ -0,0 +1,3 @@ +JP3 Position , SPI Mode +Across 1 and 2, AD (Generic SPI) +Across 2 and 3, OA (OPEN Alliance SPI) \ No newline at end of file diff --git a/docs/solutions/reference-designs/ad-rpi-t1lpse-sl/SPoE_PSE_Power_Class_Requirements.csv b/docs/solutions/reference-designs/ad-rpi-t1lpse-sl/SPoE_PSE_Power_Class_Requirements.csv new file mode 100644 index 000000000..1105f9bea --- /dev/null +++ b/docs/solutions/reference-designs/ad-rpi-t1lpse-sl/SPoE_PSE_Power_Class_Requirements.csv @@ -0,0 +1,7 @@ +Class Symbol and Unit, Class Description , Class 10, Class 11, Class 12, Class 13, Class 14, Class 15 +VPSE (V) , PSE output voltage, 20 to 30, 20 to 30, 20 to 30, 50 to 58, 50 to 58, 50 to 58 +IPI (MAX) (mA) , Cable current , 92 , 240 , 632 , 231 , 600 , 1579 +PCLASS (MIN) (W) , PSE output power , 1.85 , 4.8 , 12.63 , 11.54 , 30 , 79 +VPD (MIN) (V) , PD input voltage , 14 , 14 , 14 , 35 , 35 , 35 +PPD (MAX) (W) , PD power , 1.23 , 3.2 , 8.4 , 7.7 , 20 , 52 +RLINK_SEG_LOOP (Ω) , Cable resistance , 65 , 25 , 9.5 , 65 , 25 , 9.5 \ No newline at end of file diff --git a/docs/solutions/reference-designs/ad-rpi-t1lpse-sl/SPoE_PSE_Power_Class_Selection_High_Side.csv b/docs/solutions/reference-designs/ad-rpi-t1lpse-sl/SPoE_PSE_Power_Class_Selection_High_Side.csv new file mode 100644 index 000000000..c563cd149 --- /dev/null +++ b/docs/solutions/reference-designs/ad-rpi-t1lpse-sl/SPoE_PSE_Power_Class_Selection_High_Side.csv @@ -0,0 +1,3 @@ +PD Class, JP3 Position , JP4 Position , JP9 Position , JP11 Position +12/14 , Across 1 and 2, Across 1 and 2, Across 1 and 2, Across 1 and 2 +11/13 , Across 2 and 3, Across 2 and 3, Across 2 and 3, Across 2 and 3 diff --git a/docs/solutions/reference-designs/ad-rpi-t1lpse-sl/SPoE_PSE_Power_Class_Selection_Low_Side.csv b/docs/solutions/reference-designs/ad-rpi-t1lpse-sl/SPoE_PSE_Power_Class_Selection_Low_Side.csv new file mode 100644 index 000000000..6e5ea1781 --- /dev/null +++ b/docs/solutions/reference-designs/ad-rpi-t1lpse-sl/SPoE_PSE_Power_Class_Selection_Low_Side.csv @@ -0,0 +1,3 @@ +PD Class, JP17 Position , JP19 Position , JP13 Position , JP15 Position +12/14 , Across 1 and 2, Across 1 and 2, Across 1 and 2, Across 1 and 2 +11/13 , Across 2 and 3, Across 2 and 3, Across 2 and 3, Across 2 and 3 diff --git a/docs/solutions/reference-designs/ad-rpi-t1lpse-sl/USB_PD_Controller_Configuration.csv b/docs/solutions/reference-designs/ad-rpi-t1lpse-sl/USB_PD_Controller_Configuration.csv new file mode 100644 index 000000000..70dbc4442 --- /dev/null +++ b/docs/solutions/reference-designs/ad-rpi-t1lpse-sl/USB_PD_Controller_Configuration.csv @@ -0,0 +1,7 @@ + , MIN (MAX), MIN (MAX) , MIN (MAX) + , P36 (P41), P34 (P40) , P31 (P38) +5V , OPEN , OPEN , OPEN +9V , OPEN , OPEN , SHORT +12V, OPEN , SHORT , OPEN +15V, OPEN , SHORT , SHORT +20V, SHORT , OPEN / SHORT, OPEN / SHORT diff --git a/docs/solutions/reference-designs/ad-rpi-t1lpse-sl/ad-rpi-t1lpse-sl-10base-t1l-port.png b/docs/solutions/reference-designs/ad-rpi-t1lpse-sl/ad-rpi-t1lpse-sl-10base-t1l-port.png new file mode 100644 index 000000000..30915bd47 --- /dev/null +++ b/docs/solutions/reference-designs/ad-rpi-t1lpse-sl/ad-rpi-t1lpse-sl-10base-t1l-port.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ae1b5fb5d91e896a7fa72c0b13a8f502c8d914caa4ce161b1781afefceb8d4d7 +size 115007 diff --git a/docs/solutions/reference-designs/ad-rpi-t1lpse-sl/ad-rpi-t1lpse-sl-block-diagram.png b/docs/solutions/reference-designs/ad-rpi-t1lpse-sl/ad-rpi-t1lpse-sl-block-diagram.png new file mode 100644 index 000000000..3999f5a98 --- /dev/null +++ b/docs/solutions/reference-designs/ad-rpi-t1lpse-sl/ad-rpi-t1lpse-sl-block-diagram.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:18f03fcdf43dbc307e75fb04fc0adecec3fdd03f34b81257bfaa212cd3d2c59d +size 68973 diff --git a/docs/solutions/reference-designs/ad-rpi-t1lpse-sl/ad-rpi-t1lpse-sl-bottom-with-labels.png b/docs/solutions/reference-designs/ad-rpi-t1lpse-sl/ad-rpi-t1lpse-sl-bottom-with-labels.png new file mode 100644 index 000000000..821d34d66 --- /dev/null +++ b/docs/solutions/reference-designs/ad-rpi-t1lpse-sl/ad-rpi-t1lpse-sl-bottom-with-labels.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3ff42a4bf80b37e44d3945a545734b68406e7519876498268566b35d52f535d6 +size 364582 diff --git a/docs/solutions/reference-designs/ad-rpi-t1lpse-sl/ad-rpi-t1lpse-sl-s3-switch.png b/docs/solutions/reference-designs/ad-rpi-t1lpse-sl/ad-rpi-t1lpse-sl-s3-switch.png new file mode 100644 index 000000000..d9b716994 --- /dev/null +++ b/docs/solutions/reference-designs/ad-rpi-t1lpse-sl/ad-rpi-t1lpse-sl-s3-switch.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:95ef0c8e7f02c8d22a589e5844d44ead976ed1dbbcbf42e5ea5c49ca489d11ea +size 209819 diff --git a/docs/solutions/reference-designs/ad-rpi-t1lpse-sl/ad-rpi-t1lpse-sl-setup.png b/docs/solutions/reference-designs/ad-rpi-t1lpse-sl/ad-rpi-t1lpse-sl-setup.png new file mode 100644 index 000000000..e5a3cf095 --- /dev/null +++ b/docs/solutions/reference-designs/ad-rpi-t1lpse-sl/ad-rpi-t1lpse-sl-setup.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:aabafcaf5b5b2660016349ec861978df7a8656c0964bdd4616d73a1c6c199e3c +size 2282041 diff --git a/docs/solutions/reference-designs/ad-rpi-t1lpse-sl/ad-rpi-t1lpse-sl-spoe-classes.png b/docs/solutions/reference-designs/ad-rpi-t1lpse-sl/ad-rpi-t1lpse-sl-spoe-classes.png new file mode 100644 index 000000000..232189d50 --- /dev/null +++ b/docs/solutions/reference-designs/ad-rpi-t1lpse-sl/ad-rpi-t1lpse-sl-spoe-classes.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4e7ed87a6a81bac386cf11e5b60fc230e469a77f1aba4edbb2b4fb5c1f175096 +size 210469 diff --git a/docs/solutions/reference-designs/ad-rpi-t1lpse-sl/ad-rpi-t1lpse-sl-static-ip-location.png b/docs/solutions/reference-designs/ad-rpi-t1lpse-sl/ad-rpi-t1lpse-sl-static-ip-location.png new file mode 100644 index 000000000..6c4cbf4dd --- /dev/null +++ b/docs/solutions/reference-designs/ad-rpi-t1lpse-sl/ad-rpi-t1lpse-sl-static-ip-location.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ab7a2fea687dca9beb6ce4735157b160c6db28574f3811797c42e547fd0132a1 +size 1641481 diff --git a/docs/solutions/reference-designs/ad-rpi-t1lpse-sl/ad-rpi-t1lpse-sl-static-ip-result.png b/docs/solutions/reference-designs/ad-rpi-t1lpse-sl/ad-rpi-t1lpse-sl-static-ip-result.png new file mode 100644 index 000000000..30e2e01ac --- /dev/null +++ b/docs/solutions/reference-designs/ad-rpi-t1lpse-sl/ad-rpi-t1lpse-sl-static-ip-result.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b6598c86cc37c4c0a218adf67241d8fcd0dcd3baaff892b9a27214f4a4ecf171 +size 1696630 diff --git a/docs/solutions/reference-designs/ad-rpi-t1lpse-sl/ad-rpi-t1lpse-sl-static-ip-set-eth0-down.png b/docs/solutions/reference-designs/ad-rpi-t1lpse-sl/ad-rpi-t1lpse-sl-static-ip-set-eth0-down.png new file mode 100644 index 000000000..8d607b844 --- /dev/null +++ b/docs/solutions/reference-designs/ad-rpi-t1lpse-sl/ad-rpi-t1lpse-sl-static-ip-set-eth0-down.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:22449dec4ac213b9fa9311c672c04a75a9c798078e007b80cd42a9714ba5dc96 +size 1680327 diff --git a/docs/solutions/reference-designs/ad-rpi-t1lpse-sl/ad-rpi-t1lpse-sl-static-ip-set-eth0-up.png b/docs/solutions/reference-designs/ad-rpi-t1lpse-sl/ad-rpi-t1lpse-sl-static-ip-set-eth0-up.png new file mode 100644 index 000000000..6e7b1390e --- /dev/null +++ b/docs/solutions/reference-designs/ad-rpi-t1lpse-sl/ad-rpi-t1lpse-sl-static-ip-set-eth0-up.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:601e194c962a40eea559e20e58f8d9c092f9efefbb00f69357a6e180d76fcff8 +size 1685626 diff --git a/docs/solutions/reference-designs/ad-rpi-t1lpse-sl/ad-rpi-t1lpse-sl-static-ip-set-ip.png b/docs/solutions/reference-designs/ad-rpi-t1lpse-sl/ad-rpi-t1lpse-sl-static-ip-set-ip.png new file mode 100644 index 000000000..10d4864e4 --- /dev/null +++ b/docs/solutions/reference-designs/ad-rpi-t1lpse-sl/ad-rpi-t1lpse-sl-static-ip-set-ip.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:040a4f153e19e845226edf4925f4d9e25055dd2f8ce9b8e3513a65037c7a3922 +size 1876582 diff --git a/docs/solutions/reference-designs/ad-rpi-t1lpse-sl/ad-rpi-t1lpse-sl-top-iso.png b/docs/solutions/reference-designs/ad-rpi-t1lpse-sl/ad-rpi-t1lpse-sl-top-iso.png new file mode 100644 index 000000000..e87b95386 --- /dev/null +++ b/docs/solutions/reference-designs/ad-rpi-t1lpse-sl/ad-rpi-t1lpse-sl-top-iso.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b9e6fd5d8f762a977abc5b4dfb1877dd6f8737c00642f5a09e4b14358214bde8 +size 425597 diff --git a/docs/solutions/reference-designs/ad-rpi-t1lpse-sl/ad-rpi-t1lpse-sl-top-with-labels.png b/docs/solutions/reference-designs/ad-rpi-t1lpse-sl/ad-rpi-t1lpse-sl-top-with-labels.png new file mode 100644 index 000000000..afdf9829b --- /dev/null +++ b/docs/solutions/reference-designs/ad-rpi-t1lpse-sl/ad-rpi-t1lpse-sl-top-with-labels.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8706a559c65aac1bc2ec89763aded529ee5eade976ae9010fa1706ff9881c756 +size 392684 diff --git a/docs/solutions/reference-designs/ad-rpi-t1lpse-sl/ad-t1lusb2-network.png b/docs/solutions/reference-designs/ad-rpi-t1lpse-sl/ad-t1lusb2-network.png new file mode 100644 index 000000000..b1140ba1e --- /dev/null +++ b/docs/solutions/reference-designs/ad-rpi-t1lpse-sl/ad-t1lusb2-network.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d8086742aa161d26e328f0b35c33b4321257d239d6976769063418058d4b58ba +size 9134 diff --git a/docs/solutions/reference-designs/ad-rpi-t1lpse-sl/index.rst b/docs/solutions/reference-designs/ad-rpi-t1lpse-sl/index.rst new file mode 100644 index 000000000..54bc2067a --- /dev/null +++ b/docs/solutions/reference-designs/ad-rpi-t1lpse-sl/index.rst @@ -0,0 +1,493 @@ +.. _ad-rpi-t1lpse-sl: + +AD-RPI-T1LPSE-SL +================ + +2-port 10BASE-T1L Field Switch with SPoE PSE +"""""""""""""""""""""""""""""""""""""""""""" + +General Description +------------------- + +.. figure:: ad-rpi-t1lpse-sl-top-iso.png + :width: 400 px + :align: right + + AD-RPI-T1LPSE-SL Board + +The :adi:`AD-RPI-T1LPSE-SL ` is a 10BASE-T1L MAC/PHY +interface with Single Pair Power over Ethernet (SPoE), designed for developing +field devices and applications on the Raspberry Pi platform. It functions as +Power Sourcing Equipment (PSE), capable of delivering power to other devices +over a 10BASE-T1L network. + +The board can be powered via USB-C (*M1*, up to 20V) or through a Pluggable +Terminal Block (*P21*, up to 60V). A synchronous step-down DC-DC converter +supplies a regulated 5V to the Raspberry Pi. + +The system supports SPoE Class 10–12 (nominal 24V) and Class 13–14 (nominal +55V), enabling flexible power configurations for various industrial and +embedded applications. + +Designed for use on the Raspberry Pi platform, the AD-RPI-T1LPSE-SL hardware +features a 40-pin GPIO header and uses an extended version of the standard HAT. + +Evaluation Board Hardware +------------------------- + +Primary Side +~~~~~~~~~~~~ + +.. figure:: ad-rpi-t1lpse-sl-top-with-labels.png + + AD-RPI-T1LPSE-SL Primary Side + +10BASE-T1L Ports (P1 and P2) +^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +.. figure:: ad-rpi-t1lpse-sl-10base-t1l-port.png + :width: 350 px + + 10BASE-T1L Ports + +The :adi:`AD-RPI-T1LPSE-SL ` evaluation board features two +10BASE-T1L ports, allowing connection to up to two PDs. Each port supports +independent control of power sourcing and data transmission. + +*P1* and *P2* are 3-pin terminal blocks designed for twisted pair cables, with +optional shielding. These ports deliver class-dependent DC voltage to connected +PDs and transmit AC-coupled data signals for 10BASE-T1L communication. Both +ports include protection against overvoltage and electrostatic discharge (ESD) +events. + +When the board is powered via USB-C, the default output voltage is 24V, +generated by the :adi:`LT3757A` flyback boost converter, suitable for SPoE +Classes 10–12. To enable SPoE Classes 13–14, which require 54V, switch *S3* to +activate the higher voltage output. + +.. figure:: ad-rpi-t1lpse-sl-s3-switch.png + :width: 350 px + + SPoE Voltage Switch + +The USB-C uses the :adi:`MAX77958 ` standalone USB Power Delivery +(PD) controller, which can be programmed using the **P49** header. When power +is supplied via the terminal block **P21**, the voltage can be set to 24V or +55V using the customers power supply. The supply port can be selected via the +**S2** switch. + +In either of the cases, to power the Raspberry Pi, 5V is generated using the +:adi:`MAX17573`. + +ADIN2111 +^^^^^^^^^ + +The onboard :adi:`ADIN2111` PHY provides the 10BASE-T1L connection to the host +platform board. The :adi:`ADIN2111` is connected to the Raspberry Pi using the +SPI0 port of the Raspberry Pi. + +The :adi:`ADIN2111` features selectable peak-to-peak transmit voltage levels of +either 1.1V or 2.4V. These levels can be configured by adjusting the P6 and P4 +solder jumpers for PHY1 and PHY2, respectively: + +- Disconnected: 2.4V +- Shorted: 1.1V + +The generic SPI protocol is half duplex. Therefore, it is not possible to write +frame data into the MAC_TX register and read from the MAC_RX register at the +same time. To achieve full duplex transmission on Ethernet at 10 Mbps, OPEN +Alliance SPI must be used. To select which SPI protocol to use, the **JP1** +(located on the bottom of the board) solder jumper should be configured as +follows: + +.. csv-table:: + :file: ADIN2111_SPI_Selection.csv + +The :adi:`ADIN2111` supports software power-down functionality for each port +independently after power-up or reset. To enable this feature: + +- For PHY1, short the P8 jumper. +- For PHY2, configure the JP2 solder jumper as follows: + +.. csv-table:: + :file: ADIN2111_Power_Down_Selection.csv + +LTC4296 +^^^^^^^ + +The :adi:`LTC4296` is a five port, single-pair power over Ethernet +(SPoE), power sourcing equipment (PSE) controller. The LTC4296-1 is designed +for interoperability with powered devices (PDs) in 24 V or 54 V systems. PD +classification via the serial communication classification protocol (SCCP) and +maintain full voltage signature (MFVS) ensure full operating voltage is only +applied to the cable when a PD is present. PD initiated sleep and wake-up are +supported. Telemetry, status, and software control features are accessed via +SPI bus interface with packet error code (PEC) protection. + +The LTC4296 is directly powered from the :adi:`LT3757A ` flyback boost +converter or from the 24V or 55V power supply connected to the **P21** terminal +block. + +The device by default is configured to operate in SPoE Class 12 (24V nominal) or +SPoE Class 14 (54V nominal) mode. In order to use classes 11 and 13, the +following solder jumper configurations are required: + +.. figure:: ad-rpi-t1lpse-sl-spoe-classes.png + :width: 475 px + + SPoE PD Power Class Jumpers + +.. csv-table:: SPoE PSE High Side Circuit Breaker Resistor Selection Table + :file: SPoE_PSE_Power_Class_Selection_High_Side.csv + +.. csv-table:: SPoE PSE Low Side Sensing Resistor Selection Table + :file: SPoE_PSE_Power_Class_Selection_Low_Side.csv + +The :adi:`LTC4296` also supports SPoE Class 10. To enable this functionality, +specific resistor changes are required: + +High-side circuit breaker resistors: + +- For PORT1, replace R15 or R16 with 1.6Ω, 1/10W resistors. +- For PORT2, replace R49 or R50 with 1.6Ω, 1/10W resistors. + +Low-side sensing resistors: + +- For PORT1, replace R19 or R20 with 0.4Ω, 1/10W resistors. +- For PORT2, replace R53 or R54 with 0.4Ω, 1/10W resistors. + +The complete power requirements for the SPoE classes are shown in the table +below: + +.. csv-table:: SPoE PSE Power Class Requirements + :file: SPoE_PSE_Power_Class_Requirements.csv + +Secondary Side +~~~~~~~~~~~~~~ + +.. figure:: ad-rpi-t1lpse-sl-bottom-with-labels.png + + AD-RPI-T1LPSE-SL Secondary Side + +The secondary side of the :adi:`AD-RPI-T1LPSE-SL ` evaluation +board features a Raspberry Pi compatible 40-pin GPIO header, which is used to +connect the board to the Raspberry Pi and the serial communication and +classification protocol (SCCP) drivers. The USB-C uses a standalone USB Power +Delivery (PD) controller, can be configured using the following jumper +configurations: + +.. csv-table:: USB-C Power Delivery Controller Configuration + :file: USB_PD_Controller_Configuration.csv + +.. warning:: + + Although the PD supports 5V input, we do not recommend using it because the + :adi:`MAX17573` requires a voltage higher than 5V to reliably generate a + stable 5V output for the Raspberry Pi. + +.. attention:: + + Using a 9V power source is not recommended for Class 14 operation without + external active cooling. The boost converter generates significant heat at + this voltage, which could potentially damage the Raspberry Pi or the + :adi:`AD-RPI-T1LPSE-SL ` evaluation board. + +.. important:: + + A power supply of at least 15V is recommended to help mitigate excess heat + and prevent potential damage to the system. + +System Setup +------------ + +**Required Equipment** + +**Hardware** + +- :adi:`AD-RPI-T1LPSE-SL ` Circuit Evaluation Board +- Raspberry Pi Model 4B+ (or higher) +- Micro-SD Card for Raspberry Pi +- 10BASE-T1L media converter, either: + + - :adi:`EVAL-ADIN1100EBZ ` Product Evaluation Board + - :adi:`AD-T1LUSB2.0-EBZ ` USB2.0 to 10BASE-T1L + Interface Board + - Other 10BASE-T to 10BASE-T1L media converter + +- Power Source Options: + + - USB-C Input: Powered via a DC power supply using a USB-C connector. + - External DC Supply: Any external DC power source with an output of + either 24V or 55V. + +- Host Windows, Linux, or Mac computer + +**Software** + +- :ref:`kuiper` + +**Documentation** + +- :adi:`AD-RPI-T1LPSE-SL` Circuit Note + +Block Diagram +~~~~~~~~~~~~~ + +Setup with DC Power Supply with USB-C or other DC Power Supply +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +.. figure:: ad-rpi-t1lpse-sl-block-diagram.png + + AD-RPI-T1LPSE-SL Block Diagram + +.. _software-setup: + +Software Setup +~~~~~~~~~~~~~~ + +Downloading and Flashing the Micro-SD Card +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +To use the :adi:`AD-RPI-T1LPSE-SL ` with the Raspberry Pi, the +micro-SD card should be preloaded with :ref:`kuiper`, a distribution based on +Raspbian from the Raspberry Pi Foundation that incorporates Linux drivers for +ADI products as well as tools and other software products. + +Complete instructions, including where to download the SD card image, how to +write it to the micro-SD card, and how to configure the system are provided at +:ref:`kuiper`. + +Configuring the Micro-SD Card +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +The Linux kernel requires a matching device tree overlay to identify the +devices on the AD-RPI-T1LPSE-SL. The overlay table is included with the +:ref:`kuiper` and simply needs to be enabled. + +To do this, follow the Hardware Configuration procedure under **Configuring +the SD Card for Raspberry Pi Projects** in the :ref:`kuiper` page. +Enable the AD-RPI-T1LPSE-SL overlay by adding the following line to *config.txt* +for class 12: + +:: + + dtoverlay=rpi-t1lpse-class12 + +or for class 14: + +:: + + dtoverlay=rpi-t1lpse-class14 + +Save the changes and reboot the system by entering the following command in the +console: + +.. shell:: + :user: analog + :group: analog + :show-user: + + $sudo reboot + +.. _setting-up-static-ip: + +Setting Up a Static IP +---------------------- + +To set up a static IP address for the AD-RPI-T1LPSE-SL, the user has to modify +the IPv4 address of the chosen network interface. This can be done by +right-clicking in the top right corner the network icon and selecting Wireless +& Wired Network Settings. + +.. figure:: ad-rpi-t1lpse-sl-static-ip-location.png + :width: 400 px + + Network Settings Location + +Next to the **interface** field select the wanted interface (e.g. **eth1 / +eth2**) and type in the chosen IP address as shown below: + +.. figure:: ad-rpi-t1lpse-sl-static-ip-set-ip.png + :width: 400 px + + Static IP Address Configuration + +The next set is to reset the ip link, which can be done by entering the +following command in a terminal: + +.. shell:: + :user: analog + :group: analog + :show-user: + + $sudo ip link set eth0 down + +.. figure:: ad-rpi-t1lpse-sl-static-ip-set-eth0-down.png + :width: 400 px + + Setting eth0 down + +Next, set the interface up again by entering the following command: + +.. shell:: + :user: analog + :group: analog + :show-user: + + $sudo ip link set eth0 up + +.. figure:: ad-rpi-t1lpse-sl-static-ip-set-eth0-up.png + :width: 400 px + + Setting eth0 up + +If everything was done correctly the interface should be up and running with +the static IP address set. To verify this, enter the following command in the +console, the next to the **inet** field the static IP address should be shown: + +.. shell:: + :user: analog + :group: analog + :show-user: + + $ip a + +.. figure:: ad-rpi-t1lpse-sl-static-ip-result.png + :width: 400 px + + Static IP Address Result + +Basic Operation +~~~~~~~~~~~~~~~ + +.. figure:: ad-rpi-t1lpse-sl-setup.png + + Complete Evaluation Setup + +To establish a 10BASE-T1L connection to a Raspberry Pi using the +:adi:`AD-RPI-T1LPSE-SL ` evaluation board and ping the +Raspberry Pi follow the below procedure: + +#. Ensure that the jumpers and switches of the + :adi:`EVAL-ADIN1100EBZ ` are configured to the default + settings. + +#. Insert the micro-SD card into its slot on the Raspberry Pi. + +#. Connect the :adi:`AD-RPI-T1LPSE-SL ` circuit evaluation + board to the Raspberry Pi GPIO header. + +#. Using a twisted-pair cable, connect **P2** on the + :adi:`AD-T1LUSB2.0-EBZ ` USB2.0 to 10BASE-T1L Interface + to the **P2** terminal block on the :adi:`AD-RPI-T1LPSE-SL + ` + +#. Using a USB-C cable, connect **P1** on the + :adi:`AD-T1LUSB2.0-EBZ ` evaluation board to a USB port on + the computer. + +#. *Operation with USB-C DC Power Supply: (Skip to step 7 if using a the P21 + terminal block)* + + * Set the **S3** switch to supply to either 24V (Class 12) or + 55V (Class 14), depending on the overlay added to the *config.txt*. + * Set the **S2** switch towards the **USB-C**. + +#. *Operation with external DC Power Supply (Using the P21 terminal block):* + + * Using wires, connect the **P21** terminal block on the + :adi:`AD-RPI-T1LPSE-SL ` + * Set the **S2** switch towards the **Terminal Block**. + +#. Wait for the **DS1** LED on the + :adi:`AD-RPI-T1LPSE-SL ` circuit evaluation board and + the **DS1**, **DS2** LEDs on the :adi:`EVAL-ADIN1100EBZ ` + evaluation board to turn on and start blinking at the same time. This + indicates that a 10BASE-T1L link has been established. + +#. On the host PC, change the IP address of the AD-T1LUSB2.0-EBZ: + + * From the start menu open the **Control Panel** and click on **Network + and Internet** + * Click on **View network status and tasks** + + You should see two networks. + + .. figure:: ad-t1lusb2-network.png + :width: 400 px + + Network Connections + + * Click on the **Connections: Ethernet** and click on **Properties** + * Select **Internet Protocol Version 4 (TCP/IPv4)** and click on + **Properties** + * Select **Use the following IP address:** and type in the following **IP + address** and **Subnet mask**: + :: + + IP address: 192.168.90.zzz + Subnet mask: 255.255.0.0 + + where **zzz** is a number between 1 and 254, currently unused in the + network (for example, 10 cannot be used, since it is used by the + AD-RPI-T1LPSE-SL). + * Click on **OK** to save the changes and close the dialog boxes. + +#. Open up a terminal and ping the AD-RPI-T1LPSE-SL: + + :: + + ping 192.168.90.10 + + .. figure:: ping-result.png + :width: 400 px + + Result + +Schematic, PCB Layout, Bill of Materials +---------------------------------------- + +.. admonition:: Download + + :download:`AD-RPI-T1LPSE-SL Design & Integration Files + ` + + - Schematics + - PCB Layout + - Bill of Materials + - Allegro Project + +Additional Information and Useful Links +--------------------------------------- + +- :adi:`AD-RPI-T1LPSE-SL Design Support Package ` +- :adi:`ADIN2111 Product Page ` +- :adi:`MAX17573 Product Page ` +- :adi:`MAX77958 Product Page ` +- :adi:`LTC4296 Product Page ` +- :adi:`LT3757A Product Page ` +- :dokuwiki:`ADIN2111 Linux Driver ` + +Hardware Registration +--------------------- + +.. tip:: + + Receive software update notifications, documentation updates, view the latest + videos, and more when you :adi:`register ` your + hardware. + +Sample Application +------------------ + +.. toctree:: + :maxdepth: 2 + :glob: + + */index + +Help and Support +------------------- + +For questions and more information about this product, connect with us through +the Analog Devices :ez:`/` . diff --git a/docs/solutions/reference-designs/ad-rpi-t1lpse-sl/ping-result.png b/docs/solutions/reference-designs/ad-rpi-t1lpse-sl/ping-result.png new file mode 100644 index 000000000..7b93383d4 --- /dev/null +++ b/docs/solutions/reference-designs/ad-rpi-t1lpse-sl/ping-result.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6dcb3a412d7273472f26399f9756dec9a25a66c02b12d45d99c0f3f80e239d19 +size 37240 diff --git a/docs/solutions/reference-designs/ad-rpi-t1lpse-sl/sample_application/ad-rpi-t1lpse-sl-rpiz-sample-application-console-output.png b/docs/solutions/reference-designs/ad-rpi-t1lpse-sl/sample_application/ad-rpi-t1lpse-sl-rpiz-sample-application-console-output.png new file mode 100644 index 000000000..f13b65032 --- /dev/null +++ b/docs/solutions/reference-designs/ad-rpi-t1lpse-sl/sample_application/ad-rpi-t1lpse-sl-rpiz-sample-application-console-output.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3efa5b1c9fbfbd0389a10918b71fc8a271f8ab4b5ebb18163656401d6162b93f +size 207336 diff --git a/docs/solutions/reference-designs/ad-rpi-t1lpse-sl/sample_application/ad-rpi-t1lpse-sl-rpiz-sample-application-network-chmod.png b/docs/solutions/reference-designs/ad-rpi-t1lpse-sl/sample_application/ad-rpi-t1lpse-sl-rpiz-sample-application-network-chmod.png new file mode 100644 index 000000000..e159412c8 --- /dev/null +++ b/docs/solutions/reference-designs/ad-rpi-t1lpse-sl/sample_application/ad-rpi-t1lpse-sl-rpiz-sample-application-network-chmod.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fcbf8e757cb1e87d4c0913abc613557447878b8017796297b04b8f5bdafdc57e +size 234289 diff --git a/docs/solutions/reference-designs/ad-rpi-t1lpse-sl/sample_application/ad-rpi-t1lpse-sl-rpiz-sample-application-network-setup.png b/docs/solutions/reference-designs/ad-rpi-t1lpse-sl/sample_application/ad-rpi-t1lpse-sl-rpiz-sample-application-network-setup.png new file mode 100644 index 000000000..0f8769371 --- /dev/null +++ b/docs/solutions/reference-designs/ad-rpi-t1lpse-sl/sample_application/ad-rpi-t1lpse-sl-rpiz-sample-application-network-setup.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:937e0587d80f16252b9e4eb6921dc6800188240e90bfd02e695202b1cc4006f6 +size 236211 diff --git a/docs/solutions/reference-designs/ad-rpi-t1lpse-sl/sample_application/ad-rpi-t1lpse-sl-rpiz-sample-application-nmcli-conn-show.png b/docs/solutions/reference-designs/ad-rpi-t1lpse-sl/sample_application/ad-rpi-t1lpse-sl-rpiz-sample-application-nmcli-conn-show.png new file mode 100644 index 000000000..913ca7cef --- /dev/null +++ b/docs/solutions/reference-designs/ad-rpi-t1lpse-sl/sample_application/ad-rpi-t1lpse-sl-rpiz-sample-application-nmcli-conn-show.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e14e2201d922d95462a8b48bf893e85563978ce43838a0476423789e8069ff14 +size 245745 diff --git a/docs/solutions/reference-designs/ad-rpi-t1lpse-sl/sample_application/ad-rpi-t1lpse-sl-rpiz-sample-application-ping.png b/docs/solutions/reference-designs/ad-rpi-t1lpse-sl/sample_application/ad-rpi-t1lpse-sl-rpiz-sample-application-ping.png new file mode 100644 index 000000000..b18c6e711 --- /dev/null +++ b/docs/solutions/reference-designs/ad-rpi-t1lpse-sl/sample_application/ad-rpi-t1lpse-sl-rpiz-sample-application-ping.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5d525974dce653d11c5b3f0c4fb776821fd95163ed4e35246914820af66a537c +size 279399 diff --git a/docs/solutions/reference-designs/ad-rpi-t1lpse-sl/sample_application/ad-rpi-t1lpse-sl-rpiz-sample-application-plot-output.png b/docs/solutions/reference-designs/ad-rpi-t1lpse-sl/sample_application/ad-rpi-t1lpse-sl-rpiz-sample-application-plot-output.png new file mode 100644 index 000000000..b68a26c81 --- /dev/null +++ b/docs/solutions/reference-designs/ad-rpi-t1lpse-sl/sample_application/ad-rpi-t1lpse-sl-rpiz-sample-application-plot-output.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c4c902ae195d552eb4729a4335d4983cda89b821214976b652a6597434815983 +size 23562 diff --git a/docs/solutions/reference-designs/ad-rpi-t1lpse-sl/sample_application/index.rst b/docs/solutions/reference-designs/ad-rpi-t1lpse-sl/sample_application/index.rst new file mode 100644 index 000000000..ba1865e29 --- /dev/null +++ b/docs/solutions/reference-designs/ad-rpi-t1lpse-sl/sample_application/index.rst @@ -0,0 +1,289 @@ +Temperature Controller Application +================================== + +This sample application demonstrates a basic Temperature Controller using the +:adi:`AD-AD-RPI-T1LPSE-SL-RPIZ` board, two :adi:`AD-SWIOT1L-SL` boards, a +Raspberry Pi, a fan actuator and a temperature sensor. The system reads +temperature data and adjusts fan speed (via SWIOT1L output) based on +configurable thresholds and hysteresis. + +Prerequisites +------------- + +- Python 3.8 or newer (3.8–3.11 tested with pyadi-iio). Ensure that a + compatible version is installed on your system before continuing. Older + versions (<3.8) may not work reliably with pyadi-iio. + +- Git command-line tools installed. + +- Raspberry Pi with :adi:`Kuiper 2` image installed. Follow the instructions in + the :external+adi-kuiper-gen:doc:`index` documentation to prepare the + Raspberry Pi. + +- Ensure that the first two **Software Setup** steps described in + :ref:`software-setup` (*Downloading and Flashing the Micro-SD Card* and + *Configuring the Micro-SD Card*) are performed **with the Kuiper 2 image**, + not with previous Kuiper releases. These steps must be redone after flashing + Kuiper 2 to ensure proper compatibility before continuing. + + +Hardware Setup +-------------- + +.. figure:: temperature_controller_system.png + :align: center + :width: 500 + + Temperature Controller System + +**Equipment Needed** + +- 1x :adi:`AD-AD-RPI-T1LPSE-SL-RPIZ` Board +- 2x :adi:`AD-SWIOT1L-SL` Boards +- 1x Raspberry Pi 4 Model B running Kuiper 2 +- 1x :adi:`TMP01` Temperature Sensor +- 1x MC002103 DC Axial Fan +- 1x Raspberry Pi USB Type-C Power Supply (5V, 3A) + +**Setup Procedure** + +1. Connect the :adi:`AD-AD-RPI-T1LPSE-SL-RPIZ` board to the Raspberry Pi via the + 40-pin header + +2. Connect the two :adi:`AD-SWIOT1L-SL` boards to the + :adi:`AD-AD-RPI-T1LPSE-SL-RPIZ` board via the T1L connectors + +3. Connect the first :adi:`AD-SWIOT1L-SL` board to the :adi:`TMP01` temperature + sensor + + The first SWIOT1L-SL board is used to both power the TMP01 sensor and + measure its analog output voltage (VPTAT), which encodes the temperature. + + - **Channel 3 (CH3)** is configured as a **Voltage Output** and provides + the sensor supply voltage. Connect: + + - ``CH3 SWIO`` → ``TMP01 V+`` + - ``CH3 GND`` → ``TMP01 GND`` + + - **Channel 4 (CH4)** is configured as a **Voltage Input** to measure the + TMP01 analog output. Connect: + + - ``CH4 SWIO`` → ``TMP01 VOUT`` + - ``CH4 GND`` → ``TMP01 GND`` + + .. note:: + + CH3 provides a regulated 5 V supply to power the TMP01, while CH4 is + configured as a + high-impedance voltage input with a 0–5 V range to measure the TMP01 VOUT + signal. + Both channels must share the same ground reference with the sensor. + +4. Connect the second :adi:`AD-SWIOT1L-SL` board to the fan actuator + + The second SWIOT1L-SL board drives the fan according to the control loop. + + - The fan is powered directly from channel 0, configured as a + **Voltage Output**: + + - ``CH0 SWIO`` → ``Fan +`` + - ``CH0 GND`` → ``Fan −`` + + - Connect the tachometer output to channel 1 to monitor fan speed (optional): + + - ``CH1 SWIO`` → ``Fan Tach Out`` + +5. Power the Raspberry Pi with a 5V, 3A USB Type-C power supply. + +Software Setup +-------------- + +Repository Cloning +~~~~~~~~~~~~~~~~~~ + +1. Clone the repository and checkout the *swiot* branch: + + .. shell:: + :user: analog + :group: analog + :show-user: + + $ git clone https://github.com/analogdevicesinc/pyadi-iio.git + $ cd pyadi-iio + $ git checkout swiot + +2. Install Python dependencies: + + .. shell:: + :user: analog + :group: analog + :show-user: + + $ python3 -m venv ./venv + $ source venv/bin/activate + $ pip install -e . + +Firmware Flashing +~~~~~~~~~~~~~~~~~ + +Each :adi:`AD-SWIOT1L-SL` must be updated with the provided firmware image. + +1. Follow the official update instructions here: + `Updating the AD-SWIOT1L-SL firmware `_. + +2. Repeat the process for **both boards**. + +3. Use the firmware images provided in the `pyadi-iio `_ repository, + under ``examples/rpi_t1lpse/host_setup/config/firmware``. These images + configure the boards with static IP addresses: + + - The first board will have the ``192.168.97.40`` IP address + - The second board will have the ``192.168.97.41`` IP address + +4. After flashing, verify that each board responds to ping: + + .. shell:: + :user: analog + :group: analog + :show-user: + + $ ping 192.168.97.40 + $ ping 192.168.97.41 + + .. figure:: ad-rpi-t1lpse-sl-rpiz-sample-application-ping.png + :align: center + :width: 500 + + Ping Results + +Network Setup +~~~~~~~~~~~~~ + +The SWIOT1L boards use static IP addresses. You can configure them in two ways: + +- **Manual static IP** — follow the steps on the AD-RPI-T1LPSE-SL main page + under :ref:`setting-up-static-ip`. + +- **NetworkManager profiles** — use the provided connection profiles and steps + below (recommended). + +1. From the project folder, navigate to the ``host_setup`` directory. + +2. Copy the connection profiles into NetworkManager's system folder: + + .. shell:: + :user: analog + :group: analog + :show-user: + + $ sudo cp -v "Wired connection 2" /etc/NetworkManager/system-connections/ + $ sudo cp -v "Wired connection 3" /etc/NetworkManager/system-connections/ + + .. figure:: ad-rpi-t1lpse-sl-rpiz-sample-application-network-setup.png + :align: center + :width: 500 + + Result of copying the NetworkManager profiles + +3. Ensure correct permissions: + + .. shell:: + :user: analog + :group: analog + :show-user: + + $ sudo chmod 600 /etc/NetworkManager/system-connections/Wired\ connection\ + 2 + $ sudo chmod 600 /etc/NetworkManager/system-connections/Wired\ connection\ + 3 + + .. figure:: ad-rpi-t1lpse-sl-rpiz-sample-application-network-chmod.png + :align: center + :width: 500 + + Result of changing permissions on the NetworkManager profiles + +4. Reload NetworkManager: + + .. shell:: + :user: analog + :group: analog + :show-user: + + $ sudo nmcli connection reload + +5. Verify the connections are active: + + .. shell:: + :user: analog + :group: analog + :show-user: + + $ nmcli connection show + + .. figure:: ad-rpi-t1lpse-sl-rpiz-sample-application-nmcli-conn-show.png + :align: center + :width: 500 + + Example of active NetworkManager connections + +For full host setup details (including the NetworkManager profiles and context), +see the README here: +`pyadi-iio host_setup README `_. + + +Application Execution +~~~~~~~~~~~~~~~~~~~~~ + +When executed, the demo continuously reads the temperature from the :adi:`TMP01` +sensor +and compares it against the configured thresholds. The fan is automatically +turned **ON** +once the temperature rises above ``TEMP_ON`` (default 27 °C) and turned **OFF** +once the +temperature falls below ``TEMP_OFF`` (default 26 °C). This hysteresis prevents +rapid +switching when the temperature hovers around the threshold. + +During runtime, the application prints sensor readings and fan state in the +console, +and displays two plots: + +- **Temperature vs Time** — TMP01 and ADT75 temperature measurements with ON/OFF + thresholds. +- **Fan State vs Time** — graphical representation of when the fan is active. + +Run the Temperature Controller example: + + .. shell:: + :user: analog + :group: analog + :show-user: + + $ cd examples/rpi_t1lpse + $ python3 temperature_controller.py + + .. figure:: ad-rpi-t1lpse-sl-rpiz-sample-application-console-output.png + :align: center + :width: 500 + + Example Console Output of the Temperature Controller Application + + .. figure:: ad-rpi-t1lpse-sl-rpiz-sample-application-plot-output.png + :align: center + :width: 500 + + Example Plot Result of the Temperature Controller Application + +Use Cases +^^^^^^^^^ + +This demo illustrates how the :adi:`AD-AD-RPI-T1LPSE-SL-RPIZ` platform together +with +:adi:`AD-SWIOT1L-SL` boards can be applied in: + +- **Thermal management** - automatically controlling fans in enclosures or test + setups +- **Process monitoring** - maintaining temperature ranges in small-scale + industrial or lab equipment +- **Educational examples** - demonstrating closed-loop control diff --git a/docs/solutions/reference-designs/ad-rpi-t1lpse-sl/sample_application/temperature_controller_system.png b/docs/solutions/reference-designs/ad-rpi-t1lpse-sl/sample_application/temperature_controller_system.png new file mode 100644 index 000000000..75d597691 --- /dev/null +++ b/docs/solutions/reference-designs/ad-rpi-t1lpse-sl/sample_application/temperature_controller_system.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bd54f0bef543606b4f054c8b4865796c2ec545d91b64775f5076a46f6dee450d +size 187336 diff --git a/docs/solutions/reference-designs/ad4130-pmod/ad4130-pmod-pinout.csv b/docs/solutions/reference-designs/ad4130-pmod/ad4130-pmod-pinout.csv new file mode 100644 index 000000000..f5096c1c2 --- /dev/null +++ b/docs/solutions/reference-designs/ad4130-pmod/ad4130-pmod-pinout.csv @@ -0,0 +1,7 @@ +Pin Number, Pin Function , Mnemonic, Pin Number, Pin Function , Mnemonic, +1 , Chip Select , CS _N , 7 , Interrupt 1 , INT1 +2 , Master Out Slave In , MOSI , 8 , Interrupt 2 , INT2 +3 , Master In Slave Out , MISO , 9 , Interrupt 3 , INT3 +4 , Serial Clock , SCLK , 10 , Synchronization Logic Input, SYNC_N +5 , Ground , GND , 11 , Ground , GND +6 , Digital Power , IOVDD , 12 , Digital power , IOVDD \ No newline at end of file diff --git a/docs/solutions/reference-designs/ad4130-pmod/ad4130-pmod.png b/docs/solutions/reference-designs/ad4130-pmod/ad4130-pmod.png new file mode 100644 index 000000000..c7e0bf92e --- /dev/null +++ b/docs/solutions/reference-designs/ad4130-pmod/ad4130-pmod.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2daf9cd2aa7bf60f29e78aeabba288b2f77fbb6272b2e6abbd1df04289edf79d +size 1518031 diff --git a/docs/solutions/reference-designs/ad4130-pmod/ad4130-pyadi-example.png b/docs/solutions/reference-designs/ad4130-pmod/ad4130-pyadi-example.png new file mode 100644 index 000000000..df5e1d5cc --- /dev/null +++ b/docs/solutions/reference-designs/ad4130-pmod/ad4130-pyadi-example.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9706ca8d9822090ffb37dea10d20ad6f72e8fbad12ba83893b70f6fec2c6156d +size 58363 diff --git a/docs/solutions/reference-designs/ad4130-pmod/ad4130-scopy-connected.png b/docs/solutions/reference-designs/ad4130-pmod/ad4130-scopy-connected.png new file mode 100644 index 000000000..d73e49f82 --- /dev/null +++ b/docs/solutions/reference-designs/ad4130-pmod/ad4130-scopy-connected.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:84714edd2b0102ec433b38db7449dcf4102074c84dae86d4b5468358db7ff908 +size 55523 diff --git a/docs/solutions/reference-designs/ad4130-pmod/ad4130-scopy-reference.png b/docs/solutions/reference-designs/ad4130-pmod/ad4130-scopy-reference.png new file mode 100644 index 000000000..7cf345db6 --- /dev/null +++ b/docs/solutions/reference-designs/ad4130-pmod/ad4130-scopy-reference.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9f971ae6464449e4df1dd483c612eaac7e5ec1b30f7252729e439d92eb780ade +size 80650 diff --git a/docs/solutions/reference-designs/ad4130-pmod/ad4130-scopy-setup.png b/docs/solutions/reference-designs/ad4130-pmod/ad4130-scopy-setup.png new file mode 100644 index 000000000..299741354 --- /dev/null +++ b/docs/solutions/reference-designs/ad4130-pmod/ad4130-scopy-setup.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:022122f7b5d8fe6da89f3f5148b1efc9c15cca779d0fd026ae665becac814df8 +size 44819 diff --git a/docs/solutions/reference-designs/ad4130-pmod/ad4130-scopy-temperature.png b/docs/solutions/reference-designs/ad4130-pmod/ad4130-scopy-temperature.png new file mode 100644 index 000000000..5c92a50ed --- /dev/null +++ b/docs/solutions/reference-designs/ad4130-pmod/ad4130-scopy-temperature.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:de181884a467d50541f20a3fec80780e2319c9286680f7f2f7493f422ca54172 +size 105197 diff --git a/docs/solutions/reference-designs/ad4130-pmod/eval-ad4130-8-pmdz-DesignSupport.zip b/docs/solutions/reference-designs/ad4130-pmod/eval-ad4130-8-pmdz-DesignSupport.zip new file mode 100644 index 000000000..e69de29bb diff --git a/docs/solutions/reference-designs/ad4130-pmod/eval-ad4130-8-pmdz_overall_setup.png b/docs/solutions/reference-designs/ad4130-pmod/eval-ad4130-8-pmdz_overall_setup.png new file mode 100644 index 000000000..b845eacb8 --- /dev/null +++ b/docs/solutions/reference-designs/ad4130-pmod/eval-ad4130-8-pmdz_overall_setup.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:eada34c0276fa994b25cd14d3ef324a72734683ccde07bbd19f2f22a851ba2fa +size 256611 diff --git a/docs/solutions/reference-designs/ad4130-pmod/index.rst b/docs/solutions/reference-designs/ad4130-pmod/index.rst new file mode 100644 index 000000000..5d5e29851 --- /dev/null +++ b/docs/solutions/reference-designs/ad4130-pmod/index.rst @@ -0,0 +1,405 @@ +.. _eval-ad4130-8-pmdz: + +EVAL-AD4130-8-PMDZ +================== + +Minimalist 8-channel, 24-Bit, sigma-delta ADC with PGA and FIFO SPI PMOD board +"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" + +Overview +-------- + +The :adi:`EVAL-AD4130-8-PMDZ` is a compact, low-cost, Pmod-compatible +evaluation board for the :adi:`AD4130` ultra low power, high precision, +measurement solution for low bandwidth battery operated applications. The fully +integrated analog front end (AFE) includes a multiplexer for up to 16 +single-ended or eight differential inputs, programmable gain amplifier (PGA), +24-bit sigma-delta (Σ-Δ) analog-to-digital converter (ADC), on-chip reference +and oscillator, selectable filter options, smart sequencer, sensor biasing and +excitation options, diagnostics, and newly added features to improve the +battery-operated lifetime (more than 5 years on a coin cell), that is, a first +in, first out (FIFO) buffer and duty cycling. + +- Smart transmitters +- Wireless battery and harvester powered sensor nodes +- Portable instrumentation +- Temperature measurement: thermocouple, RTD, thermistors +- Pressure measurement: bridge transducers +- Healthcare and wearables + +The AD4130-8 allows users to measure low frequency signals +with a current consumption of 28.5 μA (gain = 1) and 32.5 μA +(gain = 128) while continuously converting, and even lower average +currents when using one of the duty cycling options. The AD4130-8 +can be configured to have 8 differential inputs or 16 single-ended or +pseudo differential inputs, which connect to a crosspoint multiplex- +er, where any input pair can become a measurement channel input +to the PGA and ADC. + +Together with the reduced current consumption, the integration of +an on-chip FIFO buffer can be used in tandem with the smart +sequencer, to enable the AD4130-8 to become an autonomous +measurement system, which allows the microcontroller to sleep for +extended periods. + +Intelligent interrupt functionality gives the user a greater confidence +in both error detection and safety. The user can enable an interrupt +signal to trigger when the samples in the FIFO reach a predefined +value or when a user programmable threshold is exceeded + +.. image:: ad4130-pmod.png + :width: 350px + +Input and Output Connections and Configurations +----------------------------------------------- + +The PMOD board is small in size with dimensions approximately 2 cm in width +by 6.7 cm in length. + +Pmod Processor Connector +^^^^^^^^^^^^^^^^^^^^^^^^ + +The PMOD interface is a series of standardized digital interfaces for various +digital communication protocols such as SPI, I2C, and UART. These interface +types were standardized by Digilent, which is now a division of National +Instruments. Complete details on the Pmod specification can be found on the +`Digilent Pmod landing page `__. + +The specific interface used for the EVAL-AD4130-8-PMDZ boards is the extended +SPI. In general ADI has adopted the extended SPI connector for all PMOD devices +which have an SPI interface. It provides flexibility to add interrupts, general +purpose I/O, resets, and other digitally controlled functions. + +.. csv-table:: PMOD Pinout + :file: ad4130-pmod-pinout.csv + +AD4130 Interrupt Pins +^^^^^^^^^^^^^^^^^^^^^ + +The EVAL-AD4130-8-PMDZ features three interrupt pins that can be used as +external indicators for user-defined events. These PMOD interrupt pins are +internally connected to the single interrupt output of the AD4130, and can be +configured via software to signal either a Data Ready or FIFO Interrupt +condition. + +These interrupt signals are accessible through the SPI PMOD header. For detailed +information on individual status flags, their meanings, and how to configure +the chip to generate specific interrupts, please refer to the :adi:`AD4130` +data sheet. + +Power Supply Considerations and Configuration +--------------------------------------------- + +When using the EVAL-AD4130-8-PMDZ board, the 3.3V power supply is provided +directly by the host platform to which it is connected. Most PMOD-compatible +host boards can supply at least 100 mA, which is more than sufficient for the +power requirements of the EVAL-AD4130-8-PMDZ. + +Device Driver and Software Support +---------------------------------- + +Two device drivers and corresponding software solutions are available for the +EVAL-AD4130-8-PMDZ: + +**AD4130 no-OS Driver** + + * The :git-no-OS:`AD4130 no-OS driver ` is used + in bare-metal applications, typically running on low-power, embedded + microcontrollers. + + * The :git-no-OS:`AD4130 no-OS example project ` + uses the AD4130 no-OS driver and has several configuration options: + +.. admonition:: Download + + A zip file containing prebuilt programming files for the no-OS example + project, targeting platforms below are available at: + :git-no-OS:`ad413x.zip `. + + More details are provided in the platform-specific sections below. + +**AD4130 Linux Driver** + +* The :git-linux:`AD4130 Linux driver ` is + used in applications running the Linux operating system, typically on + larger processors and SoC devices. +* The AD4130 Linux driver uses the Industrial Input/Output (IIO) framework, + greatly simplifying the development of application code via the + cross-platform Libiio library, which is written in C and includes bindings + for Python, MATLAB, C#, and other languages. Application code can run + directly on the platform board, communicating with the device over the + local backend, or from a remote host over the network or USB backends. + +System Setup Using Raspberry Pi +------------------------------- + +The EVAL-AD4130-8-PMDZ can be used with a Raspberry Pi. + +Demo Requirements +^^^^^^^^^^^^^^^^^ + +The following is a list of items needed in order to replicate this demo. + +- **Hardware** + + - :adi:`EVAL-AD4130-8` + - :adi:`PMOD to Raspberry Pi Adapter (PMD-RPI-INTZ) ` + - Raspberry PI Zero, Zero W, 3B+, or 4 + - 16GB (or larger) Class 10 (or faster) micro-SD card + - 5Vdc, 2.5A power supply with micro USB connector (USB-C power supply + for Raspberry Pi 4) + - User interface setup (choose one): + + - HDMI monitor, keyboard, mouse plugged directly into Raspberry Pi + - Host Windows/Linux/Mac computer on the same network as Raspberry Pi + +- **Software** + + - :dokuwiki:`Kuiper Linux Image ` + + +Loading Image on SD Card +^^^^^^^^^^^^^^^^^^^^^^^^ + +In order to boot the Raspberry Pi and control the **EVAL-AD4130-8-PMDZ**, you +will need to install ADI Kuiper Linux on an SD card. Complete instructions, +including where to download the SD card image, how to write it to the SD card, +and how to configure the system are provided on the +:external+adi-kuiper-gen:doc:`Kuiper `. + +Configuring the SD Card +^^^^^^^^^^^^^^^^^^^^^^^ + +Follow the configuration procedure under **Configuring the SD Card for +Raspberry Pi Projects** at :external+adi-kuiper-gen:doc:`Kuiper `, +substituting the following lines in **config.txt**: + +:: + + dtoverlay=rpi-ad4130 + +Setting up the Hardware +^^^^^^^^^^^^^^^^^^^^^^^ + +To set up the circuit for evaluation, consider the following steps: + +#. Connect the **P9** of the **PMOD to Raspberry Pi Interposer** board at the + male header GPIO pin connector of the **Raspberry Pi** as shown below. + + .. image:: interposer.png + :width: 500px + +#. Attach the EVAL-AD4130-8-PMDZ to the Raspberry Pi Interposer Board via Port +P1. + +#. Flash the SD card with the appropriate ADI Kuiper Linux image. Insert the +flashed SD card into the Raspberry Pi's SD card slot. + +#. Use an HDMI cable to connect the Raspberry Pi to a monitor via +the mini-HDMI connector. + +#. Plug in a USB keyboard and mouse into the Raspberry Pi's USB ports. + +#. Power the Raspberry Pi by connecting a 5V power supply through the micro-USB +connector. The final setup should look similar to the picture below. + + .. image:: eval-ad4130-8-pmdz_overall_setup.png + :width: 600px + +Application Software +-------------------- + +The Libiio is a library used for interfacing with IIO devices and is required +to be installed on your computer. + +.. ADMONITION:: Download + + Download and install the latest :git-libiio:`Libiio package ` on + your machine. + +To be able to connect your device, the software must be able to create a +context. The context creation in the software depends on the backend used to +connect to the device as well as the platform where the EVAL-AD4130-8-PMDZ is +attached. The user needs to supply a **URI** which will be used in +the context creation. + +The :ref:`libiio iio_info` command is a part of the libIIO package that reports +all IIO attributes. + +Upon installation, simply enter the command on the terminal command line to +access it. + +For RPI Direct Local Access: + +.. shell:: + + $iio_info + +For Windows machine connected to Raspberry Pi: + +.. shell:: + + $iio_info -u ip: + +For example, if your Raspberry Pi has the IP address 192.168.1.7, then enter: + +.. shell:: + + $iio_info -u ip:192.168.1.7 + +.. NOTE:: + + Do note that the Windows machine and the RPI board should be connected to + the same network in order for the machine to detect the device. + +IIO Commands +^^^^^^^^^^^^ + +There are different commands that can be used to manage and control the device +being used. The :ref:`libiio iio_attr` command reads and writes IIO attributes. + +.. shell:: + + $iio_attr [OPTION]... + +To look at the context attributes on the Raspberry Pi, enter the following +command on the terminal: + +.. shell:: + + $sudo iio_attr -C + +The :ref:`libiio iio_reg` command reads or writes SPI or I2C registers in an +IIO device. This is generally not needed for end applications, but can be +useful in debugging drivers. Note that you need to specify a context using the +*-u* qualifier when you are not directly accessing the device via RPI or when +you are using the ADICUP3029 platform. + +.. shell:: + + $iio_reg -u [] + +To read the device ID (register = 0x05) of an AD4130 interfaced via RPI from a +Windows machine, enter the following code on the terminal: + +.. shell:: + + $iio_reg -u ip: ad4130 0x05 + +Scopy 2.0 +^^^^^^^^^ + +Download and install the latest version of IIO Oscilloscope from: +:git-scopy:`Scopy Installers `. + +Once done with the installation or an update of the latest Scopy, +open the application. The user needs to supply a URI which will be used in the +context creation and the instructions can be seen from the previous section. +Click and **+** icon to add a device and enter the URI of your device and then +click verify. + +.. image:: ad4130-scopy-setup.png + :width: 600px + +After this click on add device and then connect! + +.. image:: ad4130-scopy-connected.png + :width: 600px + +You can now go to the *Register map* section and check again the 0X05 register's +value. + +Data Logger +^^^^^^^^^^^ +To view ADC readings, navigate to the Data Logger tab on the left side of the +application. Enable the voltage18 to voltage19 channel and click Run. You should +observe a stable 2.5V signal, which corresponds to the internal reference +voltage of the ADC. + +.. image:: ad4130-scopy-reference.png + :width: 600px + +Additionally, you can enable the voltage16 to voltage19 channel to visualize +measurements from the internal temperature sensor. By placing your finger on +the ADC, you'll notice an increase in the voltage reading, indicating a rise in +temperature detected by the sensor. + +.. image:: ad4130-scopy-temperature.png + :width: 600px + +PyADI-IIO +^^^^^^^^^ + +:ref:`pyadi-iio` is a python abstraction module for ADI hardware with IIO +drivers to make them easier to use. This module provides device-specific APIs +built on top of the current libIIO python bindings. These interfaces try to +match the driver naming as much as possible without the need to understand the +complexities of libIIO and IIO. + +Follow the step-by-step procedure on how to install, configure, and set up +PYADI-IIO and install the necessary packages/modules needed by referring to +this :ref:`link `. + +Running the example directly on the RPi +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +After installing and configuring PYADI-IIO in your machine, you are now ready +to run python script examples. In our case, run the **ad4130_example.py** +found in the examples folder. + +.. NOTE:: + + Github link for the python sample script: :git-pyadi-iio:`AD4130 Python + Example ` + +.. shell:: + :user: analog + :group: pi + :show-user: + + $ cd /pyadi-iio/examples/ + $ sudo python ad4130_example.py + +Press enter and you will get these readings. + +.. image:: ad4130-pyadi-example.png + :width: 600px + +More information and useful links +--------------------------------- + +- :adi:`EVAL-AD4130-8-PMDZ Product Page ` +- :adi:`AD4130 Product Page ` +- :git-no-OS:`EVAL-AD4130-8-PMDZ no-OS projects ` + +Schematic, PCB Layout, Bill of Materials +---------------------------------------- + +.. ADMONITION:: Download + + :download:`EVAL-AD4130-8-PMDZ Design & Integration Files + ` + + * Schematics + * Bill of Materials + * Gerber Files + * Assembly Files + * Allegro Layout File + + +Additional Information +---------------------- + +- :ref:`pyadi-iio` +- :external+scopy:doc:`index` +- :ref:`kuiper` + +Hardware Registration +--------------------- + +.. tip:: + + Receive software update notifications, documentation updates, view the + latest videos, and more when you + `Register `__ + to receive all these great benefits and more! diff --git a/docs/solutions/reference-designs/ad4130-pmod/interposer.png b/docs/solutions/reference-designs/ad4130-pmod/interposer.png new file mode 100644 index 000000000..a9d4e296c --- /dev/null +++ b/docs/solutions/reference-designs/ad4130-pmod/interposer.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f371590927cb3e07add859d46cc2d9be05649e1a6b323393e17dd4b57802bbbe +size 221044