One my project requires mono audio and graphics LCD over WiFi. HLK-RM04 is very cheap board and can do just what i need, with some hacks :)
In this example i use simple app to stream audio over WiFi to this boad. I2S is using DMA and double buffering. Audio is generated using 8bit mono DAC, MCP4801.
SPI is semi-hardware; clock and data lines are hardware SPI, but chip select is hacked GPIO inide SPI driver. This is way faster than bitbanging. I have also included simple graphics library.