Jump to content

creatorlars

Programmer
  • Posts

    118
  • Joined

  • Last visited

  • Days Won

    1

Everything posted by creatorlars

  1. Hi everyone -- Just a quick question on feasibility. I am working on panel designs for my SEQ4 rebuild, and would like to have 4 or more dedicated clock outputs. I primarily use my SEQ to control analogue gear, so I have a lot of external analog sequencers and arpeggiators, etc. that I'd like to feed different clock signals to. In the past I have accomplished this by either using the 8 Gate outputs (which requires setting up a track to run a clocking pattern, etc) or the DIN Sync output (which is only one output). Would it be easy to add another 3 (or 7!) simultaneously running clock/sync outputs, and be able to configure the division for each in firmware, and possibly save preset maps for each? In my case, each clock out would be dedicated to a specific destination, but the clock division sent out may vary from song to song, so clock divider preset maps (even saved along with song mode) would be nice. I could do this the analogue way with one of Ken Stone's Pulse Divider boards, but then the different clock outs aren't reconfigurable. Seems like this should be pretty easy to do, right? I'm not scared of the source code as much now that it's in C! :) Cheers, Lars
  2. Did it, it works. :)
  3. Awesome, that's what I thought -- thanks!
  4. I am moving my Midibox CV with AOUT to a different cabinet, which currently only has a +/-15V supply -- is this going to work fine? As far as I can tell, it's just powering the TL074's so it should be okay, but I wanted to check.
  5. Yes, just study the various documentation/schematics/wiring diagrams for the MB808 and MBSEQ stuff. You shouldn't have to trial and error it -- just look at the 909 schematics and find the trigger input point, then find the corresponding junction on your voice PCB. Any pin from the DOUT can be used to send a 1ms 5V pulse to trigger the sound. However, an accent signal has to be present as well as the trigger signal, in order for the sound to fire. So for testing, tie the accent & trigger ins together. Can you upload a picture showing what you mean by D1-D6?
  6. Triggers are very easy -- you will connect the DOUT triggers directly to the trigger inputs for each voice. They should trigger just fine. Accent is a bit more difficult, I don't think you'll be able to give each voice it's own accent channel in the default MB808 configuration. The easy way (no accent at all) is just to connect the accent & trigger inputs of each voice together. Then each voice is fired with a preset velocity. A roundabout way is to build a custom Midi-to-Trigger application so that your voice board just has a midi input. Or use an existing midi-to-trigger project or midi retrofit kit out there, etc. Then build your MB808/SEQ as a separate unit. I can help answer more questions if you have any -- I am building a full 808 clone and I used a modified version of the Midibox CV code to build a Midi-to-Trigger interface for it.
  7. Awesome!!! My SEQ is anxiously awaiting his upgrade!
  8. Resolved! The following code in main.inc had to be changed to reflect the number of shift registers connected: ;; initialize the SRIO driver movlw 0x01 call MIOS_SRIO_NumberSet This worked for me: ;; initialize the SRIO driver movlw 0x0F call MIOS_SRIO_NumberSet I'll update the wiki. Thanks for all the help!
  9. Thanks very much for the info, I'll check that out. I tested the above code and it works, except I'm still having the same problem with the DOUTs as described above. I am guessing I'm missing something somewhere, where I need to tell MIOS how many shift registers are connected... or maybe there's still something I overlooked with the shift register connections. I tried new 595s and that didn't help. I'll do some more double-checking tonight. Any help is appreciated!
  10. Okay, for my own edification I've attempted to thoroughly comment each step of the code. I referred to the 18F452 datasheet to try to deduce the different instructions syntax. I also renamed some of the functions and now the DOUT pin number = MIDI note number. Can you guys let me know if I'm on the right track here? I had to guess in a couple places (couldn't find skpz in the datasheet.) I also commented out the call to CV_MIDI because my current application uses DOUT only. (I'd eventually like to modify this to translate velocity information to AOUT for specific drum triggers.) This code compiles without errors. USER_MPROC_NotifyReceivedEvent ;; BEGIN --- control DOUT pins via Note events at all channels movf MIOS_PARAMETER1, W ;; get MIDI event type & channel number andlw 0xf0 ;; ignore non-valid MIDI events & channels xorlw 0x80 ;; check for Note Off bnz USER_MPROC_NRE_NotNoteOff ;; skip if not a Note Off event USER_MPROC_NRE_NoteOff ;; if the event is Note Off bsf MIOS_PARAMETER1, 4 ;; midi event type changed to Note On clrf MIOS_PARAMETER3 ;; set velocity = 0 USER_MPROC_NRE_NotNoteOff movf MIOS_PARAMETER1, W ;; get MIDI event type & channel number andlw 0xf0 ;; ignore non-valid MIDI events & channels xorlw 0x90 ;; check for Note On bnz USER_MPROC_NRE_NotNote ;; skip if not a Note On event USER_MPROC_NRE_IsNote movf MIOS_PARAMETER3, W ;; get MIDI velocity information skpz ;; skip next instruction if velocity = 0 movlw 0x01 ;; set W = 1 movwf MIOS_PARAMETER1 ;; set MIOS_PARAMETER1 = W movf MIOS_PARAMETER2, W ;; get MIDI note value andlw 0x7f ;; ignore non-valid note values call MIOS_DOUT_PinSet ;; pin = note number, value = MIOS_PARAMETER1 USER_MPROC_NRE_NotNote ;; END --- control DOUT pins via Note events at all channels ;; process MIDI event ;; call CV_MIDI_NotifyReceivedEvent ;; for best latency: branch to USER_Tick so that the new CV values ;; will be mapped immediately rgoto USER_Tick
  11. hmm, i will check into that. just a dumb newbie check -- is there anything I need to define in the code to let MIOS know how many shift registers are in the DOUT chain?
  12. I'm experiencing a problem with the trigger outs -- Is there anything about this code (on the Wiki page) that might send only the first 8 notes to all DOUTs? For example, my problem is that Note C-1 is triggering SR1 Pin 1 and SR2 Pin 1, Note C#1 is triggering SR2 Pin 2 and SR2 Pin 2, etc. I've checked my DOUT wiring and serial ins/outs between the pins of the 595s and everything is connected correctly.
  13. Wonderful, thank you!!! I'd like (just for ease-of-setup purposes) to be able to have a table that will assign specific MIDI notes to specific DOUT pins, in case I want to change things up after I get everything wired up. (This is a custom Midibox CV application for a modular drum machine with over 30 drum voices.) But I will save that for when I can learn a bit more of the syntax, since it seems fairly straightforward. :)
  14. I have two questions related to the Midibox CV DOUT gate/trigger-related code available here: http://www.midibox.org/dokuwiki/doku.php?id=how_to_use_midibox_cv_with_a_dout 1) Right now the code responds only to a single midi channel. How could I change it to respond to ALL midi channels? 2) Instructions are given to conform the DOUT gates to 1ms triggers to use with drum modules (which is my purpose.) However, some of my modules respond to gates, not triggers (the CGS Cynare's Sustain input.) How could I modify this code to exclude specific DOUT pins from the 1ms-reset? Thanks for any help. :) I am trying to learn ASM, but the syntax is very foreign to me. Looking forward to C-based programming with the new core!! Lars
  15. Sorry it took me a while to revisit this. I got the code working and updated the wiki articles with the new information: http://www.midibox.org/dokuwiki/doku.php?id=how_to_use_midibox_cv_with_a_dout I also updated the code in the German version of the page, but did not add the information on changing the MIDI channel, mein Deutsch ist sehr schlecht. :P
  16. I'd like to confirm that the above layout has been tested and works quite nicely. I'll make a wiki post with all the info/files soon.
  17. Attached is my modified PCB layout for a DOUTx2 board with optoisolator-protected outputs. I'll be happy to share all the Eagle files and an etching layout after I test it, if anyone's interested. I could also do an "expander board" to use with a normal DOUT board. All resistors are labeled "220" right now, but the pull-up resistors to +V at the opto's transistors should be 10K, I think.
  18. Looks like optos are the way to go then. For some reason, I had it in my head that this would be a lot of trouble, but I guess if I can find a quad package type then that would be fine. I'll just make a board layout for a DOUT that includes them. Any tips/schematics or specific part numbers would be very helpful if any come to mind. Otherwise I guess I'll just look through the Mouser catalog and datasheets. :)
  19. No, I haven't -- but is that really necessary? Seems like it could bulky/expensive -- you'd need one for each output right? I just need a simple solution to stop external voltage going back into the DOUT board.
  20. I'm continuing to play with ideas incorporating my Midibox stuff with my analogue drum gear and was wondering -- what is the best way to buffer/protect the DOUT triggers from external voltages? I am thinking you probably just need an LM324 and a diode at each output? Would a hex inverter be better? Do you think the diode alone is enough? I've been mixing the DOUT triggers and other sources by running each trigger through a diode and then a 10K resistor to ground and this seems to work okay. But what I'd like is to not mix the signals to only go one way only (into the drum circuit.) That way the "trigger input jacks" for each drum voice also double as "trigger outputs" for the DOUT triggers. (So I can layer up several drum sounds from a single trigger by patching.) I just need to make sure the DOUT is protected for when I use the jacks as inputs for other trigger sources. I hope this makes sense. :) Thanks for any help.
  21. Awesome panel design!!
  22. Awesome!! Can't wait until the new core board is available and I get to try this out.
  23. Your project is exciting, I can't wait to see the finished piece. I was not familiar with this 909 clone site!! Very good information and great projects, as you mentioned. Thanks for the link. I have a 9090 board set that I will put together someday, but I am focused on finishing my 808 module clones and modular drumysynth stuff first. As far as the burst generator, maybe you can just build a simplified version from the schematics. The PCB itself is very small (I have it assembled but not put behind a panel yet.) You could just hardwire the 3-repeats selection and maybe use a trimmer to adjust the time between repeats. The 808 clap was difficult to finish until I read the notes on the eight-oh-eight.org forums about one of the electrolytic capacitors being reversed in the original 808 schematics. The pink noise in the 808 toms is a secondary output from the regular 808 noise source (which sounds beautiful.) I was able to build the 808 noise source very quickly on protoboard from the schematics and I later modified it according to the notes on the eight-oh-eight.org forums -- which make the snare and clap sound much crisper and brighter. I will post my panel layout later, but for my 808 panel I have Send/Receive jacks for both the White Noise and the Pink Noise, as well as the Gain trimmer placed on the panel. This way I can use the 808 noise's pink and white outputs anywhere to my synth, run them through a filter or some other processing before sending them back to the 808 voices, or just send the 808 modules alternate noise/tone sources in general. I'm very much for the something-of-everything approach too. I modded my Midibox CV to send DOUT triggers to all my drum modules (which are in the same modular case) -- that way my SEQ is independent from the modular case. And I just added a "Drum Control/Mixer" module that gives me a master drum mix output and distributes trigger signals from the Midibox CV to the various drum modules. The master mix is also voltage controlled, so I could control it via Midi-to-CV velocity. The idea is that I can add a pretty much unlimited number of drum modules to the rig, and still have a way to control everything from one place (the Midi-to-CV) and still have a mixed output for everything as well -- making it just as easy to use as a typical drum machine. So far I have a Thomas Henry Clangora, Thomas Henry UD-1, CGS Cynare, 808 BD, 808 SD, 808 CP, 808 CB -- with boards etched for the rest of the 808 stuff, and panels/PCBs for two Thomas Henry Mega Percussive Synths. I highly reccomend the Thomas Henry voices. I'd also like to throw some MS20 filters, a VCO and some simple EGs behind a panel -- I love the percussion sounds made on the MS20 (the resonant EBM kick drum kind of sound, etc.) Keep us updated on how it goes...
  24. I'll second everyone's replies... I knew nothing when I made the decision to do this, and while it took way more work and time and debugging than I ever could have imagined, I finished mine in about 3 months. It just comes down to how stubborn you are. (After buying all the parts, I was pretty stubborn.) My SEQ is now the central item in my rig now, though -- it is an incredible controller.
  25. Your plan sounds good. As far as the firmware goes, I am not sure why the global accent track is any different than another track either. I have built several of microLARGE's boards -- they are great. There was a missing trace on the snare board though, and make sure you read all the eight-oh-eight forum build threads for some fixes on the clap and also the noise source (which you will need for the toms I think.) PM me if you have any build problems with them. Which 909 kick are you building? I'm familiar with two board layouts out there. I spent a long few weeks trying to get one of them working, and it was never 100% there. I haven't tried the second one. Sorry, I don't have the links handy. As far as I know, the accent circuitry mirrors the 808. I am curious about your success though, because I still have a finished but not 100% working 909 kick on the shelf, with a panel and everything... Just an idea, and this may be overkill, but you could always use the CGS/Ken Stone Burst Generator module in a preset configuration in order to generate three successive pulses. In fact if you could find a way to route that module to whatever firmware-selected drum voice you wanted, it'd make a pretty badass addition to a drum machine in general.
×
×
  • Create New...