embassy/embassy-net-adin1110
René van Dorst 1d4d11ba25 refactor write_fifo(), don´t copy frame data
Now this function uses frame data directly in the SPI transaction
instead making a copy of it.
Also fixing some length calculations and refactor/add tests to test this
function.
2023-08-24 00:52:21 +02:00
..
src refactor write_fifo(), don´t copy frame data 2023-08-24 00:52:21 +02:00
Cargo.toml Add embassy-net-adin1110 2023-08-24 00:43:51 +02:00
README.md update README.md after review 2023-08-24 00:52:21 +02:00

SPE ADIN1110 embassy-net integration

embassy-net integration for the Analog ADIN1110 SPI SPE ethernet chips.

What is SPE or Single Pair Ethernet / 10 BASE-T1L

SPE stands for Single Pair Ethernet. As the names implies, SPE uses differential signalling with 2 wires (a twisted-pair) in a cable as the physical medium. SPE is full-duplex - it can transmit and receive ethernet packets at the same time. SPE is still ethernet, only the physical layer is different.

SPE also supports PoDL (Power over Data Line), power delivery from 0.5 up to 50 Watts, similar to PoE, but an additional hardware and handshake protocol are needed.

SPE has many link speeds but only 10 BASE-T1L is able to reach cable lengths up to 1000 meters in 2.4 Vpp transmit amplitude. Currently in 2023, none of the standards are compatible with each other. Thus 10 BASE-T1L won't work with a 10 BASE-T1S, 100 BASE-T1 or any standard x BASE-T.

In the industry SPE is also called APL (Advanced Physical Layer), and is based on the 10 BASE-T1L standard.

APL can be used in intrinsic safety applications/explosion hazardous areas which has its own name and standard called 2-WISE (2-wire intrinsically safe ethernet) IEC TS 60079-47:2021.

10 BASE-T1L and ADIN1110 are designed to support intrinsic safety applications. The power supply energy is fixed and PDoL is not supported.

Supported SPI modes

ADIN1110 supports two SPI modes. Generic and OPEN Alliance 10BASE-T1x MAC-PHY serial interface

Both modes support with and without additional CRC. Currently only Generic SPI with or without CRC is supported.

NOTE: SPI Mode is selected by the hardware pins SPI_CFG0 and SPI_CFG1. Software can't detect nor change the mode.

Hardware

Other SPE chips

Testing

ADIN1110 library can tested on the host with a mock SPI driver.

$ cargo test --target x86_64-unknown-linux-gnu

License

This work is licensed under either of

at your option.