Project in progress

BlockBot © CC BY-NC-SA

A robot that can lift blocks and move in 4 directions, controlled by RFCOMM. Accompanied by a Windows 10 app.

  • 1 respect

Components and supplies

Necessary tools and machines

09507 01
Soldering iron (generic)
Hy gluegun
Hot glue gun (generic)
3D Printer (generic)

Apps and online services

About this project


BlockBot is an open source robot based on Arduino.  It is a fun experiment to try to replace the traditional R/C remote and use apps to control it.


A traditional R/C system is quite simple - the remote stick's position controls the servo's position - and that's about it.

That is indeed quite boring (although quite reliable), and sometimes you need to extensively modify the system to make it work ideally.

And when you're hooking up to Bluetooth, millions of laptops and phones have it, and with gamepad/keyboard/mouse/eye-tracking support, you can have so many ways to control it, maybe even use a camera to calculate it's path or something. And you only need a simple microcontroller for this - instead of using an on-board microprocessor, you use the untapped power of your phone's ARM cores or your laptop's x86 cores.

How it works

We will be using Bluetooth RFCOMM (SPP) to control the robot using "packets" which contain simple instructions. Here's the command packet defined in C++ :

struct Command 
	uint8_t direction; // Forward, Backward, Right and Left.
	uint8_t speed; // % Speed of all the continuous rotation servos
	uint8_t rotate; // Angle of the servo 0-180
	uint8_t grip; // Angle of the servo 0-180 
	uint8_t lift; // Angle of the servo
	uint8_t query; // Send Query 

A traditional R/C system works at  around 50Hz, that is, you can issue 50 instructions per second to the system - which is also what we will *try* to achieve (since anything farther isn't useful due to my cheapo analog servos, however the source code is open for all to modify).


Custom parts and enclosures

BlockBot CAD file


Add projectSign up / Login