Satnogs V2 Controller Questions and Stepper Driver Voltage?

So I’ve got my 3.1 rotator built, and have the electronics hooked up.

I’m connecting directly to the satnogs v2 controller arduino pro mini using 19200 baud.

The only thing that comes up on my terminal monitor screen is AL001

I can’t issue any commands, and nothing turns on the rotator.

Anyone have any ideas?

(EDIT) This may be because I was using an older firmware from 2017? I downloaded latest and get the below message in the next reply.

Also, what are you supposed to set your stepper driver voltages to / how do you tune your steppers? Whats the advantages / disadvantages of doing full steps vs smaller steps?

Specs on the motors I have:

Rated Current/Phase (Amps DC) = 2.0
Phase Resistance (ohms) +/- 10% = 1.4
Rated Voltage/Phase (v DC) = 2.8
Phase Inductance (mH) +/- 20% (1KHz) Typical = 3.0

1 Like

So I downloaded latest off of GITHUB and am now getting the following when I compile / upload?

In file included from C:\Users\jbandy\Downloads\satnogs-rotator-firmware-master\satnogs-rotator-firmware-master\stepper_motor_controller\stepper_motor_controller.ino:9:0:

sketch\tc74.h: In member function ‘int8_t tc74::get_temp()’:

sketch\tc74.h:35:32: warning: ISO C++ says that these are ambiguous, even though the worst conversion for the first is better than the worst conversion for the second:

     Wire.requestFrom(_id, 1);

                            ^

In file included from C:\Users\jbandy\Downloads\satnogs-rotator-firmware-master\satnogs-rotator-firmware-master\stepper_motor_controller\stepper_motor_controller.ino:2:0:

C:\Users\jbandy\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.21\libraries\Wire\src/Wire.h:64:13: note: candidate 1: uint8_t TwoWire::requestFrom(int, int)

 uint8_t requestFrom(int, int);

         ^

C:\Users\jbandy\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.21\libraries\Wire\src/Wire.h:61:13: note: candidate 2: uint8_t TwoWire::requestFrom(uint8_t, uint8_t)

 uint8_t requestFrom(uint8_t, uint8_t);

         ^

In file included from C:\Users\jbandy\Downloads\satnogs-rotator-firmware-master\satnogs-rotator-firmware-master\stepper_motor_controller\stepper_motor_controller.ino:9:0:

sketch\tc74.h: In member function ‘int8_t tc74::get_status()’:

sketch\tc74.h:48:32: warning: ISO C++ says that these are ambiguous, even though the worst conversion for the first is better than the worst conversion for the second:

     Wire.requestFrom(_id, 1);

                            ^

In file included from C:\Users\jbandy\Downloads\satnogs-rotator-firmware-master\satnogs-rotator-firmware-master\stepper_motor_controller\stepper_motor_controller.ino:2:0:

C:\Users\jbandy\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.21\libraries\Wire\src/Wire.h:64:13: note: candidate 1: uint8_t TwoWire::requestFrom(int, int)

 uint8_t requestFrom(int, int);

         ^

C:\Users\jbandy\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.21\libraries\Wire\src/Wire.h:61:13: note: candidate 2: uint8_t TwoWire::requestFrom(uint8_t, uint8_t)

 uint8_t requestFrom(uint8_t, uint8_t);

         ^

Sketch uses 16948 bytes (55%) of program storage space. Maximum is 30720 bytes.
Global variables use 655 bytes (31%) of dynamic memory, leaving 1393 bytes for local variables. Maximum is 2048 bytes.

What’s going on with the above??

Been playing around. Now getting the following errors… HELP!!!

In file included from C:\Users\jbandy\Downloads\satnogs-rotator-firmware-master\satnogs-rotator-firmware-master\stepper_motor_controller\stepper_motor_controller.ino:9:0:

sketch\tc74.h: In member function ‘int8_t tc74::get_temp()’:

sketch\tc74.h:35:32: warning: ISO C++ says that these are ambiguous, even though the worst conversion for the first is better than the worst conversion for the second:

     Wire.requestFrom(_id, 1);

                            ^

In file included from C:\Users\jbandy\Downloads\satnogs-rotator-firmware-master\satnogs-rotator-firmware-master\stepper_motor_controller\stepper_motor_controller.ino:2:0:

C:\Users\jbandy\Documents\Arduino\libraries\Wire-master/Wire.h:69:13: note: candidate 1: uint8_t TwoWire::requestFrom(int, int)

 uint8_t requestFrom(int, int);

         ^

C:\Users\jbandy\Documents\Arduino\libraries\Wire-master/Wire.h:67:13: note: candidate 2: uint8_t TwoWire::requestFrom(uint8_t, uint8_t)

 uint8_t requestFrom(uint8_t, uint8_t);

         ^

In file included from C:\Users\jbandy\Downloads\satnogs-rotator-firmware-master\satnogs-rotator-firmware-master\stepper_motor_controller\stepper_motor_controller.ino:9:0:

sketch\tc74.h: In member function ‘int8_t tc74::get_status()’:

sketch\tc74.h:48:32: warning: ISO C++ says that these are ambiguous, even though the worst conversion for the first is better than the worst conversion for the second:

     Wire.requestFrom(_id, 1);

                            ^

In file included from C:\Users\jbandy\Downloads\satnogs-rotator-firmware-master\satnogs-rotator-firmware-master\stepper_motor_controller\stepper_motor_controller.ino:2:0:

C:\Users\jbandy\Documents\Arduino\libraries\Wire-master/Wire.h:69:13: note: candidate 1: uint8_t TwoWire::requestFrom(int, int)

 uint8_t requestFrom(int, int);

         ^

C:\Users\jbandy\Documents\Arduino\libraries\Wire-master/Wire.h:67:13: note: candidate 2: uint8_t TwoWire::requestFrom(uint8_t, uint8_t)

 uint8_t requestFrom(uint8_t, uint8_t);

         ^

libraries\AccelStepper\AccelStepper.cpp.o (symbol from plugin): In function `AccelStepper::step(long)’:

(.text+0x0): multiple definition of `AccelStepper::step(long)’

sketch\AccelStepper.cpp.o (symbol from plugin):(.text+0x0): first defined here

libraries\AccelStepper\AccelStepper.cpp.o (symbol from plugin): In function `AccelStepper::step(long)’:

(.text+0x0): multiple definition of `AccelStepper::step6(long)’

sketch\AccelStepper.cpp.o (symbol from plugin):(.text+0x0): first defined here

libraries\AccelStepper\AccelStepper.cpp.o (symbol from plugin): In function `AccelStepper::step(long)’:

(.text+0x0): multiple definition of `AccelStepper::step8(long)’

sketch\AccelStepper.cpp.o (symbol from plugin):(.text+0x0): first defined here

libraries\AccelStepper\AccelStepper.cpp.o (symbol from plugin): In function `AccelStepper::step(long)’:

(.text+0x0): multiple definition of `AccelStepper::setOutputPins(unsigned char)’

sketch\AccelStepper.cpp.o (symbol from plugin):(.text+0x0): first defined here

libraries\AccelStepper\AccelStepper.cpp.o (symbol from plugin): In function `AccelStepper::step(long)’:

(.text+0x0): multiple definition of `AccelStepper::step1(long)’

sketch\AccelStepper.cpp.o (symbol from plugin):(.text+0x0): first defined here

libraries\AccelStepper\AccelStepper.cpp.o (symbol from plugin): In function `AccelStepper::step(long)’:

(.text+0x0): multiple definition of `AccelStepper::step0(long)’

sketch\AccelStepper.cpp.o (symbol from plugin):(.text+0x0): first defined here

libraries\AccelStepper\AccelStepper.cpp.o (symbol from plugin): In function `AccelStepper::step(long)’:

(.text+0x0): multiple definition of `AccelStepper::step2(long)’

sketch\AccelStepper.cpp.o (symbol from plugin):(.text+0x0): first defined here

libraries\AccelStepper\AccelStepper.cpp.o (symbol from plugin): In function `AccelStepper::step(long)’:

(.text+0x0): multiple definition of `AccelStepper::step3(long)’

sketch\AccelStepper.cpp.o (symbol from plugin):(.text+0x0): first defined here

libraries\AccelStepper\AccelStepper.cpp.o (symbol from plugin): In function `AccelStepper::step(long)’:

(.text+0x0): multiple definition of `AccelStepper::step4(long)’

sketch\AccelStepper.cpp.o (symbol from plugin):(.text+0x0): first defined here

libraries\AccelStepper\AccelStepper.cpp.o (symbol from plugin): In function `AccelStepper::step(long)’:

(.text+0x0): multiple definition of `AccelStepper::disableOutputs()’

sketch\AccelStepper.cpp.o (symbol from plugin):(.text+0x0): first defined here

libraries\AccelStepper\AccelStepper.cpp.o (symbol from plugin): In function `AccelStepper::step(long)’:

(.text+0x0): multiple definition of `AccelStepper::enableOutputs()’

sketch\AccelStepper.cpp.o (symbol from plugin):(.text+0x0): first defined here

libraries\AccelStepper\AccelStepper.cpp.o (symbol from plugin): In function `AccelStepper::step(long)’:

(.text+0x0): multiple definition of `AccelStepper::runSpeed()’

sketch\AccelStepper.cpp.o (symbol from plugin):(.text+0x0): first defined here

libraries\AccelStepper\AccelStepper.cpp.o (symbol from plugin): In function `AccelStepper::step(long)’:

(.text+0x0): multiple definition of `AccelStepper::run()’

sketch\AccelStepper.cpp.o (symbol from plugin):(.text+0x0): first defined here

libraries\AccelStepper\AccelStepper.cpp.o (symbol from plugin): In function `AccelStepper::step(long)’:

(.text+0x0): multiple definition of `AccelStepper::setSpeed(float)’

sketch\AccelStepper.cpp.o (symbol from plugin):(.text+0x0): first defined here

libraries\AccelStepper\AccelStepper.cpp.o (symbol from plugin): In function `AccelStepper::step(long)’:

(.text+0x0): multiple definition of `AccelStepper::setEnablePin(unsigned char)’

sketch\AccelStepper.cpp.o (symbol from plugin):(.text+0x0): first defined here

libraries\AccelStepper\AccelStepper.cpp.o (symbol from plugin): In function `AccelStepper::step(long)’:

(.text+0x0): multiple definition of `AccelStepper::isRunning()’

sketch\AccelStepper.cpp.o (symbol from plugin):(.text+0x0): first defined here

libraries\AccelStepper\AccelStepper.cpp.o (symbol from plugin): In function `AccelStepper::step(long)’:

(.text+0x0): multiple definition of `AccelStepper::distanceToGo()’

sketch\AccelStepper.cpp.o (symbol from plugin):(.text+0x0): first defined here

libraries\AccelStepper\AccelStepper.cpp.o (symbol from plugin): In function `AccelStepper::step(long)’:

(.text+0x0): multiple definition of `AccelStepper::targetPosition()’

sketch\AccelStepper.cpp.o (symbol from plugin):(.text+0x0): first defined here

libraries\AccelStepper\AccelStepper.cpp.o (symbol from plugin): In function `AccelStepper::step(long)’:

(.text+0x0): multiple definition of `AccelStepper::currentPosition()’

sketch\AccelStepper.cpp.o (symbol from plugin):(.text+0x0): first defined here

libraries\AccelStepper\AccelStepper.cpp.o (symbol from plugin): In function `AccelStepper::step(long)’:

(.text+0x0): multiple definition of `AccelStepper::setCurrentPosition(long)’

sketch\AccelStepper.cpp.o (symbol from plugin):(.text+0x0): first defined here

libraries\AccelStepper\AccelStepper.cpp.o (symbol from plugin): In function `AccelStepper::step(long)’:

(.text+0x0): multiple definition of `AccelStepper::computeNewSpeed()’

sketch\AccelStepper.cpp.o (symbol from plugin):(.text+0x0): first defined here

libraries\AccelStepper\AccelStepper.cpp.o (symbol from plugin): In function `AccelStepper::step(long)’:

(.text+0x0): multiple definition of `AccelStepper::moveTo(long)’

sketch\AccelStepper.cpp.o (symbol from plugin):(.text+0x0): first defined here

libraries\AccelStepper\AccelStepper.cpp.o (symbol from plugin): In function `AccelStepper::step(long)’:

(.text+0x0): multiple definition of `AccelStepper::move(long)’

sketch\AccelStepper.cpp.o (symbol from plugin):(.text+0x0): first defined here

libraries\AccelStepper\AccelStepper.cpp.o (symbol from plugin): In function `AccelStepper::step(long)’:

(.text+0x0): multiple definition of `AccelStepper::setMaxSpeed(float)’

sketch\AccelStepper.cpp.o (symbol from plugin):(.text+0x0): first defined here

libraries\AccelStepper\AccelStepper.cpp.o (symbol from plugin): In function `AccelStepper::step(long)’:

(.text+0x0): multiple definition of `AccelStepper::setAcceleration(float)’

sketch\AccelStepper.cpp.o (symbol from plugin):(.text+0x0): first defined here

libraries\AccelStepper\AccelStepper.cpp.o (symbol from plugin): In function `AccelStepper::step(long)’:

(.text+0x0): multiple definition of `AccelStepper::maxSpeed()’

sketch\AccelStepper.cpp.o (symbol from plugin):(.text+0x0): first defined here

libraries\AccelStepper\AccelStepper.cpp.o (symbol from plugin): In function `AccelStepper::step(long)’:

(.text+0x0): multiple definition of `AccelStepper::AccelStepper(unsigned char, unsigned char, unsigned char, unsigned char, unsigned char, bool)’

sketch\AccelStepper.cpp.o (symbol from plugin):(.text+0x0): first defined here

libraries\AccelStepper\AccelStepper.cpp.o (symbol from plugin): In function `AccelStepper::step(long)’:

(.text+0x0): multiple definition of `AccelStepper::AccelStepper(unsigned char, unsigned char, unsigned char, unsigned char, unsigned char, bool)’

sketch\AccelStepper.cpp.o (symbol from plugin):(.text+0x0): first defined here

libraries\AccelStepper\AccelStepper.cpp.o (symbol from plugin): In function `AccelStepper::step(long)’:

(.text+0x0): multiple definition of `AccelStepper::AccelStepper(void ()(), void ()())’

sketch\AccelStepper.cpp.o (symbol from plugin):(.text+0x0): first defined here

libraries\AccelStepper\AccelStepper.cpp.o (symbol from plugin): In function `AccelStepper::step(long)’:

(.text+0x0): multiple definition of `AccelStepper::AccelStepper(void ()(), void ()())’

sketch\AccelStepper.cpp.o (symbol from plugin):(.text+0x0): first defined here

libraries\AccelStepper\AccelStepper.cpp.o (symbol from plugin): In function `AccelStepper::step(long)’:

(.text+0x0): multiple definition of `AccelStepper::speed()’

sketch\AccelStepper.cpp.o (symbol from plugin):(.text+0x0): first defined here

libraries\AccelStepper\AccelStepper.cpp.o (symbol from plugin): In function `AccelStepper::step(long)’:

(.text+0x0): multiple definition of `AccelStepper::setMinPulseWidth(unsigned int)’

sketch\AccelStepper.cpp.o (symbol from plugin):(.text+0x0): first defined here

libraries\AccelStepper\AccelStepper.cpp.o (symbol from plugin): In function `AccelStepper::step(long)’:

(.text+0x0): multiple definition of `AccelStepper::setPinsInverted(bool, bool, bool)’

sketch\AccelStepper.cpp.o (symbol from plugin):(.text+0x0): first defined here

libraries\AccelStepper\AccelStepper.cpp.o (symbol from plugin): In function `AccelStepper::step(long)’:

(.text+0x0): multiple definition of `AccelStepper::setPinsInverted(bool, bool, bool, bool, bool)’

sketch\AccelStepper.cpp.o (symbol from plugin):(.text+0x0): first defined here

libraries\AccelStepper\AccelStepper.cpp.o (symbol from plugin): In function `AccelStepper::step(long)’:

(.text+0x0): multiple definition of `AccelStepper::runToPosition()’

sketch\AccelStepper.cpp.o (symbol from plugin):(.text+0x0): first defined here

libraries\AccelStepper\AccelStepper.cpp.o (symbol from plugin): In function `AccelStepper::step(long)’:

(.text+0x0): multiple definition of `AccelStepper::runSpeedToPosition()’

sketch\AccelStepper.cpp.o (symbol from plugin):(.text+0x0): first defined here

libraries\AccelStepper\AccelStepper.cpp.o (symbol from plugin): In function `AccelStepper::step(long)’:

(.text+0x0): multiple definition of `AccelStepper::runToNewPosition(long)’

sketch\AccelStepper.cpp.o (symbol from plugin):(.text+0x0): first defined here

libraries\AccelStepper\AccelStepper.cpp.o (symbol from plugin): In function `AccelStepper::step(long)’:

(.text+0x0): multiple definition of `AccelStepper::stop()’

sketch\AccelStepper.cpp.o (symbol from plugin):(.text+0x0): first defined here

libraries\AccelStepper\MultiStepper.cpp.o (symbol from plugin): In function `MultiStepper::MultiStepper()’:

(.text+0x0): multiple definition of `MultiStepper::MultiStepper()’

sketch\MultiStepper.cpp.o (symbol from plugin):(.text+0x0): first defined here

libraries\AccelStepper\MultiStepper.cpp.o (symbol from plugin): In function `MultiStepper::MultiStepper()’:

(.text+0x0): multiple definition of `MultiStepper::MultiStepper()’

sketch\MultiStepper.cpp.o (symbol from plugin):(.text+0x0): first defined here

libraries\AccelStepper\MultiStepper.cpp.o (symbol from plugin): In function `MultiStepper::MultiStepper()’:

(.text+0x0): multiple definition of `MultiStepper::addStepper(AccelStepper&)’

sketch\MultiStepper.cpp.o (symbol from plugin):(.text+0x0): first defined here

libraries\AccelStepper\MultiStepper.cpp.o (symbol from plugin): In function `MultiStepper::MultiStepper()’:

(.text+0x0): multiple definition of `MultiStepper::moveTo(long*)’

sketch\MultiStepper.cpp.o (symbol from plugin):(.text+0x0): first defined here

libraries\AccelStepper\MultiStepper.cpp.o (symbol from plugin): In function `MultiStepper::MultiStepper()’:

(.text+0x0): multiple definition of `MultiStepper::run()’

sketch\MultiStepper.cpp.o (symbol from plugin):(.text+0x0): first defined here

libraries\AccelStepper\MultiStepper.cpp.o (symbol from plugin): In function `MultiStepper::MultiStepper()’:

(.text+0x0): multiple definition of `MultiStepper::runSpeedToPosition()’

sketch\MultiStepper.cpp.o (symbol from plugin):(.text+0x0): first defined here

libraries\Wire-master\Wire.cpp.o (symbol from plugin): In function `TwoWire::available()’:

(.text+0x0): multiple definition of `TwoWire::available()’

sketch\Wire.cpp.o (symbol from plugin):(.text+0x0): first defined here

libraries\Wire-master\Wire.cpp.o (symbol from plugin): In function `TwoWire::available()’:

(.text+0x0): multiple definition of `TwoWire::rxBufferLength’

sketch\Wire.cpp.o (symbol from plugin):(.text+0x0): first defined here

libraries\Wire-master\Wire.cpp.o (symbol from plugin): In function `TwoWire::available()’:

(.text+0x0): multiple definition of `TwoWire::rxBufferIndex’

sketch\Wire.cpp.o (symbol from plugin):(.text+0x0): first defined here

libraries\Wire-master\Wire.cpp.o (symbol from plugin): In function `TwoWire::available()’:

(.text+0x0): multiple definition of `TwoWire::read()’

sketch\Wire.cpp.o (symbol from plugin):(.text+0x0): first defined here

libraries\Wire-master\Wire.cpp.o (symbol from plugin): In function `TwoWire::available()’:

(.text+0x0): multiple definition of `TwoWire::rxBuffer’

sketch\Wire.cpp.o (symbol from plugin):(.text+0x0): first defined here

libraries\Wire-master\Wire.cpp.o (symbol from plugin): In function `TwoWire::available()’:

(.text+0x0): multiple definition of `TwoWire::peek()’

sketch\Wire.cpp.o (symbol from plugin):(.text+0x0): first defined here

libraries\Wire-master\Wire.cpp.o (symbol from plugin): In function `TwoWire::available()’:

(.text+0x0): multiple definition of `TwoWire::flush()’

sketch\Wire.cpp.o (symbol from plugin):(.text+0x0): first defined here

libraries\Wire-master\Wire.cpp.o (symbol from plugin): In function `TwoWire::available()’:

(.text+0x0): multiple definition of `TwoWire::onReceiveService(unsigned char*, int)’

sketch\Wire.cpp.o (symbol from plugin):(.text+0x0): first defined here

libraries\Wire-master\Wire.cpp.o (symbol from plugin): In function `TwoWire::available()’:

(.text+0x0): multiple definition of `TwoWire::user_onReceive’

sketch\Wire.cpp.o (symbol from plugin):(.text+0x0): first defined here

libraries\Wire-master\Wire.cpp.o (symbol from plugin): In function `TwoWire::available()’:

(.text+0x0): multiple definition of `TwoWire::onRequestService()’

sketch\Wire.cpp.o (symbol from plugin):(.text+0x0): first defined here

libraries\Wire-master\Wire.cpp.o (symbol from plugin): In function `TwoWire::available()’:

(.text+0x0): multiple definition of `TwoWire::user_onRequest’

sketch\Wire.cpp.o (symbol from plugin):(.text+0x0): first defined here

libraries\Wire-master\Wire.cpp.o (symbol from plugin): In function `TwoWire::available()’:

(.text+0x0): multiple definition of `TwoWire::txBufferIndex’

sketch\Wire.cpp.o (symbol from plugin):(.text+0x0): first defined here

libraries\Wire-master\Wire.cpp.o (symbol from plugin): In function `TwoWire::available()’:

(.text+0x0): multiple definition of `TwoWire::txBufferLength’

sketch\Wire.cpp.o (symbol from plugin):(.text+0x0): first defined here

libraries\Wire-master\Wire.cpp.o (symbol from plugin): In function `TwoWire::available()’:

(.text+0x0): multiple definition of `TwoWire::write(unsigned char const*, unsigned int)’

sketch\Wire.cpp.o (symbol from plugin):(.text+0x0): first defined here

libraries\Wire-master\Wire.cpp.o (symbol from plugin): In function `TwoWire::available()’:

(.text+0x0): multiple definition of `TwoWire::transmitting’

sketch\Wire.cpp.o (symbol from plugin):(.text+0x0): first defined here

libraries\Wire-master\Wire.cpp.o (symbol from plugin): In function `TwoWire::available()’:

(.text+0x0): multiple definition of `TwoWire::write(unsigned char)’

sketch\Wire.cpp.o (symbol from plugin):(.text+0x0): first defined here

libraries\Wire-master\Wire.cpp.o (symbol from plugin): In function `TwoWire::available()’:

(.text+0x0): multiple definition of `TwoWire::txBuffer’

sketch\Wire.cpp.o (symbol from plugin):(.text+0x0): first defined here

libraries\Wire-master\Wire.cpp.o (symbol from plugin): In function `TwoWire::available()’:

(.text+0x0): multiple definition of `TwoWire::TwoWire()’

sketch\Wire.cpp.o (symbol from plugin):(.text+0x0): first defined here

libraries\Wire-master\Wire.cpp.o (symbol from plugin): In function `TwoWire::available()’:

(.text+0x0): multiple definition of `TwoWire::TwoWire()’

sketch\Wire.cpp.o (symbol from plugin):(.text+0x0): first defined here

libraries\Wire-master\Wire.cpp.o (symbol from plugin): In function `TwoWire::available()’:

(.text+0x0): multiple definition of `Wire’

sketch\Wire.cpp.o (symbol from plugin):(.text+0x0): first defined here

libraries\Wire-master\Wire.cpp.o (symbol from plugin): In function `TwoWire::available()’:

(.text+0x0): multiple definition of `TwoWire::begin()’

sketch\Wire.cpp.o (symbol from plugin):(.text+0x0): first defined here

libraries\Wire-master\Wire.cpp.o (symbol from plugin): In function `TwoWire::available()’:

(.text+0x0): multiple definition of `TwoWire::begin(unsigned char)’

sketch\Wire.cpp.o (symbol from plugin):(.text+0x0): first defined here

libraries\Wire-master\Wire.cpp.o (symbol from plugin): In function `TwoWire::available()’:

(.text+0x0): multiple definition of `TwoWire::begin(int)’

sketch\Wire.cpp.o (symbol from plugin):(.text+0x0): first defined here

libraries\Wire-master\Wire.cpp.o (symbol from plugin): In function `TwoWire::available()’:

(.text+0x0): multiple definition of `TwoWire::end()’

sketch\Wire.cpp.o (symbol from plugin):(.text+0x0): first defined here

libraries\Wire-master\Wire.cpp.o (symbol from plugin): In function `TwoWire::available()’:

(.text+0x0): multiple definition of `TwoWire::setClock(unsigned long)’

sketch\Wire.cpp.o (symbol from plugin):(.text+0x0): first defined here

libraries\Wire-master\Wire.cpp.o (symbol from plugin): In function `TwoWire::available()’:

(.text+0x0): multiple definition of `TwoWire::setSDA(unsigned char)’

sketch\Wire.cpp.o (symbol from plugin):(.text+0x0): first defined here

libraries\Wire-master\Wire.cpp.o (symbol from plugin): In function `TwoWire::available()’:

(.text+0x0): multiple definition of `TwoWire::setSCL(unsigned char)’

sketch\Wire.cpp.o (symbol from plugin):(.text+0x0): first defined here

libraries\Wire-master\Wire.cpp.o (symbol from plugin): In function `TwoWire::available()’:

(.text+0x0): multiple definition of `TwoWire::requestFrom(unsigned char, unsigned char, unsigned char)’

sketch\Wire.cpp.o (symbol from plugin):(.text+0x0): first defined here

libraries\Wire-master\Wire.cpp.o (symbol from plugin): In function `TwoWire::available()’:

(.text+0x0): multiple definition of `TwoWire::requestFrom(unsigned char, unsigned char)’

sketch\Wire.cpp.o (symbol from plugin):(.text+0x0): first defined here

libraries\Wire-master\Wire.cpp.o (symbol from plugin): In function `TwoWire::available()’:

(.text+0x0): multiple definition of `TwoWire::requestFrom(int, int)’

sketch\Wire.cpp.o (symbol from plugin):(.text+0x0): first defined here

libraries\Wire-master\Wire.cpp.o (symbol from plugin): In function `TwoWire::available()’:

(.text+0x0): multiple definition of `TwoWire::requestFrom(int, int, int)’

sketch\Wire.cpp.o (symbol from plugin):(.text+0x0): first defined here

libraries\Wire-master\Wire.cpp.o (symbol from plugin): In function `TwoWire::available()’:

(.text+0x0): multiple definition of `TwoWire::beginTransmission(unsigned char)’

sketch\Wire.cpp.o (symbol from plugin):(.text+0x0): first defined here

libraries\Wire-master\Wire.cpp.o (symbol from plugin): In function `TwoWire::available()’:

(.text+0x0): multiple definition of `TwoWire::txAddress’

sketch\Wire.cpp.o (symbol from plugin):(.text+0x0): first defined here

libraries\Wire-master\Wire.cpp.o (symbol from plugin): In function `TwoWire::available()’:

(.text+0x0): multiple definition of `TwoWire::beginTransmission(int)’

sketch\Wire.cpp.o (symbol from plugin):(.text+0x0): first defined here

libraries\Wire-master\Wire.cpp.o (symbol from plugin): In function `TwoWire::available()’:

(.text+0x0): multiple definition of `TwoWire::endTransmission(unsigned char)’

sketch\Wire.cpp.o (symbol from plugin):(.text+0x0): first defined here

libraries\Wire-master\Wire.cpp.o (symbol from plugin): In function `TwoWire::available()’:

(.text+0x0): multiple definition of `TwoWire::endTransmission()’

sketch\Wire.cpp.o (symbol from plugin):(.text+0x0): first defined here

libraries\Wire-master\Wire.cpp.o (symbol from plugin): In function `TwoWire::available()’:

(.text+0x0): multiple definition of `TwoWire::onReceive(void (*)(int))’

sketch\Wire.cpp.o (symbol from plugin):(.text+0x0): first defined here

libraries\Wire-master\Wire.cpp.o (symbol from plugin): In function `TwoWire::available()’:

(.text+0x0): multiple definition of `TwoWire::onRequest(void (*)())’

sketch\Wire.cpp.o (symbol from plugin):(.text+0x0): first defined here

libraries\Arduino-PID-Library-master\PID_v1.cpp.o (symbol from plugin): In function `PID::Compute()’:

(.text+0x0): multiple definition of `PID::Compute()’

sketch\PID_v1.cpp.o (symbol from plugin):(.text+0x0): first defined here

libraries\Arduino-PID-Library-master\PID_v1.cpp.o (symbol from plugin): In function `PID::Compute()’:

(.text+0x0): multiple definition of `PID::SetTunings(double, double, double, int)’

sketch\PID_v1.cpp.o (symbol from plugin):(.text+0x0): first defined here

libraries\Arduino-PID-Library-master\PID_v1.cpp.o (symbol from plugin): In function `PID::Compute()’:

(.text+0x0): multiple definition of `PID::SetOutputLimits(double, double)’

sketch\PID_v1.cpp.o (symbol from plugin):(.text+0x0): first defined here

libraries\Arduino-PID-Library-master\PID_v1.cpp.o (symbol from plugin): In function `PID::Compute()’:

(.text+0x0): multiple definition of `PID::SetTunings(double, double, double)’

sketch\PID_v1.cpp.o (symbol from plugin):(.text+0x0): first defined here

libraries\Arduino-PID-Library-master\PID_v1.cpp.o (symbol from plugin): In function `PID::Compute()’:

(.text+0x0): multiple definition of `PID::SetSampleTime(int)’

sketch\PID_v1.cpp.o (symbol from plugin):(.text+0x0): first defined here

libraries\Arduino-PID-Library-master\PID_v1.cpp.o (symbol from plugin): In function `PID::Compute()’:

(.text+0x0): multiple definition of `PID::Initialize()’

sketch\PID_v1.cpp.o (symbol from plugin):(.text+0x0): first defined here

libraries\Arduino-PID-Library-master\PID_v1.cpp.o (symbol from plugin): In function `PID::Compute()’:

(.text+0x0): multiple definition of `PID::SetMode(int)’

sketch\PID_v1.cpp.o (symbol from plugin):(.text+0x0): first defined here

libraries\Arduino-PID-Library-master\PID_v1.cpp.o (symbol from plugin): In function `PID::Compute()’:

(.text+0x0): multiple definition of `PID::SetControllerDirection(int)’

sketch\PID_v1.cpp.o (symbol from plugin):(.text+0x0): first defined here

libraries\Arduino-PID-Library-master\PID_v1.cpp.o (symbol from plugin): In function `PID::Compute()’:

(.text+0x0): multiple definition of `PID::PID(double*, double*, double*, double, double, double, int, int)’

sketch\PID_v1.cpp.o (symbol from plugin):(.text+0x0): first defined here

libraries\Arduino-PID-Library-master\PID_v1.cpp.o (symbol from plugin): In function `PID::Compute()’:

(.text+0x0): multiple definition of `PID::PID(double*, double*, double*, double, double, double, int, int)’

sketch\PID_v1.cpp.o (symbol from plugin):(.text+0x0): first defined here

libraries\Arduino-PID-Library-master\PID_v1.cpp.o (symbol from plugin): In function `PID::Compute()’:

(.text+0x0): multiple definition of `PID::PID(double*, double*, double*, double, double, double, int)’

sketch\PID_v1.cpp.o (symbol from plugin):(.text+0x0): first defined here

libraries\Arduino-PID-Library-master\PID_v1.cpp.o (symbol from plugin): In function `PID::Compute()’:

(.text+0x0): multiple definition of `PID::PID(double*, double*, double*, double, double, double, int)’

sketch\PID_v1.cpp.o (symbol from plugin):(.text+0x0): first defined here

libraries\Arduino-PID-Library-master\PID_v1.cpp.o (symbol from plugin): In function `PID::Compute()’:

(.text+0x0): multiple definition of `PID::GetKp()’

sketch\PID_v1.cpp.o (symbol from plugin):(.text+0x0): first defined here

libraries\Arduino-PID-Library-master\PID_v1.cpp.o (symbol from plugin): In function `PID::Compute()’:

(.text+0x0): multiple definition of `PID::GetKi()’

sketch\PID_v1.cpp.o (symbol from plugin):(.text+0x0): first defined here

libraries\Arduino-PID-Library-master\PID_v1.cpp.o (symbol from plugin): In function `PID::Compute()’:

(.text+0x0): multiple definition of `PID::GetKd()’

sketch\PID_v1.cpp.o (symbol from plugin):(.text+0x0): first defined here

libraries\Arduino-PID-Library-master\PID_v1.cpp.o (symbol from plugin): In function `PID::Compute()’:

(.text+0x0): multiple definition of `PID::GetMode()’

sketch\PID_v1.cpp.o (symbol from plugin):(.text+0x0): first defined here

libraries\Arduino-PID-Library-master\PID_v1.cpp.o (symbol from plugin): In function `PID::Compute()’:

(.text+0x0): multiple definition of `PID::GetDirection()’

sketch\PID_v1.cpp.o (symbol from plugin):(.text+0x0): first defined here

collect2.exe: error: ld returned 1 exit status

exit status 1
Error compiling for board Arduino Pro or Pro Mini.

Please try a “make clean” and “make” again after that.

1 Like

With https://gitlab.com/librespacefoundation/satnogs/satnogs-rotator-firmware/merge_requests/3/diffs i got rid of the warnings regarding requestFrom…

Im a little bit further today. Got a new issue though. When it compiles, shows Arduino.h: No such file or directory

$ make clean
rm -rf build-satnogs

jbandy@JBANDY-LT ~/workspace/satnogs-rotator-firmware-master/stepper_motor_controller
$ make
mkdir -p build-satnogs
/home/jbandy/opt/arduino-1.8.5/hardware/tools/avr/bin/avr-g++ -MMD -c -D__PROG_TYPES_COMPAT__ -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=185 -DARDUINO_ARCH_AVR -I/home/jbandy/opt/arduino-1.8.5/hardware/arduino/avr/cores/arduino -I/home/jbandy/opt/arduino-1.8.5/hardware/arduino/avr/variants/eightanaloginputs -I/home/jbandy/opt/arduino-1.8.5/hardware/arduino/avr/libraries/Wire/src -I/home/jbandy/workspace/arduino/libraries/AccelStepper -Wall -ffunction-sections -fdata-sections -Os -fpermissive -fno-exceptions -std=gnu++11 -fno-threadsafe-statics -flto -fno-devirtualize -fdiagnostics-color=always watchdog.cpp -o build-satnogs/watchdog.cpp.o
watchdog.cpp:9:21: fatal error: Arduino.h: No such file or directory
#include <Arduino.h>
^
compilation terminated.
make: *** [/home/jbandy/opt/Arduino-Makefile/Arduino.mk:1281: build-satnogs/watchdog.cpp.o] Error 1

jbandy@JBANDY-LT ~/workspace/satnogs-rotator-firmware-master/stepper_motor_controller

So if anyone is interested, I ended up building a Debian linux box, as soon as I did this, I was able to compile / make the controller firmware.

There’s one part in the instructions that is not discussed. For programming the arduino pro mini using FTDI, you need to put the following command in your makefile

AVRDUDE_ARD_BAUDRATE = 57600

Glad to see you progressing! :thumbsup:
Did you find out anything regarding the setup of the micro steps?
I will have my controller soldered propably this week and til now i have no clue what to do about the stepsize :wink:

I just went with full in the meantime