1580s, "complain in a low voice;" 1590s, "make a low, rumbling sound," from Middle French grommeler "mutter between the teeth" or directly from Middle Dutch grommelen "murmur, mutter, grunt," from grommen "to rumble, growl." Imitative, or perhaps akin to grim (adj.). With unetymological -b- as in mumble. Related: Grumbled; grumbling.
1620s, from grumble (v.).