Ublox GPS autoconfiguration.
Automatically configure any Ublox GPS for paparazzi.
- configures all the messages, and the rates
- automatic baudrate detection
Warning: you still need to tell the driver, which paparazzi port you use.
Example for airframe file
Add to your firmware section: This example contains all possible configuration options, not all of them are mandatory!
<module name="gps_ubx_ucenter">
b'<define name="GPS_UBX_UCENTER_RATE" value="250" />\n '
b'<define name="GPS_UBX_NAV5_DYNAMICS" value="NAV5_DYN_PORTABLE|NAV5_DYN_FIXED|NAV5_DYN_STATIONARY|NAV5_DYN_PEDESTRIAN|NAV5_DYN_AUTOMOTIVE|NAV5_DYN_SEA|NAV5_DYN_AIRBORNE_1G|NAV5_DYN_AIRBORNE_2G|NAV5_DYN_AIRBORNE_4G" />\n '
b'<define name="USE_GPS_UBX_RXM_RAW" />\n '
b'<define name="GPS_UBX_ENABLE_NMEA_DATA_MASK" value="0x00|0xff" />\n '
</module>
Module configuration options
Define Options
- name:
GPS_UBX_UCENTER_RATE
value: 250
Description: Data output rate in ms
- name:
GPS_UBX_NAV5_DYNAMICS
value: NAV5_DYN_PORTABLE|NAV5_DYN_FIXED|NAV5_DYN_STATIONARY|NAV5_DYN_PEDESTRIAN|NAV5_DYN_AUTOMOTIVE|NAV5_DYN_SEA|NAV5_DYN_AIRBORNE_1G|NAV5_DYN_AIRBORNE_2G|NAV5_DYN_AIRBORNE_4G
Description: Dynamic model used by ublox GPS filter. Default:NAV5_DYN_AIRBORNE_2G
- name:
USE_GPS_UBX_RXM_RAW
value: None
Description: Activate raw measurments (only available on U-Blox T versions)
- name:
GPS_UBX_ENABLE_NMEA_DATA_MASK
value: 0x00|0xff
Description: NMEA is disabled by default (0x00). To enable NMEA and UBX, set MASK to 0xff.
Module functions
Init Functions
These initialization functions are called once on startup.
Periodic Functions
These functions are called periodically at the specified frequency from the module periodic loop.
Files
Header Files
The following headers are automatically included in modules.h
Source Files
Raw gps_ubx_ucenter.xml file:
<!DOCTYPE module SYSTEM "module.dtd">
<module name="gps_ubx_ucenter" dir="gps" task="sensors">
<doc>
<description>
Ublox GPS autoconfiguration.
Automatically configure any Ublox GPS for paparazzi.
- configures all the messages, and the rates
- automatic baudrate detection
Warning: you still need to tell the driver, which paparazzi port you use.
</description>
<define name="GPS_UBX_UCENTER_RATE" value="250" description="Data output rate in ms"/>
<define name="GPS_UBX_NAV5_DYNAMICS"
value="NAV5_DYN_PORTABLE|NAV5_DYN_FIXED|NAV5_DYN_STATIONARY|NAV5_DYN_PEDESTRIAN|NAV5_DYN_AUTOMOTIVE|NAV5_DYN_SEA|NAV5_DYN_AIRBORNE_1G|NAV5_DYN_AIRBORNE_2G|NAV5_DYN_AIRBORNE_4G"
description="Dynamic model used by ublox GPS filter. Default:NAV5_DYN_AIRBORNE_2G"/>
<define name="USE_GPS_UBX_RXM_RAW" description="Activate raw measurments (only available on U-Blox T versions)"/>
<define name="GPS_UBX_ENABLE_NMEA_DATA_MASK" value="0x00|0xff" description="NMEA is disabled by default (0x00). To enable NMEA and UBX, set MASK to 0xff."/>
</doc>
<settings>
<dl_settings NAME="ublox">
<dl_settings name="ucenter">
<dl_setting MAX="255" MIN="0" STEP="1" module="gps/gps_ubx_ucenter" VAR="gps_ubx_ucenter.sw_ver_h" shortname="sw_h"/>
<dl_setting MAX="255" MIN="0" STEP="1" module="gps/gps_ubx_ucenter" VAR="gps_ubx_ucenter.sw_ver_l" shortname="sw_l"/>
<dl_setting MAX="255" MIN="0" STEP="1" module="gps/gps_ubx_ucenter" VAR="gps_ubx_ucenter.hw_ver_h" shortname="hw_h"/>
<dl_setting MAX="255" MIN="0" STEP="1" module="gps/gps_ubx_ucenter" VAR="gps_ubx_ucenter.hw_ver_l" shortname="hw_l"/>
<dl_setting MAX="115200" MIN="4800" STEP="100" module="gps/gps_ubx_ucenter" VAR="gps_ubx_ucenter.baud_init" shortname="inibaud"/>
<dl_setting MAX="115200" MIN="4800" STEP="100" module="gps/gps_ubx_ucenter" VAR="gps_ubx_ucenter.baud_run" shortname="baud"/>
</dl_settings>
</dl_settings>
</settings>
<dep>
<depends>gps_ublox</depends>
</dep>
<header>
<file name="gps_ubx_ucenter.h"/>
</header>
<init fun="gps_ubx_ucenter_init()"/>
<periodic fun="gps_ubx_ucenter_periodic()" start="gps_ubx_ucenter_init()" freq="4." autorun="TRUE"/>
<makefile target="ap|fbw">
<file name="gps_ubx_ucenter.c"/>
<define name="GPS_UBX_UCENTER"/>
<test>
<define name="UBX_GPS_PORT" value="uart2"/>
<define name="USE_UART2"/>
</test>
</makefile>
</module>