NEW PRODUCT – i2c / SPI character LCD backpack. LCD backpacks reduce the number of pins needed to connect to an LCD. LCDs are a fun and easy way to have your microcontroller project talk back to you. Character LCDs are common, and easy to get, available in tons of colors and sizes. (or similar microcontroller) but find that the number of pins necessary to control the LCD can be restrictive, especially with ambitious projects. We wanted to make a ‘backpack’ (add-on circuit) that would reduce the number of pins without a lot of expense.
By using simple i2c and SPI input/output expanders we have reduced the number of pins (only 2 pins are needed for i2c) while still making it easy to interface with the LCD. For Arduino users, we provide a easy-to-use library that is backwards compatible with projects using the ‘6 pin’ wiring.
This backpack will work with any ‘standard’ character LCD, from 8×1 to 40×4 sizes! As long as they have a 16-pin single-line connection header at the top. We carry a few LCDs that work great.
For advanced users, this project can be used for general purpose I/O expansion, the MCP23008 has 8 i/o pins (7 are connected) with optional pull-ups, the SPI 74HC595 has 7 connected outputs.
Adafruit publishes a wide range of writing and video content, including interviews and reporting on the maker market and the wider technology world. Our standards page is intended as a guide to best practices that Adafruit uses, as well as an outline of the ethical standards Adafruit aspires to. While Adafruit is not an independent journalistic institution, Adafruit strives to be a fair, informative, and positive voice within the community – check it out here: adafruit.com/editorialstandards
Stop breadboarding and soldering – start making immediately! Adafruit’s Circuit Playground is jam-packed with LEDs, sensors, buttons, alligator clip pads and more. Build projects with Circuit Playground in a few minutes with the drag-and-drop MakeCode programming site, learn computer science using the CS Discoveries class on code.org, jump into CircuitPython to learn Python and hardware together, TinyGO, or even use the Arduino IDE. Circuit Playground Express is the newest and best Circuit Playground board, with support for CircuitPython, MakeCode, and Arduino. It has a powerful processor, 10 NeoPixels, mini speaker, InfraRed receive and transmit, two buttons, a switch, 14 alligator clip pads, and lots of sensors: capacitive touch, IR proximity, temperature, light, motion and sound. A whole wide world of electronics and coding is waiting for you, and it fits in the palm of your hand.
Have an amazing project to share? The Electronics Show and Tell is every Wednesday at 7pm ET! To join, head over to YouTube and check out the show’s live chat – we’ll post the link there.
Nice product. I was considering making something similar (PIC16xxx and using the uart to communicate to the external circuit)
I am gonna skip making one now that there is a better option available. Thank you!
Suggestion for next revision, why not add a smd low profile dip switch/jumper, or a right angle 2 pin smd header so that a standard jumper can select between i2c and spi mode? This would make it more versatile. Great idea with the weak pulldowns on the i2c address lines. I’m going to have to borrow that one.
Suggestion for next revision, why not add a smd low profile dip switch/jumper, or a right angle 2 pin smd header so that a standard jumper can select between i2c and spi mode? This would make it more versatile. Great idea with the weak pulldowns on the i2c address lines. I’m going to have to borrow that one.
I like the idea of a switch or jumper as cde mentions, but it’s only needed if you’re reusing the device. Once integrated you won’t need the extra component.
So keep the costs down and perhaps a rev b would have a modified PCB with a place for through hole header or smd dip switch pads. This way if someone was using it as a prototype component they could add the header+jumper or switch. For a prototype rig the user might consider female header on the backpack and male header on their lcd.
Great stuff! There will be a few of these in my next order!
Nice product. I was considering making something similar (PIC16xxx and using the uart to communicate to the external circuit)
I am gonna skip making one now that there is a better option available. Thank you!
As usual, awesome stuff from adafruit!
Here I am making a LCD-I2C board for my launchpad http://www.43oh.com/forum/viewtopic.php?f=10&t=164 and you just have to go and make one too. Go fig. (P.s. great minds, yadda yadda yadda :D)
Suggestion for next revision, why not add a smd low profile dip switch/jumper, or a right angle 2 pin smd header so that a standard jumper can select between i2c and spi mode? This would make it more versatile. Great idea with the weak pulldowns on the i2c address lines. I’m going to have to borrow that one.
Here I am making a LCD-I2C board for my launchpad http://www.43oh.com/forum/viewtopic.php?f=10&t=164 and you just have to go and make one too. Go fig. (P.s. great minds, yadda yadda yadda :D)
Suggestion for next revision, why not add a smd low profile dip switch/jumper, or a right angle 2 pin smd header so that a standard jumper can select between i2c and spi mode? This would make it more versatile. Great idea with the weak pulldowns on the i2c address lines. I’m going to have to borrow that one.
cde, we’ll check it out… we wanted to hit the $10 price point but we think this is a good start!
I like the idea of a switch or jumper as cde mentions, but it’s only needed if you’re reusing the device. Once integrated you won’t need the extra component.
So keep the costs down and perhaps a rev b would have a modified PCB with a place for through hole header or smd dip switch pads. This way if someone was using it as a prototype component they could add the header+jumper or switch. For a prototype rig the user might consider female header on the backpack and male header on their lcd.
so then I look at the photo and remember the address jumpers, so maybe 4 position smd dip switch? but space is tight…