mirror of
https://github.com/meshtastic/firmware.git
synced 2025-08-04 12:44:40 +00:00

* Move yet more stuff out of GPS.h and into file scope. * Protect code macros from eating semicolons. * Remove unused (and unimplemented) getDOPString. * clang-format with project style file on affected files. Signed-off-by: Christopher Hoover <ch@murgatroid.com>
64 lines
2.4 KiB
C
64 lines
2.4 KiB
C
#pragma once
|
|
|
|
// CASIC binary message definitions
|
|
// Reference: https://www.icofchina.com/d/file/xiazai/2020-09-22/20f1b42b3a11ac52089caf3603b43fb5.pdf
|
|
// ATGM33H-5N: https://www.icofchina.com/pro/mokuai/2016-08-01/4.html
|
|
// (https://www.icofchina.com/d/file/xiazai/2016-12-05/b5c57074f4b1fcc62ba8c7868548d18a.pdf)
|
|
|
|
// NEMA (Class ID - 0x4e) message IDs
|
|
#define CAS_NEMA_GGA 0x00
|
|
#define CAS_NEMA_GLL 0x01
|
|
#define CAS_NEMA_GSA 0x02
|
|
#define CAS_NEMA_GSV 0x03
|
|
#define CAS_NEMA_RMC 0x04
|
|
#define CAS_NEMA_VTG 0x05
|
|
#define CAS_NEMA_GST 0x07
|
|
#define CAS_NEMA_ZDA 0x08
|
|
#define CAS_NEMA_DHV 0x0D
|
|
|
|
// Size of a CAS-ACK-(N)ACK message (14 bytes)
|
|
#define CAS_ACK_NACK_MSG_SIZE 0x0E
|
|
|
|
// CFG-RST (0x06, 0x02)
|
|
// Factory reset
|
|
static const uint8_t _message_CAS_CFG_RST_FACTORY[] = {
|
|
0xFF, 0x03, // Fields to clear
|
|
0x01, // Reset Mode: Controlled Software reset
|
|
0x03 // Startup Mode: Factory
|
|
};
|
|
|
|
// CFG_RATE (0x06, 0x01)
|
|
// 1HZ update rate, this should always be the case after
|
|
// factory reset but update it regardless
|
|
static const uint8_t _message_CAS_CFG_RATE_1HZ[] = {
|
|
0xE8, 0x03, // Update Rate: 0x03E8 = 1000ms
|
|
0x00, 0x00 // Reserved
|
|
};
|
|
|
|
// CFG-NAVX (0x06, 0x07)
|
|
// Initial ATGM33H-5N configuration, Updates for Dynamic Mode, Fix Mode, and SV system
|
|
// Qwirk: The ATGM33H-5N-31 should only support GPS+BDS, however it will happily enable
|
|
// and use GPS+BDS+GLONASS iff the correct CFG_NAVX command is used.
|
|
static const uint8_t _message_CAS_CFG_NAVX_CONF[] = {
|
|
0x03, 0x01, 0x00, 0x00, // Update Mask: Dynamic Mode, Fix Mode, Nav Settings
|
|
0x03, // Dynamic Mode: Automotive
|
|
0x03, // Fix Mode: Auto 2D/3D
|
|
0x00, // Min SV
|
|
0x00, // Max SVs
|
|
0x00, // Min CNO
|
|
0x00, // Reserved1
|
|
0x00, // Init 3D fix
|
|
0x00, // Min Elevation
|
|
0x00, // Dr Limit
|
|
0x07, // Nav System: 2^0 = GPS, 2^1 = BDS 2^2 = GLONASS: 2^3
|
|
// 3=GPS+BDS, 7=GPS+BDS+GLONASS
|
|
0x00, 0x00, // Rollover Week
|
|
0x00, 0x00, 0x00, 0x00, // Fix Altitude
|
|
0x00, 0x00, 0x00, 0x00, // Fix Height Error
|
|
0x00, 0x00, 0x00, 0x00, // PDOP Maximum
|
|
0x00, 0x00, 0x00, 0x00, // TDOP Maximum
|
|
0x00, 0x00, 0x00, 0x00, // Position Accuracy Max
|
|
0x00, 0x00, 0x00, 0x00, // Time Accuracy Max
|
|
0x00, 0x00, 0x00, 0x00 // Static Hold Threshold
|
|
};
|