Master OLED Displays with Arduino, ESP32: A Complete Guide

Поделиться
HTML-код
  • Опубликовано: 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.
  • НаукаНаука

Комментарии • 46

  • @lamboking8able
    @lamboking8able 4 месяца назад +2

    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!!

  • @kevintsilvers
    @kevintsilvers Год назад +1

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

  • @davebutler3905
    @davebutler3905 Год назад +2

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

  • @jamesch9331
    @jamesch9331 Месяц назад +1

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

  • @EnjoyMechatronics
    @EnjoyMechatronics  Год назад +1

    ● LCD Display(ESP32): ruclips.net/video/syQyrjJu0WE/видео.html
    ● Image Converter: javl.github.io/image2cpp/

  • @monzerfaisal3673
    @monzerfaisal3673 Год назад +2

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

  • @kiyoshiyuyama3002
    @kiyoshiyuyama3002 6 месяцев назад +1

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

  • @solidusseal
    @solidusseal 7 дней назад

    Nice one .. Did thje same with the ESP32 . 1 question .. why is the top quarter of the screen yellow ?

  • @bombompow15
    @bombompow15 4 месяца назад +2

    you make my dope receptors go brrr

  • @Clarence_13x
    @Clarence_13x 11 месяцев назад +1

    This was very helpful.

  • @vilassn
    @vilassn 5 месяцев назад +1

    Thanks for your hard work. Your videos are very useful

  • @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.

  • @l.e.dlearneveryday6930
    @l.e.dlearneveryday6930 11 месяцев назад

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

    • @l.e.dlearneveryday6930
      @l.e.dlearneveryday6930 11 месяцев назад +1

      here is my code for anyone who is interested

    • @l.e.dlearneveryday6930
      @l.e.dlearneveryday6930 11 месяцев назад

      //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

  • @am1manTravel
    @am1manTravel Год назад +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!

  • @pradeep6736
    @pradeep6736 9 месяцев назад +1

    thanks a lot sir

  • @alkhashtee
    @alkhashtee 8 месяцев назад +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  8 месяцев назад +1

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

    • @alkhashtee
      @alkhashtee 8 месяцев назад +1

      @@EnjoyMechatronics oh OK Thank you very much Chaker

    • @EnjoyMechatronics
      @EnjoyMechatronics  7 месяцев назад +2

      @@alkhashtee Any Time!

    • @alkhashtee
      @alkhashtee 7 месяцев назад

      @@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.

  • @123masteryoda123
    @123masteryoda123 7 месяцев назад +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  7 месяцев назад +2

      Try changing the address

    • @123masteryoda123
      @123masteryoda123 7 месяцев назад

      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 Месяц назад

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

    • @akibrahman1497
      @akibrahman1497 Месяц назад

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

  • @itolond
    @itolond 2 месяца назад

    is there a way to develop the display groahically?

  • @privatelifeofbetasquad9480
    @privatelifeofbetasquad9480 7 месяцев назад +1

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

  • @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

  • @thetrendingscene3306
    @thetrendingscene3306 11 месяцев назад +1

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

  • @BlondieSL
    @BlondieSL 9 месяцев назад +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.

  • @Afrorack
    @Afrorack 3 месяца назад

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

  • @am1manTravel
    @am1manTravel Год назад +1

    Finished the Muon Detector, here's the vid: ruclips.net/video/3j0bHfRFb-g/видео.html I still need help with the Arduino sketches and OLED. Thanks for all your vids!