Let's Make Robots!

Little Line and Ledge Bot

Line Follow, DeskBot, IR R/C, Bump-n-Turn

Little Line and Ledge Bot


***UPDATE 8.3.12***

Added video of desktop/ bump and turn routine

(Top Video)


Well, its about time!
I finally got around to designing a good, solid line and ledge bot. This little guy is set up for lines, mazes and ledges (deskbot) with its 5-sensor bar up front. Three sensors are mounted together in the center, spaced to match the width of electrical tape. Two more sensors are mounted to the far outsides. These two extra sensors are slightly wider than the wheels and thus, can detect an edge with plenty of time to stop or change direction. They are also super handy when used as a maze-solving robot --the 2 outside sensors are just what you need when following courses with 90 degree turns. 

On top of all this line-follow goodness, we add a Dagu Micro Magian Board:

  • Atmega168 (Speaking Arduino)
  • On-board USB
  • Sweet motor driver (with brakes)
  • 3 axis accelerometer (not only a "tilt" sensor, but can also detect impacts as well --Create a bump-and-turn bot without the bump switches!
  • On board IR sensor --Control this bot via IR with any Sony or Universal TV remote control
There is even a cut-out for a micro servo added to the chassis if you ever want to add a "head" or pan and tilt kit to your bot.

Included in the Kit:
  • Laser cut acrylic chassis
  • All hardware needed for assembly
  • 120:1 geared motors
  • 60mm wheels
  • 4 AAA battery holder
  • Line Follow sensor bar
  • All wires, jumpers and doo-dads needed for assembly
  • Micro Magician board
**Available as no-solder kit!

This robot can be used as a "ledge finder" and/or "deskbot". This means, of course, that this robot will be around ledges. It is a true possibility that this robot may miss said ledge and take a tumble to the floor. Good code and observation will prevent this from happening.
It is your responsibility to protect this robot from falling. Code well, test your stuff. Do not trust code from RBS or others to "just work" --You must do your testing and homework before you let this guy roam your desktop. 
If for some reason you do break something, please email me. I am a very nice guy and will probably take pity on you. I will be sure you get replacement parts and I won't cost you an arm and leg. Promise.


Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

First, I see that you call yourself Chris Lorax on your photo hosting site.  Fine, steal my punchline.  

Second, I kind of looked through the library for the accelerometer and I'm not sure I understand what's going on with it, so I'll just ask: is it actually sensing the impact or is it reacting to a lack of forward momentum once it stops?

Momentum (Mass x Speed) is not measured by an accelerometer.

"Lack of forward momentum" is the result of stopping. Stopping is the result of deceleration. When you stop suddenly (due to impact) then you are actually decelerating very quickly due to a large resistive force generated by ther object you collided with. This causes the outputs of the accelerometer to spike.

If your robot hits something relatively soft then the deceleration is much less as the object absorbs some of the impact (less resistive force). Depending on how sensitive you set the code, the robot may not register the impact.

The "impact" function samples the accelerometer outputs at a regular interval and looks for a sudden change in acceleration values over that period of time. You can use the results from the X,Y and Z values to determine the angle of impact.


I am unable to get text back through the serial port.  I have 2 different   Dagu Micro "Magician" but both give garbage back when testing.  I have used multiple sample programs as well as multiple baud rates and still get the same error. .   It might be the Arduino card I am using for selection in the IDE Arduino Nano W/ ATmega 168.  I am using the Arduino Code 1.01 and have also tried 0023.


Any ideas?




If you read the manual, on page 4 under Software it tells you to select "Arduino Pro or Pro mini (3.3V @8Mz) with ATmega168"

I missed the card in the manual.  I searched for a card on the Internet and obviously I got the wrong information.  Everything works great now.  


Quick question on posting.  If I want to post some code to use with the robot in this thread where should I post it?








The second video is great. That bot really moves about nicely.

I can't help but think if that front line sensor was a brush or better still, a vacuum cleaner head then he could run around cleaning the table top and even the floor.

Perhaps you can make a cleaning accessory for him?

Bought two of these.  One for me to play with.  I am a programmer and wanted to play with code more than building for now. 


I bought one for my daughter age 12.  I have been sitting on my hands letting her do the build from start to finish.  No hands on is hard to do.  Other than pointing out some alignment holes on the motor pieces she did pretty well.  I walked into the kitchen to find enough black tape lines to cover most of the floor.  I hope to get her familiar  enough with the Arduino IDE to do updates for the behavior.  


For mine I lost the screws for the battery plate.(to lazy crawl on my hands and knees).  Didn't stop me.  I have a 9V Velcroed to the top.  Only issue is I had to slow the beast down in the software.  The desk top programing defiantly needs tweaking.  The device was moving so fast that it would fall off backwards on a sharp turn.  Slowing it down helped a lot. 


Note Missing a part on delivery.  Chris jumped over backwards to make things right.  Will defiantly order more from http://rocketbrandstudios.com in the future

Wow, I feel like I am/have been missing something for a while now...

I will repost and clean up tonight.

do you mean "shave?"


Hmm, maybe a re-post will get rid of some of the beard jokes, at least until your next video :D