Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Repo info
Activity
  • 00:23
    CircleCI success: dronekit build (#1416) in https://github.com/dronekit/dronekit-python
    • Fixed error in code comments
      (fe6c62313831c7d4847ae8009af3f6400aea8c5e by Peter Barker)
  • 00:23
    CircleCI success: dronekit build (#1417) in https://github.com/dronekit/dronekit-python
    • Fixed error in code comments
      (fe6c62313831c7d4847ae8009af3f6400aea8c5e by Peter Barker)
  • 00:19
    peterbarker commented #986
  • 00:19
    peterbarker closed #986
  • Nov 12 22:04
    rosshiga edited #986
  • Nov 12 22:02
    rosshiga opened #986
  • Nov 11 12:08
    Madnyax commented #924
  • Nov 11 12:06
    Madnyax commented #924
  • Nov 11 00:29
    JorgeCosta87 edited #985
  • Nov 11 00:29
    JorgeCosta87 edited #985
  • Nov 11 00:28
    JorgeCosta87 opened #985
  • Nov 02 12:52
    nagendra092918 edited #984
  • Nov 02 11:01
    nagendra092918 commented #980
  • Nov 02 09:54
    nagendra092918 edited #984
  • Nov 02 09:54
    nagendra092918 edited #984
  • Nov 02 08:07
    nagendra092918 opened #984
  • Oct 31 10:36
    Aline83 opened #983
  • Oct 30 16:26
    Aline83 opened #982
  • Oct 28 02:52
    jodumagpi closed #689
  • Oct 25 17:10
    PrasadNR closed #138
ryantheengineer
@ryantheengineer
Hey everyone, is there a way to override preflight checks when using vehicle.is_armable?
Huibean Luo
@Huibean
@ryantheengineer you can change it inside DroneKit
skydio fan page
@ohitstarik_twitter
I disabled the parameter in ardupilot and it shows vehicle as armable for me
ryantheengineer
@ryantheengineer
@Huibean where in DroneKit do you change it?
Shubham Baranwal
@shubham9436
Hey everyone, how can I know values of ESTIMATOR_STATUS_FLAGS enum in python code?
ryantheengineer
@ryantheengineer
So I'm working on a Python script that involves going without GPS during indoor flight (should only be used in testing). I want to arm in AltHold mode, then take off, hold an altitude, and land. This seems like it should be simple, and ArduCopter documentation says that AltHold mode can be run without GPS. However, I'm not finding any supported MAVLINK commands that will let me take off without GPS. Could someone point me in the right direction?
Brian Amin
@BAmercury
@ryantheengineer Maybe send in a message to switch some parameters? Like the AHRS_GPS_USE? That's what I have been doing though I'm not sure if it's actually worked or not
Jaime Machuca
@jmachuca77
You need some sort of positioning to take off. You have to be in guided mode, and to enter guided you need some sort of position estimation.
RobbertD
@RobbertD

Hi guys,
I am trying to get a plane to take off in sitl. I start up sitl with sim_vehicle.py and connect to it with my dronekit script. After figuring out the first command in a mission gets ignored I was able to get the plane moving. The only problem is MavProxy shows a negative altitude (~-10) for about a minute before the plane starts going up. During this time I get repeated messages that the plane has crashed at a certain speed but it keeps on moving on the map. After it has reached it's desired altitude and goes into RTL mode, it starts spinning in 1 point and keeps climbing??

I'm very confused here, does anybody know what the problem might be?

Prasad N R
@PrasadNR
@peterbarker Do you need any help in cleaning up issues in https://github.com/dronekit/dronekit-sitl/issues ? Too many "issues" have been raised without any due consideration. I guess we can have them closed
Also, that many number of "issues" can give wrong impression about the repo I believe
RobbertD
@RobbertD
wiping the EEPROM and rerunning the example script of waypoints (CMAC-circuits.txt)on sitl seems to have fixed my issue.
Trey Fortmuller
@treyfortmuller

Hi all. I'm interested in automating compass and accelerometer calibration via drone-kit python. I've already automated parameter writing through drone-kit and its already saving time.

I see send_calibrate_magnetometer and a similar function for accel calibration exists in the API. But I'm unsure how I would measure progress of the compass calibration or know that it succeeded. Similarly for accelerometer calibration, I'm not sure how I would prompt the user of my script to turn the vehicle to the next orientation, etc.

I can't find any examples of someone executing sensor calibration via mavlink on a real vehicle rather than a SITL. I would love to be free from the tyranny of Mission Planner, I appreciate any help in advance!

Fabian Faul
@fabianfaul
Hi all. I had a look into what simple_goto() is actually doing. I'm wondering about the 2 that is used as 6th parameter for the mission_item_send() function here. The definition of mission_item_send() says it's the current field with possible values of 0 (false) and 1 (true). So what does the 2 stand for? Thanks.
ryantheengineer
@ryantheengineer
I'm working on a project that is primarily GPS-denied, and I see that ArduCopter is supposed to be able to arm directly in Altitude Hold mode. However, I can't find any documentation on what dronekit commands are compatible with Altitude Hold mode. Even takeoff code requires that the drone start in Guided mode, which I have to circumvent in order to even arm the drone in the first place. What am I missing here?
Brian Amin
@BAmercury
@ryantheengineer I'm working on some GPS-denied stuff as well, you can checkout my dronekit script here maybe that'll give you some insight: https://github.com/BAmercury/ardupilot_gazebo/blob/master/scripts/SITL%20Interface/sitl_interface.py
I arm the throttle, and then threw together a macro to set the throttle up till the drone reaches around some desired altitude via RC overrides
So lines 85 and 36
ryantheengineer
@ryantheengineer
@BAmercury I'm looking at your code, and it's raised another question for me. On line 49, you specify an idle throttle value after you've reached the desired altitude, but you're in a flight mode that should allow you to hold an altitude. Have you tested this on a real-world drone and found line 49 necessary? What would prevent you from using Alt Hold mode to maintain altitude, since that doesn't require a GPS lock?
Brian Amin
@BAmercury
@ryantheengineer Sorry I don't quite understand your question. From what I believe when I switch to alt-hold mode, I apply positive throttle from trim (Trim set at 1500 for me) and my drone will fly up, and once I set the throttle back to trim at 1500 the drone will stay at that altitude
and this works with my real drone as well
maybe I should've specified what idle meant to me haha, lmk if that makes sense or if I'm wrong
If I set below 1500 then I'm throttled down so I would lower in altitude, 1500 is center strick for me on my joystick
stick*
Brian Amin
@BAmercury
also for that macro I used loiter just for the position hold. I have a separate repo where I'm developing my GPS-denied pos hold using some simulated sensors in Gazebo so I had a version of the macro there that switches to the custom flight mode for that
but yeah you can easily have it switch to althold and perform the same routine instead
Lmk if that makes sense, it's late here so my words are all over the place sorry haha
ryantheengineer
@ryantheengineer
@BAmercury Sorry for the ambiguous question. I get that you're rising when you have throttle at 1800 and hovering with throttle at 1500. Since I'm completely new to this, I was confused why you couldn't just use the ArduCopter default AltHold mode, which I would assume would just want to maintain position in the absence of any RC overrides. To me it looks like you're using RC overrides for all behavior, rather than just to change altitude. Does that make more sense?
Brian Amin
@BAmercury
@ryantheengineer I understand now, does alt hold have a mavlink message that lets you set some desired setpoint for althold mode? From what I seen there isn't like a takeoff() method that works with alt-hold, it's all for guided I thought
Like if you look at the ardupilot code for Althold, I'm seeing that it calls the position controller to set an altitude target based on a user defined climb rate, which is what I'm controlling using the throttle
Oh wait sorry this goes over it better: http://ardupilot.org/copter/docs/altholdmode.html
I feel that if you wanted to do it any other way you might need to edit the firmware a bit to accept messages lik ehow guided works with takeoff()
ryantheengineer
@ryantheengineer
@BAmercury So if I understand correctly, AltHold is more about interpreting RC commands and then executing ArduCopter responses based on those RC commands? So when the stick is in the middle, it assumes you want to hold the current altitude, and makes the minor adjustments to do so? That would make sense why your code works, then, as long as you give throttle values that are in the "middle" stick range.
Brian Amin
@BAmercury
yeah exactly from what I understand!
ryantheengineer
@ryantheengineer
Noob question again. I have a drone in progress that I want to connect to my laptop over WiFi. I've got an ESP8266 WiFi transmitter set up with ArduCopter firmware, and I've verified that an ArduCopter network broadcasts when I power the drone. I've also verified that I can connect to that WiFi network from my laptop and my phone. Every tutorial I've looked at roughly says "then just connect to the IP address" and I honestly have no idea where they get that number from. I'm assuming it's the IP address of the drone on the network? If that's true, how would I go about determining that IP address? I know how to find my laptop's address, but not the drone.
Brian Amin
@BAmercury
I haven't used the esp8266 on arducopter, but in my Iot projects I either check my router's connection table and pick out the esp device or I throw together a program that prints it mac and ip address
maybe that'll help
once you get it you could go through your router's firmware and have it set to static so it won't change
ryantheengineer
@ryantheengineer
So I'm not using a true ESP8266 board, just the breakout Wifi board:
The breakout board is what's actually broadcasting the WiFi network, as far as I understand it. It looks like this is supposed to be relatively plug and play, but that's also from ArduCopter's documentation, not dronekit's.
It looks like the link you shared is about connecting the ESP8266 full board to an existing WiFi, rather than connecting a laptop and flight controller via WiFi that is being broadcast with an ESP WiFi board.
Brian Amin
@BAmercury
Oh I understand, so I guess if you wanted to connect to dronekit you would need to give the ip of the ESP: http://ardupilot.org/copter/docs/common-esp8266-telemetry.html#changing-the-wifi-ssid-and-password, looks like when you initially connect to the ESP you're given a gateway that you can connect to do the setup process, have you tried doing this?
And just to be sure you can ping that address they list from commandline and see if its receiving packets
Bob Jarvis
@zealtv
Hi All, I'm trying to access the ATTITUDE_QUATERNION mavlink message and it seems it's not being sent by my ardupilot board (NAVIO2 on an rpi). Listening to all messages coming through I am seeing these: (RAW_IMU, SCALED_IMU2, SCALED_PRESSURE, SYS_STATUS, POWER_STATUS, MEMINFO, MISSION_CURRENT, NAV_CONTROLLER_OUTPUT, SERVO_OUTPUT_RAW, RC_CHANNELS_RAW, RC_CHANNELS, AHRS, HWSTATUS, SYSTEM_TIME, EKF_STATUS_REPORT, VIBRATION, GLOBAL_POSITION_INT, ATTITUDE, AHRS2, AHRS3, VFR_HUD). Could someone point me in the right direction to enable the ATTITUDE_QUATERNION stream?
Jorge Costa
@JorgeCosta87
Hello, I'm having an error each team i connect the gimbal (STorM32), to the pixhawk : APIException: mode (6, 0) not available on mavlink definition
ERROR:dronekit:Exception in message handler for HEARTBEAT raise APIException("mode (%s, %s) not available on mavlink definition" % (m.custom_mode, m.base_mode))
APIException: mode (6, 0) not available on mavlink definition
CRITICAL:autopilot:STorM32 v0.96 v1.30 F103RC
CRITICAL:autopilot:OlliW 323BGC
anyone knows how to solve this ?
Joey Mansfield
@phatboysh
I'm having trouble getting rover to pivot turn. Have tried using different parameters for PIVOT_ANGLE and also using condition_yaw() from "Guided Mode Movement" but I don't think you can condition yaw on rover. It also seems PIVOT_ANGLE doesn't have any affect while in GUIDED mode. Any suggestions on how I can get a rover (configured to skid steer on tracks) to rotate in place?