mirror of
https://github.com/k3ng/k3ng_rotator_controller.git
synced 2025-02-06 10:59:24 +00:00
2020.02.05.01
Moved debug defines to rotator_debug_log_activation.h FEATURE_AZ_ROTATION_STALL_DETECTION & FEATURE_EL_ROTATION_STALL_DETECTION OPTION_ROTATION_STALL_DETECTION_SERIAL_MESSAGE Settings STALL_CHECK_FREQUENCY_MS_AZ STALL_CHECK_DEGREES_THRESHOLD_AZ STALL_CHECK_FREQUENCY_MS_EL STALL_CHECK_DEGREES_THRESHOLD_EL Pins: az_rotation_stall_detected, el_rotation_stall_detected
This commit is contained in:
parent
0ff667b256
commit
e0e4d0a643
@ -394,11 +394,22 @@
|
||||
Added FEATURE_FABO_LCD_PCF8574_DISPLAY
|
||||
Added PRESET_ENCODER_CHANGE_TIME_MS in settings files
|
||||
|
||||
2018.12.25.01
|
||||
Fixed bug in RTC sync timing affecting SYNC_WITH_RTC_SECONDS (Thanks, Fred, VK2EFL for fix, and Steve, N4TTY for discovery)
|
||||
2018.12.25.01
|
||||
Fixed bug in RTC sync timing affecting SYNC_WITH_RTC_SECONDS (Thanks, Fred, VK2EFL for fix, and Steve, N4TTY for discovery)
|
||||
|
||||
2019.01.03.01
|
||||
Updated GS-232 M and W commands to accept azimuths over 360 degrees and improved parameter verification
|
||||
2019.01.03.01
|
||||
Updated GS-232 M and W commands to accept azimuths over 360 degrees and improved parameter verification
|
||||
|
||||
2020.02.05.01
|
||||
Moved debug defines to rotator_debug_log_activation.h
|
||||
FEATURE_AZ_ROTATION_STALL_DETECTION & FEATURE_EL_ROTATION_STALL_DETECTION
|
||||
OPTION_ROTATION_STALL_DETECTION_SERIAL_MESSAGE
|
||||
Settings
|
||||
STALL_CHECK_FREQUENCY_MS_AZ
|
||||
STALL_CHECK_DEGREES_THRESHOLD_AZ
|
||||
STALL_CHECK_FREQUENCY_MS_EL
|
||||
STALL_CHECK_DEGREES_THRESHOLD_EL
|
||||
Pins: az_rotation_stall_detected, el_rotation_stall_detected
|
||||
|
||||
All library files should be placed in directories likes \sketchbook\libraries\library1\ , \sketchbook\libraries\library2\ , etc.
|
||||
Anything rotator_*.* should be in the ino directory!
|
||||
@ -409,7 +420,7 @@
|
||||
|
||||
*/
|
||||
|
||||
#define CODE_VERSION "2019.01.03.01"
|
||||
#define CODE_VERSION "2020.02.05.01"
|
||||
|
||||
#include <avr/pgmspace.h>
|
||||
#include <EEPROM.h>
|
||||
@ -578,6 +589,7 @@
|
||||
|
||||
#include "rotator_language.h"
|
||||
#include "rotator_debug.h"
|
||||
#include "rotator_debug_log_activation.h"
|
||||
|
||||
|
||||
/*----------------------- variables -------------------------------------*/
|
||||
@ -1131,8 +1143,13 @@ void loop() {
|
||||
#endif
|
||||
#endif // ndef FEATURE_REMOTE_UNIT_SLAVE
|
||||
|
||||
//read_headings();
|
||||
#if defined(FEATURE_AZ_ROTATION_STALL_DETECTION)
|
||||
az_check_rotation_stall();
|
||||
#endif
|
||||
|
||||
#if defined(FEATURE_EL_ROTATION_STALL_DETECTION) && defined(FEATURE_ELEVATION_CONTROL)
|
||||
el_check_rotation_stall();
|
||||
#endif
|
||||
|
||||
#ifdef OPTION_MORE_SERIAL_CHECKS
|
||||
check_serial();
|
||||
@ -2980,7 +2997,6 @@ void check_serial(){
|
||||
control_port_buffer_index++;
|
||||
control_port->write(incoming_serial_byte);
|
||||
}
|
||||
//zzzzz
|
||||
if (incoming_serial_byte == 13) { // do we have a command termination?
|
||||
if ((control_port_buffer[0] == '\\') || (control_port_buffer[0] == '/')) {
|
||||
process_backslash_command(control_port_buffer, control_port_buffer_index, CONTROL_PORT0, return_string);
|
||||
@ -4417,8 +4433,6 @@ void update_display(){
|
||||
// TODO: FEATURE_PARK {done, need to test}, FEATURE_AZ_PRESET_ENCODER and FEATURE_EL_PRESET_ENCODER in status widget {done, need to test}
|
||||
|
||||
|
||||
//zzzzzz
|
||||
|
||||
static unsigned long last_full_screen_redraw = 0;
|
||||
|
||||
if ((millis() - last_full_screen_redraw) > 59999){
|
||||
@ -4655,6 +4669,92 @@ void az_check_operation_timeout(){
|
||||
}
|
||||
}
|
||||
|
||||
// --------------------------------------------------------------
|
||||
//zzzzzzz
|
||||
#if defined(FEATURE_AZ_ROTATION_STALL_DETECTION)
|
||||
void az_check_rotation_stall(){
|
||||
|
||||
// check if rotation has stalled
|
||||
|
||||
static unsigned long last_check_time = 0;
|
||||
static int last_raw_azimuth = 0;
|
||||
static byte rotation_stall_pin_active = 0;
|
||||
|
||||
if (az_state != IDLE){
|
||||
if (last_check_time == 0){
|
||||
last_raw_azimuth = raw_azimuth;
|
||||
last_check_time = millis();
|
||||
if (rotation_stall_pin_active){
|
||||
digitalWriteEnhanced(az_rotation_stall_detected,LOW);
|
||||
rotation_stall_pin_active = 0;
|
||||
}
|
||||
} else {
|
||||
if ((millis() - last_check_time) > STALL_CHECK_FREQUENCY_MS_AZ){
|
||||
if ((abs((raw_azimuth - last_raw_azimuth))*HEADING_MULTIPLIER) < STALL_CHECK_DEGREES_THRESHOLD_AZ){
|
||||
#ifdef DEBUG_ROTATION_STALL_DETECTION
|
||||
debug.println("az_check_rotation_stall: REQUEST_KILL");
|
||||
#endif
|
||||
#ifdef OPTION_ROTATION_STALL_DETECTION_SERIAL_MESSAGE
|
||||
control_port->println("AZ Rotation Stall Detected");
|
||||
#endif
|
||||
submit_request(AZ, REQUEST_KILL, 0, 78);
|
||||
digitalWriteEnhanced(az_rotation_stall_detected,HIGH);
|
||||
rotation_stall_pin_active = 1;
|
||||
last_check_time = 0;
|
||||
} else {
|
||||
last_raw_azimuth = raw_azimuth;
|
||||
last_check_time = millis();
|
||||
}
|
||||
}
|
||||
}
|
||||
} else {
|
||||
last_check_time = 0;
|
||||
}
|
||||
}
|
||||
#endif //FEATURE_AZ_ROTATION_STALL_DETECTION
|
||||
// --------------------------------------------------------------
|
||||
//zzzzzzz
|
||||
#if defined(FEATURE_EL_ROTATION_STALL_DETECTION) && defined(FEATURE_ELEVATION_CONTROL)
|
||||
void el_check_rotation_stall(){
|
||||
|
||||
// check if rotation has stalled
|
||||
|
||||
static unsigned long last_check_time = 0;
|
||||
static int last_elevation = 0;
|
||||
static byte rotation_stall_pin_active = 0;
|
||||
|
||||
if (el_state != IDLE){
|
||||
if (last_check_time == 0){
|
||||
last_elevation = elevation;
|
||||
last_check_time = millis();
|
||||
if (rotation_stall_pin_active){
|
||||
digitalWriteEnhanced(el_rotation_stall_detected,LOW);
|
||||
rotation_stall_pin_active = 0;
|
||||
}
|
||||
} else {
|
||||
if ((millis() - last_check_time) > STALL_CHECK_FREQUENCY_MS_EL){
|
||||
if ((abs((elevation - last_elevation))*HEADING_MULTIPLIER) < STALL_CHECK_DEGREES_THRESHOLD_AZ){
|
||||
#ifdef DEBUG_ROTATION_STALL_DETECTION
|
||||
debug.println("el_check_rotation_stall: REQUEST_KILL");
|
||||
#endif
|
||||
#ifdef OPTION_ROTATION_STALL_DETECTION_SERIAL_MESSAGE
|
||||
control_port->println("EL Rotation Stall Detected");
|
||||
#endif
|
||||
submit_request(EL, REQUEST_KILL, 0, 78);
|
||||
digitalWriteEnhanced(el_rotation_stall_detected,HIGH);
|
||||
rotation_stall_pin_active = 1;
|
||||
last_check_time = 0;
|
||||
} else {
|
||||
last_elevation = elevation;
|
||||
last_check_time = millis();
|
||||
}
|
||||
}
|
||||
}
|
||||
} else {
|
||||
last_check_time = 0;
|
||||
}
|
||||
}
|
||||
#endif //FEATURE_EL_ROTATION_STALL_DETECTION
|
||||
// --------------------------------------------------------------
|
||||
|
||||
#ifdef FEATURE_TIMED_BUFFER
|
||||
@ -7352,6 +7452,16 @@ void initialize_pins(){
|
||||
}
|
||||
#endif //FEATURE_AUDIBLE_ALERT
|
||||
|
||||
#ifdef FEATURE_AZ_ROTATION_STALL_DETECTION
|
||||
pinModeEnhanced(az_rotation_stall_detected, OUTPUT);
|
||||
digitalWriteEnhanced(az_rotation_stall_detected, LOW);
|
||||
#endif //FEATURE_AZ_ROTATION_STALL_DETECTION
|
||||
|
||||
#ifdef FEATURE_EL_ROTATION_STALL_DETECTION
|
||||
pinModeEnhanced(el_rotation_stall_detected, OUTPUT);
|
||||
digitalWriteEnhanced(el_rotation_stall_detected, LOW);
|
||||
#endif //FEATURE_EL_ROTATION_STALL_DETECTION
|
||||
|
||||
} /* initialize_pins */
|
||||
|
||||
// --------------------------------------------------------------
|
||||
@ -11746,8 +11856,6 @@ byte process_backslash_command(byte input_buffer[], int input_buffer_index, byte
|
||||
configuration_dirty = 1;
|
||||
break;
|
||||
|
||||
// zzzzzzz
|
||||
|
||||
// TODO : one big status query command
|
||||
|
||||
#if !defined(OPTION_SAVE_MEMORY_EXCLUDE_EXTENDED_COMMANDS)
|
||||
@ -12343,7 +12451,6 @@ void process_easycom_command(byte * easycom_command_buffer, int easycom_command_
|
||||
void process_dcu_1_command(byte * dcu_1_command_buffer, int dcu_1_command_buffer_index, byte source_port, char * return_string){
|
||||
|
||||
|
||||
//zzzzzzz
|
||||
|
||||
/* DCU-1 protocol implementation
|
||||
|
||||
|
62
k3ng_rotator_controller/rotator_debug_log_activation.h
Normal file
62
k3ng_rotator_controller/rotator_debug_log_activation.h
Normal file
@ -0,0 +1,62 @@
|
||||
/* ---------------------- debug stuff - don't touch unless you know what you are doing --------------------------- */
|
||||
|
||||
|
||||
|
||||
#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_LOOP
|
||||
// #define DEBUG_BUTTONS
|
||||
// #define DEBUG_SERIAL
|
||||
// #define DEBUG_SERVICE_REQUEST_QUEUE
|
||||
// #define DEBUG_EEPROM
|
||||
// #define DEBUG_AZ_SPEED_POT
|
||||
// #define DEBUG_AZ_PRESET_POT
|
||||
// #define DEBUG_PRESET_ENCODERS
|
||||
// #define DEBUG_AZ_MANUAL_ROTATE_LIMITS
|
||||
// #define DEBUG_EL_MANUAL_ROTATE_LIMITS
|
||||
// #define DEBUG_BRAKE
|
||||
// #define DEBUG_OVERLAP
|
||||
// #define DEBUG_DISPLAY
|
||||
// #define DEBUG_AZ_CHECK_OPERATION_TIMEOUT
|
||||
// #define DEBUG_TIMED_BUFFER
|
||||
// #define DEBUG_EL_CHECK_OPERATION_TIMEOUT
|
||||
// #define DEBUG_VARIABLE_OUTPUTS
|
||||
// #define DEBUG_ROTATOR
|
||||
// #define DEBUG_SUBMIT_REQUEST
|
||||
// #define DEBUG_SERVICE_ROTATION
|
||||
// #define DEBUG_POSITION_ROTARY_ENCODER
|
||||
// #define DEBUG_POSITION_ROTARY_ENCODER_USE_PJRC_LIBRARY
|
||||
// #define DEBUG_PROFILE_LOOP_TIME
|
||||
// #define DEBUG_POSITION_PULSE_INPUT
|
||||
// #define DEBUG_ACCEL
|
||||
// #define DEBUG_SVC_REMOTE_COMM_INCOMING_BUFFER
|
||||
// #define DEBUG_SVC_REMOTE_COMM_INCOMING_BUFFER_BAD_DATA
|
||||
// #define DEBUG_HEADING_READING_TIME
|
||||
// #define DEBUG_JOYSTICK
|
||||
// #define DEBUG_ROTATION_INDICATION_PIN
|
||||
// #define DEBUG_HH12
|
||||
// #define DEBUG_PARK
|
||||
// #define DEBUG_LIMIT_SENSE
|
||||
// #define DEBUG_AZ_POSITION_INCREMENTAL_ENCODER
|
||||
// #define DEBUG_EL_POSITION_INCREMENTAL_ENCODER
|
||||
// #define DEBUG_MOON_TRACKING
|
||||
// #define DEBUG_SUN_TRACKING
|
||||
// #define DEBUG_GPS
|
||||
// #define DEBUG_GPS_SERIAL
|
||||
// #define DEBUG_OFFSET
|
||||
// #define DEBUG_RTC
|
||||
// #define DEBUG_PROCESS_YAESU
|
||||
// #define DEBUG_ETHERNET
|
||||
// #define DEBUG_PROCESS_SLAVE
|
||||
// #define DEBUG_MEMSIC_2125
|
||||
// #define DEBUG_SYNC_MASTER_CLOCK_TO_SLAVE
|
||||
// #define DEBUG_SYNC_MASTER_COORDINATES_TO_SLAVE
|
||||
// #define DEBUG_HMC5883L
|
||||
// #define DEBUG_POLOLU_LSM303_CALIBRATION
|
||||
// #define DEBUG_STEPPER
|
||||
// #define DEBUG_AUTOCORRECT
|
||||
// #define DEBUG_A2_ENCODER
|
||||
// #define DEBUG_A2_ENCODER_LOOPBACK_TEST
|
||||
// #define DEBUG_QMC5883
|
||||
// #define DEBUG_ROTATION_STALL_DETECTION
|
@ -121,6 +121,9 @@
|
||||
// #define FEATURE_TWO_DECIMAL_PLACE_HEADINGS // under development - not working yet!
|
||||
// #define FEATURE_AZIMUTH_CORRECTION // correct the azimuth using a calibration table in rotator_settings.h
|
||||
// #define FEATURE_ELEVATION_CORRECTION // correct the elevation using a calibration table in rotator_settings.h
|
||||
// #define FEATURE_AZ_ROTATION_STALL_DETECTION // Azimuth rotation stall detection - pin: az_rotation_stall_detected
|
||||
// #define FEATURE_EL_ROTATION_STALL_DETECTION // Elevation rotation stall detection - pin: el_rotation_stall_detected
|
||||
// #define OPTION_ROTATION_STALL_DETECTION_SERIAL_MESSAGE // Sends message out serial port when rotation stall has been detected
|
||||
// #define FEATURE_ANCILLARY_PIN_CONTROL // control I/O pins with serial commands \F, \N, \P
|
||||
// #define FEATURE_JOYSTICK_CONTROL // analog joystick support
|
||||
// #define OPTION_JOYSTICK_REVERSE_X_AXIS
|
||||
@ -170,71 +173,3 @@
|
||||
// #define OPTION_GPS_EXCLUDE_MISSING_LF_CR_HANDLING
|
||||
// #define OPTION_MORE_SERIAL_CHECKS
|
||||
// #define OPTION_STEPPER_MOTOR_USE_TIMER_ONE_INSTEAD_OF_FIVE
|
||||
|
||||
/* ---------------------- debug stuff - don't touch unless you know what you are doing --------------------------- */
|
||||
|
||||
|
||||
|
||||
#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_LOOP
|
||||
// #define DEBUG_BUTTONS
|
||||
// #define DEBUG_SERIAL
|
||||
// #define DEBUG_SERVICE_REQUEST_QUEUE
|
||||
// #define DEBUG_EEPROM
|
||||
// #define DEBUG_AZ_SPEED_POT
|
||||
// #define DEBUG_AZ_PRESET_POT
|
||||
// #define DEBUG_PRESET_ENCODERS
|
||||
// #define DEBUG_AZ_MANUAL_ROTATE_LIMITS
|
||||
// #define DEBUG_EL_MANUAL_ROTATE_LIMITS
|
||||
// #define DEBUG_BRAKE
|
||||
// #define DEBUG_OVERLAP
|
||||
// #define DEBUG_DISPLAY
|
||||
// #define DEBUG_AZ_CHECK_OPERATION_TIMEOUT
|
||||
// #define DEBUG_TIMED_BUFFER
|
||||
// #define DEBUG_EL_CHECK_OPERATION_TIMEOUT
|
||||
// #define DEBUG_VARIABLE_OUTPUTS
|
||||
// #define DEBUG_ROTATOR
|
||||
// #define DEBUG_SUBMIT_REQUEST
|
||||
// #define DEBUG_SERVICE_ROTATION
|
||||
// #define DEBUG_POSITION_ROTARY_ENCODER
|
||||
// #define DEBUG_POSITION_ROTARY_ENCODER_USE_PJRC_LIBRARY
|
||||
// #define DEBUG_PROFILE_LOOP_TIME
|
||||
// #define DEBUG_POSITION_PULSE_INPUT
|
||||
// #define DEBUG_ACCEL
|
||||
// #define DEBUG_SVC_REMOTE_COMM_INCOMING_BUFFER
|
||||
// #define DEBUG_SVC_REMOTE_COMM_INCOMING_BUFFER_BAD_DATA
|
||||
// #define DEBUG_HEADING_READING_TIME
|
||||
// #define DEBUG_JOYSTICK
|
||||
// #define DEBUG_ROTATION_INDICATION_PIN
|
||||
// #define DEBUG_HH12
|
||||
// #define DEBUG_PARK
|
||||
// #define DEBUG_LIMIT_SENSE
|
||||
// #define DEBUG_AZ_POSITION_INCREMENTAL_ENCODER
|
||||
// #define DEBUG_EL_POSITION_INCREMENTAL_ENCODER
|
||||
// #define DEBUG_MOON_TRACKING
|
||||
// #define DEBUG_SUN_TRACKING
|
||||
// #define DEBUG_GPS
|
||||
// #define DEBUG_GPS_SERIAL
|
||||
// #define DEBUG_OFFSET
|
||||
// #define DEBUG_RTC
|
||||
// #define DEBUG_PROCESS_YAESU
|
||||
// #define DEBUG_ETHERNET
|
||||
// #define DEBUG_PROCESS_SLAVE
|
||||
// #define DEBUG_MEMSIC_2125
|
||||
// #define DEBUG_SYNC_MASTER_CLOCK_TO_SLAVE
|
||||
// #define DEBUG_SYNC_MASTER_COORDINATES_TO_SLAVE
|
||||
// #define DEBUG_HMC5883L
|
||||
// #define DEBUG_POLOLU_LSM303_CALIBRATION
|
||||
// #define DEBUG_STEPPER
|
||||
// #define DEBUG_AUTOCORRECT
|
||||
// #define DEBUG_A2_ENCODER
|
||||
// #define DEBUG_A2_ENCODER_LOOPBACK_TEST
|
||||
// #define DEBUG_QMC5883
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
@ -57,63 +57,3 @@
|
||||
//#define OPTION_GPS_EXCLUDE_MISSING_LF_CR_HANDLING
|
||||
//#define OPTION_MORE_SERIAL_CHECKS
|
||||
//#define OPTION_STEPPER_MOTOR_USE_TIMER_ONE_INSTEAD_OF_FIVE
|
||||
|
||||
|
||||
/* ---------------------- debug stuff - don't touch unless you know what you are doing --------------------------- */
|
||||
|
||||
|
||||
|
||||
#define DEFAULT_DEBUG_STATE 0// this should be set to zero unless you're debugging something at startup
|
||||
|
||||
#define DEBUG_DUMP
|
||||
// #define DEBUG_BUTTONS
|
||||
// #define DEBUG_SERIAL
|
||||
// #define DEBUG_SERVICE_REQUEST_QUEUE
|
||||
// #define DEBUG_EEPROM
|
||||
// #define DEBUG_AZ_SPEED_POT
|
||||
// #define DEBUG_AZ_PRESET_POT
|
||||
// #define DEBUG_PRESET_ENCODERS
|
||||
// #define DEBUG_AZ_MANUAL_ROTATE_LIMITS
|
||||
// #define DEBUG_EL_MANUAL_ROTATE_LIMITS
|
||||
// #define DEBUG_BRAKE
|
||||
// #define DEBUG_OVERLAP
|
||||
// #define DEBUG_DISPLAY
|
||||
// #define DEBUG_AZ_CHECK_OPERATION_TIMEOUT
|
||||
// #define DEBUG_TIMED_BUFFER
|
||||
// #define DEBUG_EL_CHECK_OPERATION_TIMEOUT
|
||||
// #define DEBUG_VARIABLE_OUTPUTS
|
||||
// #define DEBUG_ROTATOR
|
||||
// #define DEBUG_SUBMIT_REQUEST
|
||||
// #define DEBUG_SERVICE_ROTATION
|
||||
// #define DEBUG_POSITION_ROTARY_ENCODER
|
||||
// #define DEBUG_PROFILE_LOOP_TIME
|
||||
// #define DEBUG_POSITION_PULSE_INPUT
|
||||
// #define DEBUG_ACCEL
|
||||
// #define DEBUG_SVC_REMOTE_COMM_INCOMING_BUFFER
|
||||
// #define DEBUG_SVC_REMOTE_COMM_INCOMING_BUFFER_BAD_DATA
|
||||
// #define DEBUG_HEADING_READING_TIME
|
||||
// #define DEBUG_JOYSTICK
|
||||
// #define DEBUG_ROTATION_INDICATION_PIN
|
||||
// #define DEBUG_HH12
|
||||
// #define DEBUG_PARK
|
||||
// #define DEBUG_LIMIT_SENSE
|
||||
// #define DEBUG_AZ_POSITION_INCREMENTAL_ENCODER
|
||||
// #define DEBUG_EL_POSITION_INCREMENTAL_ENCODER
|
||||
// #define DEBUG_MOON_TRACKING
|
||||
// #define DEBUG_SUN_TRACKING
|
||||
// #define DEBUG_GPS
|
||||
// #define DEBUG_GPS_SERIAL
|
||||
// #define DEBUG_OFFSET
|
||||
// #define DEBUG_RTC
|
||||
// #define DEBUG_PROCESS_YAESU
|
||||
// #define DEBUG_ETHERNET
|
||||
// #define DEBUG_PROCESS_SLAVE
|
||||
// #define DEBUG_MEMSIC_2125
|
||||
// #define DEBUG_SYNC_MASTER_CLOCK_TO_SLAVE
|
||||
// #define DEBUG_QMC5883
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
@ -117,6 +117,9 @@
|
||||
//#define FEATURE_TWO_DECIMAL_PLACE_HEADINGS // under development - not working yet!
|
||||
//#define FEATURE_AZIMUTH_CORRECTION // correct the azimuth using a calibration table in rotator_settings.h
|
||||
//#define FEATURE_ELEVATION_CORRECTION // correct the elevation using a calibration table in rotator_settings.h
|
||||
//#define FEATURE_AZ_ROTATION_STALL_DETECTION // Azimuth rotation stall detection - pin: az_rotation_stall_detected
|
||||
//#define FEATURE_EL_ROTATION_STALL_DETECTION // Elevation rotation stall detection - pin: el_rotation_stall_detected
|
||||
//#define OPTION_ROTATION_STALL_DETECTION_SERIAL_MESSAGE // Sends message out serial port when rotation stall has been detected
|
||||
//#define FEATURE_ANCILLARY_PIN_CONTROL // control I/O pins with serial commands \F, \N, \P
|
||||
//#define FEATURE_JOYSTICK_CONTROL // analog joystick support
|
||||
//#define OPTION_JOYSTICK_REVERSE_X_AXIS
|
||||
@ -157,68 +160,3 @@
|
||||
//#define OPTION_GPS_EXCLUDE_MISSING_LF_CR_HANDLING
|
||||
//#define OPTION_MORE_SERIAL_CHECKS
|
||||
//#define OPTION_STEPPER_MOTOR_USE_TIMER_ONE_INSTEAD_OF_FIVE
|
||||
|
||||
/* ---------------------- debug stuff - don't touch unless you know what you are doing --------------------------- */
|
||||
|
||||
|
||||
|
||||
#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_BUTTONS
|
||||
// #define DEBUG_SERIAL
|
||||
// #define DEBUG_SERVICE_REQUEST_QUEUE
|
||||
// #define DEBUG_EEPROM
|
||||
// #define DEBUG_AZ_SPEED_POT
|
||||
// #define DEBUG_AZ_PRESET_POT
|
||||
// #define DEBUG_PRESET_ENCODERS
|
||||
// #define DEBUG_AZ_MANUAL_ROTATE_LIMITS
|
||||
// #define DEBUG_EL_MANUAL_ROTATE_LIMITS
|
||||
// #define DEBUG_BRAKE
|
||||
// #define DEBUG_OVERLAP
|
||||
// #define DEBUG_DISPLAY
|
||||
// #define DEBUG_AZ_CHECK_OPERATION_TIMEOUT
|
||||
// #define DEBUG_TIMED_BUFFER
|
||||
// #define DEBUG_EL_CHECK_OPERATION_TIMEOUT
|
||||
// #define DEBUG_VARIABLE_OUTPUTS
|
||||
// #define DEBUG_ROTATOR
|
||||
// #define DEBUG_SUBMIT_REQUEST
|
||||
// #define DEBUG_SERVICE_ROTATION
|
||||
// #define DEBUG_POSITION_ROTARY_ENCODER
|
||||
// #define DEBUG_POSITION_ROTARY_ENCODER_USE_PJRC_LIBRARY
|
||||
// #define DEBUG_PROFILE_LOOP_TIME
|
||||
// #define DEBUG_POSITION_PULSE_INPUT
|
||||
// #define DEBUG_ACCEL
|
||||
// #define DEBUG_SVC_REMOTE_COMM_INCOMING_BUFFER
|
||||
// #define DEBUG_SVC_REMOTE_COMM_INCOMING_BUFFER_BAD_DATA
|
||||
// #define DEBUG_HEADING_READING_TIME
|
||||
// #define DEBUG_JOYSTICK
|
||||
// #define DEBUG_ROTATION_INDICATION_PIN
|
||||
// #define DEBUG_HH12
|
||||
// #define DEBUG_PARK
|
||||
// #define DEBUG_LIMIT_SENSE
|
||||
// #define DEBUG_AZ_POSITION_INCREMENTAL_ENCODER
|
||||
// #define DEBUG_EL_POSITION_INCREMENTAL_ENCODER
|
||||
// #define DEBUG_MOON_TRACKING
|
||||
// #define DEBUG_SUN_TRACKING
|
||||
// #define DEBUG_GPS
|
||||
// #define DEBUG_GPS_SERIAL
|
||||
// #define DEBUG_OFFSET
|
||||
// #define DEBUG_RTC
|
||||
// #define DEBUG_PROCESS_YAESU
|
||||
// #define DEBUG_ETHERNET
|
||||
// #define DEBUG_PROCESS_SLAVE
|
||||
// #define DEBUG_MEMSIC_2125
|
||||
// #define DEBUG_SYNC_MASTER_CLOCK_TO_SLAVE
|
||||
// #define DEBUG_SYNC_MASTER_COORDINATES_TO_SLAVE
|
||||
// #define DEBUG_HMC5883L
|
||||
// #define DEBUG_POLOLU_LSM303_CALIBRATION
|
||||
// #define DEBUG_STEPPER
|
||||
// #define DEBUG_AUTOCORRECT
|
||||
// #define DEBUG_QMC5883
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
@ -127,6 +127,9 @@
|
||||
//#define FEATURE_TWO_DECIMAL_PLACE_HEADINGS // under development - not working yet!
|
||||
//#define FEATURE_AZIMUTH_CORRECTION // correct the azimuth using a calibration table in rotator_settings.h
|
||||
//#define FEATURE_ELEVATION_CORRECTION // correct the elevation using a calibration table in rotator_settings.h
|
||||
//#define FEATURE_AZ_ROTATION_STALL_DETECTION // Azimuth rotation stall detection - pin: az_rotation_stall_detected
|
||||
//#define FEATURE_EL_ROTATION_STALL_DETECTION // Elevation rotation stall detection - pin: el_rotation_stall_detected
|
||||
//#define OPTION_ROTATION_STALL_DETECTION_SERIAL_MESSAGE // Sends message out serial port when rotation stall has been detected
|
||||
//#define FEATURE_ANCILLARY_PIN_CONTROL // control I/O pins with serial commands \F, \N, \P
|
||||
//#define FEATURE_JOYSTICK_CONTROL // analog joystick support
|
||||
//#define OPTION_JOYSTICK_REVERSE_X_AXIS
|
||||
@ -151,7 +154,7 @@
|
||||
//#define OPTION_DISPLAY_DIRECTION_STATUS // N, W, E, S, NW, etc. direction indicator
|
||||
#define OPTION_DISPLAY_SUN_TRACKING_CONTINUOUSLY
|
||||
//#define OPTION_DISPLAY_MOON_OR_SUN_TRACKING_CONDITIONAL
|
||||
// #define OPTION_DISPLAY_VERSION_ON_STARTUP //code provided by Paolo, IT9IPQ
|
||||
#define OPTION_DISPLAY_VERSION_ON_STARTUP //code provided by Paolo, IT9IPQ
|
||||
// #define OPTION_LCD_HEADING_FIELD_FIXED_DECIMAL_PLACE
|
||||
|
||||
//#define FEATURE_POWER_SWITCH
|
||||
@ -187,69 +190,9 @@
|
||||
// ## ######## ###### ##
|
||||
|
||||
|
||||
/* ---------------------- debug stuff - don't touch unless you know what you are doing --------------------------- */
|
||||
|
||||
|
||||
|
||||
#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_LOOP
|
||||
// #define DEBUG_BUTTONS
|
||||
// #define DEBUG_SERIAL
|
||||
// #define DEBUG_SERVICE_REQUEST_QUEUE
|
||||
// #define DEBUG_EEPROM
|
||||
// #define DEBUG_AZ_SPEED_POT
|
||||
// #define DEBUG_AZ_PRESET_POT
|
||||
// #define DEBUG_PRESET_ENCODERS
|
||||
// #define DEBUG_AZ_MANUAL_ROTATE_LIMITS
|
||||
// #define DEBUG_EL_MANUAL_ROTATE_LIMITS
|
||||
// #define DEBUG_BRAKE
|
||||
// #define DEBUG_OVERLAP
|
||||
// #define DEBUG_DISPLAY
|
||||
// #define DEBUG_AZ_CHECK_OPERATION_TIMEOUT
|
||||
// #define DEBUG_TIMED_BUFFER
|
||||
// #define DEBUG_EL_CHECK_OPERATION_TIMEOUT
|
||||
// #define DEBUG_VARIABLE_OUTPUTS
|
||||
// #define DEBUG_ROTATOR
|
||||
// #define DEBUG_SUBMIT_REQUEST
|
||||
// #define DEBUG_SERVICE_ROTATION
|
||||
// #define DEBUG_POSITION_ROTARY_ENCODER
|
||||
// #define DEBUG_POSITION_ROTARY_ENCODER_USE_PJRC_LIBRARY
|
||||
// #define DEBUG_PROFILE_LOOP_TIME
|
||||
// #define DEBUG_POSITION_PULSE_INPUT
|
||||
// #define DEBUG_ACCEL
|
||||
// #define DEBUG_SVC_REMOTE_COMM_INCOMING_BUFFER
|
||||
// #define DEBUG_SVC_REMOTE_COMM_INCOMING_BUFFER_BAD_DATA
|
||||
// #define DEBUG_HEADING_READING_TIME
|
||||
// #define DEBUG_JOYSTICK
|
||||
// #define DEBUG_ROTATION_INDICATION_PIN
|
||||
// #define DEBUG_HH12
|
||||
// #define DEBUG_PARK
|
||||
// #define DEBUG_LIMIT_SENSE
|
||||
// #define DEBUG_AZ_POSITION_INCREMENTAL_ENCODER
|
||||
// #define DEBUG_EL_POSITION_INCREMENTAL_ENCODER
|
||||
// #define DEBUG_MOON_TRACKING
|
||||
// #define DEBUG_SUN_TRACKING
|
||||
// #define DEBUG_GPS
|
||||
// #define DEBUG_GPS_SERIAL
|
||||
// #define DEBUG_OFFSET
|
||||
// #define DEBUG_RTC
|
||||
// #define DEBUG_PROCESS_YAESU
|
||||
// #define DEBUG_ETHERNET
|
||||
// #define DEBUG_PROCESS_SLAVE
|
||||
// #define DEBUG_MEMSIC_2125
|
||||
// #define DEBUG_SYNC_MASTER_CLOCK_TO_SLAVE
|
||||
// #define DEBUG_SYNC_MASTER_COORDINATES_TO_SLAVE
|
||||
// #define DEBUG_HMC5883L
|
||||
// #define DEBUG_POLOLU_LSM303_CALIBRATION
|
||||
// #define DEBUG_STEPPER
|
||||
// #define DEBUG_AUTOCORRECT
|
||||
// #define DEBUG_A2_ENCODER
|
||||
// #define DEBUG_A2_ENCODER_LOOPBACK_TEST
|
||||
// #define DEBUG_QMC5883
|
||||
|
||||
|
||||
// ######## ######## ###### ########
|
||||
// ## ## ## ## ##
|
||||
// ## ## ## ##
|
||||
|
@ -162,67 +162,3 @@
|
||||
uncomment #define OPTION_C_COMMAND_SENDS_AZ_AND_EL.
|
||||
|
||||
*/
|
||||
|
||||
/* ---------------------- debug stuff - don't touch unless you know what you are doing --------------------------- */
|
||||
|
||||
|
||||
|
||||
#define DEFAULT_DEBUG_STATE 0// this should be set to zero unless you're debugging something at startup
|
||||
|
||||
#define DEBUG_DUMP
|
||||
// #define DEBUG_BUTTONS
|
||||
// #define DEBUG_SERIAL
|
||||
// #define DEBUG_SERVICE_REQUEST_QUEUE
|
||||
// #define DEBUG_EEPROM
|
||||
// #define DEBUG_AZ_SPEED_POT
|
||||
// #define DEBUG_AZ_PRESET_POT
|
||||
// #define DEBUG_PRESET_ENCODERS
|
||||
// #define DEBUG_AZ_MANUAL_ROTATE_LIMITS
|
||||
// #define DEBUG_EL_MANUAL_ROTATE_LIMITS
|
||||
// #define DEBUG_BRAKE
|
||||
// #define DEBUG_OVERLAP
|
||||
// #define DEBUG_DISPLAY
|
||||
// #define DEBUG_AZ_CHECK_OPERATION_TIMEOUT
|
||||
// #define DEBUG_TIMED_BUFFER
|
||||
// #define DEBUG_EL_CHECK_OPERATION_TIMEOUT
|
||||
// #define DEBUG_VARIABLE_OUTPUTS
|
||||
// #define DEBUG_ROTATOR
|
||||
// #define DEBUG_SUBMIT_REQUEST
|
||||
// #define DEBUG_SERVICE_ROTATION
|
||||
// #define DEBUG_POSITION_ROTARY_ENCODER
|
||||
// #define DEBUG_POSITION_ROTARY_ENCODER_USE_PJRC_LIBRARY
|
||||
// #define DEBUG_PROFILE_LOOP_TIME
|
||||
// #define DEBUG_POSITION_PULSE_INPUT
|
||||
// #define DEBUG_ACCEL
|
||||
// #define DEBUG_SVC_REMOTE_COMM_INCOMING_BUFFER
|
||||
// #define DEBUG_SVC_REMOTE_COMM_INCOMING_BUFFER_BAD_DATA
|
||||
// #define DEBUG_HEADING_READING_TIME
|
||||
// #define DEBUG_JOYSTICK
|
||||
// #define DEBUG_ROTATION_INDICATION_PIN
|
||||
// #define DEBUG_HH12
|
||||
// #define DEBUG_PARK
|
||||
// #define DEBUG_LIMIT_SENSE
|
||||
// #define DEBUG_AZ_POSITION_INCREMENTAL_ENCODER
|
||||
// #define DEBUG_EL_POSITION_INCREMENTAL_ENCODER
|
||||
// #define DEBUG_MOON_TRACKING
|
||||
// #define DEBUG_SUN_TRACKING
|
||||
// #define DEBUG_GPS
|
||||
// #define DEBUG_GPS_SERIAL
|
||||
// #define DEBUG_OFFSET
|
||||
// #define DEBUG_RTC
|
||||
// #define DEBUG_PROCESS_YAESU
|
||||
// #define DEBUG_ETHERNET
|
||||
// #define DEBUG_PROCESS_SLAVE
|
||||
// #define DEBUG_MEMSIC_2125
|
||||
// #define DEBUG_SYNC_MASTER_CLOCK_TO_SLAVE
|
||||
// #define DEBUG_SYNC_MASTER_COORDINATES_TO_SLAVE
|
||||
// #define DEBUG_HMC5883L
|
||||
// #define DEBUG_POLOLU_LSM303_CALIBRATION
|
||||
// #define DEBUG_STEPPER
|
||||
// #define DEBUG_AUTOCORRECT
|
||||
// #define DEBUG_QMC5883
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
@ -33,6 +33,7 @@
|
||||
#define blink_led 0
|
||||
#define az_stepper_motor_pulse 44 //0
|
||||
#define az_stepper_motor_direction 0
|
||||
#define az_rotation_stall_detected 0
|
||||
|
||||
|
||||
|
||||
@ -52,6 +53,7 @@
|
||||
#define brake_el 0 // goes high to disengage elevation brake (set to 0 to disable)
|
||||
#define elevation_speed_voltage 0 // optional - PWM output for speed control voltage feed into rotator (on continually unlike rotate_up_pwm and rotate_down_pwm)
|
||||
#define el_stepper_motor_pulse 0
|
||||
#define el_rotation_stall_detected 0
|
||||
#endif //FEATURE_ELEVATION_CONTROL
|
||||
|
||||
// rotary encoder pins and options
|
||||
|
@ -30,6 +30,7 @@
|
||||
#define rotation_indication_pin 0
|
||||
#define az_stepper_motor_pulse 0
|
||||
#define az_stepper_motor_direction 0
|
||||
#define az_rotation_stall_detected 0
|
||||
|
||||
|
||||
// elevation pins
|
||||
@ -49,6 +50,7 @@
|
||||
#define brake_el 0 // goes high to disengage elevation brake (set to 0 to disable)
|
||||
#define el_stepper_motor_pulse 0
|
||||
#define el_stepper_motor_direction 0
|
||||
#define el_rotation_stall_detected 0
|
||||
#endif //FEATURE_ELEVATION_CONTROL
|
||||
|
||||
|
||||
|
@ -40,6 +40,7 @@
|
||||
#define blink_led 0
|
||||
#define az_stepper_motor_pulse 0
|
||||
#define az_stepper_motor_direction 0
|
||||
#define az_rotation_stall_detected 0
|
||||
|
||||
|
||||
// elevation pins
|
||||
@ -59,6 +60,7 @@
|
||||
#define brake_el 0 // goes high to disengage elevation brake (set to 0 to disable)
|
||||
#define el_stepper_motor_pulse 0
|
||||
#define el_stepper_motor_direction 0
|
||||
#define el_rotation_stall_detected 0
|
||||
#endif //FEATURE_ELEVATION_CONTROL
|
||||
|
||||
|
||||
|
@ -341,6 +341,13 @@ You can tweak these, but read the online documentation!
|
||||
|
||||
#define PRESET_ENCODER_CHANGE_TIME_MS 2000
|
||||
|
||||
// FEATURE_AZ_ROTATION_STALL_DETECTION
|
||||
#define STALL_CHECK_FREQUENCY_MS_AZ 2000
|
||||
#define STALL_CHECK_DEGREES_THRESHOLD_AZ 2
|
||||
// FEATURE_EL_ROTATION_STALL_DETECTION
|
||||
#define STALL_CHECK_FREQUENCY_MS_EL 2000
|
||||
#define STALL_CHECK_DEGREES_THRESHOLD_EL 2
|
||||
|
||||
//#define SET_I2C_BUS_SPEED 800000L // Can set up to 800 kHz, depending on devices. 800000L = 800 khz, 400000L = 400 khz. Default is 100 khz
|
||||
|
||||
|
||||
|
@ -331,5 +331,12 @@ You can tweak these, but read the online documentation!
|
||||
|
||||
#define PRESET_ENCODER_CHANGE_TIME_MS 2000
|
||||
|
||||
// FEATURE_AZ_ROTATION_STALL_DETECTION
|
||||
#define STALL_CHECK_FREQUENCY_MS_AZ 2000
|
||||
#define STALL_CHECK_DEGREES_THRESHOLD_AZ 2
|
||||
// FEATURE_EL_ROTATION_STALL_DETECTION
|
||||
#define STALL_CHECK_FREQUENCY_MS_EL 2000
|
||||
#define STALL_CHECK_DEGREES_THRESHOLD_EL 2
|
||||
|
||||
//#define SET_I2C_BUS_SPEED 800000L // Can set up to 800 kHz, depending on devices. 800000L = 800 khz, 400000L = 400 khz. Default is 100 khz
|
||||
|
||||
|
@ -331,5 +331,12 @@ You can tweak these, but read the online documentation!
|
||||
|
||||
#define PRESET_ENCODER_CHANGE_TIME_MS 2000
|
||||
|
||||
// FEATURE_AZ_ROTATION_STALL_DETECTION
|
||||
#define STALL_CHECK_FREQUENCY_MS_AZ 2000
|
||||
#define STALL_CHECK_DEGREES_THRESHOLD_AZ 2
|
||||
// FEATURE_EL_ROTATION_STALL_DETECTION
|
||||
#define STALL_CHECK_FREQUENCY_MS_EL 2000
|
||||
#define STALL_CHECK_DEGREES_THRESHOLD_EL 2
|
||||
|
||||
//#define SET_I2C_BUS_SPEED 800000L // Can set up to 800 kHz, depending on devices. 800000L = 800 khz, 400000L = 400 khz. Default is 100 khz
|
||||
|
||||
|
@ -351,6 +351,13 @@ You can tweak these, but read the online documentation!
|
||||
|
||||
#define PRESET_ENCODER_CHANGE_TIME_MS 2000
|
||||
|
||||
// FEATURE_AZ_ROTATION_STALL_DETECTION
|
||||
#define STALL_CHECK_FREQUENCY_MS_AZ 2000
|
||||
#define STALL_CHECK_DEGREES_THRESHOLD_AZ 2
|
||||
// FEATURE_EL_ROTATION_STALL_DETECTION
|
||||
#define STALL_CHECK_FREQUENCY_MS_EL 2000
|
||||
#define STALL_CHECK_DEGREES_THRESHOLD_EL 2
|
||||
|
||||
//#define SET_I2C_BUS_SPEED 800000L // Can set up to 800 kHz, depending on devices. 800000L = 800 khz, 400000L = 400 khz. Default is 100 khz
|
||||
|
||||
|
||||
|
@ -333,6 +333,13 @@ You can tweak these, but read the online documentation!
|
||||
|
||||
#define PRESET_ENCODER_CHANGE_TIME_MS 2000
|
||||
|
||||
// FEATURE_AZ_ROTATION_STALL_DETECTION
|
||||
#define STALL_CHECK_FREQUENCY_MS_AZ 2000
|
||||
#define STALL_CHECK_DEGREES_THRESHOLD_AZ 2
|
||||
// FEATURE_EL_ROTATION_STALL_DETECTION
|
||||
#define STALL_CHECK_FREQUENCY_MS_EL 2000
|
||||
#define STALL_CHECK_DEGREES_THRESHOLD_EL 2
|
||||
|
||||
//#define SET_I2C_BUS_SPEED 800000L // Can set up to 800 kHz, depending on devices. 800000L = 800 khz, 400000L = 400 khz. Default is 100 khz
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user