Skip to content

Commit

Permalink
add sendArmingRequest
Browse files Browse the repository at this point in the history
  • Loading branch information
whoenig committed May 16, 2024
1 parent 3677e57 commit 9d6d724
Show file tree
Hide file tree
Showing 4 changed files with 32 additions and 0 deletions.
5 changes: 5 additions & 0 deletions include/crazyflie_cpp/Crazyflie.h
Original file line number Diff line number Diff line change
Expand Up @@ -158,6 +158,9 @@ class Crazyflie
std::string getFirmwareVersion();

std::string getDeviceTypeName();

void sendArmingRequest(bool arm);

void logReset();

void sendSetpoint(
Expand Down Expand Up @@ -764,6 +767,8 @@ class CrazyflieBroadcaster
return m_connection.statisticsDelta();
}

void sendArmingRequest(bool arm);

// High-Level setpoints
void takeoff(float height, float duration, uint8_t groupMask = 0);

Expand Down
7 changes: 7 additions & 0 deletions include/crazyflie_cpp/crtp.h
Original file line number Diff line number Diff line change
Expand Up @@ -1008,6 +1008,13 @@ struct crtpGetDeviceTypeNameResponse
static std::string name(const bitcraze::crazyflieLinkCpp::Packet &p);
};

class crtpArmingRequest
: public bitcraze::crazyflieLinkCpp::Packet
{
public:
crtpArmingRequest(bool arm);
};

// Port 15 (Link)
class crtpLatencyMeasurementRequest
: public bitcraze::crazyflieLinkCpp::Packet
Expand Down
13 changes: 13 additions & 0 deletions src/Crazyflie.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -108,6 +108,12 @@ std::string Crazyflie::getDeviceTypeName()
return res::name(p);
}

void Crazyflie::sendArmingRequest(bool arm)
{
crtpArmingRequest req(arm);
m_connection.send(req);
}

void Crazyflie::logReset()
{
crtpLogResetRequest request;
Expand Down Expand Up @@ -1215,6 +1221,13 @@ CrazyflieBroadcaster::CrazyflieBroadcaster(
: m_connection(link_uri)
{
}

void CrazyflieBroadcaster::sendArmingRequest(bool arm)
{
crtpArmingRequest req(arm);
m_connection.send(req);
}

void CrazyflieBroadcaster::takeoff(float height, float duration, uint8_t groupMask)
{
crtpCommanderHighLevelTakeoffRequest req(groupMask, height, duration);
Expand Down
7 changes: 7 additions & 0 deletions src/crtp.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -293,6 +293,13 @@ std::string crtpGetDeviceTypeNameResponse::name(const bitcraze::crazyflieLinkCpp
return p.payloadAtString(1);
}

crtpArmingRequest::crtpArmingRequest(bool arm)
: Packet(13, 0, 2)
{
setPayloadAt<uint8_t>(0, 1);
setPayloadAt<uint8_t>(1, arm);
}

#if 0
crtpFullStateSetpointRequest::crtpFullStateSetpointRequest(
float x, float y, float z,
Expand Down

0 comments on commit 9d6d724

Please sign in to comment.