Skip to content

Commit 4d595a4

Browse files
committed
resolve issue with default settings
1 parent 6d0aab9 commit 4d595a4

File tree

1 file changed

+42
-33
lines changed

1 file changed

+42
-33
lines changed

Source/HamMessenger/HamMessenger.ino

Lines changed: 42 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -166,7 +166,7 @@ const char version[] = __DATE__ " " __TIME__;
166166

167167
#include <EEPROM.h>
168168

169-
const char Initialized[] = {"Initialized 2025MAY27 v2"}; // change this to something unique if you want to re-init the EEPROM during flashing. useful when there has been a change to a settings array.
169+
const char Initialized[] = {"Initialized 2025JUN11 v1"}; // change this to something unique if you want to re-init the EEPROM during flashing. useful when there has been a change to a settings array.
170170

171171
#define EEPROM_SETTINGS_START_ADDR 1000
172172

@@ -203,9 +203,9 @@ const char version[] = __DATE__ " " __TIME__;
203203
unsigned char Settings_TypeIndex_APRS[] = { 0,0,0,0,1,
204204
2,0,0,1,1,
205205
2,2,3,3,4,4,
206-
0,1,3,1,2,4,5}; // this is the index in the array of the data arrays below
206+
0,1,3,0,1,2,3}; // this is the index in the array of the data arrays below
207207
unsigned char Settings_TypeIndex_GPS[] = {1,2,3};
208-
unsigned char Settings_TypeIndex_Display[] = {1,0,1,2,3,4};
208+
unsigned char Settings_TypeIndex_Display[] = {1,4,2,3,5,4};
209209
// data arrays
210210
bool Settings_TypeBool[5] = {true,true,true,true,false}; // aprs beacon enabled, display show position, scroll messages, auto ACK, invert
211211
int Settings_TypeInt[0] = {};
@@ -214,7 +214,7 @@ const char version[] = __DATE__ " " __TIME__;
214214
unsigned long Settings_TypeULong[2] = {300000, 2000}; // aprs beacon Idle Time, display timeout
215215
float Settings_TypeFloat[4] = {1.00000,0.00001,34.790040,-82.790672}; // aprs beacon distance, gps position tolerance, gps latitude, gps longitude
216216
char Settings_TypeString2[2][2] = {'n','\0'};
217-
char Settings_TypeString3[6][3] = {'0','0','\0'};
217+
char Settings_TypeString3[5][3] = {'0','0','\0'};
218218
char Settings_TypeString7[5][7] = {'N','O','C','A','L','L','\0'};
219219
char Settings_TypeString100[3][100] = {'T','e','s','t','\0'};
220220
char Settings_TempDispCharArr[100];
@@ -311,63 +311,63 @@ const char version[] = __DATE__ " " __TIME__;
311311
SETTINGS_APRS_BEACON_IDLE_TIME = 30000;
312312

313313
const char* strTemp1 = "NOCALL>APRS,WIDE1-1,WIDE2-1:!0000.00N/00000.00W>HamMessenger Ready";
314-
for (int i=0; i<sizeof(strTemp1);i++) {
314+
for (int i=0; i<=strlen(strTemp1);i++) {
315315
SETTINGS_APRS_RAW_PACKET[i] = strTemp1[i];
316316
}
317317

318318
const char* strTemp2 = "https://github.com/dalethomas81/HamMessenger";
319-
for (int i=0; i<sizeof(strTemp2);i++) {
319+
for (int i=0; i<=strlen(strTemp2);i++) {
320320
SETTINGS_APRS_COMMENT[i] = strTemp2[i];
321321
}
322322

323323
const char* strTemp3 = "Hi!";
324-
for (int i=0; i<sizeof(strTemp3);i++) {
324+
for (int i=0; i<=strlen(strTemp3);i++) {
325325
SETTINGS_APRS_MESSAGE[i] = strTemp3[i];
326326
}
327327

328+
//
328329
const char* strTemp4 = "NOCALL";
329-
for (int i=0; i<sizeof(strTemp4);i++) {
330+
for (int i=0; i<=strlen(strTemp4);i++) {
330331
SETTINGS_APRS_RECIPIENT_CALL[i] = strTemp4[i];
331332
}
332-
333333
SETTINGS_APRS_RECIPIENT_SSID[0] = '0';
334334
SETTINGS_APRS_RECIPIENT_SSID[1] = '\0';
335335

336+
//
336337
const char* strTemp5 = "NOCALL";
337-
for (int i=0; i<sizeof(strTemp5);i++) {
338+
for (int i=0; i<=strlen(strTemp5);i++) {
338339
SETTINGS_APRS_CALLSIGN[i] = strTemp5[i];
339340
}
340-
341341
SETTINGS_APRS_CALLSIGN_SSID[0] = '0';
342342
SETTINGS_APRS_CALLSIGN_SSID[1] = '\0';
343343

344+
//
344345
const char* strTemp6 = "APRS";
345-
for (int i=0; i<sizeof(strTemp6);i++) {
346+
for (int i=0; i<=strlen(strTemp6);i++) {
346347
SETTINGS_APRS_DESTINATION_CALL[i] = strTemp6[i];
347348
}
348-
349349
SETTINGS_APRS_DESTINATION_SSID[0] = '1';
350350
SETTINGS_APRS_DESTINATION_SSID[1] = '\0';
351351

352+
//
352353
const char* strTemp7 = "WIDE1";
353-
for (int i=0; i<sizeof(strTemp7);i++) {
354+
for (int i=0; i<=strlen(strTemp7);i++) {
354355
SETTINGS_APRS_PATH1_CALL[i] = strTemp7[i];
355356
}
356-
357357
SETTINGS_APRS_PATH1_SSID[0] = '1';
358358
SETTINGS_APRS_PATH1_SSID[1] = '\0';
359359

360+
//
360361
const char* strTemp8 = "WIDE2";
361-
for (int i=0; i<sizeof(strTemp8)-1;i++) {
362+
for (int i=0; i<=strlen(strTemp8)-1;i++) {
362363
SETTINGS_APRS_PATH2_CALL[i] = strTemp8[i];
363364
}
364-
365365
SETTINGS_APRS_PATH2_SSID[0] = '2';
366366
SETTINGS_APRS_PATH2_SSID[1] = '\0';
367367

368+
//
368369
SETTINGS_APRS_SYMBOL[0] = 'n';
369370
SETTINGS_APRS_SYMBOL[1] = '\0';
370-
371371
SETTINGS_APRS_SYMBOL_TABLE[0] = 's';
372372
SETTINGS_APRS_SYMBOL_TABLE[1] = '\0';
373373

@@ -414,12 +414,12 @@ const char version[] = __DATE__ " " __TIME__;
414414

415415
int address = EEPROM_SETTINGS_START_ADDR;
416416
for (int i=0;i<ARRAY_SIZE(Settings_TypeBool);i++){
417-
//Serial.print(F("bool:"));Serial.println(address);
417+
//Serial.print(F("bool:"));Serial.print(address);Serial.print(":");Serial.println(Settings_TypeBool[i]);
418418
EEPROM.put(address, Settings_TypeBool[i]);
419419
address = address + sizeof(Settings_TypeBool[i]);
420420
}
421421
for (int i=0;i<ARRAY_SIZE(Settings_TypeInt);i++){
422-
//Serial.print(F("int:"));Serial.println(address);
422+
//Serial.print(F("int:"));Serial.print(address);Serial.print(":");Serial.println(Settings_TypeInt[i]);
423423
EEPROM.put(address, Settings_TypeInt[i]);
424424
address = address + sizeof(Settings_TypeInt[i]);
425425
}
@@ -429,7 +429,7 @@ const char version[] = __DATE__ " " __TIME__;
429429
address = address + sizeof(Settings_TypeUInt[i]);
430430
}
431431
for (int i=0;i<ARRAY_SIZE(Settings_TypeLong);i++){
432-
//Serial.print(F("long:"));Serial.println(address);
432+
//Serial.print(F("long:"));Serial.print(address);Serial.print(":");Serial.println(Settings_TypeLong[i]);
433433
EEPROM.put(address, Settings_TypeLong[i]);
434434
address = address + sizeof(Settings_TypeLong[i]);
435435
}
@@ -439,37 +439,41 @@ const char version[] = __DATE__ " " __TIME__;
439439
address = address + sizeof(Settings_TypeULong[i]);
440440
}
441441
for (int i=0;i<ARRAY_SIZE(Settings_TypeFloat);i++){
442-
//Serial.print(F("float:"));Serial.println(address);
442+
//Serial.print(F("float:"));Serial.print(address);Serial.print(":");Serial.println(Settings_TypeFloat[i]);
443443
EEPROM.put(address, Settings_TypeFloat[i]);
444444
address = address + sizeof(Settings_TypeFloat[i]);
445445
}
446446
for (int i=0;i<ARRAY_SIZE(Settings_TypeString2);i++){
447-
//Serial.print(F("Settings_TypeString2:"));Serial.println(address);
447+
//Serial.print(F("Settings_TypeString2:"));Serial.print(address);Serial.print(":");
448448
for (int j=0;j<sizeof(Settings_TypeString2[i]);j++){
449449
EEPROM.put(address, Settings_TypeString2[i][j]);
450450
address = address + sizeof(Settings_TypeString2[i][j]);
451451
}
452+
//Serial.println(Settings_TypeString2[i]);
452453
}
453454
for (int i=0;i<ARRAY_SIZE(Settings_TypeString3);i++){
454-
//Serial.print(F("Settings_TypeString3:"));Serial.println(address);
455+
//Serial.print(F("Settings_TypeString3:"));Serial.print(address);Serial.print(":");
455456
for (int j=0;j<sizeof(Settings_TypeString3[i]);j++){
456457
EEPROM.put(address, Settings_TypeString3[i][j]);
457458
address = address + sizeof(Settings_TypeString3[i][j]);
458459
}
460+
//Serial.println(Settings_TypeString3[i]);
459461
}
460462
for (int i=0;i<ARRAY_SIZE(Settings_TypeString7);i++){
461-
//Serial.print(F("Settings_TypeString7:"));Serial.println(address);
463+
//Serial.print(F("Settings_TypeString7:"));Serial.print(address);Serial.print(":");
462464
for (int j=0;j<sizeof(Settings_TypeString7[i]);j++){
463465
EEPROM.put(address, Settings_TypeString7[i][j]);
464466
address = address + sizeof(Settings_TypeString7[i][j]);
465467
}
468+
//Serial.println(Settings_TypeString7[i]);
466469
}
467470
for (int i=0;i<ARRAY_SIZE(Settings_TypeString100);i++){
468-
//Serial.print(F("Settings_TypeString100:"));Serial.println(address);
471+
//Serial.print(F("Settings_TypeString100:"));Serial.print(address);Serial.print(":");
469472
for (int j=0;j<sizeof(Settings_TypeString100[i]);j++){
470473
EEPROM.put(address, Settings_TypeString100[i][j]);
471474
address = address + sizeof(Settings_TypeString100[i][j]);
472475
}
476+
//Serial.println(Settings_TypeString100[i]);
473477
}
474478
}
475479

@@ -482,12 +486,12 @@ const char version[] = __DATE__ " " __TIME__;
482486

483487
int address = EEPROM_SETTINGS_START_ADDR;
484488
for (int i=0;i<ARRAY_SIZE(Settings_TypeBool);i++){
485-
//Serial.print(F("bool:"));Serial.println(address);
489+
//Serial.print(F("bool:"));Serial.print(address);Serial.print(":");Serial.println(Settings_TypeBool[i]);
486490
EEPROM.get(address, Settings_TypeBool[i]);
487491
address = address + sizeof(Settings_TypeBool[i]);
488492
}
489493
for (int i=0;i<ARRAY_SIZE(Settings_TypeInt);i++){
490-
//Serial.print(F("int:"));Serial.println(address);
494+
//Serial.print(F("int:"));Serial.print(address);Serial.print(":");Serial.println(Settings_TypeInt[i]);
491495
EEPROM.get(address, Settings_TypeInt[i]);
492496
address = address + sizeof(Settings_TypeInt[i]);
493497
}
@@ -497,7 +501,7 @@ const char version[] = __DATE__ " " __TIME__;
497501
address = address + sizeof(Settings_TypeUInt[i]);
498502
}
499503
for (int i=0;i<ARRAY_SIZE(Settings_TypeLong);i++){
500-
//Serial.print(F("long:"));Serial.println(address);
504+
//Serial.print(F("long:"));Serial.print(address);Serial.print(":");Serial.println(Settings_TypeLong[i]);
501505
EEPROM.get(address, Settings_TypeLong[i]);
502506
address = address + sizeof(Settings_TypeLong[i]);
503507
}
@@ -507,36 +511,41 @@ const char version[] = __DATE__ " " __TIME__;
507511
address = address + sizeof(Settings_TypeULong[i]);
508512
}
509513
for (int i=0;i<ARRAY_SIZE(Settings_TypeFloat);i++){
510-
//Serial.print(F("float:"));Serial.println(address);
514+
//Serial.print(F("float:"));Serial.print(address);Serial.print(":");Serial.println(Settings_TypeFloat[i]);
511515
EEPROM.get(address, Settings_TypeFloat[i]);
512516
address = address + sizeof(Settings_TypeFloat[i]);
513517
}
514518
for (int i=0;i<ARRAY_SIZE(Settings_TypeString2);i++){
515-
//Serial.print(F("Settings_TypeString2:"));Serial.println(address);
519+
//Serial.print(F("Settings_TypeString2:"));Serial.print(address);Serial.print(":");
516520
for (int j=0;j<sizeof(Settings_TypeString2[i]);j++){
517521
EEPROM.get(address, Settings_TypeString2[i][j]);
518522
address = address + sizeof(Settings_TypeString2[i][j]);
519523
}
524+
//Serial.println(Settings_TypeString2[i]);
520525
}
521526
for (int i=0;i<ARRAY_SIZE(Settings_TypeString3);i++){
522-
//Serial.print(F("Settings_TypeString3:"));Serial.println(address);
527+
//Serial.print(F("Settings_TypeString3:"));Serial.print(address);Serial.print(":");
523528
for (int j=0;j<sizeof(Settings_TypeString3[i]);j++){
524529
EEPROM.get(address, Settings_TypeString3[i][j]);
525530
address = address + sizeof(Settings_TypeString3[i][j]);
526531
}
532+
//Serial.println(Settings_TypeString3[i]);
527533
}
528534
for (int i=0;i<ARRAY_SIZE(Settings_TypeString7);i++){
529-
//Serial.print(F("Settings_TypeString7:"));Serial.println(address);
535+
//Serial.print(F("Settings_TypeString7:"));Serial.print(address);Serial.print(":");
530536
for (int j=0;j<sizeof(Settings_TypeString7[i]);j++){
531537
EEPROM.get(address, Settings_TypeString7[i][j]);
532538
address = address + sizeof(Settings_TypeString7[i][j]);
533539
}
540+
//Serial.println(Settings_TypeString7[i]);
534541
}
535542
for (int i=0;i<ARRAY_SIZE(Settings_TypeString100);i++){
543+
//Serial.print(F("Settings_TypeString100:"));Serial.print(address);Serial.print(":");
536544
for (int j=0;j<sizeof(Settings_TypeString100[i]);j++){
537545
EEPROM.get(address, Settings_TypeString100[i][j]);
538546
address = address + sizeof(Settings_TypeString100[i][j]);
539547
}
548+
//Serial.println(Settings_TypeString100[i]);
540549
}
541550
}
542551

0 commit comments

Comments
 (0)