Turning on RGB led with nucleo F767ZI

Hi,

I’d like to turn on an RGB led using stm32 F767ZI but it’s not working.
I’m programming the baord using PlatformIO with Arduino framework.

The led has 4 pins (GND and three other pins for RGB), I also used three resistors of 220kΩ.
On the board I’m using pin PA10 which works (meaning the pin when activated turn the led on (red)) but all the other pins don’t (I tried PA8, PA9, PE11, PE14, PB4,PB5).

I know that they are all pwm pins but I don’t have enough analog pins to control the led so I’m using pwm pins.

My .ini file

[env:nucleo_f767zi]
platform = ststm32
board = nucleo_f767zi
framework = arduino
upload_protocol = stlink
debug_tool = stlink
build_type = debug
monitor_speed = 115200
build_flags = 
	-D USE_FULL_ASSERT
	-D DEBUG
	-D SERIAL_DEBUG
monitor_port = /dev/cu.usbmodem1103
lib_deps = 
	z3t0/IRremote@^4.4.1
	adafruit/Adafruit NeoPixel@^1.12.5

#include<Arduino.h>
constexpr int BLU = PA9;
constexpr int GREEN = PA8;
constexpr int RED = PA10;

void setup() {
  Serial.begin(115200);
    pinMode(BLU, OUTPUT);
    pinMode(RED, OUTPUT);
    pinMode(GREEN, OUTPUT);
}

void loop() {
digitalWrite(BLU, HIGH); 
digitalWrite(RED, LOW); 
digitalWrite(GREEN, LOW);   
}

Only PA10 behaves as expected, the others keep the led off.
What am I doing wrong? Is there something additional to know about stm board functioning?
Using Arduino framework I would expect that timers, etc are handled internally by the lib.

Thank you.

220 kiloohms would be too high of a resistance for an LED to light up, I think you meant 220 Ohm.

Can you try the bog-standard thing first: To make sure it’s not the LED that’s at fault, connect the GND (or, common cathode) of the LED to GND, and then take the 3.3V from the nucleo with a jumper cable to each red, green and blue pin of the LED. Do all colors light up? If not, the microcontroller is not at fault.

What you should also measure is directly the voltage present at the chosen PA9, PA8 and PA10 pins. When you set them to “LOW”, does a multimeter really measure 0V with respect to GND? And conversely, 3.3V when set to HIGH?

Also note that PA8, PA9 might need you to look at the solder bridges for it to be usable via the morpheo header, otherwise they’re used by a USB port:

Yes, sorry. I meant 220Ω.

The led works correctly, the issue is on the board side as I see 0V on PE# pins.
I also notice that my pins headers are not the best, sometimes the jumper wire doens’t properly stick inside the header (PA8 and PA9 work, the wires were not sticking in properly).

Using the multimeter helps a lot to troubleshoot so thank you.