While I was thinking to assembly the first drone setup for BBBlue, the first question I asked myself was: What size should it be?. Then I thought if it’s going to be big, I could mount more things on it but a considerable disadvantage is the portability. Because of that, I want to begin with a frame under 200mm.
This setup is based on: 150mm-fpv-build-diatone-blade-150. Under the link you are going to find a list of all parts and furthermore interesting tips. Of course the setup built here is not 100% based on the mentioned above because, for example, we are going to use our BBBlue as flight controller that means we don’t need to buy one.
List of materials
- DYS SN20A mini ESC. You can read more about their configuration further below
- DYS 1306 3100KV Brushless motor
- Diatone ET 160 Frame. When I wanted to buy the used frame by rsflightronics I couldn’t because it wasn’t available, so I bought a little bigger one
- u-blox M8N GPS. It was recommended by Mirko (here)
So far, so good – but the first problem appeared: How can we mount our Beaglebone blue on the frame?. No problem, we can print a case with a 3D printer :). After a first design, which was a pretty big for the chosen frame and also it had a little error, by the second one these details were solved. Here you can download the .stl file.
Mounting of motors
Since our drone have 4 motors, 2 of them have to turn clockwise and the other 2 counter clockwise, otherwise our drone will permanently rotate on its yaw axis. Furthermore the nut of each motor must be adjusted in the opposite direction of rotation of the motor to prevent a self-disassembling of the propellers.
Next question is: How we can change the sense of rotation of a motor?. We are using three-phase motors, if you already noted the motors have three cables, one for each phase. That means if two of these cables are swapped, the motor will rotate in the opposite direction than before. Therefore in order to chose the right direction, first we have to solder the cables with the ESC board and check if the motor rotate correctly.
Checking rotation of motors
Please for this test, the propellers do not have to be mounted, it could be dangerous.
Here we have to solve two obstacles:
- We need a pwm signal, which will be “translated” into a speed by the ESC
- and before using the ESCs, they have to be configured.
Fortunately there are commands, which we can use to test the hardware of our Beaglebone blue. The two that we need are: rc_calibrate_escs and rc_test_servos.
For calibrating you can follow the steps given by rc_calibrate_escs and with rc_test_servos you can configure a pwm signal. So far it appears to be easy, but there is a little problem. After approximately a second without a signal an ESC have to be configured again. Note that the ESC makes a periodic beep (actually the motor do), when it needs to be configured. If you run rc_calibrate_escs to calibrate and immediately after that run rc_test_servos (with the appropriate options), you got it!. But that is not the best solution, when we can make a little bash script that do this work for us 😀 (download it from here)
#!/bin/bash #A little script to check the spinning direction of motors before final assembling echo "-- Spinning Checker --" echo "You should connect the ESC on channel 1" rc_calibrate_escs rc_test_servos -c 1 -e 0.07
After editing the file with the program of your preference, please don’t forget to add execution permission with chmod.
Also note: Is not necessary to power off the ESC to configure it, when it is making a periodic beep.