PWM on pin32 with J401 board + Jetson Orin Nano

Hi! Yes, the Jetson Orin Nano differs slightly from the original Jetson Nano in how it handles pin multiplexing and PWM configuration — especially with expansion boards like the Seeed J401.

Here’s how you can approach it:

Differences from Jetson Nano:
While the blog you referenced (PWM on Jetson Nano) is great for Nano, the Jetson Orin Nano uses a different device tree structure and pinmux configuration.

Steps to Enable PWM on Pin 32 (J401 + Orin Nano):

1. Confirm Pin Mapping on J401 for Orin Nano

Pin 32 corresponds to GPIO3_PQ.05 (on Orin Nano) — not the same as Nano.
Use this reference:

2. Edit Pinmux Configuration

You’ll likely need to modify the device tree using the Jetson Linux Customization Guide ( [Welcome — Jetson Linux
Developer Guide 34.1 documentation]).

  • Generate the pinmux spreadsheet via NVIDIA tools

  • Set pin 32 (PQ.05) to PWM mode

  • Compile DTB and flash using SDK Manager or manual flashing

  1. Check Jetson PWM Driver

Load the driver if it’s not already:

sudo modprobe pwm-fan

  1. Use /sys/class/pwm/ Interface

After enabling, you should see:

/sys/class/pwm/pwmchip0/

Export and control PWM via:

echo 0 > export
echo 1000000 > pwm0/period
echo 500000 > pwm0/duty_cycle
echo 1 > pwm0/enable

Extra Resources:

  • NVIDIA Jetson Orin Nano Developer Kit Docs

  • Jetson Linux Pinmux Reference

  • Robocraze’s Nvidia Jetson Nano Page (good for kits & guides if you’re in India)

If I manage to test this setup on the J401 in the next few days, I’ll report back. Let me know if you’ve tried any specific DT overlay or Jetpack version — that can affect compatibility.

Cheers!