User Tools

Site Tools


dseq32

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
dseq32 [2007/04/03 12:15]
mess
dseq32 [2008/05/19 19:51]
mess
Line 1: Line 1:
-DSEQ32 (aka yet another TR clone) 
-is based on the classic TR drumsequencers\\ 
  
-see [[trsequencer]] for more drumsequencer designs 
- 
- 
- 
- 
-{{http://​webs.hogent.be/​~032573mh/​DSEQ32d.JPG?​800}} 
- 
-====== Features ====== 
- 
-  * 32 step 8 track drum seq, each step has trig/​acc/​roll 
-  * one track can be used as note track for bass sequencing 
-  * independant length/​tempo divisor for each track, all can be synced to a master track 
-  * 8 banks of 16 patterns 
-  * patterns are saved on a bankstick 
-  * settings are stored on internal eeprom 
-  * song mode  
-  * all functions can be executed while running 
-  * forward/​backward playing direction 
-  * 24 PPQ resolution 
-  * midi clock master/​slave (maybe also taptempo) 
-  * sysex functionality ​ 
- 
-====== Interface ====== 
- 
-  * lcd: displaying (bpm pat trknr edited_par) 
-  * 32 step buttons + stepleds, leds are dual color to display trig/acc 
-    * step edit behaviour: step off/​trig/​trig+acc 
-    * all functions are accessed with a stepkey + shift combination 
-    * pattern selection: stepkey + pattern button 
-    * track select/​mute:​ stepkey + track button 
- 
-  * rotary encoder for bpm, also used for editing values 
- 
-  * Step button layout: 
-    * Track layer 
-trk button + track select: solo track 
-track select + play button: manually trigger note 
- 
-|1       ​|2 ​      ​|3 ​      ​|4 ​      ​|5 ​      ​|6 ​      ​|7 ​      ​|8 ​      ​|9 ​      ​|10 ​     |11      |12      |13      |14      |15      |16      |      
-| Select | Select | Select | Select | Select | Select | Select | Select | Select | Select | Select | Select | Select | Select | Select | Select | 
-| Trk1   | Trk2   | Trk3   | Trk4   | Trk5   | Trk6   | Trk7   | Trk8   | Trk9   | Trk10  | Trk11  | Trk12  | Trk13  | Trk14  | Trk15  | Trk16  | 
- 
-|17      |18      |19      |20      |21      |22      |23      |24      |25      |26      |27      |28      |29      |30      |31      |32      |      
-| Mute   | Mute   | Mute   | Mute   | Mute   | Mute   | Mute   | Mute   | Mute   | Mute   | Mute   | Mute   | Mute   | Mute   | Mute   | Mute   | 
-| Trk1   | Trk2   | Trk3   | Trk4   | Trk5   | Trk6   | Trk7   | Trk8   | Trk9   | Trk10  | Trk11  | Trk12  | Trk13  | Trk14  | Trk15  | Trk16  | 
- 
-    * Pattern layer 
- 
-|1       ​|2 ​      ​|3 ​      ​|4 ​      ​|5 ​      ​|6 ​      ​|7 ​      ​|8 ​      ​|9 ​      ​|10 ​     |11      |12      |13      |14      |15      |16      |      
-| Select | Select | Select | Select | Select | Select | Select | Select | Select | Select | Select | Select | Select | Select | Select | Select | 
-| Bank A | Bank B | Bank C | Bank D | Bank E | Bank F | Bank G | Bank 8 |        |        |        |        |        |        |        |        |  ​ 
- 
-|17      |18      |19      |20      |21      |22      |23      |24      |25      |26      |27      |28      |29      |30      |31      |32      |      
-| Select | Select | Select | Select | Select | Select | Select | Select | Select | Select | Select | Select | Select | Select | Select | Select | 
-| Pat 1  | Pat 2  | Pat 3  | Pat 4  | Pat 5  | Pat 6  | Pat 7  | Pat 8  | Pat 9  | Pat 10 | Pat 11 | Pat 12 | Pat 13 | Pat 14 | Pat 15 | Pat 16 |  ​ 
- 
- 
-    * Function layer 
- 
-|1       ​|2 ​      ​|3 ​      ​|4 ​      ​|5 ​      ​|6 ​      ​|7 ​      ​|8 ​      ​|9 ​      ​|10 ​     |11      |12      |13      |14      |15      |16      |      
-|Cut     ​|Copy ​   |Paste ​  ​|Delete ​ |NoteNr ​ |Length ​ |Divisor |Normal ​ |Accent ​ |Cut     ​|Copy ​   |Paste ​  ​|Delete ​ |Format ​ | Midi   | Fwd/Backwd| 
-|Track ​  ​|Track ​  ​|Track ​  ​|Track ​  ​|Track ​  ​|Track ​  ​|Track ​  ​|Velocity|Velocity|Pattern |Pattern |Pattern |Pattern |Bankstick| Mode  | Playdir ​      | 
- 
-|17      |18      |19      |20      |21      |22      |23      |24      |25      |26      |27      |28      |29      |30      |31      |32      |      
-| Fill   ​|Shift ​  | MidiCh | MidiCh |MidiCh ​ |Offset ​ |Notelen |Sync to |Sync Ld |        |Dump cur|        |Dump BS |        |LCD |Reset| 
-| Track  |Track ​  | Drum   | NoteSeq|CC ​     |CC      |NoteTrk |Track ​  ​|Pattern |        |Pattern |        |Pattern |        |Mode   ​|Seq ​ | 
- 
- 
-====== Progress ====== 
-  * first prototype 
-  * new layout design 
-  * ledmatrix/​buttonmatrix finished (see matrix page) 
-  * frontpanel finished/​wired 
-  * first take on controll surface handler (step, track and pattern handling) 
-  * sequencer works, timing is not stable yet 
-  * made a temporary case 
-  * fixed flickering leds when pushing a button 
-  * bankstick error handling added 
-  * default pattern is loaded when no BS is available at startup 
-  * independant length/​divider for each track implemented 
-  * LCD optimalisations 
-  * loading and saving of patterns works now 
-  * backward playing direction implemented 
-  * midi mode implemented with simple slave mode (no interpolation) 
-  * improved bpm handling (pattern bpm is saved with pattern) 
-  * fill function implemented 
-  * CS interface improved (the edit functions are now accessed with stepbutton+shift) 
-  * settings are saved in internal eeprom 
-  * notetrack implemented,​ this track will be used to program basslines 
-  * changed data structure, new pattern is 256bytes 
-  * cs is updated for notetrack (shift + track selects notetrack) 
-  * shift + stop resets the song position 
-  * due to code/ram space limitations the project is ported to a pic18f4620 
-  * the core board was modified so that the backlight can be controlled by the software 
-  * new bankstick routines to handle the larger pattern size 
-  * 2 new functions added: Seq Reset and Backlight mode 
-  * CC layer added 
-  * tracks don't go out of sync after changing divisor 
-  * the note track now has a note length parameter 
-  * pattern banks are implemented 
-  * new function: shift track 
-  * the note-on status of tracks is displayed in the track layer 
-  * note-off handling when seq is stopped added 
-  * the pattern bpm is now loaded when the seq is not running 
-  * 0.7e 
-    * pattern banks implemented,​ bug fixed in bankstick routines 
-    * manual trigger and solo implemented 
-    * basic sysex support 
-    * songmode now works 
-    * note length implementation for note track 
-    * it is now possible to sync pattern changes to begin of pattern 
-    * lots of core tick optimalisations 
-    * obsolete functions removed 
- 
- 
-====== Software ====== 
- 
-Most of the code is written in C 
- 
-the software will be based on the midibox ​ [[http://​www.midibox.org/​forum/​index.php?​topic=5691.0|clockbox example]] <​sup>​uCApps</​sup>​ 
- 
-  * [[DSEQ_DATA|Data structure]] 
- 
-  * Application code  
-    * [[DSEQ_BS|Bankstick code]] (updated) 
-    * [[DSEQ_CS|Control surface code]] 
-    * [[DSEQ_CORE|Sequencer core code]] 
-    * [[DSEQ_FUNCTIONS|Sequencer get/set and helper rountines]] 
-    * [[CS_HANDLER| control surface code]] 
- 
- 
-  * you can find DSEQ32 v0.7e [[http://​webs.hogent.be/​~032573mh/​midibox/​dseq32/​dseq32_latest.zip|here]] 
- 
-  * the [[www.doxygen.org|doxygen]] generated documentation is available [[http://​webs.hogent.be/​~032573mh/​midibox/​dseq32/​doc|here]] 
- 
- 
-====== Hardware ====== 
- 
-Components: 
-  * CORE module [[http://​www.ucapps.de/​mbhp_core.html|CORE Module]] <​sup>​uCApps</​sup>​ 
-  * DOUTX3 [[http://​www.ucapps.de/​mbhp_dout.html|DOUT Module]] <​sup>​uCApps</​sup>​ 
-  * DINX1 [[http://​www.ucapps.de/​mbhp_din.html|DIN Module]] <​sup>​uCApps</​sup>​ 
-  * BANKSTICK [[http://​www.ucapps.de/​mbhp_bankstick.html|BANKSTICK Module]] <​sup>​uCApps</​sup>​ 
- 
- 
-The leds/​buttons are wired in a matrix configuration 
-to reduce the number of DIN/DOUT modules needed 
-[[DSEQ32_matrix]] 
- 
-note: this description is out of date!! 
- 
-====== Construction ====== 
- 
- 
-  * Assembly of frontpanel 
- 
-{{http://​webs.hogent.be/​~032573mh/​midibox/​dseq32/​construction/​assembly/​button_boards.JPG?​400}} 
-{{http://​webs.hogent.be/​~032573mh/​midibox/​dseq32/​construction/​assembly/​back_nobutton.JPG?​400}} 
-{{http://​webs.hogent.be/​~032573mh/​midibox/​dseq32/​construction/​assembly/​boardsinplace.JPG?​400}} 
-{{http://​webs.hogent.be/​~032573mh/​midibox/​dseq32/​construction/​assembly/​wiring1.JPG?​400}} 
-{{http://​webs.hogent.be/​~032573mh/​midibox/​dseq32/​construction/​assembly/​wiring2.JPG?​400}} 
-{{http://​webs.hogent.be/​~032573mh/​midibox/​dseq32/​construction/​assembly/​wiring3.JPG?​400}} 
-{{http://​webs.hogent.be/​~032573mh/​midibox/​dseq32/​construction/​assembly/​wiring4.JPG?​400}} 
-{{http://​webs.hogent.be/​~032573mh/​midibox/​dseq32/​construction/​assembly/​wiring5.JPG?​400}} 
-{{http://​webs.hogent.be/​~032573mh/​midibox/​dseq32/​construction/​assembly/​wiring6.JPG?​400}} 
- 
- 
-  * Painting the case 
- 
-{{http://​webs.hogent.be/​~032573mh/​midibox/​dseq32/​construction/​paintcase/​case_after_cleaning.JPG?​400}} 
-{{http://​webs.hogent.be/​~032573mh/​midibox/​dseq32/​construction/​paintcase/​front_after_cleaning.JPG?​400}} 
-{{http://​webs.hogent.be/​~032573mh/​midibox/​dseq32/​construction/​paintcase/​back_grondverf2.JPG?​400}} 
-{{http://​webs.hogent.be/​~032573mh/​midibox/​dseq32/​construction/​paintcase/​front_grondverf.JPG?​400}} 
-{{http://​webs.hogent.be/​~032573mh/​midibox/​dseq32/​construction/​paintcase/​case_together_grondverf.JPG?​400}} 
- 
- 
-  * Assembly after painting 
- 
-{{http://​webs.hogent.be/​~032573mh/​midibox/​dseq32/​construction/​assembly_after_paint/​inside_case.JPG?​400}} 
-{{http://​webs.hogent.be/​~032573mh/​midibox/​dseq32/​construction/​assembly_after_paint/​boards.JPG?​400}} 
-{{http://​webs.hogent.be/​~032573mh/​midibox/​dseq32/​construction/​assembly_after_paint/​front_back.JPG?​400}} 
-{{http://​webs.hogent.be/​~032573mh/​midibox/​dseq32/​construction/​assembly_after_paint/​front_with_nuts.JPG?​400}} 
-{{http://​webs.hogent.be/​~032573mh/​midibox/​dseq32/​construction/​assembly_after_paint/​boardsinplace_back.JPG?​400}} 
-{{http://​webs.hogent.be/​~032573mh/​midibox/​dseq32/​construction/​assembly_after_paint/​inside_case_w_board.JPG?​400}} 
-{{http://​webs.hogent.be/​~032573mh/​midibox/​dseq32/​construction/​assembly_after_paint/​assembled.JPG?​400}} 
- 
- 
-  * Finished hardware 
- 
-{{http://​webs.hogent.be/​~032573mh/​midibox/​dseq32/​construction//​finished_hw/​dseq32.JPG?​400}} 
-{{http://​webs.hogent.be/​~032573mh/​midibox/​dseq32/​construction//​finished_hw/​dseq32_w_nord.JPG?​400}} 
- 
-====== Development ====== 
- 
-First prototype:​\\ 
- 
-[[http://​www.midibox.org/​forum/​index.php?​topic=6980.msg45082#​msg45082|forum topic]] 
- 
-{{http://​users.skynet.be/​sky92755/​testsetup.JPG?​400}} 
- 
-used for development of data structure, bankstick code, sequencer core 
- 
-New version: 
- 
-  * Construction of frontpanel 
-  * Wiring of the 32 step leds/​buttons 
-  * Testing of the step buttons with the SM_example application 
-  * Testing of the step leds with modified SM_example app (modified version includes leddriver) 
-  * Development of user interface code 
-   * Button and led handling finished 
-   * The flickering led problem is solved with MIOS v 1.9c 
-   * Encoder handling works, but there'​s still a small bug 
-   * Updated LCD layout for new functions 
-   * The leds to indicate play/​save/​vel/​special function button work now 
-   * Some LCD optimalisations 
- 
-  * Development of seq code  
-   * Sequencer edit functions work as expected 
-   * Sequencer runs! 
-   * Fixed sequencer mute track bug 
-   * Some tracks didn't send the note off messages correctly, corrected 
-   * Bankstick error handling added 
-   * Default pattern is loaded when no BS is available at startup 
-   * Note length/​divider is implemented 
-   * Independant length/​divider for each track 
-    
-\\ 
- 
-back to [[user_projects]] 
- 
-more project by [[mess]] 
dseq32.txt ยท Last modified: 2008/05/19 19:51 by mess