Olá.
Não acho que seja uma questão de código, então nem mesmo olho para ele.
É a fonte de alimentação, não sei quanto o módulo de vibração consome mas com certeza muito e os 9V da célula seca não chegam. Meça-os se perceber que assim que o usar, você não terá mais os 9v, mesmo que sejam novos, com certeza terá algo menos.
Baterias secas, quando gastam ou pedem muita corrente, baixam os volts nominais até abaixo dos 5V que o seu arduino precisa, (principalmente nos picos de partida do módulo vibrador), produzindo um "brown out reset", "BOR", e nada funcionando .
Você deve mudar para baterias recarregáveis do tipo ni-mh ou lipo, pois elas mantêm a voltagem constante, independentemente dos requisitos de corrente do dispositivo conectado a elas. Saudações.