Robo-Dragon Autopsy
Performed by Christopher Thomas in August 2008.

One fine Sunday, I found a very cool-looking robot dragon in Toys-R-Us. It was inexpensive (and cool-looking), so I bought it. After playing with its (minimal) available features, I took it apart. This page documents the results of this autopsy.


Meet the "Wireless Remote-Control Dragon"

The box certainly looked impressive:



Out of the box, so did the dragon. They certainly put effort into the artwork and detailing:


Unfortunately, to call the feature set "limited" would be to give it too much credit. The dragon can walk forwards, and roar. Nothing else. Not even turn or walk in reverse. This gave it a distinct disadvantage when duelling the Robo-Raptor.

The motions it does have look cool, to be sure: Just bear in mind that this is all it does!


The Controller

Because I like to save the best for last, the first thing I took apart was the controller. It wasn't complicated; just two buttons and an infrared LED:

PCB front; not complicated. Blank PCB back, LED, and patch header.

This controller takes AA batteries, which is nice, unlike the Robo-Raptor's AAA.

The most interesting bit, however, is the patch header. There's a similar header inside the robot, and when it's in the box, a cable connects them. What it does is feed power, ground, and one other line (probably the IR modulation signal) from the controller, into the robot. When the box is in the store, customers can test out the robot by playing with the controller. Only the controller has batteries pre-installed.

The controller provdes 4.5 V, which is enough to power the speaker and electronics but not the motors (there's at least one diode drop involved). This is good, because the dragon's limbs can't move while it's boxed, and the motors do Bad Things when they stall (see below).

Modding potential: Small to none. The best thing to do is to stick a scope to the control line or the LED trace, and reverse-engineer the control signals. Then, build your own controller or load the signals into a PDA with IR capability.

The really cool potential is in the control header itself. This provides an easy way to piggyback a controller inside the robot without having to rebuild its control board. Of course, you're still stuck with a robot that can't turn.


The Tail

The tail is the lynchpin of the dragon robot: once it's on, it has to be removed before the body case can be opened (it overlaps). The problem is, it snaps on, and getting it off is a royal pain.

The tail, shown in the left hand image below, is pretty simple once disassembled. It has a number of internal partitions, mounts for screws that hold it together, a tail dart that mounts on a screw hole, and several iron weights that keep the robot balanced (otherwise it'd tip forwards due to the weight of the motors). It looks easy enough to take apart.

Tail, disassembled. Tail mounting point.

Turns out, it's not. The screws hold the tail together during manufacturing, but by the time it exits the factory, the tail seams are bonded together with glue and/or plastic solvent. I had to use a cutoff wheel on the underside seam, and a screwdriver, prying, and cursing on the top seam before it came apart. The cutoff wheel made a mess, and while a wire brush wheel took care of the mess, the cutoff wheel also left a groove. This is visible on close inspection after the tail is reassembled; you'd need modelling putty and paint to fully restore it.

The mounting point itself is pretty elegant. There are plastic ratchet tabs that lock it into place once it's inside the receptacle in the tail body. The tail moves when the robot walks, thanks to a set of gears shown below. These gears are actuated by a the pink tab in the right side of the image, which is in turn tied to the cam that moves the legs. Leverage is poor, but as long as the tail isn't obstructed by anything, it works well enough.



Modding potential: Moderate. There's a bit of extra space in the tail for packing widgetry, but getting at it is such a pain that I really doubt I'd bother on a new robot. The most useful modification to make would be to file off the ratchets (the triangle-profile stubs closest to the end of the mounting point) before assembly, and install screws to attach the tail instead. This allows much easier assembly and disassembly, even if it does add two more screws to the tail's surface.

Another area with potential is the tail mounting point. Like the tail, it has enough open space in it to be useful for storing electronics. Unlike the inside of the tail, it's easy to get at without a cutting wheel. I'll probably end up using both the mountpoint and the tail spaces, but for future purchases, I'll use the filing trick and not bother with the tail itself.


The Wings

The wings are each attached with a single screw. Their mounting points penetrate the body case, so the wings need to be removed in order for the case to be removed. The mounts are posable, with a ratchet holding them into place once set. The wings are geared together, so that adjusting either one moves them both (keeping them symmetrical).



Modding potential: Small. To make the wings themselves do anything interesting, you'd have to completely replace them (they're not articulated). There's potential for modifying the mounts to accept servo control, but that would require installing a bulky servo in an area that doesn't have much space.

The most interesting practical mod I can think of would be to tap the head actuation servo to fold and unfold the wings as the dragon's head moves during the roar cycle. This would be tricky, and require fabbing a fairly complicated set of linkages, so it's low on my priority list.


Cracking the Case

Like the tail, the case is secured by both screws and glue. Unlike the tail, the cutting wheel wasn't needed to open the case. Just lots of careful prying and cursing. I say "careful" prying, because if you pry too hard, the plastic itself will snap instead of the glue (modern plastic cement is quite strong, and solvent makes a bond that's as strong as the plastic itself).

An important note about the case: The neck housing is thin rubber, and is glued to the case using a glue that's stronger than the rubber itself. Disconnecting it required very careful surgery with an exacto knife. If done right, this cuts the glue, and leaves you with both the neck, and the inner rubber flange that folds into the case. If done wrong, you cut through the flange, and get a neck membrane that's very difficult to reinstall.


The main objects of interest are, of course, the control board (lower left), and the servos (middle). Before I talk about those, I'd like to draw attention to a few other features in the right-hand image above. First, we have the IR sensors (upper right and upper left, just below the neck; only the right one is clearly visible in the picture). These are housed in grey plastic domes that are molded to follow the texture of the skin around them (lots of attention to detail in this model). Second, we have the wiring harness. Wires go to the battery pack, the power switch, the speaker, the head LED (that's the cable going up through the neck), and the two servos. You can also see the control cable going from the board to the receptacle near the battery opening (left side of the image).

Important note: The wiring harness is easy to break. I ended up having to re-solder the connections to the leg servo and to the power switch, due to them breaking during handling. I'm convinced this is where the failures mentioned in the reviews came from, too; when the motors stall (if the legs are obstructed, usually), they draw a lot of current. This heats up some of the motor and/or power solder joints enough that they fail. The wiring harness is the biggest place in the robot where they skimped on quality, and this seriously harms an otherwise-cool toy.

The third feature I'd like to draw attention to is the attachment point for the hind leg, in the bottom of the image to the left below. The leg cam's spindle enters the large hole, between the wire guides. As the cam turns, the wire guides are forced left and right, moving the leg. The screw in the middle is the leg's hinge. The screw on the bottom right is a guide screw. The screw on the bottom left, though, controls the foot. This is really cool, and is discussed in the next section.


The fourth feature I'd like to draw attention to is the speaker mounting point and grille. The speaker is held on by a pink strap behind it. The main points of note are that 1) it's loud (which is good!), 2) it has a frequency response that almost doesn't suck (which is also good!), and 3) it's strongly magnetic (which means it eats stray screws). Watch out for that last bit if you remove it from its mounting point.

The last feature of note is the attachment point for the forelegs, shown in the right image above. This is molded plastic, which snaps in. This means the forelegs can't be taken off without wrecking the hinge, and that actuating them would be a royal pain even if there was room for another servo. On the other hand, their poses are pretty nice the way they are, so changing this is low on my priority list.

Modding potential: High, for the case itself. Mostly this is because there's quite a lot of room for extra widgetry. The electrical system is also very simple, which lends itself to easy modification (discussed in more detail below).


The Legs

The legs are one of this toy's most elegant features. The more sophisticated Robo-Raptor toy tries to emulate a real walking gait by rocking back and forth (to avoid needing an extra degree of freedom to lift the feet off the ground). End result is that its feet don't come up very high, and tend to have trouble with surfaces that are either too slippery (like the lab's vinyl tile) or too rough (like carpet). The "Remote Control Dragon" toy avoids these problems by putting small wheels on the bottom of its feet:



The wheels can grip most surfaces, and only slide in one direction, letting the Robo-Dragon pull itself along most surfaces just by shuffling its feet. Inside the leg, there's a surprising amount of articulation:



The purpose of the linkage inside the leg is to keep the feet flat while the legs shuffle back and forth. The peg at the top of this linkage is the leftmost screw in the photo in the previous section. While the leg moves, the top of the linkage is held pinned to one spot in the body, providing a position reference which is translated to the feet.

The ratchet wheels in the feet bear a bit more mention, too. I'd expected to find a springy piece of plastic keeping them rotating the right way, but it turns out gravity and inertia alone will do it. One edge of the wheel cutout is sharpened. Sliding the foot forwards pushes the wheels back, where they can turn freely. Sliding the foot back pushes the wheels forward, where their teeth lock on the sharpened edge, preventing spinning and engaging traction. Colour me impressed.

Modding potential: Moderate. There's hollow space that can be used to pack electronics or other goodies, but I honestly can't think of an aspect of this design to improve. The leg could be articulated at more points, but you'd have to do enough reworking that it would probably be easier to build completely new legs.


Electronics and Servos

Next up, the wiring harness, electronics, and servos. Here's a view with the first servo unmounted, showing connection to the tail actuation linkage and the leg:



I'll say this again: The wiring harness is easy to break. If you dismantle it, or even poke at it too much, or maybe even just look at it funny, one of the motor wires will fail and you'll have to break out the soldering iron. The crappy quality of the wiring harness is in my opinion the worst design flaw of an otherwise-adequate toy. Replacing the motor power wires with something heavier-gauge and better-soldered should be the very first mod you consider if messing with the electronics.



The first interesting feature of the electronics package is the control board. This is reasonably well-built, and fairly modern. All logic is handled by the microprocessor under the epoxy dot. All discretes are surface-mount where possible, and limited to things like resistors, capacitors, and diodes. There are three transistors (high-current bipolar), handling the two servos and the speaker. There's almost certainly a surface-mount voltage regulator somewhere on the board, but it's well-hidden. The two big capacitors will be connected to this regulator. Reverse-engineering the board schematic wouldn't be very difficult, but I'm lazy, so it'll wait until I feel like taking apart the robocritter again.

Connections from the board lead to the demo header (power/ground/data), the power switch, the two servos, the speaker, the two IR sensors (chest and nape of the neck), and to the LED in the head (that's the wire running up the neck). I'll stress again that many of these solder joints are poor; especially the ones connecting to the motors.



The leg servo is very simple. In fact, calling it a "servomotor" at all is a misnomer, as there's no feedback-based position control. It's a DC motor with a set of reduction gears, and nothing else, driving a pair of off-centre spindles (which in turn engage the leg mechanisms). This motor has a couple of design flaws. First, it's the normal type of cheap DC motor, which means torque varies depending on the position of the rotor. What this means in practice, is that the motor can stall on a start attempt if it's in the wrong position. Second, it's underpowered for the load it has to drive. If anything obstructs the legs or tail, or the screws are overtightened, or anything else goes wrong, the motor will be much more prone to stalling. When it stalls, it'll heat up, and the solder connections to it will fail. I'm almost positive this is what caused the "dead on arrival" complaints in reviews of this toy.

A close look at the back of the motor shows small capacitors. These are used to soak up the voltage spikes that occur when the motor is turned off. At rest, and to some extent under other conditions as well, it's an inductive load, so breaking the current loop powering it causes large transient voltages. Because this is a brush-based motor, the current loop is broken twice per revolution. Spiky indeed. The upshot for disassembly is that I had to cut a small notch in one of the plastic supports to allow a capacitor lead to pass through. Removing or disconnecting the capacitors is a Bad Idea, as it'd do unkind things to the electronics board.



The neck servo is very much like the leg servo, in that it's a motor and a reduction gearbox. Instead of driving a pair of off-axis spindles, it uses a cam to drive a spherical joint mounted off-axis. This causes the neck to move around, and engages the jaw linkage, as described in the next section.

Modding potential: High. At minimum, replace the motor wires with something less likely to fail if you open this up. It'd also be pretty easy to reverse-engineer the communications signals sent along the demo header (there will only be two commands). This will let you keep the baseline board as a "hindbrain", and piggyback a more intelligent controller on top of it elsewhere in the case.

It'd be tempting to put in a proper H-bridge to get forward and reverse motion in the legs, but that turns out not to work. The legs move forwards and back as-is; the reason this translates into forward motion is the ratchet system in the feet. In order to allow reverse motion, the feet would have to be modified to either selectively freewheel, selectively brake, or selectively reverse the ratchet direction (even harder). Doing this with independent control of each foot would let you move forwards, move backwards, and turn in either direction. The catch is that you'd be making pretty major modifications to the feet, and you'd also need an encoder of some sort on the leg cams to tell you when to lock and unlock the wheels.

The only other really tempting modification to existing hardware is to put better effects into the head. The main shortcoming of the existing system is covered in the next section. Other modifications that don't involve changing existing hardware (much) include adding support for radio control, adding support for critter-to-critter networking over radio or IR (it has the IR sensors already), and adding a controller smart enough to handle autonomous behavior. Options are pretty open-ended, so knock yourselves out.


The Neck and Head

With the possible exception of the tail, the neck and head are probably the hardest parts of the dragon to take apart. The neck is a rubber membrane; taking it apart cleanly takes an exacto knife and a steady hand. It's important not to cut the rubber flange around the neck, if at all possible. Cutting this makes it a lot harder to reassemble neatly (the flange holds the neck in its proper position; otherwise there's a lot more stress on it when it moves around). Remember that you want to cut the glue holding the rubber to the plastic. You do not want to cut through the rubber itself. There is also a wire pair running up the neck. This is very easy to accidentally cut. Putting the neck back together cleanly is even more of a pain (described in the next section). The skull and lower jaw, on the other hand, are molded plastic (easy enough to remove).


The guts of the neck and head are intricate, but impressively elegant in function:


Getting the upper jaw off is a pain, but can be done with a bit of careful effort. Inside, we have a spring-loaded lower jaw activated by a linkage that leads to a tab at the bottom of the neck. The off-axis sphere ends up pushing this linkage against a tab on the neck mount. This not only moves the neck around (due to off-axis mounting), but makes the jaw open and close during this process. Points for cleverness.



Negative points for style, though, come from the light-up eyes. I didn't realize these were intended to light up until after I'd gutted the head and neck. Checking the package, this is indeed advertised as a feature. The problem is that the light source is one tiny 20-mA LED mounted inside a very large piece of molded plastic that was probably intended to act as a light-pipe, but in practice doesn't do much piping. If the toy was activated in a darkened room, there might be a visible glow, but in a room with the lights on, there's no discernable effect. Definitely something to be upgraded if modding.

Modding potential: Moderate. Definitely replace the eye assembly with something that actually works. My recommendation would be to keep the outermost parts of the light-pipe, and glue LEDs directly behind them. Rigging the electronics will be slightly fiddly, but only slightly. The resistor for the LED is on the main printed circuit board, so in order to get two LEDs working, you'll have to swap that out for a jumper wire, and mount one resistor per LED, in the head. Resistor and LED are in series, and the two resistor-plus-LED strings are in parallel with each other. Other configurations are, of course, possible.

Per the previous section, it's also tempting to add effects to the head. An orange LED giving indirect lighting to the mouth would add a nice fire effect, if set up to be intermittent, for example. There's also a modest amount of room to run more cabling or widgetry in the neck, under the rubber membrane; just remember that the neck strut moves around inside it, so there isn't quite as much free space as first appears (a misplaced widget will show as a lump under the skin when the neck is in the wrong position). When in doubt, keep widgets in the body.

Lastly for the neck, a few video clips:


Reassembly

Reassembly held only one major surprise: finding out exactly how low-quality the wiring harness was. I ended up having to re-solder broken connections twice, and take the dragon apart again at least three times. The leg/tail servo is very sensitive to position (for both the servo in the case, and the legs/tail when reinstalling the servo). A slight misalignment will increase the resistance this mechanism encounters. It's underpowered, which means it'll stall. The wiring is bad, which means it'll fail under stall conditions. So, expect a lot of frustration before the robot is finally assembled and working again.

The other irritation of note was expected, but still annoying. Taking off the neck membrane involved carefully cutting away rubber from plastic, while trying not to cut through the rubber. Reassembling the neck requires gluing this rubber back to the plastic. First, only do this when you've finished modding and have already fully tested the robot. If you re-glue and then find out the robot doesn't work, you'll have to cut again to take it apart (and glue again afterwards). Second, check very carefully to make sure the neck membrane is lined up the way it was before you cut it. The robot's paint job and molding are very detailed, and any mistake you make will at minimum leave a visible discontinuity, and at worst leave a yellow scar of unpainted plastic visible. For glue itself, super glue (cyanoacrylate) is fine for tack-welding. For permanent re-gluing, I'd use methylene chloride or a similar plastic solvent.

Annoyances notwithstanding, after reassembly, only a close inspection of my dragon-bot would tell you it had been taken apart at all. As long as proper care is taken, reassembly can be done without visible artifacts.


Final Thoughts

Taking apart the "Wireless Remote-Control Dragon" was a fun diversion for an afternoon. If, like me, you enjoy gutting electronic and mechanical widgets to see how they work, I can definitely recommend the WRCD at list price for that alone. Modders will have even more fun. It's just not worth a whole lot as a toy.



Thanks go to the Vision Sensor Laboratory for providing space and equipment, and to purrsia.com for providing mirroring.


Updated 8 October 2008.