Subversion Repositories NaviCtrl

Compare Revisions

Ignore whitespace Rev 878 → Rev 879

/trunk/GPS.h
48,6 → 48,7
extern int PointPolyCheck( Vec2D_t P, Vec2D_t* V, int n );
extern u8 UpdateFlyzoneTimer;
extern u16 WP_Yaw_WithoutCF;
extern u8 GPSPos_Copy_to_Home(GPS_Pos_t* pGPSPosSrc);
 
void GPS_Init(void);
void GPS_Navigation(gps_data_t *pGPS_Data, GPS_Stick_t* pGPS_Stick);
/trunk/main.h
13,8 → 13,8
//-----------------------
 
#define VERSION_MAJOR 2
#define VERSION_MINOR 20
#define VERSION_PATCH 7
#define VERSION_MINOR 21
#define VERSION_PATCH 0
// 0 = A
// 1 = B
// 2 = C
/trunk/spi_slave.c
552,8 → 552,8
ToFlightCtrl.Param.Byte[3] = GPSData.Speed_Ground / 100; // m/s
ToFlightCtrl.Param.Int[2] = NaviData.HomePositionDeviation.Distance_dm; // dm //4&5
ToFlightCtrl.Param.sInt[3] = NaviData.HomePositionDeviation.Bearing; // deg //6&7
if(FC_WP_EventChannel > 254) FC_WP_EventChannel = 254; // Muss in SPI_NCCMD_GPSINFO bleiben! (siehe oben)
if(FC_WP_EventChannel)
// if(FC_WP_EventChannel > 254) FC_WP_EventChannel = 254; // 255 ist seit 2.21 Dauersignal
if(FC_WP_EventChannel) // Muss in SPI_NCCMD_GPSINFO bleiben! (siehe oben)
{
LogFC_WP_EventChannel = FC_WP_EventChannel; // to make sure that it will be logged
NaviData_WP.WP_Eventchannel = FC_WP_EventChannel; // to make sure that it will be logged
597,10 → 597,8
{
ToFlightCtrl.Param.sInt[5] = (s16)ToFC_AltitudeSetpoint_dm;
}
//DebugOut.Analog[] = ToFlightCtrl.Param.Byte[8];
if(BlitzSchuhConnected) ToFlightCtrl.Param.sInt[6] = TrigLogging.CountExternal + 1;
else ToFlightCtrl.Param.sInt[6] = 0;
 
break;
case SPI_NCCMD_HOTT_INFO:
if(NewWPL_Name) hott_index = 100;
/trunk/uart1.c
590,19 → 590,25
pPoint = (Point_t*)SerialMsg.pData;
if(pPoint->Position.Status == NEWDATA)
{
u32 start = 0;
//if(!(FC.StatusFlags & FC_STATUS_FLY)) PointList_Clear(); // flush the list
//pPoint->Index = 1; // must be one after empty list
u32 start = 0;
if(pPoint->Type == POINT_TYPE_HOME) // Set new Home-Pos.
{
GPSPos_Copy_to_Home(&(pPoint->Position)); // update home position
BeepTime = 50;
}
else
{ // fly to -> FollowMe
 
PointList_SetAt(pPoint);
if(FC.StatusFlags & FC_STATUS_FLY) PointList_WPActive(TRUE);
// GPS_pWaypoint = PointList_WPBegin(); // updates POI index
if(pPoint->Index) start = pPoint->Index-1;
if(CurrentlyFlyingWaypoints)
{
GPS_pWaypoint = PointList_WPBegin(start);
NewWaypointsReceived = 0; // Only an update
}
if(pPoint->Index) start = pPoint->Index-1;
if(CurrentlyFlyingWaypoints)
{
GPS_pWaypoint = PointList_WPBegin(start);
NewWaypointsReceived = 0; // Only an update
}
BeepTime = 50;
}
}
else
if((pPoint->Position.Status == SIMULATION) && !(FC.RealStatusFlags & FC_STATUS_MOTOR_RUN))
1731,6 → 1737,7
FollowMe.Event_Flag = 1;
FollowMe.Index = 1; // 0 = Delete List, 1 place at first entry in the list
FollowMe.Type = POINT_TYPE_WP;
FollowMe.Type = POINT_TYPE_HOME;
FollowMe.WP_EventChannelValue = 100; // set servo value
FollowMe.AltitudeRate = 0; // do not change height
FollowMe.Speed = 0; // rate to change the Position (0 = max)
/trunk/waypoints.h
9,6 → 9,7
#define POINT_TYPE_FS 2
#define POINT_TYPE_LAND 3
#define POINT_TYPE_FLYZONE 4
#define POINT_TYPE_HOME 5
 
// the waypoints list
#define MAX_LIST_LEN 101