need help creating bitmap and integrating into sketch

Hey all!
I have been using an Adafruit OLED display to display data from a bmp180 sensor and I want to display a custom splashscreen for a few seconds when the unit is powered up. In the example sketch for the SSD1305 library there is a default "ADAFRUIT INDUSTRIES" splashscreen but I want to design my own.

I am using the SSD1305 library and Adafruit GFX libraries.

This is the part of the example code that displays the default adafruit splashscreen:

void setup()   {                
  Serial.begin(9600);
  Serial.println("SSD1305 OLED test");
  
  // by default, we'll generate the high voltage from the 3.3v line internally! (neat!)
  display.begin();
  // init done
  
  display.display(); // show splashscreen
  delay(1000);
  display.clearDisplay();   // clears the screen and buffer
}

What would the code in the setup() function look like if I wanted to replace the adafruit logo with my own? I am pretty sure I would have to define a bitmap array before the setup and somehow reference it in the setup to display the image but I need help creating the bitmap array for my own image and I am also not sure on how the code should be written to do so.

I am also confused by the example sketch because there is no array in the sketcg that creates the adafruit logo, only this line of code in the setup()

display.display // show splashscreen

Adafruit logo that I want to change to my own:

Condensed Question:

How do I create a bitmap array of an image and how do I integrate it into the code to display its image.

Any help would be very much appreciated :slight_smile:

-Skyler

The bitmap is embedded in the library code. You can edit the library files and change the bitmap there. There is no need to change any code. I don't know of a bitmap editor to suggest.

I haven’t used that particular OLED but I’m pretty sure the way the data for these sorts of bitmaps are generated is using the program “LCD Assistant”.

Here’s related thread.

I’ve used the SSD1306 in projects and IIRC the display uses vertical bytes.

If you get stuck reading through the other thread, I might be able to help more. It’s been awhile since I’ve used LCD Assistant but I might be able to remember enough to be helpful.