chipKIT® Development Platform

Inspired by Arduino™

Getting OLED on basic IO shield to work

Created Thu, 22 Dec 2011 03:30:09 +0000 by mrblack927


Thu, 22 Dec 2011 03:30:09 +0000

Hi all,

I can't seem to get the OLED display on my basic IO shield to work with my UNO32 board. I added the libraries to my "libraries" folder in my sketchbook directory and opened the OLED demo sketch. It compiles fine and uploads to the board... but then nothing happens.

Do I need to set the jumpers differently? What am I missing?



Fri, 23 Dec 2011 18:23:19 +0000

I'm having the same problem, can someone help please.


Sat, 24 Dec 2011 17:28:25 +0000

GOT IT!!!! You'll have to make sure jumper settings are set to SPI mode on the UNO32 board.


Tue, 27 Dec 2011 20:32:37 +0000

Correct. The OLED display library uses PORTG bit 9 (RG9) as one of the control signals. On the Uno32, JP4 must be in the RG9 position for it to work.

Gene Apperson Digilent


Thu, 05 Jan 2012 19:44:27 +0000

I guess I've joined the club of having difficulties to get this Basic IO shield to work for me.

I've got the libraries installed correctly.

JP4 on the UNO32 is in position RG9

Opened the Oled demo, and uploaded it.




Thu, 05 Jan 2012 23:35:19 +0000

The OLED display on the Basic I/O Shield is an SPI device. For it to work, Uno32 jumper JP4 needs to be in the RG9 position, and JP5 & JP7 need to be in the MASTER position.

The on-board EEPROM and temperature sensor are I2C devices. To use them, Uno32 jumpers JP6 & JP8 need to be in the RG3 & RG2 positions. Note: this is not the position that these jumpers are in when the board is shipped.

On the Basic I/O Shield, the I2C pullup enable jumpers JP2 and JP3 need to have shorting blocks installed for the I2C devices to work.

Gene Apperson Digilent


Tue, 24 Jan 2012 23:29:28 +0000

How to get it work on Max32 board?

Ryan K

Thu, 16 Feb 2012 00:27:10 +0000


Since the pins on the Max32 don't match up with the SPI and I2C on the Basic I/O Shield the SPI was bit banged so that should be functional just using the libraries. If you take a look at the pdfs for the libraries (IOSHIELD Library - EEPROM and Temp) it says that you'll need to manually connect pins 20 and 21 to A4 and A5 on the shield.

Note: In order to use the chipKit Max user must manually connect SDA and SCL pins(20 and 21) to pins A4 and A5 of IO Shield The hardware SPI port on a Max32 board isn’t accessible to the Basic I/O Shield, and so on a Max32, a software bit-banged SPI implementation is communicate with the display. This is marginally slower than the hardware SPI port.

Best Regards, Ryan K


Fri, 17 Feb 2012 09:26:01 +0000

where is the oled on basic io shield example?

Ryan K

Fri, 17 Feb 2012 23:46:36 +0000


The example demo is packaged with the library found on the Digilent website:,892,936&Prod=CHIPKIT-BASIC-IO-SHIELD

Best Regards, Ryan K


Sat, 18 Feb 2012 16:38:23 +0000

thanks :mrgreen: