Let's Make Robots!

Say Hello to M.I.A.

Interacts with its environment and human beings and learn from them
MIA_sketchup_3D.zip3.62 MB
Color_sensor_EMIC_2_demo.zip1.6 KB

This is M.I.A., a simple humanoid robot platform.

M.I.A. Basic Specifications



  • Arduino Mega


  • Custom made shield
  • Screw terminal for battery connection
  • Low dropout voltage regulator LM2940 for microcontroller, EMIC 2 text-to-speech module, color sensor, LED eyes/mouth, Sharp IR distance sensor, LCD and PS/2 keyboard
  • 6V voltage regulation for servos by voltage drop diode array
  • Pin header connectors for 4 servos
  • Pin header connector for Sharp IR distance sensor
  • EMIC 2 text-to-speech module
  • Reset push button


  • 2 DOF (pan/tilt)
  • RGB LED eyes
  • LED mouth
  • Small custom made LED driver PCB 


  • Color sensor based on TCS 3200 with collimating lens
  • Sharp IR distance sensor
  • Connector for PS/2 keyboard

Output devices:

  • Loudspeaker 8Ω, 0.5W/EMIC 2 text-to-speech module
  • 16x2 serial LCD blue


  • 2 modified HITEC HS645MG servos
  • 2 Lynxmotion servo wheels - 2.63" x 0.35"
  • 2 Caster wheels


  • 7.2V/3200 mAh/NiMH

M.I.A. is completely open source. I will publish the Gerber files for manufacturing the shield and the LED driver PCB later, the sketchup 3-D drawing is already attached. Currently I am building a prototype of M.I.A. and developing example codes.

Shield PCB prototype:

Robot prototype:

After development is finished I might try to sell M.I.A. as a kit and support a public welfare foundation with the proceeds (for instance cancer research).

The assembly instructions are listed on the end of this post


Assembly Instructions


Comment viewing options

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

Hi MarkusB. I like your style. This design is very nice and this project looks promising. I think "social robot", as you described it, is the way to evolve our robots. I'll keep an eye on it.

I love the idea of more open source robotic models. The only one I think I've seen here so far was K12's Bob model. Forgive me please if I've forgotten anyone.
If I could suggest though, a head would be a good addition for a social robot. Just sticking the sharp on the top leaves it looking like a box of electronics. A social robot needs to create a feeling of attachment to whoever it interacts with.
A head could take any form, it doesn't even have to have a neck or swivel. but the main ingredients are eyes and a mouth.
I'm looking forward to seeing how this one develops and any copies, improved versions inspired by it.

No worries, Mr. Merser. There will be an upgrade head available :)

[Adafruit OLED display]

You could add a second lcd to the head to display a mouth. a few different combinations would allow it to show emotion.

the dev kit that adafruit has http://www.adafruit.com/products/1316 is a rather large board, the kit is $10 more expensive, and, probably saves very little power.

Nice design, somehow simple and appealing!

Getting humanoid feeling although on the base of basic two wheel drive. What do you think is main purpose of having color sensor on the chest? I couldn't figure out very much use for it because objects must goto sensor before color can be readed?

I think it would be nice to have easy mounting option for some common obstacle avoidance sensors around the body. Obstacle avoidance seems to be something almost everybody wants to try sooner or later :)


I have no experience of omniwheels and i don't know how well they perform on different surfaces. I think lot of robots weight rests on this one wheel, could that be problem? Just something came to my mind.

Hi Juchen,

Thanks for your input. I have some ideas regarding the color sensor. One idea is to use a perceptron alogorithm to teach the robot color recognition, another idea is for the swarm bot use: The robots holding colored plates in their 'hands'. If one robot encounters another robot, they moving the color plates up to the color sensor position. According to the colors of each other, they starting different behaviors.

The Omni-wheel can withand a payload of 5kg or more - no problem. It also performs well on different smooth sufaces.

Mounting option for different sensors is a good idea. I have thought about it to add a mounting plate on the front for IR, ultrasonic rangers, bumper sensors, line following sensors etc.



Besides my comment below I will give some thought to that project.

I like the idea of Open Source. Do you consider to have a set of nice pictures? If so then please send your robot to Shanghai then :-) Ok, now to your robot. I am missing a cam. For a social robot you could have a cam with a face recognition...something like chickenparmi did. Besides that I am again impressed about your ideas. But what's with your other projects? Pending? Canceled?


I'll send me together with the robot to Shanghai:p

Camera: Ok, maybe later...

Other projects: Some pending...some merged to a new one.

Too less time, too many ideas...

Good idea, I will wait for your arrival :-)

I see, quite busy. Me too, it's just not enough time...