Commit Graph

288 Commits

Author SHA1 Message Date
Anthony Good
b41b7dbfe8 2020.09.04.01
FEATURE_NEXTION_DISPLAY
          Added new bit value to gVS (various statuses): configuration_dirty 65536
        FEATURE_AUTOPARK
          Cleaned up some code for the \Y command that may have had a bug
2020-09-03 21:46:26 -04:00
Anthony Good
48a4583abb 2020.09.02.01
Settings Files
          setting ANALOG_AZ_FULL_CCW renamed to ANALOG_AZ_FULL_CCW_EEPROM_INITIALIZE
          setting ANALOG_AZ_FULL_CW renamed to ANALOG_AZ_FULL_CW_EEPROM_INITIALIZE
          setting ANALOG_EL_0_DEGREES renamed to ANALOG_EL_FULL_DOWN_EEPROM_INITIALIZE
          setting ANALOG_EL_MAX_ELEVATION renamed to ANALOG_EL_FULL_UP_EEPROM_INITIALIZE
          Added additional comments for clarification
        FEATURE_NEXTION_DISPLAY
          Fixed conflicts between moon, sun, and satellite API variables and issues with gMSS variable
2020-09-02 18:50:07 -04:00
Anthony Good
e2401a95d5 fixed typo in rotator_debug_log_activation.h 2020-09-01 16:28:25 -04:00
Anthony Good
975a9ec4ce 2020.09.01.02
Overlap functionality can now be disabled by commenting out define ANALOG_AZ_OVERLAP_DEGREES in settings file
        Setting AZIMUTH_STARTING_POINT_DEFAULT renamed to AZIMUTH_STARTING_POINT_EEPROM_INITIALIZE
        Setting AZIMUTH_ROTATION_CAPABILITY_DEFAULT renamed to AZIMUTH_ROTATION_CAPABILITY_EEPROM_INITIALIZE
2020-09-01 16:19:32 -04:00
Anthony Good
3eb13727c1 2020.09.01.01
FEATURE_NEXTION_DISPLAY & FEATURE_PARK
          Added vPA and vPE API variables for park azimuth and elevation settings
          Added vAT API variable for autopark time setting in minutes
        FEATURE_NEXTION_DISPLAY
          Added transient user messaging capability for vSS1 and vSS2 via request_transient_message() call
          \PA or \PE command from Nextion pushes output to vSS1 in transient message
        Now updating software version date based on UTC date, not Eastern US date.  G'day, mates! :-)
2020-08-31 23:02:52 -04:00
Anthony Good
0c840987e1 2020.08.30.01
FEATURE_PARK
          The park azimuth and elevation is now stored in the EEPROM configuration
          Settings PARK_AZIMUTH and PARK_ELEVATION have been deprecated
          The \P command has been enhanced:
            \PA[x][x][x] - set the park azimuth
            \PE[x][x][x] - set the park elevation
            \PA or \PE (no parameter) - report current park azimuth and elevation
            \P still initiates park
        FEATURE_NEXTION_DISPLAY & FEATURE_SATELLITE_TRACKING
          Changing the current satellite on the Nextion display no longer echoes the command output on the control port
2020-08-30 17:06:43 -04:00
Anthony Good
3358207202 2020.08.29.02
FEATURE_CLOCK
          Fixed bug with CLOCK_DEFAULT_*_AT_BOOTUP settings not being used at boot up
          \O (Oscar) command (set clock manually) will now optionally take seconds in the argument (i.e. \O202008292032 or \O20200829203255)
        FEATURE_SATELLITE_TRACKING & FEATURE_CLOCK
          The \O (Oscar) command (set clock manually) now resets the satellite data array so it's recalculated using the new time setting
        FEATURE_NEXTION_DISPLAY & FEATURE_AUTOPARK
          Added an addition bit value to API variable gVS (various statuses), autopark_active 32768
        FEATURE_NEXTION_DISPLAY
          Enhanced initialization routine to retry if "i'm alive" bytes are not received
          Additional logging in DEBUG_NEXTION_DISPLAY_INIT
2020-08-29 21:07:36 -04:00
Anthony Good
d23527048f 2020.08.29.01
FEATURE_SATELLITE_TRACKING
          Yet another significant update to service_calc_satellite_data() - next AOS and LOS calculations are now accurate within 5 seconds!
2020-08-29 14:14:16 -04:00
Anthony Good
efc1ae2edf 2020.08.28.01
FEATURE_NEXTION_DISPLAY & FEATURE_SATELLITE_TRACKING
          Fixed bug with vSS1 degrees symbol
2020-08-28 16:22:40 -04:00
Anthony Good
929df3e135 2020.08.26.03
FEATURE_SATELLITE_TRACKING
          Even more optimizations!  It's working great!
        FEATURE_NEXTION_DISPLAY
          Fixed bug with gMSS API variable introduced with satellite related API variable code
2020-08-26 22:09:54 -04:00
Anthony Good
fb3a23e9f0 2020.08.26.02
FEATURE_SATELLITE_TRACKING
          Significant updates to next AOS and LOS time calculations.  This is some crazy code that throttles the calculation resolution back depending on the amount of time the calculation has been running.
          Better handling of TLE loading at boot up and handling a corrupt TLE file
2020-08-26 13:08:48 -04:00
Anthony Good
40f9f57b80 2020.08.25.02
FEATURE_SATELLITE_TRACKING
          Significant changes to the satellite data array updating algorithm
          More debugging code everywhere
          Improved AOS detection consistency
          Made it Harder Better Faster Stronger
2020-08-25 23:20:09 -04:00
Anthony Good
6842f98d8b 2020.08.25.01
DEBUG_SATELLITE_ARRAY_ORDER - additional debugging code
2020-08-25 10:08:27 -04:00
Anthony Good
55f3be43dd 2020.08.24.02
DEBUG_LOOP - additional code for various new subroutines
2020-08-24 22:56:02 -04:00
Anthony Good
3ae6de3b29 2020.08.24.01
FEATURE_NEXTION_DISPLAY & FEATURE_SATELLITE_TRACKING
          Added vSatNx, vSatOx, and vSatAx API variables which send a list of satellites and their next AOS time
          Added NEXTION_NUMBER_OF_NEXT_SATELLITES setting.  This determines how many satellites are sent via the vSatNx, vSatOx, and vSatAx API variables
          https://github.com/k3ng/k3ng_rotator_controller/wiki/425-Human-Interface:-Nextion-Display for more information
2020-08-24 20:36:30 -04:00
Anthony Good
3c7513ddf8 2020.08.23.01
The \X0 command (clear azimuth and elevation calibration / offsets) is now available without FEATURE_MOON_TRACKING and FEATURE_SUN_TRACKING enabled
        FEATURE_SATELLITE_TRACKING
          The \| list satellites command is now sorted by next AOS time.
2020-08-23 21:29:25 -04:00
Anthony Good
2e3dd204ed 2020.08.20.01
FEATURE_SATELLITE_TRACKING
          Removed FEATURE_SATELLITE_TRACKING_MULTI_SAT_AOS_LOS.  It's all within FEATURE_SATELLITE_TRACKING now.  We're not going to get satellite tracking to fit on a Nano, so no need to break out sub-features for memory saving.
          Significant updates to the \| (list satellites command).  It now displays current az, el, lat, long, next aos, next los, next aos max el, time to next aos, and aos status.  Updating is done in the background.  This is some cool $41t.
        FEATURE_NEXTION_DISPLAY
          Fixed bug with vSS2 API variable and Parked and Parking messages
        Added OPTION_CLI_VT100 for sending VT100 escape codes.  More on this later.
2020-08-20 20:39:38 -04:00
Anthony Good
1a8e2be355 2020.08.19.01
FEATURE_NEXTION_DISPLAY
          Fixed bugs with gSC and gL API variables.  I picked the wrong week to quit sniffing glue.
2020-08-19 08:00:04 -04:00
Anthony Good
8980264cbc 2020.08.18.01
Elimated the need for avr/wdt.h include file
        FEATURE_SATELLITE_TRACKING
          Refactoring service_calc_satellite_data() to do all satellite az, el, lat, long, next AOS, and next LOS calculations.
          Enhanced the satellite[] struct to contain more information.  Going to have service_calc_satellite_data() populate this.
2020-08-18 20:32:33 -04:00
Anthony Good
68b56e3c5e 2020.08.17.01
FEATURE_NEXTION_DISPLAY
          Removed languages from gSC API variable and added two new bit values:
            PARK 2048
            AUTOPARK 4096
          Create new API variable gL for language
            ENGLISH 1
            SPANISH 2
            CZECH 4
            PORTUGUESE_BRASIL 8
            GERMAN 16
            FRENCH 32
        FEATURE_SATELLITE_TRACKING
          Created FEATURE_SATELLITE_TRACKING_MULTI_SAT_AOS_LOS
            Created \& command which prints out the next AOS and LOS for each satellite
2020-08-17 22:00:23 -04:00
Anthony Good
307c95767a 2020.08.15.01
FEATURE_SATELLITE_TRACKING
          The \% command (print current satellite AOS and LOS times) now runs asynchronously in the background
2020-08-15 08:37:44 -04:00
Anthony Good
db84b47013 2020.08.13.01
FEATURE_SATELLITE_TRACKING
          gSC API Variable
            This is now the first variable written to the display after initialization
            Added additional capability but values
              ENGLISH 2048
              SPANISH 4096
              CZECH 8192
              PORTUGUESE_BRASIL 16384
              GERMAN 32768
              FRENCH 65536
          Language Support (rotator_language.h)
            NEXTION_GPS_STRING
            NEXTION_PARKING_STRING
            NEXTION_PARKED_STRING
            NEXTION_OVERLAP_STRING
          vSS3 API variable deprecated
          Parked and Overlap messages move to vSS2 API variable
          Change wait time after reboot of Nextion display from 200 mS to 300 mS
2020-08-13 22:07:22 -04:00
Anthony Good
3621a2302c 2020.08.10.02
FEATURE_SATELLITE_TRACKING
          Fixed bug with \# load TLE command not populating satellite list array correctly (Thanks, Adam, VK4GHZ)
        FEATURE_NEXTION_DISPLAY
          Changed initialization so we don't wait for 200 mS doing nothing while the display initializes after we reset it
        Got rid of 1 second delay at start up.  There's really no need for it.
2020-08-10 22:42:06 -04:00
Anthony Good
36b036a7b6 2020.08.10.01
FEATURE_SATELLITE_TRACKING
          Changed TLE loading routine to store carriage returns as 0xFE in eeprom and eliminated differences with systems that do carriage return
          versus carriage return + line feed, however, regardless TLEs cannot be loaded with the Arduino IDE Serial Monitor
          as it strips multi-line pasted text in the send window.  Argh.  You need to use PuTTY on Windows.  Screen on *nix works fine.
2020-08-10 17:30:47 -04:00
Anthony Good
e45d0b2c4e 2020.08.09.01
FEATURE_SATELLITE_TRACKING
          Fixed bug with vS1..vS34 API variables (Thanks,Adam, VK4GHZ)
2020-08-09 08:17:59 -04:00
Anthony Good
f10104ca90 2020.08.08.01
FEATURE_SATELLITE_TRACKING
          Finished \| command to list all available satellites.  This will be updated later to show next AOS of each satellite.
          Added vS1..vS34 API variables that contain all satellites available for tracking
          \$ command will now first search for a literal match of the entered satellite name, and if no match is found, it will match on the first four characters
2020-08-08 08:52:12 -04:00
Anthony Good
9670b6dedd 2020.08.03.01
FEATURE_SATELLITE_TRACKING
          Fixed bug with controller locking up upon boot up if previously selected satellite wasn't available in TLEs stored in eeprom
          Enhanced TLE storage so unnecessary data in TLE line 1 isn't stored in eeprom, resulting in space savings and allowing more TLEs to be stored
          Working on \| command to list satellites available for tracking
2020-08-04 08:36:11 -04:00
Anthony Good
b3554aa5f9 2020.07.31.01
Fixed bug introduced in 2020.07.27.01 with moon, sun, and satellite tracking deactivation not stopping rotation
2020-07-31 19:44:37 -04:00
Anthony Good
2601d0d422 2020.07.30.01
Changed \?GC and \?GT and other coordinate and grid related commands to not require GPS, clock, or moon/sun tracking features.
2020-07-30 18:04:03 -04:00
Anthony Good
5c39694c0f 2020.07.28.01
FEATURE_SATELLITE_TRACKING
          OPTION_DISPLAY_SATELLITE_TRACKING_ALTERNATING now displays "AOS in <time>" and "LOS in <time>".
          New API variables:
            vADF         String[11]            Satellite Next AOS Full Date String (YYYY-MM-DD)
            vADS         String[5]             Satellite Next AOS Short Date String (MM-DD)
            vATS         String[5]             Satellite Next AOS Time String (HH:MM)
            vLDF         String[11]            Satellite Next LOS Full Date String (YYYY-MM-DD)
            vLDS         String[5]             Satellite Next LOS Short Date String (MM-DD)
            vLTS         String[5]             Satellite Next LOS Time String (HH:MM)
            vALI         String[13]            Satellite AOS/LOS In String (Examples: "AOS in 1d13h","LOS in 30m12s","LOS in 5s")
          There is a bug with the "AOS/LOS in time" function (satellite_aos_los_string()) that only seems to affect HUBBLE, showing negative seconds.  Investigating.
2020-07-28 23:35:14 -04:00
Anthony Good
cf2c6e7286 2020.07.27.01
Fixed issue with race condition when changing moon, sun, and satellite tracking modes
2020-07-27 23:49:08 -04:00
Anthony Good
c94f42e3df 2020.07.26.02
FEATURE_SATELLITE_TRACKING
          \% command now calculates max elevation for each pass
        FEATURE_NEXTION_DISPLAY
          vConResult API variable no longer has response code in results from extended backslash commands
2020-07-27 14:45:03 -04:00
Anthony Good
78c586ac61 2020.07.26.01
FEATURE_SATELLITE_TRACKING
          \% command - print upcoming passes for current satellite
          \~ command now shows upcoming pass AOS and LOS
          \^1 activate satellite tracking command now pre-rotates to satellite next AOS az and el
        Added OPTION_DISPLAY_SATELLITE_TRACKING_ALTERNATING - LCD display one line that alternates current satellite az/el, AOS date/time, and AOS az/le
        Settings TRACKING_ACTIVE_CHAR and TRACKING_INACTIVE_CHAR deprecated
        New settings
          OPTION_DISPLAY_SATELLITE_TRACKING_ALTERNATING_TIME_MS 5000
          LCD_DISPLAY_SATELLITE_VISIBLE_NOT_TRACKED_CHAR "~"
          LCD_DISPLAY_SATELLITE_VISIBLE_TRACKED_CHAR "*"
          LCD_DISPLAY_SATELLITE_NOT_VISIBLE_TRACKED_CHAR "."
          LCD_DISPLAY_MOON_TRACKING_ACTIVE_CHAR "*"
          LCD_DISPLAY_MOON_TRACKING_INACTIVE_CHAR "-"
          LCD_DISPLAY_SUN_TRACKING_ACTIVE_CHAR "*"
          LCD_DISPLAY_SUN_TRACKING_INACTIVE_CHAR "-"
        Added nasabare.txt bare TLE file to Github in tle/ directory
2020-07-26 11:58:40 -04:00
Anthony Good
0988d8a82f 2020.07.25.03
FEATURE_NEXTION_DISPLAY
          New API variables:
            gGF          Integer               GPS fix age in mS
            vSAT         String[16]            Current Satellite Name
            vTAS         String[6]             Satellite Azimuth String
            vTES         String[6]             Satellite Elevation String
            vTLA         String[7]             Satellite Latitude String
            vTLO         String[7]             Satellite Longitude String
          gMSS has been expanded to include satellite functionality:
            gMSS         Integer, Bit Mapped   Moon, Sun, and Satellite Status
                                                    Bit Values                                  
                                                       satellite_tracking_active 16
                                                       satellite_visible 32
          gSC now has a bit mapping for FEATURE_SATELLITE_TRACKING:
            gSC         Integer, Bit Mapped   System Capabilities
                                                    Bit Values
                                                       SATELLITE 1024
2020-07-25 22:14:42 -04:00
Anthony Good
1374ac4ff1 2020.07.25.02
FEATURE_NEXTION_DISPLAY: Added vConResult string API variable which returns the results of backslash commands from the Nextion display
2020-07-25 21:41:01 -04:00
Anthony Good
c61e51afec 2020.07.25.01
More work on FEATURE_SATELLITE_TRACKING
        Added LCD support
        Command \!           - erase satellite TLE file area in eeprom
        Command \@           - print satellite TLE file area from eeprom
        Command \octothorpe  - load satellite Keplarian elements file into eeprom (copy and paste bare TLE)
        Command \$xxxxxxx    - change current satellite (xxxxxx = satellite name in stored TLE file)
        Added OPTION_DISPLAY_SATELLITE_TRACKING_CONTINUOUSLY to LCD functionality
        OPTION_DISPLAY_MOON_OR_SUN_TRACKING_CONDITIONAL changed to OPTION_DISPLAY_MOON_OR_SUN_OR_SAT_TRACKING_CONDITIONAL
        Setting LCD_MOON_OR_SUN_TRACKING_CONDITIONAL_ROW changed to LCD_MOON_OR_SUN_OR_SAT_TRACKING_CONDITIONAL_ROW
        Under construction documentation https://github.com/k3ng/k3ng_rotator_controller/wiki/707-Satellite-Tracking
2020-07-25 20:58:35 -04:00
Anthony Good
9cdc072cc3 2020.07.24.01
After pulling my hair out for two days, I rewrote the satellite tracking to use the P13 library from Mark VandeWettering
      \^ command to activate and deactive satellite tracking
      \~ command to view satellite tracking status
2020-07-24 21:24:34 -04:00
Anthony Good
0a4113031b 2020.07.23.01
Lots more work on FEATURE_SATELLITE_TRACKING.  It's only outputting AO-7 in debug logs right now.
      Pushing to Github in case I get hit by a bus before I finish this.
2020-07-23 22:45:10 -04:00
Anthony Good
bdf7559bf5 added Plan13 library for FEATURE_SATELLITE_TRACKING (under development) 2020-07-22 19:35:05 -04:00
Anthony Good
f15b13e2a7 2020.07.22.01
Developing FEATURE_SATELLITE_TRACKING.  Yea.
      FEATURE_NEXTION_DISPLAY: call service_nextion_display() right after rebooting display at start up
2020-07-22 19:24:44 -04:00
Anthony Good
7e7a8b9553 2020.07.21.01
FEATURE_NEXTION_DISPLAY
        Added NOT_PROVISIONED state to gCS Clock Status API variable
        Added gX and gY API variables for heading Cartesian coordinates, for future use to drive combined azimuth and elevation gauges
2020-07-21 18:27:05 -04:00
Anthony Good
f680db1bfa 2020.07.19.02
FEATURE_NEXTION_DISPLAY
        Changed updating of gMSS API variable to reflect moon and sun visibility without tracking activated
2020-07-19 12:57:21 -04:00
Anthony Good
8ff1aa844a 2020.07.19.01
Added DEBUG_PROCESSES
      Removed several instances where update_time() was being called unnecessarily.  update_time() was consuming about 21% CPU time, now down to about 12%
2020-07-19 10:01:18 -04:00
Anthony Good
3c1d592ffd 2020.07.18.02
FEATURE_NEXTION_DISPLAY
        Fixed updating of vMAS, vMES, vSAS, and vSES API variables
        Fixed degree symbol in vSS1 API variable
        Add variable gDP (Integer) - Number of decimal places used in various heading variables (set by DISPLAY_DECIMAL_PLACES)
2020-07-18 22:44:02 -04:00
Anthony Good
6f3d191f58 2020.07.18.01
Added extended backslash commands
        \?CGxxxx[xx]        - convert grid to coordinates
        \?RG                - read grid square
        \?CCxxxxx yyyyy     - convert coordinates to grid xxxxx = latitude, yyyyy = longitude
        \?BCxxxxx yyyyy     - calculate bearing to coordinate target xxxxx = latitude, yyyyy = longitude
        \?BGxxxx[xx]        - calculate bearing to grid target
        \?GCxxxxx yyyyy     - go to coordinate target xxxxx = latitude, yyyyy = longitude (rotate azimuth)
        \?GTxxxx[xx]        - go to grid target (rotate azimuth)
      Added function maidenhead_to_coordinates(grid,latitude_degrees, longitude_degrees) from Adam VK4GHZ code contribution
      Added function calculate_target_bearing(source_latitude, source_longitude, target_latitude, target_longitude) from Adam VK4GHZ code contribution
2020-07-18 15:00:13 -04:00
Anthony Good
d34316ffa9 2020.07.17.02
DISPLAY_DEGREES_STRING is now broken out into LCD_DISPLAY_DEGREES_STRING and NEXTION_DISPLAY_DEGREES_STRING in settings files
      Yaesu Help (H command) updated to include missing commands (Thanks, Adam VK4GHZ )
2020-07-17 19:54:04 -04:00
Anthony Good
54fc97c7ef 2020.07.17.01
Merged Pull Request 71 - Update rotator_dependencies.h, fixing issue: device was unresponsive when using LSM303D sensor with FEATURE_AZ_POSITION_POLOLU_LSM303 ( https://github.com/k3ng/k3ng_rotator_controller/pull/71/ ) (Thanks, 7x2uv)
2020-07-17 17:32:38 -04:00
Anthony Good
b9518b9a96
Merge pull request #71 from 7x2uv/patch-1
Update rotator_dependencies.h
2020-07-17 14:36:09 -04:00
Anthony Good
f934f3dc60
Merge branch 'master' into patch-1 2020-07-17 14:35:53 -04:00
Anthony Good
2925c3a885 2020.07.01.02
Added FEATURE_ADC_RESOLUTION12 contributed by Adam VK4GHZ
2020-07-01 21:15:43 -04:00