diff --git a/.gitignore b/.gitignore index 01f23e0..1480edd 100644 --- a/.gitignore +++ b/.gitignore @@ -2,4 +2,3 @@ .cproject */build-satnogs .project -doxygen_files diff --git a/doxygen_files/html/AccelStepper_8cpp_8d.html b/doxygen_files/html/AccelStepper_8cpp_8d.html new file mode 100644 index 0000000..14c9e1b --- /dev/null +++ b/doxygen_files/html/AccelStepper_8cpp_8d.html @@ -0,0 +1,82 @@ + + +
+ + + + +
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
C_control | |
C_rotator | |
CAS5601 | Class that functions for interacting with AS5601 magnetic rotary position sensor |
Ceasycomm | Class that functions for easycomm 3 implementation |
Cendstop | Class that functions for interacting with end-stop |
Ci2c_mux | Class that functions for interacting with I2C 1-of-2 multiplexer |
Cmotor | Class that functions for interacting with a Motor Driver Carrier |
Crs485 | Class that functions for interacting with a RS485 transceiver |
Ctc74 | Class that functions for interacting with a TC74 Temperature sensor |
Cwdt_timer | Class that functions for interacting with a watchdog timer |
+ satnogs-rotator-firmware
+
+ |
+
#include <Wire.h>
Go to the source code of this file.
++Classes | |
class | AS5601 |
Class that functions for interacting with AS5601 magnetic rotary position sensor. More... | |
+Macros | |
#define | I2C_FREQ 100000 |
#define | AS5601_ID 0x36 |
#define | RAW_ANG_HIGH 0x0C |
#define | RAW_ANG_LOW 0x0D |
#define | STATUS_REG 0x0B |
#define | AGC 0x1A |
#define | MAGNITUDE_HIGH 0x1B |
#define | MAGNITUDE_LOW 0x1C |
#define | CONF_HIGH 0x07 |
#define | CONF_LOW 0x08 |
It is a driver for AS5601 a magnetic rotary position sensor. It uses I2C protocol. The resolution of encoder is 12-bit.
+Licensed under the GPLv3
+ +Definition in file as5601.h.
+#define AGC 0x1A | +
Definition at line 23 of file as5601.h.
+ +Referenced by AS5601::get_agc().
+ +#define AS5601_ID 0x36 | +
Definition at line 19 of file as5601.h.
+ +Referenced by AS5601::get_agc(), AS5601::get_conf(), AS5601::get_magnitude(), and AS5601::get_pos().
+ +#define CONF_HIGH 0x07 | +
Definition at line 26 of file as5601.h.
+ +Referenced by AS5601::get_conf().
+ +#define I2C_FREQ 100000 | +
Definition at line 17 of file as5601.h.
+ +Referenced by AS5601::Begin(), and tc74::init().
+ +#define MAGNITUDE_HIGH 0x1B | +
Definition at line 24 of file as5601.h.
+ +Referenced by AS5601::get_magnitude().
+ +#define RAW_ANG_HIGH 0x0C | +
Definition at line 20 of file as5601.h.
+ +Referenced by AS5601::get_pos().
+ +#define STATUS_REG 0x0B | +
Definition at line 22 of file as5601.h.
+ +Referenced by AS5601::get_pos().
+ +
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
This is the complete list of members for AS5601, including all inherited members.
+_angle_offset | AS5601 | private |
_enc_ratio | AS5601 | private |
_n | AS5601 | private |
_raw_prev_pos | AS5601 | private |
Begin() | AS5601 | inline |
get_agc() | AS5601 | inline |
get_conf() | AS5601 | inline |
get_magnitude() | AS5601 | inline |
get_pos(double *new_pos) | AS5601 | inline |
i2c_byte_transaction(uint8_t i2c_address, uint8_t i2c_register) | AS5601 | inlineprivate |
i2c_word_transaction(uint8_t i2c_address, uint8_t i2c_register) | AS5601 | inlineprivate |
init_zero() | AS5601 | inline |
set_gear_ratio(uint8_t enc_ratio) | AS5601 | inline |
set_zero() | AS5601 | inline |
+ satnogs-rotator-firmware
+
+ |
+
Class that functions for interacting with AS5601 magnetic rotary position sensor. + More...
+ +#include <as5601.h>
+Public Member Functions | |
void | Begin () |
Initialize the I2C bus. More... | |
uint8_t | get_pos (double *new_pos) |
Calculate an unwrap the position. More... | |
uint8_t | get_agc () |
Calculate the automatic gain control (AGC) More... | |
uint16_t | get_magnitude () |
Get the magnitude value of the internal CORDIC output. More... | |
uint16_t | get_conf () |
Get the configuration register. More... | |
uint8_t | set_zero () |
Set zero by setting offset angle. More... | |
void | init_zero () |
Reset zero position set the offset to zero. More... | |
void | set_gear_ratio (uint8_t enc_ratio) |
Set the gear ratio between encoder and measure axis. More... | |
+Private Member Functions | |
uint8_t | i2c_byte_transaction (uint8_t i2c_address, uint8_t i2c_register) |
uint16_t | i2c_word_transaction (uint8_t i2c_address, uint8_t i2c_register) |
+Private Attributes | |
double | _angle_offset = 0 |
int32_t | _n = 0 |
float | _raw_prev_pos = 0 |
uint8_t | _enc_ratio = 0 |
Class that functions for interacting with AS5601 magnetic rotary position sensor.
+ + +
+
|
+ +inline | +
+
|
+ +inline | +
Calculate the automatic gain control (AGC)
+Definition at line 96 of file as5601.h.
+ +References AGC, AS5601_ID, and i2c_byte_transaction().
+
+
|
+ +inline | +
Get the configuration register.
+Definition at line 116 of file as5601.h.
+ +References AS5601_ID, CONF_HIGH, and i2c_word_transaction().
+
+
|
+ +inline | +
Get the magnitude value of the internal CORDIC output.
+Definition at line 106 of file as5601.h.
+ +References AS5601_ID, i2c_word_transaction(), and MAGNITUDE_HIGH.
+
+
|
+ +inline | +
Calculate an unwrap the position.
+new_pos | Calculate the current position of the sensor |
Definition at line 59 of file as5601.h.
+ +References _angle_offset, _enc_ratio, _n, _raw_prev_pos, AS5601_ID, i2c_byte_transaction(), i2c_word_transaction(), RAW_ANG_HIGH, and STATUS_REG.
+ +Referenced by homing(), loop(), and set_zero().
+
+
|
+ +inlineprivate | +
Definition at line 162 of file as5601.h.
+ +Referenced by get_agc(), get_pos(), and i2c_word_transaction().
+ +
+
|
+ +inlineprivate | +
Definition at line 172 of file as5601.h.
+ +References i2c_byte_transaction().
+ +Referenced by get_conf(), get_magnitude(), and get_pos().
+
+
|
+ +inline | +
Reset zero position set the offset to zero.
+ +Definition at line 141 of file as5601.h.
+ +References _angle_offset.
+ +Referenced by homing().
+ +
+
|
+ +inline | +
Set the gear ratio between encoder and measure axis.
+enc_ratio | An uitn8_t, that represents the gear ratio |
Definition at line 152 of file as5601.h.
+ +References _enc_ratio.
+ +Referenced by setup().
+ +
+
|
+ +inline | +
+
|
+ +private | +
Definition at line 157 of file as5601.h.
+ +Referenced by get_pos(), init_zero(), and set_zero().
+ +
+
|
+ +private | +
Definition at line 160 of file as5601.h.
+ +Referenced by get_pos(), and set_gear_ratio().
+ +
+
|
+ +private | +
+
|
+ +private | +
+ satnogs-rotator-firmware
+
+ |
+
This is the complete list of members for easycomm, including all inherited members.
+easycomm_init() | easycomm | inline |
easycomm_proc() | easycomm | inline |
isNumber(char *input) | easycomm | inlineprivate |
+ satnogs-rotator-firmware
+
+ |
+
Class that functions for easycomm 3 implementation. + More...
+ +#include <easycomm.h>
+Public Member Functions | |
void | easycomm_init () |
Initialize the RS485 bus. More... | |
void | easycomm_proc () |
Get the commands from RS485 and response to the client. More... | |
+Private Member Functions | |
bool | isNumber (char *input) |
Class that functions for easycomm 3 implementation.
+ +Definition at line 31 of file easycomm.h.
+
+
|
+ +inline | +
Initialize the RS485 bus.
+ +Definition at line 39 of file easycomm.h.
+ +References BAUDRATE, and rs485::begin().
+ +Referenced by setup().
+
+
|
+ +inline | +
Get the commands from RS485 and response to the client.
+ +Definition at line 48 of file easycomm.h.
+ +References rs485::available(), BUFFER_SIZE, control_az, control_el, _rotator::control_mode, _control::d, rs485::flush(), _rotator::homing_flag, _control::i, _control::input, _rotator::inside_temperature, isNumber(), _control::load, _control::p, _rotator::park_az, _rotator::park_el, position, rs485::print(), rs485::read(), rotator, _rotator::rotator_error, _rotator::rotator_status, _control::setpoint, _control::setpoint_speed, speed, _control::speed, _rotator::switch_az, and _rotator::switch_el.
+ +Referenced by loop().
+
+
|
+ +inlineprivate | +
Definition at line 378 of file easycomm.h.
+ +Referenced by easycomm_proc().
+ +
+ satnogs-rotator-firmware
+
+ |
+
This is the complete list of members for endstop, including all inherited members.
+_default_state | endstop | private |
_pin | endstop | private |
endstop(uint8_t pin, bool default_state) | endstop | inline |
get_state() | endstop | inline |
init() | endstop | inline |
+ satnogs-rotator-firmware
+
+ |
+
Class that functions for interacting with end-stop. + More...
+ +#include <endstop.h>
+Public Member Functions | |
endstop (uint8_t pin, bool default_state) | |
void | init () |
Initialize the Input pin for end-stop. More... | |
bool | get_state () |
Get the state of end-stop. More... | |
+Private Attributes | |
uint8_t | _pin |
bool | _default_state |
Class that functions for interacting with end-stop.
+pin | Set the arduino pin |
default_state | Set the default state of end-stop HIGH or LOW |
+
|
+ +inline | +
Definition at line 25 of file endstop.h.
+ +References _default_state, and _pin.
+ +
+
|
+ +inline | +
+
|
+ +inline | +
+
|
+ +private | +
Definition at line 54 of file endstop.h.
+ +Referenced by endstop(), and get_state().
+ +
+
|
+ +private | +
Definition at line 53 of file endstop.h.
+ +Referenced by endstop(), get_state(), and init().
+ +
+ satnogs-rotator-firmware
+
+ |
+
|
|
|
| |||||
_control | easycomm | motor | tc74 | |||||
_rotator | endstop |
|
| |||||
|
| |||||||
rs485 | wdt_timer | |||||||
AS5601 | i2c_mux | |||||||
+ satnogs-rotator-firmware
+
+ |
+
This is the complete list of members for i2c_mux, including all inherited members.
+_ch0 | i2c_mux | private |
_ch1 | i2c_mux | private |
_id | i2c_mux | private |
i2c_mux(uint8_t id, uint8_t ch0, uint8_t ch1) | i2c_mux | inline |
init() | i2c_mux | inline |
set_channel(uint8_t ch) | i2c_mux | inline |
+ satnogs-rotator-firmware
+
+ |
+
Class that functions for interacting with I2C 1-of-2 multiplexer. + More...
+ +#include <i2c_mux.h>
+Public Member Functions | |
i2c_mux (uint8_t id, uint8_t ch0, uint8_t ch1) | |
void | init () |
Initialize the I2C bus. More... | |
void | set_channel (uint8_t ch) |
Change the channel. More... | |
+Private Attributes | |
uint8_t | _id |
uint8_t | _ch0 |
uint8_t | _ch1 |
Class that functions for interacting with I2C 1-of-2 multiplexer.
+id | I2C ID in HEX |
ch0 | Channel 0 in HEX |
ch1 | Channel 1 in HEX |
+
|
+ +inline | +
+
|
+ +inline | +
+
|
+ +inline | +
+
|
+ +private | +
Definition at line 67 of file i2c_mux.h.
+ +Referenced by i2c_mux(), and set_channel().
+ +
+
|
+ +private | +
Definition at line 67 of file i2c_mux.h.
+ +Referenced by i2c_mux(), and set_channel().
+ +
+
|
+ +private | +
Definition at line 67 of file i2c_mux.h.
+ +Referenced by i2c_mux(), and set_channel().
+ +
+ satnogs-rotator-firmware
+
+ |
+
This is the complete list of members for motor, including all inherited members.
+_en_pin | motor | private |
_fb_pin | motor | private |
_maxSpeed | motor | private |
_minSpeed | motor | private |
_pwm_pin1 | motor | private |
_pwm_pin2 | motor | private |
_sf_pin | motor | private |
disenable() | motor | inline |
enable() | motor | inline |
get_fault() | motor | inline |
get_load() | motor | inline |
init_pin() | motor | inline |
init_timer(uint8_t timer, uint16_t divisor) | motor | inline |
motor(uint8_t pwm_pin1, uint8_t pwm_pin2, uint8_t fb_pin, uint8_t en_pin, uint8_t sf_pin, uint16_t maxSpeed, uint16_t minSpeed) | motor | inline |
move(int16_t speed) | motor | inline |
set_max(uint16_t max) | motor | inline |
set_min(uint16_t min) | motor | inline |
stop() | motor | inline |
+ satnogs-rotator-firmware
+
+ |
+
Class that functions for interacting with a Motor Driver Carrier. + More...
+ +#include <motor.h>
+Public Member Functions | |
motor (uint8_t pwm_pin1, uint8_t pwm_pin2, uint8_t fb_pin, uint8_t en_pin, uint8_t sf_pin, uint16_t maxSpeed, uint16_t minSpeed) | |
void | init_pin () |
Initialize pins of DC motor driver. More... | |
void | init_timer (uint8_t timer, uint16_t divisor) |
Set timer frequency, for timers 0, 1, 2. More... | |
void | enable () |
Enable motor driver. More... | |
void | disenable () |
Disable motor driver. More... | |
uint16_t | get_load () |
Calculate the load of DC motor. More... | |
uint8_t | get_fault () |
Get the status flag of motor driver. More... | |
void | move (int16_t speed) |
Move the DC motor with constant voltage (~speed) More... | |
void | stop () |
Stop moving the DC motor. More... | |
void | set_min (uint16_t min) |
Update the minimum speed of DC motor. More... | |
void | set_max (uint16_t max) |
Update the maximum speed of DC motor. More... | |
+Private Attributes | |
uint8_t | _pwm_pin1 |
uint8_t | _pwm_pin2 |
uint8_t | _fb_pin |
uint8_t | _en_pin |
uint8_t | _sf_pin |
int16_t | _maxSpeed |
int16_t | _minSpeed |
Class that functions for interacting with a Motor Driver Carrier.
+pwm_pin1 | PWM pin, regulate the duty cycle |
pwm_pin2 | PWM pin, regulate the duty cycle |
fb_pin | Analog pin that measure the analog current-sense feedback |
en_pin | Digital pin that enable and disable the motor driver |
sf_pin | Digital pin that read if the motor driver works properly or not |
maxSpeed | Set the maximum PWM value that the DC motor can handle, e.g. max 255 (8 bit timer) |
minSpeed | Set the minimum PWM value that the DC motor can handle, e.g. min 5 (8-bit timer) |
+
|
+ +inline | +
+
|
+ +inline | +
+
|
+ +inline | +
+
|
+ +inline | +
+
|
+ +inline | +
+
|
+ +inline | +
+
|
+ +inline | +
Set timer frequency, for timers 0, 1, 2.
+timer | PWM frequency for D5 & D6, set timer 0 PWM frequency for D9 & D10, set timer 1 PWM frequency for D3 & D11, set timer 2 |
divisor | For timer 0 divisor to 1 for PWM frequency of 62500.00 Hz divisor to 8 for PWM frequency of 7812.50 Hz divisor to 64 for PWM frequency of 976.56 Hz (The DEFAULT) divisor to 256 for PWM frequency of 244.14 Hz divisor to 1024 for PWM frequency of 61.04 Hz For timer 1 divisor to 1 for PWM frequency of 31372.55 Hz divisor to 8 for PWM frequency of 3921.16 Hz divisor to 64 for PWM frequency of 490.20 Hz (The DEFAULT) divisor to 256 for PWM frequency of 122.55 Hz divisor to 1024 for PWM frequency of 30.64 Hz For timer 2 divisor to 1 for PWM frequency of 31372.55 Hz divisor to 8 for PWM frequency of 3921.16 Hz divisor to 32 for PWM frequency of 980.39 Hz divisor to 64 for PWM frequency of 490.20 Hz (The DEFAULT) divisor to 128 for PWM frequency of 245.10 Hz divisor to 256 for PWM frequency of 122.55 Hz divisor to 1024 for PWM frequency of 30.64 Hz |
Definition at line 95 of file motor.h.
+ +Referenced by setup().
+ +
+
|
+ +inline | +
Move the DC motor with constant voltage (~speed)
+speed | Range minSpeed - maxSpeed, -255 - +255 |
Definition at line 188 of file motor.h.
+ +References _maxSpeed, _minSpeed, _pwm_pin1, _pwm_pin2, speed, and stop().
+ +Referenced by homing(), and loop().
+
+
|
+ +inline | +
+
|
+ +inline | +
+
|
+ +inline | +
+
|
+ +private | +
Definition at line 242 of file motor.h.
+ +Referenced by disenable(), enable(), init_pin(), and motor().
+ +
+
|
+ +private | +
Definition at line 242 of file motor.h.
+ +Referenced by get_load(), init_pin(), and motor().
+ +
+
|
+ +private | +
+
|
+ +private | +
+
|
+ +private | +
+
|
+ +private | +
+
|
+ +private | +
Definition at line 242 of file motor.h.
+ +Referenced by get_fault(), init_pin(), and motor().
+ +
+ satnogs-rotator-firmware
+
+ |
+
This is the complete list of members for rs485, including all inherited members.
+_pin_dir | rs485 | private |
_tx_time | rs485 | private |
available(void) | rs485 | inline |
begin(uint16_t baudrate) | rs485 | inline |
end() | rs485 | inline |
flush() | rs485 | inline |
print(String str) | rs485 | inline |
read() | rs485 | inline |
rs485(uint8_t pin_dir, uint16_t tx_time) | rs485 | inline |
+ satnogs-rotator-firmware
+
+ |
+
Class that functions for interacting with a RS485 transceiver. + More...
+ +#include <rs485.h>
+Public Member Functions | |
rs485 (uint8_t pin_dir, uint16_t tx_time) | |
void | begin (uint16_t baudrate) |
Initialize the RS485 transceiver. More... | |
void | print (String str) |
Print a string to RS485 bus. More... | |
uint8_t | read () |
Read a char/uint8_t from RS485 bus. More... | |
uint8_t | available (void) |
The number of chars/uint8_t that are available in RS485 buffer. More... | |
void | flush () |
Waits for the transmission of outgoing serial data to complete. More... | |
void | end () |
Disables RS485 communication. More... | |
+Private Attributes | |
uint8_t | _pin_dir |
uint16_t | _tx_time |
Class that functions for interacting with a RS485 transceiver.
+pin_dir | Digital pin, to set read or write to RS485 bus |
tx_time | Time delay in ms in order to transmit and change the status of direction pin |
+
|
+ +inline | +
+
|
+ +inline | +
The number of chars/uint8_t that are available in RS485 buffer.
+Definition at line 73 of file rs485.h.
+ +Referenced by easycomm::easycomm_proc(), and ISR().
+ +
+
|
+ +inline | +
Initialize the RS485 transceiver.
+baudrate | Set the baudrate of RS485 bus |
Definition at line 38 of file rs485.h.
+ +References _pin_dir.
+ +Referenced by easycomm::easycomm_init().
+ +
+
|
+ +inline | +
+
|
+ +inline | +
Waits for the transmission of outgoing serial data to complete.
+ +Definition at line 82 of file rs485.h.
+ +Referenced by easycomm::easycomm_proc(), and ISR().
+ +
+
|
+ +inline | +
+
|
+ +inline | +
Read a char/uint8_t from RS485 bus.
+Definition at line 63 of file rs485.h.
+ +Referenced by easycomm::easycomm_proc(), and ISR().
+ +
+
|
+ +private | +
+
|
+ +private | +
+ satnogs-rotator-firmware
+
+ |
+
This is the complete list of members for tc74, including all inherited members.
+_id | tc74 | private |
get_status() | tc74 | inline |
get_temp() | tc74 | inline |
init() | tc74 | inline |
sleep() | tc74 | inline |
tc74(uint8_t id) | tc74 | inline |
wake_up() | tc74 | inline |
+ satnogs-rotator-firmware
+
+ |
+
Class that functions for interacting with a TC74 Temperature sensor. + More...
+ +#include <tc74.h>
+Public Member Functions | |
tc74 (uint8_t id) | |
void | init () |
Initialize the I2C bus. More... | |
int8_t | get_temp () |
Reads the int8_t in temperature measurement register. More... | |
int8_t | get_status () |
Reads the int8_t in status register. More... | |
int8_t | wake_up () |
Wake up request to the sensor on the specified address. More... | |
int8_t | sleep () |
Sleep device request to the sensor on the specified address. More... | |
+Private Attributes | |
int | _id |
Class that functions for interacting with a TC74 Temperature sensor.
+id | Set the ID of temperature sensor, I2C address TC74_A0 0b10010000 TC74_A1 0b10010010 TC74_A2 0b10010100 TC74_A3 0b10010110 TC74_A4 0b10011000 TC74_A5 0b10011010 TC74_A6 0b10011100 TC74_A7 0b10011110 |
+
|
+ +inline | +
+
|
+ +inline | +
Reads the int8_t in status register.
+Definition at line 75 of file tc74.h.
+ +References _id, TC74_AWAKE_COMMAND, and TC74_CONFIGURATION_REGISTER.
+ + + +
+
|
+ +inline | +
Reads the int8_t in temperature measurement register.
+Definition at line 59 of file tc74.h.
+ +References _id, and TC74_TEMPERATURE_REGISTER.
+ +Referenced by loop().
+ +
+
|
+ +inline | +
+
|
+ +inline | +
Sleep device request to the sensor on the specified address.
+Definition at line 110 of file tc74.h.
+ +References _id, get_status(), TC74_CONFIGURATION_REGISTER, and TC74_STANDBY_COMMAND.
+ +Referenced by loop().
+
+
|
+ +inline | +
Wake up request to the sensor on the specified address.
+Definition at line 94 of file tc74.h.
+ +References _id, get_status(), TC74_AWAKE_COMMAND, and TC74_CONFIGURATION_REGISTER.
+ +Referenced by loop().
+
+
|
+ +private | +
Definition at line 121 of file tc74.h.
+ +Referenced by get_status(), get_temp(), sleep(), tc74(), and wake_up().
+ +
+ satnogs-rotator-firmware
+
+ |
+
This is the complete list of members for wdt_timer, including all inherited members.
+watchdog_init() | wdt_timer | inline |
watchdog_reset() | wdt_timer | inline |
+ satnogs-rotator-firmware
+
+ |
+
Class that functions for interacting with a watchdog timer. + More...
+ +#include <watchdog.h>
+Public Member Functions | |
void | watchdog_init () |
Initialize watchdog timer to 2sec time out and to set up interrupt routine. More... | |
void | watchdog_reset () |
Reset the watchdog timer. More... | |
Class that functions for interacting with a watchdog timer.
+ +Definition at line 23 of file watchdog.h.
+
+
|
+ +inline | +
Initialize watchdog timer to 2sec time out and to set up interrupt routine.
+ +Definition at line 32 of file watchdog.h.
+ +Referenced by setup().
+ +
+
|
+ +inline | +
Reset the watchdog timer.
+ +Definition at line 45 of file watchdog.h.
+ + + +
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
#include <PID_v1.h>
#include <Wire.h>
#include "../libraries/globals.h"
#include "../libraries/easycomm.h"
#include "../libraries/rotator_pins.h"
#include "../libraries/endstop.h"
#include "../libraries/watchdog.h"
#include "../libraries/i2c_mux.h"
#include "../libraries/tc74.h"
#include "../libraries/motor.h"
#include "../libraries/as5601.h"
Go to the source code of this file.
++Macros | |
#define | SAMPLE_TIME 0.1 |
Control loop in s. More... | |
#define | RATIO 54 |
Gear ratio of rotator gear box. More... | |
#define | MAX_PWM 180 |
Set max Speed. More... | |
#define | MIN_PWM 5 |
Set min Speed. More... | |
#define | POSITION_DEADZONE 0.2 |
Control dead zone. More... | |
#define | PCA9540_ID 0x70 |
I2C Multiplexer ID. More... | |
#define | PCA9540_CH0 0x04 |
I2C Multiplexer CHO. More... | |
#define | PCA9540_CH1 0x05 |
I2C Multiplexer CH1. More... | |
#define | TC74_ID 0x48 |
Temperature Sensor ID. More... | |
#define | OVER_TEMP 60 |
Over temperature limit. More... | |
#define | ENC_RATIO 2 |
Encoder AS5601 gear ratio. More... | |
#define | MIN_M1_ANGLE 0 |
Minimum angle of azimuth. More... | |
#define | MAX_M1_ANGLE 360 |
Maximum angle of azimuth. More... | |
#define | MIN_M2_ANGLE 0 |
Minimum angle of elevation. More... | |
#define | MAX_M2_ANGLE 180 |
Maximum angle of elevation. More... | |
#define | DEFAULT_HOME_STATE HIGH |
Change to LOW according to Home sensor. More... | |
#define | HOME_SPEED 100 |
Set speed to find home, duty cycle of 8-bit timer. More... | |
+Functions | |
enum _rotator_error | homing () |
Move both axis with one direction in order to find home position, end-stop switches. More... | |
void | setup () |
void | loop () |
+Variables | |
uint32_t | t_run = 0 |
easycomm | comm |
motor | motor_az (M1IN1, M1IN2, M1FB, MOTOR_EN, M1SF, MAX_PWM, MIN_PWM) |
motor | motor_el (M2IN1, M2IN2, M2FB, MOTOR_EN, M2SF, MAX_PWM, MIN_PWM) |
PID pid_az & | control_az |
PID pid_el & | control_el |
endstop | switch_az (SW1, DEFAULT_HOME_STATE) |
endstop | switch_el (SW2, DEFAULT_HOME_STATE) |
i2c_mux | pca9540 (PCA9540_ID, PCA9540_CH0, PCA9540_CH1) |
tc74 | temp_sensor (TC74_ID) |
AS5601 | encoder_az |
AS5601 | encoder_el |
wdt_timer | wdt |
This is the documentation for satnogs rotator controller firmware for dc motors configuration. The board (PCB) is placed in satnogs-rotator-controller and is for releases: v2.0 v2.1 v2.2 wiki page
+This firmware depends on Arduino-PID-Library being present on your system. Please make sure you have installed the latest version before using this firmware.
+Licensed under the GPLv3.
+ +Definition in file dc_motor_controller.ino.
+#define DEFAULT_HOME_STATE HIGH | +
Change to LOW according to Home sensor.
+ +Definition at line 40 of file dc_motor_controller.ino.
+ +#define ENC_RATIO 2 | +
Encoder AS5601 gear ratio.
+ +Definition at line 35 of file dc_motor_controller.ino.
+ +Referenced by setup().
+ +#define HOME_SPEED 100 | +
Set speed to find home, duty cycle of 8-bit timer.
+ +Definition at line 41 of file dc_motor_controller.ino.
+ +Referenced by homing().
+ +#define MAX_M1_ANGLE 360 | +
Maximum angle of azimuth.
+ +Definition at line 37 of file dc_motor_controller.ino.
+ +Referenced by homing().
+ +#define MAX_M2_ANGLE 180 | +
Maximum angle of elevation.
+ +Definition at line 39 of file dc_motor_controller.ino.
+ +Referenced by homing().
+ +#define MAX_PWM 180 | +
Set max Speed.
+ +Definition at line 27 of file dc_motor_controller.ino.
+ +Referenced by setup().
+ +#define MIN_M1_ANGLE 0 | +
Minimum angle of azimuth.
+ +Definition at line 36 of file dc_motor_controller.ino.
+ +#define MIN_M2_ANGLE 0 | +
Minimum angle of elevation.
+ +Definition at line 38 of file dc_motor_controller.ino.
+ +#define MIN_PWM 5 | +
Set min Speed.
+ +Definition at line 28 of file dc_motor_controller.ino.
+ +#define OVER_TEMP 60 | +
Over temperature limit.
+ +Definition at line 34 of file dc_motor_controller.ino.
+ +Referenced by loop().
+ +#define PCA9540_CH0 0x04 | +
I2C Multiplexer CHO.
+ +Definition at line 31 of file dc_motor_controller.ino.
+ + + +#define PCA9540_CH1 0x05 | +
I2C Multiplexer CH1.
+ +Definition at line 32 of file dc_motor_controller.ino.
+ + + +#define PCA9540_ID 0x70 | +
I2C Multiplexer ID.
+ +Definition at line 30 of file dc_motor_controller.ino.
+ +#define POSITION_DEADZONE 0.2 | +
Control dead zone.
+ +Definition at line 29 of file dc_motor_controller.ino.
+ +Referenced by loop().
+ +#define RATIO 54 | +
Gear ratio of rotator gear box.
+ +Definition at line 26 of file dc_motor_controller.ino.
+ +#define SAMPLE_TIME 0.1 | +
Control loop in s.
+ +Definition at line 25 of file dc_motor_controller.ino.
+ + + +#define TC74_ID 0x48 | +
Temperature Sensor ID.
+ +Definition at line 33 of file dc_motor_controller.ino.
+ +enum _rotator_error homing | +( | +) | ++ |
Move both axis with one direction in order to find home position, end-stop switches.
+Definition at line 214 of file dc_motor_controller.ino.
+ +References control_az, control_el, encoder_az, encoder_el, AS5601::get_pos(), endstop::get_state(), HOME_SPEED, homing_error, AS5601::init_zero(), MAX_M1_ANGLE, MAX_M2_ANGLE, motor_az, motor_el, motor::move(), no_error, pca9540, PCA9540_CH0, PCA9540_CH1, i2c_mux::set_channel(), AS5601::set_zero(), motor::stop(), switch_az, switch_el, wdt_timer::watchdog_reset(), and wdt.
+ +Referenced by loop().
+void loop | +( | +) | ++ |
Definition at line 105 of file dc_motor_controller.ino.
+ +References comm, control_az, control_el, _rotator::control_mode, motor::disenable(), easycomm::easycomm_proc(), encoder_az, encoder_el, error, _rotator::fault_az, _rotator::fault_el, motor::get_fault(), AS5601::get_pos(), endstop::get_state(), tc74::get_temp(), homing(), homing_error, _rotator::homing_flag, idle, _rotator::inside_temperature, motor_az, motor_el, motor_error, motor::move(), moving, no_error, OVER_TEMP, over_temperature, pca9540, PCA9540_CH0, PCA9540_CH1, pointing, position, POSITION_DEADZONE, rotator, _rotator::rotator_error, _rotator::rotator_status, SAMPLE_TIME, i2c_mux::set_channel(), tc74::sleep(), speed, motor::stop(), _rotator::switch_az, switch_az, _rotator::switch_el, switch_el, t_run, temp_sensor, tc74::wake_up(), wdt_timer::watchdog_reset(), and wdt.
+void setup | +( | +) | ++ |
Definition at line 71 of file dc_motor_controller.ino.
+ +References comm, easycomm::easycomm_init(), motor::enable(), ENC_RATIO, encoder_az, encoder_el, endstop::init(), i2c_mux::init(), motor::init_pin(), motor::init_timer(), MAX_PWM, motor_az, motor_el, pca9540, SAMPLE_TIME, AS5601::set_gear_ratio(), switch_az, switch_el, wdt_timer::watchdog_init(), and wdt.
+easycomm comm | +
Definition at line 56 of file dc_motor_controller.ino.
+ + + +PID pid_az& control_az | +
Definition at line 59 of file dc_motor_controller.ino.
+ + + +PID pid_el& control_el | +
Definition at line 61 of file dc_motor_controller.ino.
+ + + +AS5601 encoder_az | +
Definition at line 66 of file dc_motor_controller.ino.
+ + + +AS5601 encoder_el | +
Definition at line 66 of file dc_motor_controller.ino.
+ + + +i2c_mux pca9540(PCA9540_ID, PCA9540_CH0, PCA9540_CH1) | +
endstop switch_az(SW1, DEFAULT_HOME_STATE) | +
endstop switch_el(SW2, DEFAULT_HOME_STATE) | +
uint32_t t_run = 0 | +
Definition at line 55 of file dc_motor_controller.ino.
+ +Referenced by loop().
+ +
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
File in stepper_motor_controller | Includes file in libraries |
---|---|
stepper_motor_controller.ino | easycomm.h |
stepper_motor_controller.ino | endstop.h |
stepper_motor_controller.ino | globals.h |
stepper_motor_controller.ino | rotator_pins.h |
stepper_motor_controller.ino | rs485.h |
stepper_motor_controller.ino | watchdog.h |
+ satnogs-rotator-firmware
+
+ |
+
File in stepper_motor_controller | Includes file in libraries |
---|---|
stepper_motor_controller.ino | easycomm.h |
stepper_motor_controller.ino | endstop.h |
stepper_motor_controller.ino | globals.h |
stepper_motor_controller.ino | rotator_pins.h |
stepper_motor_controller.ino | rs485.h |
stepper_motor_controller.ino | watchdog.h |
+ satnogs-rotator-firmware
+
+ |
+
+Directories | |
directory | AccelStepper |
+ satnogs-rotator-firmware
+
+ |
+
+Files | |
file | stepper_motor_controller.ino [code] |
+ satnogs-rotator-firmware
+
+ |
+
+Files | |
file | AccelStepper.cpp.d [code] |
+ satnogs-rotator-firmware
+
+ |
+
+Directories | |
directory | PID_v1 |
+ satnogs-rotator-firmware
+
+ |
+
+Files | |
file | abi.cpp.d [code] |
file | CDC.cpp.d [code] |
file | HardwareSerial.cpp.d [code] |
file | HardwareSerial0.cpp.d [code] |
file | HardwareSerial1.cpp.d [code] |
file | HardwareSerial2.cpp.d [code] |
file | HardwareSerial3.cpp.d [code] |
file | hooks.c.d [code] |
file | IPAddress.cpp.d [code] |
file | main.cpp.d [code] |
file | new.cpp.d [code] |
file | PluggableUSB.cpp.d [code] |
file | Print.cpp.d [code] |
file | Stream.cpp.d [code] |
file | Tone.cpp.d [code] |
file | USBCore.cpp.d [code] |
file | WInterrupts.c.d [code] |
file | wiring.c.d [code] |
file | wiring_analog.c.d [code] |
file | wiring_digital.c.d [code] |
file | wiring_pulse.c.d [code] |
file | wiring_pulse.S.d [code] |
file | wiring_shift.c.d [code] |
file | WMath.cpp.d [code] |
file | WString.cpp.d [code] |
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
+Files | |
file | PID_v1.cpp.d [code] |
+ satnogs-rotator-firmware
+
+ |
+
+Directories | |
directory | utility |
+Files | |
file | Wire.cpp.d [code] |
+ satnogs-rotator-firmware
+
+ |
+
+Directories | |
directory | core |
directory | platformlibs |
directory | userlibs |
+Files | |
file | stepper_motor_controller.ino.d [code] |
+ satnogs-rotator-firmware
+
+ |
+
+Files | |
file | abi.cpp.d [code] |
file | CDC.cpp.d [code] |
file | HardwareSerial.cpp.d [code] |
file | HardwareSerial0.cpp.d [code] |
file | HardwareSerial1.cpp.d [code] |
file | HardwareSerial2.cpp.d [code] |
file | HardwareSerial3.cpp.d [code] |
file | hooks.c.d [code] |
file | IPAddress.cpp.d [code] |
file | main.cpp.d [code] |
file | new.cpp.d [code] |
file | PluggableUSB.cpp.d [code] |
file | Print.cpp.d [code] |
file | Stream.cpp.d [code] |
file | Tone.cpp.d [code] |
file | USBCore.cpp.d [code] |
file | WInterrupts.c.d [code] |
file | wiring.c.d [code] |
file | wiring_analog.c.d [code] |
file | wiring_digital.c.d [code] |
file | wiring_pulse.c.d [code] |
file | wiring_pulse.S.d [code] |
file | wiring_shift.c.d [code] |
file | WMath.cpp.d [code] |
file | WString.cpp.d [code] |
+ satnogs-rotator-firmware
+
+ |
+
+Directories | |
directory | utility |
+Files | |
file | Wire.cpp.d [code] |
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
+Directories | |
directory | Wire |
+ satnogs-rotator-firmware
+
+ |
+
+Files | |
file | as5601.h [code] |
file | easycomm.h [code] |
file | endstop.h [code] |
file | globals.h [code] |
file | i2c_mux.h [code] |
file | motor.h [code] |
file | rotator_pins.h [code] |
file | rs485.h [code] |
file | tc74.h [code] |
file | watchdog.h [code] |
+ satnogs-rotator-firmware
+
+ |
+
+Directories | |
directory | src |
+ satnogs-rotator-firmware
+
+ |
+
+Directories | |
directory | Wire |
+ satnogs-rotator-firmware
+
+ |
+
+Directories | |
directory | core |
directory | platformlibs |
directory | userlibs |
+Files | |
file | dc_motor_controller.ino.d [code] |
+ satnogs-rotator-firmware
+
+ |
+
+Directories | |
directory | src |
+ satnogs-rotator-firmware
+
+ |
+
+Directories | |
directory | build-satnogs |
+Files | |
file | dc_motor_controller.ino [code] |
+ satnogs-rotator-firmware
+
+ |
+
#include <Arduino.h>
#include <WString.h>
#include <avr/wdt.h>
#include "rs485.h"
#include "rotator_pins.h"
#include "globals.h"
Go to the source code of this file.
++Classes | |
class | easycomm |
Class that functions for easycomm 3 implementation. More... | |
+Macros | |
#define | RS485_TX_TIME 9 |
Delay "t"ms to write in serial for RS485 implementation. More... | |
#define | BUFFER_SIZE 256 |
Set the size of serial buffer. More... | |
#define | BAUDRATE 19200 |
Set the Baudrate of easycomm 3 protocol. More... | |
+Functions | |
rs485 | rs485 (RS485_DIR, RS485_TX_TIME) |
It is a driver for easycomm 3 protocol as referred, in Hamlib.
+Licensed under the GPLv3
+ +Definition in file easycomm.h.
+#define BAUDRATE 19200 | +
Set the Baudrate of easycomm 3 protocol.
+ +Definition at line 22 of file easycomm.h.
+ +Referenced by easycomm::easycomm_init().
+ +#define BUFFER_SIZE 256 | +
Set the size of serial buffer.
+ +Definition at line 21 of file easycomm.h.
+ +Referenced by easycomm::easycomm_proc(), and ISR().
+ +#define RS485_TX_TIME 9 | +
Delay "t"ms to write in serial for RS485 implementation.
+ +Definition at line 20 of file easycomm.h.
+ +rs485 rs485 | +( | +RS485_DIR | +, | +
+ | + | RS485_TX_TIME | ++ |
+ | ) | ++ |
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
Go to the source code of this file.
++Classes | |
class | endstop |
Class that functions for interacting with end-stop. More... | |
It is a driver for end-stops, mechanical, optical, magnetic etc.
+Licensed under the GPLv3
+ +Definition in file endstop.h.
+
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
▼ dc_motor_controller | |
▼ build-satnogs | |
▼ core | |
abi.cpp.d | |
CDC.cpp.d | |
HardwareSerial.cpp.d | |
HardwareSerial0.cpp.d | |
HardwareSerial1.cpp.d | |
HardwareSerial2.cpp.d | |
HardwareSerial3.cpp.d | |
hooks.c.d | |
IPAddress.cpp.d | |
main.cpp.d | |
new.cpp.d | |
PluggableUSB.cpp.d | |
Print.cpp.d | |
Stream.cpp.d | |
Tone.cpp.d | |
USBCore.cpp.d | |
WInterrupts.c.d | |
wiring.c.d | |
wiring_analog.c.d | |
wiring_digital.c.d | |
wiring_pulse.c.d | |
wiring_pulse.S.d | |
wiring_shift.c.d | |
WMath.cpp.d | |
WString.cpp.d | |
▼ platformlibs | |
▼ Wire | |
▼ src | |
▼ utility | |
twi.c.d | |
Wire.cpp.d | |
▼ userlibs | |
▼ PID_v1 | |
PID_v1.cpp.d | |
dc_motor_controller.ino.d | |
dc_motor_controller.ino | |
▼ libraries | |
as5601.h | |
easycomm.h | |
endstop.h | |
globals.h | |
i2c_mux.h | |
motor.h | |
rotator_pins.h | |
rs485.h | |
tc74.h | |
watchdog.h | |
▼ stepper_motor_controller | |
stepper_motor_controller.ino |
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
#include <Arduino.h>
Go to the source code of this file.
++Classes | |
struct | _control |
struct | _rotator |
+Enumerations | |
enum | _rotator_status { idle = 1, +moving = 2, +pointing = 4, +error = 8 + } |
enum | _rotator_error { + no_error = 1, +sensor_error = 2, +homing_error = 4, +motor_error = 8, + + over_temperature = 12, +wdt_error = 16 + + } |
enum | _control_mode { position = 0, +speed = 1 + } |
+Variables | |
_control | control_az |
_control | control_el |
_rotator | rotator |
It is a file to define all global variables
+Licensed under the GPLv3
+ +Definition in file globals.h.
+enum _control_mode | +
enum _rotator_error | +
enum _rotator_status | +
_control control_az | +
Definition at line 51 of file globals.h.
+ +Referenced by easycomm::easycomm_proc(), homing(), and loop().
+ +_control control_el | +
Definition at line 54 of file globals.h.
+ +Referenced by easycomm::easycomm_proc(), homing(), and loop().
+ +_rotator rotator | +
Definition at line 57 of file globals.h.
+ +Referenced by easycomm::easycomm_proc(), ISR(), and loop().
+ +
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
This page explains how to interpret the graphs that are generated by doxygen.
+Consider the following example:
This will result in the following graph:
+The boxes in the above graph have the following meaning:
+The arrows have the following meaning:
+
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
#include <Wire.h>
Go to the source code of this file.
++Classes | |
class | i2c_mux |
Class that functions for interacting with I2C 1-of-2 multiplexer. More... | |
+Macros | |
#define | I2C_FREQ 100000 |
It is a driver for I2C 1-of-2 multiplexer (like PCA9540B) with 2-Channels.
+Licensed under the GPLv3
+ +Definition in file i2c_mux.h.
+#define I2C_FREQ 100000 | +
Definition at line 15 of file i2c_mux.h.
+ +Referenced by i2c_mux::init().
+ +
+ satnogs-rotator-firmware
+
+ |
+
+ satnogs-rotator-firmware
+
+ |
+
Firmware SatNOGS Rotator Controller.
+Repository includes all source files for the SatNOGS rotator controller Firmware.
+Electronics can be found on satnogs-rotator-controller
+In order to use this code, you need to install
You need to choose the version of the Firmware you will be utilizing based on your controller and rotator setup. Namely we have two different versions (one for DC motors and one for Stepper motors).
+Connect FTDI
+Only with ISP programming
* Arduino as ISP +* BusPirate as ISP +
Connect the PC with contreller via UART to USB or RS485 to USB by using the right converter (as described in rotator controller BOM). For both options must be soldered the suitable components as descrided in rotator controller wiki page.
+Use commands of rotctl:
+Replace the /dev/ttyUSB1 with the device which is connected to PC.
+Use commands of easycomm 3:
+Send directly commands of easycomm 3 as described in Easycomm implemantation section.
+The main repository lives on Gitlab and all Merge Request should happen there.
+Licensed under the [GPLv3](LICENSE)
+t |