I guess it's possible that Espruino struggles to keep the higher speed SPI fully loaded with data. There's an issue open for adding DMA (mainly for non-glitchy neopixels while getting WiFi data), and I just updated it to mention this: https://github.com/espruino/Espruino/issues/1212
I can't promise when I'll have time to do something about it though. At the moment I'm not sure what to suggest - however with the WiFi's extra RAM you could use the paletted version and:
tweak it to use bigger RAM buffers
Use Graphics.getModified to get the modified area, then drawImage to draw it into a new Graphics instance of the right size and write just that instance to the screen.
While it would add some delay to the output, it would provide a much smoother, less glitchy update - especially for button presses.
Espruino is a JavaScript interpreter for low-power Microcontrollers. This site is both a support community for Espruino and a place to share what you are working on.
I guess it's possible that Espruino struggles to keep the higher speed SPI fully loaded with data. There's an issue open for adding DMA (mainly for non-glitchy neopixels while getting WiFi data), and I just updated it to mention this: https://github.com/espruino/Espruino/issues/1212
I can't promise when I'll have time to do something about it though. At the moment I'm not sure what to suggest - however with the WiFi's extra RAM you could use the paletted version and:
drawImage
to draw it into a new Graphics instance of the right size and write just that instance to the screen.While it would add some delay to the output, it would provide a much smoother, less glitchy update - especially for button presses.