Jump to content

Phatline

Members
  • Posts

    1,277
  • Joined

  • Last visited

  • Days Won

    71

Everything posted by Phatline

  1. i have tested the STM32F411xC/E with 512KBytes... and its not working... no flashing LED when pressing Black button, no connection to MIOS Studio ( I did not want to test it... i simply buyd the false Types ...fucking 3 pieces...)
  2. input: i want some of this boards
  3. the pictures in the gallery are only tumbnails (because of Website Moove...), so i cant see much details stupid question, catrige version means? a. i need a atari to plug it in - to get it running. b. it has the size to fit into a catrige - and it has not to be pluged in a atari.. because i have a TIA but no Atari if b. PUT me in please. thx phat
  4. hello, i have to fight with some basic things... I want to work with shared variables in booth Functions...seq.c and app.c as example: u8 PageFirst = 50; so what i found out: declare it in app.c > seq.c will not recognize it. (as extern u8, or only u8 > don’t matter) declare it in seq.c > app.c will not recognize it. (as exetrn u8, or only u8 > don’t matter) declare and initialize it in app.h as u8 PageFirst = 50; wont work declare it in app.h as u8 PageFirst; works but i have to initialize it anywhere separate like: void APP_Init(void){PageFirst = 50;} and that i dont like... is there a other way?
  5. got an NordDrum2, plan a Midicontroller 4 it...

  6. update Drum-Step-Sequencer UI ENCODER-PAGE 0 ENC Value ||| ||| ||| ||| ||| ||| ||| ||| ||| ||| ||| ||| ||| ||| ||| ||| ||| ||| ||| ||| 2 B A R 2x40LCD ENC Label V E L O - L O W V E L O - M I D V E L O - H I B A R - S Y N C ENCODER-PAGE 1 ENC Value 0 2 0 9 6 9 6 2x40LCD ENC Label M a i n D e l a y S w i n g 1 6 T H S w i n g 8 T H S w i n g N o r m CharPosi 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 ENC P A G E 0 2 0 ENC are mount with screw-nuts C C 1 7 1 8 1 9 2 0 P A G E 1 2 1 2 2 2 3 2 4 Stop Play REC STEP SWING TM-rout TM-CC 1 2 3 Bar/Main Shrt/Lon TRANSPORT MATRIX MODES STEP VELOCITY Sync Loop BTN + LED BTN are on same PCB as ENC 0 1 BTN + LED Page Direction Enc ---SPARE--- Focus < > <> Page Cpy Past Clr Copy, Paste, Clear and other Execution Buttons have no LEDs and are placed seperately
  7. because i have to mount the Button-PCB anykind, the best solution is to solder the Encoders on this board, and screw the encoder on the frontpanel... so i will use one Display, when i then move a encoder, the labeling and value will go to ENCODER MODE, when i press a button the the labeling goes to BUTTON-VIEW: Drum-Step-Sequencer USER-Interface (except BLM) ENC ENC are mount with screw-nuts Step-Velocity1 – SET Step-Velocity2 – SET Step-Velocity3 – SET LoopSet-Sync-Rate BTN BTN are on same PCB as ENC TRANSPORT MATRIX MODES STEP VELOCITY BTNLabel S T P P L Y R E C S T P S W N T M R T M F V E 1 V E 2 V E 3 BTN DISPLAY BTN Label C P Y P S T C L R F C P F P S F C L L 2 x F 2 x E S W E V E LOOP Copy/Paste/Clear FOCUS TRACK Cpy/Past/Clr Loop2x/Focus2x ENCODER PAGE BTN MidiClock-Tick-Delay Swing 16th offset Swing 8th offset Non Swinged offset ENC ENC will hold the Buttons on the Frontpanel
  8. I think i have all that i need, the rest will be made with the Triggermatrix... I cant make all Functions with the 16x16 Matrix...i cant label 3times... so a special seperate UI has to be build.. Since the Sequencer will be integrated in the TriggerMatrix - Firmware, i will use a part of it... TriggerMatrix - UI: (1st Display will have a seperate Sequencer-System-Page to handle Tact-System, max.LoopLength...) but now to the SEQ-ONLY - UI, 2x 2x40LCDs 8 Encoders 20BTNs, 20 LEDs 4 BTN States Drum-Step-Sequencer USER-Interface (except BLM) TRANSPORT MATRIX MODES STEP VELOCITY BTN Nr 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 2x40LCD BTNLabel S T P P L Y R E C S T P S W N T M R T M F V E 1 V E 2 V E 3 BTN DISPLAY BTN Label C P Y P S T C L R F C P F P S F C L L 2 x F 2 x E S W E V E BTN LOOP Copy/Paste/Clear FOCUS TRACK Cpy/Past/Clr Loop2x/Focus2x ENCODER PAGE MidiClock-Tick-Delay Swing 16th offset Swing 8th offset Non Swinged offset ENC Nr 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 2x40LCD ENC Label D L Y ||| ||| ||| ||| ||| _ _ 1 6 T ||| _ _ ||| ||| | 8 T H _ _ || N O N _ _ ENCODER DISPLAY ENC Label V E 1 ||| ||| _ _ V E 2 ||| ||| ||| ||| _ _ V E 3 ||| ||| ||| ||| ||| _ _ 2 B A R _ _ ENC Step-Velocity1 – SET Step-Velocity2 – SET Step-Velocity3 – SET LoopSet-Sync-Rate
  9. What about SWING? ... a good describtion here: attackmagazin Every 2nd Note is delayed a percentage of Time, 50%= no swing...55% is more swing and so on.... we can achieve this with a number off MidiClockTicks... but later more: Fixed SWING 8th/16th Matrix[17][16] STEP 1 STEP 2 STEP 3 STEP 4 STEP 5 STEP 6 STEP 7 STEP 8 STEP 9 STEP 10 STEP 11 STEP 12 STEP 13 STEP 14 STEP 15 STEP 16 Track 1 127 0 0 127 0 0 0 127 0 0 0 127 0 0 127 0 Velocity Track 2 64 0 64 0 64 0 64 0 64 0 64 0 64 0 64 0 Velocity Track 3 94 94 94 94 63 Velocity Track 4 24 50 24 50 24 50 24 50 24 50 24 50 24 50 24 50 Velocity Track 5 127 0 0 127 0 0 0 127 0 0 0 127 0 0 127 0 Velocity Track 6 64 0 64 0 64 0 64 0 64 0 64 0 64 0 64 0 Velocity Track 7 94 94 94 94 63 Velocity Track 8 24 50 24 50 24 50 24 50 24 50 24 50 24 50 24 50 Velocity Track 9 64 0 64 0 64 0 64 0 64 0 64 0 64 0 64 0 Velocity Track 10 94 94 94 94 63 Velocity Track 11 24 50 24 50 24 50 24 50 24 50 24 50 24 50 24 50 Velocity Track 12 64 0 64 0 64 0 64 0 64 0 64 0 64 0 64 0 Velocity Track 13 94 94 94 94 63 Velocity Track 14 64 0 64 0 64 0 64 0 64 0 64 0 64 0 64 0 Velocity Track 15 94 94 94 94 63 Velocity Track 16 24 50 24 50 24 50 24 50 24 50 24 50 24 50 24 50 Velocity 16th Swing 0 swing 0 swing 0 swing 0 swing 0 swing 0 swing 0 swing 0 swing tics 8th Swing 0 0 swing 0 0 0 swing 0 0 0 swing 0 0 0 swing 0 tics Here we have to have a counter that counts straight with the Midiclock, to get 16th notes. This counter will trigger the Step Swing Track… if the Value of SWING = 0, then also the Velocity Tracks 1-16 will be triggered out. If the Value of the Swing-Step is e.g.+20, then the other Tracks will be triggered in +20 tics the variable "swing" is a knob on the user-interface that set the delay in ticks for this step, when the delay is done, all Track-Velocitys on this Step are dumped out. you can see a fixed grid for 16th or 8th mode... classical known from drum computers... ---now expand this fixed grid to something editable, never heard thing...it is self explaining: editable SWING 8th/16th Matrix[17][16] STEP 1 STEP 2 STEP 3 STEP 4 STEP 5 STEP 6 STEP 7 STEP 8 STEP 9 STEP 10 STEP 11 STEP 12 STEP 13 STEP 14 STEP 15 STEP 16 Track 1 127 0 0 127 0 0 0 127 0 0 0 127 0 0 127 0 Track 2 64 0 64 0 64 0 64 0 64 0 64 0 64 0 64 0 Track 3 94 94 94 94 63 Track 4 24 50 24 50 24 50 24 50 24 50 24 50 24 50 24 50 Track 5 127 0 0 127 0 0 0 127 0 0 0 127 0 0 127 0 Track 6 64 0 64 0 64 0 64 0 64 0 64 0 64 0 64 0 Track 7 94 94 94 94 63 Track 8 24 50 24 50 24 50 24 50 24 50 24 50 24 50 24 50 Track 9 64 0 64 0 64 0 64 0 64 0 64 0 64 0 64 0 Track 10 94 94 94 94 63 Track 11 24 50 24 50 24 50 24 50 24 50 24 50 24 50 24 50 Track 12 64 0 64 0 64 0 64 0 64 0 64 0 64 0 64 0 Track 13 94 94 94 94 63 Track 14 64 0 64 0 64 0 64 0 64 0 64 0 64 0 64 0 Track 15 94 94 94 94 63 Track 16 24 50 24 50 24 50 24 50 24 50 24 50 24 50 24 50 17 swing % 0 swing 0 swing 0 0 swing 0 0 swing 0 swing 0 0 swing 0 18 8th/16th? 0 16th 0 16th 0 0 8th 0 0 16th 0 16th 0 0 8th 0 For this UI we need a new Matrix-Page, since we come over the 16 rows Limit... and its a bit "TOO MUCH VALUES"... Maybe its better to make a global swing for each Step, and not for each cell! Its easier to program if we turn the whole ting 180° One Step Counter, one Swing for all Tracks, the swing is the Nr. off Tics to delay bevore the next STEP is sent out. editable SWING 8th/16th + ADD-TIC-Bar-Ccs Normal tics 96 96 96 96 96 96 96 96 96 96 96 96 96 96 96 96 normal length 16th: 96/2=48 8th: 192/2=96 +0 +(0-48) +0 +(0-96) +0 +0 +(0-96) +0 +0 +(0-48) +0 +(0-96) +0 +0 +(0-96) +0 Tics384 ppqm CELL Matrix[17][16] STEP 1 STEP 2 STEP 3 STEP 4 STEP 5 STEP 6 STEP 7 STEP 8 STEP 9 STEP 10 STEP 11 STEP 12 STEP 13 STEP 14 STEP 15 STEP 16 1 set swing 0 swing16 0 swing8 0 0 swing8 0 0 swing16 0 swing8 0 0 swing16 0 toggle 2 +0 tics @ 16th +0 tics @ 8th 3 2 4 4 4 8 5 6 12 6 8 16 7 10 20 8 12 24 9 14 28 10 16 32 11 18 36 12 20 40 13 22 44 14 24 48 15 26 52 16 +28 tics 56 The Ammount of TICs can be additional offset via global „Swing8“ & „Swing16“-Rotary. So what we need for this Swing UI: 1: Toggle Button: switch from step-sequencer-edit-mode to Swing Mode (what does the 16x16BLM Matrix show/do?) 2: a new Matrix16x16 Matrix-Page...which is shown in the graphic above, which has following functions: 1st ROW: activate/deactivate swing, and toggle between 8th and 16th SWING-TIC-RANGE. (OFF, BLUE, GREEN) 2nd to 16th ROW: change the amount of additional SWING-Ticks per Step. 3. 4x Swing Offset Rotary, this should be encoders, and should be saved with the patch. 1. 8th Offset Rotary, Range +- 96 ticks 2. 16th Offset Rotary, Range +- 48 ticks, while negative values overturns the Values from the "additional Swing-Ticks", by end up with no SWING @ all, & Positives values add ticks where no ticks where before... 3. Offset Rotary for NON-Swinged-Steps.... so why not... a swing is try out a thing.... 4. Delay all @ 8th Range (which include the possibility by maximum ammount to get from onbeat 2 offbeat....when slaved to other sequencers...) so whats that with that pulses per quarter note > ppqn? & those Midiclock TICKS? 384 PPQN Whole 1536 Dotted Whole 2304 Whole Triplet 1024 Half 768 Dotted Half 1152 Half Triplet 512 Quarter 384 Dotted Quarter 576 Quarter Triplet 256 Eighth 192 Dotted Eighth 288 Eighth Triplet 128 16th 96 Dotted 16th 144 16th Triplet 64 32nd 48 Dotted 32nd 72 32nd Triplet 32 64th 24 Dotted 64th 36 64th Triplet 16 128th 12 Dotted 128th 18 128th Triplet 8 Note TICKS NOTE TICKS NOTE TICKS oh ya have fun.
  10. hey! i have to program a Sequencer Variante of the MB-SEQ, by using the SEQ_BPM... but before i have to be clear what i want... so i think loud a bit... DRUMSEQUENCERs & ODD TACT (UNGERADE SCHLÄGE) since i work with a guitarist, (which play with a Guitar2MidiConverter) he want that i can program 5er, 6er, 7er since i come from electronic sequencer music, I worked so far with drum-step-sequencers which program that 4/4Tact on a 16x1 LED-Button Hardware, OK lets take a look on something I/we know.: if we talk about LOOP LENGTH, and the Change of it, we have to decide which VALUES are INTERESTING.... so 16 are the maximum amount of visible STEPS on the UI(@once), i call that a PAGE >1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 < 3 PAGES: 4 1PageLoop Length Sel Steps Steps Page 0 0 0 1 1 2 2 3 3 4 4 5 5 6 6 7 7 8 8 9 9 10 10 11 11 12 12 13 13 14 14 15 15 0 16 1 1 17 2 18 3 19 4 20 5 21 6 22 7 23 8 24 9 25 10 26 11 27 12 28 13 29 14 30 15 31 0 32 2 1 33 2 34 3 35 4 36 5 37 6 38 7 39 8 40 9 41 10 42 11 43 12 44 13 45 14 46 15 47 on a DRUMSEQUENCER with 4/4 Tact we always double the Steps, to keep in TACT with MelodySequencers (why? wait, later!): 2 x 2 = 4 (@ME: what is the multiplicator when using 5 6 or 7 TACT???) 4 x 2 = 8 8 x 2 = 16 >>> the maximal visible amount of STEPs on a single PAGE >>> so this is our minimal LENGTH 16 x 2 = 32 32 x 2 = 64 >>> the maximal Length of a Korg Electribe Rythm 64 x 2 = 128 >>> a very handy Length when using whole PAGE-Copy-Paste?, and AUTO-Completion (copy Page 1 to All the Rest...) 128x2 = 256 >>> very long for Drums if using all the Steps in one whole Loop >>> what brings us to another Point: CHAINING PAGES or SETTING LOOP LENGTH lets say a PAGE has 16Steps (@ME 3x5=15, 2x6=12, 2x7=14) Chain PAGE 1+2+3+4 = 4 PAGES * 16 STEPS = 64 STEPS Chain PAGE 1+2+3 = 3 PAGES * 16 STEPS = 48 STEPS... maybe problem: when playing with other Sequencers, e.g.we play a Bass 64 STEPs long... DRUMS: 48*2=96 while BASS: 64*2=128, so the Baseline will differ on its way off fitting with the drums... >>>if i think right? there is no point that they ever will meets on the same point???<<< or in a musical period of time (for me) This is a problem when we separate DRUM and MELODY DEVICES... and change the Length while playing... such SETUP will maybe ONLY work with DOUBLEs OF PAGES ... I dont say its forbidden ... specially in my case ... CASE NORMAL: DRUM SEQUENCE has a rythmic, the Melody has a rythmic >>> if they drift by (not equal @ all)... the listener will not find the COMMON RYTHMIC (especially on long Melody’s) CASE TRIGGERMATRIX: DRUM SEQUENCE is the only rythmic, the Melodys rythmic is ignored >>> the drift that you hear is pitch based, that the played notes ON THE RYTHM are NEVER The same, @ least U find the rhythm... ... since I work on my case, i will not forbidd anything, but i will INFORM me the possible/right next PAGE to CHAIN > ...but before we get to that I have to to inform you how how to handle this CHAINING via a UI (UserInterface): SETTING LOOP LENGTH via 16 Buttons in a ROW: We have 16 BUTTONS that are Representing 16 PAGES (a' 16 Steps) >Loop a single Page > short double Click a button. >Loop from Page eg. 4 too 8 > Click&Hold Button"4" & Click Button"8" (which in First Place visualize Page4, and then Set a 4x16=64Loop to Page 8) So to avoid that 48/64 dilemma, we have to get sure that we only select DOUBLED PAGES, and here i come to the point to INFORM me about possible FITTING PAGES: INFORM: I press the First PAGE (4), now following Pages get enlighten 6 8 12 START DOUBLE END 4 0 4 4 2 6 4 4 8 4 8 12 4 16 20 I decide to press "8", and i now have a 64Step Loop, but I don’t want to set the Loop length immediately, I want it to make it in Sync, I want it to switch by the next DOUBLE... Lets make a shorter example: 64 Steps Maximum is set for this TRACK... this has to be set before pressing the Play button, in order to get a MAIN-Timeline, to that we can return if we want back to the whole loop. A maximum-length-counter will ever cycles from 0-63-0-63 …. it counts the midiclock-ticks, this is our MAIN-TIMELINE 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 0 BAR 1 BAR 2 BAR 3 BAR 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 The Loop LENGTH 0 BAR 1 BAR 2 BAR 3 BAR 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 for me, it is enough, to switch @then end of the current selected Loop New Loop Length: if (step is > 31) {step = 48;} ….. In this case it is STEP 31, where the Next Step should be 48 in a loop to 63. step+1; if(step>maxLoop){step=minLoop)…. NEW Loop LENGTH 0 BAR 1 BAR 2 BAR 3 BAR 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 if i want a more stable play in interaction with melodylines, we just watch out for the Main Time Line, the switching between loop points then will take longer until it is set: in example above, we have a loop from 0-31, while this loop is playing, i decidet to make a new Loop from 48-63... the machine now loops its rounds until the MAIN-TIMELINE comes to Step 48, form now the New Loop take effect... This is no problem with a 4 Bar Track, where the maximum what you have to wait is 3 Bars... but what when you set the Track to a maximum off 16 Bars? ...of course it will take time until it switches... so i would say we make a hardware button, that switch between 1BAR SYNC and MAIN-TIMELINE, where MAIN-TIMELINE would kick you back in sync with extern Melody Sequencers... MIDICLOCK and TACT while 4/4Tact is clear, like shown in the Tutorial 17 (sequencer), its a bit more Brain Acitivity to find out how to work with 5 6 7 9 Tacts Tutorial on 4/4 static s32 SEQ_Tick(u32 bpm_tick){ // performs a single bpm tick // whenever we reach a new 16th note (96 ticks @384 ppqn): if( (bpm_tick % (SEQ_BPM_PPQN_Get()/4)) == 0 ) { // ensure that step number will be reseted on first bpm_tick if( bpm_tick == 0 ) seq_step_pos = 0; else { // increment step number until it reaches 16 if( ++seq_step_pos >= 16 ) seq_step_pos = 0; } SEQ_Handler(); if(seqMATRIX[0][seq_step_pos] > 0){ APP_NOTEPROCESS(0, 36, seqMATRIX[0][seq_step_pos]);}//(u8 port, u8 note, u16 velocity) Notes Back to APP.c } The next thing is to translate that all to 5 6 7 & 9 TACTs on 16*16+X Matrices.... but that is something to sleep over it... good night
  11. program a SEQ-Variant for BLM+TM4BLM

  12. UI-Updates on the TriggerMatrix-Side: from a bulk-order i have more then enough 2x40? LCDs....good point to make something with it use this crimp-able Connectors: 1st Display (up), Deep edit things - like give the track a name, or change the ProgramChange-Bank, or load tracks, or LiveSets (in Future) 2nd Display (down), Fast Access -Performance, like Random-Kill, Decay-Time, Velocity Offset - there are 2x4 Encoder because, i split the whole output-Matrix in 2 Parts: Line0: Melody Retrigger-Parts (Bass, Lead, Space Synths, Samplers) Line1: Mono Retrigger-Parts (for Drums, Filters usw) i want to perform them separately, with much space for my fingers...a 2x4 LED-Bar-Encoder Board would be nice instead!
  13. ya me too again, pcb only Waitlist (9 total) ======== taximan pcb case blatboy pcb case Macotronic pcb case lukas412 pcb case Hawkeye pcb case u-link pcb case nebula pcb case synaptech pcb case Phatline pcb
  14. ok 8x2 i have now (hawkeye) now i need 2x 4x2 PCBs
  15. 8x2 and 4x2 Boards are welcome >>> http://midibox.org/forums/topic/17378-control-surface-pcb-for-16-encodersledrings-bulk-order/?page=13#comment-173107 sutffed with parts or not, if anyone have spare ones. thx - phat
  16. will there be a nother run? or do have anyone spare ones? (8x2 and 4x2) - or can i order them on my own (files?)
  17. ok so i cut the +5V Leg of the Fader, wire it with 3,3V from core, and thats it...easyer said then done... since i dont liked that big fader towers anyhow, i decide to do the easy way: jumper all J5 Channels, disable them in the BLM_Scalar software, and removed the fader-callback in my application Cut the Fader Towers, Gaffa-Tape above, and here we go:
  18. its fun to program that toy... blink blink my 10K faders are jumping... especially in the low end (MidiValues under 20), they messing up the midistream, and my blm hang then up sometime.... new faders jumping, can be, shouldnt be? hmm are there any parts except the faders - which can cause such behavior? as far i know there are only +5V ground and a fader between it... The crimped wires are about 4 cm long... short enough. The J5B ports are Jumpered, and in mios32_config.h only J5A is activated... anyhow I tend to deactivate them in mios32_config.h...and desolder them, because of not totalrecallable of fadersstates ;)
  19. hey ho lets go > that was the problem! THX TK, LATIGID!!!!!
  20. german is not german... i was on a trace...flucke and me. ok i think i got the problem, i soldered a hc165 instead of a 595 , i now desoldered it, but with that action i lost Pin1 and 15 which when it can compaired with a DOUTX4 module is output 0 and 1, on the rear layer where the 595 IC20 is located, i cant see any trace or VIA where i can connect them with a wire...or are these pins not used on this layout...? thx 4 help
  21. i wrote him a pm. but a hardware problem? when i press them green buttons they went into cyan, sounds like software... however, lets see what latigid say.
×
×
  • Create New...