monome/norns

'send_midi_clock' table can hold duplicates, causing double-clocking (clock.lua)

dndrks opened this issue · 0 comments

dndrks commented
reported via support

Hi folks,

I’m experiencing an issue with a phantom (not else what to call this LOL) system clock that keeps running after I disable all ports in parameters:clock. It also seems to get doubled resulting in weird BPM on the receiving end.

Here’s how I’m able to reproduce:

  1. System restart with no scripts running
  2. Set parameters:clock to Internal, BPM 120, sending out on one port. >> Confirm correct BPM is being detected in my DAW (Ableton, externally synced as follower)
  3. Start Awake script. >> BPM is now detected as something around 128 in DAW
  4. Disable sending of clock on all ports in parameters:clock. >> Clock continues to run and is picked up as 120 BPM in DAW. Changing the BPM in parameters results in the DAW picking up the new tempo despite all ports being disabled in the Norns UI.

The only workaround I have found:

  1. Disable all clock ports
  2. System restart
  3. Launch script
  4. Enable sending of clock on the port in parameters.

I missed some updates prior to stable-230509 update so I’m not sure if it was introduced then. Reproducible with multiple MIDI interfaces.

tracked it down to the lifecycle of the send_midi_clock table, which is freshly initialized at every script load, but is double-tapped by both the parameter rebuild and the params:bang in params:default, which many scripts utilize.

fix incoming!