Two bugs causing immediate crash on first flash:
1. `Ws2801Spi2MhzMethod` typedef was wrong (had "Neo" prefix that doesn't exist
in NeoPixelBus 2.8.x), causing compile error
2. `animTickTask` called `xQueueReceive(commandQueue, ...)` before UDP server
initializes the queue — NULL pointer triggers configASSERT → panic → ~3s
reboot loop. Added NULL guard so animation ticks safely until WiFi connects.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>