35 #if PERIODIC_TELEMETRY
41 pprz_msg_send_BEBOP_ACTUATORS(trans,
dev, AC_ID,
68 #if PERIODIC_TELEMETRY
125 #pragma GCC diagnostic push
126 #pragma GCC diagnostic ignored "-Wcast-qual"
128 #pragma GCC diagnostic pop
143 for (
int i=0;i<4;i++) {
144 feedback[i].
idx = get_servo_idx(i);
146 feedback[i].
set.
rpm =
true;
154 for (
int i = 0; i < size; i++) {
Main include for ABI (AirBorneInterface).
#define ACT_FEEDBACK_BOARD_ID
bool autopilot_set_motors_on(bool motors_on)
turn motors on/off, eventually depending of the current mode set kill_throttle accordingly FIXME is i...
bool autopilot_get_motors_on(void)
get motors status
Core autopilot interface common to all firmwares.
static void send_bebop_actuators(struct transport_tx *trans, struct link_device *dev)
void actuators_bebop_init(void)
static uint8_t actuators_bebop_checksum(uint8_t *bytes, uint8_t size)
void actuators_bebop_commit(void)
struct ActuatorsBebop actuators_bebop
uint8_t led
Current led status.
#define ACTUATORS_BEBOP_TOGGLE_GPIO
Toggle GPIO (reset, red led, green led)
struct i2c_transaction i2c_trans
I2C transaction for communicating with the bebop BLDC driver.
uint16_t rpm_ref[4]
Reference RPM.
#define ACTUATORS_BEBOP_STOP_PROP
Stop the propellers.
#define ACTUATORS_BEBOP_ADDR
uint16_t rpm_obs[4]
Observed RPM.
#define ACTUATORS_BEBOP_START_PROP
Start the propellers.
#define ACTUATORS_BEBOP_SET_REF_SPEED
Set reference speed.
#define ACTUATORS_BEBOP_CLEAR_ERROR
Clear all current erros.
#define ACTUATORS_BEBOP_GET_OBS_DATA
Get observation data.
struct Electrical electrical
Interface for electrical status: supply voltage, current, battery status, etc.
float vsupply
supply voltage in V
volatile uint8_t buf[I2C_BUF_LEN]
Transaction buffer With I2C_BUF_LEN number of bytes.
enum I2CTransactionStatus status
Transaction status.
uint8_t slave_addr
Slave address.
bool i2c_blocking_transceive(struct i2c_periph *p, struct i2c_transaction *t, uint8_t s_addr, uint8_t len_w, uint16_t len_r)
Submit a write/read transaction and wait for it to complete.
bool i2c_blocking_transmit(struct i2c_periph *p, struct i2c_transaction *t, uint8_t s_addr, uint8_t len)
Submit a write only transaction and wait for it to complete.
@ I2CTransDone
transaction set to done by user level
Hardware independent API for actuators (servos, motor controllers).
struct act_feedback_t::act_feedback_set_t set
Bitset registering what is set as feedback.
uint8_t idx
General index of the actuators (generated in airframe.h)
struct Stabilization stabilization
General stabilization interface for rotorcrafts.
int32_t cmd[COMMANDS_NB]
output command vector, range from [-MAX_PPRZ:MAX_PPRZ] (store for messages)
static const struct usb_device_descriptor dev
int8_t register_periodic_telemetry(struct periodic_telemetry *_pt, uint8_t _id, telemetry_cb _cb)
Register a telemetry callback function.
Periodic telemetry system header (includes downlink utility and generated code).
#define DefaultPeriodic
Set default periodic telemetry.
unsigned int uint32_t
Typedef defining 32 bit unsigned int type.
unsigned char uint8_t
Typedef defining 8 bit unsigned char type.