* 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
		
			
				
	
	
		
			49 lines
		
	
	
		
			No EOL
		
	
	
		
			1.6 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
			
		
		
	
	
			49 lines
		
	
	
		
			No EOL
		
	
	
		
			1.6 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
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"];
 | 
						|
} |