From 400382b1e74642d888bae7214844e023a4dbf827 Mon Sep 17 00:00:00 2001
From: jgromes <jan.gromes@gmail.com>
Date: Wed, 11 Sep 2024 21:05:01 +0200
Subject: [PATCH] [APRS] Fix string conversion in examples

---
 .../AFSK/AFSK_External_Radio/AFSK_External_Radio.ino  | 11 ++++++++---
 examples/APRS/APRS_Position/APRS_Position.ino         | 11 ++++++++---
 .../APRS/APRS_Position_LoRa/APRS_Position_LoRa.ino    | 10 ++++++++--
 3 files changed, 24 insertions(+), 8 deletions(-)

diff --git a/examples/AFSK/AFSK_External_Radio/AFSK_External_Radio.ino b/examples/AFSK/AFSK_External_Radio/AFSK_External_Radio.ino
index 6f6c6cc5..9419157b 100644
--- a/examples/AFSK/AFSK_External_Radio/AFSK_External_Radio.ino
+++ b/examples/AFSK/AFSK_External_Radio/AFSK_External_Radio.ino
@@ -66,15 +66,20 @@ void loop() {
   Serial.print(F("[APRS] Sending position ... "));
   
   // send a location without message or timestamp
-  int state = aprs.sendPosition("N0CALL", 0, "4911.67N", "01635.96E");
+  char destination[] = "N0CALL";
+  char latitude[] = "4911.67N";
+  char longitude[] = "01635.96E";
+  int state = aprs.sendPosition(destination, 0, latitude, longitude);
   delay(500);
   
   // send a location with message and without timestamp
-  state |= aprs.sendPosition("N0CALL", 0, "4911.67N", "01635.96E", "I'm here!");
+  char message[] = "I'm here!";
+  state |= aprs.sendPosition(destination, 0, latitude, longitude, message);
   delay(500);
   
   // send a location with message and timestamp
-  state |= aprs.sendPosition("N0CALL", 0, "4911.67N", "01635.96E", "I'm here!", "093045z");
+  char timestamp[] = "093045z";
+  state |= aprs.sendPosition(destination, 0, latitude, longitude, message, timestamp);
   delay(500);
 
   if(state == RADIOLIB_ERR_NONE) {
diff --git a/examples/APRS/APRS_Position/APRS_Position.ino b/examples/APRS/APRS_Position/APRS_Position.ino
index 5b237af7..4a43d37d 100644
--- a/examples/APRS/APRS_Position/APRS_Position.ino
+++ b/examples/APRS/APRS_Position/APRS_Position.ino
@@ -108,15 +108,20 @@ void loop() {
   Serial.print(F("[APRS] Sending position ... "));
   
   // send a location without message or timestamp
-  int state = aprs.sendPosition("N0CALL", 0, "4911.67N", "01635.96E");
+  char destination[] = "N0CALL";
+  char latitude[] = "4911.67N";
+  char longitude[] = "01635.96E";
+  int state = aprs.sendPosition(destination, 0, latitude, longitude);
   delay(500);
   
   // send a location with message and without timestamp
-  state |= aprs.sendPosition("N0CALL", 0, "4911.67N", "01635.96E", "I'm here!");
+  char message[] = "I'm here!";
+  state |= aprs.sendPosition(destination, 0, latitude, longitude, message);
   delay(500);
   
   // send a location with message and timestamp
-  state |= aprs.sendPosition("N0CALL", 0, "4911.67N", "01635.96E", "I'm here!", "093045z");
+  char timestamp[] = "093045z";
+  state |= aprs.sendPosition(destination, 0, latitude, longitude, message, timestamp);
   delay(500);
 
   if(state == RADIOLIB_ERR_NONE) {
diff --git a/examples/APRS/APRS_Position_LoRa/APRS_Position_LoRa.ino b/examples/APRS/APRS_Position_LoRa/APRS_Position_LoRa.ino
index 70681a95..1a77aadb 100644
--- a/examples/APRS/APRS_Position_LoRa/APRS_Position_LoRa.ino
+++ b/examples/APRS/APRS_Position_LoRa/APRS_Position_LoRa.ino
@@ -62,7 +62,8 @@ void setup() {
   // symbol:                      '>' (car)
   // callsign                     "N7LEM"
   // SSID                         1
-  state = aprs.begin('>', "N7LEM", 1);
+  char source[] = "N7LEM";
+  state = aprs.begin('>', source, 1);
   if(state == RADIOLIB_ERR_NONE) {
     Serial.println(F("success!"));
   } else {
@@ -77,7 +78,12 @@ void loop() {
   
   // send a location with message and timestamp
   // SSID is set to 1, as APRS over LoRa uses WIDE1-1 path by default
-  int state = aprs.sendPosition("GPS", 1, "4911.67N", "01635.96E", "I'm here!", "093045z");
+  char destination[] = "GPS";
+  char latitude[] = "4911.67N";
+  char longitude[] = "01635.96E";
+  char message[] = "I'm here!";
+  char timestamp[] = "093045z";
+  int state = aprs.sendPosition(destination, 1, latitude, longitude, message, timestamp);
   delay(500);
 
   // you can also send Mic-E encoded messages