I have two quads and I want the second quad to follow the first quad, I already set the follow params, but the second one won’t follow, where did I miss
3 posts - 2 participants
I have two quads and I want the second quad to follow the first quad, I already set the follow params, but the second one won’t follow, where did I miss
3 posts - 2 participants
Hello everyone,
I am currently working on simulating a swarm of fixed-wing aircraft in Mission Planner using SITL (Software-in-the-Loop). However, I have been facing multiple issues while setting up and operating the simulation. I have gone through the available documentation and discussions on ArduPilot Discourse but couldn’t find much information to resolve these problems.
I would really appreciate any guidance or suggestions to troubleshoot the following issues:
I would really appreciate any insights or suggestions on how to properly configure and run a swarm simulation in SITL. If anyone has successfully executed a similar setup, please share your experience or any resources that might help.
Thank you in advance!
1 post - 1 participant
I tried to do an Autotune on my Arris m900 using a Pixhawk 6c. It had been flying pretty well before I tried the autotune so I thought a autotune would help it fly even better. I setup Alt hold on a flight mode switch and then setup channel 10 for Autotune. I took off, put it in a moderate hover, put it in Alt hold, and then tried the autotune switch. Things went really wonky really fast. I know it’s supposed to tip side to side but this was gyrating badly. I thought it was going to crash. I was able to disarm it when it was about a foot off the ground. Any ideas as to what would cause it to do that?
2 posts - 2 participants
Hi everyone, i got a problem , “Pitch rate D down”, what should i do? I’m new to this so please please explain in simple words and step by step. Thank you
1 post - 1 participant
Hello,
I’ve implemented a Custom Motor Matrix by initializing motors and enabling the SCR_ENABLE
parameter. Additionally, I’ve set the FRAME_CLASS
to Scripting Matrix
.
I would like to know if it’s possible to directly modify motor outputs using a Lua script. If so, what are the recommended methods or functions available for this purpose?
Any guidance or suggestions would be greatly appreciated.
Thank you!
1 post - 1 participant
No revelations here, just some thoughts after spending a year designing, building and testing a VTOL plane.
I finally settled on a tilting-tri design with the 2 front motors doing VTOL yaw and lift/propulsion. I partly wanted the challenge of building/tuning a tilt system. I coudnt bring myself to design a system that took 4 stationary motors for a ride with one pushing. One idea was to have all 3 tilting but decided against that.
So now its flying quite well and its no surprise that using the same motors for lift and propulsion requires a compromise. I already had 8 spare MT4008-600 motors so designed the plane around them. Im using a heavy Li-ion 4s4p 21700 pack and the plane was printed in ASA - not lightweight. So, the plane is on the ragged edge for spare VTOL lift and requires a careful choice of props, at least on the tilt motors.
I have found CAMCarbon 15x8 quite good so far. (I could go 6s and have lots of spare).
Of course choosing a prop pitch that lifts well is going to impact max forward speed and this can be seen in the graph. The system is capable of pushing 20A through each motor in VTOL flight BUT during this speed-ramping test, 100% throttle will only push about 12A through each motor in forward flight. RPM at hover is around 4500 and in cruise 100% throttle gives 6500 and 26m/s. This is approaching the theoretical 8500 for this Kv motor and battery.
Anyway, I would say that the design has exceeded expectations and can slow cruise around at 17m/s at 6.5A and my ‘usual’ cruise of 20m/s at 11.5A so well over and hour on the 18Ah battery.
Wondering about my next project. I have some DualSky MR5015MR-7 going spare so… Perhaps I will try taking 4 stationary motors for a ride and use a powerful pusher for speed?
Any comments welcome.
Arduplane VTOL transition for landing
1 post - 1 participant
Is it working?
I can start a plane but copter can’t leave ground.
1 post - 1 participant
For some time now, I’ve been trying to send complex geofences programmatically via Python to a CubeOrange FC. By ‘complex’, I mean geofences that consist of one inclusion zone and one or more smaller exclusion zones inside the inclusion zone.
Using examples from Mavproxy’s fence module, I’ve come up with the following code:
from pymavlink import mavutil, mavwp
import pymavlink.dialects.v20.all as dialect
vehicle = mavutil.mavlink_connection("localhost:14550")
vehicle.wait_heartbeat()
print("Heartbeat from system (system %u component %u)" % (vehicle.target_system, vehicle.target_component))
FENCE_TOTAL = "FENCE_TOTAL".encode(encoding="utf-8")
PARAM_INDEX = -1
fence_list = ([51.119594, 6.484470],
[51.080141, 7.678193],
[50.472869, 7.687169],
[50.358485, 6.556273],
[51.119594, 6.484470]
)
class Fence():
def add_polygon(self, polygon, command):
fence_count = 0
message = dialect.MAVLink_param_request_read_message(target_system=vehicle.target_system,
target_component=vehicle.target_component,
param_id=FENCE_TOTAL,
param_index=PARAM_INDEX)
vehicle.mav.send(message)
while True:
message = vehicle.recv_match(type=dialect.MAVLink_param_value_message.msgname,
blocking=True)
# convert the message to dictionary
message = message.to_dict()
if message["param_id"] == "FENCE_TOTAL":
print("FENCE_TOTAL parameter original:", message)
fence_count = int(message["param_value"])
break
count = len(polygon)
for i in range(0, count):
coord = polygon[i]
lat = coord[0]
lon = coord[1]
m = mavutil.mavlink.MAVLink_mission_item_int_message(
vehicle.target_system,
vehicle.target_component,
0, # seq
mavutil.mavlink.MAV_FRAME_GLOBAL, # frame
command, # command
0, # current
0, # autocontinue
count, # param1,
0.0, # param2,
0.0, # param3
0.0, # param4
int(lat*1e7), # x (latitude)
int(lon*1e7), # y (longitude)
0, # z (altitude)
mavutil.mavlink.MAV_MISSION_TYPE_FENCE,
)
vehicle.mav.send(m)
vehicle.param_set_send('FENCE_TOTAL', count + fence_count, 3)
fence = Fence()
fence.add_polygon(fence_list, mavutil.mavlink.MAV_CMD_NAV_FENCE_POLYGON_VERTEX_INCLUSION)
In theory, the method add_polygon
should be able to add a polygon of arbitrary designation (inclusion or exclusion) to an existing geofence. However, neither mission Planner nor QGroundControl show any fence constructs. Running the get_fence example from pymavlink’s git, I see the following output after two runs:
Connected to system: 1 , component: 0
FENCE_TOTAL parameter original: {'mavpackettype': 'PARAM_VALUE', 'param_id': 'FENCE_TOTAL', 'param_value': 10.0, 'param_type': 2, 'param_count': 1393, 'param_index': 65535}
FENCE 0: {'mavpackettype': 'FENCE_POINT', 'target_system': 255, 'target_component': 0, 'idx': 0, 'count': 10, 'lat': 0.0, 'lng': 0.0}
FENCE 1: {'mavpackettype': 'FENCE_POINT', 'target_system': 255, 'target_component': 0, 'idx': 1, 'count': 10, 'lat': 0.0, 'lng': 0.0}
FENCE 2: {'mavpackettype': 'FENCE_POINT', 'target_system': 255, 'target_component': 0, 'idx': 2, 'count': 10, 'lat': 0.0, 'lng': 0.0}
FENCE 3: {'mavpackettype': 'FENCE_POINT', 'target_system': 255, 'target_component': 0, 'idx': 3, 'count': 10, 'lat': 0.0, 'lng': 0.0}
FENCE 4: {'mavpackettype': 'FENCE_POINT', 'target_system': 255, 'target_component': 0, 'idx': 4, 'count': 10, 'lat': 0.0, 'lng': 0.0}
FENCE 5: {'mavpackettype': 'FENCE_POINT', 'target_system': 255, 'target_component': 0, 'idx': 5, 'count': 10, 'lat': 0.0, 'lng': 0.0}
FENCE 6: {'mavpackettype': 'FENCE_POINT', 'target_system': 255, 'target_component': 0, 'idx': 6, 'count': 10, 'lat': 0.0, 'lng': 0.0}
FENCE 7: {'mavpackettype': 'FENCE_POINT', 'target_system': 255, 'target_component': 0, 'idx': 7, 'count': 10, 'lat': 0.0, 'lng': 0.0}
FENCE 8: {'mavpackettype': 'FENCE_POINT', 'target_system': 255, 'target_component': 0, 'idx': 8, 'count': 10, 'lat': 0.0, 'lng': 0.0}
FENCE 9: {'mavpackettype': 'FENCE_POINT', 'target_system': 255, 'target_component': 0, 'idx': 9, 'count': 10, 'lat': 0.0, 'lng': 0.0}
If I interpret this correctly, the fence points were not uploaded. The parameter FENCE_TOTAL, however, was uploaded, and so, pymavlink tries to load 10 points, but since there aren’t any, it returns 10 default points, located at Null Island.
Does anybody have an idea why this isn’t working? Am I even on the right track or is there a better way to upload multiple fence polygons programmatically?
1 post - 1 participant
Hello
I am using a Cube Orange+, and in Stabilize mode, the vehicle occasionally yaws by approximately 10 degrees. Upon analyzing the flight logs, I noticed that RC4 (yaw) registers small fluctuations, resulting in unintended yaw commands. I am considering adding a deadzone on the RC4 channel. I found the RC4_DZ parameter, but I am unsure how to configure it correctly. The transmitter’s neutral value is 1500, and I want to set the deadzone between 1470 and 1530.
Configuration is a quad with
Hobbywing x6 plus
2x 6s 32000 mah lipo batteries connected in series
Here3 gps
Rfd 868x
1 post - 1 participant
Hello everyone, it’s my first post here.
I’m about to buy the following components:
The flight controller is: Flight Controller F405-WTE – Matek Systems
GPS: GNSS & Compass, M10Q-5883 – Matek Systems
Airspeed sensor: Digital Airspeed Sensor ASPD-4525 – Matek Systems
Current sensor: Ultra-Precise I2C Power Monitor, I2C-INA-BM – Matek Systems
My situation is a bit unusual. I’ll have to fly the plane on a completely separate system than ArduPlane, but i want to use the latter for live and sd telemetry.
My big question is: will i be able to see the live flight data from these sensors and this flight controller, considering i won’t be flying the plane trough it?
The second one is, will this combination of sensors and controller record the flight data on the onboard sd?
I hope i’m posting this in the right place, and I want to thank everyone who will help!
1 post - 1 participant
I am testing out dead reckoining in SITL and it is stopping early due to EKF Failsafe. Wondering what is going on here - I can attached a log from SITL if needed.
1 post - 1 participant
1 uBlox on Serial5 works fine. But any attempt to add 2nd NMES GPS on Serial2 blocks any GPS data. No GPSs are recognised and got Internal Error 0x10000…something.
Know uBlox should not work with NMEA but it does not even work if only first is selected as source. Have to disable 2nd (Serial2 to None) to make 1st working.
3 posts - 2 participants
WP_NAVALT_MIN reads as follows (on 4.7.0 dev, latest at time of post, and all other versions that I can find here):
This is the altitude in meters above which for navigation can begin. This applies in auto takeoff and auto landing.
All altitudes on Arducopter are calculated from takeoff. What happens if you take off on top of a hill and fly down-- what behavior develops when WP_NAVALT_MIN relative to takeoff is crossed? What happens if the landing zone’s ground is lower than the takeoff zone’s?
Might be a silly question, but an edge-case that I can’t find answers to.
1 post - 1 participant
Hi, I just started learning embedded systems and I have a simple question. I have a stm32 microcontroller ,pixhawk orange cube and joystick. How do I make connections and introduce the joystick I use to Mission Planner? And if i am going to use a library how can i add this to stm32 CubeIDE ? I need to help making connections and writing code.
1 post - 1 participant
Hey there am using radiomaster tx12 Elrs and kakute H7 v 1.3
Elrs 3.3.0
Edgetx tx12 MK2 with 2.8.0 version
Kakute 4.6 arducopter
Am receiving massages from arduopilot
When push Tele in my radio I have " no telemetry" but when scrolling right I can get all massages
What the problem
2 posts - 1 participant
Having issues with a tilt rotor in a qplane setup. When swapping from a Qhover or Qstabilize setup to a FBWA, i want the servo to rotate 90 degrees from vertical to forward. However, when I swap modes, the servo barely moves (~40deg), even with the minimum set to 800 and the max set to 2200. What is interesting, is that the larger this range is, the more it moves, however it does not go to the min or max i set. The range also increases as I increased the trim value. The 40deg max rotation is from a 800-2200 range, and trim at 2200. The actual output however is only 1897 and 2200. The servo is a DS3235, which is a continous rotation servo. All of my Q_tilt params are at default. Currently the servo is set to function TiltMotorFront. Please let me know what I can check!
I followed Tilt Rotor Setup Tips — Plane documentation setup steps exactly, the servo would barely rotate 2 degrees starting at 1300-1500-1700
2 posts - 2 participants
Hello everyone,
My team and I are developing an unmanned surface vehicle (USV) for a university competition. Our USV is a catamaran equipped with a Jetson Nano for processing. The total budget for our vehicle, including all components, is $1900.
The goal of the competition is to autonomously navigate through a parkour with various obstacles. The USV must:
I have attached a file with the parkour details for better context.
We are evaluating different sensor configurations and would like to hear your opinions on their feasibility and efficiency:
Our primary concerns are accuracy and cost-effectiveness. We plan to develop accuracy enhancement, prediction, and verification algorithms to improve sensor performance. However, I have no prior experience with LIDAR, so I am unsure about its real-world accuracy in a marine environment.
Given our budget, processing limitations (Jetson Nano), and the need for fast and reliable obstacle detection, which sensor setup would you recommend? Any insights from your experience would be greatly appreciated!
Looking forward to your responses.
Best regards.
1 post - 1 participant
como conectar a telemetria 3dr usando a pixhawk 2.4.8 ao mission planner? nao consigo configurar os parametros de conexao. obrigado
1 post - 1 participant
Attendees (max) 3
Randy on the wheel.
UTC0709
No code changes.
There seems to be a new duplicate definition of plain and Gazebo defines.
Approved and merged!
UTC0716
Randy: Not sure about this.
George: Left some comments.
UTC0720
George It seems like a veritable typo indeed.
Matt We should probably delete this unused portion of PID 2D.
George Approved!
1 post - 1 participant
The situation is the following, the ELRS receiver was working, the signal was lost during the flight, and now in the radio calibration there are either empty channels or pitch 3000
Attached is the configuration file
Drone2.0.param (17.7 KB)
1 post - 1 participant