Jump to content

Button connections for LC


jeroddumas
 Share

Recommended Posts

Hi,

all DIN and DOUT connections are free configurable. In this way you can decide by yourself, if you want to have a full setup or a downstripped version with less buttons & LEDs.

The configuration has to be done in main.asm (general settings), mios_tables.inc (encoder settings) and lc_io_table.inc (button & LED settings)

Best Regards, Thorsten.

Link to comment
Share on other sites

First read up on the MIOS page then you need to do the following as stated in the main.asm file found in each archive

Required tools:

;    o Download the free available MPLAB IDE environment from the Microchip

;      Homepage http://www.microchip.com

;    o Download and install Active perl from http://www.perl.com

;    o Download and install MIDI-Ox from http://www.midiox.com

;    o Download and install the MIOS Bootstrap loader from http://www.ucapps.de and

;      

; Following steps are required to reassemble the source code:

;    o Start MPLAB IDE

;    o Open the project file (*.mcp) from this archive

;    o Open the main.asm file, here you can find all available include files

;    o Change the files for your needs

;    o Start "Project->Make" or just press the F10 button

;    o After that, a new main.hex file can be found in the directory

;    o convert the main.hex file to a .syx file in the command shell with:

;      perl hex2syx.pl main.hex

;      or just click on "convert.bat"

;    o thereafter a main.syx file can be found in the directory. It

;      can be uploaded to the MIDIbox NG with MIDI-Ox (see additional

;      instructions in the MIOS bootloader archive)

;

And you should be OK

Good luck

LO

Link to comment
Share on other sites

Hey Thanks LO! That was really helpful to me too!

Hey Jeroddumas, I have just discovered that there are default configurations... which you can discover for yourself.... but be careful you don't press a delete key or something by mistake!!

Having fun setting up my LC Emulation, thanks so much Thorsten, after a couple of years of midibox building, I am so happy with this one! (I got the motor faders going last night! I was cheering loudly when I got to that moment of seeing the results of all this testing and labour over the last couple of years!!)

have fun all, :D :D :D :D

  a very happy bye from Steve! ;D ;D ;D ;D

Link to comment
Share on other sites

Hey,

speaking of the default configurations of the buttons, I found all the buttons I need, (I have four dinx4 modules) except for the flip button (though I won't need this when I get encoders, I don't think) and Which 74HC165 controls the touch sensor? (the first four DIN IC's control the buttons) thanks, from Steve

 yeah, I'm having a blast playing with my new toy! and I don't even have it in an enclosure! (will send Thorsten a pic of faders sitting on metal strips in an old drawer!)

bye, from Steve :)

Link to comment
Share on other sites

Hi Steve,

great to hear that you finally made it! :)

The touch sensors are controlled by the application like common buttons. You just only have to assign the ID_FADER_TOUCH_CHNx events to the appr. input pins in lc_io_table.inc

Best Regards, Thorsten.

Link to comment
Share on other sites

Okay,

 here is the default buttons and LED assignments for LC, I used this as a guide to get my 'box partially set up, but I'll be looking into modifying the asm, as soon as I get some time! (spending so much time on construction)

  BTW, when you modify one of the sub programs, how do you connect it with the main asm before you turn it into a hex? just point me in the right direction, I'll investigate further anyway. (don't let me get lazy!)

here it isRepresentation of source code only, not actual code

Standard external digital I/O of midibox Logic Control emulation

LC_IO_TABLE_LAYER0

     ;; 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

     ;; 2nd shift register

     ;;      button                  LED

     db      ID_SOLO_CHN1,            ID_SOLO_CHN1

     db      ID_SOLO_CHN2,            ID_SOLO_CHN2

     db      ID_SOLO_CHN3,            ID_SOLO_CHN3

     db      ID_SOLO_CHN4,            ID_SOLO_CHN4

     db      ID_SOLO_CHN5,            ID_SOLO_CHN5

     db      ID_SOLO_CHN6,            ID_SOLO_CHN6

     db      ID_SOLO_CHN7,            ID_SOLO_CHN7

     db      ID_SOLO_CHN8,            ID_SOLO_CHN8

     ;; 3rd shift register

     ;;      button                  LED

     db      ID_MUTE_CHN1,            ID_MUTE_CHN1

     db      ID_MUTE_CHN2,            ID_MUTE_CHN2

     db      ID_MUTE_CHN3,            ID_MUTE_CHN3

     db      ID_MUTE_CHN4,            ID_MUTE_CHN4

     db      ID_MUTE_CHN5,            ID_MUTE_CHN5

     db      ID_MUTE_CHN6,            ID_MUTE_CHN6

     db      ID_MUTE_CHN7,            ID_MUTE_CHN7

     db      ID_MUTE_CHN8,            ID_MUTE_CHN8

     ;; 4th shift register

     ;;      button                  LED

     db      ID_SELECT_CHN1,            ID_SELECT_CHN1

     db      ID_SELECT_CHN2,            ID_SELECT_CHN2

     db      ID_SELECT_CHN3,            ID_SELECT_CHN3

     db      ID_SELECT_CHN4,            ID_SELECT_CHN4

     db      ID_SELECT_CHN5,            ID_SELECT_CHN5

     db      ID_SELECT_CHN6,            ID_SELECT_CHN6

     db      ID_SELECT_CHN7,            ID_SELECT_CHN7

     db      ID_SELECT_CHN8,            ID_SELECT_CHN8

     ;; 5th shift register

     ;;      button                  LED

     db      ID_ASSIGN_TRACK,      ID_ASSIGN_TRACK

     db      ID_ASSIGN_SEND,            ID_ASSIGN_SEND

     db      ID_ASSIGN_PAN_SURROUND,      ID_ASSIGN_PAN_SURROUND

     db      ID_ASSIGN_PLUG_IN,      ID_ASSIGN_PLUG_IN

     db      ID_ASSIGN_EQ,            ID_ASSIGN_EQ

     db      ID_ASSIGN_INSTRUMENT,      ID_ASSIGN_INSTRUMENT

     db      ID_BANK_LEFT,            ID_IGNORE      ; (no LED supported by host)

     db      ID_BANK_RIGHT,            ID_IGNORE      ; (no LED supported by host)

     ;; 6th shift register

     ;;      button                  LED

     db      ID_BANK_CHANNEL_LEFT,      ID_IGNORE      ; (no LED supported by host)

     db      ID_BANK_CHANNEL_RIGHT,      ID_IGNORE      ; (no LED supported by host)

     db      ID_FLIP,            ID_FLIP

     db      ID_GLOBAL_VIEW,            ID_GLOBAL_VIEW

     db      ID_SHIFT,            ID_IGNORE      ; (no LED supported by host)

     db      ID_OPTION,            ID_IGNORE      ; (no LED supported by host)

     db      ID_CONTROL,            ID_IGNORE      ; (no LED supported by host)

     db      ID_CMD_ALT,            ID_IGNORE      ; (no LED supported by host)

     ;; 7th shift register

     ;;      button                  LED

     db      ID_MARKER,            ID_MARKER

     db      ID_NUDGE,            ID_NUDGE

     db      ID_CYCLE,            ID_CYCLE

     db      ID_DROP,            ID_DROP

     db      ID_REPLACE,            ID_REPLACE

     db      ID_CLICK,            ID_CLICK

     db      ID_REWIND,            ID_REWIND

     db      ID_FAST_FWD,            ID_FAST_FWD

     

Link to comment
Share on other sites

;; 8th shift register

     ;;      button                  LED

     db      ID_STOP,            ID_STOP

     db      ID_PLAY,            ID_PLAY

     db      ID_RECORD,            ID_RECORD

     db      ID_CURSOR_UP,            ID_IGNORE      ; (no LED supported by host)

     db      ID_CURSOR_LEFT,            ID_IGNORE      ; (no LED supported by host)

     db      ID_ZOOM,            ID_ZOOM

     db      ID_CURSOR_RIGHT,      ID_IGNORE      ; (no LED supported by host)

     db      ID_CURSOR_DOWN,            ID_IGNORE      ; (no LED supported by host)

     ;; 9th shift register

     ;;      button                  LED

     db      ID_VPOT_SELECT_CHN1,      ID_IGNORE      ; (no LED supported by host)

     db      ID_VPOT_SELECT_CHN2,      ID_IGNORE      ; (no LED supported by host)

     db      ID_VPOT_SELECT_CHN3,      ID_IGNORE      ; (no LED supported by host)

     db      ID_VPOT_SELECT_CHN4,      ID_IGNORE      ; (no LED supported by host)

     db      ID_VPOT_SELECT_CHN5,      ID_IGNORE      ; (no LED supported by host)

     db      ID_VPOT_SELECT_CHN6,      ID_IGNORE      ; (no LED supported by host)

     db      ID_VPOT_SELECT_CHN7,      ID_IGNORE      ; (no LED supported by host)

     db      ID_VPOT_SELECT_CHN8,      ID_IGNORE      ; (no LED supported by host)

     ;; 10th shift register

     ;;      button                  LED

     db      ID_GLOBAL_TRACKS,      ID_IGNORE      ; (no LED supported by host)

     db      ID_GLOBAL_INPUTS,      ID_IGNORE      ; (no LED supported by host)

     db      ID_GLOBAL_AUDIO_TRCK,      ID_IGNORE      ; (no LED supported by host)

     db      ID_GLOBAL_AUDIO_INSTR,      ID_IGNORE      ; (no LED supported by host)

     db      ID_GLOBAL_AUX,            ID_IGNORE      ; (no LED supported by host)

     db      ID_GLOBAL_BUSSES,      ID_IGNORE      ; (no LED supported by host)

     db      ID_GLOBAL_OUTPUTS,      ID_IGNORE      ; (no LED supported by host)

     db      ID_GLOBAL_USER,            ID_IGNORE      ; (no LED supported by host)

     ;; 11th shift register

     ;;      button                  LED

     db      ID_AUTOM_READ_OFF,      ID_IGNORE      ; (in my setup no LEDs are connected here)

     db      ID_AUTOM_WRITE,            ID_IGNORE      ; (in my setup no LEDshere)

     db      ID_AUTOM_TRIM,            ID_IGNORE      ; (in my setup no LEDshere)

     db      ID_AUTOM_TOUCH,            ID_IGNORE      ; (in my setup no LEDshere)

     db      ID_AUTOM_LATCH,            ID_IGNORE      ; (in my setup no LEDshere)

     db      ID_UTIL_CANCEL,            ID_IGNORE      ; (no LED supported byhost)

     db      ID_UTIL_ENTER,            ID_IGNORE      ; (no LED supported byhost)

     db      ID_MBLC_HOLD_LAYER,      ID_IGNORE; (MIDIbox LC specific: switch to other layer when button (de)pressed)

     ;; 12th shift register

     ;;      button                  LED

     db      ID_F1,                  ID_IGNORE      ; (no LED supported by host)

     db      ID_F2,                  ID_IGNORE      ; (no LED supported by host)

     db      ID_F3,                  ID_IGNORE      ; (no LED supported by host)

     db      ID_F4,                  ID_IGNORE      ; (no LED supported by host)

     db      ID_F5,                  ID_IGNORE      ; (no LED supported by host)

     db      ID_F6,                  ID_IGNORE      ; (no LED supported by host)

     db      ID_F7,                  ID_IGNORE      ; (no LED supported by host)

     db      ID_F8,                  ID_IGNORE      ; (no LED supported by host)

     ;; 13th shift register

     ;;      button                  LED

     db      ID_IGNORE,            ID_IGNORE      ; (in my setup encoders)

     db      ID_IGNORE,            ID_IGNORE      ; (in my setup encoders)

     db      ID_IGNORE,            ID_IGNORE      ; (in my setup encoders)

     db      ID_IGNORE,            ID_IGNORE      ; (in my setup encoders)

     db      ID_IGNORE,            ID_IGNORE      ; (in my setup encoders)

     db      ID_IGNORE,            ID_IGNORE      ; (in my setup encoders)

     db      ID_IGNORE,            ID_IGNORE      ; (in my setup encoders)

     db      ID_IGNORE,            ID_IGNORE      ; (in my setup encoders)

     ;; 14th shift register

     ;;      button                  LED

     db      ID_IGNORE,            ID_IGNORE      ; (in my setup encoders)

     db      ID_IGNORE,            ID_IGNORE      ; (in my setup encoders)

     db      ID_IGNORE,            ID_IGNORE      ; (in my setup encoders)

     db      ID_IGNORE,            ID_IGNORE      ; (in my setup encoders)

     db      ID_IGNORE,            ID_IGNORE      ; (in my setup encoders)

     db      ID_IGNORE,            ID_IGNORE      ; (in my setup encoders)

     db      ID_IGNORE,            ID_IGNORE      ; (in my setup encoders)

     db      ID_IGNORE,            ID_IGNORE      ; (in my setup encoders)

     ;; 15th shift register

     ;;      button                  LED

     db      ID_IGNORE,            ID_IGNORE      ; (in my setup encoders)

     db      ID_IGNORE,            ID_IGNORE      ; (in my setup encoders)

     db      ID_IGNORE,            ID_IGNORE      ; (spare pin in my setup)

     db      ID_IGNORE,            ID_IGNORE      ; (spare pin in my setup)

     db      ID_IGNORE,            ID_IGNORE      ; (spare pin in my setup)

     db      ID_IGNORE,            ID_IGNORE      ; (spare pin in my setup)

     db      ID_IGNORE,            ID_IGNORE      ; (spare pin in my setup)

     db      ID_IGNORE,            ID_IGNORE      ; (spare pin in my setup)

     ;; 16th shift register

     ;;      button                  LED

     db      ID_FADER_TOUCH_CHN1,      ID_IGNORE      ; (no LED supported by host)

     db      ID_FADER_TOUCH_CHN2,      ID_IGNORE      ; (no LED supported by host)

     db      ID_FADER_TOUCH_CHN3,      ID_IGNORE      ; (no LED supported by host)

     db      ID_FADER_TOUCH_CHN4,      ID_IGNORE      ; (no LED supported by host)

     db      ID_FADER_TOUCH_CHN5,      ID_IGNORE      ; (no LED supported by host)

     db      ID_FADER_TOUCH_CHN6,      ID_IGNORE      ; (no LED supported by host)

     db      ID_FADER_TOUCH_CHN7,      ID_IGNORE      ; (no LED supported by host)

     db      ID_FADER_TOUCH_CHN8,      ID_IGNORE      ; (no LED supported by host)

Copywright owned by Thorsten Klose.... Hey TK, if you don't want bits of your code on here, then feel free to take it off (or ask me to)

....Steve

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
 Share

×
×
  • Create New...