I hope this is the right place, I'm using the latest (I believe, 1.41) Radiohead library for transmitting and receiving via a RF transmitter & receiver (of course) but I'm having a bit of trouble with compiling. I'm using a SparkFun pro micro board, if that matters ^_^;
I am also controlling a Servo which needs to go into the circuit and I think that's what's creating a conflict.
I have including the RH_ASK.h and when I compile the sketch, it claims:
libraries\RadioHead\RH_ASK.cpp.o (symbol from plugin): In function `RH_ASK::maxMessageLength()':
(.text+0x0): multiple definition of `__vector_17'
libraries\Servo\avr\Servo.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 SparkFun Pro Micro.
I have read, when checking up, that it MIGHT be connected to the use of a Timer and adding '#define RH_ASK_ARDUINO_USE_TIMER2' to the RH_ASK.h might deal with it.
So I did that, however, I get this error:
Arduino: 1.8.12 (Windows 10), Board: "SparkFun Pro Micro, ATmega32U4 (5V, 16 MHz)"
C:\Program Files (x86)\Arduino\libraries\RadioHead\RH_ASK.cpp: In member function 'void RH_ASK::timerSetup()':
C:\Program Files (x86)\Arduino\libraries\RadioHead\RH_ASK.cpp:238:5: error: 'TCCR2A' was not declared in this scope
TCCR2A = _BV(WGM21); // Turn on CTC mode)
^~~~~~
C:\Program Files (x86)\Arduino\libraries\RadioHead\RH_ASK.cpp:238:5: note: suggested alternative: 'TCCR0A'
TCCR2A = _BV(WGM21); // Turn on CTC mode)
^~~~~~
TCCR0A
In file included from c:\program files (x86)\arduino\hardware\tools\avr\avr\include\avr\io.h:99:0,
from c:\program files (x86)\arduino\hardware\tools\avr\avr\include\avr\pgmspace.h:90,
from C:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino/Arduino.h:28,
from C:\Program Files (x86)\Arduino\libraries\RadioHead/RadioHead.h:533,
from C:\Program Files (x86)\Arduino\libraries\RadioHead/RHGenericDriver.h:9,
from C:\Program Files (x86)\Arduino\libraries\RadioHead/RH_ASK.h:12,
from C:\Program Files (x86)\Arduino\libraries\RadioHead\RH_ASK.cpp:6:
C:\Program Files (x86)\Arduino\libraries\RadioHead\RH_ASK.cpp:238:18: error: 'WGM21' was not declared in this scope
TCCR2A = _BV(WGM21); // Turn on CTC mode)
^
C:\Program Files (x86)\Arduino\libraries\RadioHead\RH_ASK.cpp:238:18: note: suggested alternative: 'WGM41'
C:\Program Files (x86)\Arduino\libraries\RadioHead\RH_ASK.cpp:240:5: error: 'TCCR2B' was not declared in this scope
TCCR2B = prescaler;
^~~~~~
C:\Program Files (x86)\Arduino\libraries\RadioHead\RH_ASK.cpp:240:5: note: suggested alternative: 'TCCR0B'
TCCR2B = prescaler;
^~~~~~
TCCR0B
C:\Program Files (x86)\Arduino\libraries\RadioHead\RH_ASK.cpp:244:5: error: 'OCR2A' was not declared in this scope
OCR2A = nticks;
^~~~~
C:\Program Files (x86)\Arduino\libraries\RadioHead\RH_ASK.cpp:244:5: note: suggested alternative: 'OCR3A'
OCR2A = nticks;
^~~~~
OCR3A
C:\Program Files (x86)\Arduino\libraries\RadioHead\RH_ASK.cpp:251:5: error: 'TIMSK' was not declared in this scope
TIMSK |= _BV(OCIE2A);
^~~~~
C:\Program Files (x86)\Arduino\libraries\RadioHead\RH_ASK.cpp:251:5: note: suggested alternative: 'TIMSK0'
TIMSK |= _BV(OCIE2A);
^~~~~
TIMSK0
In file included from c:\program files (x86)\arduino\hardware\tools\avr\avr\include\avr\io.h:99:0,
from c:\program files (x86)\arduino\hardware\tools\avr\avr\include\avr\pgmspace.h:90,
from C:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino/Arduino.h:28,
from C:\Program Files (x86)\Arduino\libraries\RadioHead/RadioHead.h:533,
from C:\Program Files (x86)\Arduino\libraries\RadioHead/RHGenericDriver.h:9,
from C:\Program Files (x86)\Arduino\libraries\RadioHead/RH_ASK.h:12,
from C:\Program Files (x86)\Arduino\libraries\RadioHead\RH_ASK.cpp:6:
C:\Program Files (x86)\Arduino\libraries\RadioHead\RH_ASK.cpp:251:18: error: 'OCIE2A' was not declared in this scope
TIMSK |= _BV(OCIE2A);
^
C:\Program Files (x86)\Arduino\libraries\RadioHead\RH_ASK.cpp:251:18: note: suggested alternative: 'OCIE0A'
In file included from C:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino/Arduino.h:30:0,
from C:\Program Files (x86)\Arduino\libraries\RadioHead/RadioHead.h:533,
from C:\Program Files (x86)\Arduino\libraries\RadioHead/RHGenericDriver.h:9,
from C:\Program Files (x86)\Arduino\libraries\RadioHead/RH_ASK.h:12,
from C:\Program Files (x86)\Arduino\libraries\RadioHead\RH_ASK.cpp:6:
C:\Program Files (x86)\Arduino\libraries\RadioHead\RH_ASK.cpp: In function 'void TIMER2_COMPA_vect()':
C:\Program Files (x86)\Arduino\libraries\RadioHead\RH_ASK.cpp:483:32: warning: 'TIMER2_COMPA_vect' appears to be a misspelled 'signal' handler, missing '__vector' prefix [-Wmisspelled-isr]
#define RH_ASK_TIMER_VECTOR TIMER2_COMPA_vect
^
C:\Program Files (x86)\Arduino\libraries\RadioHead\RH_ASK.cpp:513:5: note: in expansion of macro 'RH_ASK_TIMER_VECTOR'
ISR(RH_ASK_TIMER_VECTOR)
^~~~~~~~~~~~~~~~~~~
exit status 1
Error compiling for board SparkFun Pro Micro.
I haven't been able to find too much help on this.. probably looking in the wrong place, but I'm not sure. any help?