Jump to content

goyousalukis

Members
  • Posts

    387
  • Joined

  • Last visited

  • Days Won

    5

Posts posted by goyousalukis

  1. Hey, is anyone out there having good results with sync-ing their MbSid with an external keyboard? I am sending my midi signal from my Korg MicroKorg to my Sid, but I can't get them to line up together. I know the korg is sending Midi Clock signals. I create a new patch and turn on the wavetable sync. Then I make a simple wavetable with every other note on. If I put the wavetable rate up to 127, it gets kinda close. I have tried all the values of the wave table rate, but no luck. I know that 123 used to mean 16th notes, but that doesn't seem to work any more. I am running the latest Sid - 1.6 and the latest MIOS - 1.7.

    Thanks for any help!

    Justin

  2. Hey John, MIOS gets loaded on the PIC microprocessor on the core board, not on the computer. Once you have the core built, you burn the bootstrap loader on the PIC with a PIC programmer such as the JDM. Then you can load MIOS onto the PIC with the MIDIOX program and your midi interface. Then you load an application - in your case the MB64 application. This gets loaded via MIDIOX as well. Once you've done this, you assign CC's to your faders and events to your buttons. This can be done using the LCD, or you can use a computer editor program - like Serge's MidiBox editor. Then you would just use the learn function on your software to assign your cotrols to software functions.

    One note from personal experience. Don't hook up everything you have and then try and get it running. First get your core board running and upload everything. Once it is working properly, hook up an AIN module and one of your faders, get that working, and then move on in small steps. This makes it easier to troubleshoot. Also, do you plan on using an LCD - if not, you might want to consider it as it makes troubleshooting easier.

    Hope this helps - Justin

  3. Ok, if you get the response every two seconds, that means you have just the bootloader. When you successfully send MIOS, you will get a bunch of replies like this (i just did it)

     TIMESTAMP IN PORT STATUS DATA1 DATA2 CHAN NOTE EVENT               
     0000A31B   9  --     F0  Buffer:    10 Bytes   System Exclusive      
     SYSX: F0 00 00 7E 40 00 0E 04 0E F7
     0000A646   9  --     F0  Buffer:    10 Bytes   System Exclusive      
     SYSX: F0 00 00 7E 40 00 0E 04 34 F7
     0000A971   9  --     F0  Buffer:    10 Bytes   System Exclusive      
     SYSX: F0 00 00 7E 40 00 0E 04 3A F7
     0000AC9E   9  --     F0  Buffer:    10 Bytes   System Exclusive      
     SYSX: F0 00 00 7E 40 00 0E 04 3F F7
     0000AFC8   9  --     F0  Buffer:    10 Bytes   System Exclusive      
     SYSX: F0 00 00 7E 40 00 0E 04 5D F7
     0000B2F4   9  --     F0  Buffer:    10 Bytes   System Exclusive      
     SYSX: F0 00 00 7E 40 00 0E 04 20 F7
     0000B629   9  --     F0  Buffer:    10 Bytes   System Exclusive      
     SYSX: F0 00 00 7E 40 00 0E 04 42 F7
     0000B956   9  --     F0  Buffer:    10 Bytes   System Exclusive      
     SYSX: F0 00 00 7E 40 00 0E 04 28 F7
     0000BC7F   9  --     F0  Buffer:    10 Bytes   System Exclusive      
     SYSX: F0 00 00 7E 40 00 0E 04 59 F7
     0000BFAA   9  --     F0  Buffer:    10 Bytes   System Exclusive      
     SYSX: F0 00 00 7E 40 00 0E 04 0C F7
     0000C2D6   9  --     F0  Buffer:    10 Bytes   System Exclusive      
     SYSX: F0 00 00 7E 40 00 0E 04 7C F7
     0000C601   9  --     F0  Buffer:    10 Bytes   System Exclusive      
     SYSX: F0 00 00 7E 40 00 0E 04 10 F7
     0000CA54   9  --     F0  Buffer:     9 Bytes   System Exclusive      
     SYSX: F0 00 00 7E 40 00 0F 53 F7
     0000D2DA   9  --     F0  Buffer:     8 Bytes   System Exclusive      
     SYSX: F0 00 00 7E 40 00 01 F7

    You'll notice that the byte before F7 changes. This is the checksum. If when you send the sysex file to the pic, you get no replies back, there is a problem with your midi input. I know this sounds dumb, but I did this on my first midibox attempt: Do you have the pins right on the midi in? Even if you are sure they are right, try reversing them just in case. Also, do you have the diode in the correct orientation? Double check that. Sorry if you have already tried these, but I am just throwing out some ideas.

    Justin

    *one more thing - in midiox, make sure you don't have any ports mapped to eachother. Check this by clicking on the icon that looks like a roadsign with a 66 on it. There should be no lines between midi ports. If your midi-in port is mapped to your midi-out port, it will not work!

  4. That's no problem, you'll just need to modify two text files so that the DIN and DOUT assignments match your hardware.

    Modify the cs_menu_io_tables.inc to re-assign the buttons and LED's

    Modify the mios_tables.inc file to re-assign the encoders.

    after you modify the files, you'll need to reassemble the source code using MPASM, then create the SYX file with PERL and finally upload the application.

    Each shift register (chip) has 8 inputs (DIN) or 8 outputs (DOUT)

    Each encoder takes 2 inputs and buttons use 1 input.

    Each LED takes 1 output.

    So if you want 8 encoders and 16 buttons, you'd need 4 shift registers which happens to be one DIN module.

    Make sure you use one encoder for the menu encoder, so you can still change all parameters via the LCD.

    Hope this helps...

    Justin

  5. Yeah, it's a pretty simple circuit. I just built it on vector board. Of course you could design your own PCB. If you build it using the original C64 case, you can make it fit perfectly where the power switch, power plug and joystick ports are.

    Justin

  6. Hey welcome to the site.

    To build the ultimate MidiBox Sid module, you need 4 core boards, 4 SID boards, 3 DIN boards (you only use one chip on the last board though), 2 DOUT boards and a Power supply (the original C64 PSU is best if you can get it). Of course you will need all the buttons, encoders, LEDs and an LCD.

    The great thing about TK's project is that you can start small and then build up. I recommend you build the step A - 1 core board, 1 SID board and the PSU. Get it running  and play with it using the JSynthLib editor, and then get going on the Ultimate SID.  Good Luck!

    Justin

  7. Where do I define which shift registers the enconders are to use?

    In the mios_tables.inc file :

    ;; In this table DIN pins have to be assigned to rotary encoders for the
    ;; MIOS_ENC driver 
    ;; 
    a little further down ...
    MIOS_ENC_PIN_TABLE
          ;; encoders 1-16
          ;;        SR  Pin  Mode
          ENC_ENTRY 13,  0,  MIOS_ENC_MODE_NON_DETENTED      ; V-Pot 1
          ENC_ENTRY 13,  2,  MIOS_ENC_MODE_NON_DETENTED      ; V-Pot 2
          ENC_ENTRY 13,  4,  MIOS_ENC_MODE_NON_DETENTED      ; V-Pot 3
          ENC_ENTRY 13,  6,  MIOS_ENC_MODE_NON_DETENTED      ; V-Pot 4
          ENC_ENTRY 14,  0,  MIOS_ENC_MODE_NON_DETENTED      ; V-Pot 5
          ENC_ENTRY 14,  2,  MIOS_ENC_MODE_NON_DETENTED      ; V-Pot 6
          ENC_ENTRY 14,  4,  MIOS_ENC_MODE_NON_DETENTED      ; V-Pot 7
          ENC_ENTRY 14,  6,  MIOS_ENC_MODE_NON_DETENTED      ; V-Pot 8
    
          ENC_ENTRY 15,  0,  MIOS_ENC_MODE_NON_DETENTED      ; Jog-Wheel
          ENC_EOT

    After making changes to the files you need to reassemble the project. See the MPASM howto at ucapps.

  8. It is not necessary to use the C64PSU, but highly recommended. If you don't use it,

    Either the output of a 15V transformer, or a wall adapter can be used. 100 mA is recommented

    I started with a wall wart, but noticed a big improvement in noise levels when I switched to the C64PSU.

    Justin

  9. Ok :

    what is the GPC mode?

    It appears from TK's documentation that if you switch to GPC mode, the vpots(encoders) send midi controller messages.

    MIOS_MPROC_EVENT_TABLE
    
          ;; these entries are used by the "GPC" feature of MIDIbox MM which
          ;; can be activated with the GPC button
          ;; Up to 128 MIDI events can be defined here which are sent (and received) by the V-Pots in GPC mode
          ;; The labels for these entries are defined in lc_gpc_lables.inc
          ;; entry 0x00-0x0f
          MT_ENTRY      0xbf, 0x00
    This means that in GPC mode the first V-Pot (knob) would send midi controller (0xbf) 0 (0x00) message. This would be useful for controlling parameters on a synth module or the like.
    I don't understand what is meant which a "different graphical form"..
    This just means that graphical rotary knobs aren't supported on the display, only bars.
    that means, that the connecting is different.. maybe it sounds stupid, but what are the shift registers?
    Shift registers are the chips that go on the DIN and DOUT boards. The 7 Segment is just hooked directly to a shift register.
    in which way can I modify the mapping of the MB? the mm_io_tables.inc-file is quite complicated..
           ;; 1st shift register
          ;;      button                                                                                  LED
     db      ID_REC_RDY_CHN1,      ID_REC_RDY_CHN1
          db      ID_REC_RDY_CHN2,      ID_REC_RDY_CHN2
          db      ID_REC_RDY_CHN3,      ID_REC_RDY_CHN3
          db      ID_REC_RDY_CHN4,      ID_REC_RDY_CHN4
          db      ID_REC_RDY_CHN5,      ID_REC_RDY_CHN5
          db      ID_REC_RDY_CHN6,      ID_REC_RDY_CHN6
          db      ID_REC_RDY_CHN7,      ID_REC_RDY_CHN7
          db      ID_REC_RDY_CHN8,      ID_REC_RDY_CHN8

    Ok, so the first shift register for the buttons is the first chip on the first DIN board. The first shift register for the LEDs is the first chip on the first DOUT board. This means that by default, the 8 Record Ready (Arm?) buttons are hooked up to the first chip on the first DIN board. Likewise the 8 Record Ready LEDs are hooked to the first chip on the first DOUT. The reason that you see many ID_IGNORE's in the table is because Thorsten had alread built his LC and wrote the table to match his hardware configuration. If you are building a MotorMix clone, you would want to move a bunch of the buttons and LED's up in the table and move the ID_IGNOREs down so that you wouldn't need as many DIN and DOUT boards. Each DIN and DOUT board handles 32 buttons/LEDs, so if you want 64 buttons on your desk, you'd need 2 DINS. Just follow TK's instruction to :

    ;  Keep also in mind that the encoders and LED rings allocate some DIN

    ;  and DOUT pins, which have to be defined in main.asm and mios_tables.inc

    ;

    ; IMPORTANT: this table MUST consist of 128 entries!!!

    ; unused lines have to be filled with "db ID_IGNORE, ID_IGNORE"

    So you have to check the main.asm and mios_tables.inc to see where the encoders and led rings are to be hooked up. For instance, the 7 segment LEDs referenced above are hooked to shift registers 12 and 13 which means they are hooked to the 4th chip of the third DOUT module and the 1st chip on the fourth DOUT module. By default the Encoders are hooked up to shift registers (chips) 13, 14, and one on 15. See mios_tables.inc

    I hope this helps explain it a little and doesn't confuse you.

    Justin

  10. Is it possible you have some of the datalines switched? That could definately cause problems like yours.

    I don't think you should use the CLCD drivers. You should just upload a regular Midibox program, like MB64E.

    Do you have your own programmer for the pic?

    If so, I would erase the pic, load the bootstrap loader. Confirm that you are getting the sysex messages. Then load MIOS. Don't try to load anything else until you get the MIOS Boot up screen followed by READY.

    You are using a regular HD44780 display, so you shouldn't need a special driver.

    I see that the display you bought needs an Inverting Power Supply for the backlight. Are you running it with out the backlight? Either way, the luminence pins on the core shouldn't be hooked up to anything. That would be taken care of by the seprate backlight power supply. I would advise testing it without the backlight on until you get it running.

    Hope this helps..

    Justin

  11. Ok, sounds like you have a problem with your LCD connection. If you have loaded midios and you get the sysex back, you should see a midios bootup message on the lcd followed by READY.  Do you have the contrast pot hooked up properly? Also, if only the bootloader were loaded, you would get those blocks, but they would stay on not turn off after 2 secs. double check all your connections to the lcd. The random midi events will ony happen if you have a MidiBox application that uses the AIN interface like MB64. If you load MB64E (encoders), or MidiBox sid, you won't get any.

    Keep trying, you'll get it.

    Justin

    p.s. also check the pinning on the transistor. a lot of people get it backwards

  12. As far as modular goes... It just means that the projects are broken down into smaller segments ( pc boards). This makes it much easier to test things when you get started. Build the core and then test it. After it is working add a DIN module and test it. And so on and so on. This is much easier than having to build everything on one board and trying to troubleshoot it. Also the boards are interchangeable between projects, so a DIN module is the same for an LC Clone, a MidiBox SID, or the MidiBox SEQ.

    As far as MotorFaders in the UK, d2K has eight for sale as well as a bunch of midibox stuff in the parts archive. (if they haven't been snatched up yet.) I believe he is in the UK. See his post in the parts archive section. http://www.midibox.org/cgi-bin/yabb/YaBB.cgi?board=parts_archive;action=display;num=1089712098

    As far as the hacking goes, I hope there is a good backup plan for this site! I would hate to lose any of this incredible resource!

    Justin

  13. Hey - you shouldn't have to filter that data with midiox. If you have your stuff set up properly, you shouldn't get any random midi events. Have you also grounded all unused inputs on the AIN module? All those midi events are likely to clog up your midi transmission, even if you filter them. Do you have all of the chips stuffed on the AIN?

    Justin

×
×
  • Create New...