@startuml 'https://plantuml.com/sequence-diagram actor User as usr participant "Pb L" as pbL participant "Pb R" as pbR participant "LED L" as ledL participant "LED R" as ledR == Single click == group Single click left usr -\ pbL ++: pressButton usr -\ pbL : releaseButton pbL -> ledL --++ : blink usr -\ pbL ++: pressButton usr -\ pbL : releaseButton pbL -> ledL -- : endBlink deactivate ledL end group Single click right usr -\ pbR ++: pressButton usr -\ pbR : releaseButton pbR -> ledR --++ : blink usr -\ pbR ++: pressButton usr -\ pbR : releaseButton pbR -> ledR -- : endBlink deactivate ledR end == Double click == group Double click left usr -\ pbL ++: pressButton usr -\ pbL : releaseButton usr -\ pbL : pressButton pbL -> ledL --++ : blink note right ledL: blink 3x ledL ->x ledL -- : finished end group Double click right usr -\ pbR ++: pressButton usr -\ pbR : releaseButton usr -\ pbR : pressButton pbR -> ledR --++ : blink note right ledR: blink 3x ledR ->x ledR -- : finished end == Long click == group Long click left usr -\ pbL ++: pressButton pbL -> ledR--: blink activate ledL activate ledR usr -\ pbL ++: pressButton pbL -> ledR -- : endBlink deactivate ledL deactivate ledR end group Long click right usr -\ pbR ++: pressButton pbR -> ledR--: blink activate ledL activate ledR usr -\ pbL ++: pressButton pbL -> ledR -- : endBlink deactivate ledL deactivate ledR end @enduml