Definition - Words that are either:

(1) spelled the same but have different meanings (e.g. bank as in money in the bank and bank of the river);

(2) sound alike but aren't spelled the same (e.g. coarse and course); and

(3) spelt the same but do not sound the same (e.g. lead a horse to water and brains made of lead).

Etymology -
The word derives via Latin from the Greek homonymos, same name (from homos, same + onyma, name).

Oxford English Dictionary -
Its first citation is from 1697:
"Those [words] that differ not in termination; as grammatica, the art of grammar, and grammatica, a woman, are not conjugates, but homonyms."
(tr. Burgersdicius his Logic i. xxv. 100)

Please comment