# IR LED on Pine Quartz64b

**URL:** https://dietpi.com/forum/t/ir-led-on-pine-quartz64b/14368
**Category:** General Discussion
**Created:** [19 September 2022 14:30 UTC](https://dietpi.com/forum/t/ir-led-on-pine-quartz64b/14368 "2022-09-19T14:30:11Z")
**Posts on this page:** 9
**Page:** 1

<div class="post-metadata">

### Author: ![davejlong](https://dietpi.com/forum/user_avatar/dietpi.com/davejlong/32/2647_2.png) [@davejlong](https://dietpi.com/forum/u/davejlong)
#### Post date: [19 September 2022 14:30 UTC](https://dietpi.com/forum/t/ir-led-on-pine-quartz64b/14368/1 "2022-09-19T14:30:11Z")

</div>

I’m working on trying to get the IR LED working on my Quartz64 Model B, but it looks like DietPi doesn’t enable it by default in the device tree. Has anyone used the IR LED in the Quartz64 model B with DietPi?

If not, perhaps someone can help point me in the right direction to recompile the device tree using the dtoverlay from [Raspberry Pi OS](https://github.com/raspberrypi/linux/blob/rpi-5.4.y/arch/arm/boot/dts/overlays/gpio-ir-overlay.dts). According to the schematic for the board, the IR LED is attached to PWM15\_IR\_M0, which is on pin 1P4 of the RK3566 chip. I’m very new to messing with device trees and what not, so I’m not sure what needs to be updated in the overlay to connect to the proper pins.

---

<div class="post-metadata">

### Author: ![WarHawk](https://dietpi.com/forum/user_avatar/dietpi.com/warhawk/32/21_2.png) [@WarHawk](https://dietpi.com/forum/u/WarHawk)
#### Post date: [20 September 2022 04:23 UTC](https://dietpi.com/forum/t/ir-led-on-pine-quartz64b/14368/2 "2022-09-20T04:23:01Z")

</div>

> [@davejlong](#):
>
> Quartz64 model B

found a bit of information about the IR on that board  
[PINE64 - Onboard IR receiver](https://forum.pine64.org/archive/index.php?thread-5703.html)

---

<div class="post-metadata">

### Author: ![Dietpi](https://dietpi.com/forum/letter_avatar_proxy/v4/letter/d/a9a28c/32.png) [@Dietpi](https://dietpi.com/forum/u/Dietpi)
#### Post date: [31 July 2026 13:58 UTC](https://dietpi.com/forum/t/ir-led-on-pine-quartz64b/14368/3 "2026-07-31T13:58:00Z")

</div>

I have this problem too IR not recognized by system. any thoughts? I had no luck with the above link. would not boot after changes

---

<div class="post-metadata">

### Author: ![usual-user](https://dietpi.com/forum/letter_avatar_proxy/v4/letter/u/3be4f8/32.png) [@usual-user](https://dietpi.com/forum/u/usual-user)
#### Post date: [31 July 2026 18:15 UTC](https://dietpi.com/forum/t/ir-led-on-pine-quartz64b/14368/4 "2026-07-31T18:15:14Z")

</div>

Does the gpio-ir-recv driver pick it up when rk3566-quartz64-b-rc.dtbo is applied?

[rk3566-quartz64-b-rc.dtbo.gz](https://dietpi.com/forum/uploads/short-url/wZuHsRWRFXBouPQRFTvjsnCXfp3.gz) (353 Bytes)

---

<div class="post-metadata">

### Author: ![Totof](https://dietpi.com/forum/user_avatar/dietpi.com/totof/32/6390_2.png) [@Totof](https://dietpi.com/forum/u/Totof)
#### Post date: [1 August 2026 07:41 UTC](https://dietpi.com/forum/t/ir-led-on-pine-quartz64b/14368/5 "2026-08-01T07:41:19Z")

</div>

Hello Davejlong

You need to apply a DTBO overlay with a script with a few command line  
for exemple see below the script

```auto
# Create the directory for user overlays
mkdir -p /boot/overlay-user
cd /boot/overlay-user
# Create the overlay source file
cat << '_EOF_' > ir-rx-overlay.dts
/dts-v1/;
/plugin/;

/ {
    compatible = "rockchip,rk3566";

    fragment@0 {
        target = <&pwm15>;
        __overlay__ {
            status = "okay";
        };
    };

    fragment@1 {
        target-path = "/";
        __overlay__ {
            ir_receiver: ir-receiver {
                compatible = "gpio-ir-receiver";
                // Adjust pin mapping to match your specific GPIO/IR line 
                gpios = <&gpio3 RK_PC5 GPIO_ACTIVE_LOW>;
                pinctrl-names = "default";
                linux,rc-map-name = "rc-rc6-mce";
                status = "okay";
            };
        };
    };
};
_EOF_
# Install the device tree compiler
apt install device-tree-compiler
# Compile the overlay binary file
dtc -I dts -O dtb -o ir-rx-overlay.dtbo -@ ir-rx-overlay.dts
# To see the result of the compiler uncommit next line
#fdtdump ir-rx-overlay.dtbo
# Enable the user overlay via U-Boot environment file
#G_CONFIG_INJECT 'user_overlays=' 'user_overlays=ir-rx-overlay' /boot/dietpiEnv.txt

```

The command line to create and apply the DTBO file

In a terminal just a few command when you are connected

```auto
sudo nano ir-rx.sh

```

Copy and past the script

Ctrl+o to write the line and Ctrl+x to save and exit

Run the script

```auto
sh ir-rx.sh

```

Inject the user-overlay

```auto
G_CONFIG_INJECT 'user_overlays=' 'user_overlays=ir-rx-overlay' /boot/dietpiEnv.txt

```

And reboot

That’s all 😉

Try and tell us

---

<div class="post-metadata">

### Author: ![Totof](https://dietpi.com/forum/user_avatar/dietpi.com/totof/32/6390_2.png) [@Totof](https://dietpi.com/forum/u/Totof)
#### Post date: [1 August 2026 10:44 UTC](https://dietpi.com/forum/t/ir-led-on-pine-quartz64b/14368/6 "2026-08-01T10:44:55Z")

</div>

@MichaIng  
After a quick response , can you have a look to this

```auto
G_CONFIG_INJECT 'user_overlays=' 'user_overlays=ir-rx-overlay' /boot/dietpiEnv.txt

```

There is no “dietpiEnv.txt” in the img file but a “extlinux.conf”

Thanks

---

<div class="post-metadata">

### Author: ![MichaIng](https://dietpi.com/forum/user_avatar/dietpi.com/michaing/32/7_2.png) [@MichaIng](https://dietpi.com/forum/u/MichaIng)
#### Post date: [1 August 2026 14:18 UTC](https://dietpi.com/forum/t/ir-led-on-pine-quartz64b/14368/7 "2026-08-01T14:18:41Z")

</div>

Yes, our Quartz64 images are do not use a `boot.scr`, no `/boot/overlay-user`, no `/boot/dietpiEnv.txt`, but `/boot/extlinux/extlinux.conf` instead.

If you want to apply an overlay, use `fdtoverlays /path/to/overlay.dtbo` in `/boot/extlinux/extlinux.conf`. So the whole script would be:

```sh
# Create the overlay source in /boot
cd /boot
cat << '_EOF_' > ir-rx-overlay.dtso
/dts-v1/;
/plugin/;

&pwm15 {
    status = "okay";
};

&{/} {
    ir_receiver: ir-receiver {
        compatible = "gpio-ir-receiver";
        // Adjust pin mapping to match your specific GPIO/IR line 
        gpios = <&gpio3 RK_PC5 GPIO_ACTIVE_LOW>;
        pinctrl-names = "default";
        linux,rc-map-name = "rc-rc6-mce";
        status = "okay";
    };
};
_EOF_
# Install the device tree compiler
apt install device-tree-compiler
# Compile the overlay binary file
dtc -@ -I dts -O dtb -o ir-rx-overlay.dtbo ir-rx-overlay.dtso
# Enable the overlay via extlinux
G_CONFIG_INJECT 'fdtoverlays[[:blank:]]' 'fdtoverlays /boot/ir-rx-overlay.dtbo' /boot/extlinux/extlinux.conf

```

_I switched to simpler modern dts syntax._

---

<div class="post-metadata">

### Author: ![Totof](https://dietpi.com/forum/user_avatar/dietpi.com/totof/32/6390_2.png) [@Totof](https://dietpi.com/forum/u/Totof)
#### Post date: [1 August 2026 16:02 UTC](https://dietpi.com/forum/t/ir-led-on-pine-quartz64b/14368/8 "2026-08-01T16:02:33Z")

</div>

> [@MichaIng](#):
>
> /boot/extlinux/extlinux.conf

Thanks a lot @MichaIng

just the last line to apply the custom overlay is

```auto
G_CONFIG_INJECT 'fdtoverlays[[:blank:]]' 'fdtoverlays /boot/ir-rx-overlay.dtbo' /boot/extlinux/extlinux.conf

```

🤩

If @davejlong can tell if it help ?

---

<div class="post-metadata">

### Author: ![MichaIng](https://dietpi.com/forum/user_avatar/dietpi.com/michaing/32/7_2.png) [@MichaIng](https://dietpi.com/forum/u/MichaIng)
#### Post date: [1 August 2026 16:51 UTC](https://dietpi.com/forum/t/ir-led-on-pine-quartz64b/14368/9 "2026-08-01T16:51:52Z")

</div>

Thanks for the correction of my copy&paste mistake 😄. I edited it in my reply.
