Today’s project: a TinyPICO ESP32 board box with 4 outputs of wirelessly-controlled pixel string. I’m missing one GX16-4 panel connector though.

The red mess is gasket silicone as I want it to be fairly water-resistant. Sure is messy to get the connectors fastened though!


Tonight I’ve replaced the TinyPICO ESP32 module with a WT32-ETH1 ESP32 module which has 100Mb Ethernet onboard! So I can run the 4 strings of LEDs pixel-for-pixel via much more reliable Ethernet DMX control.

@s0 I thought the ESP32's MAC is pretty broken... Does it have an external MAC+PHY like WizNet or similar?

@uint8_t yeah look I’ve had issues with the network stack plenty a while ago, core crashes galore. But I sm tentatively thinking things have improved over time, because I put it on a network and it was receiving multicast UDP consistently for a while without issues.
If there wasn’t already the library support for the LAN8720 module I would have gone and baked one myself based on WizNet W5500 as I’ve used that before successfully too.

@s0 Noice. I have some ethernet modules sitting around, but never found time to try them with the ESP32. 😑
Which approach/library do you use to drive the WS2812b(guessing) strings? I tried a few with STM32Fx bluepills and the ESP32, but couldn't find one that "felt nice". Strong possibility of me "holding it wrong" though. So very interested in how others drive those.

@tbr these are driven using WLED, which is a project combining a web frontend, UDP DMX protocol receiver and effects engine with FastLED to render up to thousands of LEDs on ESP32 or ESP8266.
The ESP32 IP stack has support for at least one Ethernet PHY, the LAN8720, which is what is included on this dev board, and support for it is also built into WLED.

@s0 thanks for the detailed explanation! Will have a look at that, sounds cool. Ping @uint8_t that also answers your question -LAN8720.

@tbr I’ve rolled my own sACN library for LED control before but in this case I went, why duplicate work that’s already done and done well? It has worked very well for me so far, and even if I only sometimes need the effects engine for standalone use, being able to reconfigure the network, LED string and DMX settings over a web interface is well worth it.

@s0 Oh speaking of ESP32s, I ordered two of these from Adafruit and am keen to start tinkering!

Going to see about hooking my temperature sensors up to them so I don't need an entire Raspberry Pi to do it. I've never done anything this low-level before so I'm curious to see how I go with it, haha. (Even on the Pis I'm still using Node.js and TypeScript).

@virtualwolf @s0 Oooo, have fun!
(micropython on the esp32 is pretty rock-solid, fwiw)

@stibbons @s0 Oh that's good to know, thanks! I try to avoid Python like the plague, but mostly because of it's fucking horrible package management garbage fire. I don't really have any opinions about the language itself because I've never gotten far enough to actually try it, haha.

The other option for the ESP32 is essentially writing C, isn't it?

@s0 @stibbons Never having written C or C++ before, this will be A Learning Experience, that's for sure. :D

@virtualwolf @s0 I won't lie, for small scale stuff like this, C++ is pretty fun.

@stibbons @virtualwolf Fie thee! Villains! Wretches! Thy untyped languages are the work of Satan and they shall never set foot in my kingdom

@stibbons @virtualwolf also what Wolf said. The package management is like passing gallstones

@s0 @virtualwolf (I've already had my gall bladder removed don't you youngsters talk to me about what passing gall stones is like)
@s0 @virtualwolf Oh, look, there's a lot I don't like about python too. But very little of that applies to an embedded environment.

Except the typing.
Sign in to participate in the conversation
Cathode Church

A place for trans makers, coders, tinkerers and dreamers.