The MagnetMobile: Making a Wall Crawling Rover




Introduction: The MagnetMobile: Making a Wall Crawling Rover

About: I work at RobotZone ( the folks behind Actobotics and ) in Winfield, KS. I love working on projects with my kids and seeing what they create.

So recently I came up with an idea… nay, a challenge: to build a robotic rover that drives up a metal surface. I challenged my co-worker Kyle and myself with this goal in the form of a one day build-off. We documented the adventure (our thought process, trials, errors and successes) in our video podcast Control Issues (iTunes, YouTube). You may also recognize this little robot from the current (May/Jun 2016) cover of Robot Magazine.

This article takes our best working model and shows you how to build one yourself with off-the-shelf parts.

Teacher Notes

Teachers! Did you use this instructable in your classroom?
Add a Teacher Note to share how you incorporated it into your lesson.

Step 1: What We Used for This Project


  • 7/64” hex key
  • 3/32“ hex key
  • Needle nose pliers
  • small slot headed screwdriver
  • Philips screwdriver
  • Optionally a wire brush


  • A battery, I recommend a 3S LiPo.
  • A motor controller. We used the Actobotics Dual Motor Controller (605045).
  • An XT60 Connector to connect to the batter (605138)… and some wire to solder to it.
  • Motors. We used four 170RPM Econ Motors (638354).
  • Four clamping motor mounts (585716).
  • Motor power Boards, optional but convenient (605118).
  • Four JST leads to connect the motors (JST20F)
  • A transmitter and receiver. We used a Tactic TTX410.
  • Two Servo wires to connect the receiver to the motor controller (MM2204S)
  • Flat Dual Channel Bracket (585422) to mount the motor controller to.
  • A rubber band to strap on the receiver
  • Two 1” 6-32 standoffs (534-3489)
  • A mini breadboard snap mount… which we used as a battery mount (585060).
  • Five 1/8" inch hub spacers. One is required to space up the battery mount. The other four are optional and are used on the wheels.
  • Four 4” heavy duty wheels (595410)
  • Four 4mm set screw hubs (545568)
  • #6 nylon spacers (0.125” long) we used 13 of them. We used them to space the magnets as well as the motor controller. You may need more or less depending on how you space your magnets. (561-KSP92)
  • Four 6-32 nuts (585474)
  • Three flat head screws (flat on top but Philips drive). The length will depend on the spacing you choose to use. We used 1” (91771A153) on the front and back magnet stacks, and 1-1/4” (91771A155) on the middle stack.
  • 6-32 socket head screws
    • Eight 5/16” for the motor mounts (632108).
    • Sixteen 5/8” for the wheel hubs (632118).
    • Eight 7/16” two for the battery mount, six for the motor controller mounting (632112).

Step 2: The Magnets & Chassis

We started with an Actobotics® patterned plate for the base

of our robot chassis. After some trial and error we found that of the designs we conceived of and tested, just having a few stacks of magnets on the underbelly of the bot was the most reliable method. We ended up with three stacks of four 1” diameter magnets. Each one is very powerful and has the power to ruin your day if you are not careful. Each magnet is rated at over 13,200 Gauss and can hold over 11lbs. So a dozen seems like overkill but we want them a safe distance from the surface they are being attracted to and they need to hold a moving object to a vertical surface. We made the stack in the middle spaced out a little further giving it more hold than the front and back stacks… this was to make turning a little easier as well as make sure the front and back stacks did not get in the way when transitioning from floor to wall.

Step 3: The Electronics

The electronics in our setup is pretty simple. We used a transmitter & receiver, motor controller and battery.

We used a breadboard mount to hold the battery (it turned out to be a very nice fit). We put a 1/8th hub spacer on the underside of the “battery” mount to space it up a bit and then mounted it to the floor of the bot.

Next we mounted the motor controller (with some nylon spacers) to the top of a flat channel bracket, and used a rubber band to mount the receiver to the bottom of the same bracket. Then we used some 1” standoffs to mount that assembly to the chassis.

Channels 1 & 2 on the receiver connect to IN1 and IN2 on the motor controller. Then just connect the battery to the motor controller and connect the two motors on the left to one M1A and M1B, then connect the two motors on the right to M2A & M2B.

Step 4: The Motors & Wheels

Now I should note that Kyle and I work in R&D at
RobotZone® (RobotZone makes Actobotics parts and is a parent company of Because of this, we are fortunate enough to have access to some pre-release prototype parts. This is good because I really wanted to use our new little econ motors in this project and the new motor mounts that go with them are just shy of being released. So we used the pre-release motor mounts; that is why the front two motor mounts are different from the back two (since we had a limited number of them). Normally you’d want to use the same on all four. We attached the motor mounts to the patterned plate, clamped our motors in place, and our chassis was ready to roll.

Since we were using wheels that had been in R&D for a long time, we roughed up the rubber tires of the wheels with a wire brush, then washed them off. Over time they had acquired an almost old-eraser type of smooth hardness that this process removed and gave them much more traction. We attached the hubs to the wheels and used 1/8” hub spacers in place of individual washers on the outside… that part is optional, mostly we liked how it looked.

Step 5: Prep for Launch

The surface you are climbing will make a lot of difference. The type and amount of ferromagnetic material you are crawling along is going to make a big difference in how much holding power your magnets have. A thin layer of steel will not have has much holding power as a thick plate of steel. Also the smoothness will make a big difference in traction of course. Dust is your enemy and will steal a lot of traction. To stack the deck in your favor make sure the surface is as clean as possible.

During testing we used an old air mattress as a safety net, it may be good to have something soft like that (such as pillows, insulation, foam, etc.) to cushion the blow should you disconnect from the crawl surface.

Step 6: Test It Out

Once you’ve considered your surface & traction situation,

and confirmed your wiring is correct, it is time to start testing.

Good luck, and happy crawling!

Be the First to Share


    • Backyard Contest

      Backyard Contest
    • Silly Hats Speed Challenge

      Silly Hats Speed Challenge
    • Arduino Contest 2020

      Arduino Contest 2020