Have A Nice Day Mini-Sumo Robot

Have A Nice Day (“HAND”) is an eight-wheel drive miniature sumo robot with a LEGO body, two Maxon motors, one scoop motor, and a retractable scoop.

Have A Nice Day mini sumo robot

Have A Nice Day mini sumo robot.

To avoid driving out of bounds, the robot detects the white edge of the sumo ring using two red LEDs reflecting light into photo sensors. The robot find opponents using three infrared emitters (two on top, one in the center) and two Panasonic PNA4602 infrared detectors (hidden in the holes of the top technic brick). (The PNA4062M is obsolete. See the Vishay TSOP4038.)

Pair of front edge sensors as seen through frosted plastic

Pair of front edge sensors as seen through frosted plastic.

Inside the battery compartment, you can see a board that contains the top two infrared emitters and the frequency tuning potentiometer. That board generates the 38 kHz infrared emitter signal needed by the detectors. Usually, it is cheaper and more compact to have that signal generated by the microcontroller. I’m not sure why I didn’t do so at the time.

Battery compartment holds two 9 volts

Battery compartment holds two 9 volts.

The robot uses two 9 V batteries in series to produce 18 volts for the Maxon motors. The robot moves too slowly with less voltage. However, only one battery is connected to the electronics, which is then dropped down to 5 V by the voltage regulator.


The motherboard screws on top of the battery compartment. It was etched at home.

Mini sumo robot circuit board

Mini sumo robot circuit board.

  1. Power switch - DPST (double-pole single-toggle) to control power from a single 9 V battery to the electronics as well as both 9 V batteries in series to the motors.
  2. Start pushbutton
  3. ON Semiconductor 74AC14 inverter to drive four surface-mount status LEDs. These are controlled by the outputs of the sensors, which do not supply enough current to light the LEDs without help from the 74AC14 inverter chip.
  4. Motor driver consisting of a Maxim 4427 h-bridge MOSFET driver connected to...
  5. International Rectifier IRF7343 power MOSFETs.
  6. Connector to infrared emitters and detectors for opponent and floor sensors. I wish this had been placed under the board so that wires wouldn’t stick out on top of the robot. To hide the wires, the connector would have needed to be placed near the power switch in order to fit the batteries in the compartment underneath.
  7. 68HC908KX8 microcontroller
  8. Maxim 8881-50 tiny, low-dropout, low-quiescent, 5 V voltage regulator.

What’s kind of cool about this robot is that it performs all of the mini-sumo features with a 16-pin microcontroller:

Start Modes

At the start of a round, it is advantageous to point your robot directly towards the opponent if you believe your robot has greater pushing power. If your robot is weaker, point your robot away from the opponent in hopes that the robots will miss each other and your robot will come around for a side or rear attack after reaching the edge of the ring. This is also a good strategy if your robot is faster, as it will reach the edge of the ring and turn around first.

Of course, your human opponent is considering the same strategy. So, here’s what Have A Nice Day does:

  1. At power up, disable the infrared emitters to save power and to be less visible while the opponent is positioning their robot.
  2. On the first button press, enable the emitters and status LEDs to allow optimal targeting by the human operator.
  3. On the next button press, disable the emitters (save power and hide), start the countdown, drop the scoop, re-enable the emitters, and then start attacking.

Eventually, I decided that “hiding” by turning off Have A Nice Day’s emitters only worked against really lame opponents. Instead, it is best to tempt the opponents into coming directly at Have A Nice Day in order to get them to drive onto the scoop. Thus, highly-reflective attention-getting white stickers were placed on the front of the robot.

Thin black felt reduces detection from behind

Thin black felt reduces detection from behind.

Unlike the front of the robot, the rear is as non-reflective as possible to reduce being spotted and attacked from behind. Unfortunately, this robot is so close to the length limit that there wasn’t enough room to add screws for a rear panel (in hindsight, a recessed flathead screw would have worked). A black piece of rigid felt from a craft store was glued to the LEGO brick body to hide some of the gray gears and motor guts.

The photo above also provides a partial view of the wheel and gear train arrangement. You can see there are wheels on the interior of the robot, as well as the exterior.


Have A Nice Day differs from my other mini sumo robots in that it has a flat, spatula style scoop. The scoop is retracted at the start of a round in order to fit into the maximum length and width dimensions permitted.

Starting position with scoop raised

Starting position with scoop raised.

After the five second countdown, the microcontroller commands a small motor to rapidly drop the scoop to the surface. The motor is powered through a transistor for a fixed amount of time, rather than a switch or other mechanism detecting when it hits the ring. Photos of the scoop mechanism can be found in figures 9-4 and 9-5 of Intermediate Robot Building.

The scoop is made from thin (half a millimeter) garolite or FR4, which is fiber bound in phenolic resin to create a stiff, lightweight, tough material. It is the same substance used for the insulator on printed circuit boards. This particular piece was salvaged from some unknown place, hence the rough edges and a few random holes.

Unusual LEGO arrangement for slightly loose attachment of scoop

Unusual LEGO arrangement for slightly loose attachment of scoop.

The LEGO arms from the robot are connected together with a cross axle. The axle is threaded through two ordinary technic LEGO bricks attached to the scoop with screws.

The bricks have rounded holes, as opposed to cross or X-shaped holes. This allows the scoop to flop down flat on the ring, rather than being held at a perpendicular angle that might result in a gap between the scoop and the ring. Any gaps would allow an opposing robot to get their scoop underneath.

Scoop tilts back and forth

Scoop tilts back and forth.

Three gray LEGO pieces attach firmly to the cross axle, providing limits to how much the scoop can wiggle up or down. Without this, the scoop would simply drop over the edge of the ring and touch out of bounds.

Fatal Flaw

Have A Nice Day and Hard2C faced off in a ChiBots robot sumo competition. Hard2C has no scoop and only two wheels, which tend to slip due to poor weight placement. Have A Nice Day has eight wheels with good weight placement and a long scoop. Who do you think won the match?

Quick! Who won between Have A Nice Day and Hard2C

Quick! Who won between Have A Nice Day and Hard2C.

Hard2C drove up onto the scoop, just like Have A Nice Day had hoped. Have A Nice Day has plenty of pushing power and had no trouble driving Hard2C right out of the ring.

Bent scoop touches ground before the opponent

Bent scoop touches ground before the opponent.

Oh no!

The fatal flaw for Have A Nice Day is that the bottom of the flexible scoop touches the ground before the opponent does. This means that Have A Nice Day is “out” of the ring first, and loses the round.

Have A Nice Day could be improved by replacing the scoop with a shorter version. This would still be effective in lifting some competitors, as well as preventing Have A Nice Day from being scooped by an opponent. Alternatively, a stiffer material could be used, perhaps a hollow metal wedge.