Building a muio interface

Build your own muio interface


muio ob breadboard


This basic interface is USB powered (so do not drive motors directly!) and has:-

  • 4 analogue to digital inputs
  • 1 digital to analogue output
  • at least 12 digital inputs or outputs


You can expand this easily!

This is best built in 2 stages, first the basic muio usb interface (using that delcom engineering usbio), then add i2c modules as needed (a single ADC port for this example).

Stage 1
For the basic usb stage will need:-

  • 1 x delcom usbio chip
  • 1 x 7.5k Ohm resistor
  • 1 x 0.1 uF capacitor
  • 1 x 4.7 uF capacitor
  • 1 x 6 MHz resonator
  • 1 x USB A cable (can be A to A, A - B, doesn't matter as we will chop it in half!)



1 x breadboard (or you can solder)
a number of lengths of small solid core equipement wire


Building process:-

  1. Cut the non-A end of the USB cable off and strip the wires. You will end up with RED, BLACK, GREEN and WHITE.
  2. Put the delcom usbio chip on to the breadboard - i recommend that you do this 3 rows up from the bottom.
  3. Carefully copy the picture below adding the wires first (NB see warning by the photo), then the resistor and capacitor, next the silver resonator.
  4. Finally add the 4 usb wires.
  5. Now test the muio_mini: Plug the muio_mini into an usb port, then start one of the muio servers (e.g. muioOSC). You should get a muio initiated message, NOT a muio not found. If there is a problem then check your wiring!

usb conections


NB Warning!! The silver crystal has been bent sideways - this covers a vital connection (sorry) that bridges the space between the rows (see next point 6 in annotated photo)



Stage 2 adding ADC inputs
Now you can add i2c modules, here we will add a PCF8591 (rs stock code
809-970). This is an 4 channel ADC, you can chain 8 of them, though each will need a separate i2c bus address.

Here is the photo - basically copy it! It includes a LDR connected to pin 0.
copy this

Here is an annotated image.

annotated image

Here are the comments: -

  1. These 2 wires are the i2c communication bus - chain other modules from here.
  2. Pins 13 and 14 on the adc chip set the upper and lower voltages for the conversion. Here we set the upper to 5v and lower to 0v. The ADC's 255 range is spread over this 0-5v range. Applying a voltage to pin 13 raises the lower limit, 14 the upper, see the sound lathe project for an example fo where this is useful. NB this also effects the DAC out (pin 15).
  3. Pins 5,6 and 7 set the i2c address (ao,a1,a2 - i.e. pin 5 = LSB). Here they are all pulled to 0v, so the address is zero (adc0 in muio software). Add more ADC chips and give them unique addresses using these pins.
  4. The vital adc inputs! pin1 = adc0, pin2 = adc1, pin3 = adc2, pin4 = adc3. Sorry about the shift in naming conventions - programming starts at list number 0.
  5. See the using section - wiring an ADC input. But we need to set up a voltage divider in prder for the ADC input to work. Typically I use a 1K resistor, but change this to tune your sensor.
  6. see the orange wire to the right of the image? This is the hidden wire mentioned earlier!