1-Day Project: Arduino Uno and I2C OLED Display Challenge

  Рет қаралды 345,743

Julian Ilett

Julian Ilett

Күн бұрын

Пікірлер
@bowieinc
@bowieinc 8 жыл бұрын
YOU ARE THE MAN! IT IS SO IMPORTANT TO SHOW THE FAILS WITH THE WINS SO WE CAN LEARN!! I CAN'T THANK YOU ENOUGH!!!
@nullerrno
@nullerrno 3 жыл бұрын
You’re the only guy I forgive for recording their desktop by pointing the camera at the screen.
@propfella
@propfella 9 жыл бұрын
Thank you, I'm a 66 yr old beginner to Arduino and apart from the Multifunction Car this is the first specialized project I've worked on. My O Led display just arrived from BangGood and I was wondering how to get it up and working. Your tutorial is one of the best I've seen for anything Arduino and as such I've subscribed. Very easy to understand and directions enough to get it going myself. Thanks again. Keep the simple and straightforward lessons happening. They are much appreciated, PS, Nice presentation as well. :-)
@charlibiris
@charlibiris 5 жыл бұрын
Can't agree more with you. By the way, keep it up! :D
@JerryEricsson
@JerryEricsson 9 жыл бұрын
God Bless you Julian - I purchased one of these just before going on vacation to Yellowstone Ntl. Park, tried it and no go. Got back Day before yesterday, and at long last got back to working on this problem, found your video and applied the C to D fix, now it's working as it should!!! I am so pleased I found your channel; you are my go to when things don't work out, as they seem to work fine after learning at your knee so to speak.
@nickynance2196
@nickynance2196 9 жыл бұрын
Thanks for doing this tutorial, 0x3C did it..... This thing was driving me crazy!
@rholt2
@rholt2 9 жыл бұрын
I had bought 4 of these on eBay about a month ago. today i finally got around to trying to light them up and ran across this video. SO glad i did! - while i haven't tried them out, i just wanted to say what a GREAT video this was and i will be looking forward to watching some more of them. Russ from Coral Springs, Florida. USA
@ZeedijkMike
@ZeedijkMike 7 жыл бұрын
Perfect timing. I'm currently building a weather station and was wandering if I should go for OLED display. You made it easy to make a decision. Great video.
@superdau
@superdau 10 жыл бұрын
If you have an address jumper like this on an I2C device it will most likely just change the least significant single bit of the address. The IC has one pin that can be pulled high or low (I have seen up to three of these hardware setable address pins, but that's rare). The rest of the address is internally fixed. If you have a second display and move the jumper to the other position you can drive two of the displays on the same I2C bus. Btw. for a short bus the pullups should not be needed. The wire library of Arduino will activate the internal pullups of the ATmega, which are around 20k-50k, if I remember correctly, and enough for most applications.
@JulianIlett
@JulianIlett 10 жыл бұрын
The default address is probably in the data sheet somewhere. The pull up resistors did appear to be needed though, removing them caused it to fail
@superdau
@superdau 10 жыл бұрын
Julian Ilett Yes, on page 19 of the Adafruit datasheet. These address select inputs almost never have pullups. They have to be connected directly to either VCC or GND. It's weird that they use a resistor in that place. Leaving it floating is an invalid state, except for some cool parts like this ADC for example www.linear.com/product/LTC2309 which has LOW, HIGH and floating as input letting you set 9 different addresse with just two pins. EDIT: I've just seen that the "resistor" was a 0 Ohm jumper anyway. So you might as well just make a solderblob accross the gap.
@JulianIlett
@JulianIlett 10 жыл бұрын
Ah yes, the wireless remote control chips PT2272 have those 'tri-state' inputs too.
@callumkingunderwood
@callumkingunderwood 10 жыл бұрын
20-50k is officially out of spec for i2c applications actually. Even 10k is considered a fairly weak pullup in i2c.
@superdau
@superdau 10 жыл бұрын
SixSixSevenSeven There is no "spec" for I2C pullups. The spec says you have to meet the timing requirements for rise and fall times for the given speed (pull up and bus line capacitance have a RC time conastant), and you have to be able to pull low enough that all devices will see a LOW on the input (no device can pull down to 0V; the internal transistors will always have a voltage drop depending on the current, which in turn is defined by the pull up). All that depends on your own design, so there's no real way to give a resistor value up front. All that said, with Arduinos slow 100kHz I2C I've never had any problem just using the internal pulllups even when hooking up multiple I2C devices on a bread board (which arguably is one of the worst things considering parasitic capacitance).
@liney118
@liney118 9 жыл бұрын
I got it up and running in less than 5 minutes, out of all the screens I've tried this was by far the easiest. Great price, great functionality, great display 👍
@stevebradnum3179
@stevebradnum3179 4 жыл бұрын
Thanks Julian. I worked it out before seeing your video, so it was satisfying to watch you go through the same process!
@KrisKasprzak
@KrisKasprzak 9 жыл бұрын
Well done. I have one of these units, I was able to get it working on the second try (0x3C) was the address i used. And i didn't need any pull up resistors.
@BGroothedde
@BGroothedde 10 жыл бұрын
Thank you for this video (and all your other videos, obviously). I ordered two of these right away. I'm planning a portable solar power project, a medium-sized contraption with one or two solar panels, one or two batteries and additional gear to take with me on camping trips. These little displays will have a home in that.
@planker
@planker 3 жыл бұрын
So far I have used radios, servos, and a few shields. Its time to workout the kinks related to displays. Thanks
@JohnUllrey
@JohnUllrey 8 жыл бұрын
So just received my 1.3" I2C IIC Serial 128X64 OLED LCD Display purchased from eBay (gowin_electronic) and thought I had gotten a bad one since no mater what I tried the Adafruit library examples wouldn't work. So I downloaded the U8G LIbrary and tried all of the 128x64 options. Turns out I must have an SH1106 and not a SD1306. I'm running the GraphicsTest example with the "U8GLIB_SH1106_128X64 u8g(U8G_I2C_OPT_DEV_0|U8G_I2C_OPT_FAST);" line un-commented and it is running way faster and everything fits on the screen. Hope this helps somebody out there. Cheers!
@warrenmiranda4943
@warrenmiranda4943 5 жыл бұрын
It works for me ! Thanks so much
@sudoall
@sudoall 9 жыл бұрын
Thanks !!! Very useful. I tried many times but never found the Detail of the Address in Adafruit going from 3D to 3C. Awesome dude !!!
@dimitrisbal4505
@dimitrisbal4505 6 жыл бұрын
I lost more than one hour before i found your video and make it work! Thank you!
@krugaroo6430
@krugaroo6430 9 жыл бұрын
Just to explain why the I2C address is correctly marked as 0x78. I2C addresses are 7 bits, but sometimes they are shown as 8 bits. When sending messages the address is sent as 8 bits and last bit is used to indicate a read/write. So 0111 1000 (0x78) to write or 0111 1001 (0x79) to read. The address excludes the last bit (shift right) so the address is 0011 1100 (0x3C). So in the future if you ever have trouble with I2C addressing try shifting the 8 bit address to 7 bits and see if that works or use playground.arduino.cc/Main/I2cScanner thats easier.
@MrSwanley
@MrSwanley 9 жыл бұрын
I wouldn't spend any time trying to debug an I2C addressing problem. And don't believe anybody that tells you what the address is. Just write or download an I2C bus scanner sketch then you can know for sure.
@jeanraymond82
@jeanraymond82 9 жыл бұрын
+MrSwanley The arduino playground got a great scanner, and I agree, don't look around the interwebs for the address, just use the scanner and see what you get! playground.arduino.cc/Main/I2cScanner
@Coolfolder
@Coolfolder 10 жыл бұрын
Thank you for making this video! I ordered one and after a while it finally arrived. After ordering I saw that I could have ordered from a warehouse in the US instead of China, but oh well. Next time. The price is unbeatable at just of $5 and free shipping. Anyway, it's sitting in front of me and I'm eager to try it out. Please read my other comment below.
@diete103
@diete103 10 жыл бұрын
Thanks for the helpful video I bought the same size and model of OLED without realizing and I remembered watching this a little while ago. I honestly don't think I would have got it working without your help.
@katout75
@katout75 7 жыл бұрын
Thanks, the address change also worked for my Banggood 128x64 OLED display as well. The address on the back of the display had "78", which i assumed was hex 0x78 but it is 0x3C bit shifted to the left
@fgaryam
@fgaryam 9 жыл бұрын
Excellent video. I followed along and got mine up in less than an hour. Now to make it do what I want it to do .... I like your style. Very clear instructions and videos...
@Gkid8
@Gkid8 5 жыл бұрын
This just helped me configure mine. I couldn't find the instructions and just recently got one of these.
@DB-bi1jx
@DB-bi1jx 9 жыл бұрын
Thanks for this, I was able to get mine working in 10:16 thanks to this video! 0x3C solved my problem.
@marcelobenitezabc
@marcelobenitezabc 6 жыл бұрын
there is a sketch called address scan that will tell you the correct address where the display is found!
@ruslankadylak2999
@ruslankadylak2999 10 жыл бұрын
I got stuck on the 0x3D to 0x3C address change, and thanks to you and your video I'm up and running now :). Upvoted. Wonder why would anybody vote you down (they, probably, were searching for American Idol, but misspelled and hit your page :D ).
@justDIY
@justDIY 9 жыл бұрын
I love i2c. What a great bus, not the fastest but I the structure and flexibility make it a joy to work with. I need to check out that screen you found, could be handy with esp8266 nodes.
@deepak_00
@deepak_00 6 жыл бұрын
Can you give avr code for ssd1306, I am not able to establish communication with atmega16
@northshorepx
@northshorepx 8 жыл бұрын
Thank you. That was great - I saw your video, then ordered the screen from china. Got it working using your mods but no resistors needed. Thanks!
@danweecc
@danweecc 7 жыл бұрын
You might want to try changing the Wire library clock speed. It usually defaults to 100kHz and that will limit your data transfer rate, thus slowing down overall loop time. You can probably go up to 400kHz at least with modern I2C devices.
@michael-gary-scott
@michael-gary-scott 10 жыл бұрын
Thanks for the video! Just picked on of these up for myself. Started doing a little bit of research on it, and on behold, you have a video on them! Great work!
@fritzo-84
@fritzo-84 9 жыл бұрын
Thank you! I was having the same problem. Now working on the arduino Yun. By the way, pull up resistors are not needed. I'm not using them. cheers
@MrMikeEdie
@MrMikeEdie 7 жыл бұрын
VERY grateful for the 0x3C tip. Sprang into life. Oddly the top bit of the green has yellow pixels on mine. No idea why. Rest of the screen is cyan pixels. But hey, £3 not bad.
@rostislavkandilarov7649
@rostislavkandilarov7649 7 жыл бұрын
You saved me a lot of time for searching the proper I2C addr, Great! I love you :)!
@gmiller123456
@gmiller123456 8 жыл бұрын
Thanks. Watched your video before even trying and got it working in just a couple minutes.
@JulianIlett
@JulianIlett 8 жыл бұрын
Excellent - thanks Greg.
@merlin2600
@merlin2600 10 жыл бұрын
I just tested mine with an Arduino Mega and it worked fine with 0x3C and directly wired to the SDA/SCL pins both on 3V and 5V. I plugged in a resistor and didn't notice a difference. YMMV, of course.
@fkungms
@fkungms 9 жыл бұрын
Hi Julian, the two 10k pull-up resistor may not be necessary, I tried with Aduino Micro and it works without the pull-up, I believe the AVR controller has internal pull-up.
@anshchawla566
@anshchawla566 5 жыл бұрын
You didn't change the name of library in the example sketch but is still worked
@yasha8951
@yasha8951 8 жыл бұрын
Very useful I'm trying to get another OLED to work as well, it would be nice for future videos to use any kind of screen recording software for the parts that require it
@RejeanBoucher
@RejeanBoucher 7 жыл бұрын
Thanks for your video and especially the topic on the display's initiating address (changing sketches default address from 3D to 3C ) was a great help in troubleshooting my i2c OLED 128x64 display that would not work when connected to my Beaglebone Green, thus I was suspecting a bad display. So, I followed your procedure and now I know that my display works great with my Arduino Uno. Again thanks
@pronoy91
@pronoy91 9 жыл бұрын
thanks to you, my job was done in...say 5 minutes =D. The address setting 0x3C or 0x3D depends on the jumper setting on the back of the display ( see 5:45, although not properly written, but it says "address" and you get to choose the last bit. If its 0 it means 0x3C if its 1 it means 0x3D). My display is from different manufacturer "heltec" but they are all the same =D Thanks again Julian Ilett
@StevanCWing
@StevanCWing 10 жыл бұрын
Thanks +Julian Ilet. I have been using the serial SSD1306 for a while and ordered a couple of the I2C modules (less wire is nice). After a perplexing hour I remembered watching your video a while back. Needless to say, you're a hero... Thanks! Who would have thought one little letter would make the difference?
@robotmaker6
@robotmaker6 9 жыл бұрын
Been watching your vids all morning while waiting for my Touchscreen Sheild and couldn't help being inspired by you. I'm only 12 years old and have recently started with Arduino. I've subscribed and would like to say thank you for your help in my quest of becoming less of a noob. A video on using generic 2.4" touchscreen displays with the arduino would be greatly appriciated. Thanks, Dylan
@raykent3211
@raykent3211 8 жыл бұрын
I'm a bit stuck with what seems to be a gulf between alphanumeric displays with ugly "fonts" due to low resolution, and full blown graphic displays that place serious demands on an uno. Is there an oled module that includes built-in buffering and fonts, just to get alphanum looking prettier without taxing the uno?
@byroboy
@byroboy 10 жыл бұрын
Thanks mate, You make life lots easier. I know a fair bit about the stuff that surrounds electronics but not it. You are really helping me fill this knowledge gap.
@AntonBabiy
@AntonBabiy 9 жыл бұрын
Big thanks for doing this tutorial! Just got my oled today and thanks to you got it working under 10min! The same this with the address as well.
@pmc3027
@pmc3027 8 жыл бұрын
PLEASE HELP mine is working with the 64 height example but the image is being stretched downwards and there appears to only be 32 lines of pixels activated, every other line of pixels is left turned off. I even bought two new screens both from different manufacturers and they still have the same problem :' '(
@spike4850
@spike4850 6 жыл бұрын
Did you definitely go into Adafruit_SSD1306.h and adjust it for your screen?
@markwilliammandigers1001
@markwilliammandigers1001 9 жыл бұрын
Hi, Got one of these displays, mine had a jumper on the back named 0x7A and 0x7B(or 78 !!, bad silk screen). Tried these but nothing worked so tried 0x3c and it worked!! Thanks for the info, good job!
@DJJAW11
@DJJAW11 8 жыл бұрын
out if interest, what extra would i need, to display simple scrolling text info,and maybe pictures, powered with the likes of a battery/or via usb ?
@NNNILabs
@NNNILabs 6 жыл бұрын
For some reason I found this a lot more helpful compared to the 'quick and easy' 3 minute videos.
@matroshka007
@matroshka007 9 жыл бұрын
thanks a lot for your explanation, I did the same BUT I did not use resistors : I did VCC to arduino VCC + GND to arduino GND + SCL to arduino SCL + SDA to arduino SDA directly, with no resistors it works fine. thanks a lot you helped me
@gughim
@gughim 8 жыл бұрын
Hi there! I read on Adafruit's website that the micro controller need at least 1k RAM to store the buffered pic to be displayed. I'd like to use it with a Nano, which has 2k SRAM and 1k EEPROM. So, the question is, what's the difference, and which of these two does the display uses? Thank you!
@charlibiris
@charlibiris 5 жыл бұрын
I thought my cheap ass lanmu OLED from amazon were faulty but nope! I had to change the address to 0x3C You made my day!
@charlibiris
@charlibiris 5 жыл бұрын
@Strictly Fun , Motivation , and Other I don't think so. I don't have much idea and I even thought I burned or short it somehow. I had another from the same order and it wasn't working either. There's like 3 different libraries and eventually I got it to work by trying them. check also your wiring (I know it's just a few cables, but check in your machine for the correct I2C pins)
@cristian_rojas_001
@cristian_rojas_001 7 жыл бұрын
Thank you very much ... the change to 3C helped me ..
@natacus2007
@natacus2007 4 жыл бұрын
I clicked the video, he didn't use the package manager on the ardunio software, video is years old, can't zoom in and keep focus on the screen - pfft this guy hasn't a clue, I'll try anyw.........WOAH it worked!!!!! Thank you :)
@marrasen
@marrasen 10 жыл бұрын
Thank you! This video let me get my display working in less than 15 minutes :) Didn't need the pull up resistors on my UNO R3.
@dlinnoedlinnoe
@dlinnoedlinnoe 7 жыл бұрын
Thank you very much for this video! All worked like a charm. SSD1306 library, then GFX library, HEIGHT 64, address 0x3C. Also thank you very much for all your videos! They are really really great!
@Eman2000
@Eman2000 10 жыл бұрын
i have always had the error in the ide its the - before master also you should not need the external pull up resistors now that you have it working
@Makarraummm
@Makarraummm 8 жыл бұрын
What's the SCL frequency on this demo? I'm using this display directly on a ESP8266 running SCL at 200KHz and the bitmap print is very slow. Large fonts and clear screen are very slow too. May you help me?
@mylesjakubowski6560
@mylesjakubowski6560 9 жыл бұрын
Fantastic video! Best explanation and start up on web! Thanks for taking time!
@Osimiss
@Osimiss 10 жыл бұрын
Right on! that was great help getting my screen up and running. Keep up the good work!
@stephenyork7318
@stephenyork7318 5 жыл бұрын
I have a similar project but want to measure the voltage from a solar panel. Is it fine to just connect the lead from the panel straight to the terminal without anything else in the circuit? I tried but the voltages don’t vary under different light levels.
@MrJamesbowen
@MrJamesbowen 8 жыл бұрын
I ordered what I thought to be the same OLED display but is turned out to be the SSH1106 chip. Trying to get the Adafruit library to work on a ModeMCU Lilon development board is not easy.
@superdau
@superdau 10 жыл бұрын
The library naming restriction is the same with version 1.0.5.
@Pompiduskus
@Pompiduskus 9 жыл бұрын
I very like yours camera. What for one it is ? Thank you
@Mr.M1STER
@Mr.M1STER 4 жыл бұрын
I had the same issue before on a different project where the arduino ide did not like underscores/hyphens in library names.
@MkmeOrg
@MkmeOrg 10 жыл бұрын
This is excellent Julian. I have dozens of the 5110's and use them in just about every project but it always annoyed me they aren't I2C. Picked up two of these to give them a go on some projects where I need the extra I/O pins. Thanks!
@JulianIlett
@JulianIlett 10 жыл бұрын
Thanks Eric. I like the 5110s, especially for outdoor use, the monochrome LCDs are so easy to read in bright light.
@DavidWatts
@DavidWatts 10 жыл бұрын
The 5110 always annoy me, every unit I have had goes a bit funny when pressed or moved.
@MkmeOrg
@MkmeOrg 10 жыл бұрын
David Watts I had a few like that as well- I usually just bend the tabs a bight (slightly straighten) to increse the pressure. Usually works out to get them working good. Cheers David.
@DavidWatts
@DavidWatts 10 жыл бұрын
Eric William I am I'll give that a go, I have a couple in the shoebox where I throw everything.
@MkmeOrg
@MkmeOrg 10 жыл бұрын
David Watts Good stuff. One was a real pain so I actually removed the retainer- built the surface up a bit- then clamped er back down. I buy the cheapest ones so doesn't surprise me when I get them anymore ;) Amazing display for the price. Cheers
@AaronDobson
@AaronDobson 9 жыл бұрын
did it actually need the pull ups after the address change as you left them on, did you try it with them off?
@wongmingyang
@wongmingyang 9 жыл бұрын
Thank you! your video actually helped me get started within 5mins!
@NakulKundra
@NakulKundra 8 жыл бұрын
after changing the address , have you tried without registers ?
@davidarnaldoramirezestrell122
@davidarnaldoramirezestrell122 8 жыл бұрын
Thanks man!! Is it possible to make a realtime video transmission with this OLED? ...
@52garym
@52garym 9 жыл бұрын
Thanks for the video Julian. When I try to upload the sketch, I get and error message that says " Height incorrect, please fix Adafruit SSD_1036.h". I think this is referring to the previous line in the code. Do you know what this is about and what to do? I have very little experience with any of this.
@robertwooster8539
@robertwooster8539 3 жыл бұрын
This happens on early Arduino IDE's. Upgrade to latest IDE and update libraries and it should be OK, if still problem you have to alter height in the actual library file to 64
@RCLoversan
@RCLoversan 8 жыл бұрын
I've finally managed to get it working... Regrettably the first OLED display I have received was faulty. Anyway, thanks for your tutorial.
@frugalcode
@frugalcode 9 жыл бұрын
Do you have any idea how these displays behave in sunlight? Can you see clear? Thanks.
@tobortine
@tobortine 10 жыл бұрын
Tremendous, many thanks. I suspect those sellers are going to have a sudden sales spike.
@morpher44
@morpher44 8 жыл бұрын
I've found that these displays really need the RESET signal brought over to a GPIO. Initialization MUST reset the display. W/o doing so, sometimes the display is all-black and stuck. Other times it has random bits turned on and stuck. There is a reset signal on some of these SSD1306 boards. Don't buy the ones w/o it.
@computersolutions164
@computersolutions164 10 жыл бұрын
+Julian Ilett which Arduino uno board do you use Julian. the ones I have seen do not have SDA and SCL marked at all. So which clone are you using. I've just been to the Arduino site and cannot see it on their boards at all
@iwantitpaintedblack
@iwantitpaintedblack 10 жыл бұрын
The SDA and SCL pins are directly wired to A4 and A5 respectively
@computersolutions164
@computersolutions164 10 жыл бұрын
iwantitpaintedblack OK Thanks
@davo768
@davo768 10 жыл бұрын
Have you done much with "raspberry pi"
@evansymonds5400
@evansymonds5400 8 жыл бұрын
Great vid thanks a lot. Solved a problem I had spent 2 days working on in less than 10 mins.
@beachsandinspector
@beachsandinspector 10 жыл бұрын
Thank you for yet another informative video.
@Coolfolder
@Coolfolder 10 жыл бұрын
What did you do with the pullup resistors? Are they necessary? I want to try it out but I don't want to break it by not using the correct resistors in the right place.
@robertwooster8539
@robertwooster8539 3 жыл бұрын
Not necessary arduino will use internal pull-up
@truthisstrangerthanfiction-f9c
@truthisstrangerthanfiction-f9c 8 жыл бұрын
if u run the i2c scanner (sketch available in arduino playground) would it show the oled same address?
@nickparkison977
@nickparkison977 9 жыл бұрын
Thanks friend. I had the same exact issue. (0x3C)
@Mandrag0ras
@Mandrag0ras 10 жыл бұрын
Is there a screen protector beneath the tape with the red sticker? My tablet had one like that and it was very easy to remove the tape without damaging the screen protector. Obviously I didn't pull it from the red end but the other one.
@JulianIlett
@JulianIlett 10 жыл бұрын
Yes, there is a screen protector. Tried to remove the sticky tape like you said, but it left a sticky mess on the protector - so now I've removed the protector too.
@Mandrag0ras
@Mandrag0ras 10 жыл бұрын
Julian Ilett The residue is also easily removed with acetone (but you have to be sure that it won't damage the screen protector or the screen) or even better benzene(?) for stain removal sold at supermarkets. I'm not sure if it's a proper translation in English but you might know what product I'm talking about. I use it all the time to remove sticky residue and it does a great job. It never caused any damage to plastic materials. Sorry I didn't mention it earlier.
@STRATOS13PAO
@STRATOS13PAO 10 жыл бұрын
nc video as always :-D will that wotk with the arduino uno or the duelmilanova? cause the pins that you used seem to be missing from these oilder arduino versions. also was the pull up resistors nesesary in the end?
@JulianIlett
@JulianIlett 10 жыл бұрын
Thanks. The SDA and SCL pins are directly wired to A4 and A5 respectively. On the Duemilanove and older Unos, you can use those pins instead. Pull up resistors did seem to be required.
@callumkingunderwood
@callumkingunderwood 10 жыл бұрын
Different AVR chips actually have the SDA and SCL wiring in seperate locations. On the original duelmilanova this wasnt an issue as there was only 1 model AVR in use and shields could safely assume SDA and SCL to always be in the same place. With boards now available with different chips and entirely different architectures that assumption is no longer true, most notable SPI is in a totally different place on the arduino mega. With the arduino uno r3 the arduino 1.0 shield pinout was formalised. In the 1.0 pinout, SPI is always available on the ICSP header, dedicated SDA and SCL pins were added which would just be wired in parallel with the respective pin for the chip (so A4 and A5 on the AtMega328) and all new shields are supposed to utilise i2c via the new pins and spi via the ICSP header. Many older shields used A4 and A5 directly for i2c and pins 11, 12 and 13 for SPI. As a result, older SPI shields dont function on the arduino mega which uses an AtMega2560 which has spi on 50, 51 and 52 instead. The leonardo and due don't have SPI on the actual GPIO pins. Now with the r3 layout, SPI is always available in the same place. Check the documentation for your specific board and they will always mention where i2c, spi and uart are available.
@glynnhm0lsg308
@glynnhm0lsg308 9 жыл бұрын
messed around with it for ages couldn't get it going then I put a wire in wrong and it went up in smoke lol, might as well put me 7 quid straight in the bin
@robertwooster8539
@robertwooster8539 3 жыл бұрын
We have all done that it's all part of learning
@jagerbombs2006
@jagerbombs2006 8 жыл бұрын
I tired the 128x64 example and chaged to 0x3C but I still get errors. 128x32 example works though without changing anything. I do have the 128x64 I2C 0.96" WHITE OLED Display. However my pin order is VCC - GND - SCL - SDA Wierd.
@janashreeananthan853
@janashreeananthan853 6 жыл бұрын
Thank u so much for ur tutorial it really worked..i got struck with the address and when i changed from 0x3D to 0x3C it worked well
@donprefontaine3237
@donprefontaine3237 4 жыл бұрын
Curiously, this file (sh1106_128x64_i2c.ino) works equally well under Arduino 1.8.10|File|Examples|Adafruit_SH1106. Disable the SPI "include" cuz you're running I2C. Within the code, the address 0x3C works fine which suggests the silkscreen of 0x78 and 0x7A is really 0x3C and 0x3D. Another fine example of China trying to avoid copyright enfringement?
@BeyondTouring
@BeyondTouring 6 жыл бұрын
What smallest oled screen can be used to play the live feed video through an external camera.
@oioi8087
@oioi8087 10 жыл бұрын
Hello Julian, I bough an OLED 128X64 SPI display from eBay and I don't know how to connect it, The pins are: GND, VCC, D0, D1, RES, DC, CS. Can you help me hooking it up to the arduino?
@JulianIlett
@JulianIlett 10 жыл бұрын
Oi Oi Try this tutorial: kzbin.info/www/bejne/iHLPi2R6fdxjack. You don't seem to have a CLK pin - it may be D0 - you'll have to try it and see.
@ProtoG42
@ProtoG42 9 жыл бұрын
Is that clay that you're using or some sort of putty?
@-The-Darkside
@-The-Darkside 9 жыл бұрын
Looks like a white blu-tac
@BugBot9000Studios
@BugBot9000Studios 9 жыл бұрын
Hi Julian, Where did you get the dupont connector wire?
@SameerKhan-lf2gu
@SameerKhan-lf2gu 8 жыл бұрын
i want to just ask that, this is supported to run a movie on it
@RichardBousquet
@RichardBousquet 8 жыл бұрын
Looks like 0x3C is used on the 128x32 displays (check the 128x32 i2c example). I have a 128x64 that doesn't seem to be functioning properly, it only works if I change the height to 32, but then the data is too large for the display (only see half of what I should)
@marcinswiercz5943
@marcinswiercz5943 8 жыл бұрын
I got very similar problem. When verify keeps giving me Height incorrect error, when change it to 32 it is uploading but not working.
@Schauiii
@Schauiii 8 жыл бұрын
Did you fix it? I found the solution for this issue: In Adafruit_SSD1306.h 1. uncomment #define SSD1306_128_64 2. comment #define SSD1306_128_32 3. comment #define SSD1306_96_16 In the example ssd1306_128x64_i2c 4. add #define SSD1306_LCDHEIGHT 64 on top of #if (SSD1306_LCDHEIGHT != 64) #error("Height incorrect, please fix Adafruit_SSD1306.h!"); #endif
@alankingvideo
@alankingvideo 7 жыл бұрын
I had the same problem, the library has the 32 line display as default. I got the height error. All working now, wish I had seen this earlier as I worked it out the hard way, note to self, read all the comments first!
@nickoutram6939
@nickoutram6939 8 жыл бұрын
Awesome! :o) :o) Makes me wonder why they don't include a couple of 10k pullup resistors though -did you try it without those resistors to see if it still worked after you changed the address?
@monkeyjuju7441
@monkeyjuju7441 8 жыл бұрын
you don't actually need the 10k pull ups
@mohitarora8754
@mohitarora8754 6 жыл бұрын
How to clear single character on oled instead of complete oled screen. Can you suggest please???
@jvejvad
@jvejvad 6 жыл бұрын
I made it work In 15 min, thanks to your video ! Thanks ;-)
@honzasindler8549
@honzasindler8549 8 жыл бұрын
hey guys, I wonder, wheter it's possible to connect any OLED, for example from scanner. Wouldnt you know how?
@lizardofoz5329
@lizardofoz5329 6 жыл бұрын
OK I got it running. Of all the 37 land mines I had to step on the prize winner is the display has address code 0x78 or 0x7A which it turns out is for 10 bit and doesn't seem to have been included in the sketches. If I hadn't bought 2 other displays of a simpler design I would be in the Drool Factory.
@JulianIlett
@JulianIlett 6 жыл бұрын
Satisfying isn't it - to get it working :)
@lizardofoz5329
@lizardofoz5329 6 жыл бұрын
Yes it is! And at nearly 64 very comforting to know I can still figure things out, eventually.
@boblewis5558
@boblewis5558 6 жыл бұрын
@@lizardofoz5329 What is MOST exasperating and infuriating is seeing the addresses screen printed (the ones you quoted) on the board, using them and after much hair pulling discover that they are completely INCORRECT and actually are the standard default 0x3c address!!! ARRRRGGGHHH!
@eljefe400
@eljefe400 7 жыл бұрын
awesome! this was a fantastic time saver. thanks for sharing...
You can learn Arduino in 15 minutes.
16:34
Afrotechmods
Рет қаралды 10 МЛН
Don’t Choose The Wrong Box 😱
00:41
Topper Guild
Рет қаралды 28 МЛН
One day.. 🙌
00:33
Celine Dept
Рет қаралды 61 МЛН
Top 5 Arduino Displays
6:29
educ8s.tv
Рет қаралды 633 М.
1-Day Project: Arduino and nRF24L01+ Data Transceiver
15:26
Julian Ilett
Рет қаралды 293 М.
Full video - Data recovery from a dead MicroSD card
16:01
DevelopAKR
Рет қаралды 421 М.
3 INCREDIBLE projects DIY with ARDUINO
16:17
Daniele Tartaglia
Рет қаралды 222 М.
OLED Displays with Arduino - I2C & SPI OLEDs
41:41
DroneBot Workshop
Рет қаралды 1,1 МЛН
1-Day Project: Build Your Own Arduino Uno for $5
14:23
Julian Ilett
Рет қаралды 1,6 МЛН
3 engineers race to design a PCB in 2 hours | Design Battle
11:50
Predictable Designs
Рет қаралды 448 М.
Don’t Choose The Wrong Box 😱
00:41
Topper Guild
Рет қаралды 28 МЛН