Home  Products Prices Directory Order Contact New Books Files Links Other
DonTronics Home Page SimmStick Overview, Dimensions & Bus Pinout.
Bottom of Page
SimmStick Overview
SimmStick Available DT Series PCB Listing
SimmStick Prices
SimmStick Pin Names
SimmStick Dimensions
Simm Socket Mating Cycle Endurance
Simm Socket Footprint
SimmStick Connectors and Simm Sockets Male and Female Header pins and sockets.
Beginners advice from Dr. Paul (or Need help finding the right components for robots)
User Feedback
Other Similar 30 pin CPU modules: (Includes new SimmStick designs)
SimmStick Student Projects. Includes Interfacing an LCD to a computer parallel port and interfacing switches and leds to computer parallel port.
SimmStick Bus Concepts and Sisuser group Discussions
AT90S1200 Walking LED file, and programming SimmStick with MAC's

SimmStick Overview

SimmStick(tm) is a 30 pin simm socket based Single Board Computer designed by Antti Lukats from Estonia that has started with the PIC16Cxx chips and is now migrating to other Microcontroller families such as the Atmel devices. There are now Atmel AVR and non-AVR support boards for both 20 and 40 pin micros. The simm socket used is the common 30 pin one used for many years on PC motherboards.

Small and large proto boards, CPU boards, Motherboards, and many I/O boards are under design. Custom or third party boards are encouraged. DonTronics now has many new board designs available. These include Relay modules, LEDs and Switches I/O boards, and two new motherboards.

Boards are re-usable and reconfigurable for many different applications. You can prototype a design on a breadboard with a 30 pin Simm Socket for your PIC16Cxx or Atmel micro, then a final board design can include or exclude the SimmStick module.

The best part is the price. About $6USD retail per bare printed circuit board for single quanities. This if for a 3.5" by 1" double
sided, plated through, solder masked board.

The DonTronics DT001 8 slot Development Platform also contains an inexpensive PIC programmer for the SimmStick bus. A SimmStick bus structure isn't a definite requirement as these modules can also be connected together with straight or right angle 30 pin male and female pins, as a set of header pin holes are provided just behind the edge connector pads.

Specific Questions:

What are the 3 special I/O lines used for?
A1, A2, and A3 are User defined. They can be a card select, Video In/Out, whatever you care to make it for your project.
We have used it for alternative RS-232 on some boards.

Why connect D0 to D15 together on the motherboards?
Most small applications may only have 2, 3, or 4 boards connected together. In these cases, the I/O will no doubt be common.

On larger applications, or where multi-processors are used, you may need to custom design or jumper a motherboard to suit.
The idea is to change the mother board platform to configure your SimmSticks. The most common hobby PCB board you can purchase appears to be a simple parallel tracked PCB that matches 30 pin Simm sockets nicely.

If you need to design and manufacture a custom motherboard and use off the shelf SimmSticks, then future design is easy. You don't need to cut tracks and run jumpers on SimmSticks if you do all your configuration on the motherboard.

An Internet Based Distributor network has been setup for SimmStick.
More information can be found at the following Web sites:

A complete listing of the DT series of boards can be found at:
A complete directory of the site can be found at:
http://www.dontronics.com   mailto:don@dontronics.com

And in The US:
http://www.wirz.com         mailto:ben@wirz.com
A US Toll free phone number is also available: 1-888-289-9479

Other dealers can be found at:

PIN # Name Description
1 A1 Special IO 
2 A2 Special IO 
3 A3 Special IO or Negative Supply
4 PWR Unregulated DC in or +12V or VPP
5 CI Clock Input or OSC1
6 CO Clock Output or OSC2
7 VDD +5V In or Out
8 RES Reset In or Out
9 GND Digital Ground
10 SCL I2C Clock or IO
11 SDA I2C Data or IO
12 SI Serial In or IO
13 SO Serial Out or IO
14 IO General purpose IO
15 D0 IO
16 D1 IO
17 D2 IO
18 D3 IO
19 D4 IO
20 D5 IO
21 D6 IO
22 D7 IO
23 D8 IO
24 D9 IO
25 D10 IO
26 D11 IO
27 D12 IO
28 D13 IO
29 D14 IO
30 D15 IO

 SimmStick Dimensions.

A DT Series Board 2 Inch SimmStick is 2.025" high and has the top holes .175" from the top edge.
The spacing is the same from each edge, that is .13"

A DT Series Board 2.5 Inch SimmStick is 2.65" high and has the top holes .175" from the top edge.
The spacing is the same from each edge, that is .13"

Simm Socket Mating Cycle Endurance:

Subject:                    Re: simm sockets, etc.
Resent-Date:             Fri, 11 Sep 1998 10:38:34 +1000 (EST)
Resent-From:            sisuser@ip.co.za
Date:                        Fri, 11 Sep 1998 10:32:34 +0900 ("EDT)
From:                       Ron Kreymborg ron@vortex.shm.monash.edu.au
Reply-To:                 sisuser@ip.co.za
To:                           sisuser@ip.co.za

I have used the DT101 and DT001/DT003/004 for a number of projects.  One I remember had a DT003 connected to a number of periherals with a 16F84 on a DT101 SimmStick. I continually modified and expanded on what it could do
and display, and in so doing must have moved the DT101 from the DT003 based product to the DT001 programmer board hundreds of times.

Never a hickup and examination of the sockets/contacts shows no appreciable wear. The advantage of the DT101 socket is that it is pressed together with no sliding (read scraping) motion.


Subject:              RE: What is this board?
 Resent-Date:     Thu, 21 Jan 1999 00:02:49 -0500
 Resent-From:     sisuser@ip.co.za
        Date:           Thu, 21 Jan 1999 16:13:56 +1100
        From:          "Peter Homann" <peterh@adacel.com.au>
I've just got my DT001 board constructed, Its a Rev A, that shows how long
I've been planning to build it up. It went together without any problems.

I'm planning to do some work with the PIC16C924, with the EPROM version in a 68 pin PLCC package. I'm using one of Dontronics 2" prototype boards in conjunction with the DT001 programmer. I've soldered a PLCC socket into the prototype board, and run wire links from the PLCC socket to the SIMM edge connector for the Gnd, RB6, RB7, VDD and VPP pins.

I'm using the PROPIC 2 software to do the programming. I changed the device config file for PROPIC 2, indicating that the 16C924 device has 18 pins. This causes the software to use the same parallel port pins for programming as it would for the 16F84 chip. The result is that the correct voltages and signals are presented to the SIMM socket on the DT001.

I've followed the development of both the SimmStick products and the PROPIC software for a number of years now and am very pleased with them both.

If anybody wants any more detail on what I've done, let me know, and I'll draw a diagram or take a photo.

Thanks, Peter 

Simm Socket Footprint:

Subject:              Re: Need help finding the right components for robots.
 Resent-Date      Sat, 26 Sep 1998 22:49:46 +1000 (EST)
 Resent-From:     sisuser@ip.co.za
        Date:           Sat, 26 Sep 1998 21:51:58 +1000
        From:          "Paul B. Webster VK2BZC" <paulb@midcoast.com.au>
 Organization:      Webster Medical Pty. Ltd.
          To:            sisuser@ip.co.za
Rod wrote:
> I was looking for low cost alternatives to controller boards when I
> lucked on www.dontronics.com.

  Yes, the simple PIC stuff is pretty "low-cost", but you must realise
it has limited memory and I/O capacity.  As you start to get to the
40-pin chips with plenty of I/O and more memory, costs start to escalate
toward the "other" controller boards.

> I found some terms that I didn't know, one of which was SimmSticks.

  At risk of repetition, as others have replied, these use the format of
30-pin SIMM memory cards.  The PCBs are small, fairly easily produced
(but not D-I-Y) and the SIMM sockets are dirt cheap from disposals
outlets.  It makes for a neat means of stacking modules; the
"motherboard" can even be Vero®.  (A fibreglass laminate version of Vero
would be **really* nice...)

> I get hit with the fact that I must pay for some sort of controller
> board, that needs either discontinued parts which are expensive & hard
> to find,

  Maybe, maybe not.  *Any* parts can be hard to find, and many old parts
such as the Z-80 are pretty cheap.  Most of the CMOS processors, which
are almost always the ones you want for economy of power, are still
current, but priced proportional to their capabilities.  The trick in
the Atmel AVR and PIC16F84 parts is that they are easily reprogrammable
*and* fairly cheap.

> or the STAMP module which is out of my price range.

  That very much depends on how many you want.  You can hack a single
Stamp module into a design much more cheaply and easily than building
Don's system; the module is complete and the software off the Web; you
need very little else.  You can cobble together a PIC'84 programmer
*much* cheaper than Don's however, but you won't have an application
board.  (Maybe you could use his DT-101s and cobble a version of the
DT-001, but I doubt it'd be worth the mess!)

  Once you've got the DT-001 up and running though, DT-101 modules *are*
going to be cheaper and more versatile than Stamps though and you get an
excellent base controller.  Neither contains interface as such (but Don
does those too).

> I guess what I'm asking is would someone please give me a little help
> in finding out if I can use the products offered by Dontronics as a
> contoller for a small mobile robot

  Done it? - not at this point.  I'd say though they are at worst, equal
to the Stamp (but you have to learn Assembler instead of Stamp "Basic")
and I'd advise you to go for it.

> a few small dc motors,

  You'll have to build drivers (whichever way you go) unless you can use
standard servos (worth considering; cost starts to mount).

> some simple sensors circuits,

  Pretty much processor-independent.  Pin count has to be monitored. A
clever trick is to have your sensor board contain a parallel-in, serial-
out shift register to clock in 8 or more inputs on only three lines.

> decent progamable memory size, expandable and upgradeable

  1K of PIC instructions goes a fair way; if you can learn to write the
interface to external serial EEPROM you can have 8K or so of token code
on the DT-101, or there is a form of Stamp-like "Basic" to do this.

> The controllers usually used by many robot buffs are STAMP's,
> Handyboard, and the Botboard. I can't afford any of these, but I could
> afford a low cost starter kit and then add on extras as I need them.

  I think you can better the Stamp with Don's stuff fairly well.  The
others you mention, particularly the Botboard however are not comparable
to my mind.  You are getting there to 68HC11 boards with major memory
resources (32K or more) and much more I/O, programmable in FORTH which
is still ace for robots.  They are almost certainly worth the money,
when you need them.
        Paul B.

User Feedback:

Subject:              RE: simm sockets and $500USD contest.
              sisuser@ spam suppressed
        Date:           Tue, 27 Apr 1999 16:33:05 -0700
        From:             BPuckett@ spam suppressed

About the contest - that's what prompted me to start getting serious about the SimmSticks.  When I read about it the first day I quickly jotted down notes for about a dozen projects.  All based on a common cool extension to the bus.  The little bus monitor board I wrote about this morning was just practice.  I hope to submit an entry in the next month (it takes me a while because I'm a software not hardware guy learning as I go).

The prize offering wasn't the hook - I just thrive on competition.  I figure someone has to win - someone has to lose.  I could be either one, but it's the thrill of the hunt.

I haven't really mentioned it here yet, but my web site is being updated with SimmStick and PIC stuff I am writing.  It's from a beginner's point of view, so it may not help a lot of people on this list, but I supposed some will benefit.

If interested, take a look at:

I am adding new material all the time.  Sections on choosing a programmer and a development platform are not done yet.  And, I plan a lot more on SimmSticks. Here is an excerpt from
http://www.kbob.com/Sections/Technology/Microcontrollers/pics_.htm :

"You need to plug the PIC into something.  It's just a chip after all.  Many companies make prototyping boards.  You can wire up simple circuits on a solderless breadboard.  But, the coolest way to go is SimmSticks.  These are motherboards and plug in cards based on the 30 pin SIMM socket format.  A four slot motherboard with RS-232 port and power regulator on a 2.75" X 4" board."

I am having so much fun.  And, it's wild to write email at 2:45 and see it quoted on Don's web site at 4:00!

Bob Puckett

Other Similar 30 pin CPU modules:
BOB-II  Low-cost video text display module
30 Pin uClinux/68EZ328 SIMM Module 10Base-T ethernet and LCD panel driver
http://www.eedevl.com/products.html Great hardware and software microcontroller tools. SimmStick programmer.
IPI Japan New SimmStick Modules.
KBCZ-203 Mini SimmStick LED board by Bob Puckett.
FIRECARD 20/24 Data Acquisition Computer
Vipstick What is a VipStick?

SimmStick Bus Concepts and Sisuser group Discussions

Subject:  Re: SimmStick spec
             Wed, 09 Jun 1999 18:01:56 +1000
     Reply-To:   sisuser@
As I'm not sure if Mark is as yet on this list, I'll cc this to him and leave the message intact as I can only endorse what Rod is saying here. In fact he said it better than I would have come up with on short notice.

As an analogy, let me go back to when I was into design talks with Antti Lukats on the original SimmStick bus concept. We both have a previous love of Z80 hardware and software, where our micro roots are you might say.

Kicking around the idea of a Z80, a rom, a ram, and an interface to the outside world, and to be Simm Bus compatible, would mean an interface chip on the bus that would emulate the good things about the PIC and Atmel chips in their native I/O mode, meaning each and every pin is an I/O, not input only, not output only, but I/O.

This would mean any bus signal will cater for both directions. Have a look at the circuit of the dt102(.html) You will see that the same pins that are used to write to the LCD bus are also used for the DIP switch input readings.

OK Antti, how do we do this with a Z80?
With a PIC16C57/XT of course!!! was his answer.
After careful thought, I knew this was correct and have often wondered why I haven't done it by now.

It may mean a 3" SimmStick with a 40 pin Z80, 28 pin Ram, 28 pin Eprom, and a 28 pin PIC16C57, but you end up with a 3" SimmStick that is capable of running most of the Z80 and CPM software that has been available since 1976??, well with appropriate drivers anyway.

OK, this may well be an old dream for a couple of old-timers, but the theory remains the same for the SimmStick and the bus.

It's horses for courses as I would say. We don't really need to run CPM or a large data base, we just need some single chip control done cheaply.

I know what Mark is saying with the read/write/ale, as I have been there and done that many times, but I'm afraid it doesn't have much to do with where SimmStick is, or where it is heading.

Sure, users will make their own interpretation of the bus specs, and make it match their own requirements.
There are some very interesting developments that will unfold in this direction in the near future, but the concept of the I/O pin on, each and every data line basically remains the same.

Sage Telecommunications wrote:
> Unfortunately when the SimmStick bus was named it has brought with it
> numerous definitions of what a 'bus' is and/or should be.
> The original concept of a single chip micro with a 'bus' to allow easy
> access to i/o and simple addons was fine. It has some limitations but has
> been fairly well supported and allows for numerous add on cards. The biggest
> mistake was calling the I/O lines data lines! They are not they are I/O
> lines.
> There has been a number of proposals, including Mark's,  to change the
> definition of the bus to something along the lines of an ISA/PCI/S100( for
> those old enough ) bus. This kind of bus is also great. But it is a
> completely different concept.
> I am not quite sure how you could interface an 18 PIC or ATMEL to a 32k ram
> module and have any IO left to do anything with. You would need to create
> I/O cards with buffers/latches and separate connectors to interface to the
> outside world.
> My point is that what is being proposed is a different system all together.
> SimmStick as it stands is meant for developing single chip micro projects
> with one or two add on boards that connect directly to the I/O on the micro.
> There are a lot of generic micro bus specs out there. PC104 / ISA / EISA /
> PCI / S100 / VME / Multibus / STD etc. For most, if not all, of those
> busses(!) external interface to plug in boards requires separate connectors.
> The physical construction of the bus is quite robust. Simm sockets are not
> designed to be sufficiently robust. The physical size of a SimmStick board
> is limited, if the board is to big you will have a problem with physical
> integrity with the sockets.
> I really don't think that the SimmStick is the platform to use for a
> 'generic' bus product. There are a lot of applications that suit SimmStick
> very well and some that don't. YMMV
> That's my $0.02 + gst worth
> Rod Egan
> -----Original Message-----
> From: Don McKenzie <don@dontronics.com>
> To: Mark Dierolf <mud99@geocities.com>; sisuser@ip.co.za <sisuser@ip.co.za>
> Date: Wednesday, 9 June 1999 10:29
> Subject: Re: SimmStick spec
> >Hi Mark,
> >See:
> >http://www.dontronics.com/chat.html
> >which will point you to the subscribe sisuser info.
> >
> >Mark is thrashing out some SimmStick bus specs and I have suggested he
> >join, and air it on the sisuser list as others may have comments or be
> >interested, so here is our exchange so far.
> >
> >Mark Dierolf wrote:
> >>
> >> Thanks for the input don, i think it would be a good idea to report it to
> >> the group, however i am not on it! Could you forward me to a website so i
> >> can subscribe?
> >>
> >> I think i may have given you a slightly wrong impression. I think the
> >> standard should be revised and named differently, and at least the
> voltages
> >> on certain pins standardized, so that i/o pins cant get fried. I also
> think
> >> a databus should be standardized. While the ORIGINAL simmstick design can
> >> remain intact, there should be a definite way and pinout of communicating
> >> with add-on boards, which is documented as the recommended method or
> such.
> >> Anyways, if people want to use their own simmstick boards in a different
> >> pinout, with different voltages, they will do that no matter what the
> spec
> >> says. The big thing that i personally would like to see is modularity. It
> >> would be great if i could order a simmstick with an atmel 90s8515 from
> you,
> >> and then go and purchase a 32k sram board and just plug it right in,
> without
> >> having to look at pinout,voltages,etc..
> >>
> >> On a completely unrelated topic, if i were to create some simmstick
> PCB's,
> >> and sell them, can i legally call them "SimmStick"?
> >> The actual phrase, as an example, would be the following:
> >>
> >> 32k Sram
> >> SimmStick
> >> By Mark Dierolf 1999
> >>
> >> BTW The reason i came up with that databus is because it is physically
> >> compact, easy to implement, and can be directly connected to quite a few
> >> micros, especially the atmels, which have become popular as of late.
> >>
> >> Mark Dierolf
> >>
> >> > -----Original Message-----
> >> > From: Don McKenzie [mailto:don@dontronics.com]
> >> > Sent: Sunday, June 06, 1999 8:51 PM
> >> > To: mud99
> >> > Subject: Re: SimmStick spec
> >> >
> >> >
> >> > > mud99 wrote:
> >> > >
> >> > > Dear Don,
> >> > > I have been interested for quite a while in trying out your simmstick
> >> > > products,
> >> > > and i have recently made up some PC Boards which fit into the sockets
> >> > > and use the same pinout as yours. I would like to release the PCB
> >> > > layouts
> >> > > to the public but i have found that while you have put a pinout for
> >> > > them on your site,
> >> > > the specification is very vague, for example, pin 3 can be special
> I/O
> >> > > or negative supply. The problem is that if someone were to plug their
> >> > > own card into one of your powered motherboards as an example,  they
> >> > > may recieve -5 or -12 volts to an I/O pin on their product, and the
> >> > > results would most likely not be good. This is the same with a number
> >> > > of other pins as well. Therefore i think it would be in the best
> >> > > interest of everyone to make the specification more clear, or come up
> >> > > with a revised spec and call it SimmStick-B or something like that.
> >> > > If you do decide to do this, my personal preference would be to
> >> > > implement some sort of actual data bus, here is how i have done it on
> >> > > my board:
> >> > > pin 1: RD(active Low)
> >> > > pin 2: WR(active Low)
> >> > > pin 3: Having at least a single interrupt would be nice, so i put it
> >> > > here
> >> > > pin 14:ALE(Active Low)
> >> > > pins 15-30:data and address bus, 8 or 16 bit data users choice
> >> > >
> >> > > I hope you will consider this as it would benefit all simmstick
> users,
> >> > > and
> >> > > i think it would be appreciated in the long run.
> >> > >
> >> > > Thanks,
> >> > > Mark Dierolf
> >> > > mud99@geocities.com
> >> >
> >> > Hi Mark,
> >> > I thought the question may be better addressed to the sisuser group so
> >> > that others may be involved, in fact it still can of course.
> >> >
> >> > The problem of only having 30 pins, and allowing 3 for users means you
> >> > put there what you application needs.
> >> > If it needs 1V p/p video, then that's what you run on that signal, say
> >> > pin 1. If anyone else wants to use the same motherboard that has pin 1
> >> > common, they must be aware that this is used for video.
> >> >
> >> > To cater for every set of circumstances means a lot more pins than 30
> of
> >> > course.
> >> > If you wish, you or I could run the whole question and answer past the
> >> > sisusers for comment if you wish.
> >> >
> >> > BTW. It looks like you are aiming at a specific micro bus. :-)
> >> >
> >> > Cheers Don...

AT90S1200 Walking LED file, and programming SimmStick with MAC's
Subject:         Re: LEDTEST file
   Date:          Tue, 15 Jun 1999 19:39:46 +0000
   From:        "Ben Hitchcock" <beh01@uow.edu.au>
     To:          don@dontronics.com


I found this file out on the web, and it works really well.  It's a major achievement to get my simmstick programmed using my iMac and I'm pretty happy about it - the main reasons being:

a) no-one that I know of has done it before.
b) Lots of people told me it couldn't be done.
c) my Mac doesn't have any serial or parallel ports, apart from a USB port.

Well, I did it!  I'm going to improve the program a lot, write some html for it and then post it up on my web site.  If you're interested, I would be happy if you would 'mirror' it on your site so that other beginners like me could find it easier to get started.

Anyway, here is the LED test file.  This one is a bit better than the one you get with the ATMEL programs because you don't have to keep pressing 'reset' all the time.

; Bit rotation test program for Atmel AVR microcontrollers
; Ingeneering Inc.
; www.ingeninc.com
; Jeff Holtzman
; 2/4/98

;Rotates a bit through LEDs using precise software time
;delay.  From 10/98 issue of Popular Electronics magazine.
;AUTHOR = Jeff Holtzman
;TARGET = AT90S1200

.device AT90S1200
.org 0

.equ    DDRB =  $17
.equ    PORTB = $18
.equ    OLC =   0               ; outer loop count for delay routine
.equ    ILC =   156             ; inner loop count for delay routine

RESET:  ldi     r16, 255
 out     DDRB, r16       ; set port B for all outputs

        ldi     r16, $FE        ; initially enable just the lowest bit
LOOP:   sec
        out     PORTB, r16      ; turn on one LED

        ldi     r17, 5          ; wait 0.5 sec
LP1:    rcall   DELAY
        dec     r17
        brne    LP1

        rol     r16             ; rotate the bit
        cpi     r16, $FF        ; if all bits not set
        brne    LOOP            ;   ... continue
        dec     r16             ; else set just the lowest bit
        rjmp    LOOP            ; loop forever

DELAY:  ldi     r22, OLC        ; delay for 1/10th second
DL1:    ldi     r23, ILC
DL2:    rcall   DUMMY           ; waste 7 cycles
        dec     r23
        brne    DL2
        dec     R22
        brne    DL1
DUMMY:  ret

Here's the compiled HEX file (compiled for a macintosh programmer - Yes,
they ARE different!):


And here's the compiled HEX file (compiled for a PC programmer):


Hope this helps!
Ben Hitchcock
Home  Products Prices Directory Order Contact New Books Files Links Other

DonTronics Home Page

mailto: don@dontronics.com_
Copyright © 1996-99 DonTronics
Top of Page