Home > Projects > Game – Entertainment Projects > Lego Technic Car with Arduino + XBee Wireless Control

Lego Technic Car with Arduino + XBee Wireless Control

Summary of Lego Technic Car with Arduino + XBee Wireless Control


This article details an Arduino-controlled LEGO RC car project built by a father and son during winter break 2012. The build utilizes LEGO Technic parts, an Arduino UNO R3, SparkFun motor drivers, and XBee wireless modules for remote control. The author highlights challenges in power connections and steering assembly while emphasizing the educational value of introducing children to electronics regardless of age guidelines.

Parts used in theArduino-Controlled Lego RC Car:

  • LEGO Technic Dune Duster #8207
  • LEGO Technic Power Pack #8720
  • Arduino UNO R3
  • Sparkfun Ardumoto Motor Driver Shield
  • Sub-micro Servo ROB-09065 (Sparkfun)
  • 2x XBee 1mW Trace Antenna - Series 1 (802.15.4)
  • Xbee Shield
  • XBee Explorer USB
  • Various terminals and cabling
  • Miscellaneous LEGO bits
  • 2x RadioShack 3 AAA battery holders
I was perusing Instructables one fine winter Saturday, when my 8 yo son came in and peered over my shoulder and saw this: http://www.instructables.com/id/RC-Lego-Car/ by sath02. My son is a huge fan of all things Lego, and loves robots and cars, and this was right up his alley. He immediately put it on his Christmas list, thinking it was a “real” product that came in a box, and since I had been looking for some inspiration to take on an Arduino project, it was a perfect joint gift for he and I to share over the holidays.
Lego Technic Car with Arduino + XBee Wireless Control

This is my first ‘ible. It’s an Arduino-controlled Lego RC car using XBee units for the “RC” part. The idea was shamelessly stolen from sath02’s excellent ‘ible, attributed above. We began and finished the project over winter break 2012, and I’ve been sitting on these pictures for about a year, and have finally found some time to get them posted.

I won’t be providing a step-by-step instructional, but I will be highlighting what were some of our key challenges, and what our solutions were for them.

Here are the parts we used, in no particular order:

  1. LEGO Technic Dune Duster #8207
  2. LEGO Technic Power Pack #8720
  3. Arduino UNO R3
  4. Sparkfun Ardumoto Motor Driver Shield
  5. Sub-micro Servo ROB-09065 (Sparkfun)
  6. 2x XBee 1mW Trace Antenna – Series 1 (802.15.4)
  7. XBee Shield
  8. XBee Explorer USB
  9. Various terminals and cabling
  10. Miscellaneous LEGO bits (90% of the parts came from the kits, we just needed 2 or 3 pieces to fill in)
  11. 2x RadioShack 3 AAA battery holders

Most of the code was written by myself, and while I tried to pique my son’s interest in it, a lot of it was over his head, though I think he got the basics. He’s already been through the SparkFun Inventor’s Kit with me, so he knew the basics of circuits and motors and the like, the code work was just too tedious for him.

The one thing I took away from this, besides spending some quality time with my son and building something really cool, was not to underestimate what children can grasp at any age. Don’t let the “recommended age” guidelines put you off of introducing your kids to a learning experience like this. You’re planting seeds for a lifetime of discovery and innovation.

And with that, on to the good stuff.

Step 1: Powering the drive wheels

This was one of the more challenging aspects of the project believe it or not. Figuring out how to mate the 9v LEGO Technic motor with the Ardumoto was challenging. I had seen custom power bricks and the like, and I think LEGO even sells (or used to) adapters. In any case, I finally devised a hack using a soldering iron and a small LEGO brick to make an adapter for the jumpers from the Ardumoto. It took a couple of tries and some mangled bricks to get it right (much to my son’s dismay), but what I ended up with in the end works fairly well. The whole assembly (including the motor drive itself) is rather fragile, since the whole thing is put together without glue, and a couple whacks into baseboard or cabinets will invariably loosen things up a bit. The little 9v LEGO Technic motor, while not speedy, has enough torque to squeal the tires when quickly changing from forward to reverse, and is definitely fast enough for a LEGO RC car.
Lego Technic Car with Arduino + XBee Wireless Control circuit

Step 2: Turning left and right

IMG_20130105_193945.jpg
Connecting the micro-servo to the Technic steering system was accomplished using a zip-tie, and one of the adapters and some screws that came with the servo, that just so happened to mate up to one of the Technic driveline pieces perfectly. After setting the limits in the software, the steering system was one of the easiest parts of the project. The LEGO Technic parts really helped here, as hacking something together for this could have taken quite a while without it. It is probably the primary reason why I decided to go with the Technic system.

Quick Solutions to Questions related toArduino-Controlled Lego RC Car:

  • What inspired this Arduino project?
    The project was inspired by an Instructable titled RC-Lego-Car by sath02.
  • How were the drive wheels powered?
    A hack using a soldering iron and a small LEGO brick created an adapter to connect the 9v LEGO Technic motor to the Ardumoto.
  • How is the steering system connected?
    The micro-servo connects to the Technic steering system using a zip-tie and adapters with screws that mate to Technic driveline pieces.
  • Does the LEGO motor provide enough speed?
    Yes, the 9v LEGO Technic motor has enough torque to squeal tires and is fast enough for a LEGO RC car.
  • Can children learn from this project?
    Yes, the author advises not to underestimate what children can grasp and suggests introducing them to learning experiences regardless of recommended age.
  • What components are used for wireless control?
    The project uses two XBee 1mW Trace Antennas Series 1 units along with an XBee Shield and XBee Explorer USB.
  • How long did the project take to complete?
    The project began and finished over winter break 2012.
  • What makes the motor drive assembly fragile?
    The assembly is fragile because it is put together without glue and can loosen up after whacks into baseboards or cabinets.

About The Author

Ibrar Ayyub

I am an experienced technical writer holding a Master's degree in computer science from BZU Multan, Pakistan University. With a background spanning various industries, particularly in home automation and engineering, I have honed my skills in crafting clear and concise content. Proficient in leveraging infographics and diagrams, I strive to simplify complex concepts for readers. My strength lies in thorough research and presenting information in a structured and logical format.

Follow Us:
LinkedinTwitter
Scroll to Top