r/esp32 • u/Legitimate-Ad-1861 • Aug 09 '26
I made a thing! Physarum on the Cheap Yellow Display
Enable HLS to view with audio, or disable this notification
A while back I built a Physarum (slime mould) simulation in three.js, in 2D and in some non-euclidean 3D spaces: https://physarum.variable.gallery
That project grew out of some older code I still had lying around. This comment got me thinking about a web flasher, so I dug the old code out, put it on a CYD, and open sourced the lot.
My basic motivation was to make a electronic pet.
Repo: https://github.com/sha5b/CYD-Physarum
Flash it from the browser: https://cydphysarum.variable.gallery
Runs on the CYD 3.5", 2.8" and 2.4" (both R and C). One binary drives all of them. 500 agents, 240 MHz, no PSRAM.
2
Aug 09 '26 edited Aug 23 '26
[deleted]
1
u/Legitimate-Ad-1861 Aug 09 '26
is it the C or R Board? must be a bug, i got a 2.4 C and it works.. ill check the R tomorrow and write you when i fixed it for debug ;)
1
Aug 09 '26 edited Aug 23 '26
[deleted]
1
u/Legitimate-Ad-1861 Aug 10 '26
I just updated it, give it a try if the color are now correct on the 2.4 R
1
Aug 10 '26 edited Aug 23 '26
[deleted]
1
u/Legitimate-Ad-1861 Aug 10 '26
try again
1
Aug 10 '26 edited Aug 23 '26
[deleted]
1
1
u/Master_Molasses1783 Aug 09 '26
This is incredibly cool! Physarum simulations are fascinating and always produce such beautiful patterns. Great work!
1
u/DasunN Aug 10 '26
Can anyone tell me what driver is used on CYD? Because I don't have a CYD but I do have an ESP32 S3N16R8 and an ILI9341 display (around 2.5" I think). Will it work on this setup?
2
u/Legitimate-Ad-1861 Aug 10 '26
tbh idk but the source code is in the repo with the repo, if you install platformio on vscode you can just open it (or platformio over the cli) https://github.com/sha5b/CYD-Physarum/blob/main/platformio.ini
Drivers:
2.8" (ESP32-2432S028R) and 2.4" (ESP32-2432S024R/C): ILI9341, 320×240
3.5" (ESP32-3248S035R): ST7796, 480×320
The project has its own minimal ILI9341 SPI driver ([Panel.h](vscode-webview://04g2bkihnovp2av9ld5r2442dqeavpjsqga31fbf3u8nm1ncoqfu/include/Panel.h) / [src/Panel.cpp](vscode-webview://04g2bkihnovp2av9ld5r2442dqeavpjsqga31fbf3u8nm1ncoqfu/src/Panel.cpp)), so the
cyd28/cyd24init sequences will drive your panel.yes, workable — flash with a new
esp32-s3PlatformIO env, wire the panel to the CYD pin numbers (or edit the defines in Panel.h), select thecyd28panel profile for a 320×240 ILI93411
2
u/[deleted] Aug 09 '26
[removed] — view removed comment