Skip to content
Open
Changes from 1 commit
Commits
Show all changes
104 commits
Select commit Hold shift + click to select a range
af6aa5b
Stash
troyhacks Jan 15, 2026
2bb2664
W5500 "onnected" but no IP yet.
troyhacks Jan 15, 2026
dc41ebb
W5500 working oin ESP32 for Quindor
troyhacks Jan 15, 2026
7037edd
Fix for non-W5500 Ethernet (wrrong ETH.begin() order)
troyhacks Jan 15, 2026
8a114b2
W5500 addition should work for S3 and others now too
troyhacks Jan 15, 2026
60d28a9
Allow SPI2_HOST if no SPI3_HOST
troyhacks Jan 15, 2026
830861a
Adding a line to reconfigure interfaces just in case - and worst case…
troyhacks Jan 19, 2026
6ccb057
First attempt, new libs
troyhacks Jan 20, 2026
b745f8c
Moving ETHClass2 to top env.
troyhacks Jan 20, 2026
f4b2dd8
More platform changes
troyhacks Jan 20, 2026
25eaa8f
Fixes for <huge sigh> ESP8266
troyhacks Jan 20, 2026
28bd512
Let's try needing min 4.4.5
troyhacks Jan 20, 2026
52c3eb9
More guards for older IDF versions
troyhacks Jan 20, 2026
164614b
More guards for old IDF versions
troyhacks Jan 20, 2026
42d2f1c
Check for platform W5500 support
troyhacks Jan 20, 2026
ff28c9c
Comfort for the elderly
troyhacks Jan 20, 2026
199d505
Comfort anything without ETH_PHY_W5500 defined
troyhacks Jan 20, 2026
84da8cb
Retest
troyhacks Jan 20, 2026
6079b48
Try this again
troyhacks Jan 20, 2026
ac1a4ca
Changing of the guard
troyhacks Jan 20, 2026
e11e1f3
Ignore ETHClass2 where not supported
troyhacks Jan 20, 2026
6091344
More comforts
troyhacks Jan 20, 2026
7db76e0
Put back in the original code for IDFv3
troyhacks Jan 20, 2026
f698f06
Duped definition
troyhacks Jan 20, 2026
e0c8b47
Ignore ETHClass2 on esp32_4MB_M_eth
troyhacks Jan 20, 2026
7cd1b2f
Try making one Tasmota that was oversized.
troyhacks Jan 20, 2026
a430386
Try that again but ignore the lib too
troyhacks Jan 20, 2026
cfcd2dd
Ignore the right lib this time. Case matters.
troyhacks Jan 20, 2026
b1f44d4
Moved some back to Tasmota and ignored ETHClass2
troyhacks Jan 20, 2026
4917c13
Missed one.
troyhacks Jan 21, 2026
83bff2d
Pinning ETHClass2 to a commit to make the rabbit shut up.
troyhacks Jan 21, 2026
a540b96
This is not in the right place. What place should it be in? I dunno!
troyhacks Jan 21, 2026
33feac9
Testing this one
troyhacks Jan 21, 2026
84b35af
Tidy
troyhacks Jan 21, 2026
286d95e
Added WaveShare_ESP32-S3-ETH
troyhacks Jan 21, 2026
a4d0822
Fixing places that deal with pins, like reserved pins and saviing pin…
troyhacks Jan 21, 2026
68e1790
Build fixes
troyhacks Jan 21, 2026
41512dd
Fix esp32_nonconfigurable_ethernet_pins
troyhacks Jan 21, 2026
43fe29d
managed_pin_type fixes
troyhacks Jan 21, 2026
214be9a
Juggling initializers
troyhacks Jan 21, 2026
32a0c7b
Testing intializers
troyhacks Jan 21, 2026
f676134
Another initializer
troyhacks Jan 21, 2026
10d70c7
Initializers
troyhacks Jan 21, 2026
9772e36
Hopefully this is it.
troyhacks Jan 21, 2026
05a3fdd
Merge branch 'MoonModules:mdev' into mdev+W5500
troyhacks Jan 21, 2026
d7564ca
Added -Wno-parentheses so HUB75 is easier to debug without a billion …
troyhacks Jan 21, 2026
0c0d6f0
Merge branch 'mdev+W5500' of https://github.com/troyhacks/WLED into m…
troyhacks Jan 23, 2026
30f21e4
Adding back package json files from mdev
troyhacks Jan 23, 2026
48cce64
Hide W5500 from Ethernet UI when not available.
troyhacks Jan 23, 2026
cebfccf
Re-order to make more logical sense
troyhacks Jan 23, 2026
a332198
User can modify SPI pins and specify them for W5500 Ethernet - if ava…
troyhacks Jan 23, 2026
742d8a2
@TroyHacks to @softhack007: This is just to make my builds go green w…
troyhacks Jan 23, 2026
b44a460
Removed -fno-rtti from animartrix_build_flags which is just a temp ha…
troyhacks Jan 23, 2026
d3cad9b
Testing
troyhacks Jan 23, 2026
3fbc4d1
Testing
troyhacks Jan 23, 2026
d9ffac6
Testing with fixes
troyhacks Jan 24, 2026
fdd1217
External ETHClass2 fixes to enable ETH_PHY_IP101
troyhacks Jan 24, 2026
f4e17cb
Testing v4.4.7 Tasmota and v4.4.7 regular libs
troyhacks Jan 24, 2026
85a6992
Guard for CONFIG_ETH_SPI_ETHERNET_W5500
troyhacks Jan 24, 2026
7ada26b
Quiet down HUB75 build output for testing
troyhacks Jan 24, 2026
3ee6d34
Fixes
troyhacks Jan 24, 2026
13e823d
More testing
troyhacks Jan 24, 2026
d3dbec7
What happens if all boards have Ethernet enabled and PSRAM? Testing!
troyhacks Jan 24, 2026
042735e
Testing minimal required versiona
troyhacks Jan 24, 2026
374c9e5
Typo
troyhacks Jan 24, 2026
e968e14
Trying the lowest required Tasmota
troyhacks Jan 24, 2026
33124b9
Testing a bold hack.
troyhacks Jan 24, 2026
0a5b8b3
Moving Tasmota up to the latest 4.4.7
troyhacks Jan 24, 2026
a920eed
Even bolder
troyhacks Jan 24, 2026
3501192
Less forcing W5500 support suggestion
troyhacks Jan 24, 2026
040c1a5
W5500 Support message
troyhacks Jan 24, 2026
37620e4
Testing
troyhacks Jan 24, 2026
d736a74
Fixes for esp32_nonconfigurable_ethernet_pins
troyhacks Jan 24, 2026
813a735
Fixes for boards without RMII
troyhacks Jan 24, 2026
e123c48
Force reconnect on Ethernert reconnect
troyhacks Jan 25, 2026
90f1249
Force reconnect on Ethernet returning
troyhacks Jan 25, 2026
455a52f
Merge branch 'mdev' into mdev+W5500
troyhacks Jan 25, 2026
1d906c8
Update external lib.
troyhacks Jan 25, 2026
3191fba
Better W5500 Settings
troyhacks Jan 26, 2026
915aa83
Trying with "troymota"
troyhacks Jan 26, 2026
2597d1b
Custom "Troymota" with W5500 test
troyhacks Jan 28, 2026
86a4634
Testing again with Troymota's missing S3 memory variants
troyhacks Jan 28, 2026
b666131
More missing S3 mem variants in "troymota" fixed externally
troyhacks Jan 28, 2026
d1c4113
Everything v4 is "troymota"
troyhacks Jan 28, 2026
b33ddd0
Testing with a non-Tasmota inspired small build.
troyhacks Jan 28, 2026
8a00941
Smaller and workingf DHCP... but enough smaller?
troyhacks Jan 28, 2026
efc7fa3
Testing Troymota 6ee755d96132e0975a60589cfee7fe687c45c68e
troyhacks Jan 28, 2026
ca8faad
Testing Troymota 2b97d2e77632d1bb9ac646f62f3db45f091591e5
troyhacks Jan 28, 2026
479cc21
Keep usermods from crashing if they load a pin in use for Ethernet.
troyhacks Jan 28, 2026
6d046ba
AI generated pin validation routines. Untested, but seem reasonable.
troyhacks Jan 28, 2026
6074c5f
Sorting out the varuious Pico chipsets and their pin usages.
troyhacks Jan 28, 2026
e4f2c74
Debug instead of User printing for W5500
troyhacks Jan 28, 2026
44e0f2a
Better Pico chipset handling on boot.
troyhacks Jan 28, 2026
a3f7313
Better Ethernet handling of connect/disconnect.
troyhacks Jan 28, 2026
c99e1ff
Cleaning up rabbit droppings.
troyhacks Jan 29, 2026
5b21bab
Fixes for fixes
troyhacks Jan 29, 2026
271f963
Default pin fix for WaveShare S3 ETH
troyhacks Jan 29, 2026
f06f5f2
Rabbit poop
troyhacks Jan 29, 2026
2ae1cb9
Rabbit suggestions
troyhacks Jan 29, 2026
b9d9742
Merge branch 'MoonModules:mdev' into mdev+W5500
troyhacks Jan 29, 2026
156b5a8
The rabbit was correct. This needed fixing.
troyhacks Jan 29, 2026
6992d1c
Use detection of PSRAM so we don't allocate pins if BOARD_HAS_PSRAM i…
troyhacks Jan 29, 2026
cff5326
Only set spi_use_for_w5500 true if it comes from the SPI pin page.
troyhacks Jan 30, 2026
5566df6
Merge branch 'MoonModules:mdev' into mdev+W5500
troyhacks Feb 5, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
Better Pico chipset handling on boot.
  • Loading branch information
troyhacks committed Jan 28, 2026
commit 44e0f2a5938272a671420b0cec9343f8a58833ec
23 changes: 12 additions & 11 deletions wled00/wled.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -655,9 +655,16 @@ void WLED::setup()
//managed_pin_type pins[] = { {12, true}, {13, true}, {14, true}, {15, true}, {16, true}, {17, true} };
//pinManager.allocateMultiplePins(pins, sizeof(pins)/sizeof(managed_pin_type), PinOwner::SPI_RAM);
#else
// GPIO16/GPIO17 reserved for SPI RAM
managed_pin_type pins[] = { {16, true}, {17, true} };
pinManager.allocateMultiplePins(pins, sizeof(pins)/sizeof(managed_pin_type), PinOwner::SPI_RAM);
// GPIO16/GPIO17 reserved for SPI RAM on classic ESP32
// Skip PICO variants - their reserved pins are already protected by isPinOk()
{
const char* model = ESP.getChipModel();
bool isPico = (strncmp("ESP32-PICO", model, 10) == 0) || (strncmp("ESP32-U4WDH", model, 11) == 0);
if (!isPico) {
managed_pin_type pins[] = { {16, true}, {17, true} };
pinManager.allocateMultiplePins(pins, sizeof(pins)/sizeof(managed_pin_type), PinOwner::SPI_RAM);
}
}
#endif
#if defined(BOARD_HAS_PSRAM) && (defined(WLED_USE_PSRAM) || defined(WLED_USE_PSRAM_JSON)) // WLEDMM
if (psramFound()) {
Expand All @@ -668,14 +675,8 @@ void WLED::setup()
DEBUG_PRINTLN(F("PSRAM not used."));
#endif
#endif
#if defined(ARDUINO_ARCH_ESP32)
if ((strncmp("ESP32-PICO", ESP.getChipModel(), 10) == 0) || (strncmp("ESP32-U4WDH", ESP.getChipModel(), 11) == 0))
{ // WLEDMM detect pico board and esp32-mini1 board at runtime
// special handling for PICO-D4: gpio16+17 are in use for onboard SPI FLASH (not PSRAM)
managed_pin_type pins[] = { {16, true}, {17, true} };
pinManager.allocateMultiplePins(pins, sizeof(pins)/sizeof(managed_pin_type), PinOwner::SPI_RAM);
}
#endif
// Note: PICO variants (D4, V3, V3-02) have their reserved pins already protected
// by isPinOk() in pin_manager.cpp - no explicit allocation needed here.

//DEBUG_PRINT(F("LEDs inited. heap usage ~"));
//DEBUG_PRINTLN(heapPreAlloc - ESP.getFreeHeap());
Expand Down