I currently have CF2 installed on Ubuntu 22.04.2 for use with one Crazyflie 2.1, talking to a Optitrack mocap system via Motive on another machine, transmitting with a Crazyradio 2.0 on the Ubuntu machine. I currently have the crazyflie as an asset in my Motive system.
I have been trying to get the hello_world script going, but my server keeps crashing via the following error:
I'm pretty new to the Crazyflie ecosystem, so any help is appreciated. I have the mocap deck on my crazyflie. Here are my config files:
crazyflies.yaml:
# named list of all robots
robots:
cf231:
enabled: false
uri: radio://0/80/2M/E7E7E7E7E7
initial_position: [0, 0, 0]
type: cf21 # see robot_types
# firmware_params:
# kalman:
# pNAcc_xy: 1.0 # default 0.5
# firmware_logging:
# enabled: true
# custom_topics:
# topic_name3:
# frequency: 1
# vars: ["acc.x", "acc.y"]
cf5:
enabled: true
uri: radio://0/5/2M/E7E7E7E705
initial_position: [0, 0, 0]
type: cf21_mocap_deck # see robot_types
# firmware_params:
# kalman:
# pNAcc_xy: 1.0 # default 0.5
#firmware_logging:
# custom_topics:
# topic_name3:
# frequency: 1
# vars: ["acc.x", "acc.y", "acc.z"]
# Definition of the various robot types
robot_types:
cf21:
motion_capture:
enabled: true
# only if enabled; see motion_capture.yaml
marker: default_single_marker
dynamics: default
big_quad: false
battery:
voltage_warning: 3.8 # V
voltage_critical: 3.7 # V
# firmware_params:
# kalman:
# pNAcc_xy: 1.0 # default 0.5
#firmware_logging:
# enabled: true
# default_topics:
# pose:
# frequency: 1 # Hz
# custom_topics:
# topic_name3:
# frequency: 1
# vars: ["acc.x", "acc.y", "acc.z"]
cf21_mocap_deck:
motion_capture:
enabled: false # FALSE because I made it an asset in Motive. If not an asset, set to true.
# only if enabled; see motion_capture.yaml
marker: mocap_deck
dynamics: default
big_quad: false
battery:
voltage_warning: 3.8 # V
voltage_critical: 3.7 # V
# global settings for all robots
all:
# firmware logging for all drones (use robot_types/type_name to set per type, or
# robots/drone_name to set per drone)
firmware_logging:
enabled: true
default_topics:
# remove to disable default topic
pose:
frequency: 10 # Hz
status:
frequency: 1 # Hz
custom_topics:
topic_name1:
frequency: 10 # Hz
vars: ["stateEstimateZ.x", "stateEstimateZ.y", "stateEstimateZ.z", "pm.vbat"]
topic_name2:
frequency: 1 # Hz
vars: ["stabilizer.roll", "stabilizer.pitch", "stabilizer.yaw"]
# firmware parameters for all drones (use robot_types/type_name to set per type, or
# robots/drone_name to set per drone)
firmware_params:
commander:
enHighLevel: 1
stabilizer:
estimator: 2 # 1: complementary, 2: kalman
controller: 2 # 1: PID, 2: mellinger
# ring:
# effect: 16 # 6: double spinner, 7: solid color, 16: packetRate
# solidBlue: 255 # if set to solid color
# solidGreen: 0 # if set to solid color
# solidRed: 0 # if set to solid color
# headlightEnable: 0
locSrv:
extPosStdDev: 1e-3
extQuatStdDev: 0.5e-1
# kalman:
# resetEstimation: 1
broadcasts:
num_repeats: 15 # number of times broadcast commands are repeated
delay_between_repeats_ms: 1 # delay in milliseconds between individual repeats
motion_capture.yaml:
/motion_capture_tracking:
ros__parameters:
type: "optitrack"
hostname: "192.168.137.1"
mode: "libobjecttracker" # one of motionCapture,libRigidBodyTracker
topics:
poses:
qos:
mode: "sensor"
deadline: 100.0 # Hz
marker_configurations:
default: # for standard Crazyflie
offset: [0.0, 0.0, 0.0]
points:
p0: [ 0.0, 0.0, 0.022] # top
p1: [-0.042, 0.042, 0.0 ] # back left (M3)
p2: [-0.042, -0.042, 0.0 ] # back right (M2)
p3: [ 0.042, -0.042, 0.0 ] # front right (M1)
default_single_marker:
offset: [0.0, -0.01, -0.04]
points:
p0: [0.0177184,0.0139654,0.0557585]
mocap_deck:
offset: [0.0, 0.0, -0.01]
points:
p0: [0.029, 0.0, 0.0] # front
p1: [0.00, -0.03, 0.0] # right
p2: [-0.02, 0.0, 0.0] # back
p3: [0.00, 0.026, 0.0] # left
p4: [0.015, -0.015, ] # added my center one
medium_frame:
offset: [0.0, 0.0, -0.03]
points:
p0: [-0.00896228,-0.000716753,0.0716129]
p1: [-0.0156318,0.0997402,0.0508162]
p2: [0.0461693,-0.0881012,0.0380672]
p3: [-0.0789959,-0.0269793,0.0461144]
big_frame:
offset: [0.0, 0.0, -0.06]
points:
p0: [0.0558163,-0.00196302,0.0945539]
p1: [-0.0113941,0.00945842,0.0984811]
p2: [-0.0306277,0.0514879,0.0520456]
p3: [0.0535816,-0.0400775,0.0432799]
dynamics_configurations:
default:
max_velocity: [2, 2, 3] # m/s
max_angular_velocity: [20, 20, 10] # rad/s
max_roll: 1.4 #rad
max_pitch: 1.4 #rad
max_fitness_score: 0.001
# Rigid bodies will be automatically generated by the launch file
# rigid_bodies:
(note: also not sure I did the mocap part correctly. I have a marker setup different from the default, as can be seen above. I saw on a previous issue to leave the mocap_enabled: false if the object is an asset in Motive)
Any help on getting the server to quit dying is appreciated. Thanks!
Hello all,
I currently have CF2 installed on Ubuntu 22.04.2 for use with one Crazyflie 2.1, talking to a Optitrack mocap system via Motive on another machine, transmitting with a Crazyradio 2.0 on the Ubuntu machine. I currently have the crazyflie as an asset in my Motive system.
I have been trying to get the hello_world script going, but my server keeps crashing via the following error:
I'm pretty new to the Crazyflie ecosystem, so any help is appreciated. I have the mocap deck on my crazyflie. Here are my config files:
crazyflies.yaml:
motion_capture.yaml:
(note: also not sure I did the mocap part correctly. I have a marker setup different from the default, as can be seen above. I saw on a previous issue to leave the mocap_enabled: false if the object is an asset in Motive)
Any help on getting the server to quit dying is appreciated. Thanks!