Hi everybody,
First of all, I'm French and I apologize for my writing skill in English
As writing in the title of this post, I want to use a teensy LC with an I2C SSD1306 OLED (128x64) and a Xbee using the Xbee PJRC shield. The idea is to make a remote to control a heater and some sensors.
I have received all that stuff last week and I started to play around
In order to test the OLED and the Xbee with the shield I use a Buspirate and everything was fine.
So, I have installed the arduino IDE in version 1.6.5 and the Teensyduino extension in version 1.24. And I start some demo using I2C OLED library.
I tried to use different kind of library (Adafruit SSD1306 and U8glib) using "Wire" library, but they gave me the same result : a black screen... I tried to used the "i2c_t3" library instead but unfortunatly the result was the same.
I have used my Buspirate as spy and I discovered two kind of result :
1 - Using "Wire" library : start condition, device address on 7 bits, weird data (detect as new start condition by buspirate), stop conditon
2 - Using "i2c_t3" library : sometime start condition and always stop condition
To complete the investigation I have try to write my code based on the python script I used to drive the screen using the Buspirate (https://github.com/polarbeargarden/SSD1306-Bus-Pirate). I obtained the same result with each i2c library (Wire and i2c_t3) : black screen and weird transmission on the bus.
I have you some suggestions to help me ?
Here is the code I used in my last investigation
Here is the result from the buspirate spy mode :

P.S : I have 2 times 10kohms resistor in parallal on each i2c line and I used the 3v pin to supply the OLED screen.
First of all, I'm French and I apologize for my writing skill in English
As writing in the title of this post, I want to use a teensy LC with an I2C SSD1306 OLED (128x64) and a Xbee using the Xbee PJRC shield. The idea is to make a remote to control a heater and some sensors.
I have received all that stuff last week and I started to play around
In order to test the OLED and the Xbee with the shield I use a Buspirate and everything was fine.
So, I have installed the arduino IDE in version 1.6.5 and the Teensyduino extension in version 1.24. And I start some demo using I2C OLED library.
I tried to use different kind of library (Adafruit SSD1306 and U8glib) using "Wire" library, but they gave me the same result : a black screen... I tried to used the "i2c_t3" library instead but unfortunatly the result was the same.
I have used my Buspirate as spy and I discovered two kind of result :
1 - Using "Wire" library : start condition, device address on 7 bits, weird data (detect as new start condition by buspirate), stop conditon
2 - Using "i2c_t3" library : sometime start condition and always stop condition
To complete the investigation I have try to write my code based on the python script I used to drive the screen using the Buspirate (https://github.com/polarbeargarden/SSD1306-Bus-Pirate). I obtained the same result with each i2c library (Wire and i2c_t3) : black screen and weird transmission on the bus.
I have you some suggestions to help me ?
Here is the code I used in my last investigation
Code:
#include <i2c_t3.h>
#define qBlink() (digitalWriteFast(LED_BUILTIN, !digitalReadFast(LED_BUILTIN) ))
void setup() {
pinMode(LED_BUILTIN, OUTPUT);
qBlink();
Wire.begin();
delay(1000);
Wire.beginTransmission(0x3C);
Wire.write(0x00);
Wire.write(0xAE);
Wire.write(0xD5);
Wire.write(0x80);
Wire.write(0xA8);
Wire.write(0x3F);
Wire.write(0xD3);
Wire.write(0x00);
Wire.write(0x40);
Wire.write(0x8D);
Wire.write(0x14);
Wire.write(0x20);
Wire.write(0x00);
Wire.write(0xA1);
Wire.write(0xC8);
Wire.write(0xDA);
Wire.write(0x12);
Wire.write(0x81);
Wire.write(0xCF);
Wire.write(0xD9);
Wire.write(0xF1);
Wire.write(0xDB);
Wire.write(0x40);
Wire.write(0xA4);
Wire.write(0xA6);
Wire.write(0xAF);
Wire.endTransmission();
}
void loop() {
qBlink();
delay(1000);
}
Here is the result from the buspirate spy mode :

P.S : I have 2 times 10kohms resistor in parallal on each i2c line and I used the 3v pin to supply the OLED screen.
Last edited:
