PicoDev Display - Coding the display

Yes, an example that uses I2C is definitely what you want.
That’s the communication protocol this PiicoDev display uses and your going to have a rough time getting it to work with any other protocol.

If you run into trouble with that example we are here to help!

1 Like

Hi Sam,

thanks again for the help,

I have just run the code and the display is not working, not sure why it is not working.

There is a green light that illuminates but otherwise it is not working

1 Like

Hey R-DJ,

That’s frustrating. At this point it may be worth taking a step back and going through your steps so far to lessen the chance of us skipping over a potential issue.

Have you seen this tutorial by any chance?

It may be worth getting this display working with a simpler example first before you move on to more complex display outputs.

I also see you are doing this through the Arduino IDE. I personally love this IDE but it may not be the best option for a Pico. Have a look into Thonny as an alternative. It should make this project a bit easier after you get familiar with it.

Achieving a smaller goal with this project first before you move on should help us shrink the list of possible failure points and make it easier to figure out what is going wrong.

Hope this helps!
Sam

1 Like

Hi Sam,

Thanks for the help

I have not seen these tutorials but I will give them a try :+1:

1 Like

Hi R_DJ,

Let us know how you go!

Hi @Jack,

so I tried the example and it didn’t work but I was wondering if there is an ardunio IDE way to do this?

I ask cause Thorny doesn’t run on my computer,

I have found an ardunio example for the display just the issue of getting to get power/display is the issue now

There is a SSD1306 library for the Arduino IDE.
GitHub - lexus2k/ssd1306: Driver for SSD1306, SSD1331, SSD1351, IL9163, ILI9341, ST7735, PCD8544, Nokia 5110 displays running on Arduino/ESP32/Linux (Rasperry) platforms
It supports a variety of interfaces, including wire, which is the default Arduino library for I2C.

1 Like

Hi @Jeff105671,

I have downloaded that lib and used the I2C example, but it does not display anything but I get a green light on the back so I am unsure what is occurring when it is running this code.

I am happy to upload the code :slight_smile:

There is a lot of detail that is missing, including the MCU you are using. Also, the exact wiring that you have connected the display with, and the example file that you selected (there are many of them available) and whether you changed anything to suit the module (such as the address).

thanks @Jeff105671,

I’ll have a crack and if not I’ll upload the code

1 Like

There is no need to upload the code if you are using an example for a library or machine in the Arduino IDE - the name is sufficient. But in order to see which example you are using it is essential to know the Board that you have selected, as the examples are often unique to each board. It is also important to know the MCU development board you are using and how you have wired the display to that board. All these things will affect whether or not you can get the display to work.

1 Like

@Jeff105671
So I am using the SSD1306_I2c.
The board is rasberry pi Pico W.
To see the wiring, I uploaded an image on the 21st of May in this forum

Thanks again :slight_smile:

1 Like

Hey @R_DJ,

I know this isn’t your main focus at the moment but you mentioned before that you couldn’t get Thonny working on your machine. Is this a problem that we could potentially help you fix or is this not an option at all?

Although it doesn’t directly address your issue here I think attacking this from a python specific IDE would be for the best as using the Arduino IDE is adding another layer of complexity to the problem.

Sam

It’s not possible to see what is connected to what from that image. Show the wiring as a diagram that identifies the actual pins that are connected together. Also indicate the Board you have selected in the Tools menu of the Arduino IDE, and the name of the example for that board that you selected for testing.

@Jeff105671, there is an I2C port that connects both devices via that cable.

I have indicated the board I am using via a download that enabled it on arudnio IDE

Is you rasberry pi Pico W this one?

I can’t identify the I2C port on that board. Are you using an adapter?

What download and what board?

That is the board but with headers,

I am using a picodev cable to connect the screen to the raspberry pi expansion board on which the Raspberry pico is connected to.

The download I used is called: https://github.com/earlephilhower/arduino-pico/releases/download/global/package_rp2040_index.json

The board I have selected is Pico W

Hi All
Just butting here.
I think in the past I saw something about Pi Pico and Pi PicoW not being exactly pin compatible and there is a difference in I2C usage. So that that little I2C connector on the breakout is not useable with a PicoW, only works with a Pico. I could be wrong here as I have not looked in detail but this maybe worth checking.
Cheers Bob

OK. Can you please show a diagram which demonstrates which header pins you have connected to which socket positions in the I2C cable.

Hi All
A quick check. It looks like:
The little I2C connector uses I2C 0 on GPIO 8 and 9
The Pico W uses GPIO 0 and 1 (which is also I2C 0) for something else.

Because I2C 0 appears on both sets of GPIO would there be a conflict there.

If you replace that Pico W with a Pico would the set up work.
Cheers Bob