Build Guide for Version 1.2 Micromite Companion Kit

 

March 2018

This page written and maintained by Darron A. Vanaria (email contact: dvanaria@gmail.com)

Micromite Companion created by Karl Albrecht and Jeff Ledger

 

 

The following instructions are for assembling the Micromite Companion Kit version 1.2. This kit is currently available from Karl Albrecht, one of the co-designers of the MMC (along with co-designer Jeff Ledger). Email Karl at karlralbrecht@gmail.com to order a new MMC v1.2 kit.

 

You will be able to tell what version of the MMC you have by looking closely at the PCB (printed circuit board). It will be clearly labeled Micromite Companion V1.2 along one of the edges of the PCB.

 

This assembly will first build the basic components necessary to test the SC Card Socket. After this is verified to be working correctly, the rest of the kit will be assembled.

 

This guide basically follows the guide that was made for the Micromite Companion v1.1a, written by Jeff Ledger (Oldbitcollector) in 2014 as a series of forum posts on the Propellerpowered Forums (which is no longer online). This is a well-written guide with clear images of the build process, and it was written by the same person who came up with the original concept and design of the Micromite Companion, so the v1.1a guide is a highly valuable resource to have while building this kit.

 

Kit Assembly Instructions

 

Step 1:

Orient the PCB as shown in the photo below. This will make following the directions in this guide much easier, as there are lots of references to locations on the PCB being on the left hand side, at the top, etc. In this assembly guide, all references to up, down, left, right assume you have positioned the PCB with all external connectors (such as the VGA port, the PS/2 port, the audio jack, etc) at the top, or furthest away from you. Another way to think of this same orientation: make sure the version number of the board is on your right-hand side:

 

 

Step 2:

Gather together some critical reference material that will help you build this kit properly:

a.      The Parts List (found here). I found it useful to mark out each component on paper while looking through the kit I received in the mail.

b.     The PCB diagram (found here).

c.     A photo of a fully assembled kit, to use as a reference (which can be found here).

 

Step 3:

Using the Parts List as a guide, go through all the components in your kit to make sure you have everything included and organized before you begin assembly. This will make things go much smoother during assembly, and will be much less error prone.

 

Some notes about the Parts List:

  1. There are a total of 71 components in the fully assembled kit. All 71 of these will be mounted on the PCB. There are also 6 Jumpers included (2-pin variety), but it seems that only two are needed in the final build (used to select the color mode of the VGA connector), so that brings the grand total to 73 components.
  2. Part D5 (described as 1N4007 on the Parts List) is a small diode included in the kit. It looks like one of the resistors, only it is black and has a stripe on one side.
  3. Part IR1 (described as TSOP38238) is an IR Receiver Diode. It looks like a transistor (black body with 3 legs).
  4. Part K1 (described as 6 pin mini DIN) is the PS/2 connector, where you will later plug in a keyboard.
  5. Part U1 (described as P832AD40) is the Propeller chip, made by Parallax, Inc.
  6. Part U3 (described as 32MX170F256) is the PIC32 chip, made by Microchip, Inc.
  7. Part U8 (described as 78M033 3.3V Reg) is the 3.3V Voltage Regulator, and is labeled 78M33C on the part itself. Note that there are 2 voltage regulators in this kit, and the 3.3V regulator must be installed in the far left socket, labeled U8.

 

It will greatly ease your assembly if you sort out and group together all the resistors in the kit:

  1. Use a multimeter (also known as a VOM, or volt-ohm-milliammeter) as well as the color-coded bands on the actual resistors to sort out the ohm rating for each part (here is a chart you can use).
  2. If using a multimeter, you don’t really have to try to decipher the color bands (as it can be very hard to distinguish the colors clearly), but it’s still a useful skill to practice and learn.
  3. Almost all of the resistors in this kit use the common 4-band color system, where there are three bands grouped together (1st and 2nd significant digits, plus a multiplier) and a single tolerance band isolated on the opposite side.
  4. The only resistors which employ a 5-band color system are the 1K Ohm resistors, and these are easily identified because they are the only resistors with a BLUE case color (all the other resistors have a BEIGE case color).

 

I found it useful to group together each component and tape them to a board, going from the top of the Parts List to the bottom. Some people will find this overkill, but if you’re new to electronic kit assemblies (and you have enough free time), you may find it helpful. Here’s a photo of the organized parts of a kit I recently assembled:

 

 

Step 4:

Time to start soldering.

 

  1. Insert and solder the 8pin socket at U2 and the 40pin socket with their "notches" facing toward the left. Do NOT solder in the 28pin Micromite Socket until instructed to do so. I believe this recommendation comes from the fact that the 28pin Micromite Socket gets in the way of soldering the SD Card Socket, which is arguably the most difficult component to solder in this kit (due to it being a surface mounted component, as opposed to the rest of the components which are through hole parts).
  2. Insert the 3.3v Voltage Regulator into U8 (FAR LEFT, EDGE OF BOARD) and solder.
  3. Insert the 5v Voltage Regulator into U6 and solder.

 

Here’s what the board should now look like:

 

 

Step 5:

Continue soldering. We are basically assembling a minimal system up to the point of being able to test the SD Card Socket.

 

  1. Insert and solder the male pin headers into J3. Install two shunt jumpers as shown in the image below. This sets the MMC to 64-color mode.

 

  1. Insert and solder 5 MHz crystal.
  2. Insert and solder the .1 caps (C1,C2,C6,C5)
  3. Insert and solder the reset switch "Rst".
  4. Insert and solder the 4pin angled header into J2.

 

Here’s what the board should now look like:

 

 

Step 6:

In this step we’ll focus on the resistors in the kit.

 

VGA Output Circuit. Insert and solder the following resistors:

  1. R1,2,4,8,11 = 240 ohm
  2. R6,10,13 = 120 ohm
  3. R5,9,12 = 470 ohm
  4. R3,7 = 1k or 1.1k

 

EEPROM Circuit:

  1. Insert and solder two 10k resistors at R23 and R24.

 

Audio Circuit:

  1. Insert and solder two 1.1k (or 1k) resistors at R18 and R19.

 

Keyboard Circuit. You may want to solder the following resistors with their bodies facing the opposite direction from that shown on the PCB. This is to remove the possibility of an exposed wire from a resistor touching the metal case of the keyboard connector (which is ground).

  1. Insert and solder two 100ohm resistors at R15 and R17.
  2. Insert and solder two 10k resistors at R14 and R16.

 

SD Socket Resistors:

  1. Insert and solder four 10k resistors in a row at R25,R22,R26,R27.

 

Note: There will still be 4 resistors that are not soldered to the board at this point (R20, R21, R28, and R29). R20 and R21 will be soldered after the SD Card Socket test. R28 and R29 are new to the v1.2 build (these weren’t part of the v1.1a kit).

 

The assembly should now look like the following:

 

 

Step 7:

In this step we’ll focus on the diodes and capacitors.

 

a.      Insert and solder diode into D5. (Line should be on the right)

b.     Insert and solder the four 47uF capacitors into C3, C4, C8, and C9.

c.     The negative stripe (black) should face to the RIGHT for C3 and C4.

d.     The negative stripe (black) should face to the LEFT for C8 and C9.

 

The assembly should now look like this:

 

 

Step 8:

Now we will attach the I/O interfaces located at the top of the PCB.

 

  1. Insert and solder J7 (the DC Power Jack)
  2. Insert and solder K1 (the PS/2 Keyboard Connector, a.k.a “6 pin mini DIN”)
  3. Insert and solder AJ1 (the Audio Jack)
  4. Insert and solder J1 (the VGA Connector)

 

Now the board should look as follows:

 

 

Step 9:

Time to solder the surface mounted SD Card Socket.

 

  1. First notice that the bottom of this component has small bumps which will fit snugly into holes on the PCB. This will help you make sure the socket is aligned correctly while soldering.
  2. Start by soldering the two large feet (the largest pads which are located closest to the left edge of the PCB). This will help secure the socket and allow you to focus on the rear pins without having to worry about the alignment of the socket itself.
  3. I found it helpful to put a bit of flux on these two large pads before soldering. This isn’t necessary, as you’ll probably be using a rosin-core solder, but it seems to help make sure the solder flows evenly under the feet to make a consistent connection.
  4. There are 3 pins very close together on the right side. (when facing the rear of the socket). These pins are card detect which are unused (and sometimes hard to solder). They may be skipped.

 

Here’s an image of the completed assembly up to this point:

 

 

Step 10: Test the SD Card Socket Assembly

 

  1. Install both the Propeller Chip and the EEPROM. Don’t forget this step (they aren’t installed in the photo above). Both chips should face left (notches), toward the two regulators.
  2. Plug in a PS/2 keyboard and a VGA monitor. Some PS/2 keyboards have been found to be problematic, perhaps drawing too much current from the PCB. Keep in mind this may be the source of a problem, if one arises during the test.
  3. Obtain and format a 2GB FAT formatted SD card into the SD Card Socket. Most cards now are 32GB or larger, but in my experience so far with the MMC v1.2, it is best to obtain a genuine 2GB card from any online retailer (they can be found very easily and cost less than the larger capacity cards).
  4. Install some files at the root directory of the SD Card (using another computer with an SD card socket).
  5. Insert the SD card into the SD Card Socket of the MMC.
  6. Plug in the DC Power Supply (recommended is 7.5 to 9 output volts). Output current should be between 500 mA and 1 A.
  7. Now for the test! There are two items to verify:
    1. You should see a logo screen and the word, READY.  For this to happen, a 2GB formatted (FAT) SD card must be in the SD Card Socket.

    1. Press F8 on the keyboard. You should see a directory listing of your files on the SD card.  This will NOT list directories, only regular files that are in the root level of the SD card.

 

 

Troubleshooting Problems with the SD Card Socket Test:

 

Don’t assume you did a poor job soldering the SD Card Socket and start firing up your soldering iron until you’ve read all of the recommendations below (I wish I had this piece of advice for my first kit build, because that’s exactly what I did and I ended up ruining not only the socket but the PCB board as well!)

 

A failed test will almost always (in my experience) produce the following symptoms:

a.      The screen is blank but if you look closely, you’ll see a lighter black screen being rendered briefly, then it will go dark again. It will repeat this process indefinitely, as if the system is continually rebooting.

b.     The other trademark symptom is the keyboard lights (if your keyboard has lights): they will blink on and off, about once a second.

 

If the system screen cycles through light/dark black, and the keyboard lights flash, suspect the SD card first:

a.      One of the design aspects of the MMC v1.2 is that for the system to boot, an SD Card must be inserted into the SD Card Socket, and it must be the correct size (2GB or less), and it must be formatted correctly (in the FAT format). The system will simply not boot without a card in the socket. It will likewise not boot if a card IS inserted in the socket, but it is not the right size, or it is not formatted, or it is not of the correct filesystem type (FAT).

b.     I haven’t had any luck getting SD cards larger than 2GB to be recognized by the MMC. I ordered a few 2GB SD Cards online (they’re easily available) and plugged them into my Windows 7 laptop to format, and the MMC had no problem booting up. But I tried the same thing with an 8GB card, and a 16GB card, and even repartitioned these cards using the Windows command-line, and reformatted them in the FAT file system after I downsized them to 2GB, but this still didn’t work. (I found out later that cards larger than 2 GB are SDHC cards, and they are blocked differently, so formatting them to 2GB doesn't help. These cards need a different driver.)

 

If all of the above fails to resolve the problem, it might be worth double-checking all of the installed components to make sure nothing is missing, and to make sure everything is installed in the correct locations. Do this before attempting to tidy-up your SD Card Socket pin connections. Resoldering these points is a bit risky in my opinion, and all other (non-invasive) options should be explored first.

 

It is possible to pass the first part of this test (you receive the welcome screen and all looks good), but still fail the second part of the test. This happened to me when I loaded a bunch of directories of data onto the SD card, booted up the MMC, and pressed F8, only to see the screen contents clear away and I was left with a blinking white cursor (and nothing else on the screen). I figured out that the MMC does not list directories on the SD card using this method. So make sure you install a few regular files (plain text file, an image file, etc) at the root level of the card.

 

Step 11:

Next to last step. Assemble everything left in the kit except the breadboard and the three 16pin female headers that surround it.

 

a.      Insert and solder the 8 pin socket into U5.

b.     Insert and solder the 28 pin socket into U3.

c.     Insert and solder the 47uf cap into C12 (Grab a magnifier and find the + sign on the cap, match it with one on the board.) I found looking at the board schematic helpful in figuring out which hole was positive on the PCB (it’s the one closer to the SD Card Socket).

d.     Insert and solder two 10k resistors into R20, and R21 for the Micromite/Gameport/Propeller I2C connection.

e.      Install a 470 Ohm resistor at R29

f.       Install the LED at D1 (note polarity).

g.     Install a 10K Ohm resistor at R28

h.     At J12 install the 6 pin bent row header for the PIC Kit 3

i.        Install the two switches at J4 and J8 (they each have 6 pins to solder). The switches should initially be set toward the left hand side of the board.

j.        Install the PropPlug header at J2 (4-pin bent)

k.     Install the Infrared Detector at IR1

l.        At J6 install the 3-pin male header

m.   At J5 install the 4-pin Terminal header

 

This kit is almost complete now:

 

 

Step 12:

Last step!

a.      Insert and solder the three 16pin female headers that surround the breadboard.

b.     Stick on the self-stick breadboard.

c.     Insert the Micromite PIC chip into the socket. Its notch should be upward.

 

Here’s a photo of the completed board (the IC chips have not been inserted in the photo below):

 

 

Congratulations! You have completed the Micromite Companion Build!

 

 

Software for the MMC:

Download the following files and install them on your SD card:

 

 

Manuals and References:

·        Start with “Getting Started with the Micromite” if you are new to the Micromite.

·        The “Micromite Manual” is a larger, more detailed document on the Micromite.

·        Also useful is the “MMBasic Language Manual” by Geoff Graham.

·        The "Micromite Companion Manual" is specific to the MMC and holds the master list of the special Propeller I2C commands.

 

 

Updating your Micromite Companion Firmware:

The "Companion Mode" firmware is updated from time to time. It is stored in the 32K, 8pin EEPROM on your board.

 

FOLLOW THESE INSTRUCTIONS TO UPDATE FROM A PARALLAX PROPPLUG: (from: /PROJECT SPIN SOURCE)

a.      Download the umitecompanion-bst-archive.XXXXXXXXX.zip and extract it to a folder.

b.     Connect the USB cable and Propplug between the PC and the MMC.

c.     Use BST to send "umitecompanion.spin" to your Micromite Companion Board using F11.

d.     Note: Requires "Eliminate unused SPIN methods", and "Non-Parallax Compatible Extensions" set in BST Compiler Preferences.

 

FOLLOW THESE INSTRUCTIONS TO UPDATE FROM SD: (from: /PROJECT BINARIES)

a.      Download the umitecompanion.eeprom file. Rename it to loader.pgm and copy to your SD card.

b.     Download the sdloader.bin (Section: PROJECT BINARIES\SDLoader) and copy it to your SD card.

c.     From the > prompt, type CTRL-B sdloader.bin and press ENTER

d.     The MMC will install the new firmware, reboot, and erase the loader.pgm file.

 

Use INFO command to check your current Micromite Companion Software version.

Current version of Micromite Companion is: 2.7

 

 

 

March 2018

This page written and maintained by Darron A. Vanaria (email contact: dvanaria@gmail.com)

Micromite Companion created by Karl Albrecht and Jeff Ledger