Skip to content
Snippets Groups Projects
Commit 31e47146 authored by dx's avatar dx
Browse files

Revert "py: use InputController in simple_drums"

This reverts commit 36d14db5.
parent 4d791a26
No related branches found
No related tags found
No related merge requests found
......@@ -57,6 +57,7 @@ class SimpleDrums(Application):
self.seq.signals.bpm.value = 80
self.track_names = ["kick", "hihat", "snare"]
self.ct_prev = captouch.read()
self.track = 0
self.blm.background_mute_override = True
self.tap_tempo_press_counter = 0
......@@ -64,14 +65,6 @@ class SimpleDrums(Application):
self.stopped = False
self.bpm = self.seq.signals.bpm.value
# True if a given group should be highlighted, when a corresponding
# petal is pressed.
self._group_highlight = [False for _ in range(4)]
# Disable repeat functionality as we want to detect long holds.
for i in range(10):
self.input.captouch.petals[i].whole.repeat_disable()
def _highlight_petal(self, num: int, r: int, g: int, b: int) -> None:
for i in range(5):
leds.set_rgb((4 * num - i + 2) % 40, r, g, b)
......@@ -90,7 +83,7 @@ class SimpleDrums(Application):
dots = []
groupgap = 4
for i in range(4):
if self._group_highlight[i]:
if self.ct_prev.petals[4 - i].pressed:
dots.append(
Dot(
48 + groupgap,
......@@ -173,19 +166,17 @@ class SimpleDrums(Application):
self._highlight_petal(10 - (4 - (st // 4)), *rgb)
self._highlight_petal(10 - (6 + (st % 4)), *rgb)
leds.update()
petals = self.input.captouch.petals
self._group_highlight = [False for _ in range(4)]
ct = captouch.read()
for i in range(4):
if petals[4 - i].whole.down:
self._group_highlight[i] = True
if ct.petals[4 - i].pressed:
for j in range(4):
if petals[6 + j].whole.pressed:
if ct.petals[6 + j].pressed and not (
self.ct_prev.petals[6 + j].pressed
):
self.seq.trigger_toggle(self.track, i * 4 + j)
if petals[5].whole.pressed:
self.track = (self.track - 1) % 3
if petals[0].whole.pressed:
if ct.petals[5].pressed and not (self.ct_prev.petals[5].pressed):
self.track = (self.track + 1) % 3
if ct.petals[0].pressed and not (self.ct_prev.petals[0].pressed):
if self.stopped:
self.seq.signals.bpm = self.bpm
self.blm.background_mute_override = True
......@@ -197,7 +188,7 @@ class SimpleDrums(Application):
self.bpm = bpm
self.delta_acc = 0
if petals[0].whole.down:
if ct.petals[0].pressed:
if self.tap_tempo_press_counter > 500:
self.seq.signals.bpm = 0
self.stopped = True
......@@ -209,3 +200,4 @@ class SimpleDrums(Application):
if self.delta_acc < 3000:
self.delta_acc += delta_ms
self.ct_prev = ct
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment