So I generally prefer enum to define since the debugger can decode it, but why not use the mavlink message IDs here instead?

e.g. MAVLINK_MSG_ID_ATTITUDE

since each of these enums map to you sending a particular mavlink message.