Raspberry Pi Zero - PWM Backlight Overlay

  • Hallo zusammen,

    ich versuche auf meinem Raspberry Pi Zero ein PWM-Backlight auf GPIO 12 (BCM 18) einzurichten. Ziel ist es, die Helligkeit einer LED/Display-Beleuchtung über das Standard-Backlight-Interface (/sys/class/backlight/) mit Werten von 0-100% zu steuern.

    Könnt ihr bitte prüfen, ob meine Device-Tree-Overlay-Konfiguration korrekt ist?

    Meine Hardware:

    · Raspberry Pi Zero
    · GPIO Pin 12 (BCM 18)
    · PWM-fähige LED/Backlight

    Meine Device-Tree-Overlay Konfiguration (backlight-gpio12.dts):


    Installation:

    ```bash

    # Kompiliert mit:

    dtc -@ -I dts -O dtb -o backlight-gpio12.dtbo backlight-gpio12.dts

    # Aktiviert in config.txt:

    dtoverlay=backlight-gpio12

    Meine Fragen:

    1. Ist die Pin-Konfiguration korrekt? (GPIO 18, ALT5 für PWM0)
    2. Stimmt die PWM-Konfiguration? (Kanal 0, 1000000ns = 1000Hz)
    3. Sind die brightness-levels korrekt definiert?
    4. Fehlt etwas in der enable-gpios Definition?
    5. Gibt es Kompatibilitätsprobleme mit dem Raspberry Pi Zero?

    Aktuelles Verhalten:

    Nach dem Boot erscheint das Device unter /sys/class/backlight/backlight/ aber die Helligkeitssteuerung funktioniert nicht wie erwartet.

    Was ich erreichen möchte:

    · echo 50 > /sys/class/backlight/backlight/brightness sollte 50% Helligkeit setzen
    · Automatische Erstellung des Backlight-Devices beim Boot
    · Cleanes Power Management

    Hat jemand Erfahrung mit PWM-Backlight-Overlays auf dem Pi Zero? Über jeden Hinweis wäre ich dankbar

  • Hallo Martin28


    ich habe dieses verwendet


    Aber leider tut es auch nicht

  • Nabend Coolboy ,

    vielleicht sind deine brightness-levels zu gering, bin mir nicht sicher, glaube aber das sind 12-bit Werte für den PWM 0 - 4095 (212-1). Versuchs mal ohne die Zeilen f. brightness-levels (einfach auskommentieren mit /* .......*/) und default-brightness-level z.B. <4000>.

    Mehr fällt mir heute abend nicht ein.

    Gruß Martin

  • Hallo Coolboy ,

    hier gefunden: echo 0 > /sys/class/backlight/backlight/bl_power

    Da tut sich dann wohl mit dem Overlay etwas am PWM Ausgang (hier mit 50%):

    Code
    # cat /sys/kernel/debug/pwm
    0: platform/3f20c000.pwm, 2 PWM devices
     pwm-0   (backlight           ): requested enabled period: 1000000 ns duty: 500000 ns polarity: normal
     pwm-1   ((null)              ): period: 0 ns duty: 0 ns polarity: normal

    Gruß Martin

    EDIT : Erklärung zu den Werten in der bl_power - Datei auch hier: https://github.com/raspberrypi/li…class-backlight. Eine Möglichkeit, das im Overlay einzustellen habe ich nicht gefunden.

    Martin

    Edited once, last by Martin28 (September 4, 2025 at 10:53 AM).

Participate now!

Don’t have an account yet? Register yourself now and be a part of our community!