I would like to use a DJI M210 drone for mapping. I'm actually using a LiDAR and the SLAM algorithm to map a GPS-denied environment. I would like to know, if someone knows, is it possible to control the drone in velocity, without the GPS (I would send Odometry to the drone from SLAM). I've read that the velocity control from DJI is only done by the GPS interpretation.
It is possible to control the method using only local coordinate system. I tested with various SLAM on various DJI drone/FCU with all kind of PC TK1 TX2 UPsqare NUC Manifold1 and 2(both cpu and gpu). Only problem is that you cant use the GPS mission way.
Use raw command way. remove all GPS related
sensor_msgs::Joy controlVelYawRate;
uint8_t flag = (DJISDK::VERTICAL_VELOCITY |
DJISDK::HORIZONTAL_VELOCITY |
DJISDK::YAW_RATE |
DJISDK::HORIZONTAL_GROUND |
DJISDK::STABLE_ENABLE);
controlVelYawRate.axes.push_back(y);
controlVelYawRate.axes.push_back(p);
controlVelYawRate.axes.push_back(r);
controlVelYawRate.axes.push_back(t);
controlVelYawRate.axes.push_back(flag);
ctrlBrakePub.publish(controlVelYawRate);