Jump to content

TK.

Administrators
  • Posts

    15,196
  • Joined

Everything posted by TK.

  1. TK.

    PIC question

    Hi Nenad, yes, you can reuse all the modules, just only replace the chip and the crystal. The "AIN DIN DOUT" test already works fine as Reason controller :) Best Regards, Thorsten. P.S.: you could order free samples (3 x PIC16F877, 3 x 24LC256, 3 x PIC18F452 ) at the Microchip site.
  2. Hi, I purchased the 2x40 LCDs for 5 Euro per piece at EBay. ;-) 8 encoders or 16, if you replace the motorfaders by encoders. However, this mode is provided by the host application, it just swaps (alternates) the function of V-pots and motorfaders with one push of a button. So - 16 rotary encoders make only sense if you plan to use your box also with other MIOS applications. If you want to save money, use 8 encoders. If you find some nice faders (without motors), you can use them too. See mios_tables.inc in the source archive. But you can also assign the functions to other DIN pins if you want. Best Regards, Thorsten.
  3. Hi *, some imperfections in the SRIO and MF handler have been fixed in this release. Additionally V1.1 provides following new functions: MIOS_HLP_16bitAddSaturate: 16 bit addition with saturation. Usefull in conjunction with rotary encoders. Will be used by upcoming applications (MIDIbox HN already uses this function in hn_enc.inc) support for detented encoders (see mios_tables.inc) MIOS_DIN_PinAutoRepeatEnable, MIOS_DIN_PinAutoRepeatDisable, MIOS_DIN_PinAutoRepeatGet: an assignable autorepeat function for every button. Excellent for data entry. Used by Magic MIDI Delay and Motorfader Calibration App. MIOS_CLCD_SpecialCharInit, MIOS_CLCD_SpecialCharsInit: allows to initialize the 8 special characters of a LCD. MIOS_LCD_YAddressSet: allows to enable a second character LCD The last function is now used by the MIDIbox LC application in order to drive two LCDs. This is a nice alternative solution compared to a graphical LCD - the characters are bigger and therefore the faders and V-pots can be arranged better on the panel (more space between the faders) The inputs of the second LCD have to be connected 1:1 with the control lines of the first LCD. Just only the E (enable) input requires a seperate interconnection to the core module: J10:RC (pin RC.4 of the PIC) It's very hard to make photos from the LCDs due to unwanted mirroring effects. Here are the only tries which adumbrate how it looks like: For comparison only the screen of a graphical LCD (sorry again for the bad quality...) Hopefully I will find some time to documentate all the new stuff (instead of programming new functions ;-)) Best Regards, Thorsten. P.S.: thanks to Axel/Frank/Rasmus (in alphabetical order) for beta-testing!
  4. How about a low-budget MIDI controller with just one rotary encoder, one 2x20 LCD and 6 buttons to control your whole equipment? ;-) This application is just a demonstrator and far from perfection, but it's already usefull as MIDI remote device for Cubase/Logic/Whatever or softsynths like Reaktor. Up to 255 MIDI parameters can be controlled, organized in 51 banks. All parameters and banks can be labled for a better oversight. Incoming events will be registered, means: the internal values will be updated automatically - presumed that the MIDI host application sends the parameters through MIDI Out when you load a new song, a new patch, or move a virtual fader/knob. Handling: Main screen, first bank is active, 5 parameters are shown. When a parameter is selected with one of the 5 select-buttons, you can control it with the rotary encoder. So long as you turn the encoder, the parameter label will be print in long form, also a nice bar is displayed (-> bar could look better, feel free to enhance it!). Here parameter 2 (Pan) is modified. By pressing the menu button, the bank can be selected. Instead of numbers, every bank can be named. Here a connection diagram for the application: http://www.ucapps.de/mios/midibox_tc.pdf The code is available under Concepts->MIOS->Download Configuration has to be done in two seperate files: the MIDI events are defined in mios_tables.inc::MIOS_MPROC_EVENT_TABLE tc_labels.inc contains the labels for 51 banks and 255 parameters Alternative switch: in app_defines.h, you can change the VALUES_PER_PAGE setting if you would like to control only 4 parameters per page. In this case, 64 banks and 256 parameters are available. It's intended as fallback solution for 2x16 displays. Have fun! :) Best Regards, Thorsten.
  5. Hi all, I'm not sure, maybe after the minimal control surface has been finished, but this step could be delayed, since I also want to finalize my MIDIbox64seq (PIC16F and PIC18F version) before continuing - however, it will be possible sooner or later! :) Best Regards, Thorsten.
  6. Here a snapshot from the current design state of d2k's MIDIboxes - neat! :)
  7. Hi *, I just have finished the port of MIDIbox SID to the MIOS platform. It behaves 1:1 like a PIC16F SID box, but the performance is much better. The software engine takes about 200 uS instead of 600 uS for one update cycle on the PIC18F, this gives us enough freedom for additional features (primary the Control surface). However, since both versions have been implemented like a realtime system, you will hear no difference. ;-) Even if a long envelope or a slow LFO is played, the timing is absolutely cycle accurate. The code can be found under Concepts->MIOS->Download I will release a first version for a minimal Control Interface with 6 buttons, one rotary encoder and a 2x20 LCD in the next days. :) Best Regards, Thorsten.
  8. Super! :) Gruss, Thorsten.
  9. Die Soundkarte selbst hat keinen Optokoppler integriert, davon haben sich die Hersteller schon seit Ewigkeiten erfolgreich gedrueckt. Deshalb muesste er im Gameport-Kabel eingebaut sein. Und hier koennte das Problem liegen: es gibt naemlich auch billige MIDI-Kabel ohne Optokoppler, die mit manchen Geraeten zusammenspielen, mit manchen nicht... suche mal unter http://www.deja.com nach "+gameport +midi +problem" und Du wirst merken, dass Kabel ohne Optokoppler wirklich nicht zu empfehlen sind. However, auch hierfuer gibt es eine Loesung: einen MIDIbox kann man naemlich auch ohne Adapter an den Gameport anschliessen. ;-) Gruss, Thorsten.
  10. Yes, you can use free pins to add more encoders in order to control other functions. This requires some effort for a special Logic environment, but in principle it works. There is only one problem: once Logic has scanned the MIDI ports and found a LC or XT device, the appr. ports will be disabled for the environment. Solution: create a virtual connection (-> MIDI-Ox in conjunction with MIDI Yoke) between the In-Port of your LC and a virtual MIDI-In to duplicate the MIDI Port, so that one can be allocated by Logic for the Control Surface, and the other (virtual) can be used in the Logic environment. Split mode is a function supported by Logic itself. When you press the split button, the rotary encoders will control the function of the motorfaders (normaly Volume control) and vice versa. On this way you are able to control all parameters with the faders Best Regards, Thorsten.
  11. Currently the source codes are released under the so called "Artistic License" (see COPYRIGHT.txt which is included in every source archive), but I'm planning to switch to the GPL in the near future, since it has a stronger community for the case that any manufacturer violates the license. Best Regards, Thorsten.
  12. Na ist doch bestens, ein Optokoppler benoetigt nicht mehr als 2-3 mA um von High auf Low zu wechseln. Wie sieht das Interface an Deinem Gameport aus? Hat es einen Optokoppler? Hat es einen Namen? ;-) Gruss, Thorsten.
  13. Und hier noch die Erklaerung, warum Du bei Deiner MIDIbox einen geringeren Strom misst: wenn die Box keine Daten sendet, liegen beide Pins auf +5V Pegel. Deshalb fliesst da auch (so gut wie kein) Strom. Wenn Dein Keyboard alle 200 mS ein FE Kommando sendet, gehen Pulse ueber die MIDI-Leitung (5V->0V->5V), die dann im Mittel einen Stromfluss von 10 mA bewirken. Aber so richtig messen kann man das nicht, weil es ja nur sehr kurze Impulse sind! Miss mal den Kurzschlussstrom an Deiner MIDIbox waehrend Du an einem Poti drehst. Gruss, Thorsten.
  14. Welches MIDI-Interface verwendest Du an Deinem Rechner? Wenn es mit Deinem MIDI-Keyboard zusammenspielt, heisst das noch lange nicht, dass es MIDI-Spec-Konform ist... aber hier koennte man tricksen. Dein Keyboard sendet alle 200 ms ein "Active Sense". Das ist ein Keyboard-typisches Kommando mit dem die Host-Software feststellen kann, ob ein MIDI-Geraet angeschlossen ist oder nicht. Ausserdem kann man es fuer einen Time-Out Mechanismus einsetzen. Naeheres zu diesem Thema in der MIDI-Spec (die Du ja schon gefunden hast ;-)). Die MIDIbox sendet dieses Kommando nicht, weil es nicht notwendig ist (ich kenne keine Software, die damit irgendetwas anfaengt). Gruss, Thorsten.
  15. TK.

    testing

    Yes, 2 character displays will be supported by MIOS very soon. I'm just waiting for my EBay order (I got 4 * 2x40 LCDs for 34 Euro! :) Best Regards, Thorsten.
  16. Hallo Basti, wie hast Du eigentlich die Stromstaerke gemessen? Der Ausgang vom PIC liefert bis zu 25 mA, aber die momentane Stromstaerke haengt natuerlich davon ab, wie stark der Ausgang belastet wird. Gruss, Thorsten.
  17. Hallo Chriss, Ja, das ist richtig. ja, da hat sich nichts geaendert. Die Module werden lediglich woanders angestoepselt. Schaunmer mal ;-) Die PIC18F portierung wird diese Woche fertig, danach muss ich erstmal selbst die neue Hardware zusammenbauen, bevor es weitergeht. Gruss, Thorsten.
  18. I cannot recomment to burn a PICxx-C-xxx device with a low-cost programmer, because such devices are One-Time-Programmable (OTP). You will lost the chip (->garbage) if programming fails (due to a wiring error...) . Replacement: I'm not sure, but possibly this chip is compatible to PIC16F628 - but some programming skills are required to migrate the code Best Regards, Thorsten.
  19. TK.

    Re: PIC18LF...

    Yes, the PIC18LF452 is ok, it's nearly the same like a common PIC18F452, but the temperature range meets only the industrial conditions (-40°C .. 85°C instead of -40°C .. 125 °C). However, the PIC doesn't get hot like a pentium CPU, so don't hesitate to order this one! :) Best Regards, Thorsten.
  20. Hi Dimitris, possibly I assumed that "DOUT for buttons" was a typing error? Because DOUTs are only usefull for controlling LEDs and similar "output components", but for buttons DIN modules are required... Maybe I'm sometimes too fault tolerant ;-) However, a lot of configurations are possible with the MIDIbox LC emulation, I only listed my own setup. If you would ask me "can I emulate a Logic Control with one core module and one rotary encoder" I would say: yes, you can when you can live with the limitations ;-) You don't want to use motorfaders? Then you can use normal faders, and in this case also one or two AIN modules, since only motorfaders restrict the use of the analog interface. Only without motorfaders you are able to control 9 faders (and more!) with one core module. Maybe I should define the possible cases in some equations which makes it more clear: max number of AIN (for faders, motorfaders, pots) pins: when motorfaders: 8 when one AIN module: 32 when two AIN modules: 64 else 8 max number of DIN: 128 max number of DOUT: 128 every button allocates 1 DIN pin every encoder/jogwheel allocates 2 DIN pins every LED allocates 1 DOUT pin LED-rings are multiplexed: 8 rings with 8*12 LEDs allocate 8 + 12 = 20 DOUT pins with the source code you can freely assign the control elements to the pins required for LC Emulation: MUST: one core module MUST: one graphical LCD or 2 * 2x40 LCDs WANTED: at least 8 rotary encoders WANTED: a scrub/jog wheel (9th encoder) OPTIONAL: led-rings (but values are also shown on LCD) WANTED: at least 32 buttons OPTIONAL: 32 additional buttons for 8 * solo/mute/rec/select OPTIONAL: 32 additional buttons for sequencer control (transport, bankswitching, etc.) WANTED: LEDs for the buttons in order to receive feedback from Logic OPTIONAL: 8 motorfaders (but not necessary at all when you use the split mode in order to swap the purpose of encoders and faders) OPTIONAL: one additional fader, but in this case you either have to pass on the motorfaders, or you have to use a second core module Sometimes I'm feeling that giving advices for a MIDI controller is like selling a car - just only the heavy colored prospectuses are missing ;-) Best Regards, Thorsten.
  21. Hi Emerson, Cyan is working on a similar MIDI controller, based on MIOS. Here a link to his homepage: http://home.arcor.de/cyan_0660/sms/ and here the discussion about the controller: http://www.midibox.org/cgi-bin/yabb/YaBB.cgi?board=german;action=display;num=1041710259 Unfortunately both sources are in german only, but you could use http://babelfish.altavista.com in order to translate the texts. My suggestion: since you want to program the controller by yourself, use a PIC18F and MIOS. This will reduce the effort a lot, because the most important routines have been already integrated into the operating system, so that you can concentrate on the main routines. Also developing makes much more fun, since the bootstrap loader allows the upload of new code within a few seconds (instead of some minutes). Required hardware: CORE module, stuffed with PIC18F and 10MHz crystal DIN module for buttons DOUTX4 for the MMC display (code example will be provided soon) As much BankSticks as you want :) Best Regards, Thorsten.
  22. Hi Phil, this "unknown" state isn't relevant for the common use due to mechanical reasons. Since you are not able to press and depress a button within one millisecond, it doesn't matter if a transition is recorded one mS sooner or later... and a button is normaly in a stable state again within one mS. Additional debouncing measures are only necessary if a digital device reacts on a transition immediately (i.E, if an interrupt is triggered by an external pin). Best Regards, Thorsten.
  23. TK.

    testing

    Hi Frank, the correct syntax is img before and /img after the URL Example: Best Regards, Thorsten.
  24. Hallo Jack, geaendert wurde lediglich die Verdrahtung der Module untereinander. Alle DINX4 und DOUTX4 module (auch die Module fuer die Encoder und LED-Kraenze) haengen nun in einer langen DIN und DOUT-Kette. So ist der Multiplexer-Port fuer das MF-Modul frei geworden. 2) 16 pro MIDI-Port ;-) 3) dazu benoetigst Du ein CV-Interface. Auch das wird es bald geben (-> MIOS_AOUT_xxx). Es kann dann z.B vom SID/18F und vor MB64SEQ/18F angesteuert werden 4) Pro core-modul werden 64 Pots, 128 digitale Eingaenge, 128 digitale Ausgaenge unterstuetzt. Gruss, Thorsten.
  25. TK.

    MIDI Thru

    Hallo Luk, ja, das funktioniert bestens. Schaue Dir am besten mal den Schaltplan zum LTC modul unter Concepts->MBHP->LTC an, dort wird es "vorgemacht" Gruss, Thorsten.
×
×
  • Create New...