The Dark Pi Rises

Ever wonder how an aerospace engineer would build a telepresence rover? Well, if [algorythmic] can be used as our reference, he’d cram a Raspberry Pi AND an Arduino into an RC truck frame.  The arduino is being used for motor control while the Raspberry pi is doing the communicating back and forth to the base. He’s using a ps3 controller as his interface and has slightly modified his PS3 eye for better night viewing.

Before you start shouting that using the raspberry pi AND the arduino is massive overkill, let us remind you that people don’t necessarily go buy/build all the parts for each project with a long-term goal in mind. He could have had both sitting there and realized that he didn’t need to add parts to either of them.

With the Raspberry Pi at the helm, this opens up all kinds of possibilities for adding features to make this an autonomous vehicle. Looking around his blog a little bit, it seems he’s done some visual recognition as well as voice control in the past. This could be interesting!

 

22 thoughts on “The Dark Pi Rises

  1. Hi, I normally never comment here – I’m here for the interesting articles.

    I just thought it was worth chiming in to say I think it’s a bit of a shame that the hack-a-day comment community is such that articles have to insert defences/apologies for the projects they feature whenever they utilise an Arduino or other ‘overkill’ device.

    Can a project not just be appreciated as a project? Can the audience as a community not just accept that sometimes if you want to knock something together and on the work bench is an un-utilised Arduino it is 100% acceptable to just use it? If your argument then goes on to be “but then there’s no excuse for not replacing it once the project gets going”, then no, people don’t always polish projects – sometimes the fun is to get to the goal quickly and appreciate the functional (but still educational) journey and result before moving on to the next project. They show them off because they are rightly proud.

    I’m fed up of the elitism in technical communities, people need to step back and enjoy the fact that there are people in the world who share our interest in technology at all – not fling mud in their face for imperfection.

    (End Rant)

  2. Hi, I normally never comment here – I\’m here for the interesting articles.

    I just thought it was worth chiming in to say I think it\’s a bit of a shame that the hack-a-day comment community is such that articles have to insert defences/apologies for the projects they feature whenever they utilise an Arduino or other \’overkill\’ device.

    Can a project not just be appreciated as a project? Can the audience as a community not just accept that sometimes if you want to knock something together and on the work bench is an un-utilised Arduino it is 100% acceptable to just use it? If your argument then goes on to be \”but then there\’s no excuse for not replacing it once the project gets going\”, then no, people don\’t always polish projects – sometimes the fun is to get to the goal quickly and appreciate the functional (but still educational) journey and result before moving on to the next project. They show them off because they are rightly proud.

    I\’m fed up of the elitism in technical communities, people need to step back and enjoy the fact that there are people in the world who share our interest in technology at all – not fling mud in their face for imperfection.

    (End Rant)

  3. Actually I would say using a Pi and a microcontroller was exactly the right route to take. USB capable microcontrollers are used for this type of application all the time… Just because a Pi happens to be small it doesn’t necessarily equate to it being a replacement for a microcontroller; the Pi has very limited GPIO and is not real-time making it very inferior to the humble 8-bit AVR in many aspects of embedded systems design.

    1. Nicely put, simoninns … unfortunately, most people don’t realize that this has been a common technique since at least the 1960s, and possibly before then.

      Even an everyday PC is set up in a similar manner – there are separate processors on the motherboard, in the keyboard, each hard drive, and (I think) for video.

      It’s neat seeing the same approach applied by hobbyists, now that it’s become inexpensive and much easier to do so.

  4. I might have a go at something like this, as my R/C car has a destroyed transmitter courtesy of some poor storage in a conservatory and my collection of cameras includes two Eyetoy units.

    The electronics and motors are fine but can’t be controlled because it uses a proprietry non standard RX/TX pair and frequency.

    Can anyone suggest a source for RPi seconds?
    ie failed network test but still works otherwise..

  5. I find it funny that folks scream overkill. They forget both of these boards are not intended for production projects, they are in fact prototyping boards. There is absolutely no such thing as overkill in protyping. In fact, overkill is good on a prototype as you leave open options for additional modification and functionality.

    As for this build, I see this as the perfect way to do it. With all the leftover circuitry, one could feasably add a remote arm, speed indicators or any other of many possibilities.

  6. bothersaidpooh: Take a look at jeenodes from jeelabs.com. These have built in radios for what you are looking to do and are based on the ATmega chip and can use the Arduino IDE. All you need to do is add a 14 minute delay on transmit and receive to simulate the distance to mars.

  7. i like to look at it this way; he has a camera onboard!!!!!!!

    show me YOUr project where theres an arduino doing real-time object recognition… oh not fast enough.

    and the arduino for motor control is VERY good idea, if you’d use the RPI directly for motor control, the slightest software bug would lead to the robot possibily running off a clif. this way the stress in CPU is handed off to something that can handle it eiser. AVR better for motors, RPI nessasary for obj. recognition! the hardware equivilant of the PWM circuits would be fun to make, but the dev time would be the same as the rest of the darn thing!

    this site isnt about how to engineer something to death, its about what can he “hacked” together. “hacked” in my books does NOT mean recieving a board from a board house, or even etching a board.

    the non software, and non hardware meaning of “hack” means hastily, quickly, and purposely half-a**’d

    now of he was using an RPI just to learn PWM, then yes, overkill, but if he’s ACTUALLY learning, then maybe its still okay to use RPI to learn PWM.

    its only overkill if it ruins the overall finished functionality (or causes injury)
    EX: the battery is so big the motors can barely move the car, THAT is overkill (batteries)
    EX2: the “brains” of the project (laptop) are so large the unit damages itself by falling over, THAT is overkill!
    EX3: the pressure/volume of compressed air is so overkill it (PVC pipe ect) shattered and injured the user, THAT is overkill!

    1. PS: cool rover, i smell nefarious intentions ;) lol JustKidding, the nearly all-black color combined with a night picture just looks meanacing. great work! :)

      PS: give it “eyes” that glow (that can be deactivated) ohh scary…

      PPS: he planning on adding sound output? hahah i smell a future halloween bot! complete with monster sounds and and and … lol

  8. Definitely not overkill. An Arduino (or other MCU) is better at simple, low-bandwidth, hard real-time tasks; as well as interfacing to more and a greater variety of circuits and sensors. A Pi is better at complex, high-bandwidth tasks; and allowing use of USB peripherals.

    It’s perfect synergy. I wouldn’t change a thing.

    Well, actually I’d leverage it further, by giving the Arduino a separate low-power radio, and the ability to shut down the Pi and associated peripherals completely. Now the robot can stay in this state for extended periods with very minimal battery drain, while still responding to remote commands like “wake up”. Excellent for activating your robot over the Internet, so you can drive it into the kitchen and check something at home; like whether you forgot to turn the oven off.

  9. The way I look at it, is that if he screws something up on the Arduino side, he’s out $20, or maybe less. Whereas having to toss a Raspberry Pi would be a lot worse, because who knows when you’ll actually get your next one delivered…

  10. The only complaint I have about the use of the Raspberry Pi is… I can’t get one! Where do people get them? Every site/shop I go to are out of stock (except a few where the shipping cost is more than the cost of the item). At least the TI products have free shipping – I would like to see more projects using them.

    1. I’ve seen some recent reports that backorders placed on sites that list them as out of stock have been received in less than two weeks; and sometimes even a few days. Sounds like they’re catching up with demand.

  11. Additional intel on the RPi, they are like hen’s teeth. I haven’t even seen one, ever.
    I know someone over here who bought one but he installed it in a project immediately afterwards.

  12. The fact that it is overkill or not is beyond the point. Hackaday readers should be criticizing (constructively) every project that goes up here (and hopefully the project owner reads the comments)! Because with each criticism, it pushes people to do more themselves, to learn more about the underlying concepts behind all these pre-built devices.

    So everyone wins: commenters get to complain and people building new projects are encouraged to learn more about what they are doing. It’s the reason I’m building a quadrotor from the ground up — I need to learn about everything: writing control software, PID feedback, RF, etc.

Leave a Reply to bothersaidpoohCancel reply

Please be kind and respectful to help make the comments section excellent. (Comment Policy)

This site uses Akismet to reduce spam. Learn how your comment data is processed.