apache / apache/nuttx

Feature request: Software MAC support

Open
#11,722 2 comments 0 reactions 0 assignees View on GitHub
Dominant language
C
Stars
4k
Forks
1.7k
Avg merge
1d 17h
Merged PRs (30d)
237

Description

Adding support for software MACs such as the following would be a nice way of reducing component costs for less demanding applications:

https://github.com/essele/rp2040-rmii

For example, a ENC424J600 that combines both a PHY and a MAC costs $5 and change while the LAN8720A PHY costs $1.29:

https://www.microchip.com/en-us/product/ENC424J600
https://www.microchip.com/en-us/product/LAN8720A

Meanwhile a RP2040 only costs $0.70:

https://www.digikey.com/en/products/detail/raspberry-pi/SC0914-13/14306010?s=N4IgTCBcDaIEoAUwAYAsyQF0C%2BQ

Having support for a software MAC would bring down the costs of projects that need Ethernet nicely, without resorting to the ~~limitations of the TCP offload engine in the~~ not much cheaper W5500 _(Edit: I learned after posting this that the W5500’s TCP Offload Engine is not used by Nuttx)_:

https://www.digikey.com/en/products/detail/wiznet/W5500/4425702

The main downside of the software MAC in the linked GitHub project is that the controller needs to run at a multiple of 50MHz, and must run at 100MHz or higher, when the RP2040’s stock clock speed is documented as being 133MHz, but is 125MHz at boot. The downside of running it at either 100MHz or 150MHz (or higher) is probably more than worth the reduction in BOM costs.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.