Ok, well this is odd. I've got a SSD1306 (the one actually pictured in http://www.espruino.com/SSD1306) connected to a Pico running 2v07 and the exact JS code in the example, and it works great!
function start(){
// write some text
g.drawString("Hello World!",2,2);
// write to the screen
g.flip();
}
// I2C
I2C1.setup({scl:B6,sda:B7});
var g = require("SSD1306").connect(I2C1, start);
So I wonder what the difference is with your setup?
Worth noting that Software I2C is able to use the internal pullup resistors, but for some reason hardware I2C isn't - so if the I2C device doesn't have internal pullups then software will work but hardware won't.
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.
Ok, well this is odd. I've got a SSD1306 (the one actually pictured in http://www.espruino.com/SSD1306) connected to a Pico running 2v07 and the exact JS code in the example, and it works great!
So I wonder what the difference is with your setup?
Worth noting that Software I2C is able to use the internal pullup resistors, but for some reason hardware I2C isn't - so if the I2C device doesn't have internal pullups then software will work but hardware won't.