Officials said the suspect, identified as Anthony Oliver, 54, opened fire after boarding a Metro bus near the Kalamazoo Transit Center around 9 a.m. ET, FOX 17 of Grand Rapids reported.
Police said his motive was unclear.
All of the victims were expected to survive.
Oliver was taken to a hospital where he later died. He was shot after exchanging fire with officers outside the bus, according to MLive.com reported.
Metro bus service was canceled for the rest of the day, according to FOX 17.