Subversion Repositories svn.mios

Rev

Rev 932 | Rev 1183 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | RSS feed

HEADER 3 MBHP DIN Module

<H1>MIDIbox Hardware Platform, Digital IN Module</H1>

<P><CENTER><IMG SRC="mbhp/mbhp_dinx4.jpg" width=500 height=400></CENTER></P>

<P CLASS=INFO>The DIN module comes with multiple serial registers 74HC165; every register provides 8 digital inputs, which are sampled with the latch enable signal LD and shifted out with the clock signal CLK. The advantage of using such shift registers is, that they can be cascaded to a long chain without the need of more than 5 cables to the core module. The DIN board has been designed on a way which allows to cascade not only the ICs on the board, but also several DIN modules. But note that it depends on the firmware how much inputs are processed by the core module. For instance, the <A HREF="midibox64.html">MIDIbox64</A> allows to connect up to 64 buttons = 8 ICs = 2 * DINX4, the <A HREF="midio128.html">MIDIO128</A> supports 128 inputs = 16 ICs = 4 DINX4 modules, and <A HREF="midibox_ng.html">MIDIbox NG</A> even up to 256 inputs = 32 ICs = 8 DINX4 modules!</P>

<DL>
  <DT><H2> <IMG SRC="images/bullet.gif" ALT=""> Download </H2></DT>
  <DD>
  <P CLASS=DESC><B>Note:</B> To reduce effort only the DINX4 variant is available at <A HREF="http://www.mikes-elektronikseite.de" TARGET="_blank">Mikes PCB shop</A> and <A HREF="http://www.midibox-shop.com" TARGET="_blank">SmashTV's MIDIbox Shop</A>. If you don't want to etch the modules by yourself, just use the DINX4 and stuff just only the ICs which are really required.</P>
  <DD><TABLE WIDTH="100%" BORDER=0 CELLSPACING=5 CELLPADDING=0>
    <TR>
      <TD COLSPAN=4 CLASS=TABCOLOR1>PCB data, can be viewed, modified and converted with <A HREF="http://www.cadsoft.de/download.htm" TARGET="_blank">Eagle Light</A>. The .pdf based schematic has been created with <A HREF="http://opencircuitdesign.com/xcircuit" TARGET="_blank">xcircuit</A>. There are no special eagle schematics available, since components have been netlisted in the .brd file directly!</TD>
    </TR>
    <TR>
      <TD CLASS=TABCOLOR1><FONT SIZE=2><STRONG>Module</STRONG></FONT></td>
      <TD CLASS=TABCOLOR1><FONT SIZE=2><STRONG>Schematic</STRONG></FONT></td>
      <TD CLASS=TABCOLOR1><FONT SIZE=2><STRONG>Layout Data</STRONG></FONT></td>
      <TD CLASS=TABCOLOR1><FONT SIZE=2><STRONG>Quick-view</STRONG></FONT></TD>
    </TR>
    <TR>
      <TD CLASS=TABCOLOR2><I>MBHP_DINX4_V2</I></TD>
      <TD CLASS=TABCOLOR2><A HREF="mbhp/mbhp_dinx4.pdf">mbhp_dinx4.pdf</A></TD>
      <TD CLASS=TABCOLOR2><A HREF="mbhp/mbhp_dinx4_v2.brd">mbhp_dinx4_v2.brd</A></TD>
      <TD CLASS=TABCOLOR2><A HREF="mbhp/mbhp_dinx4.gif">mbhp_dinx4.gif</A></TD>
    </TR>
    <TR>
      <TD CLASS=TABCOLOR2><I>MBHP_DINX3_V1</I></TD>
      <TD CLASS=TABCOLOR2>similar to DINX4</TD>
      <TD CLASS=TABCOLOR2><A HREF="mbhp/mbhp_dinx3_v1.brd">mbhp_dinx3_v1.brd</A></TD>
      <TD CLASS=TABCOLOR2><A HREF="mbhp/mbhp_dinx3_v1.gif">mbhp_dinx3.gif</A></TD>
    </TR>
    <TR>
      <TD CLASS=TABCOLOR2><I>MBHP_DINX2_V1</I></TD>
      <TD CLASS=TABCOLOR2>similar to DINX4</TD>
      <TD CLASS=TABCOLOR2><A HREF="mbhp/mbhp_dinx2_v1.brd">mbhp_dinx2_v1.brd</A></TD>
      <TD CLASS=TABCOLOR2><A HREF="mbhp/mbhp_dinx2_v1.gif">mbhp_dinx2.gif</A></TD>
    </TR>
    <TR>
      <TD CLASS=TABCOLOR2><I>MBHP_DINX1_V2</I></TD>
      <TD CLASS=TABCOLOR2><A HREF="mbhp/mbhp_dinx1.pdf">mbhp_dinx1.pdf</A></TD>
      <TD CLASS=TABCOLOR2>(normaly built on veroboard)</A></TD>
      <TD CLASS=TABCOLOR2><A HREF="mbhp/mbhp_dinx1.jpg">mbhp_dinx1.jpg</A></TD>
    </TR>
  </TABLE></DD>

  <DD><TABLE WIDTH="100%" BORDER=0 CELLSPACING=5 CELLPADDING=0>
    <TR>
      <TD COLSPAN=4 CLASS=TABCOLOR1><FONT SIZE=3>Additional informations</FONT></TD>
    </TR>
    <TR>
      <TD CLASS=TABCOLOR1><FONT SIZE=2><STRONG>File</STRONG></FONT></td>
      <TD CLASS=TABCOLOR1><FONT SIZE=2><STRONG>Size</STRONG></FONT></td>
      <TD NOWRAP CLASS=TABCOLOR1><FONT SIZE=2><STRONG>Description</STRONG></FONT></TD>
    </TR>
    <TR>
      <TD CLASS=TABCOLOR2><A HREF="mbhp/mbhp_dinx4_orderlist.txt">mbhp_dinx4_orderlist.txt</A></TD>
      <TD CLASS=TABCOLOR2>1k</TD>
      <TD CLASS=TABCOLOR2><A HREF="http://www.reichelt.de/" TARGET="_blank">Reichelt</A> orderlist</TD>
    </TR>
    <TR>
      <TD CLASS=TABCOLOR2><A HREF="mbhp/mbhp_dinx4_32buttons.pdf">mbhp_dinx4_32buttons.pdf</A></TD>
      <TD CLASS=TABCOLOR2>16k</TD>
      <TD CLASS=TABCOLOR2>How to connect 32 buttons</TD>
    </TR>
    <TR>
      <TD CLASS=TABCOLOR2><A HREF="mbhp/mbhp_dinx4_mb64seq.pdf">mbhp_dinx4_mb64seq.pdf</A></TD>
      <TD CLASS=TABCOLOR2>16k</TD>
      <TD CLASS=TABCOLOR2>Key assigns for MIDIbox64 SEQ</TD>
    </TR>
    <TR>
      <TD CLASS=TABCOLOR2><A HREF="mbhp/mbhp_dinx4_16enc.pdf">mbhp_dinx4_16enc.pdf</A></TD>
      <TD CLASS=TABCOLOR2>16k</TD>
      <TD CLASS=TABCOLOR2>How to connect 16 rotary encoders to the <A HREF="midibox16e.html">MIDIbox16E</A> (and MIOS based controllers)</TD>
    </TR>
    <TR>
      <TD CLASS=TABCOLOR2><A HREF="mbhp/mbhp_dinx4_16enc_alps_stec16b03.pdf">mbhp_dinx4_16enc_alps_stec16b03.pdf</A></TD>
      <TD CLASS=TABCOLOR2>16k</TD>
      <TD CLASS=TABCOLOR2>Same for ALPS STEC16B rotary encoders</TD>
    </TR>
    <TR>
      <TD CLASS=TABCOLOR2><A HREF="mbhp/alps_stec16b03.lbr">alps_stec16b03.lbr</A></TD>
      <TD CLASS=TABCOLOR2>3k</TD>
      <TD CLASS=TABCOLOR2>Eagle Library for Alps STEC16B03, provided by Jack (you can contact him via PM in the <A HREF="http://forum.midibox.org" TARGET="_blank">Forum</A>)</TD>
    </TR>
    <TR>
      <TD CLASS=TABCOLOR2><A HREF="mbhp/mbhp_din_touchsensors.pdf">mbhp_din_touchsensors.pdf</A></TD>
      <TD CLASS=TABCOLOR2>4k</TD>
      <TD CLASS=TABCOLOR2>connection diagram for the touch sensors</TD>
    </TR>
  </TABLE></DD>
  </DD>
</DL>

<DL>
   <DT><H2> <IMG SRC="images/bullet.gif" ALT=""> Available Ports </H2></DT>
   <DD>
<P CLASS=DESC>Following interfaces are provided by the dinx4 module:</P>
  <DD><TABLE CLASS=BOX WIDTH="100%" BORDER=1 CELLSPACING=5 CELLPADDING=0>

    <TR>
      <TD CLASS=TABCOLOR1><FONT SIZE=2><STRONG>Name</STRONG></FONT></td>
      <TD CLASS=TABCOLOR1><FONT SIZE=2><STRONG>No. of pins</STRONG></FONT></td>
      <TD NOWRAP CLASS=TABCOLOR1><FONT SIZE=2><STRONG>Description</STRONG></FONT></TD>
    </TR>
    <TR>
      <TD CLASS=TABCOLOR2>J1</TD>
      <TD CLASS=TABCOLOR2>5</TD>
      <TD CLASS=TABCOLOR2>Interface to CORE:J9 (if buttons are used) and CORE:J6 (if encoders are used, MIDIbox16E only). DINX4:J1 provides two power pins for 5V/0V, the serial clock, the latch enable and the serial output of the register chain.<BR>This port can also be connected with J2 of another DINX module.</TD>
    </TR>

    <TR>
      <TD CLASS=TABCOLOR2>J2</TD>
      <TD CLASS=TABCOLOR2>5</TD>
      <TD CLASS=TABCOLOR2>Interface to another DINX4 module. DINX4:J2 provides nearly the same pins like J1, just only the serial output of the first IC is replaced by the serial input of the last IC.<BR>This port can be connected with J1 of another DINX module.</TD>
    </TR>

    <TR>
      <TD CLASS=TABCOLOR2>J3-J9</TD>
      <TD CLASS=TABCOLOR2>5</TD>
      <TD CLASS=TABCOLOR2>These are the digital input lines, every connector comes with 4 of them and an additional pin for ground. See <A HREF="mbhp/mbhp_dinx4_32buttons.pdf">mbhp_dinx4_32buttons.pdf</A> as an example how to connect buttons to these pins, and <A HREF="mbhp/mbhp_dinx4_16enc.pdf">mbhp_dinx4_16enc.pdf</A> how to connect rotary encoders.</TD>
    </TR>
  </TABLE></DD>
  </DD>
</DL>


<DL>
   <DT><H2> <IMG SRC="images/bullet.gif" ALT=""> Used Components </H2></DT>
   <DD>
<P CLASS=DESC>Here a list of the used components. A complete orderlist for <A HREF="http://www.reichelt.de" TARGET="_blank">Reichelt</A> can be found <A HREF="mbhp/mbhp_dinx4_orderlist.txt">here</A>, Mouser partlist for the US: see <A HREF="http://mbhp.coinoptech.com" TARGET="_blank">SmashTV's Website</A>, if you have a orderlist for a distributor on your country, feel free publish it on this page!</P>

  <DD><TABLE CLASS=BOX WIDTH="100%" BORDER=1 CELLSPACING=5 CELLPADDING=0>

    <TR>
      <TD CLASS=TABCOLOR1><FONT SIZE=2><STRONG>Part Name</STRONG></FONT></td>
      <TD CLASS=TABCOLOR1><FONT SIZE=2><STRONG>Value</STRONG></FONT></td>
      <TD NOWRAP CLASS=TABCOLOR1><FONT SIZE=2><STRONG>Description</STRONG></FONT></TD>
    </TR>

    <TR>
      <TD CLASS=TABCOLOR2>IC1, IC2, IC3, IC4</TD>
      <TD CLASS=TABCOLOR2>74HC165</TD>
      <TD CLASS=TABCOLOR2>The digital input shift registers</TD>
    </TR>

    <TR>
      <TD CLASS=TABCOLOR2>R1-R32</TD>
      <TD CLASS=TABCOLOR2>10k</TD>
      <TD CLASS=TABCOLOR2>These pull-up resistors are required if buttons are connected to the digital inputs. They ensure that the pins are supplied by defined voltage levels when a button is not closed (pressed). If you are using the DIN module with a MIDIO128, you maybe want to drive the pins "high-active" (which means: +5V = on, 0V = off). In this case please solder the two red isolated cables not to 5V, but to 0V (Vss), so that the resistors act as pull-downs.<BR><B>Your MIDIbox will send a lot of random MIDI traffic without these pull-ups, so don't miss them!</B></TD>
    </TR>

    <TR>
      <TD CLASS=TABCOLOR2>C1-C4</TD>
      <TD CLASS=TABCOLOR2>100nF</TD>
      <TD CLASS=TABCOLOR2>The additional bypass caps have to be placed on the bottom side of the PCB, as close to the +5V power input of the 74HC165 as possible.</TD>
    </TR>

    <TR>
      <TD CLASS=TABCOLOR2>R33-R36</TD>
      <TD CLASS=TABCOLOR2>10k</TD>
      <TD CLASS=TABCOLOR2>4 additional pull-up resistors. They ensure a defined level if an IC is not plugged into the socket.<BR><B>Your MIDIbox will send a lot of random MIDI traffic without these pull-ups, so don't miss them!</B></TD>
    </TR>

    <TR>
      <TD CLASS=TABCOLOR2>J*</TD>
      <TD CLASS=TABCOLOR2>*</TD>
      <TD CLASS=TABCOLOR2>All connectors are optional, the cables can also be soldered directly into the board. Otherwise I suggest SIL headers (header sockets), known from PC motherboards. They are cheap and usefull.</TD>
    </TR>

    <TR>
      <TD CLASS=TABCOLOR2>DIL</TD>
      <TD CLASS=TABCOLOR2>SOCKETS</TD>
      <TD CLASS=TABCOLOR2>Don't forget to buy sockets for the shift registers. 4 * 16 pin DIL sockets are required.</TD>
    </TR>
  </TABLE></DD>
  </DD>
</DL>


<DL>
  <DT><H2> <IMG SRC="images/bullet.gif" ALT=""> Soldering Guide </H2></DT>
  <DD>
  <DD><TABLE CELLSPACING=0 CELLPADDING=0>
    <TR>
      <TD><IMG SRC="mbhp/mbhp_din_1.jpg" WIDTH=280 HEIGHT=119 BORDER=0 ALT=""></TD>
      <TD CLASS=TABCOLOR2>Start with soldering the 10 bridges which save you from creating a 2-layer board. You can use the cutted legs of caps and resistors, before you throw them away after you finished all the modules! :-) Note that the 4 bridges between Pin 15 of the ICs and Vss (ground) will be soldered at the bottom side!</TD>
    </TR>
    <TR>
      <TD><IMG SRC="mbhp/mbhp_din_2.jpg" WIDTH=280 HEIGHT=119 BORDER=0 ALT=""></TD>
      <TD CLASS=TABCOLOR2>This pictures shows the 4 additional bridges, realized with isolated cables.</TD>
    </TR>
    <TR>
      <TD><IMG SRC="mbhp/mbhp_din_3.jpg" WIDTH=280 HEIGHT=128 BORDER=0 ALT=""></TD>
      <TD CLASS=TABCOLOR2>Stuff the other components: IC-sockets, Resistors, Connectors, ICs.</TD>
    </TR>
    <TR>
      <TD><IMG SRC="mbhp/mbhp_din_6.jpg" WIDTH=280 HEIGHT=118 BORDER=0 ALT=""></TD>
      <TD CLASS=TABCOLOR2>Add also the four additional Bypass Caps between Vdd and ground (Vss) of each chip on the bottom side of the PCB as close to the +5V power input of the 74HC165 as possible. They improve the power integrity.</TD>
    </TR>
    <TR>
      <TD><IMG SRC="mbhp/mbhp_din_4.jpg" WIDTH=280 HEIGHT=259 BORDER=0 ALT=""></TD>
      <TD CLASS=TABCOLOR2>This picture shows how to connect a DINX4 module to the core module (DINX4:J1 -> CORE:J9)</TD>
    </TR>
    <TR>
      <TD><IMG SRC="mbhp/mbhp_din_5.jpg" WIDTH=280 HEIGHT=149 BORDER=0 ALT=""></TD>
      <TD CLASS=TABCOLOR2>A DINX4 module within a MIDIbox64.</TD>
    </TR>
    <TR>
      <TD COLSPAN=2 CLASS=TABCOLOR2>128 inputs for MIDIO128 (yes, this pictures is a fake! ;-)</TD>
    </TR>
    <TR>
      <TD COLSPAN=2 CLASS=TABCOLOR2><IMG SRC="mbhp/mbhp_din_chain.jpg" WIDTH=540 HEIGHT=48 BORDER=0 ALT=""></TD>
    </TR>
  </TABLE></DD>
  </DD>
</DL>

FOOTER