@@ -160,8 +160,6 @@ Mount::Mount(int stepsPerRADegree, int stepsPerDECDegree, LcdMenu* lcdMenu) {
160
160
_pitchCalibrationAngle = 0 ;
161
161
_rollCalibrationAngle = 0 ;
162
162
#endif
163
-
164
- readPersistentData ();
165
163
}
166
164
167
165
// ///////////////////////////////
@@ -236,91 +234,99 @@ void Mount::readPersistentData()
236
234
{
237
235
// Read the magic marker byte and state
238
236
uint16_t marker = EPROMStore::readInt16 (4 , 5 );
237
+ LOGV2 (DEBUG_INFO|DEBUG_EEPROM, F (" Mount: EEPROM: Magic Marker: %x " ), marker);
238
+
239
+ #if DEBUG_LEVEL & DEBUG_EEPROM
240
+ LOGV1 (DEBUG_EEPROM, ((marker & EEPROM_MAGIC_MASK) == EEPROM_MAGIC_MARKER) ? F (" EEPROM has values" ) : F (" EEPROM does NOT have values" ));
241
+ LOGV1 (DEBUG_EEPROM, ((marker & EEPROM_MAGIC_EXTENDED_MASK) == EEPROM_MAGIC_EXTENDED_MARKER) ? F (" EEPROM has extended values" ) : F (" EEPROM does NOT have extended values" ));
242
+ #endif
239
243
240
- LOGV2 (DEBUG_INFO, F (" Mount: EEPROM: Magic Marker: %x " ), marker);
241
244
242
245
if ((marker & EEPROM_MAGIC_MASK_RA_STEPS) == EEPROM_RA_STEPS_MARKER_BIT) {
243
246
_stepsPerRADegree = EPROMStore::read (6 ) + EPROMStore::read (7 ) * 256 ;
244
- LOGV2 (DEBUG_INFO,F (" Mount: EEPROM: RA Marker OK! RA steps/deg is %d" ), _stepsPerRADegree);
247
+ LOGV2 (DEBUG_INFO|DEBUG_EEPROM ,F (" Mount: EEPROM: RA Marker OK! RA steps/deg is %d" ), _stepsPerRADegree);
245
248
}
246
249
else {
247
- LOGV1 (DEBUG_INFO,F (" Mount: EEPROM: No stored value for RA steps" ));
250
+ LOGV1 (DEBUG_INFO|DEBUG_EEPROM ,F (" Mount: EEPROM: No stored value for RA steps" ));
248
251
}
249
252
250
253
if ((marker & EEPROM_MAGIC_MASK_DEC_STEPS) == EEPROM_DEC_STEPS_MARKER_BIT) {
251
254
_stepsPerDECDegree = EPROMStore::read (8 ) + EPROMStore::read (9 ) * 256 ;
252
- LOGV2 (DEBUG_INFO,F (" Mount: EEPROM: DEC Marker OK! DEC steps/deg is %d" ), _stepsPerDECDegree);
255
+ LOGV2 (DEBUG_INFO|DEBUG_EEPROM ,F (" Mount: EEPROM: DEC Marker OK! DEC steps/deg is %d" ), _stepsPerDECDegree);
253
256
}
254
257
else {
255
- LOGV1 (DEBUG_INFO,F (" Mount: EEPROM: No stored value for DEC steps" ));
258
+ LOGV1 (DEBUG_INFO|DEBUG_EEPROM ,F (" Mount: EEPROM: No stored value for DEC steps" ));
256
259
}
257
260
258
261
float speed = 1.0 ;
259
262
if ((marker & EEPROM_MAGIC_MASK_SPEED_FACTOR) == EEPROM_SPEED_FACTOR_MARKER_BIT) {
260
263
int adjust = EPROMStore::read (0 ) + EPROMStore::read (3 ) * 256 ;
261
264
speed = 1.0 + 1.0 * adjust / 10000.0 ;
262
- LOGV3 (DEBUG_INFO,F (" Mount: EEPROM: Speed Marker OK! Speed adjust is %d, speedFactor is %f" ), adjust, speed);
265
+ LOGV3 (DEBUG_INFO|DEBUG_EEPROM ,F (" Mount: EEPROM: Speed Marker OK! Speed adjust is %d, speedFactor is %f" ), adjust, speed);
263
266
}
264
267
else {
265
- LOGV1 (DEBUG_INFO,F (" Mount: EEPROM: No stored value for speed factor" ));
268
+ LOGV1 (DEBUG_INFO|DEBUG_EEPROM ,F (" Mount: EEPROM: No stored value for speed factor" ));
266
269
}
267
270
268
271
if ((marker & EEPROM_MAGIC_MASK_BACKLASH_STEPS) == EEPROM_BACKLASH_STEPS_MARKER_BIT) {
269
272
_backlashCorrectionSteps = EPROMStore::read (10 ) + EPROMStore::read (11 ) * 256 ;
270
- LOGV2 (DEBUG_INFO,F (" Mount: EEPROM: Backlash Steps Marker OK! Backlash correction is %d" ), _backlashCorrectionSteps);
273
+ LOGV2 (DEBUG_INFO|DEBUG_EEPROM ,F (" Mount: EEPROM: Backlash Steps Marker OK! Backlash correction is %d" ), _backlashCorrectionSteps);
271
274
}
272
275
else {
273
- LOGV1 (DEBUG_INFO,F (" Mount: EEPROM: No stored value for backlash correction" ));
276
+ LOGV1 (DEBUG_INFO|DEBUG_EEPROM ,F (" Mount: EEPROM: No stored value for backlash correction" ));
274
277
}
275
278
276
279
if ((marker & EEPROM_MAGIC_MASK_LATITUDE) == EEPROM_LATITUDE_MARKER_BIT) {
277
280
_latitude = 1 .0f * EPROMStore::readInt16 (12 , 13 ) / 100 .0f ;
278
- LOGV2 (DEBUG_INFO,F (" Mount: EEPROM: Latitude Marker OK! Latitude is %f" ), _latitude);
281
+ LOGV2 (DEBUG_INFO|DEBUG_EEPROM ,F (" Mount: EEPROM: Latitude Marker OK! Latitude is %f" ), _latitude);
279
282
}
280
283
else {
281
- LOGV1 (DEBUG_INFO,F (" Mount: EEPROM: No stored value for latitude" ));
284
+ LOGV1 (DEBUG_INFO|DEBUG_EEPROM ,F (" Mount: EEPROM: No stored value for latitude" ));
282
285
}
283
286
284
287
if ((marker & EEPROM_MAGIC_MASK_LONGITUDE) == EEPROM_LONGITUDE_MARKER_BIT) {
285
288
_longitude = 1 .0f * EPROMStore::readInt16 (14 , 15 ) / 100 .0f ;
286
- LOGV2 (DEBUG_INFO,F (" Mount: EEPROM: Longitude Marker OK! Longitude is %f" ), _longitude);
289
+ LOGV2 (DEBUG_INFO|DEBUG_EEPROM ,F (" Mount: EEPROM: Longitude Marker OK! Longitude is %f" ), _longitude);
287
290
}
288
291
else {
289
- LOGV1 (DEBUG_INFO,F (" Mount: EEPROM: No stored value for longitude" ));
292
+ LOGV1 (DEBUG_INFO|DEBUG_EEPROM ,F (" Mount: EEPROM: No stored value for longitude" ));
290
293
}
291
294
292
295
#if USE_GYRO_LEVEL == 1
293
296
if ((marker & EEPROM_MAGIC_MASK_PITCH_OFFSET) == EEPROM_PITCH_OFFSET_MARKER_BIT) {
294
297
uint16_t angleValue = EPROMStore::readInt16 (17 , 18 );
295
298
_pitchCalibrationAngle = (((long )angleValue) - 16384 ) / 100.0 ;
296
- LOGV3 (DEBUG_INFO,F (" Mount: EEPROM: Pitch Offset Marker OK! Pitch Offset is %x (%f)" ), angleValue, _pitchCalibrationAngle);
299
+ LOGV3 (DEBUG_INFO|DEBUG_EEPROM ,F (" Mount: EEPROM: Pitch Offset Marker OK! Pitch Offset is %x (%f)" ), angleValue, _pitchCalibrationAngle);
297
300
}
298
301
else {
299
- LOGV1 (DEBUG_INFO,F (" Mount: EEPROM: No stored value for Pitch Offset" ));
302
+ LOGV1 (DEBUG_INFO|DEBUG_EEPROM ,F (" Mount: EEPROM: No stored value for Pitch Offset" ));
300
303
}
301
304
302
305
if ((marker & EEPROM_MAGIC_MASK_ROLL_OFFSET) == EEPROM_ROLL_OFFSET_MARKER_BIT) {
303
306
uint16_t angleValue = EPROMStore::readInt16 (19 ,20 );
304
307
_rollCalibrationAngle = (((long )angleValue) - 16384 ) / 100.0 ;
305
- LOGV3 (DEBUG_INFO,F (" Mount: EEPROM: Roll Offset Marker OK! Roll Offset is %x (%f)" ), angleValue, _rollCalibrationAngle);
308
+ LOGV3 (DEBUG_INFO|DEBUG_EEPROM ,F (" Mount: EEPROM: Roll Offset Marker OK! Roll Offset is %x (%f)" ), angleValue, _rollCalibrationAngle);
306
309
}
307
310
else {
308
- LOGV1 (DEBUG_INFO,F (" Mount: EEPROM: No stored value for Roll Offset" ));
311
+ LOGV1 (DEBUG_INFO|DEBUG_EEPROM ,F (" Mount: EEPROM: No stored value for Roll Offset" ));
309
312
}
310
313
#endif
311
314
312
315
if ((marker & EEPROM_MAGIC_EXTENDED_MASK) == EEPROM_MAGIC_EXTENDED_MARKER) {
313
- LOGV2 (DEBUG_INFO,F (" Mount: EEPROM: Magic Marker is %x, reading extended" ), marker);
316
+ LOGV2 (DEBUG_INFO|DEBUG_EEPROM ,F (" Mount: EEPROM: Magic Marker is %x, reading extended" ), marker);
314
317
int16_t nextMarker = EPROMStore::readInt16 (21 ,22 );
315
- LOGV2 (DEBUG_INFO,F (" Mount: EEPROM: ExtendedMarker is %x" ), nextMarker);
318
+ LOGV2 (DEBUG_INFO|DEBUG_EEPROM ,F (" Mount: EEPROM: ExtendedMarker bitfield is %x" ), nextMarker);
316
319
if (nextMarker & EEPROM_PARKING_POS_MARKER_BIT){
317
320
_raParkingPos = EPROMStore::readInt32 (23 ); // 23-26
318
321
_decParkingPos = EPROMStore::readInt32 (27 ); // 27-30
319
- LOGV3 (DEBUG_INFO,F (" Mount: EEPROM: Parking position read as R:%l, D:%l" ), _raParkingPos, _decParkingPos);
322
+ LOGV3 (DEBUG_INFO|DEBUG_EEPROM,F (" Mount: EEPROM: Parking position read as R:%l, D:%l" ), _raParkingPos, _decParkingPos);
323
+ }
324
+ else {
325
+ LOGV1 (DEBUG_INFO|DEBUG_EEPROM,F (" Mount: EEPROM: No stored value for Parking position" ));
320
326
}
321
327
}
322
328
else {
323
- LOGV1 (DEBUG_INFO,F (" Mount: EEPROM: No ExtendedMarker present" ));
329
+ LOGV1 (DEBUG_INFO|DEBUG_EEPROM ,F (" Mount: EEPROM: No ExtendedMarker present" ));
324
330
}
325
331
326
332
setSpeedCalibration (speed, false );
@@ -341,16 +347,16 @@ void Mount::writePersistentData(int which, long val)
341
347
342
348
// If we're written something before...
343
349
uint16_t magicMarker = EPROMStore::read (5 ) * 256 + EPROMStore::read (4 );
344
- LOGV3 (DEBUG_INFO,F (" Mount: EEPROM Write(%d): Marker is %x" ), which, magicMarker);
350
+ LOGV3 (DEBUG_INFO|DEBUG_EEPROM ,F (" Mount: EEPROM Write(%d): Marker is %x" ), which, magicMarker);
345
351
if ((magicMarker & EEPROM_MAGIC_MASK) == EEPROM_MAGIC_MARKER) {
346
352
// ... read the current state ...
347
353
flag = EPROMStore::read (4 );
348
354
if ((magicMarker & EEPROM_MAGIC_EXTENDED_MASK) == EEPROM_MAGIC_EXTENDED_MARKER) {
349
355
extendedFlag = EPROMStore::readInt16 (21 , 22 );
350
- LOGV3 (DEBUG_INFO,F (" Mount: EEPROM Write: Marker is 0xBF, extended flag is %x (%d)" ), extendedFlag, extendedFlag);
356
+ LOGV3 (DEBUG_INFO|DEBUG_EEPROM ,F (" Mount: EEPROM Write: Marker is 0xBF, extended flag is %x (%d)" ), extendedFlag, extendedFlag);
351
357
}
352
358
else {
353
- LOGV3 (DEBUG_INFO,F (" Mount: EEPROM Write: Marker is 0xBE, flag is %x (%d)" ), flag, flag);
359
+ LOGV3 (DEBUG_INFO|DEBUG_EEPROM ,F (" Mount: EEPROM Write: Marker is 0xBE, flag is %x (%d)" ), flag, flag);
354
360
}
355
361
}
356
362
switch (which) {
@@ -360,7 +366,7 @@ void Mount::writePersistentData(int which, long val)
360
366
flag |= EEPROM_RA_STEPS_BIT;
361
367
loByteLocation = 6 ;
362
368
hiByteLocation = 7 ;
363
- LOGV2 (DEBUG_INFO,F (" Mount: EEPROM Write: Updating RA steps to %d" ), val);
369
+ LOGV2 (DEBUG_INFO|DEBUG_EEPROM ,F (" Mount: EEPROM Write: Updating RA steps to %d" ), ( int ) val);
364
370
}
365
371
break ;
366
372
@@ -370,7 +376,7 @@ void Mount::writePersistentData(int which, long val)
370
376
flag |= EEPROM_DEC_STEPS_BIT;
371
377
loByteLocation = 8 ;
372
378
hiByteLocation = 9 ;
373
- LOGV2 (DEBUG_INFO,F (" Mount: EEPROM Write: Updating DEC steps to %d" ), val);
379
+ LOGV2 (DEBUG_INFO|DEBUG_EEPROM ,F (" Mount: EEPROM Write: Updating DEC steps to %d" ), ( int ) val);
374
380
}
375
381
break ;
376
382
@@ -380,7 +386,7 @@ void Mount::writePersistentData(int which, long val)
380
386
flag |= EEPROM_SPEED_FACTOR_BIT;
381
387
loByteLocation = 0 ;
382
388
hiByteLocation = 3 ;
383
- LOGV2 (DEBUG_INFO,F (" Mount: EEPROM Write: Updating Speed factor to %d" ), val);
389
+ LOGV2 (DEBUG_INFO|DEBUG_EEPROM ,F (" Mount: EEPROM Write: Updating Speed factor to %d" ), ( int ) val);
384
390
}
385
391
break ;
386
392
@@ -390,7 +396,7 @@ void Mount::writePersistentData(int which, long val)
390
396
flag |= EEPROM_BACKLASH_STEPS_BIT;
391
397
loByteLocation = 10 ;
392
398
hiByteLocation = 11 ;
393
- LOGV2 (DEBUG_INFO,F (" Mount: EEPROM Write: Updating Backlash to %d" ), val);
399
+ LOGV2 (DEBUG_INFO|DEBUG_EEPROM ,F (" Mount: EEPROM Write: Updating Backlash to %d" ), ( int ) val);
394
400
}
395
401
break ;
396
402
@@ -400,7 +406,7 @@ void Mount::writePersistentData(int which, long val)
400
406
flag |= EEPROM_LATITUDE_BIT;
401
407
loByteLocation = 12 ;
402
408
hiByteLocation = 13 ;
403
- LOGV2 (DEBUG_INFO,F (" Mount: EEPROM Write: Updating Latitude to %d" ), val);
409
+ LOGV2 (DEBUG_INFO|DEBUG_EEPROM ,F (" Mount: EEPROM Write: Updating Latitude to %d" ), ( int ) val);
404
410
}
405
411
break ;
406
412
@@ -410,7 +416,7 @@ void Mount::writePersistentData(int which, long val)
410
416
flag |= EEPROM_LONGITUDE_BIT;
411
417
loByteLocation = 14 ;
412
418
hiByteLocation = 15 ;
413
- LOGV2 (DEBUG_INFO,F (" Mount: EEPROM Write: Updating Longitude to %d" ), val);
419
+ LOGV2 (DEBUG_INFO|DEBUG_EEPROM ,F (" Mount: EEPROM Write: Updating Longitude to %d" ), ( int ) val);
414
420
}
415
421
break ;
416
422
@@ -420,7 +426,7 @@ void Mount::writePersistentData(int which, long val)
420
426
flag |= EEPROM_PITCH_OFFSET_BIT;
421
427
loByteLocation = 17 ;
422
428
hiByteLocation = 18 ;
423
- LOGV2 (DEBUG_INFO,F (" Mount: EEPROM Write: Updating Pitch Offset to %d" ), val);
429
+ LOGV2 (DEBUG_INFO|DEBUG_EEPROM ,F (" Mount: EEPROM Write: Updating Pitch Offset to %d" ), ( int ) val);
424
430
}
425
431
break ;
426
432
@@ -430,7 +436,7 @@ void Mount::writePersistentData(int which, long val)
430
436
flag |= EEPROM_ROLL_OFFSET_BIT;
431
437
loByteLocation = 19 ;
432
438
hiByteLocation = 20 ;
433
- LOGV2 (DEBUG_INFO,F (" Mount: EEPROM Write: Updating Roll Offset to %d" ), val);
439
+ LOGV2 (DEBUG_INFO|DEBUG_EEPROM ,F (" Mount: EEPROM Write: Updating Roll Offset to %d" ), ( int ) val);
434
440
}
435
441
break ;
436
442
@@ -442,30 +448,30 @@ void Mount::writePersistentData(int which, long val)
442
448
extendedFlag |= EEPROM_PARKING_POS_MARKER_BIT;
443
449
if (which == EEPROM_RA_PARKING_POS ){
444
450
EPROMStore::updateInt32 (23 , val);
445
- LOGV2 (DEBUG_INFO,F (" Mount: EEPROM Write: Updating RA Parking Pos to %l at 23-26" ), val);
451
+ LOGV2 (DEBUG_INFO|DEBUG_EEPROM ,F (" Mount: EEPROM Write: Updating RA Parking Pos to %l at 23-26" ), val);
446
452
}
447
453
else {
448
454
EPROMStore::updateInt32 (27 , val);
449
- LOGV2 (DEBUG_INFO,F (" Mount: EEPROM Write: Updating DEC Parking Pos to %l at 27-30" ), val);
455
+ LOGV2 (DEBUG_INFO|DEBUG_EEPROM ,F (" Mount: EEPROM Write: Updating DEC Parking Pos to %l at 27-30" ), val);
450
456
}
451
457
}
452
458
break ;
453
459
}
454
460
455
461
456
462
if (writeExtended) {
457
- LOGV3 (DEBUG_INFO,F (" Mount: EEPROM Write: New Marker is 0xBF, extended flag is %x (%d)" ), extendedFlag, extendedFlag);
463
+ LOGV3 (DEBUG_INFO|DEBUG_EEPROM ,F (" Mount: EEPROM Write: New Marker is 0xBF, extended flag is %x (%d)" ), extendedFlag, extendedFlag);
458
464
EPROMStore::update (5 , EEPROM_MAGIC_EXTENDED_MARKER >> 8 );
459
465
EPROMStore::updateInt16 (21 , 22 , extendedFlag);
460
466
}
461
467
else {
462
- LOGV4 (DEBUG_INFO,F (" Mount: EEPROM Write: New Marker is %d, flag is %x (%d)" ), magicMarker, flag, flag);
468
+ LOGV4 (DEBUG_INFO|DEBUG_EEPROM ,F (" Mount: EEPROM Write: New Marker is %d, flag is %x (%d)" ), magicMarker, flag, flag);
463
469
EPROMStore::update (4 , flag);
464
470
EPROMStore::update (5 , magicMarker >> 8 );
465
471
472
+ LOGV5 (DEBUG_INFO|DEBUG_EEPROM,F (" Mount: EEPROM Write: Writing %x to %d and %x to %d" ), (int )(val & 0x00FF ), loByteLocation, (int )((val >> 8 ) & 0x00FF ), hiByteLocation);
466
473
EPROMStore::update (loByteLocation, val & 0x00FF );
467
474
EPROMStore::update (hiByteLocation, (val >> 8 ) & 0x00FF );
468
- LOGV5 (DEBUG_INFO,F (" Mount: EEPROM Write: Wrote %x to %d and %x to %d" ), val & 0x00FF , loByteLocation, (val >> 8 ) & 0x00FF , hiByteLocation);
469
475
}
470
476
}
471
477
0 commit comments