DennyTom's buttery_engine (#8138)
* Selectively adding pieces * Adding georgi keymap * Adding more files, fixing make * Smaller makefiles * Fixing make rules * README more inline with QMK's guidelines * Turning off buggy assert * Improving documentation based on a user feedback. * Slightly better schema * Resurrected state machine diagram
This commit is contained in:
parent
ae74922d14
commit
e409fb47f2
22 changed files with 7419 additions and 0 deletions
49
users/dennytom/chording_engine/state_machine.dot
Normal file
49
users/dennytom/chording_engine/state_machine.dot
Normal file
|
@ -0,0 +1,49 @@
|
|||
digraph {
|
||||
IDLE
|
||||
READY
|
||||
ACTIVATED
|
||||
DEACTIVATED
|
||||
PRESS_FROM_ACTIVE
|
||||
FINISHED_FROM_ACTIVE
|
||||
IDLE_IN_DANCE
|
||||
READY_IN_DANCE
|
||||
FINISHED
|
||||
LOCKED
|
||||
READY_LOCKED
|
||||
RESTART
|
||||
IN_ONE_SHOT
|
||||
|
||||
// common
|
||||
FINISHED -> RESTART;
|
||||
RESTART -> IDLE;
|
||||
DEACTIVATED -> IDLE_IN_DANCE;
|
||||
|
||||
// kill_one_shots()
|
||||
IN_ONE_SHOT -> RESTART [label="non-one-shot key went through", color="blue"];
|
||||
|
||||
// process_finished_dances()
|
||||
ACTIVATED -> PRESS_FROM_ACTIVE [label="dance timer", color="green"];
|
||||
IDLE_IN_DANCE -> FINISHED [label="dance timer", color="green"];
|
||||
PRESS_FROM_ACTIVE -> FINISHED_FROM_ACTIVE [label="dance timer", color="green"];
|
||||
|
||||
// remove_subchords()
|
||||
READY -> IDLE [label="superchord active", color="red"];
|
||||
READY_IN_DANCE -> IDLE_IN_DANCE [label="superchord active", color="red"];
|
||||
READY_LOCKED -> LOCKED [label="superchord active", color="red"];
|
||||
|
||||
// process_ready_chords()
|
||||
LOCKED -> READY_LOCKED [label="all keys pressed", color="orange"];
|
||||
IDLE -> READY [label="all keys pressed", color="orange"];
|
||||
IDLE_IN_DANCE -> READY_IN_DANCE [label="all keys pressed", color="orange"];
|
||||
|
||||
READY_LOCKED -> RESTART [label="chord timer", color="orange"];
|
||||
READY -> ACTIVATED [label="chord timer", color="orange"];
|
||||
READY_IN_DANCE -> ACTIVATED [label="chord timer", color="orange"];
|
||||
ACTIVATED -> PRESS_FROM_ACTIVE [label="lock next", color="orange"];
|
||||
PRESS_FROM_ACTIVE -> LOCKED [label="lock next", color="orange"];
|
||||
|
||||
// deactivate_active_chords()
|
||||
ACTIVATED -> DEACTIVATED [label="a key lifted", color="purple"];
|
||||
PRESS_FROM_ACTIVE -> RESTART [label="a key lifted", color="orange"];
|
||||
FINISHED_FROM_ACTIVE -> DEACTIVATED [label="a key lifted", color="orange"];
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue