Jump to content

TK.

Administrators
  • Posts

    15,247
  • Joined

Everything posted by TK.

  1. So etwas kann man doch immer mal gebrauchen - ich nehme 3 Platinen :) Gruss, Thorsten.
  2. Also mit der MIDIbox SID Step C hast Du ja eigentlich schon ein ziemlich aufwaendiges Projekt auf die Beine gebracht, der Aufbau einer MBSEQ ist nicht wesentlich schwieriger, und Du kannst natuerlich jederzeit hier im Forum nachfragen, wenn Du irgendwo haengenbleibst. Im Notfall kannst Du mich auch telefonisch erreichen (so lassen sich manche Sachen schneller bereden). Nochmal zum Thema Button/Duo-LED Matrix: hier habe ich ein paar Bilder abgelegt - natuerlich laesst sich das auf Lochraster aufbauen, doch das Faedeln der ganzen Verbindungen ist wirklich nicht ohne: http://www.midibox.org/midibox_seq_blm_ext Zur Frage mit den Program und Bank Changes: in der V3 wird es demnaechst eine Mixer Map geben, in der man u.A auch die Program Changes festlegen kann :) Die Diskussion laeuft gerade im englischen Teil des Forums. Gruss, Thorsten.
  3. The C examples provide some additional infos, how to configure encoders: http://www.ucapps.de/mios_c.html Best Regards, Thorsten.
  4. I'm using Displaytech Displays in nearly all of my MIDIboxes The minimum cycle time of the enable line is 500 nS, so the timings used by MIOS are not the real issue here. Adding a delay of 1 mS will have the unacceptable side effect, that the whole system will run so slow that data loss at the MIDI input can happen (as you already noticed). I cannot add more than already written by SmashTV and AC Best Regards, Thorsten.
  5. I think that it shouldn't be a big problem to select and "dump" a mixer map also in pattern mode. Yes, I know that there are advantages and disadvantages of an independent system. The main advantage is, that I don't need to touch the SysEx structure of patterns, this is important because there or only a few bytes free anymore. To say it more dramatically (because I think that I cannot mention it often enough): currently we can store 128 patterns in a 64k BankStick. The data is already compressed. If more informations should be stored in a pattern, I would have to limit the number of storable patterns per BankStick again, and this is what most of you wouldn't like to see, and what I want to prevent. FAQMARKER Seperate BankStick: not required, when you imagine how difficult it will be to maintain a huge set of parameters. I don't know where to find the manuals of Kurzweil synths, but I think that you have to make a difference between internally controlled parameters of a synthesizer, which can be changed very fast, and external MIDI parameters, where the transfer speed is limited by the MIDI bandwidth. Example: let's say you want to control 7 CC's plus Program Change of 16 channels. A dump would cause a delay of ca. 8*16*1 mS = 128 mS over a single MIDI out (it's more relaxed when multiple MIDI outs are used), and this would be definitely too much, the realtime capabilities would be affected. I also don't really want to spend too much time in implementing a complex mixer function which propably would consume more code memory than it's really worth. So, let's reduce it to the real needs, and then let's continue with the next feature... What I can extract from your postings, and what I can say from my experience, is the following: 1) at least Port, MIDI channel, Program Change, Volume, Pan, 4 free definable CCs 2) the 4 CCs should be assignable for each track seperately, e.g. to 16, 17, 18, 19 (general purpose CC's) or for example to Bank/Reverb/Chorus/Fx2 3) it must be possible to select, if a parameter should be sent or not to save MIDI bandwidth. Therefore a parameter won't be sent by default (---), and has to be enabled by setting the value: 0-127, 7bit 4) Using the upper half of the Song BankStick means 32k are available. Considered that for each mixer map 256 bytes are reserved, we would get 128 mixer maps 5) parameters will be stored automatically into the appr. BankStick slot whenever the page is changed (no special save button) 6) it should be possible to copy a mixer map to another slot (copy/paste) 7) it should be possible to clear a mixer map (clr) 8 ) it should be possible to "dump" a mixer map whenever you want 9) it should be possible to "dump" a mixer map as song list entry I think that this is all I can offer ;-) Dave: I can understand the need for such a performance controller page, but I fear that I could not offer the full flexibility, especially for controlling the note length of different tracks at the same time, this is really hard to edit (I guess you would also like to see the parameter names and not only numbers) and therefore very memory consuming. It would be much easier to create a seperate control box for such a functionality On the other hand: you could use one or two... or all 4 CC's of a mixer map and assign them to CC's you want. In addition, I could provide the "loopback" port as additional interface, which allows to control sequencer parameters from the mixer map. Best Regards, Thorsten.
  6. I finally got an idea, how to realize program changes (and more) without modifications in the existing SysEx structures (which is nearly impossible): by providing mixer maps. A mixer map could contain the MIDI channel and port, program change, the two bank change CCs + volume + 3 additional CC's for each track. It would be stored in a seperate location (e.g. upper half of the Song BankStick, accordingly you would need a 64k BankStick instead of 32k), and it would be referenced in the song list. The advantage of this approach is, that you can prepare several mixer maps for your instruments, and reference them multiple times within the song menu w/o the need for an additional copy&paste mechanism for the case that you want to make small adjustments. Any other ideas, what could be part of such a mixer map? Best Regards, Thorsten.
  7. Hi Robin, yes, you have to take care, that no recursion happens. If this is the case, the clrwdt won't help, instead the application will freeze, so that you have to trigger a reset manually (power-off/on). In fact, one of the purposes of the watchdog timer is to terminate such programming errors gracefully with a reset, so that somebody is able to upload the corrected code w/o reseting the core manually. Back to the topic: recursion means, that the DIN_NotifyToggle calls itself several times. If there is no condition which terminates this process, then the stack will overflow sooner or later, the whole application will crash. So, all what you have to do is to ensure, that the button numbers which are forwarded to the DIN_NotifyToggle function will not execute the part of the code, which will call DIN_NotifyToggle again Best Regards, Thorsten.
  8. Wow! Great case! Can I put this into the gallery? :) The second slave won't play so long the Link is disabled. You either have to add a DIN module in order to get access to the Link function, or you have to enable the Link by default in the *.asm file you are using Best Regards, Thorsten.
  9. After his first MIDIbox SID Step-A (http://www.midibox.org/forum/index.php?topic=6264.0), Jack (aka. jackan) built this black-green beast! A really beautiful one! :)
  10. TK.

    4620 oder 4550 ?

    MIOS ist nicht kompatibel zum PIC18F4550, weil sich die Speicherbereiche ueberlappen, internes USB ist somit nicht machbar, es sei denn, jemand schreibt sowohl MIOS, als auch die gewuenschte Applikation um. Ja, der PIC18F4620 hat im wesentlichen mehr Speicher, aber auch leider (genauso wie der PIC18F4550) mehr Bugs :-( Gruss, Thorsten.
  11. Hallo Christian, die Button/Duo-LED Matrix ist ein rein optionales Feature, und auch nicht so ohne weiteres nachzubauen - ich habe drei Tage lang LEDs verklebt und "gefaedelt", bis die Matrix endlich komplett war. Eigentlich sollte man ein PCB hierfuer bereitstellen, doch das wird 1) nicht billig, und 2) kann ich das aus Zeitgruenden nicht selbst supporten. Somit bleibt dieses Feature etwas fuer Freaks, die schon alles gebaut haben, und nach neuen Herausforderungen suchen ;-) Die MBSEQ laesst sich auch prima ohne diese Matrix bedienen, darauf habe ich grossen Wert gelegt. Und wie doc bereits erwaehnte, benoetigt man hierfuer nur die MBSEQ V2 Hardware + PIC18F4620 + mindestens ein MBHP_IIC_MIDI Modul Gruss, Thorsten.
  12. Hi Robin, the upload request (or reset) is caused by the watchdog timer. If a function takes more than 1 second, you have to insert __asm clrwdt __endasm; [/code] within the "big loop" (which sends a dump, or writes something into EEPROM) in order to ensure, that the watchdog timer won't overrun and accordingly trigger the reset Best Regards, Thorsten.
  13. Hi Chris, this is a measuring error - some current drain should be caused by the 7805, if you measure 5V at J2, then the current should be >0mA Do you see the upload request from the PIC in the meantime? Best Regards, Thorsten.
  14. Thank you both! :) Today I migrated a MIDIbox SEQ of a friend, he was speakless when I demonstrated all the new features, and the whole time I saw a big smile on his face! :) You mean for MBSEQ or in general? However, for both I can say, it's only a software, not a hardware problem. Even the limitation of 16 DIN/16 DOUT chain can be solved by adding a second chain to other free pins. But for MBSEQ I cannot recomment this, because this will affect the realtime capabilities. For a standalone matrix, I would assume that there is enough CPU free for 3 additional 16 DIN/16 DOUT chains when the guy who programs this has good assembly skills (you have to optimize the handlers like I did in the SRIO driver - unrolled code) Best Regards, Thorsten.
  15. TK.

    Newbie questions

    Hi, I cannot help you that much on the first three questions... maybe the "Parts Questions" section would be a better location for this. To 4) you need 3 DINX4 modules, and if you want to use MBSEQ V3 (you definitely want!), you will need a PIC18F4620 and a MBHP_IIC_MIDI module in addition. To 5) thanks! :) Best Regards, Thorsten.
  16. Hi John, the logfile looks ok. It could be a problem with the MIDI clock (which is not listed in the logfile) There is a bug in the current build, the MIDI clock settings are overwritten once you leave the MIDI menu, accordingly the sequencer won't send MIDI clock to your K2000, and the synth will propably lock to the wrong clock. Here the bugfix: open seq_dump.inc, search for function "SEQ_DUMP_StoreGlobal", go to line 401, and replace: ;; ---[ store MIDI router settings ]--- call MIOS_EEPROM_Read movff WREG, SEQ_ROUTER_MCLK_ENABLED [/code] by: [code] ;; ---[ store MIDI router settings ]--- movff SEQ_ROUTER_MCLK_ENABLED, WREG call MIOS_EEPROM_Write does this help? Best Regards, Thorsten.
  17. Hi John, there shouldn't be a problem with the LTC, you only have to take care that the MAX232 is *not* stuffed. But so far I remember, you had an issue with this module on your MBSEQ as well, so I don't know how to help you here, but to answer your other question: yep, it's documented in the main.asm (and setup_*.asm) file Keyword: LED Best Regards, Thorsten.
  18. Message on the webpage: Sorry, there are currently no free download slots available on this server. Please try again later, or you can upgrade to FileFactory Premium for instant access. :-( Best Regards, Thorsten.
  19. I implemented this menu page at a time where I planned to add a master track. In the meantime this term is wrong and I will change it once I get a good idea. Currently this function means, that the step position will be reset to 0 after each measure. This measure is counted independent from any divider or Progressing setting. Later it will be possible to use more than 16 steps for such a synchronisation. If this function is too confusing, and you don't miss anything related to step resets, just never enable it... I don't know how to combine this additional pattern chaining with the chaining in song mode, and the already existing chaining of tracks. And I don't see so much sense here... or did I miss something? The simple "Pattern jumps to next pattern" scheme was available in MBSEQ V1, I replaced it by the song mode since the usage was too difficult. The only thing that I maybe could implement is the possibility to jump from one to another song as an additional jump target. This doesn't really match with the requirements you mentioned before, but the realisation would be simple. (btw.: last weekend I planned to write the manual, but there where so many emails to answer after just 4 days of absence, that I haven't found the time anymore&motivation for doing this...) Loopback: Notes will be forwarded to the Transposer and Arpeggiator, which means, one or more track can feed the engine with the same notes like if you would play them from an external keyboard. CC's will be forwarded to track parameters, this is described in the changelog. No, such record capabilities will definitely not be possible. Nice to read - last evening I had some fun with with randomly generated TB303-like sequences There are many things which are not communicated in the forum, and I don't want to release a total brain dump to the public ;-) The reason why I haven't implemented it at the time I came to the idea is, that I saw no easy way how to use it in conjunction with the normal "set same value" function. An option within the MBSEQ OPT menu was not practical, and I wanted to prevent wasting an F button. Meanwhile we have some buttons with extra functionality when they are pressed&held. This makes some new functions possible. The same is true for the Utility menu - I never had a clear idea how to allow an ergonomic usage of copy/paste/and all the other nice "tools". Now with this menu the implementation itself was a piece of cake. So, sometimes not the idea how to implement such features is blocking, but the idea, how to combine the feature with existing concepts. Could you please create a MIDI logfile of the IIC1 output with MIDI-Ox? Maybe this helps me to determine what is going on here... Best Regards, Thorsten.
  20. so, this means that the "Sync to master" works like expected ;-) Currently it always resets the track position after 16 steps. This is useful to get all tracks on sync. However, the number of steps after which the positions will be reset is currently not configurable... it will be a global settings, and it will affect the switching in song mode as well (currently a loop always takes 16 steps) To say it clearly again: there is neither a 17th track, nor a master track. This concept has been cancled. unfortunately not... if the sequencer is not running you can trigger a single step of the >>selected<< tracks with the GP buttons. The sequencer will only play this step, and thereafter stop if the sequencer is running you can force the sequencer to start at the position which you set with the GP buttons. Thanks for the suggestion - I planned this "incremental change" function some weeks ago, because I saw the need. But then I forgot to bring this into the whishlist. However, it's implemented now (see ChangeLog) :) The recorded note will always be forwarded automatically to the target channel and port. What are your MIDI router settings? Is there any additional forwarding or merging enabled? Best Regards, Thorsten.
  21. Build #65 comes with bugfixes and some new features, suggested from Rio and dcer10, and some other ideas from myself. o improved Copy&Paste function - now you can copy a certain step range, and you can paste the range to a certain position. This allows to duplicate ranges within a track very quickly. - if you just press and release the copy/paste button, the function behaves like before: the whole range will be copied & pasted - if you press and hold the copy button, you can select the range which should be copied into the buffer with the GP encoders. The encoders left of or at the begin marker shift the begin position, the encoders right to the begin marker shift the end position. If you are unsure about the current position, just always use the leftmost encoder to move the begin marker, and the rightmost encoder to move the end marker Releasing the copy button copies the selected range into the buffer. - if you press and hold the paste button, you can select the target position with any GP encoder. Once you release the button, the buffer will be copied into the track. o there is now a SCROLL function which allows to scroll all steps of a track from the position of the encoder which is turned while the scroll button is pressed. This function makes the SHIFT menu obsolete, therefore it has been removed from the menu list. Now you see the Utility page at this position instead - this also means: when you press the MENU and SHIFT (GP#10) button, you will change to the Utility menu like if you would press the F1 button o there is now a RANDOM function which generates random track values The random intensity can be changed while the RANDOM button is held NOTE: activate the Force-to-Scale option in the Mode menu for more harmonic results o there is now a UNDO function which reverts the change of the last Paste, Clear, MoveStep, Scroll and Random operation o the new copy/paste functionality makes the "Partial Save" function obsolete (the usage was too complicated anyhow), therefore it has been removed from the SAVE menu o the "All button function" now performs incremental changes on all steps instead of setting all steps to the same value. The old behaviour (setting all steps to same value) is still available - just press and hold the ALL button. [/code]
  22. Dmitrije Dinic aka. Dmitttri created a really professional looking MIDI controller system for Reaktor based on MIDIbox Plus and a self-developed Atmel based MIDI Controller. Note that it can handle with LDR sensors as well! :) He wrote: "Brother": "Sister": Inside "Brother": LDR Sensor: Usage for LDR Sensor: Reaktor Instrument:
  23. Miss mal die Spannung an den DIN Eingaengen, sie sollte 5V betragen. Falls nicht, liegt das Problem an den 10k Pull-Up Widerstaenden Gruss, Thorsten.
  24. Hi Robin, I just tried this and also noticed that it doesn't work like expected. I think that this has to do with the latest changes in the address range checking for PIC18F4620... I don't know exactly where the error is located, but I can give you a workaround: With: F0 00 00 7E 40 00 01 40 00 3F 00 F7 you can read the first 63 * 1k blocks and with: F0 00 00 7E 40 00 01 7F 00 01 00 F7 you can read the remaining 1k block Or another solution: with: F0 00 00 7E 40 00 01 40 00 20 00 F7 you can read the lower half (0x0000-0x7fff) and with: F0 00 00 7E 40 00 01 60 00 20 00 F7 the upper half (0x8000-0xffff) Best Regards, Thorsten.
  25. Hi, you've mixed the MIDI event setup with the application itself (MIDIO128)... After uploading MIOS, you need to upload the MIDIO128 application, which is also available at the MIOS Download page. Thereafter the buttons will send MIDI events immediately, you don't need to upload anything else for debugging. I would propose to use MIOS Studio instead of Serge's SysEx Tool, because it works more stable. Best Regards, Thorsten.
×
×
  • Create New...