The EVAL-CN0575-RPIZ is a 4-layer printed circuit board (PCB) that allows evaluation of the CN0575 10BASE-T1L Field Device Development Platform with Class 12/13 Single Pair Power over Ethernet (SPoE). Designed for use on the Raspberry Pi platform, the CN0575 hardware features a 40-pin GPIO header, and follows the same mechanical dimensions as a standard HAT.
To allow board stacking and development of field device applications using Raspberry Pi HATs, an additional GPIO header with extended leads is included with each evaluation board. However, the CN0575 can also be used on its own as a basic temperature sensing field device with remote user input/output via an onboard button and LED.
The CN0575 evaluation board uses a single port 10BASE-T1L device and can be connected to a link partner using either one of the two physical connectors provided:
LED0 and LED1 are the ADIN1110 status indicators, and can be configured to display various activities via the device registers.
By default, LED0 is set to turn on when a link is established and blink when there is activity; while LED1 is disabled. Refer to the LED Control Register in the ADIN1110 data sheet for a full list of available functions.
The EVAL-CN0575-RPIZ evaluation board includes a simple button (TEST) and LED (ALERT) circuit that can be respectively used as a digital input and a general purpose indicator. This circuit is controlled by the Raspberry Pi by default (via GPIO16 and GPIO26), but can alternatively be used with external hardware by changing the appropriate jumper settings (refer to Connecting the General Purpose LED and Button to External Hardware).
The GPIO16 pin is normally pulled high in this circuit, but will read low when the TEST button is pressed.
By default, the LTC9111 SPoE PD controller included in the CN0575 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.
JP1 Shunt Position | JP2 Shunt Position | PD Class | VPD(min) | PPD(max) |
---|---|---|---|---|
Across Pins 2 and 3 | Across Pins 2 and 3 | 10 | 14 V | 1.23 W |
Across Pins 2 and 3 | No Shunt Inserted | 11 | 3.20 W | |
Across Pins 2 and 3 | Across Pins 1 and 2 | 12 | 8.40 W | |
Across Pins 1 and 2 | Across Pins 2 and 3 | 13 | 35 V | 7.70 W |
Across Pins 1 and 2 | No Shunt Inserted | 14 | 20.0 W | |
Across Pins 1 and 2 | Across Pins 2 and 3 | 15 | 52.0 W |
The CN0575 was designed and evaluated for PD Classes 12 and 13. However, Classes 10 and 11 may still be usable, depending on the power requirements of the Raspberry Pi model used (and its peripherals).
Warning: Do not use PD Classes 14 and 15. The EVAL-CN0575-RPIZ evaluation board is not designed to handle these higher power specifications.
The EVAL-CN0575-RPIZ evaluation board uses the default hardware configuration for the PHY specified in the ADIN1110 data sheet. If a different operating mode is required for the application, the ADIN1110 should first be placed into software power-down and then configured appropriately via the device registers.
Refer to the table below on setting the JP3 jumper to enable/disable the software power-down feature:
JP3 Setting | Software Power-Down Configuration |
---|---|
Open | PHY enters software PD mode after a reset operation (Default). |
Shorted | PHY does not enter software PD mode after a reset operation. |
The ADIN1110 supports both generic SPI and the OPEN Alliance SPI protocol in its communication. Refer to the table below on setting JP4 and JP5 to select the SPI protocol:
JP4 Setting | JP5 Setting | SPI Protocol |
---|---|---|
Open | Open | OPEN Alliance with Protection |
Open | Shorted | OPEN Alliance without Protection |
Shorted | Open | Generic SPI with 8-bit CRC |
Shorted | Shorted | Generic SPI without 8-bit CRC (Default) |
The I²C bus address of the onboard ADT75 temperature sensor is dependent on the settings of the JP13, JP14, and JP15 solder jumpers. Note: The CN0575 device tree overlay in ADI Kuiper Linux has the temperature sensor I²C address set to the default 0x48.
If there is a need to reassign the ADT75 address, refer to the following table:
Jumper Settings | I2C Bus Address | ||
---|---|---|---|
JP6 | JP7 | JP8 | |
B | B | B | 0x48 (Default) |
B | B | A | 0X49 |
B | A | B | 0X4A |
B | A | A | 0X4B |
A | B | B | 0X4C |
A | B | A | 0X4D |
A | A | B | 0X4E |
A | A | A | 0X4F |
By default, some functions of the EVAL-CN0575-RPIZ are connected to various GPIO pins of the Raspberry Pi. If these features will not be used in the application, the corresponding jumpers can be removed - doing this will allow these GPIO pins to be used for other external hardware.
Jumper | GPIO | Circuit Function | Description |
---|---|---|---|
JP9 | GPIO27 | ADIN1110 Reset | This an active low ADIN1110 input that resets the part when held low for >10 μs. |
JP10 | GPIO22 | ADIN1110 Link Status Output | This is an active high ADIN1110 output that indicates whether a valid 10BASE-T1L link has been established. |
JP11 | GPIO23 | Time Stamp Capture Signal | Assert this pin to timestamp the latest incoming frame received by the ADIN1110. The captured timestamp will be stored in the TS_EXT_CAPT0 and TS_EXT_CAPT1 registers. |
JP12 | GPIO24 | Time Stamp Timer Signal | This pin is connected to the TS_TIMER pin of the ADIN1110. When the TS_TIMER output is enabled in the device registers, a waveform with high and low times set by the TS_TIMER_HI and TS_TIMER_LO registers is generated. |
JP13 | GPIO6 | Overtemperature Indicator | This pin is asserted when the onboard ADT75 temperature sensor is put into one-shot mode and the temperature measurement exceeds TOS (80 °C; default value). By default, the indicator is active low and will only be de-asserted when the temperature drops below THYST (75 °C; default value). The temperature sensor can be reprogrammed to change the polarity of this pin, the de-assertion requirement, and the values of TOS and THYST. |
While normally functioning as a digital input and general purpose indicator respectively, the TEST button and ALERT LED can alternatively be used for external applications by changing the settings of the appropriate jumpers. JP14 is used to set the button connection, while JP15 is used to set the LED connection.
JP14 Setting | Connection |
---|---|
Open | TEST button is connected to GPIO16 of the Raspberry Pi (Default). |
Shorted | TEST button is not connected to the Raspberry Pi. |
JP15 Setting | Connection |
---|---|
Open | ALERT LED is connected to GPIO26 of the Raspberry Pi (Default). |
Shorted | ALERT LED is not connected to the Raspberry Pi. |
External hardware can be connected to the TEST button and ALERT LED using the BTN_IO and LED_IO test points, respectively.
To use the EVAL-CN0575-RPIZ with the Raspberry Pi, the micro-SD card should be preloaded with Analog Devices Kuiper Linux, 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 Kuiper Images.
The Linux kernel requires a matching device tree overlay to identify the devices on the EVAL-CN0575-RPIZ. The CN0575 overlay file is included with the Analog Devices Kuiper Linux 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 Kuiper Images page. Enable the CN0575 overlay by adding the following line to config.txt:
dtoverlay=rpi-cn0575
Save the file and reboot the system by entering the following command in the console:
analog@analog:~$ sudo reboot
Follow the below procedure to determine the IP address assigned by the Raspberry Pi to the EVAL-CN0575-RPIZ:
To establish a 10BASE-T1L connection to a Raspberry Pi using the EVAL-CN0575-RPIZ evaluation board and run a basic temperature measurement example, follow the below procedure:
.../pyadi-iio/examples $ sudo python lm75_example.py
A more complete example that blinks the onboard LED and reads the pushbutton is also provided. Note that this script can be run either directly on the Raspberry Pi, or from a remote host computer.
From the Raspberry Pi command line, run:
.../pyadi-iio/examples $ sudo python cn0575_example.py
Or from PowerShell on a Windows remote host, run:
...\pyadi-iio\examples> python .\cn0575_example.py
The script will attempt to automatically locate the CN0575 over the network connection. The CN0575's IIO context URI can also be passed to the script explicitly, where www.xxx.yyy.zzz is the board's IP address:
C:\temp\pyadi-iio\examples> python .\cn0575_example.py ip:www.xxx.yyy.zzz
Typical output is shown below:
Receive software update notifications, documentation updates, view the latest videos, and more when you register your hardware. Register to receive all these great benefits and more!
End of Document