A large, full colour manual is included to make assembly easy. The manual can be downloaded from here: https://sites.google.com/site/daguproducts/home/instruction-manuals. This instructable supplements the manual with additional colour photos and text to show the easiest way to assemble the robot.
There is a tutorial for creating font, symbols and pictures here: https://www.instructables.com/id/How-to-draw-pictures-and-create-fonts-using-the-Do/
Step 1: Check Your Parts
Step 2: Assemble Your Wheels
Step 3: Adding Mounting Brackets to Your Motors
The kit includes 6x 90° angle brackets (part #9) for mounting your motors and 2 sizes of M2 screws (5mm & 8mm). For this step we need six M2x5mm screws (part #11). Use the printed ruler to check the screw size.
As these motors have mounting slots rather than holes it is easier to partially insert our screws into the 90° brackets first. Then slide the bracket into the motor mounting slot and gently tighten the screws. You only need to tighten the screws a small amount.
Pay careful attention to the way the brackets are mounted as there is a left and a right motor plus the servo only mounts on the left side of the body.
Step 4: Mounting the Motors and Encoder Sensors on the Base
The easiest way to mount the left and right motors is to start with a single M2x8mm screw (part #14) passing through a fiberglass strip (part #25), through the base plate (part #1) and into the motor mounting bracket (part #9) on the other side. Do not tighten the screw yet!
While the screw is loose, slide your sensor under the strip as shown and then add your second M2x8mm screw. Align the sensor so it sits directly above the output shaft of the motor and gently tighten the mounting screws until the fiberglass strip bends slightly. Repeat these steps for the other motor.
At this point you can also mount the servo (part #6) using the last two M2x5mm screws.
Step 5: Mounting the Wheel Encoder Magnets
Note: the magnets are only 1mm thick and quite brittle. They will break easily if dropped or stressed!
These Magnets are the same size as a round servo horn (part #7). A servo horn is a small plastic piece that fits onto a servo's output shaft and has mounting holes so that other devices can be connected to the servo. Servo horns come in several different shapes.
To mount our magnet on the servo horn we have two small pieces of double sided tape (part #23) that have been cut to the same shape as the magnets. Start by peeling away the small disc in the center of the double sided tape. It is easier to do now. Then remove the protective layer from one side and carefully align the double sided tape with the magnet. Once the tape is on the magnet, use the screwdriver to poke out the center of the sticker.
Pay careful attention to which side of the servo horn the magnet will be mounted on as the magnet must be on the inside, closest to the motor. Peel away the other layer of protective film and stick the magnet to the round servo horn. Repeat these steps for both magnets and mount them on the motors using the 2x5mm self tapping screws (part #15).
Step 6: Mounting the Wheels
This may sound complicated but it is only a matter of partially inserting a screw and then removing it. Then partially inserting a different screw and removing it in order to enlarge the holes in the servo horn slightly.
Pay attention to the four holes used. Using the wrong holes will cause misalignment of the screws.
Start by using the remaining 2x5mm self tapping screw (part #15) and gently screwing it in until it hits the magnet then removing it. This will enlarge the holes in the servo horn a small amount. Now repeat the process using the 2x5mm flange head screw (part #12) to create a thread in the hole. Be careful not to push the screws through too far otherwise you may cause the magnet to peel away or break.
Now align the mounting holes in the wheel (part #2) with the holes you have just enlarged and mount the wheel with four 2x5mm flange head screws (part #12). Repeat the process for the second wheel.
Step 7: Mount the Servo Arm Used to Raise/lower the Pen
The servo arm must be correctly aligned otherwise the pen may not raise and lower correctly or the servo could jam. To align the servo arm correctly, press it onto the servo output shaft and gently turn the servo output shaft anti-clockwise until it will go no further.
Now with the servo output shaft fully anti-clockwise, mount the servo arm parallel to the base plate as shown and use the last 2x5mm self tapping screw (part #15) to lock it in place.
Step 8: Mount the Front Wheel.
This roller is fitted to the servo arm using a 2.3x10mm self tapping flange head screw (part #13). Pay careful attention to which side of the arm the roller is mounted on. Do not tighten the screw too far. The roller should spin freely.
Step 9: Mounting the Battery Holder.
The battery holder (part #18) is held in place with a re-usable cable tie (part #20). Thread the cable tie through the holes in the base plate as shown with the head at the back of the robot.
Insert your battery holder (you may want to install your batteries first) and tighten the cable tie gently so that the battery holder cannot fall out.
When you need to replace the batteries, simply press down on the small lever on the cable tie head to release the catch and loosen the cable tie so that the battery holder can slide out. Install fresh batteries and re-tighten the cable tie.
Step 10: Installing the PCB Mounts
Do not over tighten the screws! The base can crack if excessive force is used to tighten the screws. You only need to tighten the screws firmly so that friction prevents them from coming loose.
While the robot is upside down, now is a good time to feed your motor and servo cables through the hole at the front if you have not done so already. There is a spare hole at the back in case you wish to add other sensors in the future.
Step 11: Mount the Controller and Install the Rubber Pen Grip
Press the rubber pen grip into the hole at the front of the base plate. Although the rubber grip was originally designed for thick whiteboard markers and permanent marker pens it can also be used for jumbo chalk and crayons.
Try inserting 2 or three small crayons or chalk sticks into the rubber grip for a rainbow effect. If you have a whiteboard marker or pen that is a little bit too small for the grip then wrap some layers of tape around the pen to make it thicker.
Step 12: Wiring Up the Robot!
Unlike standard Arduino boards, this controller has a few extra features making it particularly suitable for small robots. It has a dual DC motor driver that can handle up to 2.5A per motor and servos can be plugged directly into the PCB.
The digital I/O pins are terminated in a 3 pin male header that includes power for servos and sensors. The power can be selected between +5V or +Battery voltage. Normally +5V is used. If you select +Battery then you should only connect servos to these pins as a battery voltage higher than 5V could damage the digital pins.
Doodle Bot has 2 digital sensors and one small servo that will not be under heavy load so we need to select +5V to prevent damage to the digital inputs.
Next we need to connect the motors. You can see on the control board that the motor outputs are labeled "ML" and "MR" for motor left and motor right. In the case of Doodle Bot, the "ML" output is on the right side and the "MR" output is on the left side. This is so that the USB socket is to the back of the robot.
Connect the right motor to the "MR" output and connect the left motor to the "ML" output. Pay careful attention to the colour of the wires. When the robot runs the sample code the first move it should make is to travel forward a short distance, then back up and turn anti-clockwise.
If either motor runs backward at the beginning of the sample code then that motor needs to have it's wires swapped over. Once the robot has gone forward and then reversed a bit, If the robot first turns clockwise then you need to swap left and right motors.
Make sure the power switch is in the off position and connect the battery holder as shown. The controller has reverse polarity protection so if you accidentally connect these wires the wrong way the robot will not be damaged. it just won't turn on.
Now connect your wheel encoder sensors and the servo. Note that the black/brown wire always goes to the outside of the PCB. The white or yellow wire is always closest to the processor.
make sure your right wheel sensor connects to D2 and your left sensor connects to D3 otherwise the robot will end up running around in circles with one motor stopped and the other motor running continuously.
Step 13: Programming and Upgrading!
To begin with you will need the Arduino IDE to suit your operating system (Windows, Mac OS X, Linux 32 bit or 64 bit). You can download the Arduino IDE for free from here: http://arduino.cc/en/Main/Software.
Do not download the latest version as the code won't compile correctly and even if it did, the new versions compiles into a larger file that may not fit the limited space of the ATmega8A.
The sample code was written in version 0022 of the IDE. You may find it compiles slightly smaller in version 0018 if your running low on memory.
You may also need to download USB drivers for the CP2102 interface. You can download the latest drivers for your operating system here: http://www.silabs.com/products/mcu/Pages/USBtoUARTBridgeVCPDrivers.aspx
Once you have the Arduino IDE running on your system you can download the sample code from here:
https://sites.google.com/site/daguproducts/home/download-page. You can then make the robot print any message you want following the instructions in the manual.
Want to do more?
The Mini Driver PCB has a socket for a Bluetooth or Xbee wireless transceiver module. Connect it to your phone or PC and control the robot remotely.
Do more than draw!
If you need more memory or functionality then you can replace the Mini Driver with a Micro Magician. The controllers are the same size but the Micro Magician offers more memory, a 3-axis accelerometer and an IR receiver built in. The IR receiver will allow the robot to be controlled with a universal TV remote or any IR remote using SIRC (SONY IRCode).
I have currently fitted the Doodle Bot with a RTC (Real Time Clock) and an SD card reader for some A.I. (Artificial Inteligence) experiments. You can follow it's progress here: http://letsmakerobots.com/node/34226