Files
paparazzi/conf/modules/gps_ublox.xml
T
Gautier Hattenberger 4ae40567ed [hitl] rewrite support for hardware in the loop simulation (#3146)
- old way (based on ins_vectornav) is not supported anymore
- directly send sensor data and receive commands with a dedicated link
- examples with USB link for better results
- update sphinx documentation
- compilation in a single build
2023-10-31 14:48:55 +01:00

70 lines
2.4 KiB
XML

<!DOCTYPE module SYSTEM "module.dtd">
<module name="gps_ublox" dir="gps" task="sensors">
<doc>
<description>
U-blox GPS (UART)
Driver for u-blox GPS modules parsing the binary UBX protocol.
The reset variable allows us to manually restart the u-blox GPS. There are three modes:
- Hotstart (GPS_UBX_BOOTRESET = 1)
- Warmstart (GPS_UBX_BOOTRESET = 2)
- Coldstart (GPS_UBX_BOOTRESET = 3)
</description>
<configure name="UBX_GPS_PORT" value="UARTx" description="UART where the GPS is connected to (UART1, UART2, etc"/>
<configure name="UBX_GPS_BAUD" value="B38400" description="UART baud rate"/>
<configure name="GPS_UBX_BOOTRESET" value="0" description="Force a hot, warm or cold reset when the system boot up"/>
</doc>
<settings>
<dl_settings>
<dl_settings name="gps_ublox">
<dl_setting MIN="1" MAX="3" STEP="1" values="Hotstart|Warmstart|Coldstart" module="gps/gps_ubx" VAR="gps_ubx.reset" shortname="reset"/>
</dl_settings>
</dl_settings>
</settings>
<dep>
<depends>uart,gps</depends>
<provides>gps</provides>
</dep>
<header>
<file name="gps.h"/>
</header>
<init fun="gps_ubx_init()"/>
<periodic fun="gps_ubx_periodic_check()" freq="1." autorun="TRUE"/>
<event fun="gps_ubx_event()"/>
<datalink message="HITL_UBX" fun="gps_ubx_parse_HITL_UBX(buf)"/>
<makefile target="ap|fbw">
<configure name="UBX_GPS_PORT" default="$(GPS_PORT)" case="upper|lower"/>
<configure name="UBX_GPS_BAUD" default="$(GPS_BAUD)"/>
<file name="gps_ubx.c"/>
<define name="USE_$(UBX_GPS_PORT_UPPER)"/>
<define name="UBX_GPS_LINK" value="$(UBX_GPS_PORT_LOWER)"/>
<define name="$(UBX_GPS_PORT_UPPER)_BAUD" value="$(UBX_GPS_BAUD)"/>
<raw>
ifdef SECONDARY_GPS
ifneq (,$(findstring $(SECONDARY_GPS), ublox))
# this is the secondary GPS
$(TARGET).CFLAGS += -DGPS_SECONDARY_TYPE_H=\"modules/gps/gps_ubx.h\"
$(TARGET).CFLAGS += -DSECONDARY_GPS=GPS_UBX
else
$(TARGET).CFLAGS += -DGPS_TYPE_H=\"modules/gps/gps_ubx.h\"
$(TARGET).CFLAGS += -DPRIMARY_GPS=GPS_UBX
endif
else
# plain old single GPS usage
$(TARGET).CFLAGS += -DGPS_TYPE_H=\"modules/gps/gps_ubx.h\"
endif
</raw>
<test>
<define name="PRIMARY_GPS" value="GPS_UBX"/>
<define name="USE_UART2"/>
<define name="UBX_GPS_LINK" value="uart2"/>
</test>
</makefile>
</module>