diff --git a/src/main/flight/gps_conversion.c b/src/main/flight/gps_conversion.c
index 7876ca9260..e19dd818cf 100644
--- a/src/main/flight/gps_conversion.c
+++ b/src/main/flight/gps_conversion.c
@@ -26,9 +26,9 @@
#define DIGIT_TO_VAL(_x) (_x - '0')
-uint32_t GPS_coord_to_degrees(char* coordinateString)
+uint32_t GPS_coord_to_degrees(const char* coordinateString)
{
- char *fieldSeparator, *remainingString;
+ const char *fieldSeparator, *remainingString;
uint8_t degress = 0, minutes = 0;
uint16_t fractionalMinutes = 0;
uint8_t digitIndex;
diff --git a/src/main/flight/gps_conversion.h b/src/main/flight/gps_conversion.h
index 5c77e33fa0..81adc0b01c 100644
--- a/src/main/flight/gps_conversion.h
+++ b/src/main/flight/gps_conversion.h
@@ -15,4 +15,4 @@
* along with Cleanflight. If not, see .
*/
-uint32_t GPS_coord_to_degrees(char* s);
+uint32_t GPS_coord_to_degrees(const char* coordinateString);
diff --git a/src/main/io/gps.c b/src/main/io/gps.c
index ee36661037..0167cd587c 100644
--- a/src/main/io/gps.c
+++ b/src/main/io/gps.c
@@ -403,7 +403,7 @@ bool gpsNewFrame(uint8_t c)
EOS increased the precision here, even if we think that the gps is not precise enough, with 10e5 precision it has 76cm resolution
with 10e7 it's around 1 cm now. Increasing it further is irrelevant, since even 1cm resolution is unrealistic, however increased
resolution also increased precision of nav calculations
-static uint32_t GPS_coord_to_degrees(char *s)
+static uint32_t GPS_coord_to_degrees(char *coordinateString)
{
char *p = s, *d = s;
uint8_t min, deg = 0;
diff --git a/src/test/Makefile b/src/test/Makefile
index ae1b517f42..abacb30e74 100644
--- a/src/test/Makefile
+++ b/src/test/Makefile
@@ -112,16 +112,16 @@ flight_imu_unittest : $(OBJECT_DIR)/flight/imu.o $(OBJECT_DIR)/flight_imu_unitte
$(CXX) $(CPPFLAGS) $(CXXFLAGS) -lpthread $^ -o $(OBJECT_DIR)/$@
-$(OBJECT_DIR)/io/gps_conversion.o : $(USER_DIR)/io/gps_conversion.c $(USER_DIR)/io/gps_conversion.h $(GTEST_HEADERS)
+$(OBJECT_DIR)/flight/gps_conversion.o : $(USER_DIR)/flight/gps_conversion.c $(USER_DIR)/flight/gps_conversion.h $(GTEST_HEADERS)
@mkdir -p $(dir $@)
- $(CXX) $(CPPFLAGS) $(CXXFLAGS) $(TEST_CFLAGS) -c $(USER_DIR)/io/gps_conversion.c -o $@
+ $(CXX) $(CPPFLAGS) $(CXXFLAGS) $(TEST_CFLAGS) -c $(USER_DIR)/flight/gps_conversion.c -o $@
$(OBJECT_DIR)/gps_conversion_unittest.o : $(TEST_DIR)/gps_conversion_unittest.cc \
- $(USER_DIR)/io/gps_conversion.h $(GTEST_HEADERS)
+ $(USER_DIR)/flight/gps_conversion.h $(GTEST_HEADERS)
@mkdir -p $(dir $@)
$(CXX) $(CPPFLAGS) $(CXXFLAGS) $(TEST_CFLAGS) -c $(TEST_DIR)/gps_conversion_unittest.cc -o $@
-gps_conversion_unittest : $(OBJECT_DIR)/io/gps_conversion.o $(OBJECT_DIR)/gps_conversion_unittest.o $(OBJECT_DIR)/gtest_main.a
+gps_conversion_unittest : $(OBJECT_DIR)/flight/gps_conversion.o $(OBJECT_DIR)/gps_conversion_unittest.o $(OBJECT_DIR)/gtest_main.a
$(CXX) $(CPPFLAGS) $(CXXFLAGS) -lpthread $^ -o $(OBJECT_DIR)/$@
@@ -135,5 +135,5 @@ $(OBJECT_DIR)/telemetry_hott_unittest.o : $(TEST_DIR)/telemetry_hott_unittest.cc
@mkdir -p $(dir $@)
$(CXX) $(CPPFLAGS) $(CXXFLAGS) $(TEST_CFLAGS) -c $(TEST_DIR)/telemetry_hott_unittest.cc -o $@
-telemetry_hott_unittest :$(OBJECT_DIR)/telemetry/hott.o $(OBJECT_DIR)/telemetry_hott_unittest.o $(OBJECT_DIR)/io/gps_conversion.o $(OBJECT_DIR)/gtest_main.a
+telemetry_hott_unittest :$(OBJECT_DIR)/telemetry/hott.o $(OBJECT_DIR)/telemetry_hott_unittest.o $(OBJECT_DIR)/flight/gps_conversion.o $(OBJECT_DIR)/gtest_main.a
$(CXX) $(CPPFLAGS) $(CXXFLAGS) -lpthread $^ -o $(OBJECT_DIR)/$@
diff --git a/src/test/unit/flight_imu_unittest.cc b/src/test/unit/flight_imu_unittest.cc
index 7f4c5cc726..3c562ccd3b 100644
--- a/src/test/unit/flight_imu_unittest.cc
+++ b/src/test/unit/flight_imu_unittest.cc
@@ -84,12 +84,17 @@ TEST(FlightImuTest, IsThrustFacingDownwards)
uint16_t acc_1G;
int16_t heading;
-flags_t f;
gyro_t gyro;
int16_t magADC[XYZ_AXIS_COUNT];
int32_t BaroAlt;
int16_t debug[4];
+uint8_t stateFlags;
+uint16_t flightModeFlags;
+uint8_t armingFlags;
+
+int32_t sonarAlt;
+
void gyroGetADC(void) {};
bool sensors(uint32_t mask)
diff --git a/src/test/unit/gps_conversion_unittest.cc b/src/test/unit/gps_conversion_unittest.cc
index 91b9dc6daf..97c20ad917 100644
--- a/src/test/unit/gps_conversion_unittest.cc
+++ b/src/test/unit/gps_conversion_unittest.cc
@@ -18,7 +18,7 @@
#include
#include
-#include "io/gps_conversion.h"
+#include "flight/gps_conversion.h"
#include "unittest_macros.h"
#include "gtest/gtest.h"
@@ -39,7 +39,7 @@ typedef struct gpsConversionExpectation_s {
TEST(GpsConversionTest, GPSCoordToDegrees_NMEA_Values)
{
- gpsConversionExpectation_t gpsConversionExpectations[] = {
+ const gpsConversionExpectation_t gpsConversionExpectations[] = {
{"0.0", 0},
{"000.0", 0},
{"00000.0000", 0},
@@ -59,7 +59,7 @@ TEST(GpsConversionTest, GPSCoordToDegrees_NMEA_Values)
// expect
for (uint8_t index = 0; index < testIterationCount; index ++) {
- gpsConversionExpectation_t *expectation = &gpsConversionExpectations[index];
+ const gpsConversionExpectation_t *expectation = &gpsConversionExpectations[index];
printf("iteration: %d\n", index);
uint32_t result = GPS_coord_to_degrees(expectation->coord);
diff --git a/src/test/unit/platform.h b/src/test/unit/platform.h
index 9767af24be..2a8ac9771b 100644
--- a/src/test/unit/platform.h
+++ b/src/test/unit/platform.h
@@ -18,3 +18,8 @@
#pragma once
#define BARO
+#define GPS
+#define TELEMETRY
+
+#define SERIAL_PORT_COUNT 4
+
diff --git a/src/test/unit/telemetry_hott_unittest.cc b/src/test/unit/telemetry_hott_unittest.cc
index d20f40214c..a7f06a7f36 100644
--- a/src/test/unit/telemetry_hott_unittest.cc
+++ b/src/test/unit/telemetry_hott_unittest.cc
@@ -41,7 +41,7 @@
#include "telemetry/telemetry.h"
#include "telemetry/hott.h"
-#include "io/gps_conversion.h"
+#include "flight/gps_conversion.h"
#include "unittest_macros.h"
@@ -88,8 +88,8 @@ TEST(TelemetryHottTest, UpdateGPSCoordinates2)
// Hampstead Heath, London
// 51.563886, -0.159960
- int32_t longitude = GPS_coord_to_degrees("5156.3886");
- int32_t latitude = -GPS_coord_to_degrees("015.9960");
+ uint32_t longitude = GPS_coord_to_degrees("5156.3886");
+ uint32_t latitude = -GPS_coord_to_degrees("015.9960");
// when
addGPSCoordinates(hottGPSMessage, longitude, latitude);
@@ -131,7 +131,7 @@ TEST(TelemetryHottTest, PrepareGPSMessage_Altitude1m)
// given
HOTT_GPS_MSG_t *hottGPSMessage = getGPSMessageForTest();
- f.GPS_FIX = 1;
+ stateFlags = GPS_FIX;
uint16_t altitudeInMeters = 1;
GPS_altitude = altitudeInMeters * (1 / 0.1f); // 1 = 0.1m
@@ -147,8 +147,10 @@ TEST(TelemetryHottTest, PrepareGPSMessage_Altitude1m)
int16_t debug[4];
+uint8_t stateFlags;
+
+
uint8_t GPS_numSat;
-flags_t f;
int32_t GPS_coord[2];
uint16_t GPS_speed; // speed in 0.1m/s
uint16_t GPS_distanceToHome; // distance to home point in meters