-
Notifications
You must be signed in to change notification settings - Fork 263
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Update ethernet-lan.md #212
base: main
Are you sure you want to change the base?
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -15,8 +15,9 @@ WLED controllers are usually integrated into local network wirelessly (via WiFi) | |
- WLED Software must be compiled with Ethernet support included. Web-based WLED installer have special option for this. Be sure you use right WLED version with Ethernet support. | ||
- Ethernet requires many GPIOs (see table below). You cannot use them for other purposes at the same time. | ||
- If you switch from WiFi to Ethernet and you use dynamic (not static) IP addresses via DHCP (that is true in most cases), your WiFi/LAN Router will most likely grant new IP address to the WLED Controller. If you don’t delete WiFi credentials, your Controller will be accessible via WiFi and Ethernet at the same time by two different IP addresses. | ||
- Ethernet standard requires that the ethernet lines including shield are isolated form the electronics and for EMC reason ceramic capacitor (rated for 2 kV) is connected between Ethernet shield and electronics ground. Unfortunately, many simple/cheap ethernet adapters do not fulfill these requirements. Be careful using them. | ||
- Ethernet standard requires that the ethernet lines including shield are isolated form the electronics and for EMC reasons a ceramic capacitor (rated for 2 kV) should be connected between Ethernet shield and electronics ground. Unfortunately, many simple/cheap ethernet adapters do not fulfill these requirements. Be careful using them. | ||
- Most of Ethernet based controllers/ adapters are based on LAN87xx IC. It requires proper reset line. Unfortunately, some simple/cheap adapters do not implement this line correctly that might lead to instabilities especially during boot up. | ||
- ESP32 can be configured to provide the 50MHz clock for the PHY on GPIO0, GPIO16 or GPIO17. For operation with LAN87xx IC, use GPIO17. If you want to use GPIO0 with LAN87xx, you will need to add an inverter between GPIO0 and the LAN87xx CLKIN pin. | ||
- If you connect Ethernet adapter via wires, keep them as short as possible. The communication between ESP32 controller and the adapter is on high speed of 50 MHz that requires proper connection to avoid instabilities. | ||
|
||
## Ethernet setup | ||
|
@@ -39,5 +40,22 @@ ESP32Deux | | 17, 18, 23 | |
[WESP32](https://wesp32.com/) | | 0, 16, 17 | ||
[WT32-ETH01](https://www.seeedstudio.com/Ethernet-module-based-on-ESP32-series-WT32-ETH01-p-4736.html) | | 0, 16, 18, 23 | ||
|
||
## Defining GPIO for a custom PCBA | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Misleading or incorrectly worded heading. |
||
|
||
The following PHY are supported by WLED according to the header ETH.h: | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. ETH.h is not part of WLED and WLED does not support anything but LAN8720A and IP101. |
||
[LAN8720](https://www.microchip.com/en-us/product/lan8720a) | ||
[TLK110](https://www.ti.com/product/TLK110) | ||
[IP101](https://www.lcsc.com/datasheet/lcsc_datasheet_2206021645_WIZNET-IP101GRI_C910373.pdf) | ||
|
||
The source code also mentions ETH_PHY_MAX but this is not enough information to link to a specific part | ||
|
||
If you want to add an additional board type including custom GPIO allocations to the UI, you will need to modify the following source files before compiling WLED using default_envs = esp32_eth in platformio.ini: | ||
| File | Line (approx) | Description | | ||
|---|---|---| | ||
const.h | 288 | increment WLED_NUM_ETH_TYPES | ||
const.h | 301 | add a #define for your board with the next available index after the list of existing boards | ||
network.cpp | 119 | add an aditional initialisation for your board type | ||
settings_wifi.htm | 221 | add your board name and enum index | ||
|
||
|
||
note that you will need to recompile the html, see [Changing web UI for instruction](https://github.com/Aircoookie/WLED/wiki/Add-own-functionality/a30b2f3004c9aafc0639138afbff73b4efe4a766) | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. This is no longer necessary in 0.15 as it is done automatically if the environment is set up correctly. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This information is clearly stated in Espressif documentation and a reference to it should be added here if you want this text to be included.
https://docs.espressif.com/projects/esp-idf/en/v5.1/esp32/hw-reference/esp32/get-started-ethernet-kit.html#rmii-clock-sourced-internally-from-esp32-s-apll