It looks like you’ll have to do make something similar to SSD130x4WireSpiTransport
, but configured to use soft CS and with CS pin passed in config. CS pin toggling can be performed by SendCommand
/SendData
methods and won’t be visible outside of that class.
Then you can create a custom board that instantiates SSD130xDriver
with that soft CS transport and use that instead of current driver that uses hard CS.
I would expect main function to contain something similar to this:
custom_board.Init();
while(true) {
custom_board.display.Fill(true); // Draw on display here
custom_board.display.Update();
custom_board.DelayMs(20); // 50 FPS
}
Just toggling GPIO pin manually outside of driver code is insufficient, you also must do it for individual commands that are being sent when display gets initialized. And they are not exposed outside of driver, so doing it in transport seems to be the only way.