3pi’s AVR microcontroller or mbed?


I plan to buy a 3pi robot, and I would like to know if I should buy “m3pi Robot + mbed NXP LPC1768 Development Board Combo” or just the “Pololu m3pi Robot with mbed Socket”.

The robots will have a wixel module to communication with a centralized manager. The robots will receive kind of velocity profiles and will be controled by the centralized manager.

I don’t really see the reasons why I should add an embed or not ?

Thank you.

You need some kind of smarts on-board to read the sensors and control the motors.
If the on-board AVR is good enough for your needs, and you send decision making through a Wixel, then there is no need to use the mBED socket version.


Just to be clear, the Pololu m3pi Robot with mbed Socket can be used without the mbed. It makes fairly easy to connect a Wixel to a 3pi. If you don’t need the added processing power and peripheral support of the mbed, then the Pololu m3pi Robot with mbed Socket and a Wixel should work fine for your application. Please note that if you want to modify the 3pi program to be anything other than the serial slave program, you will need an AVR programmer.

- Ryan

Thank you for the responses.

Another one: is it much more easier programming the mbed than programming the 3pi avr microcontoller ?

The application developed here: tabletoprobotics.xyz/tabletop/multigrid.html , does it use the mbed ? (I would like to get inspired of this application to centrally coordinate my robots.) (not sure it’s here I should ask this question… :confused: )

Thank you.


The multi-agent grid nav project does not use the mbed controllers; the ATmega328P on the 3pis are used to control the 3pi’s logic, while the Wixels are only used as a wireless serial bridge.


Thank you Geoff.

What about the ease to program the mbded compared to the AVR microcontroller ? Because, really, my robots don’t need much processing power. So, I would like make a choice based on the ease to program.


I really only have experience programming the 3pi; I’ve never worked with the mbed controllers before. You can find info about programming the mbed in the overview section of the mbed product page, or in the mbed handbook. As I understand it, flashing the mbed is quite straightforward (only requiring a USB cable and an online IDE); perhaps someone else with experience with both the 3pi and mbed could provide some more detailed info.

Programming the 3pi, on the other hand, requires an external programmer and some software (such as Atmel Studio 6) to flash the program onto it, but this is easy, too. Not entirely sure how it compares to the mbed in this regard.

Writing a program to the mbed is as easy as dragging a file to a USB flash drive. The 3pi requires an external programmer. You have to install software for the 3pi compiler/toolchain. For the mbed, you can use their online compiler by making an account on their website. In terms of actually writing the program that codes on them, I would say it is about equal difficulty, though the mbed’s library and project sharing features built into the development environment could theoretically make it a lot easier if someone else has already done what you want to do.

- Ryan