Originally Posted by
ItsJustMe
It won't be the switch button breaking contact, it's normally open on almost all blinkies and closes when you push it. I think it's almost certain to be the battery contact. Probably not corroded either, I think the mass of the batteries is just forcing them down when you hit a bump and causing the one with the negative downward to momentarily break contact with the top contact.
If so you could quick test, try jamming some foam under beside the coil or tape around the battery to keep it from bouncing.