ESP32's SPI library is missing overloaded function SPI.transfer(buffer, size). Here is Arduino's documentation. https://www.arduino.cc/en/Reference/SPITransfer Arduino sketches and libraries using this function will not compile for ESP32. This is a very easy fix, just add this line in SPI.h void transfer(uint8_t * data, uint32_t size) { transferBytes(data, data, size); }