Troubleshooting - tildemark/ESP32-OLED-GME12864-78 GitHub Wiki

Troubleshooting

This page provides solutions to common issues encountered during setup and operation of the ESP32 OLED display project.

OLED Display Not Showing Anything

  • Check Wiring:
    • Ensure all connections between the ESP32 and the OLED display are secure and correctly matched.
    • Verify that the SDA and SCL pins are connected to the correct pins on both the ESP32 and the OLED.
    • Double-check the power (VCC) and ground (GND) connections.
  • Verify Power:
    • Confirm that the OLED display is receiving the correct voltage (usually 3.3V or 5V).
    • If using the ESP32 expansion board, make sure the jumper is set to the correct voltage.
  • Check I2C Address:
    • The OLED display typically uses I2C. Ensure that the I2C address in your code matches the address of your display (commonly 0x3C or 0x3D).
    • Use an I2C scanner sketch to verify the address if you are unsure.
  • Library Issues:
    • Make sure the Adafruit SH110X and Adafruit GFX libraries are correctly installed.
    • Verify that you are using compatible versions of the libraries.
    • If using Wokwi, ensure the libraries are correctly uploaded to the libraries folder.
  • Code Issues:
    • Check your code for any errors that might prevent the display from initializing or displaying content.
    • Ensure that the display initialization code is executed correctly.
    • Verify the contrast settings in the code.

Display Showing Garbled or Incorrect Content

  • Wiring Issues:
    • Loose or incorrect wiring can cause data corruption.
    • Check for any short circuits or poor connections.
  • I2C Communication Errors:
    • I2C communication can be sensitive to noise.
    • Keep wires short and avoid running them near noisy components.
    • If using long wires, consider adding pullup resistors.
  • Code Issues:
    • Verify that the data being sent to the display is formatted correctly.
    • Check for any buffer overflows or memory issues in your code.
    • Verify the font and text encoding being used.

ESP32 Not Connecting to Computer

  • Check USB Cable:
    • Try a different USB cable to rule out a faulty cable.
    • Ensure the cable is properly connected to both the ESP32 and your computer.
  • Driver Issues:
    • Make sure the correct drivers for your ESP32's USB-to-serial chip (e.g., CH340) are installed.
    • If you are using a new computer, you might need to install the drivers.
  • COM Port Issues:
    • Verify that you have selected the correct COM port in your Arduino IDE or PlatformIO settings.
    • Restart your computer and reconnect the ESP32.
  • Power Issues:
    • If the ESP32 is not receiving enough power from the computer's USB port, it might not connect. Try using a powered USB hub.

Wokwi Simulation Issues

  • Incorrect diagram.json:
    • Double-check the diagram.json file for errors in the component definitions or connections.
    • Verify the pin numbers for SDA and SCL.
  • Library Issues:
    • Ensure that the Adafruit SH110X and Adafruit GFX libraries are correctly uploaded to the libraries folder in your Wokwi project.
    • Verify the library folder structure.
  • Code Issues:
    • Check the Wokwi serial monitor for error messages.
    • Verify that your code is compatible with the Wokwi simulation environment.
  • Wokwi limitations:
    • Wokwi is a simulator and may not perfectly emulate all hardware behavior.
    • Some complex interactions or specific hardware features might not be fully supported.

General Tips

  • Restart Everything: Sometimes, simply restarting your computer, ESP32, and development environment can resolve issues.
  • Check Serial Monitor: Use the serial monitor to debug your code and identify any error messages.
  • Simplify Your Setup: If you are experiencing complex issues, try simplifying your setup to isolate the problem.
  • Search Online: Search online forums and communities for solutions to common issues.
  • Refer to Documentation: Consult the documentation for your ESP32, OLED display, and libraries.