No logic required. You just need an extra ‘m’ in the {time} format string:
------------------------------------------------------------v
formatDateTime(nextLaunch,"E @ h:mm a")
EDIT: I forgot you use this longhand version but still just need an extra ‘m’:
----------------------------------------------------------------------------------------------------------------------v
' @ 'formatDateTime(nextLaunch,"h")':'formatDateTime(nextLaunch,"mm")' 'formatDateTime(nextLaunch,"a")
My expression above produces the same result in a shorter form.
MORE EDIT: If you use the shorter form above, you need to remove the formatDateTime for day of week from the piston state expression. I combined them. I also created a new variable {longTime} with ‘EEEE’ to use for the voice alert.