Master OLED Displays with Arduino, ESP32: A Complete Guide

แชร์
ฝัง
  • เผยแพร่เมื่อ 13 ก.พ. 2023
  • This step-by-step tutorial teaches how to use OLED displays with your Arduino or ESP32 microcontroller. Follow along as we cover the basics of wiring, programming, and controlling OLED displays, and discover how to display text, graphics, and animations. By the end of this video, you'll have the knowledge and confidence to incorporate OLED displays into your own projects.
    Get 5 OLED Displays (Less than 15$) :
    amzn.to/43TXRvd
    Best Arduino Starter Kit 👇
    ✅ amzn.to/3TUro3o
    ● LCD Display: • ESP32 Project - Digita...
    ● Image Converter: javl.github.io/image2cpp/
    ♥ Don't Click This! : bit.ly/3jvI8g6
    --------------------------------------------------------------------
    FOLLOW ME:
    ● TikTok :
    / enjoy_mechatronics
    ● Facebook: / enjoymechatronics
    ● Github: github.com/Enjoy-Mechatronics
    --------------------------------------------------------------------
    ► All content by Enjoy Mechatronics is 100% free. I believe that education should be freely available to everyone.
  • วิทยาศาสตร์และเทคโนโลยี

ความคิดเห็น • 45

  • @kevintsilvers
    @kevintsilvers 11 หลายเดือนก่อน +1

    Thank you for taking the time to do this. It was my first display image that I ever created. What a learning process.

  • @lamboking8able
    @lamboking8able 3 หลายเดือนก่อน +1

    Thank you. All I had to do was change D to C. now it's time to solve the next 12 problems. one at a time!!

  • @davebutler3905
    @davebutler3905 ปีที่แล้ว +2

    Thank you.
    Very short and to the point.
    Practical examples are the way to go!

  • @jamesch9331
    @jamesch9331 17 วันที่ผ่านมา +1

    Legend thanks.i was wondering how I get an image onto the display. Thanks a lot

  • @monzerfaisal3673
    @monzerfaisal3673 ปีที่แล้ว +2

    Shukran! Thank you very much bro! Very helpful for someone who doesn't know low level coding well!

  • @EnjoyMechatronics
    @EnjoyMechatronics  ปีที่แล้ว +1

    ● LCD Display(ESP32): th-cam.com/video/syQyrjJu0WE/w-d-xo.html
    ● Image Converter: javl.github.io/image2cpp/

  • @426F6F
    @426F6F ปีที่แล้ว +1

    That image to HEX array generator is really cool! I wonder how to program that!

    • @EnjoyMechatronics
      @EnjoyMechatronics  ปีที่แล้ว +2

      Yeah, you could learn about image processing using Python.

  • @vilassn
    @vilassn 4 หลายเดือนก่อน +1

    Thanks for your hard work. Your videos are very useful

  • @Clarence_13x
    @Clarence_13x 11 หลายเดือนก่อน +1

    This was very helpful.

  • @am1manTravel
    @am1manTravel 11 หลายเดือนก่อน +2

    I'm building a simple Muon detector. I learn mainly from the YT vids. Anyhow the end result of the detector is a LED that flashes every time a muon is detected. Well, I can't sit there and watch it waiting for the LED to flash every now and then.
    So I purchased a 128x64 OLED. I would like to keep the LED and further connect the leads from the LED to an arduino nano and the OLED with the hopes of somehow getting the arduino and OLED to maybe show a cumulative total of all the muons (flashes) detected. Even better would be showing how many detected in last 24 hours, and the last week, and the last month all on the OLED. Perhaps I am a dreamer but it should be possible. I'm a novice so any help would be greatly appreciated! Thank you!

  • @l.e.dlearneveryday6930
    @l.e.dlearneveryday6930 10 หลายเดือนก่อน

    Thank you so much.. finally found a way to display on i2c oled using esp32 cam module.

    • @l.e.dlearneveryday6930
      @l.e.dlearneveryday6930 10 หลายเดือนก่อน +1

      here is my code for anyone who is interested

    • @l.e.dlearneveryday6930
      @l.e.dlearneveryday6930 10 หลายเดือนก่อน

      //code my demon
      #include
      #include
      #include
      #define OLED_SDA 14 // Use GPIO 14 for I2C SDA
      #define OLED_SCL 15 // Use GPIO 15 for I2C SCL
      #define SCREEN_WIDTH 128
      #define SCREEN_HEIGHT 64
      #define OLED_RESET -1 // Set OLED_RESET to -1 if the display does not have a reset pin
      #define SCREEN_ADDRESS 0x3C // Change this address according to your OLED display
      Adafruit_SSD1306 display(SCREEN_WIDTH, SCREEN_HEIGHT, &Wire, OLED_RESET, OLED_SCL, OLED_SDA); // send the i2c pins to the library before initializing.
      void setup() {
      Wire.begin(OLED_SDA, OLED_SCL);
      display.begin(SSD1306_SWITCHCAPVCC, SCREEN_ADDRESS);
      //put uar code here
      // Clear the display buffer
      display.clearDisplay();
      // Set text size and color
      display.setTextSize(1);
      display.setTextColor(SSD1306_WHITE);
      // Print "Hello world" at the center of the display
      display.setCursor((SCREEN_WIDTH - 12 * 6) / 2, (SCREEN_HEIGHT - 8) / 2);
      display.println("Hello world");
      // Update the OLED display
      display.display();
      }
      void loop() {
      // Add your code here if you want to do something continuously
      }

    • @EnjoyMechatronics
      @EnjoyMechatronics  10 หลายเดือนก่อน +2

      Glad it helped

  • @itolond
    @itolond หลายเดือนก่อน

    is there a way to develop the display groahically?

  • @bombompow15
    @bombompow15 4 หลายเดือนก่อน +2

    you make my dope receptors go brrr

  • @alkhashtee
    @alkhashtee 7 หลายเดือนก่อน +1

    Thank you for sharing your valuable knowledge my friend. But I wanted to ask you what Arduino IDE do you use and how we set it up?

    • @EnjoyMechatronics
      @EnjoyMechatronics  7 หลายเดือนก่อน +1

      I am using the latest version
      Just download it and install it

    • @alkhashtee
      @alkhashtee 7 หลายเดือนก่อน +1

      @@EnjoyMechatronics oh OK Thank you very much Chaker

    • @EnjoyMechatronics
      @EnjoyMechatronics  6 หลายเดือนก่อน +2

      @@alkhashtee Any Time!

    • @alkhashtee
      @alkhashtee 6 หลายเดือนก่อน

      @@EnjoyMechatronics thank you again Chaker, and I sent you an email regarding freelance work and not sure if you got it or not. Please let me know.

  • @kiyoshiyuyama3002
    @kiyoshiyuyama3002 5 หลายเดือนก่อน +1

    日本語ですみません。非常に判りやすかったです。Good。

  • @privatelifeofbetasquad9480
    @privatelifeofbetasquad9480 6 หลายเดือนก่อน +1

    Hey do u know why my oled regulator got burned after inserting to vin

  • @BlondieSL
    @BlondieSL 8 หลายเดือนก่อน +2

    The problem with those AdaFruit libraries is that they are memory hogs.
    Look how, with just the few lines to set up the display and only print "hello world" the sketch already takes up 42% of program storage space.
    I used to use these little displays and the color version as well, but after displaying a few things, the memory is just eaten up.
    Some may also notice that once you get above 72% (around there) the Arduino boards start glitching out.
    I had so many problems with that bug.
    Then, I found a library that was very small as it was only ASCII and no graphics. That was good enough for what I was doing.
    This took up much less memory.
    But on bigger projects using the color display, again, so much memory sucked up that there wasn't enough left to do anything decent.
    At that time, I changed to using Nextion displays, WITHOUT their HUGE libraries.
    NO more memory issues.
    Then, I moved over to ESP32 boards and of course, no more memory issues.

  • @123masteryoda123
    @123masteryoda123 6 หลายเดือนก่อน +3

    Help, I hooked up all correctly, code is correct. What I get is the first 5 or 6 lines that seem to be working correctly, but all the lower lines are just stagnate and not moving but with a random pattern. I've tried 6 different OLED (all same model and Manufacture), and I've tried 2 different Arduino, one Uno and one Nano with the same result. I find it hard that all 6 OLEDS are bad, but... Changed wires, change com ports, had a few beers...

    • @EnjoyMechatronics
      @EnjoyMechatronics  6 หลายเดือนก่อน +2

      Try changing the address

    • @123masteryoda123
      @123masteryoda123 6 หลายเดือนก่อน

      Nothing works then. Is it possible the displays are not SSD1306 compatible. They list as SSH1106. I reordered new ones that do say SSD1306 in the description. @@EnjoyMechatronics

    • @123masteryoda123
      @123masteryoda123 6 หลายเดือนก่อน

      Turns out it was the wrong chipset SSH1106. Once I plugged the ssd1306, no issues.
      @@EnjoyMechatronics

    • @akibrahman1497
      @akibrahman1497 13 วันที่ผ่านมา

      Did you get any solution? I am also facing the problem and I'm becoming very frustrated.

    • @akibrahman1497
      @akibrahman1497 13 วันที่ผ่านมา

      ​@@EnjoyMechatronicsplease help me I'm getting same error and changing the address is not the. Solution please help brother.

  • @rico8192
    @rico8192 ปีที่แล้ว +1

    Hi. Is there code anywhere that explains how one could "turn off" the display with a button push. The only thing I know that its more of a black screen rather than a 0v to the display. Thank you

    • @EnjoyMechatronics
      @EnjoyMechatronics  ปีที่แล้ว +3

      Connect vcc to a digital pin like 2 and use digitalWrite(2,HIGH) to turn it on
      And digitalWrite(2,LOW) to turn it off

    • @rico8192
      @rico8192 ปีที่แล้ว

      I read about that but rumor has it that its just the same effect as turning on/off which is no good as it has to sync up again with spi or i2c signals that could render gibberish on the display once it comes on

  • @pradeep6736
    @pradeep6736 8 หลายเดือนก่อน +1

    thanks a lot sir

  • @thetrendingscene3306
    @thetrendingscene3306 10 หลายเดือนก่อน +1

    It's possible to run two displays on same esp32 ?

  • @Afrorack
    @Afrorack 2 หลายเดือนก่อน

    Would have been better if you don't use Adafruit libraries and show how to build fonts and graphics.

  • @am1manTravel
    @am1manTravel 11 หลายเดือนก่อน +1

    Finished the Muon Detector, here's the vid: th-cam.com/video/3j0bHfRFb-g/w-d-xo.html I still need help with the Arduino sketches and OLED. Thanks for all your vids!