GPIO current source capability IMP004m

Kind of an obvious question, but what is the max current any GPIO on the IMP004m can source or sink ? Particular use case is to drive an optocoupler (MOCD217M) that seems it only requires 1mA If to turn on (although I guess 2mA is better to be on the safe side and maintain some switching speed).

I looked through the STM32F412 datasheet as that is the underlying HW for the 004 and it’s stating
“The GPIOs (general purpose input/outputs) can sink or source up to ±8 mA, and sink or
source up to ±20 mA (with a relaxed VOL/VOH) except PC13, PC14 and PC15 which can
sink or source up to ±3mA”.
Now, we don’t know if the pin we’re intending to use is any of these 3mA ones, but even that should be enough for us.

Bottom line, we could drive the leds with a separate MOSFET, but would like to keep things simple and drive the OK’ LED directly. . What would be your recommendation ?

Other topic, I also saw that the STM32F412 has 5V tolerant GPIO pins. I always thought that was a definite no-go for any imp module. Has that changed with these more recent versions ?

The imp004m doesn’t have over-multiplexed pins (ie several STM32 pins connected to a single module pin) like the 001/002/003 did - which means the ST datasheet can mostly be followed here. You should be fine with 8mA as that indicates.

PC13 is WL_REG_ON, and PC14/15 are the 32kHz oscillator pins, so not user-accessible GPIOs.

Earlier STM32’s (F2s and early F4s) had limitations with 5v tolerance not applying to pins that could support analog inputs, and with the overmuxing this meant that it was safest to document this as no pins being 5v tolerant.

The F412 doesn’t have that limitation though, so the imp004m’s GPIOs are 5v tolerant.