MarcDuino v1‎ > ‎

Building MarcDuino Boards

For automating a full dome, you'll need two boards like this, a Master and a Slave. The first one is the Master (also called dome panel controller) board. It is connected to the 10 dome panel servos and the Wifly receiver, but is also connected to the MP3 Trigger or CF-III sound system and the slave board. You can see the Master board connections here.

The second one is the Slave (also called HP controller) board, which is connected to the 6 Holoprojector (HP) servos, the 3 HoloLights, the Magic Panel and the Teeces or JEDI display system. You can see the Slave board connections here.

Both are the exact same board hardware, they differ only by the software image uploaded to them. They look like this:

Before we start: overview of the full system

To build the full MarcDuino v1 system (10 panel animation, MP3 Sound, Teeces Lights, and Holos automation, WiFly radio), you'll need:

- Master MarcDuino (connected to the WiFly receiver, controls the panels & sound board), see below
- Slave MarcDuino (same board as the above but with different firmware, controls the Teeces Lights, Holo Lights, Servo and Magic Panel)
- Teeces Light Set (R2's blinky lights, comprises the Rear Logic Display, Front Logic Displays x2, and two Process State Indicators)
- CuriousMarc HoloLights (3 of them, bright lights to put inside your Holoprojectors if you want them lit)
- AVR Programer (to program your MarcDuino), see below
- WiFly  and Antenna (the receiving radio module)
- XBee USB Dongle (to program the WiFly above)
- SparkFun XBee Explorer (a socket to connect your WiFly to the MarcDuino Master)
- MP3Trigger for the sound board
- 12V Audio Amp of your choice

It's modular. You can start small with just a Master board and sound card, and build up to a complete system progresssively.

Purchase your MarcDuino boards from Oshpark:

Buy the following components from DigiKey

MarcDuino v1.1 Bill of Materials (updated 7/21/2013)

Part    Quantity 
DigiKey Part Number   
DigiKey Link
16 MHz Crystal 1 887-1019-ND
0.1 uF Cap 1 445-5303-ND
20 pf Cap 2 SR151A200JAR
100 uF Cap 16V 1 399-6601-ND
1 kOhm Resistor 1/4W 2 CF14JT1K00CT-ND
3mm LED Red 1 754-1606-ND
3mm LED Green 1 754-1603-ND
0.1" pin 50 strip 1 SAM1031-50-ND
0.1" pin 2 row 10 strip 2 5-146257-5-ND

Solder the components as shown:

Soldering order is unimportant. Only 4 components are polarized:
- the 100 uF capacitor, vertical stripe on the side indicates the (-) pin
- the two LEDs: note where the flat side is and align to markings on the board (no flat side? See note 2 below!)
- the ATmega328p chip: position the half moon  notch as shown on the board.
I make the servo 3 pin wide arrays by using a combination of the 2 row and single row pin strips, and holding them together in place with a servo 3 pin connector while I solder.

Note 1: in v1.1, there is a 1k resistor at the bottom left under the green LED, not shown on this picture.

Note 2: The flat side LED marking is hard to see on the boards silk screens. However, both LEDs flat sides (negative) are oriented towards the bottom of the board (towards the edge that says MarcDuino). Except that on some cheap chinese LEDs they don't even bother aligning the flat on the right side (and it drives me mad one I get one of these)! Look at the length of the leads then, see picture below. If all else fails, look at the shape of the electrodes through the plastic, it should look like the figure.

Note 3: some of the LEDs ship without a flat side. In this case, use the shorter pin or the wider post as the indication of the flat side (negative), as shown in the diagram below.

Note 4: Make sure to solder the right lead of the 1k resistor (at the top) into the PC3 hole, past the headers (NOT on the PC4 hole next to the header).

Upload the software to the board

You'll need a small AVR programmer to upload the software to the board via the 6 pin ISP connector.
My current favorite is the small and inexpensive PocketAVR from

For instructions on how to upload the software to he board, go to Uploading the Firmware.

Testing the board and next steps

As soon as the firmware is uploaded, the red LED should start blinking once per second. This indicates that the board firmware is running and that fuse bits have been correctly set. Normally, the flashing red LED (1 second off, 1 second on) is the only testing you'll ever need to do. However if you wish to do more in-depth testing or debugging of the board from the command line, follow instructions on the MarcDuino testing page.

Once your board shows the flashing LED, the next logical step is to program and install the WiFly (or XBee) radio, as explained here.

To hook up the MarcDuino's in your dome, go to the Installing the MarcDuino page.

To use the R2Touch iPhone application to control the MarcDuino, go to the R2Touch App page.

If you ever want to learn more about the command language and modify the source code, go to the MarcDuino Software page.


A file reference section including schematics and board pictures is provided at the bottom of this page.

Curious Marc,
Mar 13, 2013, 11:10 PM
Curious Marc,
Mar 13, 2013, 11:13 PM
Curious Marc,
Mar 13, 2013, 11:42 PM
Curious Marc,
Mar 13, 2013, 11:07 PM
Curious Marc,
Mar 13, 2013, 11:06 PM