> For the complete documentation index, see [llms.txt](https://docs.intrepidcs.com/vspy-3-documentation/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.intrepidcs.com/vspy-3-documentation/application-notes/phy-dashboard.md).

# PHY Dashboard

## <mark style="background-color:blue;">Note</mark>

<mark style="background-color:blue;">The Ethernet Phy Dashboard is a debugging tool. It is not intended to be used for every day work flow.</mark>

### **Two primary things are needed to work with the PHY Dashboard.**

1. The manufacturer’s data sheet of the PHY. This is needed to know the function of the registers and the format of their contents. These data sheets are usually confidential and require and NDA (Non Disclosure Agreement) with the manufacturer.
2. The address of the PHY in the device and protocol used. If your device is not listed below, please contact [support@intrepidcs.com](mailto:support%40intrepidcs.com).

<div align="left"><figure><img src="/files/Lt6KwYJZCgWZ16lZlcPo" alt=""><figcaption></figcaption></figure></div>

### Opening the PHY Dashboard

The PHY Dashboard can be opened from the Embedded Tools menu in Vehicle Spy (shown below)

<figure><img src="/files/NjWJN7qx7l0DZEyvCGWG" alt=""><figcaption></figcaption></figure>

### Register Access

### <mark style="background-color:blue;">**MDIO protocol**</mark>

<mark style="background-color:blue;">Most Ethernet Phys communicate using MDIO protocol (Management Data Input/Output). Each frame is 32 bits. There are 2 start bits, a 2 bit operation code, 5 bit phy address, 5 bit register address, 2 bit turn around delay, and 16 bit data.</mark>

### Clause 22

The initial protocol, IEEE 802.3 Clause 22, was designed to read or write 32 registers within 32 devices. Each read/write is done in one operation.

* Phy Address 5 bits (0 – 31 decimal)
* Register address 5 bits (0 – 31 decimal) or (0 – 1F hex)
* Data 16 bits

<figure><img src="/files/gKkOhlU5LTyonutYAaOB" alt=""><figcaption></figcaption></figure>

### <mark style="background-color:blue;">Page Register</mark>

<mark style="background-color:blue;">Some Ethernet Phy manufacturers added a page register to allow for more registers in Clause 22. The page can be 0 – 255 decimal. If the Phy does not support pages, then page will be ignored. When using pages, reads and writes can no longer be performed in one operation. Instead you must write to the page register and then before any other process changes the page, you can read or write the destination register. If another process were to change the page register before you finish, the result will be an read the wrong register or an write to wrong register which may cause the Phy to stop working.</mark>

### Clause 45

As Ethernet Phys became more complicated and supported different speeds and connections, IEEE 802.3 Clause 45 was added. Because the Register Address is now 16 bits, each read/write takes at 2 operations. The first operation is always writing the Register Address that you want to use in the next operation. The second is the actual read or write. There is also a special read that increments the address after each read which allows you to write a starting address and then read a whole block of registers.

* Port 5 bits (this is equivalent to the Phy Address)
* Device 5 bits (this is similar to the page)
* Register address 16 bits (this allows 65536 registers in each device)
* Data 16 bits

<figure><img src="/files/u6DzuQxPNbi1NEqOzRN5" alt=""><figcaption></figcaption></figure>

### VSpy Operation

* Add – use this button to add MDIO operations. Ctrl-S saves screen contents to VS3 file.
* Delete – deletes the currently selected item or item.
* Delete All – deletes all operations
* Read One Time – performs all reads from the list once. No writes are performed.
* Write One Time – performs all writes from the list once. No reads are performed.
* All One Time – performs every item in the list once.
* Send Selected – performs only the selected item or items once.
* Start Monitor – performs all reads once per second.
* Stops Monitor – stops the monitor operation.

*Note: all values in Hex except Phy Address/Port*

<figure><img src="/files/BvWe5Ga6stTiXNADzBFj" alt=""><figcaption></figcaption></figure>

### Examples

#### Clause 22 Example:

<figure><img src="/files/Z8sguwAzgn2ztYcKTFij" alt=""><figcaption></figcaption></figure>

* Line 1 writes soft reset to phy address 16, using Clause 22
* Line 2 reads Phy ID Reg1 from phy address 16 using Clause 22
* Line 3 reads Phy ID Reg2 from phy address 16 using Clause 22

#### Clause 45 Exampl&#x65;*:*

<figure><img src="/files/gLjqGauldObCYV5Nwbdi" alt=""><figcaption></figcaption></figure>

* Line 1 writes soft reset of PCS to Port 16, Device 3 using Clause 45
* Line 2 reads PCS ID Reg1 from Port 16, Device 3 using Clause 45
* Line 3 reads PCS ID Reg2 from Port 16, Device 3 using Clause 45

### Common Clause 22 Registers

<figure><img src="/files/T6pe434GKr0gF2cF1sXW" alt=""><figcaption></figcaption></figure>

### Common Clause 45 Registers

#### PMA/PMD Registers

<figure><img src="/files/7hvKimx1GeZrPYKG73Dy" alt=""><figcaption></figcaption></figure>

### PCS Registers

<figure><img src="/files/8fcVPRoJ6SDhgDP9eMZq" alt=""><figcaption></figcaption></figure>

### Glossary

**IEEE**

Institute of Electrical and Electronics Engineers

**MAC**

Media Access Control

**MBPS**

Mega Bits Per Second

**MDC**

Management Data Clock

**MDIO**

Management Data Input/Output

**OSI**

Open Systems Interconnection

**OUI**

Organizationally unique ID

**PCS**

Physical Coding Sublayer

**PHY**

Physical layer of the OSI model

**PMA**

Physical Medium Attachment

**PMD**

Physical Medium Dependent


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.intrepidcs.com/vspy-3-documentation/application-notes/phy-dashboard.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
