NeoPixel + Pixhawk 2.4.8

I try to handle WS2812 Led by Pixhawk 2.4.8.
I have arducopter 4.2.3 (Pixhawk1-1M firmware from Mission Planner)

I use 4 ESC on 1-4 main outputs, FrSky telemetry(serial4), external GPS+compass in default configuration - everything works fine.
But I try to connect NeoPixel led to pixhawk because I want have Led notification during flight but it doesn’t work.
I connected diode to AUX1 (servo9) and set options like below:


Led has external 5V power supply, and is connected to pixhawk with GND and SIGNAL.

I’d also read this thread:
WS2812B (NeoPixel) Integration - ArduCopter / Copter 4.0 - ArduPilot Discourse

and I saw that some people had message like this:

25/03/2020 12:36:13 : RCOut: PWM:1-8 NeoP:9-12 PWM:13-14

but i have only: (without “NeoP”)

30.09.2022 20:45:36 : Frame: QUAD/X
30.09.2022 20:45:36 : IMU0: fast sampling enabled 8.0kHz/1.0kHz
30.09.2022 20:45:36 : RCOut: PWM:1-8 PWM:10-14
30.09.2022 20:45:36 : Pixhawk1-1M 00240020 31385119 39393931
30.09.2022 20:45:36 : ChibiOS: 38022f4f
30.09.2022 20:45:36 : ArduCopter V4.2.3 (a480c0a7)

I’m sure that WS2812 is okay because I connected it to Arduino and it works fine.
Can You advice me guys what I’m doing wrong? Did I chose wrong firmware?

1 Like

Yes, as I told you in the other thread. The correct firmware for those 2.4.8’s is Pixhawk1 not Pixhawk-1-1M which is feature limited.

1 Like

Hi, Thank You for Help Dave (dkemxr). I uploaded Pixhawk1 firmware, but it still doesn’t work.
Still don’t have in massages “NeoP” configuration on outputs. Any other tips?

1 Like

I have a actual Pixhawk1-1M in the junk drawer and it configures Neopixel. SERVO9_FUNCTION to 120 NFT_LED_TYPES check the Neopixel box (it’s at 257). No other changes. You can see due to the shared timers it will configure 9-12 so if you want to use 9 you can’t configure anything else on those. You don’t need the Servo GPIO mask perhaps it’s the reason it’s not working.


Very, very thank You Dave, it’s work!
You’re really help me.
Also work with Internal Toshiba LED.

Can You also explain why we shouldn’t use servo_gpio_mask in this case?

I hope that will be very helpful thread for others.
Thanks again.

A GPIO configured output is not what you want for Neopixel. That’s appropriate for driving relays or analog inputs.