Display.drawRawBuf example in UIFlow docs doesn't work on M5StickC Plus2
-
Hi, I'm a new user of M5stack products, having got an M5StickC Plus2 recently. It's a nice device, but the documentation isn't always accurate which makes learning how to use it a slow process.
I tried to use the example for drawing a raw buffer to the screen here
But it resulted in different garbled output each time and not a green rectangle.
It seems that the len parameter is expecting 16-bit entries in the buffer so needs to be halved.
Here's the code that works on my device (note the //2 for len parameter):width, height = 40, 30 green565 = 0x07E0 raw_buf = bytearray(width * height * 2) for i in range(width * height): raw_buf[2*i] = (green565 >> 8) & 0xFF raw_buf[2*i+1] = green565 & 0xFF Display.drawRawBuf(raw_buf, 100, 100, width, height, len(raw_buf)//2, swap=False)Hopefully this will help others and eventually get changed in the docs - assuming it's the same for all UIFlow2 supported devices?
If anybody knows a fix to make it work properly for lower than 16bit depth screens so I can draw a raw buffer to a 1-bit canvas properly, please let me know!