Nie możesz wybrać więcej, niż 25 tematów Tematy muszą się zaczynać od litery lub cyfry, mogą zawierać myślniki ('-') i mogą mieć do 35 znaków.

96 wiersze
2.6 KiB

  1. #include "GpsTracker.h"
  2. #include "Positions.h"
  3. #if _DEBUG
  4. #define MENU_DEFAULT_TIMEOUT 0
  5. #else
  6. #define MENU_DEFAULT_TIMEOUT 10000
  7. #endif
  8. bool bypassMenu = false;
  9. uint16_t menuTimeout = MENU_DEFAULT_TIMEOUT;
  10. void setup() {
  11. logging::setup();
  12. config::main::setup();
  13. rtc::setup();
  14. hardware::sim808::setup();
  15. positions::setup();
  16. }
  17. void loop() {
  18. debug::GPSTRACKER_DEBUG_COMMAND command = debug::GPSTRACKER_DEBUG_COMMAND::RUN;
  19. if (Serial && !bypassMenu) command = debug::menu(menuTimeout);
  20. if (command == debug::GPSTRACKER_DEBUG_COMMAND::RUN) bypassMenu = true;
  21. else menuTimeout = 0; //disable timeout once a command has been entered
  22. bypassMenu = command == debug::GPSTRACKER_DEBUG_COMMAND::RUN;
  23. switch (command) {
  24. case debug::GPSTRACKER_DEBUG_COMMAND::RUN:
  25. case debug::GPSTRACKER_DEBUG_COMMAND::ONCE:
  26. core::main();
  27. break;
  28. case debug::GPSTRACKER_DEBUG_COMMAND::RAM:
  29. debug::displayFreeRam();
  30. break;
  31. case debug::GPSTRACKER_DEBUG_COMMAND::BATTERY:
  32. debug::getAndDisplayBattery();
  33. break;
  34. case debug::GPSTRACKER_DEBUG_COMMAND::GPS_ON:
  35. gps::powerOn();
  36. break;
  37. case debug::GPSTRACKER_DEBUG_COMMAND::GPS_OFF:
  38. gps::powerOff();
  39. break;
  40. case debug::GPSTRACKER_DEBUG_COMMAND::GPS_GET:
  41. debug::getAndDisplayGpsPosition();
  42. break;
  43. case debug::GPSTRACKER_DEBUG_COMMAND::GPS_SET:
  44. debug::setFakeGpsPosition();
  45. break;
  46. case debug::GPSTRACKER_DEBUG_COMMAND::RTC_GET:
  47. debug::getAndDisplayRtcTime();
  48. break;
  49. case debug::GPSTRACKER_DEBUG_COMMAND::RTC_SET:
  50. debug::setRtcTime();
  51. break;
  52. case debug::GPSTRACKER_DEBUG_COMMAND::EEPROM_GET_CONFIG:
  53. debug::getAndDisplayEepromConfig();
  54. break;
  55. case debug::GPSTRACKER_DEBUG_COMMAND::EEPROM_RESET_CONFIG:
  56. config::main::reset();
  57. break;
  58. case debug::GPSTRACKER_DEBUG_COMMAND::EEPROM_GET_CONTENT:
  59. debug::getAndDisplayEepromContent();
  60. break;
  61. case debug::GPSTRACKER_DEBUG_COMMAND::EEPROM_GET_ENTRIES:
  62. debug::getAndDisplayEepromPositions();
  63. break;
  64. case debug::GPSTRACKER_DEBUG_COMMAND::EEPROM_GET_LAST_ENTRY:
  65. debug::getAndDisplayEepromLastPosition();
  66. break;
  67. case debug::GPSTRACKER_DEBUG_COMMAND::EEPROM_ADD_ENTRY:
  68. debug::addLastPositionToEeprom();
  69. break;
  70. case debug::GPSTRACKER_DEBUG_COMMAND::EEPROM_BACKUP_ENTRIES:
  71. positions::doBackup(true);
  72. break;
  73. case debug::GPSTRACKER_DEBUG_COMMAND::NOTIFY_FAILURES:
  74. debug::notifyFailures();
  75. break;
  76. case debug::GPSTRACKER_DEBUG_COMMAND::CLEAR_ALERTS:
  77. debug::clearAlerts();
  78. break;
  79. case debug::GPSTRACKER_DEBUG_COMMAND::SLEEP_DEEP:
  80. mainunit::deepSleep(10);
  81. break;
  82. default:
  83. NOTICE_MSG("loop", "Unsupported");
  84. }
  85. }