Incompatibility between MANCHESTER library and Tone...

When I try to use both MANCHESTER library and Tone I get the following error message:

core.a(Tone.cpp.o): In function `__vector_7':
C:\crusso\00. Proyectos\00. Arduino\arduino-1.0.5\hardware\arduino\cores\arduino/Tone.cpp:535: multiple definition of `__vector_7'
MANCHESTER\MANCHESTER.cpp.o:C:\crusso\00. Proyectos\00. Arduino\arduino-1.0.5\libraries\MANCHESTER/MANCHESTER.cpp:363: first defined here

Please help me with this issue.
Regards.

Please help me with this issue.

OK. Which function do you want to give up?

Both are using the same timer. Rewriting one will be required (and not at all trivial, if it's even possible).

I need both MANCHESTER library and Tone.
I've tried to use MANCHESTER with other libraries (for instance IRremote) and got the same error.
What should I do to rewrite the code and use other interrupt? I've never worked with interrupts in Arduino (i did with C++ but a long long time ago...)

Vector 7 appears to be Timer/Counter2 Compare Match A.

I wrote a small library a while back that does tones with Timer 1.

You could use that for your tones (I don't know if it will do everything you want or not) and then use the Manchester library as-is.

Not tested though.

Still, I note that you have supplied no code, so modifying it isn't possible.

How to use this forum

Read this before posting a programming question

Hi Nick, thank you for your response.
I tried with your library and it works EXCELENT! Now I can use both Manchester and Tone, thank you very much!

The major problem i'am having now is between Manchester and IRremote. How can I rewrite the IRremote to make it work?

This simple code:

#include <MANCHESTER.h>
#include <IRremote.h>

void setup() {
}

void loop() {
}

Give me this error:

IRremote\IRremote.cpp.o: In function `__vector_7':
C:\crusso\00. Proyectos\00. Arduino\arduino-1.0.5\libraries\IRremote/IRremote.cpp:311: multiple definition of `__vector_7'
MANCHESTER\MANCHESTER.cpp.o:C:\crusso\00. Proyectos\00. Arduino\arduino-1.0.5\libraries\MANCHESTER/MANCHESTER.cpp:363: first defined here

Tank you again!

The goal-posts have moved, huh?

How about explaining what you are trying to do?

Do you need to send or receive manchester data? Both IRremote and Manchester user Timer 2, you are now using Timer 1 for tones, and Timer 0 is used for millis and delays. You are running out of timers.

My goal is to receive data with Manchester library and then use IRremote to send IR codes. No worry about tone library, because i can go without it.
What are the code lines that i have to modify in order to use another timer? (for instance, to change IRremote to use timer 1 instead of timer 2)

Thanks!

I did a Manchester library a while back that just used pin-change or external interrupts (not timer interrupts).

That might save you the problem, as you don't need a timer for it.