Add step sequencer feature (#9703)
* sequencer: create togglable feature * sequencer: add support for steps * sequencer: add support for tempo and resolutions * sequencer: schedule a message print at the right frequency * sequencer: send a hardcoded note * sequencer: add support for 8 tracks * sequencer: play several notes simultaneously * sequencer: only play the active tracks for a given step * sequencer: change the default behavior of the track toggler * sequencer: make number of tracks and track notes customizable * sequencer: move the keycodes down Not adding them at the end of the list apparently risks breaking compatibility with VIA. Source: https://github.com/qmk/qmk_firmware/pull/9703#discussion_r459202733 * sequencer: add unit tests * sequencer: add unit test for matrix_scan_sequencer * sequencer: expose internal state for better unit-testability * sequencer: add unit tests for matrix_scan_sequencer
This commit is contained in:
		
							parent
							
								
									4cdd3005d6
								
							
						
					
					
						commit
						38527f9a3b
					
				
					 18 changed files with 1280 additions and 0 deletions
				
			
		| 
						 | 
				
			
			@ -68,6 +68,11 @@ extern layer_state_t default_layer_state;
 | 
			
		|||
extern layer_state_t layer_state;
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
#if defined(SEQUENCER_ENABLE)
 | 
			
		||||
#    include "sequencer.h"
 | 
			
		||||
#    include "process_sequencer.h"
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
#if defined(MIDI_ENABLE) && defined(MIDI_ADVANCED)
 | 
			
		||||
#    include "process_midi.h"
 | 
			
		||||
#endif
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue