mirror of
https://github.com/k3ng/k3ng_rotator_controller.git
synced 2025-02-09 04:01:28 +00:00
2.0.2016092501
Working on FEATURE_AZ_POSITION_ROTARY_ENCODER_USE_LIB and FEATURE_EL_POSITION_ROTARY_ENCODER_USE_LIB Fixed bug with last row of LCD display getting blanked out FEATURE_TEST_DISPLAY_AT_STARTUP Noted in various settings files that AZIMUTH_STARTING_POINT_DEFAULT and AZIMUTH_ROTATION_CAPABILITY_DEFAULT are used only for initializing EEPROM Fixed an issue with FEATURE_AZ_POSITION_HH12_AS5045_SSI and FEATURE_AZ_POSITION_INCREMENTAL_ENCODER using AZIMUTH_STARTING_POINT_DEFAULT rather than azimuth_starting_point variable
This commit is contained in:
parent
77f2098b01
commit
ba24c61885
@ -73,286 +73,31 @@
|
|||||||
Rule #4: Have fun.
|
Rule #4: Have fun.
|
||||||
|
|
||||||
|
|
||||||
New in this release:
|
Recent Update History
|
||||||
|
|
||||||
HH-12 encoder support
|
Prior to 2.0.2015040401 (May still need to be documented in the wiki):
|
||||||
OPTION_PULSE_IGNORE_AMBIGUOUS_PULSES
|
|
||||||
\P PWM command is now \W
|
|
||||||
\P is Park command
|
|
||||||
park_in_progress_pin // goes high when a park has been initiated and rotation is in progress
|
|
||||||
parked_pin // goes high when in a parked position
|
|
||||||
heading_reading_inhibit_pin
|
|
||||||
FEATURE_LIMIT_SENSE
|
|
||||||
#define az_limit_sense_pin 0 // input - low stops azimuthal rotation
|
|
||||||
#define el_limit_sense_pin 0 // input - low stops elevation rotation
|
|
||||||
\Axxx command - manually set azimuth, xxx = azimuth (FEATURE_AZ_POSITION_ROTARY_ENCODER or FEATURE_AZ_POSITION_PULSE_INPUT only)
|
|
||||||
\Bxxx command - manually set elevation, xxx = elevation (FEATURE_EL_POSITION_POTENTIOMETER or FEATURE_EL_POSITION_ROTARY_ENCODER only)
|
|
||||||
fixed bug with preset encoder start and kill button
|
|
||||||
FEATURE_AZ_POSITION_INCREMENTAL_ENCODER
|
|
||||||
FEATURE_EL_POSITION_INCREMENTAL_ENCODER
|
|
||||||
OPTION_INCREMENTAL_ENCODER_PULLUPS
|
|
||||||
#define AZ_POSITION_INCREMENTAL_ENCODER_PULSES_PER_REV 8000.0
|
|
||||||
#define EL_POSITION_INCREMENTAL_ENCODER_PULSES_PER_REV 8000.0
|
|
||||||
AZIMUTH_STARTING_POINT_DEFAULT and AZIMUTH_ROTATION_CAPABILITY_DEFAULT are now persistent
|
|
||||||
Yaesu P35, P45, and Z commands no longer write to eeprom
|
|
||||||
control_port points to the hardware port for computer interface
|
|
||||||
remote_unit_port points to the hardware port for interfacing to remote unit
|
|
||||||
removed OPTION_SERIAL1, 2, 3, 4
|
|
||||||
SS command: SS0 = control port, SS1 = remote unit port
|
|
||||||
No longer need to manually uncomment hh12.h or object declarations
|
|
||||||
No longer need to manually uncomment LiquidCrystal lcd()
|
|
||||||
No longer need to manually uncomment Adafruit_ADXL345 accel
|
|
||||||
No longer need to manually uncomment ADXL345 accel
|
|
||||||
No longer need to manually uncomment Adafruit_LSM303 lsm;
|
|
||||||
No longer need to manually uncomment HMC5883L compass;
|
|
||||||
FEATURE_4_BIT_LCD_DISPLAY
|
|
||||||
FEATURE_ADAFRUIT_I2C_LCD
|
|
||||||
FEATURE_YOURDUINO_I2C_LCD
|
|
||||||
FEATURE_RFROBOT_I2C_DISPLAY
|
|
||||||
No longer need to uncomment:
|
|
||||||
FEATURE_LCD_DISPLAY
|
|
||||||
FEATURE_I2C_LCD
|
|
||||||
any include files
|
|
||||||
serial led duration now set by SERIAL_LED_TIME_MS
|
|
||||||
#define CONTROL_PORT_MAPPED_TO &Serial // change this line to map the control port to a different serial port (Serial1, Serial2, etc.)
|
|
||||||
#define REMOTE_PORT_MAPPED_TO &Serial1 // change this line to map the remote_unit port to a different serial port
|
|
||||||
start of remote unit pin control
|
|
||||||
remote unit pin control (add 100 to a pin number define to map to remote unit pin)
|
|
||||||
FEATURE_CLOCK
|
|
||||||
FEATURE_MOON_TRACKING
|
|
||||||
#define DEFAULT_LATITUDE 40.889958
|
|
||||||
#define DEFAULT_LONGITUDE -75.585972
|
|
||||||
|
|
||||||
#define INTERNAL_CLOCK_CORRECTION 0.00145
|
DEBUG_POLOLU_LSM303_CALIBRATION (rotator_features.h)
|
||||||
|
OPTION_HAMLIB_EASYCOM_AZ_EL_COMMAND_HACK
|
||||||
\C - show clock
|
LANGUAGE_PORTUGUESE_BRASIL (thanks Ismael, PY4PI)
|
||||||
\O - set clock \OYYYYMMDDHHmm
|
AZ_INCREMENTAL_ENCODER_ZERO_PULSE_POSITION
|
||||||
\Mx - x = 0: deactive moon tracking; x = 1: activate moon tracking
|
EL_INCREMENTAL_ENCODER_ZERO_PULSE_POSITION
|
||||||
\Gxxxxxx - set coordinates via grid square (example: \GFN20EV)
|
OPTION_BLINK_OVERLAP_LED and OPTION_OVERLAP_LED_BLINK_MS setting
|
||||||
|
FEATURE_SUN_PUSHBUTTON_AZ_EL_CALIBRATION and FEATURE_MOON_PUSHBUTTON_AZ_EL_CALIBRATION; pin_sun_pushbutton_calibration, pin_moon_pushbutton_calibration
|
||||||
Park is now deactivated when issuing a Yaesu command (other than C) or when doing manual rotation
|
Working on FEATURE_AUTOCORRECT
|
||||||
FEATURE_GPS
|
OPTION_EL_PULSE_DEBOUNCE code - (thanks Gianfranco, IZ8EWD)
|
||||||
#define GPS_PORT_MAPPED_TO &Serial2
|
#define EL_POSITION_PULSE_DEBOUNCE 500 // in ms
|
||||||
#define GPS_PORT_BAUD_RATE 9600
|
OPTION_HH12_10_BIT_READINGS in hh12.h (thanks Johan PA3FPQ)
|
||||||
#define SYNC_TIME_WITH_GPS 1
|
#define BRAKE_ACTIVE_STATE HIGH
|
||||||
#define SYNC_COORDINATES_WITH_GPS 1
|
#define BRAKE_INACTIVE_STATE LOW
|
||||||
#define GPS_SYNC_PERIOD_SECONDS 10 // how long to consider internal clock syncronized after a GPS reading
|
OPTION_SCANCON_2RMHF3600_INC_ENCODER - thanks Jasper, PA2J
|
||||||
#define GPS_VALID_FIX_AGE_MS 10000 // consider a GPS reading valid if the fix age is less than this
|
Added remote slave commands:
|
||||||
FEATURE_SUN_TRACKING
|
RC - read coordinates (returns RCxx.xxxx -xxx.xxxx)
|
||||||
\Ux - x = 0: deactive sun tracking; x = 1: activate sun tracking
|
GS - query GPS status (returns GS0 (no sync) or GS1 (sync))
|
||||||
FEATURE_AZ_POSITION_INCREMENTAL_ENCODER & FEATURE_EL_POSITION_INCREMENTAL_ENCODER coding
|
OPTION_SYNC_MASTER_COORDINATES_TO_SLAVE
|
||||||
Updated debug output format
|
reset_pin
|
||||||
\XS - calibration az and el to sun heading - there are calculation bugs
|
OPTION_RESET_METHOD_JMP_ASM_0
|
||||||
fixed initialize_serial() compilaton error when neither yaesu or easycom protocol is selected in features
|
Change /E command to do setup() for system reset
|
||||||
fixed bugs in \XS and \XM
|
|
||||||
\XS and\XM now working on all sensor types
|
|
||||||
moon_tracking_active_pin
|
|
||||||
sun_tracking_active_pin
|
|
||||||
moon_tracking_activate_line
|
|
||||||
sun_tracking_activate_line
|
|
||||||
moon_tracking_button
|
|
||||||
sun_tracking_button
|
|
||||||
\A azimuth calibration now also works with sensors other than rotary encoders and pulse input
|
|
||||||
\B elevation calibration now also works with sensors other than rotary encoders and pulse input
|
|
||||||
OPTION_BUTTON_RELEASE_NO_SLOWDOWN
|
|
||||||
Fixed God-awful bug that caused Arduino to crash when running FEATURE_GPS. Note to self: never declare a char in a switch case. It causes unpredicatable, unexplainable evil stuff to occur.
|
|
||||||
Fixed bug with elevation PWM
|
|
||||||
gps_sync pin - goes high when clock is GPS synchronized
|
|
||||||
FEATURE_RTC_PCF8583
|
|
||||||
\O command also programs realtime clocks now
|
|
||||||
Fixed bug in PWM outputs when changing direction
|
|
||||||
Ethernet now working with backslash commands, Yaesu commands, and Easycom commands
|
|
||||||
Fixed bug in Easycom (non-standard) AZ and EL commands
|
|
||||||
Ethernet remote unit slave support (slave only, master using ethernet not done yet)
|
|
||||||
#define GPS_MIRROR_PORT &Serial3
|
|
||||||
OPTION_DISPLAY_SMALL_CLOCK
|
|
||||||
#define LCD_SMALL_CLOCK_POSITION LEFT
|
|
||||||
OPTION_DISPLAY_GPS_INDICATOR
|
|
||||||
#define LCD_GPS_INDICATOR_POSITION RIGHT
|
|
||||||
OPTION_DISPLAY_MOON_TRACKING_CONTINUOUSLY
|
|
||||||
#define LCD_MOON_TRACKING_ROW 3
|
|
||||||
#define LCD_MOON_TRACKING_UPDATE_INTERVAL 5000
|
|
||||||
OPTION_DISPLAY_SUN_TRACKING_CONTINUOUSLY
|
|
||||||
#define LCD_SUN_TRACKING_ROW 4
|
|
||||||
#define LCD_SUN_TRACKING_UPDATE_INTERVAL 5000
|
|
||||||
#define LCD_ROWS 4
|
|
||||||
fixed bug with Yourduino LCD display initialization (thanks PA3FPQ)
|
|
||||||
added GPS counters to debug output
|
|
||||||
FEATURE_POWER_SWITCH
|
|
||||||
#define POWER_SWITCH_IDLE_TIMEOUT 15 (unit: minutes)
|
|
||||||
#define power_switch 0
|
|
||||||
OPTION_DISPLAY_MOON_OR_SUN_TRACKING_CONDITIONAL
|
|
||||||
#define LCD_MOON_OR_SUN_TRACKING_CONDITIONAL_ROW 3
|
|
||||||
OPTION_DISPLAY_BIG_CLOCK
|
|
||||||
#define GPS_UPDATE_LATENCY_COMPENSATION_MS 200
|
|
||||||
#define AZIMUTH_CALIBRATION_FROM_ARRAY {180,630}
|
|
||||||
#define AZIMUTH_CALIBRATION_TO_ARRAY {180,630}
|
|
||||||
#define ELEVATION_CALIBRATION_FROM_ARRAY {-180,0,180}
|
|
||||||
#define ELEVATION_CALIBRATION_TO_ARRAY {-180,0,180}
|
|
||||||
#define rotate_cw_ccw 0
|
|
||||||
#define az_stepper_motor_direction 0
|
|
||||||
#define el_stepper_motor_direction 0
|
|
||||||
bug fix for long clock display
|
|
||||||
performance improvement for az / el display on LCD
|
|
||||||
#define az_stepper_motor_pulse 0
|
|
||||||
#define el_stepper_motor_pulse 0
|
|
||||||
OPTION_DISPLAY_ALT_HHMM_CLOCK_AND_MAIDENHEAD
|
|
||||||
#define LCD_SMALL_CLOCK_AND_MAIDENHEAD_POSITION
|
|
||||||
#define LCD_SMALL_CLOCK_AND_MAIDENHEAD_ROW 4
|
|
||||||
#define LCD_GPS_INDICATOR_ROW 1
|
|
||||||
OPTION_EXTERNAL_ANALOG_REFERENCE
|
|
||||||
more debug_print conversion
|
|
||||||
|
|
||||||
OPTION_DISPLAY_SMALL_CLOCK renamed to OPTION_DISPLAY_HHMM_CLOCK
|
|
||||||
LCD_SMALL_CLOCK_POSITION renamed to LCD_HHMM_CLOCK_POSITION
|
|
||||||
OPTION_DISPLAY_HHMMSS_CLOCK
|
|
||||||
OPTION_DISPLAY_DISABLE_DIRECTION_STATUS
|
|
||||||
OPTION_DISPLAY_SMALL_CLOCK_AND_MAIDENHEAD renamed to OPTION_DISPLAY_ALT_HHMM_CLOCK_AND_MAIDENHEAD
|
|
||||||
OPTION_DISPLAY_CONSTANT_HHMMSS_CLOCK_AND_MAIDENHEAD
|
|
||||||
|
|
||||||
#define LCD_HHMM_CLOCK_POSITION LEFT //LEFT or RIGHT
|
|
||||||
#define LCD_HHMMSS_CLOCK_POSITION LEFT //LEFT or RIGHT
|
|
||||||
#define LCD_ALT_HHMM_CLOCK_AND_MAIDENHEAD_POSITION LEFT
|
|
||||||
#define LCD_ALT_HHMM_CLOCK_AND_MAIDENHEAD_ROW 1
|
|
||||||
#define LCD_CONSTANT_HHMMSS_CLOCK_AND_MAIDENHEAD_POSITION LEFT
|
|
||||||
#define LCD_CONSTANT_HHMMSS_CLOCK_AND_MAIDENHEAD_ROW 1
|
|
||||||
|
|
||||||
OPTION_DISPLAY_DISABLE_DIRECTION_STATUS changed to OPTION_DISPLAY_DIRECTION_STATUS
|
|
||||||
worked on FEATURE_TWO_DECIMAL_PLACE_HEADINGS
|
|
||||||
LANGUAGE_ENGLISH
|
|
||||||
|
|
||||||
Easycom improvements - space and LF are now also command delimiters. Also fixed bug with one decimal place. Works with PSTRotator
|
|
||||||
Fixed issue with LCD display updating when target az or target el was changed during rotation
|
|
||||||
I2C_LCD_COLOR also applies to Yourduino LCD display
|
|
||||||
|
|
||||||
HH-12 elevation bug fix
|
|
||||||
|
|
||||||
FEATURE_MASTER_WITH_SERIAL_SLAVE
|
|
||||||
FEATURE_MASTER_WITH_ETHERNET_SLAVE
|
|
||||||
FEATURE_EL_POSITION_MEMSIC_2125 under development - not working yet
|
|
||||||
|
|
||||||
fixed a bug with azimuth and elevation offset zeroing out first decimal place
|
|
||||||
Ethernet master/slave link!
|
|
||||||
#define ETHERNET_SLAVE_IP_ADDRESS 192,168,1,173
|
|
||||||
#define ETHERNET_SLAVE_TCP_PORT 23
|
|
||||||
#define ETHERNET_SLAVE_RECONNECT_TIME_MS 250
|
|
||||||
|
|
||||||
Changed master/slave AZ and EL command result format: AZxxx.xxxxxx EL+xxx.xxxxxx
|
|
||||||
Slave CL command
|
|
||||||
|
|
||||||
OPTION_SYNC_MASTER_CLOCK_TO_SLAVE
|
|
||||||
|
|
||||||
fixed "if (clock_status == SLAVE_SYNC) {clock_status = FREE_RUNNING;}" compile error
|
|
||||||
|
|
||||||
OPTION_CLOCK_ALWAYS_HAVE_HOUR_LEADING_ZERO
|
|
||||||
|
|
||||||
OPTION_DISABLE_HMC5883L_ERROR_CHECKING
|
|
||||||
HARDWARE_EA4TX_ARS_USB
|
|
||||||
HARDWARE_M0UPU
|
|
||||||
rotator_hardware.h file
|
|
||||||
rotator_features_ea4tx_ars_usb.h
|
|
||||||
rotator_pins_ea4tx_ars_usb.h
|
|
||||||
#define AZ_POSITION_INCREMENTAL_ENCODER_PULSES_PER_REV 2000.0
|
|
||||||
#define EL_POSITION_INCREMENTAL_ENCODER_PULSES_PER_REV 2000.0
|
|
||||||
|
|
||||||
FEATURE_EL_POSITION_INCREMENTAL_ENCODER now does 360 degrees of rotation rather than 720
|
|
||||||
|
|
||||||
OPTION_PRESET_ENCODER_0_360_DEGREES
|
|
||||||
|
|
||||||
service_rotation() - fixed rollover bug with az and el slow down
|
|
||||||
|
|
||||||
Fixed decimal place issue with Easycom AZ and EL query commands
|
|
||||||
FEATURE_EL_POSITION_INCREMENTAL_ENCODER - fixed storage and retrieval of elevation in eeprom
|
|
||||||
Bug fix - stop command wouldn't work when in slow down
|
|
||||||
AZ_INITIALLY_IN_SLOW_DOWN_PWM
|
|
||||||
EL_INITIALLY_IN_SLOW_DOWN_PWM
|
|
||||||
|
|
||||||
Fixed compilation error when FEATURE_JOYSTICK_CONTROL is activated and FEATURE_ELEVATION_CONTROL is disabled
|
|
||||||
|
|
||||||
FEATURE_ANALOG_OUTPUT_PINS (rotator_features.h) (documented 2015-04-16)
|
|
||||||
FEATURE_AZ_POSITION_LSM303 is now FEATURE_AZ_POSITION_ADAFRUIT_LSM303 (rotator_features.h) (documented 2015-04-16)
|
|
||||||
FEATURE_EL_POSITION_LSM303 is now FEATURE_EL_POSITION_ADAFRUIT_LSM303 (rotator_features.h) (documented 2015-04-16)
|
|
||||||
LANGUAGE_CZECH (rotator_features.h) (documented)
|
|
||||||
|
|
||||||
FEATURE_AZ_POSITION_POLOLU_LSM303 (rotator_features.h) (code contributed by AD0CZ) (documented 2015-04-16)
|
|
||||||
FEATURE_EL_POSITION_POLOLU_LSM303 (rotator_features.h) (documented 2015-04-16)
|
|
||||||
#define POLOLU_LSM_303_MIN_ARRAY {+59, +19, -731} (rotator_settings.h) (documented 2015-04-16)
|
|
||||||
#define POLOLU_LSM_303_MAX_ARRAY {+909, +491, +14} (rotator_settings.h) (documented 2015-04-16)
|
|
||||||
DEBUG_POLOLU_LSM303_CALIBRATION (rotator_features.h)
|
|
||||||
|
|
||||||
bug fixed with brake_release() affecting elevation brake (thanks Paolo, IT9IPQ)
|
|
||||||
|
|
||||||
LANGUAGE_ITALIAN code donated by Paolo, IT9IPQ
|
|
||||||
OPTION_DISPLAY_VERSION_ON_STARTUP code provided by Paolo, IT9IPQ
|
|
||||||
|
|
||||||
Fixed bug with LANGUAGE_CZECH (thanks Radek, OK2NMA)
|
|
||||||
|
|
||||||
Change in Easycom response terminator (now uses whatever command terminator was sent to it)
|
|
||||||
Easycom AZ EL command string response change to +xxx.xx +xxx.xx
|
|
||||||
|
|
||||||
OPTION_HAMLIB_EASYCOM_AZ_EL_COMMAND_HACK
|
|
||||||
LANGUAGE_PORTUGUESE_BRASIL (thanks Ismael, PY4PI)
|
|
||||||
|
|
||||||
check_brake_release() bug fix
|
|
||||||
|
|
||||||
configuration.az_stepper_motor_last_direction, configuration.az_stepper_motor_last_pin_state, configuration.el_stepper_motor_last_direction, configuration.el_stepper_motor_last_pin_state
|
|
||||||
|
|
||||||
OPTION_HAMLIB_EASYCOM_NO_TERMINATOR_CHARACTER_HACK ; HARDWARE_WB6KCN
|
|
||||||
|
|
||||||
FEATURE_STEPPER_MOTOR_EXPERIMENTAL_CODE_2
|
|
||||||
|
|
||||||
AZ_INCREMENTAL_ENCODER_ZERO_PULSE_POSITION
|
|
||||||
EL_INCREMENTAL_ENCODER_ZERO_PULSE_POSITION
|
|
||||||
|
|
||||||
OPTION_BLINK_OVERLAP_LED and OPTION_OVERLAP_LED_BLINK_MS setting
|
|
||||||
|
|
||||||
FEATURE_SUN_PUSHBUTTON_AZ_EL_CALIBRATION and FEATURE_MOON_PUSHBUTTON_AZ_EL_CALIBRATION; pin_sun_pushbutton_calibration, pin_moon_pushbutton_calibration
|
|
||||||
|
|
||||||
Rolled FEATURE_STEPPER_MOTOR_EXPERIMENTAL_CODE_2 into FEATURE_STEPPER_MOTOR
|
|
||||||
|
|
||||||
Working on FEATURE_AUTOCORRECT
|
|
||||||
|
|
||||||
Bug fix involving FEATURE_AZ_POSITION_HH12_AS5045_SSI and azimuth_offset (thanks Johan, PA3FPQ and Jurgen, PE1LWT)
|
|
||||||
Bug fix - wasn't initializing rotate_cw_ccw (thanks Erick, WB6KCN)
|
|
||||||
Bug fix with OPTION_DISPLAY_VERSION_ON_STARTUP and 2 row displays (thanks Gianfranco, IZ8EWD)
|
|
||||||
OPTION_EL_PULSE_DEBOUNCE code - (thanks Gianfranco, IZ8EWD)
|
|
||||||
#define EL_POSITION_PULSE_DEBOUNCE 500 // in ms
|
|
||||||
|
|
||||||
OPTION_HH12_10_BIT_READINGS in hh12.h (thanks Johan PA3FPQ)
|
|
||||||
|
|
||||||
Correction from Johan PA3FPQ on OPTION_HH12_10_BIT_READINGS
|
|
||||||
|
|
||||||
#define BRAKE_ACTIVE_STATE HIGH
|
|
||||||
#define BRAKE_INACTIVE_STATE LOW
|
|
||||||
|
|
||||||
OPTION_SCANCON_2RMHF3600_INC_ENCODER - thanks Jasper, PA2J
|
|
||||||
|
|
||||||
Fixed compile bug with OPTION_EL_MANUAL_ROTATE_LIMITS) when FEATURE_ELEVATION_CONTROL is not enabled
|
|
||||||
|
|
||||||
Eliminated az_stepper_motor_direction and el_stepper_motor_direction. Use rotate_* pins instead!
|
|
||||||
|
|
||||||
Self-resetting functionality
|
|
||||||
Fixed bug with OPTION_DISPLAY_DIRECTION_STATUS updating
|
|
||||||
|
|
||||||
Improved the self reset with a non-blocking 5 second delay
|
|
||||||
|
|
||||||
Added remote slave commands:
|
|
||||||
RC - read coordinates (returns RCxx.xxxx -xxx.xxxx)
|
|
||||||
GS - query GPS status (returns GS0 (no sync) or GS1 (sync))
|
|
||||||
|
|
||||||
OPTION_SYNC_MASTER_COORDINATES_TO_SLAVE
|
|
||||||
|
|
||||||
reset_pin
|
|
||||||
|
|
||||||
Updated for Arduino 1.6.1
|
|
||||||
|
|
||||||
Fixed compilation issue with FEATURE_ELEVATION_CORRECTION and Arduino 1.6.x
|
|
||||||
|
|
||||||
OPTION_RESET_METHOD_JMP_ASM_0
|
|
||||||
Change /E command to do setup() for system reset
|
|
||||||
|
|
||||||
Fixed calculation issues with FEATURE_ELEVATION_CORRECTION
|
|
||||||
Fixed bug with FEATURE_AZIMUTH_CORRECTION and FEATURE_ELEVATION_CORRECTION rounding off to nearest degree
|
|
||||||
|
|
||||||
2.0.2015040401 Changed configuration.azimuth_offset to use raw_azimuth rather than azimuth for calculation
|
2.0.2015040401 Changed configuration.azimuth_offset to use raw_azimuth rather than azimuth for calculation
|
||||||
|
|
||||||
@ -511,6 +256,13 @@
|
|||||||
2.0.2016090801
|
2.0.2016090801
|
||||||
Corrected error in FEATURE_ROTARY_ENCODER_SUPPORT ttable (thanks, frye.dale)
|
Corrected error in FEATURE_ROTARY_ENCODER_SUPPORT ttable (thanks, frye.dale)
|
||||||
|
|
||||||
|
2.0.2016092501
|
||||||
|
Working on FEATURE_AZ_POSITION_ROTARY_ENCODER_USE_LIB and FEATURE_EL_POSITION_ROTARY_ENCODER_USE_LIB
|
||||||
|
Fixed bug with last row of LCD display getting blanked out
|
||||||
|
FEATURE_TEST_DISPLAY_AT_STARTUP
|
||||||
|
Noted in various settings files that AZIMUTH_STARTING_POINT_DEFAULT and AZIMUTH_ROTATION_CAPABILITY_DEFAULT are used only for initializing EEPROM
|
||||||
|
Fixed an issue with FEATURE_AZ_POSITION_HH12_AS5045_SSI and FEATURE_AZ_POSITION_INCREMENTAL_ENCODER using AZIMUTH_STARTING_POINT_DEFAULT rather than azimuth_starting_point variable
|
||||||
|
|
||||||
|
|
||||||
All library files should be placed in directories likes \sketchbook\libraries\library1\ , \sketchbook\libraries\library2\ , etc.
|
All library files should be placed in directories likes \sketchbook\libraries\library1\ , \sketchbook\libraries\library2\ , etc.
|
||||||
in order to compile in Arduino IDE 1.6.7
|
in order to compile in Arduino IDE 1.6.7
|
||||||
@ -519,7 +271,7 @@
|
|||||||
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#define CODE_VERSION "2.0.2016090801"
|
#define CODE_VERSION "2.0.2016092501"
|
||||||
|
|
||||||
#include <avr/pgmspace.h>
|
#include <avr/pgmspace.h>
|
||||||
#include <EEPROM.h>
|
#include <EEPROM.h>
|
||||||
@ -547,8 +299,6 @@
|
|||||||
|
|
||||||
#include "rotator_dependencies.h"
|
#include "rotator_dependencies.h"
|
||||||
|
|
||||||
//#include "rotator_debug.h"
|
|
||||||
|
|
||||||
#ifdef FEATURE_4_BIT_LCD_DISPLAY
|
#ifdef FEATURE_4_BIT_LCD_DISPLAY
|
||||||
#include <LiquidCrystal.h> // required for classic 4 bit interface LCD display (FEATURE_4_BIT_LCD_DISPLAY)
|
#include <LiquidCrystal.h> // required for classic 4 bit interface LCD display (FEATURE_4_BIT_LCD_DISPLAY)
|
||||||
#endif // FEATURE_4_BIT_LCD_DISPLAY
|
#endif // FEATURE_4_BIT_LCD_DISPLAY
|
||||||
@ -577,41 +327,56 @@
|
|||||||
#if defined(FEATURE_AZ_POSITION_HMC5883L)
|
#if defined(FEATURE_AZ_POSITION_HMC5883L)
|
||||||
#include <HMC5883L.h> // required for HMC5883L digital compass support
|
#include <HMC5883L.h> // required for HMC5883L digital compass support
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if defined(FEATURE_EL_POSITION_ADXL345_USING_ADAFRUIT_LIB) || defined(FEATURE_AZ_POSITION_ADAFRUIT_LSM303) || defined(FEATURE_EL_POSITION_ADAFRUIT_LSM303)
|
#if defined(FEATURE_EL_POSITION_ADXL345_USING_ADAFRUIT_LIB) || defined(FEATURE_AZ_POSITION_ADAFRUIT_LSM303) || defined(FEATURE_EL_POSITION_ADAFRUIT_LSM303)
|
||||||
#include <Adafruit_Sensor.h> // required for any Adafruit sensor libraries
|
#include <Adafruit_Sensor.h> // required for any Adafruit sensor libraries
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if defined(FEATURE_EL_POSITION_ADXL345_USING_LOVE_ELECTRON_LIB)
|
#if defined(FEATURE_EL_POSITION_ADXL345_USING_LOVE_ELECTRON_LIB)
|
||||||
#include <ADXL345.h> // required for elevation ADXL345 accelerometer using Love Electronics ADXL345 library
|
#include <ADXL345.h> // required for elevation ADXL345 accelerometer using Love Electronics ADXL345 library
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if defined(FEATURE_EL_POSITION_ADXL345_USING_ADAFRUIT_LIB)
|
#if defined(FEATURE_EL_POSITION_ADXL345_USING_ADAFRUIT_LIB)
|
||||||
#include <Adafruit_ADXL345_U.h> // required for elevation ADXL345 accelerometer using Adafruit ADXL345 library (FEATURE_EL_POSITION_ADXL345_USING_ADAFRUIT_LIB)
|
#include <Adafruit_ADXL345_U.h> // required for elevation ADXL345 accelerometer using Adafruit ADXL345 library (FEATURE_EL_POSITION_ADXL345_USING_ADAFRUIT_LIB)
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if defined(FEATURE_EL_POSITION_ADAFRUIT_LSM303) || defined(FEATURE_AZ_POSITION_ADAFRUIT_LSM303)
|
#if defined(FEATURE_EL_POSITION_ADAFRUIT_LSM303) || defined(FEATURE_AZ_POSITION_ADAFRUIT_LSM303)
|
||||||
#include <Adafruit_LSM303.h> // required for azimuth and/or elevation using LSM303 compass and/or accelerometer
|
#include <Adafruit_LSM303.h> // required for azimuth and/or elevation using LSM303 compass and/or accelerometer
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef FEATURE_AZ_POSITION_POLOLU_LSM303
|
#ifdef FEATURE_AZ_POSITION_POLOLU_LSM303
|
||||||
#include <LSM303.h>
|
#include <LSM303.h>
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if defined(FEATURE_MOON_TRACKING) || defined(FEATURE_SUN_TRACKING)
|
#if defined(FEATURE_MOON_TRACKING) || defined(FEATURE_SUN_TRACKING)
|
||||||
#include <moon2.h>
|
#include <moon2.h>
|
||||||
#endif // defined(FEATURE_MOON_TRACKING) || defined(FEATURE_SUN_TRACKING)
|
#endif // defined(FEATURE_MOON_TRACKING) || defined(FEATURE_SUN_TRACKING)
|
||||||
|
|
||||||
#ifdef FEATURE_SUN_TRACKING
|
#ifdef FEATURE_SUN_TRACKING
|
||||||
#include <sunpos.h>
|
#include <sunpos.h>
|
||||||
#endif // FEATURE_SUN_TRACKING
|
#endif // FEATURE_SUN_TRACKING
|
||||||
|
|
||||||
#ifdef FEATURE_GPS
|
#ifdef FEATURE_GPS
|
||||||
#include <TinyGPS.h>
|
#include <TinyGPS.h>
|
||||||
#endif // FEATURE_GPS
|
#endif // FEATURE_GPS
|
||||||
|
|
||||||
#ifdef FEATURE_RTC_DS1307
|
#ifdef FEATURE_RTC_DS1307
|
||||||
#include <RTClib.h>
|
#include <RTClib.h>
|
||||||
#endif // FEATURE_RTC_DS1307
|
#endif // FEATURE_RTC_DS1307
|
||||||
|
|
||||||
#ifdef FEATURE_RTC_PCF8583
|
#ifdef FEATURE_RTC_PCF8583
|
||||||
#include <PCF8583.h>
|
#include <PCF8583.h>
|
||||||
#endif //FEATURE_RTC_PCF8583
|
#endif //FEATURE_RTC_PCF8583
|
||||||
|
|
||||||
#ifdef FEATURE_ETHERNET
|
#ifdef FEATURE_ETHERNET
|
||||||
#include <SPI.h>
|
#include <SPI.h>
|
||||||
#include <Ethernet.h>
|
#include <Ethernet.h>
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#if defined(FEATURE_AZ_POSITION_ROTARY_ENCODER_USE_LIB) || defined(FEATURE_EL_POSITION_ROTARY_ENCODER_USE_LIB)
|
||||||
|
//#define ENCODER_OPTIMIZE_INTERRUPTS
|
||||||
|
#include <Encoder.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
#include "rotator.h"
|
#include "rotator.h"
|
||||||
|
|
||||||
@ -1118,7 +883,17 @@ DebugClass debug;
|
|||||||
#define SEI_BUS_COMMAND_TIMEOUT_MS 6000
|
#define SEI_BUS_COMMAND_TIMEOUT_MS 6000
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#ifdef FEATURE_AZ_POSITION_ROTARY_ENCODER_USE_LIB
|
||||||
|
Encoder AZ_ENCODER(az_rotary_position_pin1, az_rotary_position_pin2);
|
||||||
|
long PREV_AZ_POSITION = 0;
|
||||||
|
long CURRENT_AZ_POSITION;
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef FEATURE_EL_POSITION_ROTARY_ENCODER_USE_LIB
|
||||||
|
Encoder EL_ENCODER(el_rotary_position_pin1, el_rotary_position_pin2);
|
||||||
|
long PREV_EL_POSITION = 0;
|
||||||
|
long CURRENT_EL_POSITION;
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
/* ------------------ let's start doing some stuff now that we got the formalities out of the way --------------------*/
|
/* ------------------ let's start doing some stuff now that we got the formalities out of the way --------------------*/
|
||||||
@ -3409,7 +3184,7 @@ void update_display(){
|
|||||||
char workstring2[32] = "";
|
char workstring2[32] = "";
|
||||||
byte row_override[LCD_ROWS+1];
|
byte row_override[LCD_ROWS+1];
|
||||||
|
|
||||||
for (int x = 0;x < LCD_ROWS;x++){row_override[x] = 0;}
|
for (int x = 0;x < (LCD_ROWS+1);x++){row_override[x] = 0;}
|
||||||
|
|
||||||
k3ngdisplay.clear_pending_buffer();
|
k3ngdisplay.clear_pending_buffer();
|
||||||
|
|
||||||
@ -3920,6 +3695,10 @@ void update_display(){
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
k3ngdisplay.print_center_fixed_field_size(workstring,LCD_MOON_TRACKING_ROW-1,LCD_COLUMNS);
|
k3ngdisplay.print_center_fixed_field_size(workstring,LCD_MOON_TRACKING_ROW-1,LCD_COLUMNS);
|
||||||
|
} else {
|
||||||
|
#if defined(DEBUG_DISPLAY)
|
||||||
|
debug.println(F("update_display: OPTION_DISPLAY_MOON_TRACKING_CONTINUOUSLY row override"));
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
#endif //defined(OPTION_DISPLAY_MOON_TRACKING_CONTINUOUSLY) && defined(FEATURE_MOON_TRACKING)
|
#endif //defined(OPTION_DISPLAY_MOON_TRACKING_CONTINUOUSLY) && defined(FEATURE_MOON_TRACKING)
|
||||||
|
|
||||||
@ -3957,6 +3736,10 @@ void update_display(){
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
k3ngdisplay.print_center_fixed_field_size(workstring,LCD_SUN_TRACKING_ROW-1,LCD_COLUMNS);
|
k3ngdisplay.print_center_fixed_field_size(workstring,LCD_SUN_TRACKING_ROW-1,LCD_COLUMNS);
|
||||||
|
} else {
|
||||||
|
#if defined(DEBUG_DISPLAY)
|
||||||
|
debug.println(F("update_display: OPTION_DISPLAY_SUN_TRACKING_CONTINUOUSLY row override"));
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
#endif //defined(OPTION_DISPLAY_SUN_TRACKING_CONTINUOUSLY) && defined(FEATURE_SUN_TRACKING)
|
#endif //defined(OPTION_DISPLAY_SUN_TRACKING_CONTINUOUSLY) && defined(FEATURE_SUN_TRACKING)
|
||||||
|
|
||||||
@ -4778,9 +4561,9 @@ void read_azimuth(byte force_read){
|
|||||||
|
|
||||||
#ifdef FEATURE_AZ_POSITION_HH12_AS5045_SSI
|
#ifdef FEATURE_AZ_POSITION_HH12_AS5045_SSI
|
||||||
#if defined(OPTION_REVERSE_AZ_HH12_AS5045)
|
#if defined(OPTION_REVERSE_AZ_HH12_AS5045)
|
||||||
raw_azimuth = int((360.0-azimuth_hh12.heading()+AZIMUTH_STARTING_POINT_DEFAULT) * HEADING_MULTIPLIER);
|
raw_azimuth = int((360.0-azimuth_hh12.heading()+azimuth_starting_point /*AZIMUTH_STARTING_POINT_DEFAULT*/) * HEADING_MULTIPLIER);
|
||||||
#else
|
#else
|
||||||
raw_azimuth = int((azimuth_hh12.heading()+AZIMUTH_STARTING_POINT_DEFAULT) * HEADING_MULTIPLIER);
|
raw_azimuth = int((azimuth_hh12.heading()+azimuth_starting_point /*AZIMUTH_STARTING_POINT_DEFAULT*/) * HEADING_MULTIPLIER);
|
||||||
#endif
|
#endif
|
||||||
#ifdef DEBUG_HH12
|
#ifdef DEBUG_HH12
|
||||||
if ((millis() - last_hh12_debug) > 5000) {
|
if ((millis() - last_hh12_debug) > 5000) {
|
||||||
@ -4833,7 +4616,7 @@ void read_azimuth(byte force_read){
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
#ifdef FEATURE_AZ_POSITION_INCREMENTAL_ENCODER
|
#ifdef FEATURE_AZ_POSITION_INCREMENTAL_ENCODER
|
||||||
if (AZIMUTH_STARTING_POINT_DEFAULT == 0) {
|
if (azimuth_starting_point /*AZIMUTH_STARTING_POINT_DEFAULT*/ == 0) {
|
||||||
raw_azimuth = (((((az_incremental_encoder_position) / (AZ_POSITION_INCREMENTAL_ENCODER_PULSES_PER_REV*4.)) * 360.0)) * HEADING_MULTIPLIER);
|
raw_azimuth = (((((az_incremental_encoder_position) / (AZ_POSITION_INCREMENTAL_ENCODER_PULSES_PER_REV*4.)) * 360.0)) * HEADING_MULTIPLIER);
|
||||||
} else {
|
} else {
|
||||||
if (az_incremental_encoder_position > (AZ_POSITION_INCREMENTAL_ENCODER_PULSES_PER_REV*4.)) {
|
if (az_incremental_encoder_position > (AZ_POSITION_INCREMENTAL_ENCODER_PULSES_PER_REV*4.)) {
|
||||||
@ -4933,14 +4716,7 @@ void output_debug(){
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
debug.print("\t\t");
|
debug.print("\t\t");
|
||||||
#ifdef DEBUG_MEMORY
|
|
||||||
void * HP = malloc(4);
|
|
||||||
if (HP) {free(HP);}
|
|
||||||
unsigned long free = (unsigned long)SP - (unsigned long)HP;
|
|
||||||
sprintf(tempstring,"%lu",(unsigned long)free);
|
|
||||||
debug.print(tempstring);
|
|
||||||
debug.print("b free");
|
|
||||||
#endif //DEBUG_MEMORY
|
|
||||||
|
|
||||||
#ifdef FEATURE_YAESU_EMULATION
|
#ifdef FEATURE_YAESU_EMULATION
|
||||||
debug.print("\t\tGS-232");
|
debug.print("\t\tGS-232");
|
||||||
@ -5028,11 +4804,15 @@ void output_debug(){
|
|||||||
debug.print(") ");
|
debug.print(") ");
|
||||||
#endif // FEATURE_AZ_POSITION_POTENTIOMETER
|
#endif // FEATURE_AZ_POSITION_POTENTIOMETER
|
||||||
|
|
||||||
debug.print("\t[");
|
debug.print(F("\tStart:"));
|
||||||
debug.print(azimuth_starting_point);
|
debug.print(azimuth_starting_point);
|
||||||
debug.print("+");
|
debug.print(F(" Rotation Capability:"));
|
||||||
debug.print(azimuth_rotation_capability);
|
debug.print(azimuth_rotation_capability,0);
|
||||||
debug.print("]");
|
debug.print(F(" Raw Az Range: "));
|
||||||
|
debug.print(azimuth_starting_point);
|
||||||
|
debug.print("-");
|
||||||
|
debug.print((azimuth_starting_point+azimuth_rotation_capability),0);
|
||||||
|
debug.println("");
|
||||||
|
|
||||||
#ifndef HARDWARE_EA4TX_ARS_USB
|
#ifndef HARDWARE_EA4TX_ARS_USB
|
||||||
debug.print(" AZ Speed Norm: ");
|
debug.print(" AZ Speed Norm: ");
|
||||||
@ -5044,9 +4824,9 @@ void output_debug(){
|
|||||||
debug.print(analogReadEnhanced(az_speed_pot));
|
debug.print(analogReadEnhanced(az_speed_pot));
|
||||||
}
|
}
|
||||||
if (az_preset_pot) {
|
if (az_preset_pot) {
|
||||||
debug.print(" AZ Preset Pot Analog: ");
|
debug.print(F(" AZ Preset Pot Analog: "));
|
||||||
debug.print(analogReadEnhanced(az_preset_pot));
|
debug.print(analogReadEnhanced(az_preset_pot));
|
||||||
debug.print(" AZ Preset Pot Setting: ");
|
debug.print(F(" AZ Preset Pot Setting: "));
|
||||||
dtostrf((map(analogReadEnhanced(az_preset_pot), AZ_PRESET_POT_FULL_CW, AZ_PRESET_POT_FULL_CCW, AZ_PRESET_POT_FULL_CW_MAP, AZ_PRESET_POT_FULL_CCW_MAP)),0,0,tempstring);
|
dtostrf((map(analogReadEnhanced(az_preset_pot), AZ_PRESET_POT_FULL_CW, AZ_PRESET_POT_FULL_CCW, AZ_PRESET_POT_FULL_CW_MAP, AZ_PRESET_POT_FULL_CCW_MAP)),0,0,tempstring);
|
||||||
debug.print(tempstring);
|
debug.print(tempstring);
|
||||||
}
|
}
|
||||||
@ -5057,6 +4837,7 @@ void output_debug(){
|
|||||||
debug.println("");
|
debug.println("");
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
#ifdef FEATURE_ELEVATION_CONTROL
|
#ifdef FEATURE_ELEVATION_CONTROL
|
||||||
debug.print("\tEL: ");
|
debug.print("\tEL: ");
|
||||||
switch (el_state) {
|
switch (el_state) {
|
||||||
@ -5299,16 +5080,33 @@ void output_debug(){
|
|||||||
#endif //FEATURE_ELEVATION_CONTROL
|
#endif //FEATURE_ELEVATION_CONTROL
|
||||||
#endif //DEBUG_AUTOCORRECT
|
#endif //DEBUG_AUTOCORRECT
|
||||||
|
|
||||||
|
if ((raw_azimuth / LCD_HEADING_MULTIPLIER) < azimuth_starting_point){
|
||||||
|
debug.print(F("\tWARNING: raw azimuth is CCW of configured starting point of "));
|
||||||
|
debug.print(azimuth_starting_point);
|
||||||
|
debug.println("!");
|
||||||
|
}
|
||||||
|
|
||||||
|
if ((raw_azimuth / LCD_HEADING_MULTIPLIER) > (azimuth_starting_point+azimuth_rotation_capability)){
|
||||||
|
debug.print(F("\tWARNING: raw azimuth is CW of configured ending point of "));
|
||||||
|
debug.print((azimuth_starting_point+azimuth_rotation_capability),0);
|
||||||
|
debug.println("!");
|
||||||
|
}
|
||||||
|
|
||||||
|
void * HP = malloc(4);
|
||||||
|
if (HP) {free(HP);}
|
||||||
|
unsigned long free = (unsigned long)SP - (unsigned long)HP;
|
||||||
|
sprintf(tempstring,"%lu",(unsigned long)free);
|
||||||
|
if ((free < 500) || (free > 10000)){
|
||||||
|
debug.print(F("WARNING: Low memory: "));
|
||||||
|
debug.print(tempstring);
|
||||||
|
debug.println(F("b free"));
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
debug.println("\n\n\n");
|
debug.println("\n\n\n");
|
||||||
|
|
||||||
//port_flush();
|
|
||||||
|
|
||||||
last_debug_output_time = millis();
|
last_debug_output_time = millis();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
#endif // defined(FEATURE_REMOTE_UNIT_SLAVE) || defined(FEATURE_YAESU_EMULATION) || defined(FEATURE_EASYCOM_EMULATION)
|
#endif // defined(FEATURE_REMOTE_UNIT_SLAVE) || defined(FEATURE_YAESU_EMULATION) || defined(FEATURE_EASYCOM_EMULATION)
|
||||||
|
|
||||||
@ -6745,6 +6543,10 @@ void initialize_display(){
|
|||||||
|
|
||||||
k3ngdisplay.initialize();
|
k3ngdisplay.initialize();
|
||||||
|
|
||||||
|
#if defined(FEATURE_TEST_DISPLAY_AT_STARTUP)
|
||||||
|
test_display();
|
||||||
|
#endif
|
||||||
|
|
||||||
#ifdef OPTION_DISPLAY_VERSION_ON_STARTUP
|
#ifdef OPTION_DISPLAY_VERSION_ON_STARTUP
|
||||||
k3ngdisplay.print_center_timed_message("\x4B\x33\x4E\x47","\x52\x6F\x74\x6F\x72\x20\x43\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72",CODE_VERSION,SPLASH_SCREEN_TIME);
|
k3ngdisplay.print_center_timed_message("\x4B\x33\x4E\x47","\x52\x6F\x74\x6F\x72\x20\x43\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72",CODE_VERSION,SPLASH_SCREEN_TIME);
|
||||||
#else
|
#else
|
||||||
@ -12769,7 +12571,44 @@ void set_el_stepper_freq(unsigned int frequency){
|
|||||||
#endif //defined(FEATURE_ELEVATION_CONTROL) && defined(FEATURE_STEPPER_MOTOR)
|
#endif //defined(FEATURE_ELEVATION_CONTROL) && defined(FEATURE_STEPPER_MOTOR)
|
||||||
//------------------------------------------------------
|
//------------------------------------------------------
|
||||||
|
|
||||||
|
#if defined(FEATURE_TEST_DISPLAY_AT_STARTUP)
|
||||||
|
|
||||||
|
void test_display(){
|
||||||
|
|
||||||
|
char tempchar[12] = "";
|
||||||
|
int display_number = 1;
|
||||||
|
|
||||||
|
|
||||||
|
k3ngdisplay.print_top_left("1");
|
||||||
|
k3ngdisplay.service(1);
|
||||||
|
delay(150);
|
||||||
|
k3ngdisplay.print_top_right("2");
|
||||||
|
k3ngdisplay.service(1);
|
||||||
|
delay(150);
|
||||||
|
k3ngdisplay.print_bottom_left("3");
|
||||||
|
k3ngdisplay.service(1);
|
||||||
|
delay(150);
|
||||||
|
k3ngdisplay.print_bottom_right("4");
|
||||||
|
k3ngdisplay.service(1);
|
||||||
|
delay(2000);
|
||||||
|
k3ngdisplay.clear();
|
||||||
|
|
||||||
|
for (int y = 0; y < LCD_ROWS;y++){
|
||||||
|
for (int x = 0; x < LCD_COLUMNS;x++){
|
||||||
|
dtostrf(display_number,0,0,tempchar);
|
||||||
|
k3ngdisplay.print(tempchar,x,y);
|
||||||
|
k3ngdisplay.service(1);
|
||||||
|
delay(100);
|
||||||
|
display_number++;
|
||||||
|
if (display_number > 9){display_number = 0;}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
delay(2000);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
#endif //FEATURE_TEST_DISPLAY_AT_STARTUP
|
||||||
|
|
||||||
|
|
||||||
// that's all, folks !
|
// that's all, folks !
|
||||||
|
@ -61,6 +61,41 @@ void DebugClass::print(const __FlashStringHelper *str)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void DebugClass::println(const __FlashStringHelper *str)
|
||||||
|
{
|
||||||
|
char c;
|
||||||
|
if(!str) return;
|
||||||
|
|
||||||
|
/* since str is a const we can't increment it, so do this instead */
|
||||||
|
char *p = (char *)str;
|
||||||
|
|
||||||
|
/* keep going until we find the null */
|
||||||
|
while((c = pgm_read_byte(p++)))
|
||||||
|
{
|
||||||
|
#if defined(FEATURE_REMOTE_UNIT_SLAVE) || defined(FEATURE_YAESU_EMULATION) || defined(FEATURE_EASYCOM_EMULATION)
|
||||||
|
if (debug_mode & CONTROL_PORT0)
|
||||||
|
{
|
||||||
|
control_port->write(c);
|
||||||
|
}
|
||||||
|
#endif //defined(FEATURE_REMOTE_UNIT_SLAVE) || defined(FEATURE_YAESU_EMULATION) || defined(FEATURE_EASYCOM_EMULATION)
|
||||||
|
|
||||||
|
// #ifdef FEATURE_ETHERNET
|
||||||
|
// if (debug_mode & ETHERNET_PORT0)
|
||||||
|
// {
|
||||||
|
// ethernetclient0.write(c);
|
||||||
|
// }
|
||||||
|
// #endif //FEATURE_ETHERNET
|
||||||
|
|
||||||
|
// #if defined(FEATURE_ETHERNET) && defined(ETHERNET_TCP_PORT_1)
|
||||||
|
// if (debug_mode & ETHERNET_PORT1)
|
||||||
|
// {
|
||||||
|
// ethernetclient1.write(c);
|
||||||
|
// }
|
||||||
|
// #endif //defined(FEATURE_ETHERNET) && defined(ETHERNET_TCP_PORT_1)
|
||||||
|
}
|
||||||
|
control_port->println();
|
||||||
|
}
|
||||||
|
|
||||||
void DebugClass::print(char ch)
|
void DebugClass::print(char ch)
|
||||||
{
|
{
|
||||||
#if defined(FEATURE_REMOTE_UNIT_SLAVE) || defined(FEATURE_YAESU_EMULATION) || defined(FEATURE_EASYCOM_EMULATION)
|
#if defined(FEATURE_REMOTE_UNIT_SLAVE) || defined(FEATURE_YAESU_EMULATION) || defined(FEATURE_EASYCOM_EMULATION)
|
||||||
|
@ -53,7 +53,7 @@ class DebugClass
|
|||||||
|
|
||||||
void println(double i);
|
void println(double i);
|
||||||
void println(const char *str);
|
void println(const char *str);
|
||||||
// void println (const __FlashStringHelper *str);
|
void println(const __FlashStringHelper *str);
|
||||||
|
|
||||||
void write(const char *str);
|
void write(const char *str);
|
||||||
void write(int i);
|
void write(int i);
|
||||||
|
@ -46,11 +46,11 @@
|
|||||||
#undef FEATURE_EL_PRESET_ENCODER
|
#undef FEATURE_EL_PRESET_ENCODER
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if !defined(FEATURE_AZ_POSITION_POTENTIOMETER) && !defined(FEATURE_AZ_POSITION_ROTARY_ENCODER) && !defined(FEATURE_AZ_POSITION_PULSE_INPUT) && !defined(FEATURE_AZ_POSITION_GET_FROM_REMOTE_UNIT) && !defined(FEATURE_AZ_POSITION_HMC5883L) && !defined(FEATURE_AZ_POSITION_ADAFRUIT_LSM303) && !defined(FEATURE_AZ_POSITION_HH12_AS5045_SSI) &&!defined(FEATURE_AZ_POSITION_INCREMENTAL_ENCODER) &&!defined(FEATURE_AZ_POSITION_POLOLU_LSM303) &&!defined(FEATURE_AZ_POSITION_A2_ABSOLUTE_ENCODER)
|
#if !defined(FEATURE_AZ_POSITION_POTENTIOMETER) && !defined(FEATURE_AZ_POSITION_ROTARY_ENCODER) && !defined(FEATURE_AZ_POSITION_PULSE_INPUT) && !defined(FEATURE_AZ_POSITION_GET_FROM_REMOTE_UNIT) && !defined(FEATURE_AZ_POSITION_HMC5883L) && !defined(FEATURE_AZ_POSITION_ADAFRUIT_LSM303) && !defined(FEATURE_AZ_POSITION_HH12_AS5045_SSI) &&!defined(FEATURE_AZ_POSITION_INCREMENTAL_ENCODER) &&!defined(FEATURE_AZ_POSITION_POLOLU_LSM303) &&!defined(FEATURE_AZ_POSITION_A2_ABSOLUTE_ENCODER) &&!defined(FEATURE_AZ_POSITION_ROTARY_ENCODER_USE_LIB)
|
||||||
#error "You must specify one AZ position sensor feature"
|
#error "You must specify one AZ position sensor feature"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if defined(FEATURE_ELEVATION_CONTROL) && !defined(FEATURE_EL_POSITION_POTENTIOMETER) && !defined(FEATURE_EL_POSITION_ROTARY_ENCODER) && !defined(FEATURE_EL_POSITION_PULSE_INPUT) && !defined(FEATURE_EL_POSITION_ADXL345_USING_LOVE_ELECTRON_LIB) && !defined(FEATURE_EL_POSITION_ADXL345_USING_ADAFRUIT_LIB) && !defined(FEATURE_EL_POSITION_GET_FROM_REMOTE_UNIT) && !defined(FEATURE_EL_POSITION_ADAFRUIT_LSM303) && !defined(FEATURE_EL_POSITION_HH12_AS5045_SSI) && !defined(FEATURE_EL_POSITION_INCREMENTAL_ENCODER) && !defined(FEATURE_EL_POSITION_MEMSIC_2125) &&!defined(FEATURE_EL_POSITION_POLOLU_LSM303) && !defined(FEATURE_EL_POSITION_A2_ABSOLUTE_ENCODER)
|
#if defined(FEATURE_ELEVATION_CONTROL) && !defined(FEATURE_EL_POSITION_POTENTIOMETER) && !defined(FEATURE_EL_POSITION_ROTARY_ENCODER) && !defined(FEATURE_EL_POSITION_PULSE_INPUT) && !defined(FEATURE_EL_POSITION_ADXL345_USING_LOVE_ELECTRON_LIB) && !defined(FEATURE_EL_POSITION_ADXL345_USING_ADAFRUIT_LIB) && !defined(FEATURE_EL_POSITION_GET_FROM_REMOTE_UNIT) && !defined(FEATURE_EL_POSITION_ADAFRUIT_LSM303) && !defined(FEATURE_EL_POSITION_HH12_AS5045_SSI) && !defined(FEATURE_EL_POSITION_INCREMENTAL_ENCODER) && !defined(FEATURE_EL_POSITION_MEMSIC_2125) &&!defined(FEATURE_EL_POSITION_POLOLU_LSM303) && !defined(FEATURE_EL_POSITION_A2_ABSOLUTE_ENCODER) && !defined(FEATURE_EL_POSITION_ROTARY_ENCODER_USE_LIB)
|
||||||
#error "You must specify one EL position sensor feature"
|
#error "You must specify one EL position sensor feature"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
@ -19,6 +19,7 @@
|
|||||||
// #define FEATURE_ETHERNET
|
// #define FEATURE_ETHERNET
|
||||||
// #define FEATURE_STEPPER_MOTOR // requires Mega or an AVR with Timer 5 support
|
// #define FEATURE_STEPPER_MOTOR // requires Mega or an AVR with Timer 5 support
|
||||||
// #define FEATURE_AUTOCORRECT
|
// #define FEATURE_AUTOCORRECT
|
||||||
|
// #define FEATURE_TEST_DISPLAY_AT_STARTUP
|
||||||
|
|
||||||
#define LANGUAGE_ENGLISH // all languages customized in rotator_language.h
|
#define LANGUAGE_ENGLISH // all languages customized in rotator_language.h
|
||||||
// #define LANGUAGE_SPANISH
|
// #define LANGUAGE_SPANISH
|
||||||
@ -160,7 +161,6 @@
|
|||||||
|
|
||||||
#define DEBUG_DUMP // normally compile with this activated unless you're really trying to save memory
|
#define DEBUG_DUMP // normally compile with this activated unless you're really trying to save memory
|
||||||
// #define DEBUG_LOOP
|
// #define DEBUG_LOOP
|
||||||
// #define DEBUG_MEMORY
|
|
||||||
// #define DEBUG_BUTTONS
|
// #define DEBUG_BUTTONS
|
||||||
// #define DEBUG_SERIAL
|
// #define DEBUG_SERIAL
|
||||||
// #define DEBUG_SERVICE_REQUEST_QUEUE
|
// #define DEBUG_SERVICE_REQUEST_QUEUE
|
||||||
|
@ -14,6 +14,8 @@
|
|||||||
//#define LANGUAGE_FRENCH
|
//#define LANGUAGE_FRENCH
|
||||||
//#define LANGUAGE_DUTCH
|
//#define LANGUAGE_DUTCH
|
||||||
|
|
||||||
|
//#define FEATURE_TEST_DISPLAY_AT_STARTUP
|
||||||
|
|
||||||
#define FEATURE_AZ_POSITION_POTENTIOMETER //this is used for both a voltage from a rotator control or a homebrew rotator with a potentiometer
|
#define FEATURE_AZ_POSITION_POTENTIOMETER //this is used for both a voltage from a rotator control or a homebrew rotator with a potentiometer
|
||||||
|
|
||||||
#define FEATURE_EL_POSITION_POTENTIOMETER
|
#define FEATURE_EL_POSITION_POTENTIOMETER
|
||||||
@ -56,7 +58,6 @@
|
|||||||
#define DEFAULT_DEBUG_STATE 0// this should be set to zero unless you're debugging something at startup
|
#define DEFAULT_DEBUG_STATE 0// this should be set to zero unless you're debugging something at startup
|
||||||
|
|
||||||
#define DEBUG_DUMP
|
#define DEBUG_DUMP
|
||||||
#define DEBUG_MEMORY
|
|
||||||
// #define DEBUG_BUTTONS
|
// #define DEBUG_BUTTONS
|
||||||
// #define DEBUG_SERIAL
|
// #define DEBUG_SERIAL
|
||||||
// #define DEBUG_SERVICE_REQUEST_QUEUE
|
// #define DEBUG_SERVICE_REQUEST_QUEUE
|
||||||
|
@ -19,6 +19,7 @@
|
|||||||
//#define FEATURE_ETHERNET
|
//#define FEATURE_ETHERNET
|
||||||
//#define FEATURE_STEPPER_MOTOR // requires Mega or an AVR with Timer 5 support
|
//#define FEATURE_STEPPER_MOTOR // requires Mega or an AVR with Timer 5 support
|
||||||
//#define FEATURE_AUTOCORRECT
|
//#define FEATURE_AUTOCORRECT
|
||||||
|
//#define FEATURE_TEST_DISPLAY_AT_STARTUP
|
||||||
|
|
||||||
#define LANGUAGE_ENGLISH // all languages customized in rotator_language.h
|
#define LANGUAGE_ENGLISH // all languages customized in rotator_language.h
|
||||||
//#define LANGUAGE_SPANISH
|
//#define LANGUAGE_SPANISH
|
||||||
@ -147,7 +148,6 @@
|
|||||||
#define DEFAULT_DEBUG_STATE 0 // 1 = activate debug mode at startup; this should be set to zero unless you're debugging something at startup
|
#define DEFAULT_DEBUG_STATE 0 // 1 = activate debug mode at startup; this should be set to zero unless you're debugging something at startup
|
||||||
|
|
||||||
#define DEBUG_DUMP // normally compile with this activated unless you're really trying to save memory
|
#define DEBUG_DUMP // normally compile with this activated unless you're really trying to save memory
|
||||||
// #define DEBUG_MEMORY
|
|
||||||
// #define DEBUG_BUTTONS
|
// #define DEBUG_BUTTONS
|
||||||
// #define DEBUG_SERIAL
|
// #define DEBUG_SERIAL
|
||||||
// #define DEBUG_SERVICE_REQUEST_QUEUE
|
// #define DEBUG_SERVICE_REQUEST_QUEUE
|
||||||
|
@ -25,6 +25,7 @@
|
|||||||
// #define FEATURE_ETHERNET
|
// #define FEATURE_ETHERNET
|
||||||
// #define FEATURE_STEPPER_MOTOR // requires Mega or an AVR with Timer 5 support
|
// #define FEATURE_STEPPER_MOTOR // requires Mega or an AVR with Timer 5 support
|
||||||
// #define FEATURE_AUTOCORRECT
|
// #define FEATURE_AUTOCORRECT
|
||||||
|
// #define FEATURE_TEST_DISPLAY_AT_STARTUP
|
||||||
|
|
||||||
#define LANGUAGE_ENGLISH // all languages customized in rotator_language.h
|
#define LANGUAGE_ENGLISH // all languages customized in rotator_language.h
|
||||||
// #define LANGUAGE_SPANISH
|
// #define LANGUAGE_SPANISH
|
||||||
@ -42,19 +43,21 @@
|
|||||||
|
|
||||||
|
|
||||||
/* position sensors - pick one for azimuth and one for elevation if using an az/el rotator */
|
/* position sensors - pick one for azimuth and one for elevation if using an az/el rotator */
|
||||||
#define FEATURE_AZ_POSITION_POTENTIOMETER //this is used for both a voltage from a rotator control or a homebrew rotator with a potentiometer
|
// #define FEATURE_AZ_POSITION_POTENTIOMETER //this is used for both a voltage from a rotator control or a homebrew rotator with a potentiometer
|
||||||
// #define FEATURE_AZ_POSITION_ROTARY_ENCODER
|
// #define FEATURE_AZ_POSITION_ROTARY_ENCODER
|
||||||
|
// #define FEATURE_AZ_POSITION_ROTARY_ENCODER_USE_LIB
|
||||||
// #define FEATURE_AZ_POSITION_PULSE_INPUT
|
// #define FEATURE_AZ_POSITION_PULSE_INPUT
|
||||||
// #define FEATURE_AZ_POSITION_HMC5883L // HMC5883L digital compass support
|
// #define FEATURE_AZ_POSITION_HMC5883L // HMC5883L digital compass support
|
||||||
// #define FEATURE_AZ_POSITION_GET_FROM_REMOTE_UNIT // requires FEATURE_MASTER_WITH_SERIAL_SLAVE or FEATURE_MASTER_WITH_ETHERNET_SLAVE
|
// #define FEATURE_AZ_POSITION_GET_FROM_REMOTE_UNIT // requires FEATURE_MASTER_WITH_SERIAL_SLAVE or FEATURE_MASTER_WITH_ETHERNET_SLAVE
|
||||||
// #define FEATURE_AZ_POSITION_ADAFRUIT_LSM303 // Uncomment for azimuth using LSM303 compass and Adafruit library (https://github.com/adafruit/Adafruit_LSM303) (also uncomment object declaration below)
|
// #define FEATURE_AZ_POSITION_ADAFRUIT_LSM303 // Uncomment for azimuth using LSM303 compass and Adafruit library (https://github.com/adafruit/Adafruit_LSM303) (also uncomment object declaration below)
|
||||||
// #define FEATURE_AZ_POSITION_POLOLU_LSM303 // Uncomment for azimuth using LSM303 compass and Polulu library
|
// #define FEATURE_AZ_POSITION_POLOLU_LSM303 // Uncomment for azimuth using LSM303 compass and Polulu library
|
||||||
// #define FEATURE_AZ_POSITION_HH12_AS5045_SSI
|
#define FEATURE_AZ_POSITION_HH12_AS5045_SSI
|
||||||
// #define FEATURE_AZ_POSITION_INCREMENTAL_ENCODER
|
// #define FEATURE_AZ_POSITION_INCREMENTAL_ENCODER
|
||||||
// #define FEATURE_AZ_POSITION_A2_ABSOLUTE_ENCODER
|
// #define FEATURE_AZ_POSITION_A2_ABSOLUTE_ENCODER
|
||||||
|
|
||||||
#define FEATURE_EL_POSITION_POTENTIOMETER
|
#define FEATURE_EL_POSITION_POTENTIOMETER
|
||||||
// #define FEATURE_EL_POSITION_ROTARY_ENCODER
|
// #define FEATURE_EL_POSITION_ROTARY_ENCODER
|
||||||
|
// #define FEATURE_EL_POSITION_ROTARY_ENCODER_USE_LIB
|
||||||
// #define FEATURE_EL_POSITION_PULSE_INPUT
|
// #define FEATURE_EL_POSITION_PULSE_INPUT
|
||||||
// #define FEATURE_EL_POSITION_ADXL345_USING_LOVE_ELECTRON_LIB // Uncomment for elevation ADXL345 accelerometer support using ADXL345 library
|
// #define FEATURE_EL_POSITION_ADXL345_USING_LOVE_ELECTRON_LIB // Uncomment for elevation ADXL345 accelerometer support using ADXL345 library
|
||||||
// #define FEATURE_EL_POSITION_ADXL345_USING_ADAFRUIT_LIB // Uncomment for elevation ADXL345 accelerometer support using Adafruit library
|
// #define FEATURE_EL_POSITION_ADXL345_USING_ADAFRUIT_LIB // Uncomment for elevation ADXL345 accelerometer support using Adafruit library
|
||||||
@ -176,7 +179,6 @@
|
|||||||
|
|
||||||
#define DEBUG_DUMP // normally compile with this activated unless you're really trying to save memory
|
#define DEBUG_DUMP // normally compile with this activated unless you're really trying to save memory
|
||||||
// #define DEBUG_LOOP
|
// #define DEBUG_LOOP
|
||||||
// #define DEBUG_MEMORY
|
|
||||||
// #define DEBUG_BUTTONS
|
// #define DEBUG_BUTTONS
|
||||||
// #define DEBUG_SERIAL
|
// #define DEBUG_SERIAL
|
||||||
// #define DEBUG_SERVICE_REQUEST_QUEUE
|
// #define DEBUG_SERVICE_REQUEST_QUEUE
|
||||||
|
@ -19,6 +19,7 @@
|
|||||||
//#define FEATURE_ETHERNET
|
//#define FEATURE_ETHERNET
|
||||||
#define FEATURE_STEPPER_MOTOR // requires this library: https://code.google.com/p/rogue-code/wiki/ToneLibraryDocumentation
|
#define FEATURE_STEPPER_MOTOR // requires this library: https://code.google.com/p/rogue-code/wiki/ToneLibraryDocumentation
|
||||||
//#define FEATURE_AUTOCORRECT
|
//#define FEATURE_AUTOCORRECT
|
||||||
|
// #define FEATURE_TEST_DISPLAY_AT_STARTUP
|
||||||
|
|
||||||
#define LANGUAGE_ENGLISH // all languages customized in rotator_language.h
|
#define LANGUAGE_ENGLISH // all languages customized in rotator_language.h
|
||||||
//#define LANGUAGE_SPANISH
|
//#define LANGUAGE_SPANISH
|
||||||
@ -155,7 +156,6 @@
|
|||||||
#define DEFAULT_DEBUG_STATE 0// this should be set to zero unless you're debugging something at startup
|
#define DEFAULT_DEBUG_STATE 0// this should be set to zero unless you're debugging something at startup
|
||||||
|
|
||||||
#define DEBUG_DUMP
|
#define DEBUG_DUMP
|
||||||
// #define DEBUG_MEMORY
|
|
||||||
// #define DEBUG_BUTTONS
|
// #define DEBUG_BUTTONS
|
||||||
// #define DEBUG_SERIAL
|
// #define DEBUG_SERIAL
|
||||||
// #define DEBUG_SERVICE_REQUEST_QUEUE
|
// #define DEBUG_SERVICE_REQUEST_QUEUE
|
||||||
|
@ -64,12 +64,12 @@
|
|||||||
#define el_rotary_preset_pin2 0 // DOWN Encoder Pin
|
#define el_rotary_preset_pin2 0 // DOWN Encoder Pin
|
||||||
#endif //FEATURE_EL_PRESET_ENCODER
|
#endif //FEATURE_EL_PRESET_ENCODER
|
||||||
|
|
||||||
#ifdef FEATURE_AZ_POSITION_ROTARY_ENCODER
|
#if defined(FEATURE_AZ_POSITION_ROTARY_ENCODER) || defined(FEATURE_AZ_POSITION_ROTARY_ENCODER_USE_LIB)
|
||||||
#define az_rotary_position_pin1 0 // CW Encoder Pin
|
#define az_rotary_position_pin1 0 // CW Encoder Pin
|
||||||
#define az_rotary_position_pin2 0 // CCW Encoder Pin
|
#define az_rotary_position_pin2 0 // CCW Encoder Pin
|
||||||
#endif //FEATURE_AZ_POSITION_ROTARY_ENCODER
|
#endif //FEATURE_AZ_POSITION_ROTARY_ENCODER
|
||||||
|
|
||||||
#ifdef FEATURE_EL_POSITION_ROTARY_ENCODER
|
#if defined(FEATURE_EL_POSITION_ROTARY_ENCODER) || defined(FEATURE_EL_POSITION_ROTARY_ENCODER_USE_LIB)
|
||||||
#define el_rotary_position_pin1 0 // CW Encoder Pin
|
#define el_rotary_position_pin1 0 // CW Encoder Pin
|
||||||
#define el_rotary_position_pin2 0 // CCW Encoder Pin
|
#define el_rotary_position_pin2 0 // CCW Encoder Pin
|
||||||
#endif //FEATURE_EL_POSITION_ROTARY_ENCODER
|
#endif //FEATURE_EL_POSITION_ROTARY_ENCODER
|
||||||
|
@ -72,14 +72,14 @@
|
|||||||
#define el_rotary_preset_pin2 0 // A2 //7 // DOWN Encoder Pin
|
#define el_rotary_preset_pin2 0 // A2 //7 // DOWN Encoder Pin
|
||||||
#endif //FEATURE_EL_PRESET_ENCODER
|
#endif //FEATURE_EL_PRESET_ENCODER
|
||||||
|
|
||||||
#ifdef FEATURE_AZ_POSITION_ROTARY_ENCODER
|
#if defined(FEATURE_AZ_POSITION_ROTARY_ENCODER) || defined(FEATURE_AZ_POSITION_ROTARY_ENCODER_USE_LIB)
|
||||||
#define az_rotary_position_pin1 A3 // CW Encoder Pin
|
#define az_rotary_position_pin1 0 // CW Encoder Pin
|
||||||
#define az_rotary_position_pin2 A2 // CCW Encoder Pin
|
#define az_rotary_position_pin2 0 // CCW Encoder Pin
|
||||||
#endif //FEATURE_AZ_POSITION_ROTARY_ENCODER
|
#endif //FEATURE_AZ_POSITION_ROTARY_ENCODER
|
||||||
|
|
||||||
#ifdef FEATURE_EL_POSITION_ROTARY_ENCODER
|
#if defined(FEATURE_EL_POSITION_ROTARY_ENCODER) || defined(FEATURE_EL_POSITION_ROTARY_ENCODER_USE_LIB)
|
||||||
#define el_rotary_position_pin1 0 // CW Encoder Pin
|
#define el_rotary_position_pin1 0 // CW Encoder Pin
|
||||||
#define el_rotary_position_pin2 0 // CCW Encoder Pin
|
#define el_rotary_position_pin2 0 // CCW Encoder Pin
|
||||||
#endif //FEATURE_EL_POSITION_ROTARY_ENCODER
|
#endif //FEATURE_EL_POSITION_ROTARY_ENCODER
|
||||||
|
|
||||||
#ifdef FEATURE_AZ_POSITION_PULSE_INPUT
|
#ifdef FEATURE_AZ_POSITION_PULSE_INPUT
|
||||||
|
@ -1,9 +1,19 @@
|
|||||||
|
|
||||||
/* -------------------------- rotation settings ---------------------------------------*/
|
/* -------------------------- rotation settings ---------------------------------------*/
|
||||||
|
|
||||||
#define AZIMUTH_STARTING_POINT_DEFAULT 180 // the starting point in degrees of the azimuthal rotator
|
#define AZIMUTH_STARTING_POINT_DEFAULT 180 // the starting point in degrees of the azimuthal rotator - only used for initializing EEPROM
|
||||||
|
#define AZIMUTH_ROTATION_CAPABILITY_DEFAULT 450 // the default rotation capability of the rotator in degrees - only used for initializing EEPROM
|
||||||
|
/*
|
||||||
|
|
||||||
#define AZIMUTH_ROTATION_CAPABILITY_DEFAULT 450 // the default rotation capability of the rotator in degrees
|
Use these commands to change the azimuth starting point and rotation capability if you have already ran the code one which would have
|
||||||
|
initialized the EEPROM:
|
||||||
|
|
||||||
|
\Ix[x][x] - set az starting point
|
||||||
|
\I - display the current az starting point
|
||||||
|
\Jx[x][x] - set az rotation capability
|
||||||
|
\J - display the current az rotation capability
|
||||||
|
\Q - Save settings in the EEPROM and restart
|
||||||
|
*/
|
||||||
|
|
||||||
#define ELEVATION_MAXIMUM_DEGREES 180 // change this to set the maximum elevation in degrees
|
#define ELEVATION_MAXIMUM_DEGREES 180 // change this to set the maximum elevation in degrees
|
||||||
|
|
||||||
|
@ -1,9 +1,19 @@
|
|||||||
|
|
||||||
/* -------------------------- rotation settings ---------------------------------------*/
|
/* -------------------------- rotation settings ---------------------------------------*/
|
||||||
|
|
||||||
#define AZIMUTH_STARTING_POINT_DEFAULT 180 // the starting point in degrees of the azimuthal rotator
|
#define AZIMUTH_STARTING_POINT_DEFAULT 180 // the starting point in degrees of the azimuthal rotator - only used for initializing EEPROM
|
||||||
|
#define AZIMUTH_ROTATION_CAPABILITY_DEFAULT 450 // the default rotation capability of the rotator in degrees - only used for initializing EEPROM
|
||||||
|
/*
|
||||||
|
|
||||||
#define AZIMUTH_ROTATION_CAPABILITY_DEFAULT 450 // the default rotation capability of the rotator in degrees
|
Use these commands to change the azimuth starting point and rotation capability if you have already ran the code one which would have
|
||||||
|
initialized the EEPROM:
|
||||||
|
|
||||||
|
\Ix[x][x] - set az starting point
|
||||||
|
\I - display the current az starting point
|
||||||
|
\Jx[x][x] - set az rotation capability
|
||||||
|
\J - display the current az rotation capability
|
||||||
|
\Q - Save settings in the EEPROM and restart
|
||||||
|
*/
|
||||||
|
|
||||||
#define ELEVATION_MAXIMUM_DEGREES 180 // change this to set the maximum elevation in degrees
|
#define ELEVATION_MAXIMUM_DEGREES 180 // change this to set the maximum elevation in degrees
|
||||||
|
|
||||||
|
@ -1,9 +1,19 @@
|
|||||||
|
|
||||||
/* -------------------------- rotation settings ---------------------------------------*/
|
/* -------------------------- rotation settings ---------------------------------------*/
|
||||||
|
|
||||||
#define AZIMUTH_STARTING_POINT_DEFAULT 180 // the starting point in degrees of the azimuthal rotator
|
#define AZIMUTH_STARTING_POINT_DEFAULT 180 // the starting point in degrees of the azimuthal rotator - only used for initializing EEPROM
|
||||||
|
#define AZIMUTH_ROTATION_CAPABILITY_DEFAULT 450 // the default rotation capability of the rotator in degrees - only used for initializing EEPROM
|
||||||
|
/*
|
||||||
|
|
||||||
#define AZIMUTH_ROTATION_CAPABILITY_DEFAULT 450 // the default rotation capability of the rotator in degrees
|
Use these commands to change the azimuth starting point and rotation capability if you have already ran the code one which would have
|
||||||
|
initialized the EEPROM:
|
||||||
|
|
||||||
|
\Ix[x][x] - set az starting point
|
||||||
|
\I - display the current az starting point
|
||||||
|
\Jx[x][x] - set az rotation capability
|
||||||
|
\J - display the current az rotation capability
|
||||||
|
\Q - Save settings in the EEPROM and restart
|
||||||
|
*/
|
||||||
|
|
||||||
#define ELEVATION_MAXIMUM_DEGREES 180 // change this to set the maximum elevation in degrees
|
#define ELEVATION_MAXIMUM_DEGREES 180 // change this to set the maximum elevation in degrees
|
||||||
|
|
||||||
|
@ -12,9 +12,19 @@
|
|||||||
|
|
||||||
/* -------------------------- rotation settings ---------------------------------------*/
|
/* -------------------------- rotation settings ---------------------------------------*/
|
||||||
|
|
||||||
#define AZIMUTH_STARTING_POINT_DEFAULT 0 //180 // the starting point in degrees of the azimuthal rotator
|
#define AZIMUTH_STARTING_POINT_DEFAULT 180 // the starting point in degrees of the azimuthal rotator - only used for initializing EEPROM
|
||||||
|
#define AZIMUTH_ROTATION_CAPABILITY_DEFAULT 450 // the default rotation capability of the rotator in degrees - only used for initializing EEPROM
|
||||||
|
/*
|
||||||
|
|
||||||
#define AZIMUTH_ROTATION_CAPABILITY_DEFAULT 450 // the default rotation capability of the rotator in degrees
|
Use these commands to change the azimuth starting point and rotation capability if you have already ran the code one which would have
|
||||||
|
initialized the EEPROM:
|
||||||
|
|
||||||
|
\Ix[x][x] - set az starting point
|
||||||
|
\I - display the current az starting point
|
||||||
|
\Jx[x][x] - set az rotation capability
|
||||||
|
\J - display the current az rotation capability
|
||||||
|
\Q - Save settings in the EEPROM and restart
|
||||||
|
*/
|
||||||
|
|
||||||
#define ELEVATION_MAXIMUM_DEGREES 180 // change this to set the maximum elevation in degrees
|
#define ELEVATION_MAXIMUM_DEGREES 180 // change this to set the maximum elevation in degrees
|
||||||
|
|
||||||
|
@ -1,9 +1,19 @@
|
|||||||
|
|
||||||
/* -------------------------- rotation settings ---------------------------------------*/
|
/* -------------------------- rotation settings ---------------------------------------*/
|
||||||
|
|
||||||
#define AZIMUTH_STARTING_POINT_DEFAULT 180 // the starting point in degrees of the azimuthal rotator
|
#define AZIMUTH_STARTING_POINT_DEFAULT 180 // the starting point in degrees of the azimuthal rotator - only used for initializing EEPROM
|
||||||
|
#define AZIMUTH_ROTATION_CAPABILITY_DEFAULT 450 // the default rotation capability of the rotator in degrees - only used for initializing EEPROM
|
||||||
|
/*
|
||||||
|
|
||||||
#define AZIMUTH_ROTATION_CAPABILITY_DEFAULT 360 // the default rotation capability of the rotator in degrees
|
Use these commands to change the azimuth starting point and rotation capability if you have already ran the code one which would have
|
||||||
|
initialized the EEPROM:
|
||||||
|
|
||||||
|
\Ix[x][x] - set az starting point
|
||||||
|
\I - display the current az starting point
|
||||||
|
\Jx[x][x] - set az rotation capability
|
||||||
|
\J - display the current az rotation capability
|
||||||
|
\Q - Save settings in the EEPROM and restart
|
||||||
|
*/
|
||||||
|
|
||||||
#define ELEVATION_MAXIMUM_DEGREES 180 // change this to set the maximum elevation in degrees
|
#define ELEVATION_MAXIMUM_DEGREES 180 // change this to set the maximum elevation in degrees
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user