# Custom Thruster|Frame configuration

**URL:** <https://discuss.bluerobotics.com/t/custom-thruster-frame-configuration/6322>\
**Category:** Blue Robotics Software\
**Tags:** ardusub\
**Created:** [November 11, 2019, 1:05am UTC](https://discuss.bluerobotics.com/t/custom-thruster-frame-configuration/6322 "2019-11-11T01:05:07Z")\
**Posts on this page:** 17\
**Page:** 1

<div class="post-metadata">

**Author:** ![EspReSso](https://sea1.discourse-cdn.com/flex019/user_avatar/discuss.bluerobotics.com/espresso/32/5133_2.png) [@EspReSso](https://discuss.bluerobotics.com/u/EspReSso)\
**Post date:** [November 11, 2019, 1:05am UTC](https://discuss.bluerobotics.com/t/custom-thruster-frame-configuration/6322/1 "2019-11-11T01:05:07Z")

</div>

Hello, I have a custom frame and presently running QGC 3.5.2 & ArduSub 3.5.4. My frame is presently running as a BlueROV-Heavy 6DOF Vectored with 8 thrusters. Everything is operating fine other then my placement of Trusters #7/#8 during ascent/descent causes greater aft thrust then #5/#6. I am attempting to reduce the amount of thrust to just 7-8 during ascent/descent while leaving all other operations untouched. I modified the ‘libraries/AP\_Motors/AP\_Motors6DOF.cpp’, changing the factor from -1.0f to any other amount (-0.5f, even 0), compiled and uploaded, but appears to not have any affect. I have tried changing both the SUB\_FRAME\_VECTORED\_6DOF & adding a custom (unsure how to QGC change to the custom). Am I missing a step or going about this incorrectly?  
case SUB\_FRAME\_CUSTOM:  
add\_motor\_raw\_6dof(AP\_MOTORS\_MOT\_1, 0, 0, 1.0f, 0, -1.0f, 1.0f, 1);  
add\_motor\_raw\_6dof(AP\_MOTORS\_MOT\_2, 0, 0, -1.0f, 0, -1.0f, -1.0f, 2);  
add\_motor\_raw\_6dof(AP\_MOTORS\_MOT\_3, 0, 0, -1.0f, 0, 1.0f, 1.0f, 3);  
add\_motor\_raw\_6dof(AP\_MOTORS\_MOT\_4, 0, 0, 1.0f, 0, 1.0f, -1.0f, 4);  
add\_motor\_raw\_6dof(AP\_MOTORS\_MOT\_5, 1.0f, -1.0f, 0, -1.0f, 0, 0, 5);  
add\_motor\_raw\_6dof(AP\_MOTORS\_MOT\_6, -1.0f, -1.0f, 0, -1.0f, 0, 0, 6);  
add\_motor\_raw\_6dof(AP\_MOTORS\_MOT\_7, 1.0f, 1.0f, 0, -0.5f, 0, 0, 7);  
add\_motor\_raw\_6dof(AP\_MOTORS\_MOT\_8, -1.0f, 1.0f, 0, -0.5f, 0, 0, 8);  
break;

---

<div class="post-metadata">

**Author:** ![EspReSso](https://sea1.discourse-cdn.com/flex019/user_avatar/discuss.bluerobotics.com/espresso/32/5133_2.png) [@EspReSso](https://discuss.bluerobotics.com/u/EspReSso)\
**Post date:** [November 11, 2019, 1:11am UTC](https://discuss.bluerobotics.com/t/custom-thruster-frame-configuration/6322/2 "2019-11-11T01:11:42Z")

</div>

[Video of present vertical dive that attempting to adjust](https://www.facebook.com/joseph.bowmer/videos/10215214276379134/?t=60)

---

<div class="post-metadata">

**Author:** ![EspReSso](https://sea1.discourse-cdn.com/flex019/user_avatar/discuss.bluerobotics.com/espresso/32/5133_2.png) [@EspReSso](https://discuss.bluerobotics.com/u/EspReSso)\
**Post date:** [November 11, 2019, 3:21am UTC](https://discuss.bluerobotics.com/t/custom-thruster-frame-configuration/6322/3 "2019-11-11T03:21:01Z")

</div>

Additional note: when I select Custom frame and reboot, the unit does not appear to be loading my custom entry, as it only spins single thrusters. If I modify the SUB\_FRAME\_VECTORED\_6DOF, ./waf clean, ./waf configure --board=px4-v4, ./waf sub. Any changes appear to have no affect after installing the compiled firmware.  
Note: I am installing the Pixhawk firmware via the companion computer system tab.

---

<div class="post-metadata">

**Author:** ![EspReSso](https://sea1.discourse-cdn.com/flex019/user_avatar/discuss.bluerobotics.com/espresso/32/5133_2.png) [@EspReSso](https://discuss.bluerobotics.com/u/EspReSso)\
**Post date:** [November 11, 2019, 10:49pm UTC](https://discuss.bluerobotics.com/t/custom-thruster-frame-configuration/6322/4 "2019-11-11T22:49:36Z")

</div>

Here is output from compiling: [pastbin](https://pastebin.com/fV4jr7tw)

---

<div class="post-metadata">

**Author:** ![EspReSso](https://sea1.discourse-cdn.com/flex019/user_avatar/discuss.bluerobotics.com/espresso/32/5133_2.png) [@EspReSso](https://discuss.bluerobotics.com/u/EspReSso)\
**Post date:** [November 12, 2019, 12:08am UTC](https://discuss.bluerobotics.com/t/custom-thruster-frame-configuration/6322/5 "2019-11-12T00:08:42Z")

</div>

Output from companion upload of firmware:  
attempting upload from file /tmp/data/ArduSub-v4.px4  
Stopping mavproxy  
Flashing Pixhawk…  
Loaded firmware for b,0, size: 792344 bytes, waiting for the bootloader…  
attempting reboot on /dev/autopilot…  
attempting reboot on /dev/autopilot…  
Timed out trying to catch bootloader!  
Please try again.  
Waiting to restart mavproxy…  
Restarting mavproxy  
Complete!

---

<div class="post-metadata">

**Author:** ![EspReSso](https://sea1.discourse-cdn.com/flex019/user_avatar/discuss.bluerobotics.com/espresso/32/5133_2.png) [@EspReSso](https://discuss.bluerobotics.com/u/EspReSso)\
**Post date:** [November 12, 2019, 12:49am UTC](https://discuss.bluerobotics.com/t/custom-thruster-frame-configuration/6322/6 "2019-11-12T00:49:15Z")

</div>

pi@raspberrypi:~/companion/scripts $ ls /dev/serial/by-id  
usb-3D\_Robotics\_PX4\_FMU\_v2.x\_0-if00  
usb-FTDI\_FT231X\_USB\_UART\_DM022A9J-if00-port0

pi@raspberrypi:~/companion/scripts $ ls /dev/tty\*  
/dev/tty /dev/tty19 /dev/tty3 /dev/tty40 /dev/tty51 /dev/tty62  
/dev/tty0 /dev/tty2 /dev/tty30 /dev/tty41 /dev/tty52 /dev/tty63  
/dev/tty1 /dev/tty20 /dev/tty31 /dev/tty42 /dev/tty53 /dev/tty7  
/dev/tty10 /dev/tty21 /dev/tty32 /dev/tty43 /dev/tty54 /dev/tty8  
/dev/tty11 /dev/tty22 /dev/tty33 /dev/tty44 /dev/tty55 /dev/tty9  
/dev/tty12 /dev/tty23 /dev/tty34 /dev/tty45 /dev/tty56 /dev/ttyACM0  
/dev/tty13 /dev/tty24 /dev/tty35 /dev/tty46 /dev/tty57 /dev/ttyAMA0  
/dev/tty14 /dev/tty25 /dev/tty36 /dev/tty47 /dev/tty58 /dev/ttyprintk  
/dev/tty15 /dev/tty26 /dev/tty37 /dev/tty48 /dev/tty59 /dev/ttyS0  
/dev/tty16 /dev/tty27 /dev/tty38 /dev/tty49 /dev/tty6 /dev/ttyUSB0  
/dev/tty17 /dev/tty28 /dev/tty39 /dev/tty5 /dev/tty60  
/dev/tty18 /dev/tty29 /dev/tty4 /dev/tty50 /dev/tty61

pi@raspberrypi:~/companion/tools $ screen -ls  
There are screens on:  
28574.mavproxy (11/11/19 19:57:04) (Detached)  
920.bridgemanager (11/11/19 19:25:42) (Detached)  
910.wldriver (11/11/19 19:25:42) (Detached)  
900.nmearx (11/11/19 19:25:42) (Detached)  
884.file-manager (11/11/19 19:25:42) (Detached)  
869.audio (11/11/19 19:25:42) (Detached)  
854.commrouter (11/11/19 19:25:42) (Detached)  
840.webterminal (11/11/19 19:25:42) (Detached)  
822.webui (11/11/19 19:25:42) (Detached)  
810.video (11/11/19 19:25:42) (Detached)  
10 Sockets in /var/run/screen/S-pi.

---

<div class="post-metadata">

**Author:** ![EspReSso](https://sea1.discourse-cdn.com/flex019/user_avatar/discuss.bluerobotics.com/espresso/32/5133_2.png) [@EspReSso](https://discuss.bluerobotics.com/u/EspReSso)\
**Post date:** [November 12, 2019, 2:16am UTC](https://discuss.bluerobotics.com/t/custom-thruster-frame-configuration/6322/7 "2019-11-12T02:16:09Z")

</div>

Realizing my companion computer isn’t flashing the Pixhawk, hrm, thoughts? So trying to avoid taking it apart to direct usb to it each time I make an adjustment to the firmware.

---

<div class="post-metadata">

**Author:** ![jwalser](https://sea1.discourse-cdn.com/flex019/user_avatar/discuss.bluerobotics.com/jwalser/32/2234_2.png) [@jwalser](https://discuss.bluerobotics.com/u/jwalser)\
**Post date:** [November 12, 2019, 2:59am UTC](https://discuss.bluerobotics.com/t/custom-thruster-frame-configuration/6322/8 "2019-11-12T02:59:10Z")

</div>

Try power-cycling the ROV and see if you have issues flashing the firmware again, then it should work after you set the FRAME\_TYPE parameter to custom.

If flashing doesn’t work again, please post a log from the download button at the bottom of the companion system webpage.

---

<div class="post-metadata">

**Author:** ![EspReSso](https://sea1.discourse-cdn.com/flex019/user_avatar/discuss.bluerobotics.com/espresso/32/5133_2.png) [@EspReSso](https://discuss.bluerobotics.com/u/EspReSso)\
**Post date:** [November 12, 2019, 3:59am UTC](https://discuss.bluerobotics.com/t/custom-thruster-frame-configuration/6322/10 "2019-11-12T03:59:50Z")

</div>

[webui.log](https://discuss.bluerobotics.com/uploads/short-url/kJFcYds05yXx2aOAptzGPCrMQlB.log) (738.5 KB)

---

<div class="post-metadata">

**Author:** ![EspReSso](https://sea1.discourse-cdn.com/flex019/user_avatar/discuss.bluerobotics.com/espresso/32/5133_2.png) [@EspReSso](https://discuss.bluerobotics.com/u/EspReSso)\
**Post date:** [November 12, 2019, 4:00am UTC](https://discuss.bluerobotics.com/t/custom-thruster-frame-configuration/6322/11 "2019-11-12T04:00:31Z")

</div>

I power cycled the ROV and tried again, attached is the log.

---

<div class="post-metadata">

**Author:** ![EspReSso](https://sea1.discourse-cdn.com/flex019/user_avatar/discuss.bluerobotics.com/espresso/32/5133_2.png) [@EspReSso](https://discuss.bluerobotics.com/u/EspReSso)\
**Post date:** [November 15, 2019, 12:23am UTC](https://discuss.bluerobotics.com/t/custom-thruster-frame-configuration/6322/12 "2019-11-15T00:23:37Z")

</div>

I Found the Error!! the tools script was pointing the port to "/dev/serial/by-id/usb-3D\_Robotics\_PX4\_BL\_FMU\_v2.x\_0-if00,/dev/autopilot ", my system does not have a symlink for /dev/autopilot, changed to /dev/ttyACM0 and starting doing something!

---

<div class="post-metadata">

**Author:** ![EspReSso](https://sea1.discourse-cdn.com/flex019/user_avatar/discuss.bluerobotics.com/espresso/32/5133_2.png) [@EspReSso](https://discuss.bluerobotics.com/u/EspReSso)\
**Post date:** [November 15, 2019, 12:31am UTC](https://discuss.bluerobotics.com/t/custom-thruster-frame-configuration/6322/13 "2019-11-15T00:31:00Z")

</div>

IT WORKED!!! some reason I do have the /dev/autopilot sym link but changing it to use the port directly some reason did the trick.

---

<div class="post-metadata">

**Author:** ![jwalser](https://sea1.discourse-cdn.com/flex019/user_avatar/discuss.bluerobotics.com/jwalser/32/2234_2.png) [@jwalser](https://discuss.bluerobotics.com/u/jwalser)\
**Post date:** [November 26, 2019, 8:46pm UTC](https://discuss.bluerobotics.com/t/custom-thruster-frame-configuration/6322/14 "2019-11-26T20:46:11Z")

</div>

Aha, it sounds like your firmware is based on a newer release, where the usb identifier on the autopilot has changed. We have yet to add support for this in companion.

Sorry I did not get back to help you sooner, I had to leave town unexpectedly.

---

<div class="post-metadata">

**Author:** ![jwalser](https://sea1.discourse-cdn.com/flex019/user_avatar/discuss.bluerobotics.com/jwalser/32/2234_2.png) [@jwalser](https://discuss.bluerobotics.com/u/jwalser)\
**Post date:** [November 26, 2019, 8:46pm UTC](https://discuss.bluerobotics.com/t/custom-thruster-frame-configuration/6322/15 "2019-11-26T20:46:17Z")

</div>



---

<div class="post-metadata">

**Author:** ![jwalser](https://sea1.discourse-cdn.com/flex019/user_avatar/discuss.bluerobotics.com/jwalser/32/2234_2.png) [@jwalser](https://discuss.bluerobotics.com/u/jwalser)\
**Post date:** [November 26, 2019, 8:46pm UTC](https://discuss.bluerobotics.com/t/custom-thruster-frame-configuration/6322/16 "2019-11-26T20:46:20Z")

</div>



---

<div class="post-metadata">

**Author:** ![EspReSso](https://sea1.discourse-cdn.com/flex019/user_avatar/discuss.bluerobotics.com/espresso/32/5133_2.png) [@EspReSso](https://discuss.bluerobotics.com/u/EspReSso)\
**Post date:** [November 26, 2019, 9:50pm UTC](https://discuss.bluerobotics.com/t/custom-thruster-frame-configuration/6322/17 "2019-11-26T21:50:04Z")

</div>

Not a problem Jacob, was able to get it working and now with ability to adjust for my unique configuration worked great. Appreciate the reply.

---

<div class="post-metadata">

**Author:** ![jwalser](https://sea1.discourse-cdn.com/flex019/user_avatar/discuss.bluerobotics.com/jwalser/32/2234_2.png) [@jwalser](https://discuss.bluerobotics.com/u/jwalser)\
**Post date:** [November 30, 2019, 11:00pm UTC](https://discuss.bluerobotics.com/t/custom-thruster-frame-configuration/6322/18 "2019-11-30T23:00:00Z")

</div>

This topic was automatically closed after 4 days. New replies are no longer allowed.
