I am using a Teensy 3.6 and had not migrated from the Arduino 1.8.3 version as I had the code working. After deciding to migrate to 1.8.13 - when I got a new computer in my first compile I had multiple issues - mostly surrounding multiple definitions of wire.h and conflicting Two_wire .. see below. I have tried to follow some of the threads were I rename the \Arduino\... Wire.h to Wire_Old.h - but the problem gets worse.
I have a GPS and other devices (Silabs chip for example) - thus the code is quite complex.
I suspect I may have multiple libraries conflicting now - but this is bogging me down. Can someone help me get out of this endless loop?
Here is a section of the errors ..
In file included from C:\Users\abasa\Dropbox\JPDuino\New Board for Bike Oct-2017\V11_CF_TP_V12_12\V11_CF_TP_V12_12.ino:516:0:
C:\Program Files (x86)\Arduino\hardware\teensy\avr\libraries\i2c_t3/i2c_t3.h:991:15: error: conflicting declaration 'i2c_t3 Wire'
extern i2c_t3 Wire;
^
In file included from C:\Program Files (x86)\Arduino\hardware\teensy\avr\libraries\Wire/Wire.h:29:0,
from C:\Users\abasa\Dropbox\JPDuino\libraries\libraries\Adafruit_GPS_Library\src/Adafruit_GPS.h:63,
from C:\Users\abasa\Dropbox\JPDuino\New Board for Bike Oct-2017\V11_CF_TP_V12_12\V11_CF_TP_V12_12.ino:372:
C:\Program Files (x86)\Arduino\hardware\teensy\avr\libraries\Wire/WireKinetis.h:217:16: note: previous declaration as 'TwoWire Wire'
extern TwoWire Wire;
^
In file included from C:\Users\abasa\Dropbox\JPDuino\New Board for Bike Oct-2017\V11_CF_TP_V12_12\V11_CF_TP_V12_12.ino:516:0:
C:\Program Files (x86)\Arduino\hardware\teensy\avr\libraries\i2c_t3/i2c_t3.h:993:19: error: conflicting declaration 'i2c_t3 Wire1'
extern i2c_t3 Wire1;
^
In file included from C:\Program Files (x86)\Arduino\hardware\teensy\avr\libraries\Wire/Wire.h:29:0,
from C:\Users\abasa\Dropbox\JPDuino\libraries\libraries\Adafruit_GPS_Library\src/Adafruit_GPS.h:63,
from C:\Users\abasa\Dropbox\JPDuino\New Board for Bike Oct-2017\V11_CF_TP_V12_12\V11_CF_TP_V12_12.ino:372:
C:\Program Files (x86)\Arduino\hardware\teensy\avr\libraries\Wire/WireKinetis.h:220:16: note: previous declaration as 'TwoWire Wire1'
extern TwoWire Wire1;
^
In file included from C:\Users\abasa\Dropbox\JPDuino\New Board for Bike Oct-2017\V11_CF_TP_V12_12\V11_CF_TP_V12_12.ino:516:0:
C:\Program Files (x86)\Arduino\hardware\teensy\avr\libraries\i2c_t3/i2c_t3.h:996:19: error: conflicting declaration 'i2c_t3 Wire2'
extern i2c_t3 Wire2;
^
In file included from C:\Program Files (x86)\Arduino\hardware\teensy\avr\libraries\Wire/Wire.h:29:0,
from C:\Users\abasa\Dropbox\JPDuino\libraries\libraries\Adafruit_GPS_Library\src/Adafruit_GPS.h:63,
from C:\Users\abasa\Dropbox\JPDuino\New Board for Bike Oct-2017\V11_CF_TP_V12_12\V11_CF_TP_V12_12.ino:372:
C:\Program Files (x86)\Arduino\hardware\teensy\avr\libraries\Wire/WireKinetis.h:223:16: note: previous declaration as 'TwoWire Wire2'
extern TwoWire Wire2;
^
V11_CF_TP_V12_12: In function 'void setup()':
V11_CF_TP_V12_12:1059: error: no matching function for call to 'TwoWire::begin(i2c_mode, int, i2c_pins, i2c_pullup, int)'
Wire1.begin(I2C_SLAVE, TARGET1, WIRE1_PINS, I2C_PULLUP_EXT, 3000000); //AB:10-02 changed 400000 55000
^
In file included from C:\Program Files (x86)\Arduino\hardware\teensy\avr\libraries\Wire/Wire.h:29:0,
from C:\Users\abasa\Dropbox\JPDuino\libraries\libraries\Adafruit_GPS_Library\src/Adafruit_GPS.h:63,
from C:\Users\abasa\Dropbox\JPDuino\New Board for Bike Oct-2017\V11_CF_TP_V12_12\V11_CF_TP_V12_12.ino:372:
C:\Program Files (x86)\Arduino\hardware\teensy\avr\libraries\Wire/WireKinetis.h:97:7: note: candidate: void TwoWire::begin()
void begin();
^
C:\Program Files (x86)\Arduino\hardware\teensy\avr\libraries\Wire/WireKinetis.h:97:7: note: candidate expects 0 arguments, 5 provided
C:\Program Files (x86)\Arduino\hardware\teensy\avr\libraries\Wire/WireKinetis.h:98:7: note: candidate: void TwoWire::begin(uint8_t)
void begin(uint8_t address);
^
C:\Program Files (x86)\Arduino\hardware\teensy\avr\libraries\Wire/WireKinetis.h:98:7: note: candidate expects 1 argument, 5 provided
C:\Program Files (x86)\Arduino\hardware\teensy\avr\libraries\Wire/WireKinetis.h:99:7: note: candidate: void TwoWire::begin(int)
void begin(int address) {
^
C:\Program Files (x86)\Arduino\hardware\teensy\avr\libraries\Wire/WireKinetis.h:99:7: note: candidate expects 1 argument, 5 provided
C:\Users\abasa\Dropbox\JPDuino\New Board for Bike Oct-2017\V11_CF_TP_V12_12\V11_CF_TP_V12_12.ino:1060:32: warning: invalid conversion from 'void (*)(size_t) {aka void (*)(unsigned int)}' to 'void (*)(int)' [-fpermissive]
Wire1.onReceive(receiveEvent1);
^
In file included from C:\Program Files (x86)\Arduino\hardware\teensy\avr\libraries\Wire/Wire.h:29:0,
from C:\Users\abasa\Dropbox\JPDuino\libraries\libraries\Adafruit_GPS_Library\src/Adafruit_GPS.h:63,
from C:\Users\abasa\Dropbox\JPDuino\New Board for Bike Oct-2017\V11_CF_TP_V12_12\V11_CF_TP_V12_12.ino:372:
C:\Program Files (x86)\Arduino\hardware\teensy\avr\libraries\Wire/WireKinetis.h:145:7: note: initializing argument 1 of 'void TwoWire:nReceive(void (*)(int))'
void onReceive(void (*function)(int numBytes)) {
^
V11_CF_TP_V12_12:1087: error: 'PMTK_SET_BAUD_38400' was not declared in this scope
gps.sendCommand(PMTK_SET_BAUD_38400);
I have a GPS and other devices (Silabs chip for example) - thus the code is quite complex.
I suspect I may have multiple libraries conflicting now - but this is bogging me down. Can someone help me get out of this endless loop?
Here is a section of the errors ..
In file included from C:\Users\abasa\Dropbox\JPDuino\New Board for Bike Oct-2017\V11_CF_TP_V12_12\V11_CF_TP_V12_12.ino:516:0:
C:\Program Files (x86)\Arduino\hardware\teensy\avr\libraries\i2c_t3/i2c_t3.h:991:15: error: conflicting declaration 'i2c_t3 Wire'
extern i2c_t3 Wire;
^
In file included from C:\Program Files (x86)\Arduino\hardware\teensy\avr\libraries\Wire/Wire.h:29:0,
from C:\Users\abasa\Dropbox\JPDuino\libraries\libraries\Adafruit_GPS_Library\src/Adafruit_GPS.h:63,
from C:\Users\abasa\Dropbox\JPDuino\New Board for Bike Oct-2017\V11_CF_TP_V12_12\V11_CF_TP_V12_12.ino:372:
C:\Program Files (x86)\Arduino\hardware\teensy\avr\libraries\Wire/WireKinetis.h:217:16: note: previous declaration as 'TwoWire Wire'
extern TwoWire Wire;
^
In file included from C:\Users\abasa\Dropbox\JPDuino\New Board for Bike Oct-2017\V11_CF_TP_V12_12\V11_CF_TP_V12_12.ino:516:0:
C:\Program Files (x86)\Arduino\hardware\teensy\avr\libraries\i2c_t3/i2c_t3.h:993:19: error: conflicting declaration 'i2c_t3 Wire1'
extern i2c_t3 Wire1;
^
In file included from C:\Program Files (x86)\Arduino\hardware\teensy\avr\libraries\Wire/Wire.h:29:0,
from C:\Users\abasa\Dropbox\JPDuino\libraries\libraries\Adafruit_GPS_Library\src/Adafruit_GPS.h:63,
from C:\Users\abasa\Dropbox\JPDuino\New Board for Bike Oct-2017\V11_CF_TP_V12_12\V11_CF_TP_V12_12.ino:372:
C:\Program Files (x86)\Arduino\hardware\teensy\avr\libraries\Wire/WireKinetis.h:220:16: note: previous declaration as 'TwoWire Wire1'
extern TwoWire Wire1;
^
In file included from C:\Users\abasa\Dropbox\JPDuino\New Board for Bike Oct-2017\V11_CF_TP_V12_12\V11_CF_TP_V12_12.ino:516:0:
C:\Program Files (x86)\Arduino\hardware\teensy\avr\libraries\i2c_t3/i2c_t3.h:996:19: error: conflicting declaration 'i2c_t3 Wire2'
extern i2c_t3 Wire2;
^
In file included from C:\Program Files (x86)\Arduino\hardware\teensy\avr\libraries\Wire/Wire.h:29:0,
from C:\Users\abasa\Dropbox\JPDuino\libraries\libraries\Adafruit_GPS_Library\src/Adafruit_GPS.h:63,
from C:\Users\abasa\Dropbox\JPDuino\New Board for Bike Oct-2017\V11_CF_TP_V12_12\V11_CF_TP_V12_12.ino:372:
C:\Program Files (x86)\Arduino\hardware\teensy\avr\libraries\Wire/WireKinetis.h:223:16: note: previous declaration as 'TwoWire Wire2'
extern TwoWire Wire2;
^
V11_CF_TP_V12_12: In function 'void setup()':
V11_CF_TP_V12_12:1059: error: no matching function for call to 'TwoWire::begin(i2c_mode, int, i2c_pins, i2c_pullup, int)'
Wire1.begin(I2C_SLAVE, TARGET1, WIRE1_PINS, I2C_PULLUP_EXT, 3000000); //AB:10-02 changed 400000 55000
^
In file included from C:\Program Files (x86)\Arduino\hardware\teensy\avr\libraries\Wire/Wire.h:29:0,
from C:\Users\abasa\Dropbox\JPDuino\libraries\libraries\Adafruit_GPS_Library\src/Adafruit_GPS.h:63,
from C:\Users\abasa\Dropbox\JPDuino\New Board for Bike Oct-2017\V11_CF_TP_V12_12\V11_CF_TP_V12_12.ino:372:
C:\Program Files (x86)\Arduino\hardware\teensy\avr\libraries\Wire/WireKinetis.h:97:7: note: candidate: void TwoWire::begin()
void begin();
^
C:\Program Files (x86)\Arduino\hardware\teensy\avr\libraries\Wire/WireKinetis.h:97:7: note: candidate expects 0 arguments, 5 provided
C:\Program Files (x86)\Arduino\hardware\teensy\avr\libraries\Wire/WireKinetis.h:98:7: note: candidate: void TwoWire::begin(uint8_t)
void begin(uint8_t address);
^
C:\Program Files (x86)\Arduino\hardware\teensy\avr\libraries\Wire/WireKinetis.h:98:7: note: candidate expects 1 argument, 5 provided
C:\Program Files (x86)\Arduino\hardware\teensy\avr\libraries\Wire/WireKinetis.h:99:7: note: candidate: void TwoWire::begin(int)
void begin(int address) {
^
C:\Program Files (x86)\Arduino\hardware\teensy\avr\libraries\Wire/WireKinetis.h:99:7: note: candidate expects 1 argument, 5 provided
C:\Users\abasa\Dropbox\JPDuino\New Board for Bike Oct-2017\V11_CF_TP_V12_12\V11_CF_TP_V12_12.ino:1060:32: warning: invalid conversion from 'void (*)(size_t) {aka void (*)(unsigned int)}' to 'void (*)(int)' [-fpermissive]
Wire1.onReceive(receiveEvent1);
^
In file included from C:\Program Files (x86)\Arduino\hardware\teensy\avr\libraries\Wire/Wire.h:29:0,
from C:\Users\abasa\Dropbox\JPDuino\libraries\libraries\Adafruit_GPS_Library\src/Adafruit_GPS.h:63,
from C:\Users\abasa\Dropbox\JPDuino\New Board for Bike Oct-2017\V11_CF_TP_V12_12\V11_CF_TP_V12_12.ino:372:
C:\Program Files (x86)\Arduino\hardware\teensy\avr\libraries\Wire/WireKinetis.h:145:7: note: initializing argument 1 of 'void TwoWire:nReceive(void (*)(int))'
void onReceive(void (*function)(int numBytes)) {
^
V11_CF_TP_V12_12:1087: error: 'PMTK_SET_BAUD_38400' was not declared in this scope
gps.sendCommand(PMTK_SET_BAUD_38400);