Minor clarifications.

This commit is contained in:
wb2osz 2023-08-08 00:14:47 +01:00
parent 80bbf5a553
commit dfc063f905
2 changed files with 22 additions and 15 deletions

View File

@ -17,6 +17,7 @@
// along with this program. If not, see <http://www.gnu.org/licenses/>.
//
// TODO: Better error messages for examples here: http://lists.tapr.org/pipermail/aprssig_lists.tapr.org/2023-July/date.html
/*------------------------------------------------------------------
*
@ -549,14 +550,16 @@ void decode_aprs_print (decode_aprs_t *A) {
//dw_printf ("DEBUG decode_aprs_print stemp3=%s mfr=%s\n", stemp, A->g_mfr);
if (strlen(A->g_mfr) > 0) {
if (strcmp(A->g_dest, "APRS") == 0 || strcmp(A->g_dest, "BEACON") == 0) {
if (strcmp(A->g_dest, "APRS") == 0 ||
strcmp(A->g_dest, "BEACON") == 0 ||
strcmp(A->g_dest, "ID") == 0) {
strlcat (stemp, "\nUse of \"", sizeof(stemp));
strlcat (stemp, A->g_dest, sizeof(stemp));
strlcat (stemp, "\" in the destination field is obsolete.", sizeof(stemp));
strlcat (stemp, " You can help to improve the quality of APRS signals.", sizeof(stemp));
strlcat (stemp, "\nTell the sender (", sizeof(stemp));
strlcat (stemp, A->g_src, sizeof(stemp));
strlcat (stemp, ") to use the proper product code from", sizeof(stemp));
strlcat (stemp, ") to use the proper product identifier from", sizeof(stemp));
strlcat (stemp, " http://www.aprs.org/aprs11/tocalls.txt", sizeof(stemp));
}
else {
@ -582,7 +585,7 @@ void decode_aprs_print (decode_aprs_t *A) {
/* http://eng.usna.navy.mil/~bruninga/aprs/aprs11.html */
/* "The Antenna Gain in the PHG format on page 28 is in dBi." */
snprintf (phg, sizeof(phg), ", %d W height=%d %ddBi %s", A->g_power, A->g_height, A->g_gain, A->g_directivity);
snprintf (phg, sizeof(phg), ", %d W height(HAAT)=%dft=%.0fm %ddBi %s", A->g_power, A->g_height, DW_FEET_TO_METERS(A->g_height), A->g_gain, A->g_directivity);
strlcat (stemp, phg, sizeof(stemp));
}
@ -1213,7 +1216,7 @@ static void aprs_raw_nmea (decode_aprs_t *A, unsigned char *info, int ilen)
* It is three base-91 characters followed by "}".
* Examples: "4T} "4T} ]"4T}
*
* We can also have frequency specification -- http://www.aprs.org/info/freqspec.tx
* We can also have frequency specification -- http://www.aprs.org/info/freqspec.txt
*
* Warning: Some Kenwood radios add CR at the end, in apparent violation of the spec.
* Watch out so it doesn't get included when looking for equipment type suffix.
@ -1912,7 +1915,6 @@ static void aprs_message (decode_aprs_t *A, unsigned char *info, int ilen, int q
strlcpy (A->g_comment, p->message, sizeof(A->g_comment));
}
#warning = double check.
// Weather bulletins have addressee starting with NWS, SKY, CWA, or BOM.
// The protocol spec and http://www.aprs.org/APRS-docs/WX.TXT state that
@ -1994,11 +1996,13 @@ static void aprs_message (decode_aprs_t *A, unsigned char *info, int ilen, int q
text_color_set(DW_COLOR_ERROR);
dw_printf("ERROR: \"%s\" must be lower case \"ack\"\n", p->message);
}
else {
strlcpy (A->g_message_number, p->message + 3, sizeof(A->g_message_number));
if (strlen(A->g_message_number) == 0) {
text_color_set(DW_COLOR_ERROR);
dw_printf("ERROR: Message number is missing after \"ack\".\n");
}
}
// Xastir puts a carriage return on the end.
char *p = strchr(A->g_message_number, '\r');
@ -2018,11 +2022,13 @@ static void aprs_message (decode_aprs_t *A, unsigned char *info, int ilen, int q
text_color_set(DW_COLOR_ERROR);
dw_printf("ERROR: \"%s\" must be lower case \"rej\"\n", p->message);
}
else {
strlcpy (A->g_message_number, p->message + 3, sizeof(A->g_message_number));
if (strlen(A->g_message_number) == 0) {
text_color_set(DW_COLOR_ERROR);
dw_printf("ERROR: Message number is missing after \"rej\".\n");
}
}
// Xastir puts a carriage return on the end.
char *p = strchr(A->g_message_number, '\r');

View File

@ -111,8 +111,9 @@ typedef struct decode_aprs_s {
int g_power; /* Transmitter power in watts. */
int g_height; /* Antenna height above average terrain, feet. */
// TODO: rename to g_height_ft
int g_gain; /* Antenna gain in dB. */
int g_gain; /* Antenna gain in dBi. */
char g_directivity[12]; /* Direction of max signal strength */
@ -120,7 +121,7 @@ typedef struct decode_aprs_s {
float g_altitude_ft; /* Feet above median sea level. */
/* I used feet here because the APRS specification */
/* has units of feet for alititude. Meters would be */
/* has units of feet for altitude. Meters would be */
/* more natural to the other 96% of the world. */
char g_mfr[80]; /* Manufacturer or application. */