Writing to an oled display

Hi

I have an 2.42 inch oled display (SSD1309 on a www.diymore board)) connected to an Arduino 33 BLE using I2C and the u8g2lib library which all appears to work fairly well together.

However, it seems to me that it is not possible (at least using u8g2lib) to write a part of the display without doing a 'sendbufffer' to update the entire 64x128 bitmapped display. This gives rise to two problems: 1) performance in that the processor cannot do anything else while updating the screen which is giving me latency problems and 2) the screen momentarily goes blank during the update process.

I understand that the addressing of the oled is fairly complex and that is why maybe the entire buffer is written at one time but I was wondering if there is an alternative library to use (or a way to use u8g2lib that I haven't discovered) to get around my problems.

Thanks
Ron

The SSD1309 is only 128x64 i.e. same as SSD1306. So a "full buffer" is 1024 bytes.

Most Uno sketches can afford 1024 bytes of SRAM.
How much SRAM are you using on your Uno_BLE?
How much SRAM does a Uno_BLE have available?

If you want instant results, you can use the F constructor in U8g2lib and write directly.

If you don't have enough SRAM you will have to use the 2 or 1 small buffer constructor
And mess around with the firstPage(), nextPage() sequence.

Seriously, most projects can be designed carefully. e.g. only update screen when necessary.

David.