I need a device that can act as a server (accept and send HTTP requests), and display an image. I want it to be as cheap as possible. I know i can use a Raspberry Pi, but i need something cheaper. I've heard that i can use some of these: ARM Cortex M, STM32, Esp32. Any other recommendations ?
To show a QR Code it's enough a black/white display. The resolution should be equal or greater than the size (in rows/cols) of your QR Code. Check this page about QR Code versions.
You can find serial display (SPI, I2C or UART) for few dollars. The size depends at which distance you need to read the QR Code (i.e. check this)
About the controller: you didn't say if you need an Ethernet or WiFi connection. Anyway, you can choose whatever you want (or find) with at least:
- Ethernet / WiFi connection
- Serial port suitable for the chosen display
For WiFi connectivity a NodeMCU or similar boards can do the job with a couple of dollars. If you need Ethernet it would cost more, either using an Arduino board with an Ethernet shield or any MCU with a WIZNet module connected.
Of course you have to write the firmware to receive the data to display the QR Code on the display.