I think you uncommented the wrong line (you should just change “SSD1306” to “SH1106”):
U8G2_SSD1306_128X64_NONAME_F_HW_I2C u8g2(U8G2_R0); //gives garbage on the SH1106
U8G2_SH1106_128X64_NONAME_F_HW_I2C u8g2(U8G2_R0); //works fine on SH1106
If you are using software I2C then use the software I2C constructor but just change the name. The full list of constructors is available here: https://github.com/olikraus/u8g2/wiki/u … -reference
My board is 128x64 I2C, it has 4 pins, GND, VCC, SCL, and SDA (no reset).
I realize it’s been a year but maybe someone will find this information useful.