Currently, you must use a mega board for this, and choose a free serial port.
Addind a GPS to a promini board should be possible with some soft Serial tweaking or sharing the Serial 0 with PC/Arduino, but the dev will be focused at first on the mega boards only.
The first functionality in the pipe is "Return To Home". ("Position Hold" or other things are planed after)
current status:
- a new define is added in the config.h file
Code: Select all
/* GPS
only available on MEGA boards (this might be possible on 328 based boards in the future)
if enabled, define here the Arduino Serial port number and the UART speed
note: only the RX PIN is used, the GPS is not configured by multiwii
the GPS must be configured to output NMEA sentences (which is generally the default conf for most GPS devices)
*/
#define GPS
#define GPS_SERIAL Serial3 // should be Serial2 for flyduino v2
#define GPS_BAUD 4800
- a new GPS.pde file is added to the project
- only NMEA GGA frames are recognized
- once the first fix is obtained, it becomes the home ref.
- for every following new coordinates, a distance to home and direction to home is calculated. An approximation is used to save computation time. This may differ from some OSD, but the accuracy should still be very good.
- the direction to home is indicated in the N/S/E/W referential.
- the magnetometer indicates now the direction of the multi nose.
Still to do:
- with the knowledge of
[*] - direction to home
[*] - compass heading
[*] - distance to home
, determine the action to do on the motors.
The real coordinates are not shown in the GUI.
The GPS altitude is not used.
compass heading (white arrow)
and home direction (grey arrow)
this does currently nothing, but the GPS RTH activation via checkbox is ready in the GUI
detection of the device: if the #define has been checked or not
activation of GPS RTH, does nothing for the moment
2 info here:
the distance to the home in meters
the number of satellites:
- if red, the fix is not ok
- if green, the fix is ok