       @current().on()
     )
 
+    @_metronome.onReset(=>
+      step.off() for step in @_steps
+      @_currentIndex = 0
+    )
+
   current: ->
     @_steps[@_currentIndex]
 

      => fnc() for fnc in @_onStep
    , 60 / @_bpm / 4 * 1000)

  onStep: (fnc) ->
    @_onStep.push(fnc)
    @_steps

  setLength: (@_length) ->
    @_metronome.reset()


class Step
