Introduction: BB8 Droid Using FPGA

This Instructable will describe the steps to make your own life-sized BB8 droid based on the Arty Artix-7 FPGA Development Board. It's based on the 3D models made by James Burton from , you can download them from here:

You can also check out his youtube channel here .

This is still a work in progress, more updates coming soon!

Step 1: Materials

1) 3D printer with at least 30cm x 25cm print surface , I used Tevo Tarantula with extended bed

2) A lot of ABS filament, I used 5kg of white, 2 kg of green, 1kg of blue and 1kg of red + 1 roll flexible filament, I used TPU

3) Pure acetone, about 3L + paintbrush for every color of ABS

4) Two window wiper motors

5) Digilent Arty Board

6) Three Digilent DMC60 motor controllers or three BTS7960 motor controllers

7) Two Digilent PmodBT2 or HC05 bluetooth modules

8) Four Digilent PmodJSTK2 joysticks

9) Digilent PmodNav

10) Arduino nano

11) Two high torque servo's (

12) Farely-high torque servo (

13) Two high torque 300RPM , 24V brushed DC motors

14) Three 5V power regulatorscapable of providing 5A

15) Eleven 626ZZ bearings

16) Two 608 bearings

17) Two 6206 bearings

18) 14" lazy susan bearing

19) Four 5000mah 3S LiPo batteries + charger + HXT 4mm gold connectors

20) Two 18650 batteries for the remote + 18650 battery charger

21) 6kg of lead sheet

22) Six toggle switches, three high-power toggle switches1 push button, Pmod connection wires and normal wires

23) Lots of nuts and screws M3, M4, M6, M8 and 3mm wood screws + M6 threaded rod

Step 2: Print the Main Body

First of all, you have to tune in your printer as best you can. Here is a good instructable if you don't know how.

My printer is a Tevo Tarantula Prusa I3 and for about 200$ is a pretty good printer but you get what you pay for. Mine has the Z axis screw bent and so all my prints have Z wobble. You want to take your time to make your prints as best you can, a good printer will save you from a lot of sanding and/or adding ABS slurry( a mix of acetone and ABS).

The main body, or 'the cheese' how James Burton named it, is made out of 20 segments( each measuring about 30cm in length) and 8 flat quarters of a circle. You can find them under the name Cheese02a and Cheese02b on github.

Be patient, it took me about 260 hours to print them all.

You have to screw them together at first, once it's complete you can start filling the gaps between with ABS slurry. You have to let it set for about a day before you can sand it down. This will be probably the most painstakingly part because the ridges won't be small.

Pro tip: a sanding machine will make a huge difference!

Step 3: The Banana and Main Motor Mount

This is the internal carriage( named banana by the author) that drives the droid back and forth. It's basically the same as the very cool looking monowheel. You can find the parts under the name "banana_parts" on github.

You will have to solvent weld them and after that you have to add the small guidewheels supports and the guidewheels from the file "small_wheel", six facing out and four facing in. You should only mount theese with screws so that you can reposition them in chase they don't fit properly. You'll have to sandwich 626zz bearings in between the two parts of the small guidewheels and then you can mount the wheels using M6 screws. Be careful to use locknuts, as theese wheels spin a lot and can easily come undone!

The next things to print are the the main motor mount, found in the file "Motor_mount" and the main drivewheel from the "mainwheel" file. Note that the outermost part acts like the tyre on a wheel, so you'll have to print it in a flexible material.

If your printer is well tuned, you should be able to mount the carriage on the outside and barely sqeeze it in. Mine didn't have enough room so I had to assemble it half inside and half outside.

Before mounting the motor, check that the internal carriage is rotating easily and hopefully not making too much noise. You should also sand the ridges on the inside, at least in the places where the guidewheels and the main drivewheel roll.

Step 4: The Trousers and Flywheel

The trousers provide a side-to-side leaning move by rotating a big mass, the flywheel, around the main axle of the robot. The file for the trousers is called "Trousers01" and inside you'll find three parts that have to be solvent welded together as you can see in the photos.

The axle, in my case, is a brass tube with the diameter of 25mm. You can use other materials for this, like aluminium or stainless steel. The important bit is to put some washers at each end, because if you don't have the washers and you apply a big force on the axle, it will press down on the plastic banana and that will deform in a way that could lift up the main drive wheel. The presence of the washers prevents the ends of the banana to move apart outwards and helps maintain its shape. James Burton used a threaded rod inside the tube with washers and nuts on the ends, but I didn't have much room left and decided to weld the washers to the threaded rod instead of using nuts. The rod is held in place by some wood circular spacers on the inside.

Normally you would now print the bushings so you can mount the 6206 bearings, called "Bushing01" on github, but if you decide to weld the washers, I created a new model that can be mounted even with the welded washers. You can download them from here.

Next step is the flywheel and mountings for the lazy susan bearing, you can find them under the name "lazy susan2". Theese prints are straight-forward, but in order for you to be able to mount them, you'll have to drill some holes in the 14" lazy susan bearing. It does come pre-drilled but 3 of the 6 holes on each of the two parts of the bearing do no go all the way.

I filled the flywheel with sheets of lead cut into 1cm wide and 15cm long pieces and filled in the gaps with wood glue. The glue has the role of keeping the mass fixed and not allow it to move about in the flywheel. Be careful, if you are also using wood glue, check the way it sets! The one I used only hardens on the contact surface with air, so I had to put many thin layers to ensure that it will set properly.

I believe you can still do this on the outside of the main body and then put in, even if I did it inside the main body.