multio.mamalala.de - USB multI/O - Notes on building the boards

Here are some quick notes with clickable picture links.

here is a layout of the parts on the two different boards :

main.png user.png

*** IMPORTANT NOTE *** the 32k*8 sram chip isnt availably at digikey any longer. there is an equivalent, but with a wider outline (like the eeprom chip). you can either get a sram chip from me, find one yourself or make an adapter to use the equivalent type, 62256 digikey#: 428-1078-nd or 428-1080-nd.
hint: the type of chip required was used, for example, on old mainboards as cache memory. (old = 386, 486). you may salvage one from an old board, or go to an computer shop and ask if they have such parts in a scrap corner...
you may also look for one of these other types of the UM 61256-15 from umc:
W 24257-15 from winbond
KM 68257-15 form samsung
PDM 41256-15 from paradigm
MCM 6206J-15 from motorola
IDT 71256-15 from IDT
IS 61C256-15 from ISSI

if you go to a computer shop to ask them, be aware that very often these guys are just too lazy to look up something old, that makes a little work, but doesnt give big bucks... so use a little social engineering on them ;-)


eliminating ghost readouts of digital inputs
currently the box will give ghost-readouts of digital inputs that are not
physically available. this is fixed in firmware 0.3a, see the firmware page..
for a quick solution you can also put a termination resistor, 8 * 10kohm, on the dataline that are responsible for that. the resistor networ for that
is the same 9-pin network as the ones used on the main- and userboard.
of course you can also use 8 single 10 kohm resistors.
see terminate.png for the position of these resistors.

power supply options:

altough i strongly recommend to build the power supply on the mainboard and use a wall-transformer to power it, there is a way to have the box powered by the usb bus.

pro: you dont need to carry around an external transformer all the time
con: hazardous for your usb port in case of shorts at the sensors cant deliver a +/- 12 volts dual voltage to drive additional sensor circuitry (op-amps, etc)

see usbpower.png for how to set-up for that. wire a bridge in the postion shown by the red line. not that all other power supply parts, _except_ C14 and C17, are not needed then, and should not be installed.

setting the used usb bus (low/high speed):

there will be an update soon that just is a different pic chip (a 18f4550 instead of the 16c765). for this chip, you need to replace Q1 by a 24 mhz type (instead of the 6mhz for the 16c765). in addition, to select the high-speed usb bus of the ne chip, put the resistor that is on position R1 (for the low-speed 16c765) on to the position for R14. do never, ever, put resistors in both positions at the same time! see usbtype.png for the location of the two resistors surrounded by a yellow outline.

midi-out option:

in midiout.png you see the parts the belong to the midi-out option of the mainboard, surrounded by a yellow outline. for now it isnt used at all, but the firmaware will support it in the future. it will have two seperate midi-outs, whereas the firmware provides serveral ways to map the controllers.

choosing the adresses of the userboard:

since you can hook up to 4 userboards on one mainboard, there needs to be way to set adresses for the various options. this is done with wire-bridges.

note! you can have only one user-interface block in total. so if you are going to use more then one userboard, dont put the "UserInterface" parts in.

adc/dac: see adc-dac.png for how to set the adresses for the adc and dac chips. note: adc and dac are "coupled" here for the id, meaning that one adc chip shares the adress with one dac chip. (same for the other two, of course) in the example you can see U$1 and IC9 set to ID0, U$2 and IC8 set to ID1. (IC8 and IC9 and on the solder-side of the board, and have no marking prints. see smallparts.png for the location, surrounded by the yellow box)

digi-in/out: see digisel.png the in and out's can have seperate adresses here. surrounded by the blue outline you can see ho to select the digital input groups. in the example IC5 is set to ID0 and IC6 is set to ID1. note that ID7 is on the other side of the adress-selector (IC7) in yellow you can see the setup for the digital output groups, here IC1 has ID0 and IC2 has ID1.

user interface:

in userinterface.png you see the parts realting to the optional user-interface for the iobox. this is not used yet, but again, will be in the future. it provides an easy, graphical or textual interface to all the functions and setups of the firmware. it will use a single rotary encoder with pushbutton as input, or a standard ps/2 keyboard. the whole userinterface is handled by a seperate microcontroller, which can be programmed as what is wanted (i.e. type of lcd, type of input). also, it will provide a serial port to connect to a terminal. note that there can be only _one_ userinterface connected to the mainboard. if you have more than one userboard, populate the parts for the userinterface on only one userboard.

the optional lcd adapter:

on the userboard you will find an area with marking prints, but no parts for that in the partlist (see smallparts.png again, the blue surrounded area). that will be an adapter for a lcd display, which unfortunatly has en extremely dense contact-layout. there will be further notes about that, if required. there is a high chance that i will refer to a different lcd display. for now, just ignore that area.

the marking print identifies a SV2, but it is nowhere used.



!!! ATTENTION !!!
You should be experienced in electronics if you whish to build this circuit !!
If you are not able to make your own pcb's and soldering them, ask a friend who knows how to do !

mamalala.de